From bf362db199615d3960d6c83529a69178c02a549e Mon Sep 17 00:00:00 2001 From: Sameer Pashikanti Date: Mon, 31 Mar 2025 10:29:43 +0000 Subject: [PATCH 1/5] bugfixes and minor refactoring - bump frontend packages - enable audio download - logo consistency - fix "save error" while editing a conversation - now you can add tags to a conversation in the dashboard - fix sentry exceptions --- echo/frontend/package.json | 109 +- echo/frontend/pnpm-lock.yaml | 3641 ++++++++--------- echo/frontend/src/components/common/Logo.tsx | 12 +- .../conversation/ConversationDangerZone.tsx | 38 +- .../conversation/ConversationEdit.tsx | 10 +- .../conversation/MoveConversationButton.tsx | 2 +- .../frontend/src/components/layout/Header.tsx | 8 +- echo/frontend/src/config.ts | 5 +- echo/frontend/src/lib/query.ts | 36 +- echo/server/dembrane/tasks.py | 2 +- 10 files changed, 1904 insertions(+), 1959 deletions(-) diff --git a/echo/frontend/package.json b/echo/frontend/package.json index b6dc7458..979d44cf 100644 --- a/echo/frontend/package.json +++ b/echo/frontend/package.json @@ -16,32 +16,33 @@ }, "dependencies": { "@ai-sdk/react": "^1.2.2", - "@directus/sdk": "^18.0.1", + "@directus/sdk": "^18.0.3", "@dnd-kit/core": "^6.3.1", "@dnd-kit/sortable": "^10.0.0", "@dnd-kit/utilities": "^3.2.2", - "@fontsource-variable/space-grotesk": "^5.1.0", + "@fontsource-variable/space-grotesk": "^5.2.6", "@formkit/auto-animate": "^0.8.2", - "@hookform/resolvers": "^3.9.1", - "@lingui/conf": "^5.1.0", - "@lingui/core": "^5.1.0", - "@lingui/macro": "^5.1.0", - "@lingui/react": "^5.1.0", - "@mantine/charts": "^7.15.0", - "@mantine/colors-generator": "^7.15.0", - "@mantine/core": "^7.15.0", - "@mantine/dropzone": "^7.15.0", - "@mantine/hooks": "^7.15.0", - "@mantine/notifications": "^7.15.0", - "@mdxeditor/editor": "^3.20.0", - "@react-pdf/renderer": "^4.1.6", - "@sentry/react": "^8.42.0", - "@tabler/icons-react": "^3.24.0", - "@tanstack/react-query": "^5.62.3", - "@types/lodash": "^4.17.13", - "@vitejs/plugin-react-swc": "^3.7.2", - "ai": "^4.0.13", - "axios": "^1.8.2", + "@hookform/resolvers": "^3.10.0", + "@lingui/conf": "^5.3.0", + "@lingui/core": "^5.3.0", + "@lingui/macro": "^5.3.0", + "@lingui/react": "^5.3.0", + "@mantine/charts": "^7.17.3", + "@mantine/colors-generator": "^7.17.3", + "@mantine/core": "^7.17.3", + "@mantine/dropzone": "^7.17.3", + "@mantine/hooks": "^7.17.3", + "@mantine/modals": "^7.17.3", + "@mantine/notifications": "^7.17.3", + "@mdxeditor/editor": "^3.29.1", + "@react-pdf/renderer": "^4.3.0", + "@sentry/react": "^8.55.0", + "@tabler/icons-react": "^3.31.0", + "@tanstack/react-query": "^5.69.2", + "@types/lodash": "^4.17.16", + "@vitejs/plugin-react-swc": "^3.8.1", + "ai": "^4.2.7", + "axios": "^1.8.4", "babel-plugin-macros": "^3.1.0", "chroma-js": "^3.1.2", "class-variance-authority": "^0.7.1", @@ -50,61 +51,61 @@ "lodash": "^4.17.21", "lucide-react": "^0.468.0", "match-sorter": "^8.0.0", - "motion": "^11.18.0", - "next-themes": "^0.4.4", + "motion": "^11.18.2", + "next-themes": "^0.4.6", "notifications\n": "link:@mantine/notifications\n", - "prettier-plugin-tailwindcss": "^0.6.9", - "re-resizable": "^6.10.3", + "prettier-plugin-tailwindcss": "^0.6.11", + "re-resizable": "^6.11.2", "react": "^19.0.0", "react-dom": "^19.0.0", - "react-hook-form": "^7.54.0", - "react-intersection-observer": "^9.13.1", - "react-markdown": "^9.0.1", + "react-hook-form": "^7.54.2", + "react-intersection-observer": "^9.16.0", + "react-markdown": "^9.1.0", "react-pdf": "^9.2.1", "react-qrcode-logo": "^3.0.0", - "react-router-dom": "^7.0.2", + "react-router-dom": "^7.4.0", "react-transition-group": "^4.4.5", - "recharts": "^2.15.0", + "recharts": "^2.15.1", "rehype-stringify": "^10.0.1", - "remark-gfm": "^4.0.0", + "remark-gfm": "^4.0.1", "remark-parse": "^11.0.0", "remark-rehype": "^11.1.1", - "sonner": "^1.7.1", + "sonner": "^1.7.4", "sort-by": "^1.2.0", - "tailwind-merge": "^2.5.5", + "tailwind-merge": "^2.6.0", "tailwindcss-animate": "^1.0.7", "unified": "^11.0.5", "use-session-storage-state": "^19.0.1", - "usehooks-ts": "^3.1.0", + "usehooks-ts": "^3.1.1", "vite-plugin-babel": "^1.3.0", - "zod": "^3.24.0" + "zod": "^3.24.2" }, "devDependencies": { - "@lingui/babel-plugin-lingui-macro": "^5.1.0", - "@lingui/cli": "^5.1.0", - "@lingui/swc-plugin": "^5.0.1", - "@lingui/vite-plugin": "^5.1.0", - "@tailwindcss/typography": "^0.5.15", - "@types/node": "^22.10.1", - "@types/react": "^19.0.1", - "@types/react-dom": "^19.0.2", + "@lingui/babel-plugin-lingui-macro": "^5.3.0", + "@lingui/cli": "^5.3.0", + "@lingui/swc-plugin": "^5.5.1", + "@lingui/vite-plugin": "^5.3.0", + "@tailwindcss/typography": "^0.5.16", + "@types/node": "^22.13.14", + "@types/react": "^19.0.12", + "@types/react-dom": "^19.0.4", "@types/showdown": "^2.0.6", - "@typescript-eslint/eslint-plugin": "^8.18.0", - "@typescript-eslint/parser": "^8.18.0", + "@typescript-eslint/eslint-plugin": "^8.28.0", + "@typescript-eslint/parser": "^8.28.0", "@vitejs/plugin-react": "^4.3.4", - "autoprefixer": "^10.4.20", + "autoprefixer": "^10.4.21", "babel-plugin-react-compiler": "19.0.0-beta-37ed2a7-20241206", "debug": "^4.4.0", "eslint": "~9.16.0", "eslint-plugin-react-compiler": "19.0.0-beta-37ed2a7-20241206", - "eslint-plugin-react-hooks": "^5.1.0", - "eslint-plugin-react-refresh": "^0.4.16", - "postcss": "^8.4.49", + "eslint-plugin-react-hooks": "^5.2.0", + "eslint-plugin-react-refresh": "^0.4.19", + "postcss": "^8.5.3", "postcss-preset-mantine": "^1.17.0", "postcss-simple-vars": "^7.0.1", - "prettier": "^3.4.2", - "tailwindcss": "^3.4.16", - "typescript": "^5.7.2", - "vite": "^6.0.9" + "prettier": "^3.5.3", + "tailwindcss": "^3.4.17", + "typescript": "^5.8.2", + "vite": "^6.2.3" } } \ No newline at end of file diff --git a/echo/frontend/pnpm-lock.yaml b/echo/frontend/pnpm-lock.yaml index 7e709a0e..d9c3e789 100644 --- a/echo/frontend/pnpm-lock.yaml +++ b/echo/frontend/pnpm-lock.yaml @@ -10,9 +10,9 @@ importers: dependencies: '@ai-sdk/react': specifier: ^1.2.2 - version: 1.2.2(react@19.0.0)(zod@3.24.1) + version: 1.2.2(react@19.0.0)(zod@3.24.2) '@directus/sdk': - specifier: ^18.0.1 + specifier: ^18.0.3 version: 18.0.3 '@dnd-kit/core': specifier: ^6.3.1 @@ -24,71 +24,74 @@ importers: specifier: ^3.2.2 version: 3.2.2(react@19.0.0) '@fontsource-variable/space-grotesk': - specifier: ^5.1.0 - version: 5.1.1 + specifier: ^5.2.6 + version: 5.2.6 '@formkit/auto-animate': specifier: ^0.8.2 version: 0.8.2 '@hookform/resolvers': - specifier: ^3.9.1 + specifier: ^3.10.0 version: 3.10.0(react-hook-form@7.54.2(react@19.0.0)) '@lingui/conf': - specifier: ^5.1.0 - version: 5.1.2(typescript@5.7.3) + specifier: ^5.3.0 + version: 5.3.0(typescript@5.8.2) '@lingui/core': - specifier: ^5.1.0 - version: 5.1.2(@lingui/babel-plugin-lingui-macro@5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3))(babel-plugin-macros@3.1.0) + specifier: ^5.3.0 + version: 5.3.0(@lingui/babel-plugin-lingui-macro@5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2))(babel-plugin-macros@3.1.0) '@lingui/macro': - specifier: ^5.1.0 - version: 5.1.2(@lingui/babel-plugin-lingui-macro@5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3))(babel-plugin-macros@3.1.0)(react@19.0.0) + specifier: ^5.3.0 + version: 5.3.0(@lingui/babel-plugin-lingui-macro@5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2))(babel-plugin-macros@3.1.0)(react@19.0.0) '@lingui/react': - specifier: ^5.1.0 - version: 5.1.2(@lingui/babel-plugin-lingui-macro@5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3))(babel-plugin-macros@3.1.0)(react@19.0.0) + specifier: ^5.3.0 + version: 5.3.0(@lingui/babel-plugin-lingui-macro@5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2))(babel-plugin-macros@3.1.0)(react@19.0.0) '@mantine/charts': - specifier: ^7.15.0 - version: 7.16.0(@mantine/core@7.16.0(@mantine/hooks@7.16.0(react@19.0.0))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(@mantine/hooks@7.16.0(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(recharts@2.15.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0)) + specifier: ^7.17.3 + version: 7.17.3(@mantine/core@7.17.3(@mantine/hooks@7.17.3(react@19.0.0))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(@mantine/hooks@7.17.3(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(recharts@2.15.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0)) '@mantine/colors-generator': - specifier: ^7.15.0 - version: 7.16.0(chroma-js@3.1.2) + specifier: ^7.17.3 + version: 7.17.3(chroma-js@3.1.2) '@mantine/core': - specifier: ^7.15.0 - version: 7.16.0(@mantine/hooks@7.16.0(react@19.0.0))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + specifier: ^7.17.3 + version: 7.17.3(@mantine/hooks@7.17.3(react@19.0.0))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) '@mantine/dropzone': - specifier: ^7.15.0 - version: 7.16.0(@mantine/core@7.16.0(@mantine/hooks@7.16.0(react@19.0.0))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(@mantine/hooks@7.16.0(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + specifier: ^7.17.3 + version: 7.17.3(@mantine/core@7.17.3(@mantine/hooks@7.17.3(react@19.0.0))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(@mantine/hooks@7.17.3(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) '@mantine/hooks': - specifier: ^7.15.0 - version: 7.16.0(react@19.0.0) + specifier: ^7.17.3 + version: 7.17.3(react@19.0.0) + '@mantine/modals': + specifier: ^7.17.3 + version: 7.17.3(@mantine/core@7.17.3(@mantine/hooks@7.17.3(react@19.0.0))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(@mantine/hooks@7.17.3(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) '@mantine/notifications': - specifier: ^7.15.0 - version: 7.16.0(@mantine/core@7.16.0(@mantine/hooks@7.16.0(react@19.0.0))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(@mantine/hooks@7.16.0(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + specifier: ^7.17.3 + version: 7.17.3(@mantine/core@7.17.3(@mantine/hooks@7.17.3(react@19.0.0))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(@mantine/hooks@7.17.3(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) '@mdxeditor/editor': - specifier: ^3.20.0 - version: 3.20.0(@codemirror/language@6.10.8)(@lezer/highlight@1.2.1)(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(yjs@13.6.22) + specifier: ^3.29.1 + version: 3.29.1(@codemirror/language@6.11.0)(@lezer/highlight@1.2.1)(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(yjs@13.6.22) '@react-pdf/renderer': - specifier: ^4.1.6 - version: 4.1.6(react@19.0.0) + specifier: ^4.3.0 + version: 4.3.0(react@19.0.0) '@sentry/react': - specifier: ^8.42.0 - version: 8.48.0(react@19.0.0) + specifier: ^8.55.0 + version: 8.55.0(react@19.0.0) '@tabler/icons-react': - specifier: ^3.24.0 - version: 3.28.1(react@19.0.0) + specifier: ^3.31.0 + version: 3.31.0(react@19.0.0) '@tanstack/react-query': - specifier: ^5.62.3 - version: 5.64.1(react@19.0.0) + specifier: ^5.69.2 + version: 5.69.2(react@19.0.0) '@types/lodash': - specifier: ^4.17.13 - version: 4.17.14 + specifier: ^4.17.16 + version: 4.17.16 '@vitejs/plugin-react-swc': - specifier: ^3.7.2 - version: 3.7.2(@swc/helpers@0.5.15)(vite@6.0.9(@types/node@22.10.6)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.1))(yaml@2.7.0)) + specifier: ^3.8.1 + version: 3.8.1(@swc/helpers@0.5.15)(vite@6.2.3(@types/node@22.13.14)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.3))(yaml@2.7.0)) ai: - specifier: ^4.0.13 - version: 4.0.36(react@19.0.0)(zod@3.24.1) + specifier: ^4.2.7 + version: 4.2.7(react@19.0.0)(zod@3.24.2) axios: - specifier: ^1.8.2 - version: 1.8.2(debug@4.4.0) + specifier: ^1.8.4 + version: 1.8.4(debug@4.4.0) babel-plugin-macros: specifier: ^3.1.0 version: 3.1.0 @@ -114,22 +117,22 @@ importers: specifier: ^8.0.0 version: 8.0.0 motion: - specifier: ^11.18.0 - version: 11.18.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + specifier: ^11.18.2 + version: 11.18.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0) next-themes: - specifier: ^0.4.4 - version: 0.4.4(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + specifier: ^0.4.6 + version: 0.4.6(react-dom@19.0.0(react@19.0.0))(react@19.0.0) "notifications\n": specifier: | link:@mantine/notifications version: | link:@mantine/notifications prettier-plugin-tailwindcss: - specifier: ^0.6.9 - version: 0.6.9(prettier@3.4.2) + specifier: ^0.6.11 + version: 0.6.11(prettier@3.5.3) re-resizable: - specifier: ^6.10.3 - version: 6.10.3(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + specifier: ^6.11.2 + version: 6.11.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react: specifier: ^19.0.0 version: 19.0.0 @@ -137,35 +140,35 @@ importers: specifier: ^19.0.0 version: 19.0.0(react@19.0.0) react-hook-form: - specifier: ^7.54.0 + specifier: ^7.54.2 version: 7.54.2(react@19.0.0) react-intersection-observer: - specifier: ^9.13.1 - version: 9.15.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + specifier: ^9.16.0 + version: 9.16.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react-markdown: - specifier: ^9.0.1 - version: 9.0.3(@types/react@19.0.7)(react@19.0.0) + specifier: ^9.1.0 + version: 9.1.0(@types/react@19.0.12)(react@19.0.0) react-pdf: specifier: ^9.2.1 - version: 9.2.1(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + version: 9.2.1(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react-qrcode-logo: specifier: ^3.0.0 version: 3.0.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react-router-dom: - specifier: ^7.0.2 - version: 7.1.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + specifier: ^7.4.0 + version: 7.4.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react-transition-group: specifier: ^4.4.5 version: 4.4.5(react-dom@19.0.0(react@19.0.0))(react@19.0.0) recharts: - specifier: ^2.15.0 - version: 2.15.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + specifier: ^2.15.1 + version: 2.15.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0) rehype-stringify: specifier: ^10.0.1 version: 10.0.1 remark-gfm: - specifier: ^4.0.0 - version: 4.0.0 + specifier: ^4.0.1 + version: 4.0.1 remark-parse: specifier: ^11.0.0 version: 11.0.0 @@ -173,13 +176,13 @@ importers: specifier: ^11.1.1 version: 11.1.1 sonner: - specifier: ^1.7.1 - version: 1.7.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + specifier: ^1.7.4 + version: 1.7.4(react-dom@19.0.0(react@19.0.0))(react@19.0.0) sort-by: specifier: ^1.2.0 version: 1.2.0 tailwind-merge: - specifier: ^2.5.5 + specifier: ^2.6.0 version: 2.6.0 tailwindcss-animate: specifier: ^1.0.7 @@ -191,54 +194,54 @@ importers: specifier: ^19.0.1 version: 19.0.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0) usehooks-ts: - specifier: ^3.1.0 - version: 3.1.0(react@19.0.0) + specifier: ^3.1.1 + version: 3.1.1(react@19.0.0) vite-plugin-babel: specifier: ^1.3.0 - version: 1.3.0(@babel/core@7.26.0)(vite@6.0.9(@types/node@22.10.6)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.1))(yaml@2.7.0)) + version: 1.3.0(@babel/core@7.26.10)(vite@6.2.3(@types/node@22.13.14)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.3))(yaml@2.7.0)) zod: - specifier: ^3.24.0 - version: 3.24.1 + specifier: ^3.24.2 + version: 3.24.2 devDependencies: '@lingui/babel-plugin-lingui-macro': - specifier: ^5.1.0 - version: 5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3) + specifier: ^5.3.0 + version: 5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2) '@lingui/cli': - specifier: ^5.1.0 - version: 5.1.2(typescript@5.7.3) + specifier: ^5.3.0 + version: 5.3.0(typescript@5.8.2) '@lingui/swc-plugin': - specifier: ^5.0.1 - version: 5.0.2(@lingui/core@5.1.2(@lingui/babel-plugin-lingui-macro@5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3))(babel-plugin-macros@3.1.0)) + specifier: ^5.5.1 + version: 5.5.1(@lingui/core@5.3.0(@lingui/babel-plugin-lingui-macro@5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2))(babel-plugin-macros@3.1.0)) '@lingui/vite-plugin': - specifier: ^5.1.0 - version: 5.1.2(typescript@5.7.3)(vite@6.0.9(@types/node@22.10.6)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.1))(yaml@2.7.0)) + specifier: ^5.3.0 + version: 5.3.0(typescript@5.8.2)(vite@6.2.3(@types/node@22.13.14)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.3))(yaml@2.7.0)) '@tailwindcss/typography': - specifier: ^0.5.15 + specifier: ^0.5.16 version: 0.5.16(tailwindcss@3.4.17) '@types/node': - specifier: ^22.10.1 - version: 22.10.6 + specifier: ^22.13.14 + version: 22.13.14 '@types/react': - specifier: ^19.0.1 - version: 19.0.7 + specifier: ^19.0.12 + version: 19.0.12 '@types/react-dom': - specifier: ^19.0.2 - version: 19.0.3(@types/react@19.0.7) + specifier: ^19.0.4 + version: 19.0.4(@types/react@19.0.12) '@types/showdown': specifier: ^2.0.6 version: 2.0.6 '@typescript-eslint/eslint-plugin': - specifier: ^8.18.0 - version: 8.20.0(@typescript-eslint/parser@8.20.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.7.3))(eslint@9.16.0(jiti@1.21.7))(typescript@5.7.3) + specifier: ^8.28.0 + version: 8.28.0(@typescript-eslint/parser@8.28.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.8.2))(eslint@9.16.0(jiti@1.21.7))(typescript@5.8.2) '@typescript-eslint/parser': - specifier: ^8.18.0 - version: 8.20.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.7.3) + specifier: ^8.28.0 + version: 8.28.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.8.2) '@vitejs/plugin-react': specifier: ^4.3.4 - version: 4.3.4(vite@6.0.9(@types/node@22.10.6)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.1))(yaml@2.7.0)) + version: 4.3.4(vite@6.2.3(@types/node@22.13.14)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.3))(yaml@2.7.0)) autoprefixer: - specifier: ^10.4.20 - version: 10.4.20(postcss@8.5.1) + specifier: ^10.4.21 + version: 10.4.21(postcss@8.5.3) babel-plugin-react-compiler: specifier: 19.0.0-beta-37ed2a7-20241206 version: 19.0.0-beta-37ed2a7-20241206 @@ -252,70 +255,45 @@ importers: specifier: 19.0.0-beta-37ed2a7-20241206 version: 19.0.0-beta-37ed2a7-20241206(eslint@9.16.0(jiti@1.21.7)) eslint-plugin-react-hooks: - specifier: ^5.1.0 - version: 5.1.0(eslint@9.16.0(jiti@1.21.7)) + specifier: ^5.2.0 + version: 5.2.0(eslint@9.16.0(jiti@1.21.7)) eslint-plugin-react-refresh: - specifier: ^0.4.16 - version: 0.4.18(eslint@9.16.0(jiti@1.21.7)) + specifier: ^0.4.19 + version: 0.4.19(eslint@9.16.0(jiti@1.21.7)) postcss: - specifier: ^8.4.49 - version: 8.5.1 + specifier: ^8.5.3 + version: 8.5.3 postcss-preset-mantine: specifier: ^1.17.0 - version: 1.17.0(postcss@8.5.1) + version: 1.17.0(postcss@8.5.3) postcss-simple-vars: specifier: ^7.0.1 - version: 7.0.1(postcss@8.5.1) + version: 7.0.1(postcss@8.5.3) prettier: - specifier: ^3.4.2 - version: 3.4.2 + specifier: ^3.5.3 + version: 3.5.3 tailwindcss: - specifier: ^3.4.16 + specifier: ^3.4.17 version: 3.4.17 typescript: - specifier: ^5.7.2 - version: 5.7.3 + specifier: ^5.8.2 + version: 5.8.2 vite: - specifier: ^6.0.9 - version: 6.0.9(@types/node@22.10.6)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.1))(yaml@2.7.0) + specifier: ^6.2.3 + version: 6.2.3(@types/node@22.13.14)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.3))(yaml@2.7.0) packages: - '@ai-sdk/provider-utils@2.0.7': - resolution: {integrity: sha512-4sfPlKEALHPXLmMFcPlYksst3sWBJXmCDZpIBJisRrmwGG6Nn3mq0N1Zu/nZaGcrWZoOY+HT2Wbxla1oTElYHQ==} - engines: {node: '>=18'} - peerDependencies: - zod: ^3.0.0 - peerDependenciesMeta: - zod: - optional: true - '@ai-sdk/provider-utils@2.2.1': resolution: {integrity: sha512-BuExLp+NcpwsAVj1F4bgJuQkSqO/+roV9wM7RdIO+NVrcT8RBUTdXzf5arHt5T58VpK7bZyB2V9qigjaPHE+Dg==} engines: {node: '>=18'} peerDependencies: zod: ^3.23.8 - '@ai-sdk/provider@1.0.4': - resolution: {integrity: sha512-lJi5zwDosvvZER3e/pB8lj1MN3o3S7zJliQq56BRr4e9V3fcRyFtwP0JRxaRS5vHYX3OJ154VezVoQNrk0eaKw==} - engines: {node: '>=18'} - '@ai-sdk/provider@1.1.0': resolution: {integrity: sha512-0M+qjp+clUD0R1E5eWQFhxEvWLNaOtGQRUaBn8CUABnSKredagq92hUS9VjOzGsTm37xLfpaxl97AVtbeOsHew==} engines: {node: '>=18'} - '@ai-sdk/react@1.0.11': - resolution: {integrity: sha512-ndBPA7dx2DqUr7s4zO1cRAPkFGS+wWvSri6OWfCuhfyTAADQ4vdd56vFP9zdTZl4cyL27Vh0hKLfFJMGx83MUQ==} - engines: {node: '>=18'} - peerDependencies: - react: ^18 || ^19 || ^19.0.0-rc - zod: ^3.0.0 - peerDependenciesMeta: - react: - optional: true - zod: - optional: true - '@ai-sdk/react@1.2.2': resolution: {integrity: sha512-rxyNTFjUd3IilVOJFuUJV5ytZBYAIyRi50kFS2gNmSEiG4NHMBBm31ddrxI/i86VpY8gzZVp1/igtljnWBihUA==} engines: {node: '>=18'} @@ -326,15 +304,6 @@ packages: zod: optional: true - '@ai-sdk/ui-utils@1.0.10': - resolution: {integrity: sha512-wZfZNH2IloTx5b1O8CU7/R/icm8EsmURElPckYwNYj2YZrKk9X5XeYSDBF/1/J83obzsn0i7VKkIf40qhRzVVA==} - engines: {node: '>=18'} - peerDependencies: - zod: ^3.0.0 - peerDependenciesMeta: - zod: - optional: true - '@ai-sdk/ui-utils@1.2.1': resolution: {integrity: sha512-BzvMbYm7LHBlbWuLlcG1jQh4eu14MGpz7L+wrGO1+F4oQ+O0fAjgUSNwPWGlZpKmg4NrcVq/QLmxiVJrx2R4Ew==} engines: {node: '>=18'} @@ -353,28 +322,28 @@ packages: resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} engines: {node: '>=6.9.0'} - '@babel/compat-data@7.26.5': - resolution: {integrity: sha512-XvcZi1KWf88RVbF9wn8MN6tYFloU5qX8KjuF3E1PVBmJ9eypXfs4GRiJwLuTZL0iSnJUKn1BFPa5BPZZJyFzPg==} + '@babel/compat-data@7.26.8': + resolution: {integrity: sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==} engines: {node: '>=6.9.0'} - '@babel/core@7.26.0': - resolution: {integrity: sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==} + '@babel/core@7.26.10': + resolution: {integrity: sha512-vMqyb7XCDMPvJFFOaT9kxtiRh42GwlZEg1/uIgtZshS5a/8OaduUfCi7kynKgc3Tw/6Uo2D+db9qBttghhmxwQ==} engines: {node: '>=6.9.0'} - '@babel/generator@7.26.5': - resolution: {integrity: sha512-2caSP6fN9I7HOe6nqhtft7V4g7/V/gfDsC3Ag4W7kEzzvRGKqiv0pu0HogPiZ3KaVSoNDhUws6IJjDjpfmYIXw==} + '@babel/generator@7.27.0': + resolution: {integrity: sha512-VybsKvpiN1gU1sdMZIp7FcqphVVKEwcuj02x73uvcHE0PTihx1nlBcowYWhDwjpoAXRv43+gDzyggGnn1XZhVw==} engines: {node: '>=6.9.0'} '@babel/helper-annotate-as-pure@7.25.9': resolution: {integrity: sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==} engines: {node: '>=6.9.0'} - '@babel/helper-compilation-targets@7.26.5': - resolution: {integrity: sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==} + '@babel/helper-compilation-targets@7.27.0': + resolution: {integrity: sha512-LVk7fbXml0H2xH34dFzKQ7TDZ2G4/rVTOrq9V+icbbadjbVxxeFeDsNHv2SrZeWoA+6ZiTyWYWtScEIW07EAcA==} engines: {node: '>=6.9.0'} - '@babel/helper-create-class-features-plugin@7.25.9': - resolution: {integrity: sha512-UTZQMvt0d/rSz6KI+qdu7GQze5TIajwTS++GUozlw8VBJDEOAqSXwm1WvmYEZwqdqSGQshRocPDqrt4HBZB3fQ==} + '@babel/helper-create-class-features-plugin@7.27.0': + resolution: {integrity: sha512-vSGCvMecvFCd/BdpGlhpXYNhhC4ccxyvQWpbGL4CWbvfEoLFWUZuSuf7s9Aw70flgQF+6vptvgK2IfOnKlRmBg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 @@ -423,12 +392,12 @@ packages: resolution: {integrity: sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==} engines: {node: '>=6.9.0'} - '@babel/helpers@7.26.0': - resolution: {integrity: sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw==} + '@babel/helpers@7.27.0': + resolution: {integrity: sha512-U5eyP/CTFPuNE3qk+WZMxFkp/4zUzdceQlfzf7DdGdhp+Fezd7HD+i8Y24ZuTMKX3wQBld449jijbGq6OdGNQg==} engines: {node: '>=6.9.0'} - '@babel/parser@7.26.5': - resolution: {integrity: sha512-SRJ4jYmXRqV1/Xc+TIVG84WjHBXKlxO9sHQnA2Pf12QQEAp1LOh6kDzNHXcUnbH1QI0FDoPPVOt+vyUDucxpaw==} + '@babel/parser@7.27.0': + resolution: {integrity: sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==} engines: {node: '>=6.0.0'} hasBin: true @@ -451,24 +420,24 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/runtime@7.26.0': - resolution: {integrity: sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==} + '@babel/runtime@7.27.0': + resolution: {integrity: sha512-VtPOkrdPHZsKc/clNqyi9WUA8TINkZ4cGk63UUE3u4pmB2k+ZMQRDuIOagv8UVd6j7k0T3+RRIb7beKTebNbcw==} engines: {node: '>=6.9.0'} - '@babel/template@7.25.9': - resolution: {integrity: sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==} + '@babel/template@7.27.0': + resolution: {integrity: sha512-2ncevenBqXI6qRMukPlXwHKHchC7RyMuu4xv5JBXRfOGVcTy1mXCD12qrp7Jsoxll1EV3+9sE4GugBVRjT2jFA==} engines: {node: '>=6.9.0'} - '@babel/traverse@7.26.5': - resolution: {integrity: sha512-rkOSPOw+AXbgtwUga3U4u8RpoK9FEFWBNAlTpcnkLFjL5CT+oyHNuUUC/xx6XefEJ16r38r8Bc/lfp6rYuHeJQ==} + '@babel/traverse@7.27.0': + resolution: {integrity: sha512-19lYZFzYVQkkHkl4Cy4WrAVcqBkgvV2YM2TU3xG6DIwO7O3ecbDPfW3yM3bjAGcqcQHi+CCtjMR3dIEHxsd6bA==} engines: {node: '>=6.9.0'} - '@babel/types@7.26.5': - resolution: {integrity: sha512-L6mZmwFDK6Cjh1nRCLXpa6no13ZIioJDz7mdkzHv399pThrTa/k0nUlNaenOeh2kWu/iaOQYElEpKPUswUa9Vg==} + '@babel/types@7.27.0': + resolution: {integrity: sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==} engines: {node: '>=6.9.0'} - '@codemirror/autocomplete@6.18.4': - resolution: {integrity: sha512-sFAphGQIqyQZfP2ZBsSHV7xQvo9Py0rV0dW7W3IMRdS+zDuNb2l3no78CvUaWKGfzFjI4FTrLdUSj86IGb2hRA==} + '@codemirror/autocomplete@6.18.6': + resolution: {integrity: sha512-PHHBXFomUs5DF+9tCOM/UoW6XQ4R44lLNNhRaW9PKPTU0D7lIjRg3ElxaJnTwsl/oHiR93WSXDBrekhoUGCPtg==} '@codemirror/commands@6.8.0': resolution: {integrity: sha512-q8VPEFaEP4ikSlt6ZxjB3zW72+7osfAYW9i8Zu943uqbKuz6utc1+F170hyLUCUltXORjQXRyYQNfkckzA/bPQ==} @@ -491,8 +460,8 @@ packages: '@codemirror/lang-java@6.0.1': resolution: {integrity: sha512-OOnmhH67h97jHzCuFaIEspbmsT98fNdhVhmA3zCxW0cn7l8rChDhZtwiwJ/JOKXgfm4J+ELxQihxaI7bj7mJRg==} - '@codemirror/lang-javascript@6.2.2': - resolution: {integrity: sha512-VGQfY+FCc285AhWuwjYxQyUQcYurWlxdKYT4bqwr3Twnd5wP5WSeu52t4tvvuWmljT4EmgEgZCqSieokhtY8hg==} + '@codemirror/lang-javascript@6.2.3': + resolution: {integrity: sha512-8PR3vIWg7pSu7ur8A07pGiYHgy3hHj+mRYRCSG8q+mPIrl0F02rgpGv+DsQTHRTc30rydOsf5PZ7yjKFg2Ackw==} '@codemirror/lang-json@6.0.1': resolution: {integrity: sha512-+T1flHdgpqDDlJZ2Lkil/rLiRy684WMLc74xUnjJH48GQdfJo/pudlTRreZmKwzP8/tGdKf83wlbAdOCzlJOGQ==} @@ -500,8 +469,8 @@ packages: '@codemirror/lang-less@6.0.2': resolution: {integrity: sha512-EYdQTG22V+KUUk8Qq582g7FMnCZeEHsyuOJisHRft/mQ+ZSZ2w51NupvDUHiqtsOy7It5cHLPGfHQLpMh9bqpQ==} - '@codemirror/lang-liquid@6.2.2': - resolution: {integrity: sha512-7Dm841fk37+JQW6j2rI1/uGkJyESrjzyhiIkaLjbbR0U6aFFQvMrJn35WxQreRMADMhzkyVkZM4467OR7GR8nQ==} + '@codemirror/lang-liquid@6.2.3': + resolution: {integrity: sha512-yeN+nMSrf/lNii3FJxVVEGQwFG0/2eDyH6gNOj+TGCa0hlNO4bhQnoO5ISnd7JOG+7zTEcI/GOoyraisFVY7jQ==} '@codemirror/lang-markdown@6.3.2': resolution: {integrity: sha512-c/5MYinGbFxYl4itE9q/rgN/sMTjOr8XL5OWnC+EaRMLfCbVUmmubTJfdgpfcSS2SCaT7b+Q+xi3l6CgoE+BsA==} @@ -509,8 +478,8 @@ packages: '@codemirror/lang-php@6.0.1': resolution: {integrity: sha512-ublojMdw/PNWa7qdN5TMsjmqkNuTBD3k6ndZ4Z0S25SBAiweFGyY68AS3xNcIOlb6DDFDvKlinLQ40vSLqf8xA==} - '@codemirror/lang-python@6.1.6': - resolution: {integrity: sha512-ai+01WfZhWqM92UqjnvorkxosZ2aq2u28kHvr+N3gu012XqY2CThD67JPMHnGceRfXPDBmn1HnyqowdpF57bNg==} + '@codemirror/lang-python@6.1.7': + resolution: {integrity: sha512-mZnFTsL4lW5p9ch8uKNKeRU3xGGxr1QpESLilfON2E3fQzOa/OygEMkaDvERvXDJWJA9U9oN/D4w0ZuUzNO4+g==} '@codemirror/lang-rust@6.0.1': resolution: {integrity: sha512-344EMWFBzWArHWdZn/NcgkwMvZIWUR1GEBdwG8FEp++6o6vT6KL9V7vGs2ONsKxxFUPXKI0SPcWhyYyl2zPYxQ==} @@ -536,26 +505,26 @@ packages: '@codemirror/language-data@6.5.1': resolution: {integrity: sha512-0sWxeUSNlBr6OmkqybUTImADFUP0M3P0IiSde4nc24bz/6jIYzqYSgkOSLS+CBIoW1vU8Q9KUWXscBXeoMVC9w==} - '@codemirror/language@6.10.8': - resolution: {integrity: sha512-wcP8XPPhDH2vTqf181U8MbZnW+tDyPYy0UzVOa+oHORjyT+mhhom9vBd7dApJwoDz9Nb/a8kHjJIsuA/t8vNFw==} + '@codemirror/language@6.11.0': + resolution: {integrity: sha512-A7+f++LodNNc1wGgoRDTt78cOwWm9KVezApgjOMp1W4hM0898nsqBXwF+sbePE7ZRcjN7Sa1Z5m2oN27XkmEjQ==} - '@codemirror/legacy-modes@6.4.2': - resolution: {integrity: sha512-HsvWu08gOIIk303eZQCal4H4t65O/qp1V4ul4zVa3MHK5FJ0gz3qz3O55FIkm+aQUcshUOjBx38t2hPiJwW5/g==} + '@codemirror/legacy-modes@6.5.0': + resolution: {integrity: sha512-dNw5pwTqtR1giYjaJyEajunLqxGavZqV0XRtVZyMJnNOD2HmK9DMUmuCAr6RMFGRJ4l8OeQDjpI/us+R09mQsw==} - '@codemirror/lint@6.8.4': - resolution: {integrity: sha512-u4q7PnZlJUojeRe8FJa/njJcMctISGgPQ4PnWsd9268R4ZTtU+tfFYmwkBvgcrK2+QQ8tYFVALVb5fVJykKc5A==} + '@codemirror/lint@6.8.5': + resolution: {integrity: sha512-s3n3KisH7dx3vsoeGMxsbRAgKe4O1vbrnKBClm99PU0fWxmxsx5rR2PfqQgIt+2MMJBHbiJ5rfIdLYfB9NNvsA==} - '@codemirror/merge@6.8.0': - resolution: {integrity: sha512-EcCD4OJlGz6lJaqZOFM/RE6fqM4XSQlWNWVxm2CJS1snbrbkgYLTvj8c++pFUWpJOUiNgcxvYMYkMisnC0aR6g==} + '@codemirror/merge@6.10.0': + resolution: {integrity: sha512-Omn0gU6MM5cKQGqgKoIhFjUqCNWH/nukCMLXzu/1jOdtiHsxAu3GdENBf1QYkoIC3FSgkF7X/ClOqYeUATQ4Sw==} - '@codemirror/search@6.5.8': - resolution: {integrity: sha512-PoWtZvo7c1XFeZWmmyaOp2G0XVbOnm+fJzvghqGAktBW3cufwJUWvSCcNG0ppXiBEM05mZu6RhMtXPv2hpllig==} + '@codemirror/search@6.5.10': + resolution: {integrity: sha512-RMdPdmsrUf53pb2VwflKGHEe1XVM07hI7vV2ntgw1dmqhimpatSJKva4VA9h4TLUDOD4EIF02201oZurpnEFsg==} - '@codemirror/state@6.5.1': - resolution: {integrity: sha512-3rA9lcwciEB47ZevqvD8qgbzhM9qMb8vCcQCNmDfVRPQG4JT9mSb0Jg8H7YjKGGQcFnLN323fj9jdnG59Kx6bg==} + '@codemirror/state@6.5.2': + resolution: {integrity: sha512-FVqsPqtPWKVVL3dPSxy8wEF/ymIEuVzF1PK3VbUgrxXpJUSHQWWZz4JMToquRxnkw+36LTamCZG2iua2Ptq0fA==} - '@codemirror/view@6.36.2': - resolution: {integrity: sha512-DZ6ONbs8qdJK0fdN7AB82CgI6tYXf4HWk1wSVa0+9bhVznCuuvhQtX8bFBoy3dv8rZSQqUd8GvhVAcielcidrA==} + '@codemirror/view@6.36.4': + resolution: {integrity: sha512-ZQ0V5ovw/miKEXTvjgzRyjnrk9TwriUB1k4R5p7uNnHR9Hus+D1SXHGdJshijEzPFjU25xea/7nhIeSqYFKdbA==} '@codesandbox/nodebox@0.1.8': resolution: {integrity: sha512-2VRS6JDSk+M+pg56GA6CryyUSGPjBEe8Pnae0QL3jJF1mJZJVMDKr93gJRtBbLkfZN6LD/DwMtf+2L0bpWrjqg==} @@ -563,11 +532,11 @@ packages: '@codesandbox/sandpack-client@2.19.8': resolution: {integrity: sha512-CMV4nr1zgKzVpx4I3FYvGRM5YT0VaQhALMW9vy4wZRhEyWAtJITQIqZzrTGWqB1JvV7V72dVEUCUPLfYz5hgJQ==} - '@codesandbox/sandpack-react@2.19.10': - resolution: {integrity: sha512-X/7NzhR7R5pp5qYS+Gc31OzJvy+EzGz++H1YN9bJlDE+VzxTBsMN9dv3adzeo5wtxUhqexVOJS7mGr//e7KP2A==} + '@codesandbox/sandpack-react@2.20.0': + resolution: {integrity: sha512-takd1YpW/PMQ6KPQfvseWLHWklJovGY8QYj8MtWnskGKbjOGJ6uZfyZbcJ6aCFLQMpNyjTqz9AKNbvhCOZ1TUQ==} peerDependencies: - react: ^16.8.0 || ^17 || ^18 - react-dom: ^16.8.0 || ^17 || ^18 + react: ^16.8.0 || ^17 || ^18 || ^19 + react-dom: ^16.8.0 || ^17 || ^18 || ^19 '@directus/sdk@18.0.3': resolution: {integrity: sha512-PnEDRDqr2x/DG3HZ3qxU7nFp2nW6zqJqswjii57NhriXgTz4TBUI8NmSdzQvnyHuTL9J0nedYfQGfW4v8odS1A==} @@ -601,8 +570,8 @@ packages: cpu: [ppc64] os: [aix] - '@esbuild/aix-ppc64@0.24.2': - resolution: {integrity: sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==} + '@esbuild/aix-ppc64@0.25.1': + resolution: {integrity: sha512-kfYGy8IdzTGy+z0vFGvExZtxkFlA4zAxgKEahG9KE1ScBjpQnFsNOX8KTU5ojNru5ed5CVoJYXFtoxaq5nFbjQ==} engines: {node: '>=18'} cpu: [ppc64] os: [aix] @@ -613,8 +582,8 @@ packages: cpu: [arm64] os: [android] - '@esbuild/android-arm64@0.24.2': - resolution: {integrity: sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==} + '@esbuild/android-arm64@0.25.1': + resolution: {integrity: sha512-50tM0zCJW5kGqgG7fQ7IHvQOcAn9TKiVRuQ/lN0xR+T2lzEFvAi1ZcS8DiksFcEpf1t/GYOeOfCAgDHFpkiSmA==} engines: {node: '>=18'} cpu: [arm64] os: [android] @@ -625,8 +594,8 @@ packages: cpu: [arm] os: [android] - '@esbuild/android-arm@0.24.2': - resolution: {integrity: sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==} + '@esbuild/android-arm@0.25.1': + resolution: {integrity: sha512-dp+MshLYux6j/JjdqVLnMglQlFu+MuVeNrmT5nk6q07wNhCdSnB7QZj+7G8VMUGh1q+vj2Bq8kRsuyA00I/k+Q==} engines: {node: '>=18'} cpu: [arm] os: [android] @@ -637,8 +606,8 @@ packages: cpu: [x64] os: [android] - '@esbuild/android-x64@0.24.2': - resolution: {integrity: sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==} + '@esbuild/android-x64@0.25.1': + resolution: {integrity: sha512-GCj6WfUtNldqUzYkN/ITtlhwQqGWu9S45vUXs7EIYf+7rCiiqH9bCloatO9VhxsL0Pji+PF4Lz2XXCES+Q8hDw==} engines: {node: '>=18'} cpu: [x64] os: [android] @@ -649,8 +618,8 @@ packages: cpu: [arm64] os: [darwin] - '@esbuild/darwin-arm64@0.24.2': - resolution: {integrity: sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==} + '@esbuild/darwin-arm64@0.25.1': + resolution: {integrity: sha512-5hEZKPf+nQjYoSr/elb62U19/l1mZDdqidGfmFutVUjjUZrOazAtwK+Kr+3y0C/oeJfLlxo9fXb1w7L+P7E4FQ==} engines: {node: '>=18'} cpu: [arm64] os: [darwin] @@ -661,8 +630,8 @@ packages: cpu: [x64] os: [darwin] - '@esbuild/darwin-x64@0.24.2': - resolution: {integrity: sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==} + '@esbuild/darwin-x64@0.25.1': + resolution: {integrity: sha512-hxVnwL2Dqs3fM1IWq8Iezh0cX7ZGdVhbTfnOy5uURtao5OIVCEyj9xIzemDi7sRvKsuSdtCAhMKarxqtlyVyfA==} engines: {node: '>=18'} cpu: [x64] os: [darwin] @@ -673,8 +642,8 @@ packages: cpu: [arm64] os: [freebsd] - '@esbuild/freebsd-arm64@0.24.2': - resolution: {integrity: sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==} + '@esbuild/freebsd-arm64@0.25.1': + resolution: {integrity: sha512-1MrCZs0fZa2g8E+FUo2ipw6jw5qqQiH+tERoS5fAfKnRx6NXH31tXBKI3VpmLijLH6yriMZsxJtaXUyFt/8Y4A==} engines: {node: '>=18'} cpu: [arm64] os: [freebsd] @@ -685,8 +654,8 @@ packages: cpu: [x64] os: [freebsd] - '@esbuild/freebsd-x64@0.24.2': - resolution: {integrity: sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==} + '@esbuild/freebsd-x64@0.25.1': + resolution: {integrity: sha512-0IZWLiTyz7nm0xuIs0q1Y3QWJC52R8aSXxe40VUxm6BB1RNmkODtW6LHvWRrGiICulcX7ZvyH6h5fqdLu4gkww==} engines: {node: '>=18'} cpu: [x64] os: [freebsd] @@ -697,8 +666,8 @@ packages: cpu: [arm64] os: [linux] - '@esbuild/linux-arm64@0.24.2': - resolution: {integrity: sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==} + '@esbuild/linux-arm64@0.25.1': + resolution: {integrity: sha512-jaN3dHi0/DDPelk0nLcXRm1q7DNJpjXy7yWaWvbfkPvI+7XNSc/lDOnCLN7gzsyzgu6qSAmgSvP9oXAhP973uQ==} engines: {node: '>=18'} cpu: [arm64] os: [linux] @@ -709,8 +678,8 @@ packages: cpu: [arm] os: [linux] - '@esbuild/linux-arm@0.24.2': - resolution: {integrity: sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==} + '@esbuild/linux-arm@0.25.1': + resolution: {integrity: sha512-NdKOhS4u7JhDKw9G3cY6sWqFcnLITn6SqivVArbzIaf3cemShqfLGHYMx8Xlm/lBit3/5d7kXvriTUGa5YViuQ==} engines: {node: '>=18'} cpu: [arm] os: [linux] @@ -721,8 +690,8 @@ packages: cpu: [ia32] os: [linux] - '@esbuild/linux-ia32@0.24.2': - resolution: {integrity: sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==} + '@esbuild/linux-ia32@0.25.1': + resolution: {integrity: sha512-OJykPaF4v8JidKNGz8c/q1lBO44sQNUQtq1KktJXdBLn1hPod5rE/Hko5ugKKZd+D2+o1a9MFGUEIUwO2YfgkQ==} engines: {node: '>=18'} cpu: [ia32] os: [linux] @@ -733,8 +702,8 @@ packages: cpu: [loong64] os: [linux] - '@esbuild/linux-loong64@0.24.2': - resolution: {integrity: sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==} + '@esbuild/linux-loong64@0.25.1': + resolution: {integrity: sha512-nGfornQj4dzcq5Vp835oM/o21UMlXzn79KobKlcs3Wz9smwiifknLy4xDCLUU0BWp7b/houtdrgUz7nOGnfIYg==} engines: {node: '>=18'} cpu: [loong64] os: [linux] @@ -745,8 +714,8 @@ packages: cpu: [mips64el] os: [linux] - '@esbuild/linux-mips64el@0.24.2': - resolution: {integrity: sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==} + '@esbuild/linux-mips64el@0.25.1': + resolution: {integrity: sha512-1osBbPEFYwIE5IVB/0g2X6i1qInZa1aIoj1TdL4AaAb55xIIgbg8Doq6a5BzYWgr+tEcDzYH67XVnTmUzL+nXg==} engines: {node: '>=18'} cpu: [mips64el] os: [linux] @@ -757,8 +726,8 @@ packages: cpu: [ppc64] os: [linux] - '@esbuild/linux-ppc64@0.24.2': - resolution: {integrity: sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==} + '@esbuild/linux-ppc64@0.25.1': + resolution: {integrity: sha512-/6VBJOwUf3TdTvJZ82qF3tbLuWsscd7/1w+D9LH0W/SqUgM5/JJD0lrJ1fVIfZsqB6RFmLCe0Xz3fmZc3WtyVg==} engines: {node: '>=18'} cpu: [ppc64] os: [linux] @@ -769,8 +738,8 @@ packages: cpu: [riscv64] os: [linux] - '@esbuild/linux-riscv64@0.24.2': - resolution: {integrity: sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==} + '@esbuild/linux-riscv64@0.25.1': + resolution: {integrity: sha512-nSut/Mx5gnilhcq2yIMLMe3Wl4FK5wx/o0QuuCLMtmJn+WeWYoEGDN1ipcN72g1WHsnIbxGXd4i/MF0gTcuAjQ==} engines: {node: '>=18'} cpu: [riscv64] os: [linux] @@ -781,8 +750,8 @@ packages: cpu: [s390x] os: [linux] - '@esbuild/linux-s390x@0.24.2': - resolution: {integrity: sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==} + '@esbuild/linux-s390x@0.25.1': + resolution: {integrity: sha512-cEECeLlJNfT8kZHqLarDBQso9a27o2Zd2AQ8USAEoGtejOrCYHNtKP8XQhMDJMtthdF4GBmjR2au3x1udADQQQ==} engines: {node: '>=18'} cpu: [s390x] os: [linux] @@ -793,14 +762,14 @@ packages: cpu: [x64] os: [linux] - '@esbuild/linux-x64@0.24.2': - resolution: {integrity: sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==} + '@esbuild/linux-x64@0.25.1': + resolution: {integrity: sha512-xbfUhu/gnvSEg+EGovRc+kjBAkrvtk38RlerAzQxvMzlB4fXpCFCeUAYzJvrnhFtdeyVCDANSjJvOvGYoeKzFA==} engines: {node: '>=18'} cpu: [x64] os: [linux] - '@esbuild/netbsd-arm64@0.24.2': - resolution: {integrity: sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==} + '@esbuild/netbsd-arm64@0.25.1': + resolution: {integrity: sha512-O96poM2XGhLtpTh+s4+nP7YCCAfb4tJNRVZHfIE7dgmax+yMP2WgMd2OecBuaATHKTHsLWHQeuaxMRnCsH8+5g==} engines: {node: '>=18'} cpu: [arm64] os: [netbsd] @@ -811,14 +780,14 @@ packages: cpu: [x64] os: [netbsd] - '@esbuild/netbsd-x64@0.24.2': - resolution: {integrity: sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==} + '@esbuild/netbsd-x64@0.25.1': + resolution: {integrity: sha512-X53z6uXip6KFXBQ+Krbx25XHV/NCbzryM6ehOAeAil7X7oa4XIq+394PWGnwaSQ2WRA0KI6PUO6hTO5zeF5ijA==} engines: {node: '>=18'} cpu: [x64] os: [netbsd] - '@esbuild/openbsd-arm64@0.24.2': - resolution: {integrity: sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==} + '@esbuild/openbsd-arm64@0.25.1': + resolution: {integrity: sha512-Na9T3szbXezdzM/Kfs3GcRQNjHzM6GzFBeU1/6IV/npKP5ORtp9zbQjvkDJ47s6BCgaAZnnnu/cY1x342+MvZg==} engines: {node: '>=18'} cpu: [arm64] os: [openbsd] @@ -829,8 +798,8 @@ packages: cpu: [x64] os: [openbsd] - '@esbuild/openbsd-x64@0.24.2': - resolution: {integrity: sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==} + '@esbuild/openbsd-x64@0.25.1': + resolution: {integrity: sha512-T3H78X2h1tszfRSf+txbt5aOp/e7TAz3ptVKu9Oyir3IAOFPGV6O9c2naym5TOriy1l0nNf6a4X5UXRZSGX/dw==} engines: {node: '>=18'} cpu: [x64] os: [openbsd] @@ -841,8 +810,8 @@ packages: cpu: [x64] os: [sunos] - '@esbuild/sunos-x64@0.24.2': - resolution: {integrity: sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==} + '@esbuild/sunos-x64@0.25.1': + resolution: {integrity: sha512-2H3RUvcmULO7dIE5EWJH8eubZAI4xw54H1ilJnRNZdeo8dTADEZ21w6J22XBkXqGJbe0+wnNJtw3UXRoLJnFEg==} engines: {node: '>=18'} cpu: [x64] os: [sunos] @@ -853,8 +822,8 @@ packages: cpu: [arm64] os: [win32] - '@esbuild/win32-arm64@0.24.2': - resolution: {integrity: sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==} + '@esbuild/win32-arm64@0.25.1': + resolution: {integrity: sha512-GE7XvrdOzrb+yVKB9KsRMq+7a2U/K5Cf/8grVFRAGJmfADr/e/ODQ134RK2/eeHqYV5eQRFxb1hY7Nr15fv1NQ==} engines: {node: '>=18'} cpu: [arm64] os: [win32] @@ -865,8 +834,8 @@ packages: cpu: [ia32] os: [win32] - '@esbuild/win32-ia32@0.24.2': - resolution: {integrity: sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==} + '@esbuild/win32-ia32@0.25.1': + resolution: {integrity: sha512-uOxSJCIcavSiT6UnBhBzE8wy3n0hOkJsBOzy7HDAuTDE++1DJMRRVCPGisULScHL+a/ZwdXPpXD3IyFKjA7K8A==} engines: {node: '>=18'} cpu: [ia32] os: [win32] @@ -877,14 +846,14 @@ packages: cpu: [x64] os: [win32] - '@esbuild/win32-x64@0.24.2': - resolution: {integrity: sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==} + '@esbuild/win32-x64@0.25.1': + resolution: {integrity: sha512-Y1EQdcfwMSeQN/ujR5VayLOJ1BHaK+ssyk0AEzPjC+t1lITgsnccPqFjb6V+LsTp/9Iov4ysfjxLaGJ9RPtkVg==} engines: {node: '>=18'} cpu: [x64] os: [win32] - '@eslint-community/eslint-utils@4.4.1': - resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==} + '@eslint-community/eslint-utils@4.5.1': + resolution: {integrity: sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 @@ -893,32 +862,32 @@ packages: resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/config-array@0.19.1': - resolution: {integrity: sha512-fo6Mtm5mWyKjA/Chy1BYTdn5mGJoDNjC7C64ug20ADsRDGrA85bN3uK3MaKbeRkRuuIEAR5N33Jr1pbm411/PA==} + '@eslint/config-array@0.19.2': + resolution: {integrity: sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/core@0.10.0': - resolution: {integrity: sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==} + '@eslint/core@0.12.0': + resolution: {integrity: sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/core@0.9.1': resolution: {integrity: sha512-GuUdqkyyzQI5RMIWkHhvTWLCyLo1jNK3vzkSyaExH5kHPDHcuL2VOpHjmMY+y3+NC69qAKToBqldTBgYeLSr9Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/eslintrc@3.2.0': - resolution: {integrity: sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==} + '@eslint/eslintrc@3.3.1': + resolution: {integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/js@9.16.0': resolution: {integrity: sha512-tw2HxzQkrbeuvyj1tG2Yqq+0H9wGoI2IMk4EOsQeX+vmd75FtJAzf+gTA69WF+baUKRYQ3x2kbLE08js5OsTVg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/object-schema@2.1.5': - resolution: {integrity: sha512-o0bhxnL89h5Bae5T318nFoFzGy+YE5i/gGkoPAgkmTVdRKTiv3p8JHevPiPaMwoloKfEiiaHlawCqaZMqRm+XQ==} + '@eslint/object-schema@2.1.6': + resolution: {integrity: sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/plugin-kit@0.2.5': - resolution: {integrity: sha512-lB05FkqEdUg2AA0xEbUz0SnkXT1LcCTa438W4IWTUh4hdOnVbQyOJ81OrDXsJk/LSiJHubgGEFoR5EHq1NsH1A==} + '@eslint/plugin-kit@0.2.7': + resolution: {integrity: sha512-JubJ5B2pJ4k4yGxaNLdbjrnk9d/iDz6/q8wOilpIowd6PJPgaxCuHBnBszq7Ce2TyMrywm5r4PnKm6V3iiZF+g==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@floating-ui/core@1.6.9': @@ -942,8 +911,8 @@ packages: '@floating-ui/utils@0.2.9': resolution: {integrity: sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==} - '@fontsource-variable/space-grotesk@5.1.1': - resolution: {integrity: sha512-LTz+nIUdm7ZVY9ZlqRiTKqByi+tIcQUKaKONBVSxKRABPRgdnJOwiuqvHa+ac7Xs0ZorDBm7O0fmwHuOGT3HIw==} + '@fontsource-variable/space-grotesk@5.2.6': + resolution: {integrity: sha512-caoLd9SfhtOGYNIis8ek+sOGxO0NNJ5xGcTtlhCG3UA9N4xPa1AkeCDNOABocH0djVKHYl23CYtsmuDFqh3tiQ==} '@formkit/auto-animate@0.8.2': resolution: {integrity: sha512-SwPWfeRa5veb1hOIBMdzI+73te5puUBHmqqaF1Bu7FjvxlYSz/kJcZKSa9Cg60zL0uRNeJL2SbRxV6Jp6Q1nFQ==} @@ -969,8 +938,8 @@ packages: resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} engines: {node: '>=18.18'} - '@humanwhocodes/retry@0.4.1': - resolution: {integrity: sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==} + '@humanwhocodes/retry@0.4.2': + resolution: {integrity: sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==} engines: {node: '>=18.18'} '@isaacs/cliui@8.0.2': @@ -1003,85 +972,85 @@ packages: '@jridgewell/trace-mapping@0.3.25': resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} - '@lexical/clipboard@0.17.1': - resolution: {integrity: sha512-OVqnEfWX8XN5xxuMPo6BfgGKHREbz++D5V5ISOiml0Z8fV/TQkdgwqbBJcUdJHGRHWSUwdK7CWGs/VALvVvZyw==} + '@lexical/clipboard@0.27.2': + resolution: {integrity: sha512-rfnFYf8P0081IvPOJjE7fWJE+d/dz0Xdsw83uizY5X6HaLXFB/Qy1MrzEqWZnYnOpgi1snAuolZ5Rbg83SIlYA==} - '@lexical/code@0.17.1': - resolution: {integrity: sha512-ZspfTm6g6dN3nAb4G5bPp3SqxzdkB/bjGfa0uRKMU6/eBKtrMUgZsGxt0a8JRZ1eq2TZrQhx+l1ceRoLXii/bQ==} + '@lexical/code@0.27.2': + resolution: {integrity: sha512-GoTy57CYoXvP1N+E9ptCJ47LQCAu67K/HQsjg0NmmtNbWlInk6Sa2V4pM1KePp6JAQapGpIlCoEyC3/KkrQ55g==} - '@lexical/devtools-core@0.17.1': - resolution: {integrity: sha512-SzL1EX9Rt5GptIo87t6nDxAc9TtYtl6DyAPNz/sCltspdd69KQgs23sTRa26/tkNFCS1jziRN7vpN3mlnmm5wA==} + '@lexical/devtools-core@0.27.2': + resolution: {integrity: sha512-LAI7j9roS2i/lV/6Z4AAx2+EVOEnMVzLZFB6aQfSjRbZ9lzA8S17743OJUHRXyTvBWc5520ihhBybO0EfjTagw==} peerDependencies: react: '>=17.x' react-dom: '>=17.x' - '@lexical/dragon@0.17.1': - resolution: {integrity: sha512-lhBRKP7RlhiVCLtF0qiNqmMhEO6cQB43sMe7d4bvuY1G2++oKY/XAJPg6QJZdXRrCGRQ6vZ26QRNhRPmCxL5Ng==} + '@lexical/dragon@0.27.2': + resolution: {integrity: sha512-0xI98esvgtJpVLJUADtvJ/yKk4kFFrn2h7GgzvihLXeVe+O149DONFSarB9yguDyvHUblKtfjB2BcJaeOIpouQ==} - '@lexical/hashtag@0.17.1': - resolution: {integrity: sha512-XtP0BI8vEewAe7tzq9MC49UPUvuChuNJI/jqFp+ezZlt/RUq0BClQCOPuSlrTJhluvE2rWnUnOnVMk8ILRvggQ==} + '@lexical/hashtag@0.27.2': + resolution: {integrity: sha512-BBwMT3rz/TlZZ6ZjkP5+Yj86ffufiktOBwry7kPDUqOMyTuTFEE58cmd4SXiYEs7yifrC6TenRmFZgBui7xpmQ==} - '@lexical/history@0.17.1': - resolution: {integrity: sha512-OU/ohajz4FXchUhghsWC7xeBPypFe50FCm5OePwo767G7P233IztgRKIng2pTT4zhCPW7S6Mfl53JoFHKehpWA==} + '@lexical/history@0.27.2': + resolution: {integrity: sha512-5CihqjvlmXuiLZYpKZMfYISpVSSpUrs3jpC5XK0kAv0etUWyf2/JzY0BLfD2kb7x/tOrU7O+WptNNyl5WL3N5A==} - '@lexical/html@0.17.1': - resolution: {integrity: sha512-yGG+K2DXl7Wn2DpNuZ0Y3uCHJgfHkJN3/MmnFb4jLnH1FoJJiuy7WJb/BRRh9H+6xBJ9v70iv+kttDJ0u1xp5w==} + '@lexical/html@0.27.2': + resolution: {integrity: sha512-6kPvrTxAE39jUhnbYMCenHVHXTlew9sBprniQu5iZSszMfcn/SDkqmHWi8//fhiLlcAa/p0vRDxaBYoQQf0r9A==} - '@lexical/link@0.17.1': - resolution: {integrity: sha512-qFJEKBesZAtR8kfJfIVXRFXVw6dwcpmGCW7duJbtBRjdLjralOxrlVKyFhW9PEXGhi4Mdq2Ux16YnnDncpORdQ==} + '@lexical/link@0.27.2': + resolution: {integrity: sha512-t+tMr1aEwy67D4+GU6XX78Dxllyu3xebYAlB5ANpnv0oV8PSxT8h6aHHVwj0a55a89NnSPTzpBhqtX0QO374+A==} - '@lexical/list@0.17.1': - resolution: {integrity: sha512-k9ZnmQuBvW+xVUtWJZwoGtiVG2cy+hxzkLGU4jTq1sqxRIoSeGcjvhFAK8JSEj4i21SgkB1FmkWXoYK5kbwtRA==} + '@lexical/list@0.27.2': + resolution: {integrity: sha512-jE7e95ttO26Xtt322dnUwWSG7QgeAfBg3Ghyjd8ByGI5O5wmMgMgb3NCiSSRPBWOpt6PEeD5s5KjQKfMUCCuHQ==} - '@lexical/mark@0.17.1': - resolution: {integrity: sha512-V82SSRjvygmV+ZMwVpy5gwgr2ZDrJpl3TvEDO+G5I4SDSjbgvua8hO4dKryqiDVlooxQq9dsou0GrZ9Qtm6rYg==} + '@lexical/mark@0.27.2': + resolution: {integrity: sha512-6rTwfVuuFeiTy6MU8yY3nyBOe2KtcB1lL0zg8ygIRjSYsV2+HAVAUesDFnaCUHJ1qimj9pJB8fW+GU2ur8uGvQ==} - '@lexical/markdown@0.17.1': - resolution: {integrity: sha512-uexR9snyT54jfQTrbr/GZAtzX+8Oyykr4p1HS0vCVL1KU5MDuP2PoyFfOv3rcfB2TASc+aYiINhU2gSXzwCHNg==} + '@lexical/markdown@0.27.2': + resolution: {integrity: sha512-XbM/G0CPoH2BUAuKSRS5L2pAU1kreZDOH0Eh4DR2sLzosM48ZyRktgKAUwHItQPQ/in5hkH3Xd5D4RAtYWhKUA==} - '@lexical/offset@0.17.1': - resolution: {integrity: sha512-fX0ZSIFWwUKAjxf6l21vyXFozJGExKWyWxA+EMuOloNAGotHnAInxep0Mt8t/xcvHs7luuyQUxEPw7YrTJP7aw==} + '@lexical/offset@0.27.2': + resolution: {integrity: sha512-li+NxLeU2IW7JKOr8pheS/7aGlU8sKThPEKDtM20d0drvMAo03ebu5X/wxmy1e4zWKbpH3dll/ocE+gGV9DcLA==} - '@lexical/overflow@0.17.1': - resolution: {integrity: sha512-oElVDq486R3rO2+Zz0EllXJGpW3tN0tfcH+joZ5h36+URKuNeKddqkJuDRvgSLOr9l8Jhtv3+/YKduPJVKMz6w==} + '@lexical/overflow@0.27.2': + resolution: {integrity: sha512-vkKrZyes4/r73wH/t+X0HEsol4A9yxzALAnx8vyXCnw2s8zklQFi5ccf3fkwPG6cSKDl+zAO0elmSjhxOp5JfQ==} - '@lexical/plain-text@0.17.1': - resolution: {integrity: sha512-CSvi4j1a4ame0OAvOKUCCmn2XrNsWcST4lExGTa9Ei/VIh8IZ+a97h4Uby8T3lqOp10x+oiizYWzY30pb9QaBg==} + '@lexical/plain-text@0.27.2': + resolution: {integrity: sha512-/EygmUMFsH9WVkXl1/IwKJfJJAQy2pnxPx+bYz97hTXqh9CHkzn0N81gxjquRAPZkemoE7UoZsAbaw07BH+8hA==} - '@lexical/react@0.17.1': - resolution: {integrity: sha512-DI4k25tO0E1WyozrjaLgKMOmLjOB7+39MT4eZN9brPlU7g+w0wzdGbTZUPgPmFGIKPK+MSLybCwAJCK97j8HzQ==} + '@lexical/react@0.27.2': + resolution: {integrity: sha512-azfF9kQ/LM47Gn0vV5xMkD2viEiAxmgRQQsDv8gOZcZY4CWtRth/uehW8nchmD4xIgK63LLjGRjYhShTufy0XA==} peerDependencies: react: '>=17.x' react-dom: '>=17.x' - '@lexical/rich-text@0.17.1': - resolution: {integrity: sha512-T3kvj4P1OpedX9jvxN3WN8NP1Khol6mCW2ScFIRNRz2dsXgyN00thH1Q1J/uyu7aKyGS7rzcY0rb1Pz1qFufqQ==} + '@lexical/rich-text@0.27.2': + resolution: {integrity: sha512-naWwPNbEJAue/R0pmZwqnTVkv3V2rzgzz+C6/J5tMOvN1Osth8OL3UD6K8NQX8rjdnXe4soVoH8XsNhU0Jv10w==} - '@lexical/selection@0.17.1': - resolution: {integrity: sha512-qBKVn+lMV2YIoyRELNr1/QssXx/4c0id9NCB/BOuYlG8du5IjviVJquEF56NEv2t0GedDv4BpUwkhXT2QbNAxA==} + '@lexical/selection@0.27.2': + resolution: {integrity: sha512-9AJOfw1zMQ3PqGpovEuy6NjfWck/9KzxNPzXoGRZlJRvPexgZirentPWRhLHF3DMtnOML1+GCpj+5LOAYN2XbQ==} - '@lexical/table@0.17.1': - resolution: {integrity: sha512-2fUYPmxhyuMQX3MRvSsNaxbgvwGNJpHaKx1Ldc+PT2MvDZ6ALZkfsxbi0do54Q3i7dOon8/avRp4TuVaCnqvoA==} + '@lexical/table@0.27.2': + resolution: {integrity: sha512-6G3jj7EyweviX3/AEZOr/XBTIQN5QCkJcg1Zw3I9Ga0F+CCDM5aeJWRv4hultP1nOz1xtYCDnezhaPV1Gef9dA==} - '@lexical/text@0.17.1': - resolution: {integrity: sha512-zD2pAGXaMfPpT8PeNrx3+n0+jGnQORHyn0NEBO+hnyacKfUq5z5sI6Gebsq5NwH789bRadmJM5LvX5w8fsuv6w==} + '@lexical/text@0.27.2': + resolution: {integrity: sha512-Rx61l/Cbz2GGwZvtp56PMGB35X+VnZYhRlLJdZhQ+XTYbRmCTAh50mBcS3FzZrziq8vn07yEN/9FVb8HGTyN1A==} - '@lexical/utils@0.17.1': - resolution: {integrity: sha512-jCQER5EsvhLNxKH3qgcpdWj/necUb82Xjp8qWQ3c0tyL07hIRm2tDRA/s9mQmvcP855HEZSmGVmR5SKtkcEAVg==} + '@lexical/utils@0.27.2': + resolution: {integrity: sha512-tCEuKL5IXiJ12ZN/Ej37Q7PhcBntekLeQbGiYO4sgIAnR9qI6yYgVH7b1CC+Tf06UapUXjIDG0Uh5/u0W1+kOQ==} - '@lexical/yjs@0.17.1': - resolution: {integrity: sha512-9mn5PDtaH5uLMH6hQ59EAx5FkRzmJJFcVs3E6zSIbtgkG3UASR3CFEfgsLKTjl/GC5NnTGuMck+jXaupDVBhOg==} + '@lexical/yjs@0.27.2': + resolution: {integrity: sha512-+twxPJNwN9VOe20dMKDbBfdZWCiTVM7RrezNZ984o8bJVx6dW80yM96zEyyQp1pmgi60lOYunKWD1B5/74Dq/w==} peerDependencies: yjs: '>=13.5.22' '@lezer/common@1.2.3': resolution: {integrity: sha512-w7ojc8ejBqr2REPsWxJjrMFsA/ysDCFICn8zEOR9mrqzOu2amhITYuLD8ag6XZf0CFXDrhKqw7+tW8cX66NaDA==} - '@lezer/cpp@1.1.2': - resolution: {integrity: sha512-macwKtyeUO0EW86r3xWQCzOV9/CF8imJLpJlPv3sDY57cPGeUZ8gXWOWNlJr52TVByMV3PayFQCA5SHEERDmVQ==} + '@lezer/cpp@1.1.3': + resolution: {integrity: sha512-ykYvuFQKGsRi6IcE+/hCSGUhb/I4WPjd3ELhEblm2wS2cOznDFzO+ubK2c+ioysOnlZ3EduV+MVQFCPzAIoY3w==} - '@lezer/css@1.1.9': - resolution: {integrity: sha512-TYwgljcDv+YrV0MZFFvYFQHCfGgbPMR6nuqLabBdmZoFH3EP1gvw8t0vae326Ne3PszQkbXfVBjCnf3ZVCr0bA==} + '@lezer/css@1.1.11': + resolution: {integrity: sha512-FuAnusbLBl1SEAtfN8NdShxYJiESKw9LAFysfea1T96jD3ydBn12oYjaSG1a04BQRIUd93/0D8e5CV1cUMkmQg==} '@lezer/go@1.0.0': resolution: {integrity: sha512-co9JfT3QqX1YkrMmourYw2Z8meGC50Ko4d54QEcQbEYpvdUvN4yb0NBZdn/9ertgvjsySxHsKzH3lbm3vqJ4Jw==} @@ -1104,14 +1073,14 @@ packages: '@lezer/lr@1.4.2': resolution: {integrity: sha512-pu0K1jCIdnQ12aWNaAVU5bzi7Bd1w54J3ECgANPmYLtQKP0HBj2cE/5coBD66MT10xbtIuUr7tg0Shbsvk0mDA==} - '@lezer/markdown@1.4.0': - resolution: {integrity: sha512-mk4MYeq6ZQdxgsgRAe0G7kqPRV6Desajfa14TcHoGGXIqqj1/2ARN31VFpmrXDgvXiGBWpA7RXtv0he+UdTkGw==} + '@lezer/markdown@1.4.2': + resolution: {integrity: sha512-iYewCigG/517D0xJPQd7RGaCjZAFwROiH8T9h7OTtz0bRVtkxzFhGBFJ9JGKgBBs4uuo1cvxzyQ5iKhDLMcLUQ==} '@lezer/php@1.0.2': resolution: {integrity: sha512-GN7BnqtGRpFyeoKSEqxvGvhJQiI4zkgmYnDk/JIyc7H7Ifc1tkPnUn/R2R8meH3h/aBf5rzjvU8ZQoyiNDtDrA==} - '@lezer/python@1.1.15': - resolution: {integrity: sha512-aVQ43m2zk4FZYedCqL0KHPEUsqZOrmAvRhkhHlVPnDD1HODDyyQv5BRIuod4DadkgBEZd53vQOtXTonNbEgjrQ==} + '@lezer/python@1.1.16': + resolution: {integrity: sha512-ievIWylIZA5rNgAyHgA06/Y76vMUISKaYL9WrtjU8rCTTEzyZYo2jz9ER2YBdnN6dxCyS7eaK4HJCzamoAMKZw==} '@lezer/rust@1.0.2': resolution: {integrity: sha512-Lz5sIPBdF2FUXcWeCu1//ojFAZqzTQNRga0aYv6dYXqJqPfMdCAI0NzajWUd4Xijj1IKJLtjoXRPMvTKWBcqKg==} @@ -1125,12 +1094,12 @@ packages: '@lezer/yaml@1.0.3': resolution: {integrity: sha512-GuBLekbw9jDBDhGur82nuwkxKQ+a3W5H0GfaAthDXcAu+XdpS43VlnxA9E9hllkpSP5ellRDKjLLj7Lu9Wr6xA==} - '@lingui/babel-plugin-extract-messages@5.1.2': - resolution: {integrity: sha512-w4lX0aR3mvQqwCGZDFbtTDg8BUN2Pf8FQ0NMYWSRG/mQV6AskZn3xY9R6wht9poVr/RfKaPF+9P4jQzAxXUWWw==} + '@lingui/babel-plugin-extract-messages@5.3.0': + resolution: {integrity: sha512-cusecMVMT6oLUYiiw9lUtyna+v+B7u3HtbPDZTjGJXWGPSBtIUASL4c9dhvf5u6/BQyyiwZTsnC9vNMso+iRLQ==} engines: {node: '>=20.0.0'} - '@lingui/babel-plugin-lingui-macro@5.1.2': - resolution: {integrity: sha512-6hq75WZRvuOeWOM0LplZmKTRYIHn9o8PdAYuymVO+QvRp+mMKKMwf8vWyqdVW+4T/zaknN8WtXRRGw6wcCBHew==} + '@lingui/babel-plugin-lingui-macro@5.3.0': + resolution: {integrity: sha512-vU8mGvZR4ope5l9Fq5gChFs+XyuscKmgVVVavkuns/w7K5ITNbFMjITTGNE6wUoOwYGabjIsc/eK/7clmK/KeA==} engines: {node: '>=20.0.0'} peerDependencies: babel-plugin-macros: 2 || 3 @@ -1138,20 +1107,20 @@ packages: babel-plugin-macros: optional: true - '@lingui/cli@5.1.2': - resolution: {integrity: sha512-PqiDhHmLbeXBmH9Nig6fk0LJXQA0/cr/G2REp60GJ2YBxCvpooE8N2Loi1+dyPX+CGmL4XaQg5Rq5Du9LBP0Gg==} + '@lingui/cli@5.3.0': + resolution: {integrity: sha512-HRyD6B7gzabVnMmrIogmFgtY9PbzhZwRE+5ZtXPWKFRNkY4ooaTu6UsR/anhM+bOvPuC4hqFxKkyuSTVVzup/A==} engines: {node: '>=20.0.0'} hasBin: true - '@lingui/conf@5.1.2': - resolution: {integrity: sha512-m0kKiiasvoFLo3cpix+zl1wT4/Wn09+9FHdh7tzuxwcRFWyXgJl1/Ire1Cfumoyve0p4DvtnGygg7meAGm6jJw==} + '@lingui/conf@5.3.0': + resolution: {integrity: sha512-MmLRc9sOq3o6JOnivLhaDkADrskFL2KM7j3xftm000QFcqv8thS6BrFHdvDvF1qcAH5XQ2DV8xZj+b1u4XvNkg==} engines: {node: '>=20.0.0'} - '@lingui/core@5.1.2': - resolution: {integrity: sha512-biqmMCWuBBj7ERSpgGSV91hTShnSrR/RIFUcNKjWuZYgDd3HpBdEmXKCo9NTanQYbkBUpmyw/bgwsSBex6vkDA==} + '@lingui/core@5.3.0': + resolution: {integrity: sha512-Y0anQ4a/E7nqwnrOLGlrVanWufx8xy6+WDT18U3GavJ2LRNv44NYzjw85jd6SJOsxgfcSFnTf4xh/Bq44AgRpQ==} engines: {node: '>=20.0.0'} peerDependencies: - '@lingui/babel-plugin-lingui-macro': 5.1.2 + '@lingui/babel-plugin-lingui-macro': 5.3.0 babel-plugin-macros: 2 || 3 peerDependenciesMeta: '@lingui/babel-plugin-lingui-macro': @@ -1159,15 +1128,15 @@ packages: babel-plugin-macros: optional: true - '@lingui/format-po@5.1.2': - resolution: {integrity: sha512-fkhAeBnOqceY5CJrtyRN5oBq3/6X2IpIKS+6yzwyWUzmJ5XmW2cwF2xtrcBwEekvtKzyuUZz7Dqc9gM02epSqA==} + '@lingui/format-po@5.3.0': + resolution: {integrity: sha512-ekMpkM9oscsPirxBGHLjV+lKCb3ZIXlcVzfybUfQc4k2uqrIova9WuBiraS5K7BFpHiRsshphPPd0mztFWGUyg==} engines: {node: '>=20.0.0'} - '@lingui/macro@5.1.2': - resolution: {integrity: sha512-R6HV7XmiskkI/85JCjAtQuBPRu5AB57lOJdJE6xs2qBaeRu70v0BalTn4wyG5+r0JSkDI4gakWaXKW2KpWN6fQ==} + '@lingui/macro@5.3.0': + resolution: {integrity: sha512-bw/ic7Cjk98z8KDWWAjpb7Dcw2bEuORfnRhmjbLgZucKaw2Chbv4JQulfFAVB4ObTxLcmMJoc+HKbMSMumhFUg==} engines: {node: '>=20.0.0'} peerDependencies: - '@lingui/babel-plugin-lingui-macro': 5.1.2 + '@lingui/babel-plugin-lingui-macro': 5.3.0 babel-plugin-macros: 2 || 3 peerDependenciesMeta: '@lingui/babel-plugin-lingui-macro': @@ -1175,15 +1144,17 @@ packages: babel-plugin-macros: optional: true - '@lingui/message-utils@5.1.2': - resolution: {integrity: sha512-P/N0yBy2MuC726EaGPGiOafc/0RafHiwkvZJdFKjm1/XOMWrFZDPFXTuxguVQ3HQsRi5eUIPaboU4uRX4GepPg==} + '@lingui/message-utils@5.3.0': + resolution: {integrity: sha512-pWh7rUUkIdfq2WrxXpXXlnikmKDf+2OvHUb0LTb60AyWAvvFT0rtZ1O2OSLUQ68rKfSQJCTYl1o6LELHJ38EXA==} engines: {node: '>=20.0.0'} + bundledDependencies: + - '@messageformat/date-skeleton' - '@lingui/react@5.1.2': - resolution: {integrity: sha512-YPAvbPUd+kJrmA9H1LSJ9f6+0hkOlm0w8g+7a8FtE7olamjXd7SyIgJMbeJmvKSdztrrdcLBs9YEftUKTfjiyg==} + '@lingui/react@5.3.0': + resolution: {integrity: sha512-nKtG3PobEWovEO46RLlYWL8xvqxeI+Joa81mahdRWG6fKd177p8TROECmdFeong18w17AwDik/gfWk3+jYt9yQ==} engines: {node: '>=20.0.0'} peerDependencies: - '@lingui/babel-plugin-lingui-macro': 5.1.2 + '@lingui/babel-plugin-lingui-macro': 5.3.0 babel-plugin-macros: 2 || 3 react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 peerDependenciesMeta: @@ -1192,8 +1163,8 @@ packages: babel-plugin-macros: optional: true - '@lingui/swc-plugin@5.0.2': - resolution: {integrity: sha512-qKMc+E2cNIax6fhhN+O3n4VOIzQXfGhenQMlrNfvOjq5DEGimFjprL3c/9XuNO9mhQ4izlqNkasvep4espt3sw==} + '@lingui/swc-plugin@5.5.1': + resolution: {integrity: sha512-hELKeVqoaoyiNV35n3nHjwl/FJtK53/Hy06ckbp9ztEIu3ixbXuJXpYJFyUKKWwP1OrEzKzkTqZeIvjxTWImPA==} peerDependencies: '@lingui/core': '5' '@swc/core': '*' @@ -1204,64 +1175,72 @@ packages: next: optional: true - '@lingui/vite-plugin@5.1.2': - resolution: {integrity: sha512-1KDoj03+ie9Td/YYOTjncucwAMVU16RfFpnm1uHvrGGEoRgWfwox4pwTwUbIeksSuecGv757vLeyugThwdyfpA==} + '@lingui/vite-plugin@5.3.0': + resolution: {integrity: sha512-ByWnoRNtHQ2rxhP/pD/DwnSlb8GacMQYxAhOiR+SMY7Uf6UJhlpJpky13aejQBORAn2Itp/+vUxEgTbrT1lCjw==} engines: {node: '>=20.0.0'} peerDependencies: vite: ^3 || ^4 || ^5.0.9 || ^6 - '@mantine/charts@7.16.0': - resolution: {integrity: sha512-wA/HfCc52giNDnCyvFiBSz0nvinLiKeQT02vmnmBoT2VUp5D5lHI8Klqiw1QGoH3dG/4TL2LJk4zAinJLpmjzA==} + '@mantine/charts@7.17.3': + resolution: {integrity: sha512-YGx8hLi4E3yyiRx9fNAoPPF+YrFkLWM+fnzqKIVvRbWqMbUw920AU+K5XSDjPmNB7cuYWSVwxxA/hIstQ8x3VA==} peerDependencies: - '@mantine/core': 7.16.0 - '@mantine/hooks': 7.16.0 + '@mantine/core': 7.17.3 + '@mantine/hooks': 7.17.3 react: ^18.x || ^19.x react-dom: ^18.x || ^19.x recharts: ^2.13.3 - '@mantine/colors-generator@7.16.0': - resolution: {integrity: sha512-mVZB527OPii03DHuiniYufSCOlrPy+nhQyYOrL49qDa5NB/lAccjTGH6QYqQV+Wqdmh9kbpgI13Bo+pwS/iZiQ==} + '@mantine/colors-generator@7.17.3': + resolution: {integrity: sha512-d/noQeEyeiuuQyl1dPdEdOihMgUDwPSnYGz60eJOCc4HfOY8zNZLgfsfZf7d+1cIlySNbqK9GARUunZyfSiu3g==} peerDependencies: chroma-js: '>=2.4.2' - '@mantine/core@7.16.0': - resolution: {integrity: sha512-lYYwa4Itz77uC8zQzdiKiKdz9Q01NBOYPZsotIKsP/Zqij0qhpsVxoJ8MK3P8IqFyLfThTMmR4sT1qlGfLTA9Q==} + '@mantine/core@7.17.3': + resolution: {integrity: sha512-N/AfV5eMnfEMx9WzI7AU5pNFBEzAfT/KtE2XDKS+0ht6RifUmolIxyIvoGMYz2yUEsCBMJZqmBq33Rabf5W7Ug==} peerDependencies: - '@mantine/hooks': 7.16.0 + '@mantine/hooks': 7.17.3 react: ^18.x || ^19.x react-dom: ^18.x || ^19.x - '@mantine/dropzone@7.16.0': - resolution: {integrity: sha512-lZwv96MswNTc0zSt/ObM8uykv2pZbM3eK6pNoA25jn+hZSrcB/TiET15Uhc7k0E/naxvQbZTxeNxQRpN3xrKRQ==} + '@mantine/dropzone@7.17.3': + resolution: {integrity: sha512-dwqmSgBS+fn57h2V2Ko4VN9g3nn/4DYr5poCElYhfYKzGqsDxqe9ZW3rYIg+VtmIAqBpWxX5YuWl4ea5h9xRZA==} peerDependencies: - '@mantine/core': 7.16.0 - '@mantine/hooks': 7.16.0 + '@mantine/core': 7.17.3 + '@mantine/hooks': 7.17.3 react: ^18.x || ^19.x react-dom: ^18.x || ^19.x - '@mantine/hooks@7.16.0': - resolution: {integrity: sha512-8KxrhckesbrV6tyOndm6fJ+jSKA4KX/67ppDFlfYMMbV6Yh+s0zRO4KLi2uCtl6tgckQd2/zDzX3kQk+VYKqDA==} + '@mantine/hooks@7.17.3': + resolution: {integrity: sha512-6o65Rbfl8jd1C1nF9icvungqL0qZViEOmrZgkyKXxBYkC3x91fz4zftwQgNjt1tZHWDNO6Bo4GpRjJyAdwl48g==} peerDependencies: react: ^18.x || ^19.x - '@mantine/notifications@7.16.0': - resolution: {integrity: sha512-ofwpMLoe/QaXTEqrLNA2vEq4KblacKHLg1xJn7a40irt6uQ6GSlFoLveKjOupiG0xUa+gIbevA1uv3tHJuJ6uA==} + '@mantine/modals@7.17.3': + resolution: {integrity: sha512-ZwNDTmfqyVRPUNl+vtBDbgZ9aVeQw6H+KLDSZxEsIYjc8p6u7FgCQ/FaBpsJOf//Oc7gHTLF0al27AqvW8jmOA==} peerDependencies: - '@mantine/core': 7.16.0 - '@mantine/hooks': 7.16.0 + '@mantine/core': 7.17.3 + '@mantine/hooks': 7.17.3 react: ^18.x || ^19.x react-dom: ^18.x || ^19.x - '@mantine/store@7.16.0': - resolution: {integrity: sha512-IeeKk8w+a5Z5sctMUYrLBVVA9173B2oKPP4Rh656eoXH+vz/KCpL/ITnFWrt0Cv9Fyv/V+zm1UyAnUWRdQ6uXA==} + '@mantine/notifications@7.17.3': + resolution: {integrity: sha512-MqakDqu/CZzO4arZGpXs3TmGTajqL4xm28vtqW4qWFSU5HZWQ4EosqipqvIJ+swC6YbxNiWvFcfnxxPlHdYk9g==} + peerDependencies: + '@mantine/core': 7.17.3 + '@mantine/hooks': 7.17.3 + react: ^18.x || ^19.x + react-dom: ^18.x || ^19.x + + '@mantine/store@7.17.3': + resolution: {integrity: sha512-wXQXe/Ljv2N6TDRsoVwOHmTGZey7Nt/SS6VeeMujKeNnAybPPXaP1jIbN50MKJoDS4qVPCHJNaHwVKIgMur2aQ==} peerDependencies: react: ^18.x || ^19.x '@marijn/find-cluster-break@1.0.2': resolution: {integrity: sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g==} - '@mdxeditor/editor@3.20.0': - resolution: {integrity: sha512-vt/2jrse+xjT2Lnx/KT9jbCEg+93GBzDSQNSdBYcyJztz34dOYZjQmT5NDH7tdcMOSL007PvLCKXbO7YQ96R6g==} + '@mdxeditor/editor@3.29.1': + resolution: {integrity: sha512-Pv4J9JveVcvswcyaYs+irsrFmm+NKSuNdF3V0NPx9mWRzb8rzNtqDSK0+H4TeiPp9wroDM66DQCSnrdEM8U5Lw==} engines: {node: '>=16'} peerDependencies: react: '>= 18 || >= 19' @@ -1309,8 +1288,8 @@ packages: '@radix-ui/primitive@1.1.1': resolution: {integrity: sha512-SJ31y+Q/zAyShtXJc8x83i9TYdbAfHZ++tUZnvjJJqFjzsdUnKsxPL6IEtBlxKkU7yzer//GQtZSV4GbldL3YA==} - '@radix-ui/react-arrow@1.1.1': - resolution: {integrity: sha512-NaVpZfmv8SKeZbn4ijN2V3jlHA9ngBG16VnIIm22nUR0Yk8KUALyBxT3KYEUnNuch9sTE8UTsS3whzBgKOL30w==} + '@radix-ui/react-arrow@1.1.2': + resolution: {integrity: sha512-G+KcpzXHq24iH0uGG/pF8LyzpFJYGD4RfLjCIBfGdSLXvjLHST31RUiRVrupIBMvIppMgSzQ6l66iAxl03tdlg==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -1322,8 +1301,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-collection@1.1.1': - resolution: {integrity: sha512-LwT3pSho9Dljg+wY2KN2mrrh6y3qELfftINERIzBUO9e0N+t0oMTyn3k9iv+ZqgrwGkRnLpNJrsMv9BZlt2yuA==} + '@radix-ui/react-collection@1.1.2': + resolution: {integrity: sha512-9z54IEKRxIa9VityapoEYMuByaG42iSy1ZXlY2KcuLSEtq8x4987/N6m15ppoMffgZX72gER2uHe1D9Y6Unlcw==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -1353,8 +1332,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-dialog@1.1.4': - resolution: {integrity: sha512-Ur7EV1IwQGCyaAuyDRiOLA5JIUZxELJljF+MbM/2NC0BYwfuRrbpS30BiQBJrVruscgUkieKkqXYDOoByaxIoA==} + '@radix-ui/react-dialog@1.1.6': + resolution: {integrity: sha512-/IVhJV5AceX620DUJ4uYVMymzsipdKBzo3edo+omeskCKGm9FRHM0ebIdbPnlQVJqyuHbuBltQUOG2mOTq2IYw==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -1375,8 +1354,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-dismissable-layer@1.1.3': - resolution: {integrity: sha512-onrWn/72lQoEucDmJnr8uczSNTujT0vJnA/X5+3AkChVPowr8n1yvIKIabhWyMQeMvvmdpsvcyDqx3X1LEXCPg==} + '@radix-ui/react-dismissable-layer@1.1.5': + resolution: {integrity: sha512-E4TywXY6UsXNRhFrECa5HAvE5/4BFcGyfTyK36gP+pAW1ed7UTK4vKwdr53gAJYwqbfCWC6ATvJa3J3R/9+Qrg==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -1397,8 +1376,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-focus-scope@1.1.1': - resolution: {integrity: sha512-01omzJAYRxXdG2/he/+xy+c8a8gCydoQ1yOxnWNcRhrrBW5W+RQJ22EK1SaO8tb3WoUsuEw7mJjBozPzihDFjA==} + '@radix-ui/react-focus-scope@1.1.2': + resolution: {integrity: sha512-zxwE80FCU7lcXUGWkdt6XpTTCKPitG1XKOwViTxHVKIJhZl9MvIl2dVHeZENCWD9+EdWv05wlaEkRXUykU27RA==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -1424,8 +1403,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-popover@1.1.4': - resolution: {integrity: sha512-aUACAkXx8LaFymDma+HQVji7WhvEhpFJ7+qPz17Nf4lLZqtreGOFRiNQWQmhzp7kEWg9cOyyQJpdIMUMPc/CPw==} + '@radix-ui/react-popover@1.1.6': + resolution: {integrity: sha512-NQouW0x4/GnkFJ/pRqsIS3rM/k97VzKnVb2jB7Gq7VEGPy5g7uNV1ykySFt7eWSp3i2uSGFwaJcvIRJBAHmmFg==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -1437,8 +1416,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-popper@1.2.1': - resolution: {integrity: sha512-3kn5Me69L+jv82EKRuQCXdYyf1DqHwD2U/sxoNgBGCB7K9TRc3bQamQ+5EPM9EvyPdli0W41sROd+ZU1dTCztw==} + '@radix-ui/react-popper@1.2.2': + resolution: {integrity: sha512-Rvqc3nOpwseCyj/rgjlJDYAgyfw7OC1tTkKn2ivhaMGcYt8FSBlahHOZak2i3QwkRXUXgGgzeEe2RuqeEHuHgA==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -1450,8 +1429,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-portal@1.1.3': - resolution: {integrity: sha512-NciRqhXnGojhT93RPyDaMPfLH3ZSl4jjIFbZQ1b/vxvZEdHsBZ49wP9w8L3HzUQwep01LcWtkUvm0OVB5JAHTw==} + '@radix-ui/react-portal@1.1.4': + resolution: {integrity: sha512-sn2O9k1rPFYVyKd5LAJfo96JlSGVFpa1fS6UuBJfrZadudiw5tAmru+n1x7aMRQ84qDM71Zh1+SzK5QwU0tJfA==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -1476,8 +1455,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-primitive@2.0.1': - resolution: {integrity: sha512-sHCWTtxwNn3L3fH8qAfnF3WbUZycW93SM1j3NFDzXBiz8D6F5UTTy8G1+WFEaiCdvCVRJWj6N2R4Xq6HdiHmDg==} + '@radix-ui/react-primitive@2.0.2': + resolution: {integrity: sha512-Ec/0d38EIuvDF+GZjcMU/Ze6MxntVJYO/fRlCPhCaVUyPY9WTalHJw54tp9sXeJo3tlShWpy41vQRgLRGOuz+w==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -1489,8 +1468,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-roving-focus@1.1.1': - resolution: {integrity: sha512-QE1RoxPGJ/Nm8Qmk0PxP8ojmoaS67i0s7hVssS7KuI2FQoc/uzVlZsqKfQvxPE6D8hICCPHJ4D88zNhT3OOmkw==} + '@radix-ui/react-roving-focus@1.1.2': + resolution: {integrity: sha512-zgMQWkNO169GtGqRvYrzb0Zf8NhMHS2DuEB/TiEmVnpr5OqPU3i8lfbxaAmC2J/KYuIQxyoQQ6DxepyXp61/xw==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -1502,8 +1481,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-select@2.1.4': - resolution: {integrity: sha512-pOkb2u8KgO47j/h7AylCj7dJsm69BXcjkrvTqMptFqsE2i0p8lHkfgneXKjAgPzBMivnoMyt8o4KiV4wYzDdyQ==} + '@radix-ui/react-select@2.1.6': + resolution: {integrity: sha512-T6ajELxRvTuAMWH0YmRJ1qez+x4/7Nq7QIx7zJ0VK3qaEWdnWpNbEDnmWldG1zBDwqrLy5aLMUWcoGirVj5kMg==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -1515,8 +1494,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-separator@1.1.1': - resolution: {integrity: sha512-RRiNRSrD8iUiXriq/Y5n4/3iE8HzqgLHsusUSg5jVpU2+3tqcUFPJXHDymwEypunc2sWxDUS3UC+rkZRlHedsw==} + '@radix-ui/react-separator@1.1.2': + resolution: {integrity: sha512-oZfHcaAp2Y6KFBX6I5P1u7CQoy4lheCGiYj+pGFrHy8E/VNRb5E39TkTr3JrV520csPBTZjkuKFdEsjS5EUNKQ==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -1528,8 +1507,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-slot@1.1.1': - resolution: {integrity: sha512-RApLLOcINYJA+dMVbOju7MYv1Mb2EBp2nH4HdDzXTSyaR5optlm6Otrz1euW3HbdOR8UmmFK06TD+A9frYWv+g==} + '@radix-ui/react-slot@1.1.2': + resolution: {integrity: sha512-YAKxaiGsSQJ38VzKH86/BPRC4rh+b1Jpa+JneA5LRE7skmLPNAyeG8kPJj/oo4STLvlrs8vkf/iYyc3A5stYCQ==} peerDependencies: '@types/react': '*' react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc @@ -1537,8 +1516,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-toggle-group@1.1.1': - resolution: {integrity: sha512-OgDLZEA30Ylyz8YSXvnGqIHtERqnUt1KUYTKdw/y8u7Ci6zGiJfXc02jahmcSNK3YcErqioj/9flWC9S1ihfwg==} + '@radix-ui/react-toggle-group@1.1.2': + resolution: {integrity: sha512-JBm6s6aVG/nwuY5eadhU2zDi/IwYS0sDM5ZWb4nymv/hn3hZdkw+gENn0LP4iY1yCd7+bgJaCwueMYJIU3vk4A==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -1550,8 +1529,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-toggle@1.1.1': - resolution: {integrity: sha512-i77tcgObYr743IonC1hrsnnPmszDRn8p+EGUsUt+5a/JFn28fxaM88Py6V2mc8J5kELMWishI0rLnuGLFD/nnQ==} + '@radix-ui/react-toggle@1.1.2': + resolution: {integrity: sha512-lntKchNWx3aCHuWKiDY+8WudiegQvBpDRAYL8dKLRvKEH8VOpl0XX6SSU/bUBqIRJbcTy4+MW06Wv8vgp10rzQ==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -1563,8 +1542,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-toolbar@1.1.1': - resolution: {integrity: sha512-r7T80WOCHc2n3KRzFCbHWGVzkfVTCzDofGU4gqa5ZuIzgnVaLogGsdyifFJXWQDp0lAr5hrf+X9uqQdE0pa6Ww==} + '@radix-ui/react-toolbar@1.1.2': + resolution: {integrity: sha512-wT20eQ7ScFk+kBMDmHp+lMk18cgxhu35b2Bn5deUcPxiVwfn5vuZgi7NGcHu8ocdkinahmp4FaSZysKDyRVPWQ==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -1576,8 +1555,8 @@ packages: '@types/react-dom': optional: true - '@radix-ui/react-tooltip@1.1.6': - resolution: {integrity: sha512-TLB5D8QLExS1uDn7+wH/bjEmRurNMTzNrtq7IjaS4kjion9NtzsTGkvR5+i7yc9q01Pi2KMM2cN3f8UG4IvvXA==} + '@radix-ui/react-tooltip@1.1.8': + resolution: {integrity: sha512-YAA2cu48EkJZdAMHC0dqo9kialOcRStbtiY4nJPaht7Ptrhcvpo+eDChaM6BIs8kL6a8Z5l5poiqLnXcNduOkA==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -1652,8 +1631,8 @@ packages: '@types/react': optional: true - '@radix-ui/react-visually-hidden@1.1.1': - resolution: {integrity: sha512-vVfA2IZ9q/J+gEamvj761Oq1FpWgCDaNOOIfbPVp2MVPLEomUr5+Vf7kJGwQ24YxZSlQVar7Bes8kyTo5Dshpg==} + '@radix-ui/react-visually-hidden@1.1.2': + resolution: {integrity: sha512-1SzA4ns2M1aRlvxErqhLHsBHoS5eI5UUcI2awAMgGUp4LoaoWOKYmvqDY2s/tltuPkh3Yk77YF/r3IRj+Amx4Q==} peerDependencies: '@types/react': '*' '@types/react-dom': '*' @@ -1678,170 +1657,175 @@ packages: peerDependencies: react: '>=16.8' - '@react-pdf/fns@3.0.0': - resolution: {integrity: sha512-ICbIWR93PE6+xf2Xd/fXYO1dAuiOAJaszEuGGv3wp5lLSeeelDXlEYLh6R05okxh28YqMzc0Qd85x6n6MtaLUQ==} + '@react-pdf/fns@3.1.2': + resolution: {integrity: sha512-qTKGUf0iAMGg2+OsUcp9ffKnKi41RukM/zYIWMDJ4hRVYSr89Q7e3wSDW/Koqx3ea3Uy/z3h2y3wPX6Bdfxk6g==} - '@react-pdf/font@3.0.1': - resolution: {integrity: sha512-s+0xrQabGoYDDZwVpz8PXp1ylwabqiMhzfyetvxBqjDuQ15PuoSkmUkKUOkfDzauuAqs0MLMvt+Pcv+NioLfzw==} + '@react-pdf/font@4.0.2': + resolution: {integrity: sha512-/dAWu7Y2RD1RxarDZ9SkYPHgBYOhmcDnet4W/qN/m8k+A2Hr3ja54GymSR7GGxWBtxjKtNauVKrTa9LS1n8WUw==} - '@react-pdf/image@3.0.1': - resolution: {integrity: sha512-Hd5F1LzjuzG4bL/ytaOYxwN/5ip8oFBYDHdpccOfYY87J/Ca7AL31SsuneLk9DtnwNM1BSAKXtBo/WDFY3r57A==} + '@react-pdf/image@3.0.3': + resolution: {integrity: sha512-lvP5ryzYM3wpbO9bvqLZYwEr5XBDX9jcaRICvtnoRqdJOo7PRrMnmB4MMScyb+Xw10mGeIubZAAomNAG5ONQZQ==} - '@react-pdf/layout@4.2.0': - resolution: {integrity: sha512-/0jMhDKwZH0lQs3umNsOduaPtkK0IUpaBRUEv4udHVD9lB2VzYoSNeYsCu+MJMPJyByXj70OSWV7IMjWTCKwWw==} + '@react-pdf/layout@4.4.0': + resolution: {integrity: sha512-Aq+Cc6JYausWLoks2FvHe3PwK9cTuvksB2uJ0AnkKJEUtQbvCq8eCRb1bjbbwIji9OzFRTTzZij7LzkpKHjIeA==} - '@react-pdf/pdfkit@4.0.0': - resolution: {integrity: sha512-HaaAoBpoRGJ6c1ZOANNQZ3q6Ehmagqa8n40x+OZ5s9HcmUviZ34SCm+QBa42s1o4299M+Lgw3UoqpW7sHv3/Hg==} + '@react-pdf/pdfkit@4.0.3': + resolution: {integrity: sha512-k+Lsuq8vTwWsCqTp+CCB4+2N+sOTFrzwGA7aw3H9ix/PDWR9QksbmNg0YkzGbLAPI6CeawmiLHcf4trZ5ecLPQ==} '@react-pdf/png-js@3.0.0': resolution: {integrity: sha512-eSJnEItZ37WPt6Qv5pncQDxLJRK15eaRwPT+gZoujP548CodenOVp49GST8XJvKMFt9YqIBzGBV/j9AgrOQzVA==} - '@react-pdf/primitives@4.0.0': - resolution: {integrity: sha512-yp4E0rDL03NaUp/CnDBz3HQNfH2Mzdlgku57yhTMGNzetwB0NJusXcjYg5XsTGIXnR7Tv80JKI4O4ajj+oaLeQ==} + '@react-pdf/primitives@4.1.1': + resolution: {integrity: sha512-IuhxYls1luJb7NUWy6q5avb1XrNaVj9bTNI40U9qGRuS6n7Hje/8H8Qi99Z9UKFV74bBP3DOf3L1wV2qZVgVrQ==} - '@react-pdf/reconciler@1.1.3': - resolution: {integrity: sha512-4vqY0klmUH32kTFvuqdAszkOpwfZYKMLO4VpJ5xZWTsoUOLQSyhC2QM2QCj9eaxpB2Nd5Kl9uW+KfyutvZnMzQ==} + '@react-pdf/reconciler@1.1.4': + resolution: {integrity: sha512-oTQDiR/t4Z/Guxac88IavpU2UgN7eR0RMI9DRKvKnvPz2DUasGjXfChAdMqDNmJJxxV26mMy9xQOUV2UU5/okg==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - '@react-pdf/render@4.0.2': - resolution: {integrity: sha512-5QJB9sS0uU5ALTLxrtT073VT1imZhrzuOun+7kvo0nykeAr9I4lv0Shmy8rS4QhpmXn8ASmhd17WjCVm4DcJlw==} + '@react-pdf/render@4.3.0': + resolution: {integrity: sha512-MdWfWaqO6d7SZD75TZ2z5L35V+cHpyA43YNRlJNG0RJ7/MeVGDQv12y/BXOJgonZKkeEGdzM3EpAt9/g4E22WA==} - '@react-pdf/renderer@4.1.6': - resolution: {integrity: sha512-hfQ0PsuVqfoYxkYgmkj+HFkylbB1QTpXY1rnlgnzJlrlSoNXjzPrCa/ty8jcHOwYA2lNoazIAoDatBIsc8K5pw==} + '@react-pdf/renderer@4.3.0': + resolution: {integrity: sha512-28gpA69fU9ZQrDzmd5xMJa1bDf8t0PT3ApUKBl2PUpoE/x4JlvCB5X66nMXrfFrgF2EZrA72zWQAkvbg7TE8zw==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - '@react-pdf/stylesheet@5.2.0': - resolution: {integrity: sha512-ST19VumM9iRG0z8EjDJnyQCG+NhPFtYUCAh5B8HY237MrsRGvMgzcwrpyyqcyuLwHHYy7S4iw8EY0mK9+Qa2XQ==} + '@react-pdf/stylesheet@6.1.0': + resolution: {integrity: sha512-BGZ2sYNUp38VJUegjva/jsri3iiRGnVNjWI+G9dTwAvLNOmwFvSJzqaCsEnqQ/DW5mrTBk/577FhDY7pv6AidA==} - '@react-pdf/textkit@5.0.1': - resolution: {integrity: sha512-4GdDiPA9l+If203hkh48slvRQmcmM3ecPLFTpXNMPrep/3retgvxUEXKMxI+xKclpw8tMzK/W6Z4hN9DgnxWMg==} + '@react-pdf/textkit@6.0.0': + resolution: {integrity: sha512-fDt19KWaJRK/n2AaFoVm31hgGmpygmTV7LsHGJNGZkgzXcFyLsx+XUl63DTDPH3iqxj3xUX128t104GtOz8tTw==} - '@react-pdf/types@2.7.0': - resolution: {integrity: sha512-7KrPPCpgRPKR+g+T127PE4bpw9Q84ZiY07EYRwXKVtTEVW9wJ5BZiF9smT9IvH19s+MQaDLmYRgjESsnqlyH0Q==} + '@react-pdf/types@2.9.0': + resolution: {integrity: sha512-ckj80vZLlvl9oYrQ4tovEaqKWP3O06Eb1D48/jQWbdwz1Yh7Y9v1cEmwlP8ET+a1Whp8xfdM0xduMexkuPANCQ==} - '@rollup/rollup-android-arm-eabi@4.34.8': - resolution: {integrity: sha512-q217OSE8DTp8AFHuNHXo0Y86e1wtlfVrXiAlwkIvGRQv9zbc6mE3sjIVfwI8sYUyNxwOg0j/Vm1RKM04JcWLJw==} + '@rollup/rollup-android-arm-eabi@4.37.0': + resolution: {integrity: sha512-l7StVw6WAa8l3vA1ov80jyetOAEo1FtHvZDbzXDO/02Sq/QVvqlHkYoFwDJPIMj0GKiistsBudfx5tGFnwYWDQ==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.34.8': - resolution: {integrity: sha512-Gigjz7mNWaOL9wCggvoK3jEIUUbGul656opstjaUSGC3eT0BM7PofdAJaBfPFWWkXNVAXbaQtC99OCg4sJv70Q==} + '@rollup/rollup-android-arm64@4.37.0': + resolution: {integrity: sha512-6U3SlVyMxezt8Y+/iEBcbp945uZjJwjZimu76xoG7tO1av9VO691z8PkhzQ85ith2I8R2RddEPeSfcbyPfD4hA==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.34.8': - resolution: {integrity: sha512-02rVdZ5tgdUNRxIUrFdcMBZQoaPMrxtwSb+/hOfBdqkatYHR3lZ2A2EGyHq2sGOd0Owk80oV3snlDASC24He3Q==} + '@rollup/rollup-darwin-arm64@4.37.0': + resolution: {integrity: sha512-+iTQ5YHuGmPt10NTzEyMPbayiNTcOZDWsbxZYR1ZnmLnZxG17ivrPSWFO9j6GalY0+gV3Jtwrrs12DBscxnlYA==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.34.8': - resolution: {integrity: sha512-qIP/elwR/tq/dYRx3lgwK31jkZvMiD6qUtOycLhTzCvrjbZ3LjQnEM9rNhSGpbLXVJYQ3rq39A6Re0h9tU2ynw==} + '@rollup/rollup-darwin-x64@4.37.0': + resolution: {integrity: sha512-m8W2UbxLDcmRKVjgl5J/k4B8d7qX2EcJve3Sut7YGrQoPtCIQGPH5AMzuFvYRWZi0FVS0zEY4c8uttPfX6bwYQ==} cpu: [x64] os: [darwin] - '@rollup/rollup-freebsd-arm64@4.34.8': - resolution: {integrity: sha512-IQNVXL9iY6NniYbTaOKdrlVP3XIqazBgJOVkddzJlqnCpRi/yAeSOa8PLcECFSQochzqApIOE1GHNu3pCz+BDA==} + '@rollup/rollup-freebsd-arm64@4.37.0': + resolution: {integrity: sha512-FOMXGmH15OmtQWEt174v9P1JqqhlgYge/bUjIbiVD1nI1NeJ30HYT9SJlZMqdo1uQFyt9cz748F1BHghWaDnVA==} cpu: [arm64] os: [freebsd] - '@rollup/rollup-freebsd-x64@4.34.8': - resolution: {integrity: sha512-TYXcHghgnCqYFiE3FT5QwXtOZqDj5GmaFNTNt3jNC+vh22dc/ukG2cG+pi75QO4kACohZzidsq7yKTKwq/Jq7Q==} + '@rollup/rollup-freebsd-x64@4.37.0': + resolution: {integrity: sha512-SZMxNttjPKvV14Hjck5t70xS3l63sbVwl98g3FlVVx2YIDmfUIy29jQrsw06ewEYQ8lQSuY9mpAPlmgRD2iSsA==} cpu: [x64] os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.34.8': - resolution: {integrity: sha512-A4iphFGNkWRd+5m3VIGuqHnG3MVnqKe7Al57u9mwgbyZ2/xF9Jio72MaY7xxh+Y87VAHmGQr73qoKL9HPbXj1g==} + '@rollup/rollup-linux-arm-gnueabihf@4.37.0': + resolution: {integrity: sha512-hhAALKJPidCwZcj+g+iN+38SIOkhK2a9bqtJR+EtyxrKKSt1ynCBeqrQy31z0oWU6thRZzdx53hVgEbRkuI19w==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.34.8': - resolution: {integrity: sha512-S0lqKLfTm5u+QTxlFiAnb2J/2dgQqRy/XvziPtDd1rKZFXHTyYLoVL58M/XFwDI01AQCDIevGLbQrMAtdyanpA==} + '@rollup/rollup-linux-arm-musleabihf@4.37.0': + resolution: {integrity: sha512-jUb/kmn/Gd8epbHKEqkRAxq5c2EwRt0DqhSGWjPFxLeFvldFdHQs/n8lQ9x85oAeVb6bHcS8irhTJX2FCOd8Ag==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.34.8': - resolution: {integrity: sha512-jpz9YOuPiSkL4G4pqKrus0pn9aYwpImGkosRKwNi+sJSkz+WU3anZe6hi73StLOQdfXYXC7hUfsQlTnjMd3s1A==} + '@rollup/rollup-linux-arm64-gnu@4.37.0': + resolution: {integrity: sha512-oNrJxcQT9IcbcmKlkF+Yz2tmOxZgG9D9GRq+1OE6XCQwCVwxixYAa38Z8qqPzQvzt1FCfmrHX03E0pWoXm1DqA==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.34.8': - resolution: {integrity: sha512-KdSfaROOUJXgTVxJNAZ3KwkRc5nggDk+06P6lgi1HLv1hskgvxHUKZ4xtwHkVYJ1Rep4GNo+uEfycCRRxht7+Q==} + '@rollup/rollup-linux-arm64-musl@4.37.0': + resolution: {integrity: sha512-pfxLBMls+28Ey2enpX3JvjEjaJMBX5XlPCZNGxj4kdJyHduPBXtxYeb8alo0a7bqOoWZW2uKynhHxF/MWoHaGQ==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-loongarch64-gnu@4.34.8': - resolution: {integrity: sha512-NyF4gcxwkMFRjgXBM6g2lkT58OWztZvw5KkV2K0qqSnUEqCVcqdh2jN4gQrTn/YUpAcNKyFHfoOZEer9nwo6uQ==} + '@rollup/rollup-linux-loongarch64-gnu@4.37.0': + resolution: {integrity: sha512-yCE0NnutTC/7IGUq/PUHmoeZbIwq3KRh02e9SfFh7Vmc1Z7atuJRYWhRME5fKgT8aS20mwi1RyChA23qSyRGpA==} cpu: [loong64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.34.8': - resolution: {integrity: sha512-LMJc999GkhGvktHU85zNTDImZVUCJ1z/MbAJTnviiWmmjyckP5aQsHtcujMjpNdMZPT2rQEDBlJfubhs3jsMfw==} + '@rollup/rollup-linux-powerpc64le-gnu@4.37.0': + resolution: {integrity: sha512-NxcICptHk06E2Lh3a4Pu+2PEdZ6ahNHuK7o6Np9zcWkrBMuv21j10SQDJW3C9Yf/A/P7cutWoC/DptNLVsZ0VQ==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.34.8': - resolution: {integrity: sha512-xAQCAHPj8nJq1PI3z8CIZzXuXCstquz7cIOL73HHdXiRcKk8Ywwqtx2wrIy23EcTn4aZ2fLJNBB8d0tQENPCmw==} + '@rollup/rollup-linux-riscv64-gnu@4.37.0': + resolution: {integrity: sha512-PpWwHMPCVpFZLTfLq7EWJWvrmEuLdGn1GMYcm5MV7PaRgwCEYJAwiN94uBuZev0/J/hFIIJCsYw4nLmXA9J7Pw==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.34.8': - resolution: {integrity: sha512-DdePVk1NDEuc3fOe3dPPTb+rjMtuFw89gw6gVWxQFAuEqqSdDKnrwzZHrUYdac7A7dXl9Q2Vflxpme15gUWQFA==} + '@rollup/rollup-linux-riscv64-musl@4.37.0': + resolution: {integrity: sha512-DTNwl6a3CfhGTAOYZ4KtYbdS8b+275LSLqJVJIrPa5/JuIufWWZ/QFvkxp52gpmguN95eujrM68ZG+zVxa8zHA==} + cpu: [riscv64] + os: [linux] + + '@rollup/rollup-linux-s390x-gnu@4.37.0': + resolution: {integrity: sha512-hZDDU5fgWvDdHFuExN1gBOhCuzo/8TMpidfOR+1cPZJflcEzXdCy1LjnklQdW8/Et9sryOPJAKAQRw8Jq7Tg+A==} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.34.8': - resolution: {integrity: sha512-8y7ED8gjxITUltTUEJLQdgpbPh1sUQ0kMTmufRF/Ns5tI9TNMNlhWtmPKKHCU0SilX+3MJkZ0zERYYGIVBYHIA==} + '@rollup/rollup-linux-x64-gnu@4.37.0': + resolution: {integrity: sha512-pKivGpgJM5g8dwj0ywBwe/HeVAUSuVVJhUTa/URXjxvoyTT/AxsLTAbkHkDHG7qQxLoW2s3apEIl26uUe08LVQ==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.34.8': - resolution: {integrity: sha512-SCXcP0ZpGFIe7Ge+McxY5zKxiEI5ra+GT3QRxL0pMMtxPfpyLAKleZODi1zdRHkz5/BhueUrYtYVgubqe9JBNQ==} + '@rollup/rollup-linux-x64-musl@4.37.0': + resolution: {integrity: sha512-E2lPrLKE8sQbY/2bEkVTGDEk4/49UYRVWgj90MY8yPjpnGBQ+Xi1Qnr7b7UIWw1NOggdFQFOLZ8+5CzCiz143w==} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.34.8': - resolution: {integrity: sha512-YHYsgzZgFJzTRbth4h7Or0m5O74Yda+hLin0irAIobkLQFRQd1qWmnoVfwmKm9TXIZVAD0nZ+GEb2ICicLyCnQ==} + '@rollup/rollup-win32-arm64-msvc@4.37.0': + resolution: {integrity: sha512-Jm7biMazjNzTU4PrQtr7VS8ibeys9Pn29/1bm4ph7CP2kf21950LgN+BaE2mJ1QujnvOc6p54eWWiVvn05SOBg==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.34.8': - resolution: {integrity: sha512-r3NRQrXkHr4uWy5TOjTpTYojR9XmF0j/RYgKCef+Ag46FWUTltm5ziticv8LdNsDMehjJ543x/+TJAek/xBA2w==} + '@rollup/rollup-win32-ia32-msvc@4.37.0': + resolution: {integrity: sha512-e3/1SFm1OjefWICB2Ucstg2dxYDkDTZGDYgwufcbsxTHyqQps1UQf33dFEChBNmeSsTOyrjw2JJq0zbG5GF6RA==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.34.8': - resolution: {integrity: sha512-U0FaE5O1BCpZSeE6gBl3c5ObhePQSfk9vDRToMmTkbhCOgW4jqvtS5LGyQ76L1fH8sM0keRp4uDTsbjiUyjk0g==} + '@rollup/rollup-win32-x64-msvc@4.37.0': + resolution: {integrity: sha512-LWbXUBwn/bcLx2sSsqy7pK5o+Nr+VCoRoAohfJ5C/aBio9nfJmGQqHAhU6pwxV/RmyTk5AqdySma7uwWGlmeuA==} cpu: [x64] os: [win32] - '@sentry-internal/browser-utils@8.48.0': - resolution: {integrity: sha512-pLtu0Fa1Ou0v3M1OEO1MB1EONJVmXEGtoTwFRCO1RPQI2ulmkG6BikINClFG5IBpoYKZ33WkEXuM6U5xh+pdZg==} + '@sentry-internal/browser-utils@8.55.0': + resolution: {integrity: sha512-ROgqtQfpH/82AQIpESPqPQe0UyWywKJsmVIqi3c5Fh+zkds5LUxnssTj3yNd1x+kxaPDVB023jAP+3ibNgeNDw==} engines: {node: '>=14.18'} - '@sentry-internal/feedback@8.48.0': - resolution: {integrity: sha512-6PwcJNHVPg0EfZxmN+XxVOClfQpv7MBAweV8t9i5l7VFr8sM/7wPNSeU/cG7iK19Ug9ZEkBpzMOe3G4GXJ5bpw==} + '@sentry-internal/feedback@8.55.0': + resolution: {integrity: sha512-cP3BD/Q6pquVQ+YL+rwCnorKuTXiS9KXW8HNKu4nmmBAyf7urjs+F6Hr1k9MXP5yQ8W3yK7jRWd09Yu6DHWOiw==} engines: {node: '>=14.18'} - '@sentry-internal/replay-canvas@8.48.0': - resolution: {integrity: sha512-LdivLfBXXB9us1aAc6XaL7/L2Ob4vi3C/fEOXElehg3qHjX6q6pewiv5wBvVXGX1NfZTRvu+X11k6TZoxKsezw==} + '@sentry-internal/replay-canvas@8.55.0': + resolution: {integrity: sha512-nIkfgRWk1091zHdu4NbocQsxZF1rv1f7bbp3tTIlZYbrH62XVZosx5iHAuZG0Zc48AETLE7K4AX9VGjvQj8i9w==} engines: {node: '>=14.18'} - '@sentry-internal/replay@8.48.0': - resolution: {integrity: sha512-csILVupc5RkrsTrncuUTGmlB56FQSFjXPYWG8I8yBTGlXEJ+o8oTuF6+55R4vbw3EIzBveXWi4kEBbnQlXW/eg==} + '@sentry-internal/replay@8.55.0': + resolution: {integrity: sha512-roCDEGkORwolxBn8xAKedybY+Jlefq3xYmgN2fr3BTnsXjSYOPC7D1/mYqINBat99nDtvgFvNfRcZPiwwZ1hSw==} engines: {node: '>=14.18'} - '@sentry/browser@8.48.0': - resolution: {integrity: sha512-fuuVULB5/1vI8NoIwXwR3xwhJJqk+y4RdSdajExGF7nnUDBpwUJyXsmYJnOkBO+oLeEs58xaCpotCKiPUNnE3g==} + '@sentry/browser@8.55.0': + resolution: {integrity: sha512-1A31mCEWCjaMxJt6qGUK+aDnLDcK6AwLAZnqpSchNysGni1pSn1RWSmk9TBF8qyTds5FH8B31H480uxMPUJ7Cw==} engines: {node: '>=14.18'} - '@sentry/core@8.48.0': - resolution: {integrity: sha512-VGwYgTfLpvJ5LRO5A+qWo1gpo6SfqaGXL9TOzVgBucAdpzbrYHpZ87sEarDVq/4275uk1b0S293/mfsskFczyw==} + '@sentry/core@8.55.0': + resolution: {integrity: sha512-6g7jpbefjHYs821Z+EBJ8r4Z7LT5h80YSWRJaylGS4nW5W5Z2KXzpdnyFarv37O7QjauzVC2E+PABmpkw5/JGA==} engines: {node: '>=14.18'} - '@sentry/react@8.48.0': - resolution: {integrity: sha512-J8XAUOJYbsjXnowTEXE+zWJWLWUzQGP8kMb+smoGdRzFJwwXKrbE709Kr/Boz6rK48EbbRT4UUINoTbHgL3RHQ==} + '@sentry/react@8.55.0': + resolution: {integrity: sha512-/qNBvFLpvSa/Rmia0jpKfJdy16d4YZaAnH/TuKLAtm0BWlsPQzbXCU4h8C5Hsst0Do0zG613MEtEmWpWrVOqWA==} engines: {node: '>=14.18'} peerDependencies: react: ^16.14.0 || 17.x || 18.x || 19.x @@ -1852,68 +1836,68 @@ packages: '@stitches/core@1.2.8': resolution: {integrity: sha512-Gfkvwk9o9kE9r9XNBmJRfV8zONvXThnm1tcuojL04Uy5uRyqg93DC83lDebl0rocZCfKSjUv+fWYtMQmEDJldg==} - '@swc/core-darwin-arm64@1.10.7': - resolution: {integrity: sha512-SI0OFg987P6hcyT0Dbng3YRISPS9uhLX1dzW4qRrfqQdb0i75lPJ2YWe9CN47HBazrIA5COuTzrD2Dc0TcVsSQ==} + '@swc/core-darwin-arm64@1.11.13': + resolution: {integrity: sha512-loSERhLaQ9XDS+5Kdx8cLe2tM1G0HLit8MfehipAcsdctpo79zrRlkW34elOf3tQoVPKUItV0b/rTuhjj8NtHg==} engines: {node: '>=10'} cpu: [arm64] os: [darwin] - '@swc/core-darwin-x64@1.10.7': - resolution: {integrity: sha512-RFIAmWVicD/l3RzxgHW0R/G1ya/6nyMspE2cAeDcTbjHi0I5qgdhBWd6ieXOaqwEwiCd0Mot1g2VZrLGoBLsjQ==} + '@swc/core-darwin-x64@1.11.13': + resolution: {integrity: sha512-uSA4UwgsDCIysUPfPS8OrQTH2h9spO7IYFd+1NB6dJlVGUuR6jLKuMBOP1IeLeax4cGHayvkcwSJ3OvxHwgcZQ==} engines: {node: '>=10'} cpu: [x64] os: [darwin] - '@swc/core-linux-arm-gnueabihf@1.10.7': - resolution: {integrity: sha512-QP8vz7yELWfop5mM5foN6KkLylVO7ZUgWSF2cA0owwIaziactB2hCPZY5QU690coJouk9KmdFsPWDnaCFUP8tg==} + '@swc/core-linux-arm-gnueabihf@1.11.13': + resolution: {integrity: sha512-boVtyJzS8g30iQfe8Q46W5QE/cmhKRln/7NMz/5sBP/am2Lce9NL0d05NnFwEWJp1e2AMGHFOdRr3Xg1cDiPKw==} engines: {node: '>=10'} cpu: [arm] os: [linux] - '@swc/core-linux-arm64-gnu@1.10.7': - resolution: {integrity: sha512-NgUDBGQcOeLNR+EOpmUvSDIP/F7i/OVOKxst4wOvT5FTxhnkWrW+StJGKj+DcUVSK5eWOYboSXr1y+Hlywwokw==} + '@swc/core-linux-arm64-gnu@1.11.13': + resolution: {integrity: sha512-+IK0jZ84zHUaKtwpV+T+wT0qIUBnK9v2xXD03vARubKF+eUqCsIvcVHXmLpFuap62dClMrhCiwW10X3RbXNlHw==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - '@swc/core-linux-arm64-musl@1.10.7': - resolution: {integrity: sha512-gp5Un3EbeSThBIh6oac5ZArV/CsSmTKj5jNuuUAuEsML3VF9vqPO+25VuxCvsRf/z3py+xOWRaN2HY/rjMeZog==} + '@swc/core-linux-arm64-musl@1.11.13': + resolution: {integrity: sha512-+ukuB8RHD5BHPCUjQwuLP98z+VRfu+NkKQVBcLJGgp0/+w7y0IkaxLY/aKmrAS5ofCNEGqKL+AOVyRpX1aw+XA==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - '@swc/core-linux-x64-gnu@1.10.7': - resolution: {integrity: sha512-k/OxLLMl/edYqbZyUNg6/bqEHTXJT15l9WGqsl/2QaIGwWGvles8YjruQYQ9d4h/thSXLT9gd8bExU2D0N+bUA==} + '@swc/core-linux-x64-gnu@1.11.13': + resolution: {integrity: sha512-q9H3WI3U3dfJ34tdv60zc8oTuWvSd5fOxytyAO9Pc5M82Hic3jjWaf2xBekUg07ubnMZpyfnv+MlD+EbUI3Llw==} engines: {node: '>=10'} cpu: [x64] os: [linux] - '@swc/core-linux-x64-musl@1.10.7': - resolution: {integrity: sha512-XeDoURdWt/ybYmXLCEE8aSiTOzEn0o3Dx5l9hgt0IZEmTts7HgHHVeRgzGXbR4yDo0MfRuX5nE1dYpTmCz0uyA==} + '@swc/core-linux-x64-musl@1.11.13': + resolution: {integrity: sha512-9aaZnnq2pLdTbAzTSzy/q8dr7Woy3aYIcQISmw1+Q2/xHJg5y80ZzbWSWKYca/hKonDMjIbGR6dp299I5J0aeA==} engines: {node: '>=10'} cpu: [x64] os: [linux] - '@swc/core-win32-arm64-msvc@1.10.7': - resolution: {integrity: sha512-nYAbi/uLS+CU0wFtBx8TquJw2uIMKBnl04LBmiVoFrsIhqSl+0MklaA9FVMGA35NcxSJfcm92Prl2W2LfSnTqQ==} + '@swc/core-win32-arm64-msvc@1.11.13': + resolution: {integrity: sha512-n3QZmDewkHANcoHvtwvA6yJbmS4XJf0MBMmwLZoKDZ2dOnC9D/jHiXw7JOohEuzYcpLoL5tgbqmjxa3XNo9Oow==} engines: {node: '>=10'} cpu: [arm64] os: [win32] - '@swc/core-win32-ia32-msvc@1.10.7': - resolution: {integrity: sha512-+aGAbsDsIxeLxw0IzyQLtvtAcI1ctlXVvVcXZMNXIXtTURM876yNrufRo4ngoXB3jnb1MLjIIjgXfFs/eZTUSw==} + '@swc/core-win32-ia32-msvc@1.11.13': + resolution: {integrity: sha512-wM+Nt4lc6YSJFthCx3W2dz0EwFNf++j0/2TQ0Js9QLJuIxUQAgukhNDVCDdq8TNcT0zuA399ALYbvj5lfIqG6g==} engines: {node: '>=10'} cpu: [ia32] os: [win32] - '@swc/core-win32-x64-msvc@1.10.7': - resolution: {integrity: sha512-TBf4clpDBjF/UUnkKrT0/th76/zwvudk5wwobiTFqDywMApHip5O0VpBgZ+4raY2TM8k5+ujoy7bfHb22zu17Q==} + '@swc/core-win32-x64-msvc@1.11.13': + resolution: {integrity: sha512-+X5/uW3s1L5gK7wAo0E27YaAoidJDo51dnfKSfU7gF3mlEUuWH8H1bAy5OTt2mU4eXtfsdUMEVXSwhDlLtQkuA==} engines: {node: '>=10'} cpu: [x64] os: [win32] - '@swc/core@1.10.7': - resolution: {integrity: sha512-py91kjI1jV5D5W/Q+PurBdGsdU5TFbrzamP7zSCqLdMcHkKi3rQEM5jkQcZr0MXXSJTaayLxS3MWYTBIkzPDrg==} + '@swc/core@1.11.13': + resolution: {integrity: sha512-9BXdYz12Wl0zWmZ80PvtjBWeg2ncwJ9L5WJzjhN6yUTZWEV/AwAdVdJnIEp4pro3WyKmAaMxcVOSbhuuOZco5g==} engines: {node: '>=10'} peerDependencies: '@swc/helpers': '*' @@ -1927,33 +1911,30 @@ packages: '@swc/helpers@0.5.15': resolution: {integrity: sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==} - '@swc/types@0.1.17': - resolution: {integrity: sha512-V5gRru+aD8YVyCOMAjMpWR1Ui577DD5KSJsHP8RAxopAH22jFz6GZd/qxqjO6MJHQhcsjvjOFXyDhyLQUnMveQ==} + '@swc/types@0.1.20': + resolution: {integrity: sha512-/rlIpxwKrhz4BIplXf6nsEHtqlhzuNN34/k3kMAXH4/lvVoA3cdq+60aqVNnyvw2uITEaCi0WV3pxBe4dQqoXQ==} - '@tabler/icons-react@3.28.1': - resolution: {integrity: sha512-KNBpA2kbxr3/2YK5swt7b/kd/xpDP1FHYZCxDFIw54tX8slELRFEf95VMxsccQHZeIcUbdoojmUUuYSbt/sM5Q==} + '@tabler/icons-react@3.31.0': + resolution: {integrity: sha512-2rrCM5y/VnaVKnORpDdAua9SEGuJKVqPtWxeQ/vUVsgaUx30LDgBZph7/lterXxDY1IKR6NO//HDhWiifXTi3w==} peerDependencies: react: '>= 16' - '@tabler/icons@3.28.1': - resolution: {integrity: sha512-h7nqKEvFooLtFxhMOC1/2eiV+KRXhBUuDUUJrJlt6Ft6tuMw2eU/9GLQgrTk41DNmIEzp/LI83K9J9UUU8YBYQ==} + '@tabler/icons@3.31.0': + resolution: {integrity: sha512-dblAdeKY3+GA1U+Q9eziZ0ooVlZMHsE8dqP0RkwvRtEsAULoKOYaCUOcJ4oW1DjWegdxk++UAt2SlQVnmeHv+g==} '@tailwindcss/typography@0.5.16': resolution: {integrity: sha512-0wDLwCVF5V3x3b1SGXPCDcdsbDHMBe+lkFzBRaHeLvNi+nrrnZ1lA18u+OTWO8iSWU2GxUOCvlXtDuqftc1oiA==} peerDependencies: tailwindcss: '>=3.0.0 || insiders || >=4.0.0-alpha.20 || >=4.0.0-beta.1' - '@tanstack/query-core@5.64.1': - resolution: {integrity: sha512-978Wx4Wl4UJZbmvU/rkaM9cQtXXrbhK0lsz/UZhYIbyKYA8E4LdomTwyh2GHZ4oU0BKKoDH4YlKk2VscCUgNmg==} + '@tanstack/query-core@5.69.2': + resolution: {integrity: sha512-+spKBqGMSxVMhYPMHr4L7efc4CDdb0Y8nE4UxP/FjV4V3ajP3uhBsh0T7pSuObBgYkU+nY1PRkJhKNmwlHmkUg==} - '@tanstack/react-query@5.64.1': - resolution: {integrity: sha512-vW5ggHpIO2Yjj44b4sB+Fd3cdnlMJppXRBJkEHvld6FXh3j5dwWJoQo7mGtKI2RbSFyiyu/PhGAy0+Vv5ev9Eg==} + '@tanstack/react-query@5.69.2': + resolution: {integrity: sha512-m5clVHliwYK1ZAhS7m6A/PfEU/ibzZjhLszw/YuNFw5rHoKcX6Y6JO4eRV4ugpZFIn0sZ5lSrbcz/jwzAGI2pw==} peerDependencies: react: ^18 || ^19 - '@types/acorn@4.0.6': - resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} - '@types/babel__core@7.20.5': resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} @@ -1963,8 +1944,8 @@ packages: '@types/babel__template@7.4.4': resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} - '@types/babel__traverse@7.20.6': - resolution: {integrity: sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==} + '@types/babel__traverse@7.20.7': + resolution: {integrity: sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==} '@types/cookie@0.6.0': resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==} @@ -1981,11 +1962,11 @@ packages: '@types/d3-interpolate@3.0.4': resolution: {integrity: sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA==} - '@types/d3-path@3.1.0': - resolution: {integrity: sha512-P2dlU/q51fkOc/Gfl3Ul9kicV7l+ra934qBFXCFhrZMOL6du1TM0pm1ThYvENukyOn5h9v+yMJ9Fn5JK4QozrQ==} + '@types/d3-path@3.1.1': + resolution: {integrity: sha512-VMZBYyQvbGmWyWVea0EHs/BwLgxc+MKi1zLDCONksozI4YJMcTt8ZEuIR4Sb1MMTE8MMW49v0IwI5+b7RmfWlg==} - '@types/d3-scale@4.0.8': - resolution: {integrity: sha512-gkK1VVTr5iNiYJ7vWDI+yUFFlszhNMtVeneJ6lUTKPjprsvLLI9/tgEGiXJOnlINJA8FyA88gfnQsHbybVZrYQ==} + '@types/d3-scale@4.0.9': + resolution: {integrity: sha512-dLmtwB8zkAeO/juAMfnV+sItKjlsw2lKdZVVy6LRr0cBmegxSABiLEpGVmSJJ8O08i4+sGR6qQtb6WtuwJdvVw==} '@types/d3-shape@3.1.7': resolution: {integrity: sha512-VLvUQ33C+3J+8p+Daf+nYSOsjB4GXp19/S/aGo60m9h1v6XaxjiT82lKVWJCfzhtuZ3yD7i/TPeC/fuKLLOSmg==} @@ -2008,6 +1989,9 @@ packages: '@types/estree@1.0.6': resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} + '@types/estree@1.0.7': + resolution: {integrity: sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==} + '@types/hast@3.0.4': resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} @@ -2023,28 +2007,28 @@ packages: '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} - '@types/lodash@4.17.14': - resolution: {integrity: sha512-jsxagdikDiDBeIRaPYtArcT8my4tN1og7MtMRquFT3XNA6axxyHDRUemqDz/taRDdOUn0GnGHRCuff4q48sW9A==} + '@types/lodash@4.17.16': + resolution: {integrity: sha512-HX7Em5NYQAXKW+1T+FiuG27NGwzJfCX3s1GjOa7ujxZa52kjJLOr4FUxT+giF6Tgxv1e+/czV/iTtBw27WTU9g==} '@types/mdast@4.0.4': resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} - '@types/ms@0.7.34': - resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} + '@types/ms@2.1.0': + resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==} - '@types/node@22.10.6': - resolution: {integrity: sha512-qNiuwC4ZDAUNcY47xgaSuS92cjf8JbSUoaKS77bmLG1rU7MlATVSiw/IlrjtIyyskXBZ8KkNfjK/P5na7rgXbQ==} + '@types/node@22.13.14': + resolution: {integrity: sha512-Zs/Ollc1SJ8nKUAgc7ivOEdIBM8JAKgrqqUYi2J997JuKO7/tpQC+WCetQ1sypiKCQWHdvdg9wBNpUPEWZae7w==} '@types/parse-json@4.0.2': resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==} - '@types/react-dom@19.0.3': - resolution: {integrity: sha512-0Knk+HJiMP/qOZgMyNFamlIjw9OFCsyC2ZbigmEEyXXixgre6IQpm/4V+r3qH4GC1JPvRJKInw+on2rV6YZLeA==} + '@types/react-dom@19.0.4': + resolution: {integrity: sha512-4fSQ8vWFkg+TGhePfUzVmat3eC14TXYSsiiDSLI0dVLsrm9gZFABjPy/Qu6TKgl1tq1Bu1yDsuQgY3A3DOjCcg==} peerDependencies: '@types/react': ^19.0.0 - '@types/react@19.0.7': - resolution: {integrity: sha512-MoFsEJKkAtZCrC1r6CM8U22GzhG7u2Wir8ons/aCKH6MBdD1ibV24zOSSkdZVUKqN5i396zG5VKLYZ3yaUZdLA==} + '@types/react@19.0.12': + resolution: {integrity: sha512-V6Ar115dBDrjbtXSrS+/Oruobc+qVbbUxDFC1RSbRqLt5SYvxxyIDrSC85RWml54g+jfNeEMZhEj7wW07ONQhA==} '@types/showdown@2.0.6': resolution: {integrity: sha512-pTvD/0CIeqe4x23+YJWlX2gArHa8G0J0Oh6GKaVXV7TAeickpkkZiNOgFcFcmLQ5lB/K0qBJL1FtRYltBfbGCQ==} @@ -2061,58 +2045,58 @@ packages: '@types/yargs@17.0.33': resolution: {integrity: sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==} - '@typescript-eslint/eslint-plugin@8.20.0': - resolution: {integrity: sha512-naduuphVw5StFfqp4Gq4WhIBE2gN1GEmMUExpJYknZJdRnc+2gDzB8Z3+5+/Kv33hPQRDGzQO/0opHE72lZZ6A==} + '@typescript-eslint/eslint-plugin@8.28.0': + resolution: {integrity: sha512-lvFK3TCGAHsItNdWZ/1FkvpzCxTHUVuFrdnOGLMa0GGCFIbCgQWVk3CzCGdA7kM3qGVc+dfW9tr0Z/sHnGDFyg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.8.0' + typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/parser@8.20.0': - resolution: {integrity: sha512-gKXG7A5HMyjDIedBi6bUrDcun8GIjnI8qOwVLiY3rx6T/sHP/19XLJOnIq/FgQvWLHja5JN/LSE7eklNBr612g==} + '@typescript-eslint/parser@8.28.0': + resolution: {integrity: sha512-LPcw1yHD3ToaDEoljFEfQ9j2xShY367h7FZ1sq5NJT9I3yj4LHer1Xd1yRSOdYy9BpsrxU7R+eoDokChYM53lQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.8.0' + typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/scope-manager@8.20.0': - resolution: {integrity: sha512-J7+VkpeGzhOt3FeG1+SzhiMj9NzGD/M6KoGn9f4dbz3YzK9hvbhVTmLj/HiTp9DazIzJ8B4XcM80LrR9Dm1rJw==} + '@typescript-eslint/scope-manager@8.28.0': + resolution: {integrity: sha512-u2oITX3BJwzWCapoZ/pXw6BCOl8rJP4Ij/3wPoGvY8XwvXflOzd1kLrDUUUAIEdJSFh+ASwdTHqtan9xSg8buw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/type-utils@8.20.0': - resolution: {integrity: sha512-bPC+j71GGvA7rVNAHAtOjbVXbLN5PkwqMvy1cwGeaxUoRQXVuKCebRoLzm+IPW/NtFFpstn1ummSIasD5t60GA==} + '@typescript-eslint/type-utils@8.28.0': + resolution: {integrity: sha512-oRoXu2v0Rsy/VoOGhtWrOKDiIehvI+YNrDk5Oqj40Mwm0Yt01FC/Q7nFqg088d3yAsR1ZcZFVfPCTTFCe/KPwg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.8.0' + typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/types@8.20.0': - resolution: {integrity: sha512-cqaMiY72CkP+2xZRrFt3ExRBu0WmVitN/rYPZErA80mHjHx/Svgp8yfbzkJmDoQ/whcytOPO9/IZXnOc+wigRA==} + '@typescript-eslint/types@8.28.0': + resolution: {integrity: sha512-bn4WS1bkKEjx7HqiwG2JNB3YJdC1q6Ue7GyGlwPHyt0TnVq6TtD/hiOdTZt71sq0s7UzqBFXD8t8o2e63tXgwA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@8.20.0': - resolution: {integrity: sha512-Y7ncuy78bJqHI35NwzWol8E0X7XkRVS4K4P4TCyzWkOJih5NDvtoRDW4Ba9YJJoB2igm9yXDdYI/+fkiiAxPzA==} + '@typescript-eslint/typescript-estree@8.28.0': + resolution: {integrity: sha512-H74nHEeBGeklctAVUvmDkxB1mk+PAZ9FiOMPFncdqeRBXxk1lWSYraHw8V12b7aa6Sg9HOBNbGdSHobBPuQSuA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - typescript: '>=4.8.4 <5.8.0' + typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/utils@8.20.0': - resolution: {integrity: sha512-dq70RUw6UK9ei7vxc4KQtBRk7qkHZv447OUZ6RPQMQl71I3NZxQJX/f32Smr+iqWrB02pHKn2yAdHBb0KNrRMA==} + '@typescript-eslint/utils@8.28.0': + resolution: {integrity: sha512-OELa9hbTYciYITqgurT1u/SzpQVtDLmQMFzy/N8pQE+tefOyCWT79jHsav294aTqV1q1u+VzqDGbuujvRYaeSQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: '>=4.8.4 <5.8.0' + typescript: '>=4.8.4 <5.9.0' - '@typescript-eslint/visitor-keys@8.20.0': - resolution: {integrity: sha512-v/BpkeeYAsPkKCkR8BDwcno0llhzWVqPOamQrAEMdpZav2Y9OVjd9dwJyBLJWwf335B5DmlifECIkZRJCaGaHA==} + '@typescript-eslint/visitor-keys@8.28.0': + resolution: {integrity: sha512-hbn8SZ8w4u2pRwgQ1GlUrPKE+t2XvcCW5tTRF7j6SMYIuYG37XuzIW44JCZPa36evi0Oy2SnM664BlIaAuQcvg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@ungap/structured-clone@1.2.1': - resolution: {integrity: sha512-fEzPV3hSkSMltkw152tJKNARhOupqbH96MZWyRjNaYZOMIzbrTeQDG+MTc6Mr2pgzFQzFxAfmhGDNP5QK++2ZA==} + '@ungap/structured-clone@1.3.0': + resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==} - '@vitejs/plugin-react-swc@3.7.2': - resolution: {integrity: sha512-y0byko2b2tSVVf5Gpng1eEhX1OvPC7x8yns1Fx8jDzlJp4LS6CMkCPfLw47cjyoMrshQDoQw4qcgjsU9VvlCew==} + '@vitejs/plugin-react-swc@3.8.1': + resolution: {integrity: sha512-aEUPCckHDcFyxpwFm0AIkbtv6PpUp3xTb9wYGFjtABynXjCYKkWoxX0AOK9NT9XCrdk6mBBUOeHQS+RKdcNO1A==} peerDependencies: vite: ^4 || ^5 || ^6 @@ -2130,28 +2114,26 @@ packages: peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - acorn@8.14.0: - resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==} + acorn@8.14.1: + resolution: {integrity: sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==} engines: {node: '>=0.4.0'} hasBin: true - ai@4.0.36: - resolution: {integrity: sha512-KeXQe+eKQK57WYzN+K6VUBZqj/n70V+cCwrXAhXa7enbZCAsErvQKqrnxkF1qm9UfPuNKNEFV5BRoMKJ5gRfAw==} + ai@4.2.7: + resolution: {integrity: sha512-wFQG6jDxh+uG37EHj/QzZIWMj8r6hKeSowo7gyZNFLTjLFS61VSYHGqdUO/lepm5bGzF94W/MXgYyZ00IIsseQ==} engines: {node: '>=18'} peerDependencies: react: ^18 || ^19 || ^19.0.0-rc - zod: ^3.0.0 + zod: ^3.23.8 peerDependenciesMeta: react: optional: true - zod: - optional: true ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} - anser@2.3.0: - resolution: {integrity: sha512-pGGR7Nq1K/i9KGs29PvHDXA8AsfZ3OiYRMDClT3FIC085Kbns9CJ7ogq9MEiGnrjd9THOGoh7B+kWzePHzZyJQ==} + anser@2.3.2: + resolution: {integrity: sha512-PMqBCBvrOVDRqLGooQb+z+t1Q0PiPyurUQeZRR5uHBOVZcW8B04KMmnT12USnhpNX2wCPagWzLVppQMUG3u0Dw==} ansi-escapes@4.3.2: resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} @@ -2197,15 +2179,15 @@ packages: asynckit@0.4.0: resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} - autoprefixer@10.4.20: - resolution: {integrity: sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==} + autoprefixer@10.4.21: + resolution: {integrity: sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==} engines: {node: ^10 || ^12 || >=14} hasBin: true peerDependencies: postcss: ^8.1.0 - axios@1.8.2: - resolution: {integrity: sha512-ls4GYBm5aig9vWx8AWDSGLpnpDQRtWAfrjU+EuytuODrFBkqesN2RkOQCBzrA1RQNHw1SmRMSDDDSwzNAYQ6Rg==} + axios@1.8.4: + resolution: {integrity: sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw==} babel-plugin-macros@3.1.0: resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==} @@ -2220,6 +2202,10 @@ packages: balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + base64-js@0.0.8: + resolution: {integrity: sha512-3XSA2cR/h/73EzlXXdU6YNycmYI7+kicTxks4eJg2g39biHR84slg2+des+p7iHYhbRg/udIS4TD53WabcOUkw==} + engines: {node: '>= 0.4'} + base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} @@ -2276,11 +2262,11 @@ packages: resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} engines: {node: '>=10'} - caniuse-lite@1.0.30001692: - resolution: {integrity: sha512-A95VKan0kdtrsnMubMKxEKUKImOPSuCpYgxSQBo036P5YYgVIcOYJEgt/txJWqObiRQeISNCfef9nvlQ0vbV7A==} + caniuse-lite@1.0.30001707: + resolution: {integrity: sha512-3qtRjw/HQSMlDWf+X79N206fepf4SOOU6SQLMaq/0KkZLmSjPxAkBOQQ+FxbHKfHmYLZFfdWsO3KA90ceHPSnw==} - canvas@3.0.1: - resolution: {integrity: sha512-PcpVF4f8RubAeN/jCQQ/UymDKzOiLmRPph8fOTzDnlsUihkO/AUlxuhaa7wGRc3vMcCbV1fzuvyu5cWZlIcn1w==} + canvas@3.1.0: + resolution: {integrity: sha512-tTj3CqqukVJ9NgSahykNwtGda7V33VLObwrHfzT0vqJXu7J4d4C/7kQQW3fOEGDfZZoILPut5H00gOjyttPGyg==} engines: {node: ^18.12.0 || >= 20.9.0} ccount@2.0.1: @@ -2510,12 +2496,8 @@ packages: decimal.js-light@2.5.1: resolution: {integrity: sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg==} - decode-named-character-reference@1.0.2: - resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} - - decompress-response@4.2.1: - resolution: {integrity: sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==} - engines: {node: '>=8'} + decode-named-character-reference@1.1.0: + resolution: {integrity: sha512-Wy+JTSbFThEOXQIR2L6mxJvEs+veIzpmqD7ynWxMXGpnk3smkHQOp6forLdHsKpAMW9iJpaBBIxz285t1n1C3w==} decompress-response@6.0.0: resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} @@ -2584,8 +2566,8 @@ packages: eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - electron-to-chromium@1.5.82: - resolution: {integrity: sha512-Zq16uk1hfQhyGx5GpwPAYDwddJuSGhtRhgOA2mCxANYaDT79nAeGnaXogMGng4KqLaJUVnOnuL0+TDop9nLOiA==} + electron-to-chromium@1.5.128: + resolution: {integrity: sha512-bo1A4HH/NS522Ws0QNFIzyPcyUUNV/yyy70Ho1xqfGYzPUme2F/xr4tlEOuM6/A538U1vDA7a4XfCd1CKRegKQ==} emoji-regex@10.4.0: resolution: {integrity: sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==} @@ -2634,8 +2616,8 @@ packages: engines: {node: '>=12'} hasBin: true - esbuild@0.24.2: - resolution: {integrity: sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==} + esbuild@0.25.1: + resolution: {integrity: sha512-BGO5LtrGC7vxnqucAe/rmvKdJllfGaYWdyABvyMoXQlfYMb2bbRuReWR5tEGE//4LcNJj9XrkovTqNYRFZHAMQ==} engines: {node: '>=18'} hasBin: true @@ -2664,19 +2646,19 @@ packages: peerDependencies: eslint: '>=7' - eslint-plugin-react-hooks@5.1.0: - resolution: {integrity: sha512-mpJRtPgHN2tNAvZ35AMfqeB3Xqeo273QxrHJsbBEPWODRM4r0yB6jfoROqKEYrOn27UtRPpcpHc2UqyBSuUNTw==} + eslint-plugin-react-hooks@5.2.0: + resolution: {integrity: sha512-+f15FfK64YQwZdJNELETdn5ibXEUQmW1DZL6KXhNnc2heoy/sg9VJJeT7n8TlMWouzWqSWavFkIhHyIbIAEapg==} engines: {node: '>=10'} peerDependencies: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 - eslint-plugin-react-refresh@0.4.18: - resolution: {integrity: sha512-IRGEoFn3OKalm3hjfolEWGqoF/jPqeEYFp+C8B0WMzwGwBMvlRDQd06kghDhF0C61uJ6WfSDhEZE/sAQjduKgw==} + eslint-plugin-react-refresh@0.4.19: + resolution: {integrity: sha512-eyy8pcr/YxSYjBoqIFSrlbn9i/xvxUFa8CjzAYo9cFjgGXqq1hyjihcpZvxRLalpaWmueWR81xn7vuKmAFijDQ==} peerDependencies: eslint: '>=8.40' - eslint-scope@8.2.0: - resolution: {integrity: sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==} + eslint-scope@8.3.0: + resolution: {integrity: sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} eslint-visitor-keys@3.4.3: @@ -2737,10 +2719,6 @@ packages: resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} engines: {node: '>=0.8.x'} - eventsource-parser@3.0.0: - resolution: {integrity: sha512-T1C0XCUimhxVQzW4zFipdx0SficT651NnkR0ZSH3yQwh+mFMdLfgjABVi4YtMTtaL4s168593DaoaRLMqryavA==} - engines: {node: '>=18.0.0'} - expand-template@2.0.3: resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} engines: {node: '>=6'} @@ -2772,8 +2750,8 @@ packages: fast-levenshtein@2.0.6: resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} - fastq@1.18.0: - resolution: {integrity: sha512-QKHXPW0hD8g4UET03SdOdunzSouc9N4AuHdsX8XNcTsuz+yYFILVNIX4l9yHABMhiEI9Db0JTTIpu0wB+Y1QQw==} + fastq@1.19.1: + resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} fault@2.0.1: resolution: {integrity: sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==} @@ -2802,8 +2780,8 @@ packages: resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} engines: {node: '>=16'} - flatted@3.3.2: - resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==} + flatted@3.3.3: + resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} follow-redirects@1.15.9: resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==} @@ -2817,8 +2795,8 @@ packages: fontkit@2.0.4: resolution: {integrity: sha512-syetQadaUEDNdxdugga9CpEYVaQIxOwk7GlwZWWZ19//qW4zE5bknOKeMBDYAASwnpaSHKJITRLMF9m1fp3s6g==} - foreground-child@3.3.0: - resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==} + foreground-child@3.3.1: + resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} engines: {node: '>=14'} form-data@4.0.2: @@ -2832,8 +2810,8 @@ packages: fraction.js@4.3.7: resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} - framer-motion@11.18.0: - resolution: {integrity: sha512-Vmjl5Al7XqKHzDFnVqzi1H9hzn5w4eN/bdqXTymVpU2UuMQuz9w6UPdsL9dFBeH7loBlnu4qcEXME+nvbkcIOw==} + framer-motion@11.18.2: + resolution: {integrity: sha512-5F5Och7wrvtLVElIpclDT0CBzMVg3dL22B64aZwHtsIY8RB4mXICLrkajK4G9R+ieSAGcgrLeae2SeUTg2pr6w==} peerDependencies: '@emotion/is-prop-valid': '*' react: ^18.0.0 || ^19.0.0 @@ -2924,11 +2902,11 @@ packages: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} - hast-util-to-html@9.0.4: - resolution: {integrity: sha512-wxQzXtdbhiwGAUKrnQJXlOPmHnEehzphwkK7aluUPQ+lEc1xefC8pblMgpp2w5ldBTEfveRIrADcrhGIWrlTDA==} + hast-util-to-html@9.0.5: + resolution: {integrity: sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==} - hast-util-to-jsx-runtime@2.3.2: - resolution: {integrity: sha512-1ngXYb+V9UT5h+PxNRa1O1FYguZK/XL+gkeqvp7EdHlB9oHUG0eYRo/vY5inBdcqo3RkPMC58/H94HvkbfGdyg==} + hast-util-to-jsx-runtime@2.3.6: + resolution: {integrity: sha512-zl6s8LwNyo1P9uw+XJGvZtdFF1GdAkOg8ujOw+4Pyb76874fLps4ueHXDhXWdk6YHQ6OgUtinliG7RsYvCbbBg==} hast-util-whitespace@3.0.0: resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} @@ -2968,8 +2946,8 @@ packages: resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} engines: {node: '>= 4'} - import-fresh@3.3.0: - resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} + import-fresh@3.3.1: + resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} engines: {node: '>=6'} imurmurhash@0.1.4: @@ -3062,8 +3040,8 @@ packages: jackspeak@3.4.3: resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} - jackspeak@4.0.2: - resolution: {integrity: sha512-bZsjR/iRjl1Nk1UkjGpAzLNfQtzuijhn2g+pbZb98HQ1Gk8vM9hfbxeMBP+M2/UUdwj0RqGG3mlvk2MsAqwvEw==} + jackspeak@4.1.0: + resolution: {integrity: sha512-9DDdhb5j6cpeitCbvLO7n7J4IxnbM6hoF6O1g4HQ5TfhvvKN8ywDM7668ZhMHRqVmxqhps/F6syWK2KcPxYlkw==} engines: {node: 20 || >=22} jay-peg@1.1.1: @@ -3132,11 +3110,11 @@ packages: resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} engines: {node: '>= 0.8.0'} - lexical@0.17.1: - resolution: {integrity: sha512-72/MhR7jqmyqD10bmJw8gztlCm4KDDT+TPtU4elqXrEvHoO5XENi34YAEUD9gIkPfqSwyLa9mwAX1nKzIr5xEA==} + lexical@0.27.2: + resolution: {integrity: sha512-R255V+4VBqZmSMWeuMrCNHJZd3L+qBkYYFrxkiO3FLg/36HatZLUdZLRYx+fOMWeSddo0DP9EVl0GTZzNb7v0w==} - lib0@0.2.99: - resolution: {integrity: sha512-vwztYuUf1uf/1zQxfzRfO5yzfNKhTtgOByCruuiQQxWQXnPb8Itaube5ylofcV0oM0aKal9Mv+S1s1Ky0UYP1w==} + lib0@0.2.101: + resolution: {integrity: sha512-LljA6+Ehf0Z7YnxhgSAvspzWALjW4wlWdN/W4iGiqYc1KvXQgOVXWI0xwlwqozIL5WRdKeUW2gq0DLhFsY+Xlw==} engines: {node: '>=16'} hasBin: true @@ -3144,6 +3122,9 @@ packages: resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} engines: {node: '>=14'} + linebreak@1.1.0: + resolution: {integrity: sha512-MHp03UImeVhB7XZtjd0E4n6+3xr5Dq/9xI/5FptGk5FrbDR3zagPa2DS6U8ks/3HjbKWG9Q1M2ufOzxV2qLYSQ==} + lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} @@ -3195,8 +3176,8 @@ packages: lru-cache@10.4.3: resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} - lru-cache@11.0.2: - resolution: {integrity: sha512-123qHRfJBmo2jXDbo/a5YOQrJoHF/GNQTLzQ5+IdK5pWpceK17yRc6ozlWd25FxvGKQbIUs91fDFkXmDHTKcyA==} + lru-cache@11.1.0: + resolution: {integrity: sha512-QIXZUBJUx+2zHUdQujWejBkcD9+cs94tLn0+YL8UrCh+D5sCXZ4c7LaEH48pNwRY3MLDgqUFyhlCyjJPf1WP0A==} engines: {node: 20 || >=22} lru-cache@5.1.1: @@ -3227,8 +3208,8 @@ packages: resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} engines: {node: '>= 0.4'} - mdast-util-directive@3.0.0: - resolution: {integrity: sha512-JUpYOqKI4mM3sZcNxmF/ox04XYFFkNwr0CFlrQIkCwbvH0xzMCqkMqAde9wRd80VAhaUrwFwKm2nxretdT1h7Q==} + mdast-util-directive@3.1.0: + resolution: {integrity: sha512-I3fNFt+DHmpWCYAT7quoM6lHf9wuqtI+oCOfvILnoicNIqjh5E3dEJWiXuYME2gNe8vl1iMQwyUHa7bgFmak6Q==} mdast-util-find-and-replace@3.0.2: resolution: {integrity: sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==} @@ -3242,8 +3223,8 @@ packages: mdast-util-gfm-autolink-literal@2.0.1: resolution: {integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==} - mdast-util-gfm-footnote@2.0.0: - resolution: {integrity: sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==} + mdast-util-gfm-footnote@2.1.0: + resolution: {integrity: sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==} mdast-util-gfm-strikethrough@2.0.0: resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==} @@ -3254,8 +3235,8 @@ packages: mdast-util-gfm-task-list-item@2.0.0: resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==} - mdast-util-gfm@3.0.0: - resolution: {integrity: sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==} + mdast-util-gfm@3.1.0: + resolution: {integrity: sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==} mdast-util-mdx-expression@2.0.1: resolution: {integrity: sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==} @@ -3296,8 +3277,8 @@ packages: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} - micromark-core-commonmark@2.0.2: - resolution: {integrity: sha512-FKjQKbxd1cibWMM1P9N+H8TwlgGgSkWZMmfuVucLCHaYqeSvJ0hFeHsIa65pA2nYbes0f8LDHPMrd9X7Ujxg9w==} + micromark-core-commonmark@2.0.3: + resolution: {integrity: sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==} micromark-extension-directive@3.0.2: resolution: {integrity: sha512-wjcXHgk+PPdmvR58Le9d7zQYWy+vKEU9Se44p2CrCDPiLr2FMyiT4Fyb5UFKFC66wGB3kPlgD7q3TnoqPS7SZA==} @@ -3314,8 +3295,8 @@ packages: micromark-extension-gfm-strikethrough@2.1.0: resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==} - micromark-extension-gfm-table@2.1.0: - resolution: {integrity: sha512-Ub2ncQv+fwD70/l4ou27b4YzfNaCJOvyX4HxXU15m7mpYY+rjuWzsLIPZHJL253Z643RpbcP1oeIJlQ/SKW67g==} + micromark-extension-gfm-table@2.1.1: + resolution: {integrity: sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==} micromark-extension-gfm-tagfilter@2.0.0: resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==} @@ -3326,11 +3307,11 @@ packages: micromark-extension-gfm@3.0.0: resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==} - micromark-extension-mdx-expression@3.0.0: - resolution: {integrity: sha512-sI0nwhUDz97xyzqJAbHQhp5TfaxEvZZZ2JDqUo+7NvyIYG6BZ5CPPqj2ogUoPJlmXHBnyZUzISg9+oUmU6tUjQ==} + micromark-extension-mdx-expression@3.0.1: + resolution: {integrity: sha512-dD/ADLJ1AeMvSAKBwO22zG22N4ybhe7kFIZ3LsDI0GlsNr2A3KYxb0LdC1u5rj4Nw+CHKY0RVdnHX8vj8ejm4Q==} - micromark-extension-mdx-jsx@3.0.1: - resolution: {integrity: sha512-vNuFb9czP8QCtAQcEJn0UJQJZA8Dk6DXKBqx+bg/w0WGuSxDxNr7hErW89tHUY31dUW4NqEOWwmEUNhjTFmHkg==} + micromark-extension-mdx-jsx@3.0.2: + resolution: {integrity: sha512-e5+q1DjMh62LZAJOnDraSSbDMvGJ8x3cbjygy2qFEi7HCeUT4BDKCvMozPozcD6WmOt6sVvYDNBKhFSz3kjOVQ==} micromark-extension-mdx-md@2.0.0: resolution: {integrity: sha512-EpAiszsB3blw4Rpba7xTOUptcFeBFi+6PY8VnJ2hhimH+vCQDirWgsMpz7w1XcZE7LVrSAUGb9VJpG9ghlYvYQ==} @@ -3347,8 +3328,8 @@ packages: micromark-factory-label@2.0.1: resolution: {integrity: sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==} - micromark-factory-mdx-expression@2.0.2: - resolution: {integrity: sha512-5E5I2pFzJyg2CtemqAbcyCktpHXuJbABnsb32wX2U8IQKhhVFBqkcZR5LRm1WVoFqa4kTueZK4abep7wdo9nrw==} + micromark-factory-mdx-expression@2.0.3: + resolution: {integrity: sha512-kQnEtA3vzucU2BkrIa8/VaSAsP+EJ3CKOvhMuJgOEGg9KDC6OAY6nSnNDVRiVNRqj7Y4SlSzcStaH/5jge8JdQ==} micromark-factory-space@2.0.1: resolution: {integrity: sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==} @@ -3380,8 +3361,8 @@ packages: micromark-util-encode@2.0.1: resolution: {integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==} - micromark-util-events-to-acorn@2.0.2: - resolution: {integrity: sha512-Fk+xmBrOv9QZnEDguL9OI9/NQQp6Hz4FuQ4YmCb/5V7+9eAh1s6AYSvL20kHkD67YIg7EpE54TiSlcsf3vyZgA==} + micromark-util-events-to-acorn@2.0.3: + resolution: {integrity: sha512-jmsiEIiZ1n7X1Rr5k8wVExBQCg5jy4UXVADItHmNk1zkwEVhBuIUKRu3fqv+hs4nxLISi2DQGlqIOGiFxgbfHg==} micromark-util-html-tag-name@2.0.1: resolution: {integrity: sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==} @@ -3395,17 +3376,17 @@ packages: micromark-util-sanitize-uri@2.0.1: resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==} - micromark-util-subtokenize@2.0.3: - resolution: {integrity: sha512-VXJJuNxYWSoYL6AJ6OQECCFGhIU2GGHMw8tahogePBrjkG8aCCas3ibkp7RnVOSTClg2is05/R7maAhF1XyQMg==} + micromark-util-subtokenize@2.1.0: + resolution: {integrity: sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==} micromark-util-symbol@2.0.1: resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==} - micromark-util-types@2.0.1: - resolution: {integrity: sha512-534m2WhVTddrcKVepwmVEVnUAmtrx9bfIjNoQHRqfnvdaHQiFytEhJoTgpWJvDEXCO5gLTQh3wYC1PgOJA4NSQ==} + micromark-util-types@2.0.2: + resolution: {integrity: sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==} - micromark@4.0.1: - resolution: {integrity: sha512-eBPdkcoCNvYcxQOAKAlceo5SNdzZWfF+FcSupREAzdAh9rRmE239CEQAiTwIgblwnoM8zzj35sZ5ZwvSEOF6Kw==} + micromark@4.0.2: + resolution: {integrity: sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==} micromatch@4.0.8: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} @@ -3415,8 +3396,8 @@ packages: resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} engines: {node: '>= 0.6'} - mime-db@1.53.0: - resolution: {integrity: sha512-oHlN/w+3MQ3rba9rqFr6V/ypF10LSkdwUysQL7GkXoTgIWeV+tcXGA852TBxH+gsh8UWoyhR1hKcoMJTuWflpg==} + mime-db@1.54.0: + resolution: {integrity: sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==} engines: {node: '>= 0.6'} mime-types@2.1.35: @@ -3427,10 +3408,6 @@ packages: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} engines: {node: '>=6'} - mimic-response@2.1.0: - resolution: {integrity: sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==} - engines: {node: '>=8'} - mimic-response@3.1.0: resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} engines: {node: '>=10'} @@ -3459,14 +3436,14 @@ packages: moo@0.5.2: resolution: {integrity: sha512-iSAJLHYKnX41mKcJKjqvnAN9sf0LMDTXDEvFv+ffuRR9a1MIuXLjMNL6EsnDHSkKLTWNqQQ5uo61P4EbU4NU+Q==} - motion-dom@11.16.4: - resolution: {integrity: sha512-2wuCie206pCiP2K23uvwJeci4pMFfyQKpWI0Vy6HrCTDzDCer4TsYtT7IVnuGbDeoIV37UuZiUr6SZMHEc1Vww==} + motion-dom@11.18.1: + resolution: {integrity: sha512-g76KvA001z+atjfxczdRtw/RXOM3OMSdd1f4DL77qCTF/+avrRJiawSG4yDibEQ215sr9kpinSlX2pCTJ9zbhw==} - motion-utils@11.16.0: - resolution: {integrity: sha512-ngdWPjg31rD4WGXFi0eZ00DQQqKKu04QExyv/ymlC+3k+WIgYVFbt6gS5JsFPbJODTF/r8XiE/X+SsoT9c0ocw==} + motion-utils@11.18.1: + resolution: {integrity: sha512-49Kt+HKjtbJKLtgO/LKj9Ld+6vw9BjH5d9sc40R/kVyH8GLAXgT42M2NnuPcJNuA3s9ZfZBUcwIgpmZWGEE+hA==} - motion@11.18.0: - resolution: {integrity: sha512-uJ4zNXh/4K9C5wftxHKlXLHC0Rc9dHSHPyO1P6T9XE2bTn2z8C2lOZX/M8vAmFp0gtJTJ3aYkv44lTtJSfv6+A==} + motion@11.18.2: + resolution: {integrity: sha512-JLjvFDuFr42NFtcVoMAyC2sEjnpA8xpy6qWPyzQvCloznAyQ8FIXioxWfHiLtgYhoVpfUqSWpn1h9++skj9+Wg==} peerDependencies: '@emotion/is-prop-valid': '*' react: ^18.0.0 || ^19.0.0 @@ -3488,19 +3465,19 @@ packages: mz@2.7.0: resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} - nanoid@3.3.8: - resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} + nanoid@3.3.11: + resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - napi-build-utils@1.0.2: - resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==} + napi-build-utils@2.0.0: + resolution: {integrity: sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA==} natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} - next-themes@0.4.4: - resolution: {integrity: sha512-LDQ2qIOJF0VnuVrrMSMLrWGjRMkq+0mpgl6e0juCLqdJ+oo8Q84JRWT6Wh11VDQKkMMe+dVzDKLWs5n87T+PkQ==} + next-themes@0.4.6: + resolution: {integrity: sha512-pZvgD5L0IEvX5/9GWyHMf3m8BKiVQwsCMHfoFosXtXBMnaS0ZnIJ9ST4b4NqLVKDEm8QBxoNNGNaBv2JNF6XNA==} peerDependencies: react: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc react-dom: ^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc @@ -3508,8 +3485,8 @@ packages: next-tick@1.1.0: resolution: {integrity: sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==} - node-abi@3.71.0: - resolution: {integrity: sha512-SZ40vRiy/+wRTf21hxkkEjPJZpARzUMVcJoQse2EF8qkUWbbO2z7vd5oA/H6bVH6SZQ5STGcu0KRDS7biNRfxw==} + node-abi@3.74.0: + resolution: {integrity: sha512-c5XK0MjkGBrQPGYG24GBADZud0NCbznxNx0ZkS+ebUTrmV1qTDxPxSL8zEAPURXSbLRWVexxmP4986BziahL5w==} engines: {node: '>=10'} node-addon-api@7.1.1: @@ -3655,8 +3632,8 @@ packages: resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} engines: {node: '>=0.10.0'} - pirates@4.0.6: - resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} + pirates@4.0.7: + resolution: {integrity: sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==} engines: {node: '>= 6'} pkg-up@3.1.0: @@ -3724,12 +3701,12 @@ packages: postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} - postcss@8.5.1: - resolution: {integrity: sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ==} + postcss@8.5.3: + resolution: {integrity: sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==} engines: {node: ^10 || ^12 || >=14} - prebuild-install@7.1.2: - resolution: {integrity: sha512-UnNke3IQb6sgarcZIDU3gbMeTp/9SSU1DAIkil7PrqG1vZlBtY5msYccSKSHDqa3hNg436IXK+SNImReuA1wEQ==} + prebuild-install@7.1.3: + resolution: {integrity: sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug==} engines: {node: '>=10'} hasBin: true @@ -3737,15 +3714,15 @@ packages: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} - prettier-plugin-tailwindcss@0.6.9: - resolution: {integrity: sha512-r0i3uhaZAXYP0At5xGfJH876W3HHGHDp+LCRUJrs57PBeQ6mYHMwr25KH8NPX44F2yGTvdnH7OqCshlQx183Eg==} + prettier-plugin-tailwindcss@0.6.11: + resolution: {integrity: sha512-YxaYSIvZPAqhrrEpRtonnrXdghZg1irNg4qrjboCXrpybLWVs55cW2N3juhspVJiO0JBvYJT8SYsJpc8OQSnsA==} engines: {node: '>=14.21.3'} peerDependencies: '@ianvs/prettier-plugin-sort-imports': '*' '@prettier/plugin-pug': '*' '@shopify/prettier-plugin-liquid': '*' '@trivago/prettier-plugin-sort-imports': '*' - '@zackad/prettier-plugin-twig-melody': '*' + '@zackad/prettier-plugin-twig': '*' prettier: ^3.0 prettier-plugin-astro: '*' prettier-plugin-css-order: '*' @@ -3767,7 +3744,7 @@ packages: optional: true '@trivago/prettier-plugin-sort-imports': optional: true - '@zackad/prettier-plugin-twig-melody': + '@zackad/prettier-plugin-twig': optional: true prettier-plugin-astro: optional: true @@ -3792,8 +3769,8 @@ packages: prettier-plugin-svelte: optional: true - prettier@3.4.2: - resolution: {integrity: sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==} + prettier@3.5.3: + resolution: {integrity: sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==} engines: {node: '>=14'} hasBin: true @@ -3801,15 +3778,15 @@ packages: resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - prismjs@1.29.0: - resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} + prismjs@1.30.0: + resolution: {integrity: sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw==} engines: {node: '>=6'} prop-types@15.8.1: resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} - property-information@6.5.0: - resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==} + property-information@7.0.0: + resolution: {integrity: sha512-7D/qOz/+Y4X/rzSB6jKxKUsQnphO046ei8qxG59mtM3RG3DHgTK81HrxrmoDVINJb8NKT5ZsRbwHvQ6B68Iyhg==} proxy-from-env@1.1.0: resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} @@ -3835,15 +3812,12 @@ packages: queue@6.0.2: resolution: {integrity: sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==} - ramda@0.27.2: - resolution: {integrity: sha512-SbiLPU40JuJniHexQSAgad32hfwd+DRUdwF2PlVuI5RZD0/vahUco7R8vD86J/tcEKKF9vZrUVwgtmGCqlCKyA==} - rc@1.2.8: resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} hasBin: true - re-resizable@6.10.3: - resolution: {integrity: sha512-zvWb7X3RJMA4cuSrqoxgs3KR+D+pEXnGrD2FAD6BMYAULnZsSF4b7AOVyG6pC3VVNVOtlagGDCDmZSwWLjjBBw==} + re-resizable@6.11.2: + resolution: {integrity: sha512-2xI2P3OHs5qw7K0Ud1aLILK6MQxW50TcO+DetD9eIV58j84TqYeHoZcL9H4GXFXXIh7afhH8mv5iUCXII7OW7A==} peerDependencies: react: ^16.13.1 || ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^16.13.1 || ^17.0.0 || ^18.0.0 || ^19.0.0 @@ -3874,8 +3848,8 @@ packages: peerDependencies: react: ^16.8.0 || ^17 || ^18 || ^19 - react-intersection-observer@9.15.0: - resolution: {integrity: sha512-qul9TzGgZtHIHAsLOXnRfMWNYCrqjU87HMKhRjwC8l6XSxz2Bo0xmpq5pklaXGj+brx2gSMe8lp1K17mMP2Q8w==} + react-intersection-observer@9.16.0: + resolution: {integrity: sha512-w9nJSEp+DrW9KmQmeWHQyfaP6b03v+TdXynaoA964Wxt7mdR3An11z4NNCQgL4gKSK7y1ver2Fq+JKH6CWEzUA==} peerDependencies: react: ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^17.0.0 || ^18.0.0 || ^19.0.0 @@ -3892,8 +3866,8 @@ packages: react-is@18.3.1: resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} - react-markdown@9.0.3: - resolution: {integrity: sha512-Yk7Z94dbgYTOrdk41Z74GoKA7rThnsbbqBTRYuxoe08qvfQ9tJVhmAKw6BJS/ZORG7kTy/s1QvYzSuaoBA1qfw==} + react-markdown@9.1.0: + resolution: {integrity: sha512-xaijuJB0kzGiUdG7nc2MOMDUDBWPyGAjZtUrow9XxUeua8IqeP+VlIfAZ3bphpcLTnSZXz6z9jcVC/TCwbfgdw==} peerDependencies: '@types/react': '>=18' react: '>=18' @@ -3934,8 +3908,8 @@ packages: '@types/react': optional: true - react-remove-scroll@2.6.2: - resolution: {integrity: sha512-KmONPx5fnlXYJQqC62Q+lwIeAk64ws/cUw6omIumRzMRPqgnYqhSSti99nbj0Ry13bv7dF+BKn7NB+OqkdZGTw==} + react-remove-scroll@2.6.3: + resolution: {integrity: sha512-pnAi91oOk8g8ABQKGF5/M9qxmmOPxaAnopyTHYfqYEwJhyFrbbBtHuSgtKEoH0jpcxx5o3hXqH1mNd9/Oi+8iQ==} engines: {node: '>=10'} peerDependencies: '@types/react': '*' @@ -3944,15 +3918,15 @@ packages: '@types/react': optional: true - react-router-dom@7.1.1: - resolution: {integrity: sha512-vSrQHWlJ5DCfyrhgo0k6zViOe9ToK8uT5XGSmnuC2R3/g261IdIMpZVqfjD6vWSXdnf5Czs4VA/V60oVR6/jnA==} + react-router-dom@7.4.0: + resolution: {integrity: sha512-VlksBPf3n2bijPvnA7nkTsXxMAKOj+bWp4R9c3i+bnwlSOFAGOkJkKhzy/OsRkWaBMICqcAl1JDzh9ZSOze9CA==} engines: {node: '>=20.0.0'} peerDependencies: react: '>=18' react-dom: '>=18' - react-router@7.1.1: - resolution: {integrity: sha512-39sXJkftkKWRZ2oJtHhCxmoCrBCULr/HAH4IT5DHlgu/Q0FCPV0S4Lx+abjDTx/74xoZzNYDYbOZWlJjruyuDQ==} + react-router@7.4.0: + resolution: {integrity: sha512-Y2g5ObjkvX3VFeVt+0CIPuYd9PpgqCslG7ASSIdN73LwA1nNWzcMLaoMRJfP3prZFI92svxFwbn7XkLJ+UPQ6A==} engines: {node: '>=20.0.0'} peerDependencies: react: '>=18' @@ -4011,8 +3985,8 @@ packages: recharts-scale@0.4.5: resolution: {integrity: sha512-kivNFO+0OcUNu7jQquLXAxz1FIwZj8nrj+YkOKc5694NbjCvcT6aSZiIzNzd2Kul4o4rTto8QVR9lMNtxD4G1w==} - recharts@2.15.0: - resolution: {integrity: sha512-cIvMxDfpAmqAmVgc4yb7pgm/O1tmmkl/CjrvXuW+62/+7jj/iF9Ykm+hb/UJt42TREHMyd3gb+pkgoa2MxgDIw==} + recharts@2.15.1: + resolution: {integrity: sha512-v8PUTUlyiDe56qUj82w/EDVuzEFXwEHp9/xOowGAZwfLjB9uAy3GllQVIYMWF6nU+qibx85WF75zD7AjqoT54Q==} engines: {node: '>=14'} peerDependencies: react: ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 @@ -4024,8 +3998,8 @@ packages: rehype-stringify@10.0.1: resolution: {integrity: sha512-k9ecfXHmIPuFVI61B9DeLPN0qFHfawM6RsuX48hoqlaKSF61RskNjSm1lI8PhBEM0MRdLxVVm4WmTqJQccH9mA==} - remark-gfm@4.0.0: - resolution: {integrity: sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==} + remark-gfm@4.0.1: + resolution: {integrity: sha512-1quofZ2RQ9EWdeN34S79+KExV1764+wCUGop5CPL1WGdD0ocPpu91lzPGbwWMECpEpd42kJGQwzRfyov9j4yNg==} remark-parse@11.0.0: resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} @@ -4059,12 +4033,12 @@ packages: restructure@3.0.2: resolution: {integrity: sha512-gSfoiOEA0VPE6Tukkrr7I0RBdE0s7H1eFCDBk05l1KIQT1UIKNc5JZy6jdyW6eYH3aR3g5b3PuL77rq0hvwtAw==} - reusify@1.0.4: - resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} + reusify@1.1.0: + resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - rollup@4.34.8: - resolution: {integrity: sha512-489gTVMzAYdiZHFVA/ig/iYFllCcWFHMvUHI1rpFmkoUtRlQxqh6/yiNqnYibjMZ2b/+FUQwldG+aLsEt6bglQ==} + rollup@4.37.0: + resolution: {integrity: sha512-iAtQy/L4QFU+rTJ1YUjXqJOJzuwEghqWzCEYD2FEghT7Gsy1VdABntrO4CLopA5IkflTyqNiLNwPcOJ3S7UKLg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -4098,8 +4072,8 @@ packages: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true - semver@7.6.3: - resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} + semver@7.7.1: + resolution: {integrity: sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==} engines: {node: '>=10'} hasBin: true @@ -4124,17 +4098,14 @@ packages: simple-concat@1.0.1: resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} - simple-get@3.1.1: - resolution: {integrity: sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==} - simple-get@4.0.1: resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==} simple-swizzle@0.2.2: resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} - sonner@1.7.1: - resolution: {integrity: sha512-b6LHBfH32SoVasRFECrdY8p8s7hXPDn3OHUFbZZbiB1ctLS9Gdh6rpX2dVrpQA0kiL5jcRzDDldwwLkSKk3+QQ==} + sonner@1.7.4: + resolution: {integrity: sha512-DIS8z4PfJRbIyfVFDVnK9rO3eYDtse4Omcm6bt0oEr5/jtLgysmjuBl1frJ9E/EQZrFmKx2A8m/s5s9CRXIzhw==} peerDependencies: react: ^18.0.0 || ^19.0.0 || ^19.0.0-rc react-dom: ^18.0.0 || ^19.0.0 || ^19.0.0-rc @@ -4192,6 +4163,9 @@ packages: style-mod@4.1.2: resolution: {integrity: sha512-wnD1HyVqpJUI2+eKZ+eo1UwghftP6yuFheBqqe+bWCotBjC2K1YnteJILRMs3SM4V/0dLEW1SC27MWP5y+mwmw==} + style-to-js@1.1.16: + resolution: {integrity: sha512-/Q6ld50hKYPH3d/r6nr117TZkHR0w0kGGIVfpG9N6D8NymRPM9RqCUv4pRpJ62E5DqOYx2AFpbZMyCPnjQCnOw==} + style-to-object@1.0.8: resolution: {integrity: sha512-xT47I/Eo0rwJmaXC4oilDGDWLohVhR6o/xAQcPQN8q6QBuZVL8qMYL85kLmST5cPjAorwvqIA4qXTRQoYHaL6g==} @@ -4217,8 +4191,8 @@ packages: svg-arc-to-cubic-bezier@3.2.0: resolution: {integrity: sha512-djbJ/vZKZO+gPoSDThGNpKDO+o+bAeA4XQKovvkNCqnIS2t+S4qnLAGQhyyrulhCFRl1WWzAp0wUDV8PpTVU3g==} - swr@2.3.0: - resolution: {integrity: sha512-NyZ76wA4yElZWBHzSgEJc28a0u6QZvhb6w0azeL2k7+Q1gAzVK+IqQYXhVOC/mzi+HZIozrZvBVeSeOZNR2bqA==} + swr@2.3.3: + resolution: {integrity: sha512-dshNvs3ExOqtZ6kJBaAsabhPdHyeY4P2cKwRCniDVifBMoG/SVI7tfLWqPXriVspf2Rg4tPzXJTnwaihIeFw2A==} peerDependencies: react: ^16.11.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 @@ -4238,8 +4212,8 @@ packages: engines: {node: '>=14.0.0'} hasBin: true - tar-fs@2.1.1: - resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==} + tar-fs@2.1.2: + resolution: {integrity: sha512-EsaAXwxmx8UB7FRKqeozqEPop69DXcmYwTQwXvyAPF352HJsPdkVhvTaDPYqfNgruveJIJy3TA2l+2zj8LJIJA==} tar-stream@2.2.0: resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} @@ -4282,8 +4256,8 @@ packages: trough@2.2.0: resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} - ts-api-utils@2.0.0: - resolution: {integrity: sha512-xCt/TOAc+EOHS1XPnijD3/yzpH6qg2xppZO1YDqGoVsNXfQfzHpOdNuXwrwOU8u4ITXJyDCTyt8w5g1sZv9ynQ==} + ts-api-utils@2.1.0: + resolution: {integrity: sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==} engines: {node: '>=18.12'} peerDependencies: typescript: '>=4.8.4' @@ -4311,15 +4285,15 @@ packages: resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} engines: {node: '>=10'} - type-fest@4.32.0: - resolution: {integrity: sha512-rfgpoi08xagF3JSdtJlCwMq9DGNDE0IMh3Mkpc1wUypg9vPi786AiqeBBKcqvIkq42azsBM85N490fyZjeUftw==} + type-fest@4.38.0: + resolution: {integrity: sha512-2dBz5D5ycHIoliLYLi0Q2V7KRaDlH0uWIvmk7TYlAg5slqwiPv1ezJdZm1QEM0xgk29oYWMCbIG7E6gHpvChlg==} engines: {node: '>=16'} type@2.7.3: resolution: {integrity: sha512-8j+1QmAbPvLZow5Qpi6NCaN8FB60p/6x8/vfNqOk/hC+HuvFZhL4+WfekuhQLiqFZXOgQdrs3B+XxEmCc6b3FQ==} - typescript@5.7.3: - resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==} + typescript@5.8.2: + resolution: {integrity: sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==} engines: {node: '>=14.17'} hasBin: true @@ -4359,8 +4333,8 @@ packages: unraw@3.0.0: resolution: {integrity: sha512-08/DA66UF65OlpUDIQtbJyrqTR0jTAlJ+jsnkQ4jxR7+K5g5YG1APZKQSMCE1vqqmD+2pv6+IdEjmopFatacvg==} - update-browserslist-db@1.1.2: - resolution: {integrity: sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==} + update-browserslist-db@1.1.3: + resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==} hasBin: true peerDependencies: browserslist: '>= 4.21.0' @@ -4427,11 +4401,11 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - usehooks-ts@3.1.0: - resolution: {integrity: sha512-bBIa7yUyPhE1BCc0GmR96VU/15l/9gP1Ch5mYdLcFBaFGQsdmXkvjV0TtOqW1yUd6VjIwDunm+flSciCQXujiw==} + usehooks-ts@3.1.1: + resolution: {integrity: sha512-I4diPp9Cq6ieSUH2wu+fDAVQO43xwtulo+fKEidHUwZPnYImbtkTjzIJYcDcJqxgmX31GVqNFURodvcgHcW0pA==} engines: {node: '>=16.15.0'} peerDependencies: - react: ^16.8.0 || ^17 || ^18 + react: ^16.8.0 || ^17 || ^18 || ^19 || ^19.0.0-rc util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} @@ -4455,8 +4429,8 @@ packages: '@babel/core': ^7.0.0 vite: ^2.7.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 - vite@6.0.9: - resolution: {integrity: sha512-MSgUxHcaXLtnBPktkbUSoQUANApKYuxZ6DrbVENlIorbhL2dZydTLaZ01tjUoE3szeFzlFk9ANOKk0xurh4MKA==} + vite@6.2.3: + resolution: {integrity: sha512-IzwM54g4y9JA/xAeBPNaDXiBF8Jsgl3VBQ2YQ/wOY6fyW3xMdSoltIV3Bo59DErdqdE6RxUfv8W69DvUorE4Eg==} engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} hasBin: true peerDependencies: @@ -4553,8 +4527,8 @@ packages: yoga-layout@3.2.1: resolution: {integrity: sha512-0LPOt3AxKqMdFBZA3HBAt/t/8vIKq7VaQYbuA8WxCgung+p9TVyKRYdpvCb80HcdTN2NkbIKbhNwKUfm3tQywQ==} - zod-to-json-schema@3.24.1: - resolution: {integrity: sha512-3h08nf3Vw3Wl3PK+q3ow/lIil81IT2Oa7YpQyUUDsEWbXveMesdfK1xBd2RhCkynwZndAxixji/7SYJJowr62w==} + zod-to-json-schema@3.24.5: + resolution: {integrity: sha512-/AuWwMP+YqiPbsJx5D6TfgRTc4kTLjsh5SOcd4bLsfUg2RcEXrFMJl1DGgdHy2aCfsIA/cr/1JM0xcB2GZji8g==} peerDependencies: zod: ^3.24.1 @@ -4564,72 +4538,41 @@ packages: peerDependencies: zod: ^3.18.0 - zod@3.24.1: - resolution: {integrity: sha512-muH7gBL9sI1nciMZV67X5fTKKBLtwpZ5VBp1vsOQzj1MhrBZ4wlVCm3gedKZWLp0Oyel8sIGfeiz54Su+OVT+A==} + zod@3.24.2: + resolution: {integrity: sha512-lY7CDW43ECgW9u1TcT3IoXHflywfVqDYze4waEz812jR/bZ8FHDsl7pFQoSZTz5N+2NqRXs8GBwnAwo3ZNxqhQ==} zwitch@2.0.4: resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} snapshots: - '@ai-sdk/provider-utils@2.0.7(zod@3.24.1)': - dependencies: - '@ai-sdk/provider': 1.0.4 - eventsource-parser: 3.0.0 - nanoid: 3.3.8 - secure-json-parse: 2.7.0 - optionalDependencies: - zod: 3.24.1 - - '@ai-sdk/provider-utils@2.2.1(zod@3.24.1)': + '@ai-sdk/provider-utils@2.2.1(zod@3.24.2)': dependencies: '@ai-sdk/provider': 1.1.0 - nanoid: 3.3.8 + nanoid: 3.3.11 secure-json-parse: 2.7.0 - zod: 3.24.1 - - '@ai-sdk/provider@1.0.4': - dependencies: - json-schema: 0.4.0 + zod: 3.24.2 '@ai-sdk/provider@1.1.0': dependencies: json-schema: 0.4.0 - '@ai-sdk/react@1.0.11(react@19.0.0)(zod@3.24.1)': - dependencies: - '@ai-sdk/provider-utils': 2.0.7(zod@3.24.1) - '@ai-sdk/ui-utils': 1.0.10(zod@3.24.1) - swr: 2.3.0(react@19.0.0) - throttleit: 2.1.0 - optionalDependencies: - react: 19.0.0 - zod: 3.24.1 - - '@ai-sdk/react@1.2.2(react@19.0.0)(zod@3.24.1)': + '@ai-sdk/react@1.2.2(react@19.0.0)(zod@3.24.2)': dependencies: - '@ai-sdk/provider-utils': 2.2.1(zod@3.24.1) - '@ai-sdk/ui-utils': 1.2.1(zod@3.24.1) + '@ai-sdk/provider-utils': 2.2.1(zod@3.24.2) + '@ai-sdk/ui-utils': 1.2.1(zod@3.24.2) react: 19.0.0 - swr: 2.3.0(react@19.0.0) + swr: 2.3.3(react@19.0.0) throttleit: 2.1.0 optionalDependencies: - zod: 3.24.1 + zod: 3.24.2 - '@ai-sdk/ui-utils@1.0.10(zod@3.24.1)': - dependencies: - '@ai-sdk/provider': 1.0.4 - '@ai-sdk/provider-utils': 2.0.7(zod@3.24.1) - zod-to-json-schema: 3.24.1(zod@3.24.1) - optionalDependencies: - zod: 3.24.1 - - '@ai-sdk/ui-utils@1.2.1(zod@3.24.1)': + '@ai-sdk/ui-utils@1.2.1(zod@3.24.2)': dependencies: '@ai-sdk/provider': 1.1.0 - '@ai-sdk/provider-utils': 2.2.1(zod@3.24.1) - zod: 3.24.1 - zod-to-json-schema: 3.24.1(zod@3.24.1) + '@ai-sdk/provider-utils': 2.2.1(zod@3.24.2) + zod: 3.24.2 + zod-to-json-schema: 3.24.5(zod@3.24.2) '@alloc/quick-lru@5.2.0': {} @@ -4644,20 +4587,20 @@ snapshots: js-tokens: 4.0.0 picocolors: 1.1.1 - '@babel/compat-data@7.26.5': {} + '@babel/compat-data@7.26.8': {} - '@babel/core@7.26.0': + '@babel/core@7.26.10': dependencies: '@ampproject/remapping': 2.3.0 '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.5 - '@babel/helper-compilation-targets': 7.26.5 - '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) - '@babel/helpers': 7.26.0 - '@babel/parser': 7.26.5 - '@babel/template': 7.25.9 - '@babel/traverse': 7.26.5 - '@babel/types': 7.26.5 + '@babel/generator': 7.27.0 + '@babel/helper-compilation-targets': 7.27.0 + '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.10) + '@babel/helpers': 7.27.0 + '@babel/parser': 7.27.0 + '@babel/template': 7.27.0 + '@babel/traverse': 7.27.0 + '@babel/types': 7.27.0 convert-source-map: 2.0.0 debug: 4.4.0 gensync: 1.0.0-beta.2 @@ -4666,81 +4609,81 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/generator@7.26.5': + '@babel/generator@7.27.0': dependencies: - '@babel/parser': 7.26.5 - '@babel/types': 7.26.5 + '@babel/parser': 7.27.0 + '@babel/types': 7.27.0 '@jridgewell/gen-mapping': 0.3.8 '@jridgewell/trace-mapping': 0.3.25 jsesc: 3.1.0 '@babel/helper-annotate-as-pure@7.25.9': dependencies: - '@babel/types': 7.26.5 + '@babel/types': 7.27.0 - '@babel/helper-compilation-targets@7.26.5': + '@babel/helper-compilation-targets@7.27.0': dependencies: - '@babel/compat-data': 7.26.5 + '@babel/compat-data': 7.26.8 '@babel/helper-validator-option': 7.25.9 browserslist: 4.24.4 lru-cache: 5.1.1 semver: 6.3.1 - '@babel/helper-create-class-features-plugin@7.25.9(@babel/core@7.26.0)': + '@babel/helper-create-class-features-plugin@7.27.0(@babel/core@7.26.10)': dependencies: - '@babel/core': 7.26.0 + '@babel/core': 7.26.10 '@babel/helper-annotate-as-pure': 7.25.9 '@babel/helper-member-expression-to-functions': 7.25.9 '@babel/helper-optimise-call-expression': 7.25.9 - '@babel/helper-replace-supers': 7.26.5(@babel/core@7.26.0) + '@babel/helper-replace-supers': 7.26.5(@babel/core@7.26.10) '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 - '@babel/traverse': 7.26.5 + '@babel/traverse': 7.27.0 semver: 6.3.1 transitivePeerDependencies: - supports-color '@babel/helper-member-expression-to-functions@7.25.9': dependencies: - '@babel/traverse': 7.26.5 - '@babel/types': 7.26.5 + '@babel/traverse': 7.27.0 + '@babel/types': 7.27.0 transitivePeerDependencies: - supports-color '@babel/helper-module-imports@7.25.9': dependencies: - '@babel/traverse': 7.26.5 - '@babel/types': 7.26.5 + '@babel/traverse': 7.27.0 + '@babel/types': 7.27.0 transitivePeerDependencies: - supports-color - '@babel/helper-module-transforms@7.26.0(@babel/core@7.26.0)': + '@babel/helper-module-transforms@7.26.0(@babel/core@7.26.10)': dependencies: - '@babel/core': 7.26.0 + '@babel/core': 7.26.10 '@babel/helper-module-imports': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 - '@babel/traverse': 7.26.5 + '@babel/traverse': 7.27.0 transitivePeerDependencies: - supports-color '@babel/helper-optimise-call-expression@7.25.9': dependencies: - '@babel/types': 7.26.5 + '@babel/types': 7.27.0 '@babel/helper-plugin-utils@7.26.5': {} - '@babel/helper-replace-supers@7.26.5(@babel/core@7.26.0)': + '@babel/helper-replace-supers@7.26.5(@babel/core@7.26.10)': dependencies: - '@babel/core': 7.26.0 + '@babel/core': 7.26.10 '@babel/helper-member-expression-to-functions': 7.25.9 '@babel/helper-optimise-call-expression': 7.25.9 - '@babel/traverse': 7.26.5 + '@babel/traverse': 7.27.0 transitivePeerDependencies: - supports-color '@babel/helper-skip-transparent-expression-wrappers@7.25.9': dependencies: - '@babel/traverse': 7.26.5 - '@babel/types': 7.26.5 + '@babel/traverse': 7.27.0 + '@babel/types': 7.27.0 transitivePeerDependencies: - supports-color @@ -4750,199 +4693,199 @@ snapshots: '@babel/helper-validator-option@7.25.9': {} - '@babel/helpers@7.26.0': + '@babel/helpers@7.27.0': dependencies: - '@babel/template': 7.25.9 - '@babel/types': 7.26.5 + '@babel/template': 7.27.0 + '@babel/types': 7.27.0 - '@babel/parser@7.26.5': + '@babel/parser@7.27.0': dependencies: - '@babel/types': 7.26.5 + '@babel/types': 7.27.0 - '@babel/plugin-proposal-private-methods@7.18.6(@babel/core@7.26.0)': + '@babel/plugin-proposal-private-methods@7.18.6(@babel/core@7.26.10)': dependencies: - '@babel/core': 7.26.0 - '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/core': 7.26.10 + '@babel/helper-create-class-features-plugin': 7.27.0(@babel/core@7.26.10) '@babel/helper-plugin-utils': 7.26.5 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-react-jsx-self@7.25.9(@babel/core@7.26.0)': + '@babel/plugin-transform-react-jsx-self@7.25.9(@babel/core@7.26.10)': dependencies: - '@babel/core': 7.26.0 + '@babel/core': 7.26.10 '@babel/helper-plugin-utils': 7.26.5 - '@babel/plugin-transform-react-jsx-source@7.25.9(@babel/core@7.26.0)': + '@babel/plugin-transform-react-jsx-source@7.25.9(@babel/core@7.26.10)': dependencies: - '@babel/core': 7.26.0 + '@babel/core': 7.26.10 '@babel/helper-plugin-utils': 7.26.5 - '@babel/runtime@7.26.0': + '@babel/runtime@7.27.0': dependencies: regenerator-runtime: 0.14.1 - '@babel/template@7.25.9': + '@babel/template@7.27.0': dependencies: '@babel/code-frame': 7.26.2 - '@babel/parser': 7.26.5 - '@babel/types': 7.26.5 + '@babel/parser': 7.27.0 + '@babel/types': 7.27.0 - '@babel/traverse@7.26.5': + '@babel/traverse@7.27.0': dependencies: '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.5 - '@babel/parser': 7.26.5 - '@babel/template': 7.25.9 - '@babel/types': 7.26.5 + '@babel/generator': 7.27.0 + '@babel/parser': 7.27.0 + '@babel/template': 7.27.0 + '@babel/types': 7.27.0 debug: 4.4.0 globals: 11.12.0 transitivePeerDependencies: - supports-color - '@babel/types@7.26.5': + '@babel/types@7.27.0': dependencies: '@babel/helper-string-parser': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 - '@codemirror/autocomplete@6.18.4': + '@codemirror/autocomplete@6.18.6': dependencies: - '@codemirror/language': 6.10.8 - '@codemirror/state': 6.5.1 - '@codemirror/view': 6.36.2 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.36.4 '@lezer/common': 1.2.3 '@codemirror/commands@6.8.0': dependencies: - '@codemirror/language': 6.10.8 - '@codemirror/state': 6.5.1 - '@codemirror/view': 6.36.2 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.36.4 '@lezer/common': 1.2.3 '@codemirror/lang-angular@0.1.3': dependencies: '@codemirror/lang-html': 6.4.9 - '@codemirror/lang-javascript': 6.2.2 - '@codemirror/language': 6.10.8 + '@codemirror/lang-javascript': 6.2.3 + '@codemirror/language': 6.11.0 '@lezer/common': 1.2.3 '@lezer/highlight': 1.2.1 '@lezer/lr': 1.4.2 '@codemirror/lang-cpp@6.0.2': dependencies: - '@codemirror/language': 6.10.8 - '@lezer/cpp': 1.1.2 + '@codemirror/language': 6.11.0 + '@lezer/cpp': 1.1.3 '@codemirror/lang-css@6.3.1': dependencies: - '@codemirror/autocomplete': 6.18.4 - '@codemirror/language': 6.10.8 - '@codemirror/state': 6.5.1 + '@codemirror/autocomplete': 6.18.6 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.2 '@lezer/common': 1.2.3 - '@lezer/css': 1.1.9 + '@lezer/css': 1.1.11 '@codemirror/lang-go@6.0.1': dependencies: - '@codemirror/autocomplete': 6.18.4 - '@codemirror/language': 6.10.8 - '@codemirror/state': 6.5.1 + '@codemirror/autocomplete': 6.18.6 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.2 '@lezer/common': 1.2.3 '@lezer/go': 1.0.0 '@codemirror/lang-html@6.4.9': dependencies: - '@codemirror/autocomplete': 6.18.4 + '@codemirror/autocomplete': 6.18.6 '@codemirror/lang-css': 6.3.1 - '@codemirror/lang-javascript': 6.2.2 - '@codemirror/language': 6.10.8 - '@codemirror/state': 6.5.1 - '@codemirror/view': 6.36.2 + '@codemirror/lang-javascript': 6.2.3 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.36.4 '@lezer/common': 1.2.3 - '@lezer/css': 1.1.9 + '@lezer/css': 1.1.11 '@lezer/html': 1.3.10 '@codemirror/lang-java@6.0.1': dependencies: - '@codemirror/language': 6.10.8 + '@codemirror/language': 6.11.0 '@lezer/java': 1.1.3 - '@codemirror/lang-javascript@6.2.2': + '@codemirror/lang-javascript@6.2.3': dependencies: - '@codemirror/autocomplete': 6.18.4 - '@codemirror/language': 6.10.8 - '@codemirror/lint': 6.8.4 - '@codemirror/state': 6.5.1 - '@codemirror/view': 6.36.2 + '@codemirror/autocomplete': 6.18.6 + '@codemirror/language': 6.11.0 + '@codemirror/lint': 6.8.5 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.36.4 '@lezer/common': 1.2.3 '@lezer/javascript': 1.4.21 '@codemirror/lang-json@6.0.1': dependencies: - '@codemirror/language': 6.10.8 + '@codemirror/language': 6.11.0 '@lezer/json': 1.0.3 '@codemirror/lang-less@6.0.2': dependencies: '@codemirror/lang-css': 6.3.1 - '@codemirror/language': 6.10.8 + '@codemirror/language': 6.11.0 '@lezer/common': 1.2.3 '@lezer/highlight': 1.2.1 '@lezer/lr': 1.4.2 - '@codemirror/lang-liquid@6.2.2': + '@codemirror/lang-liquid@6.2.3': dependencies: - '@codemirror/autocomplete': 6.18.4 + '@codemirror/autocomplete': 6.18.6 '@codemirror/lang-html': 6.4.9 - '@codemirror/language': 6.10.8 - '@codemirror/state': 6.5.1 - '@codemirror/view': 6.36.2 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.36.4 '@lezer/common': 1.2.3 '@lezer/highlight': 1.2.1 '@lezer/lr': 1.4.2 '@codemirror/lang-markdown@6.3.2': dependencies: - '@codemirror/autocomplete': 6.18.4 + '@codemirror/autocomplete': 6.18.6 '@codemirror/lang-html': 6.4.9 - '@codemirror/language': 6.10.8 - '@codemirror/state': 6.5.1 - '@codemirror/view': 6.36.2 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.36.4 '@lezer/common': 1.2.3 - '@lezer/markdown': 1.4.0 + '@lezer/markdown': 1.4.2 '@codemirror/lang-php@6.0.1': dependencies: '@codemirror/lang-html': 6.4.9 - '@codemirror/language': 6.10.8 - '@codemirror/state': 6.5.1 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.2 '@lezer/common': 1.2.3 '@lezer/php': 1.0.2 - '@codemirror/lang-python@6.1.6': + '@codemirror/lang-python@6.1.7': dependencies: - '@codemirror/autocomplete': 6.18.4 - '@codemirror/language': 6.10.8 - '@codemirror/state': 6.5.1 + '@codemirror/autocomplete': 6.18.6 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.2 '@lezer/common': 1.2.3 - '@lezer/python': 1.1.15 + '@lezer/python': 1.1.16 '@codemirror/lang-rust@6.0.1': dependencies: - '@codemirror/language': 6.10.8 + '@codemirror/language': 6.11.0 '@lezer/rust': 1.0.2 '@codemirror/lang-sass@6.0.2': dependencies: '@codemirror/lang-css': 6.3.1 - '@codemirror/language': 6.10.8 - '@codemirror/state': 6.5.1 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.2 '@lezer/common': 1.2.3 '@lezer/sass': 1.0.7 '@codemirror/lang-sql@6.8.0': dependencies: - '@codemirror/autocomplete': 6.18.4 - '@codemirror/language': 6.10.8 - '@codemirror/state': 6.5.1 + '@codemirror/autocomplete': 6.18.6 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.2 '@lezer/common': 1.2.3 '@lezer/highlight': 1.2.1 '@lezer/lr': 1.4.2 @@ -4950,33 +4893,33 @@ snapshots: '@codemirror/lang-vue@0.1.3': dependencies: '@codemirror/lang-html': 6.4.9 - '@codemirror/lang-javascript': 6.2.2 - '@codemirror/language': 6.10.8 + '@codemirror/lang-javascript': 6.2.3 + '@codemirror/language': 6.11.0 '@lezer/common': 1.2.3 '@lezer/highlight': 1.2.1 '@lezer/lr': 1.4.2 '@codemirror/lang-wast@6.0.2': dependencies: - '@codemirror/language': 6.10.8 + '@codemirror/language': 6.11.0 '@lezer/common': 1.2.3 '@lezer/highlight': 1.2.1 '@lezer/lr': 1.4.2 '@codemirror/lang-xml@6.1.0': dependencies: - '@codemirror/autocomplete': 6.18.4 - '@codemirror/language': 6.10.8 - '@codemirror/state': 6.5.1 - '@codemirror/view': 6.36.2 + '@codemirror/autocomplete': 6.18.6 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.36.4 '@lezer/common': 1.2.3 '@lezer/xml': 1.0.6 '@codemirror/lang-yaml@6.1.2': dependencies: - '@codemirror/autocomplete': 6.18.4 - '@codemirror/language': 6.10.8 - '@codemirror/state': 6.5.1 + '@codemirror/autocomplete': 6.18.6 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.2 '@lezer/common': 1.2.3 '@lezer/highlight': 1.2.1 '@lezer/lr': 1.4.2 @@ -4990,13 +4933,13 @@ snapshots: '@codemirror/lang-go': 6.0.1 '@codemirror/lang-html': 6.4.9 '@codemirror/lang-java': 6.0.1 - '@codemirror/lang-javascript': 6.2.2 + '@codemirror/lang-javascript': 6.2.3 '@codemirror/lang-json': 6.0.1 '@codemirror/lang-less': 6.0.2 - '@codemirror/lang-liquid': 6.2.2 + '@codemirror/lang-liquid': 6.2.3 '@codemirror/lang-markdown': 6.3.2 '@codemirror/lang-php': 6.0.1 - '@codemirror/lang-python': 6.1.6 + '@codemirror/lang-python': 6.1.7 '@codemirror/lang-rust': 6.0.1 '@codemirror/lang-sass': 6.0.2 '@codemirror/lang-sql': 6.8.0 @@ -5004,49 +4947,49 @@ snapshots: '@codemirror/lang-wast': 6.0.2 '@codemirror/lang-xml': 6.1.0 '@codemirror/lang-yaml': 6.1.2 - '@codemirror/language': 6.10.8 - '@codemirror/legacy-modes': 6.4.2 + '@codemirror/language': 6.11.0 + '@codemirror/legacy-modes': 6.5.0 - '@codemirror/language@6.10.8': + '@codemirror/language@6.11.0': dependencies: - '@codemirror/state': 6.5.1 - '@codemirror/view': 6.36.2 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.36.4 '@lezer/common': 1.2.3 '@lezer/highlight': 1.2.1 '@lezer/lr': 1.4.2 style-mod: 4.1.2 - '@codemirror/legacy-modes@6.4.2': + '@codemirror/legacy-modes@6.5.0': dependencies: - '@codemirror/language': 6.10.8 + '@codemirror/language': 6.11.0 - '@codemirror/lint@6.8.4': + '@codemirror/lint@6.8.5': dependencies: - '@codemirror/state': 6.5.1 - '@codemirror/view': 6.36.2 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.36.4 crelt: 1.0.6 - '@codemirror/merge@6.8.0': + '@codemirror/merge@6.10.0': dependencies: - '@codemirror/language': 6.10.8 - '@codemirror/state': 6.5.1 - '@codemirror/view': 6.36.2 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.36.4 '@lezer/highlight': 1.2.1 style-mod: 4.1.2 - '@codemirror/search@6.5.8': + '@codemirror/search@6.5.10': dependencies: - '@codemirror/state': 6.5.1 - '@codemirror/view': 6.36.2 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.36.4 crelt: 1.0.6 - '@codemirror/state@6.5.1': + '@codemirror/state@6.5.2': dependencies: '@marijn/find-cluster-break': 1.0.2 - '@codemirror/view@6.36.2': + '@codemirror/view@6.36.4': dependencies: - '@codemirror/state': 6.5.1 + '@codemirror/state': 6.5.2 style-mod: 4.1.2 w3c-keyname: 2.2.8 @@ -5060,25 +5003,25 @@ snapshots: '@codesandbox/nodebox': 0.1.8 buffer: 6.0.3 dequal: 2.0.3 - mime-db: 1.53.0 + mime-db: 1.54.0 outvariant: 1.4.0 static-browser-server: 1.0.3 - '@codesandbox/sandpack-react@2.19.10(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@codesandbox/sandpack-react@2.20.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@codemirror/autocomplete': 6.18.4 + '@codemirror/autocomplete': 6.18.6 '@codemirror/commands': 6.8.0 '@codemirror/lang-css': 6.3.1 '@codemirror/lang-html': 6.4.9 - '@codemirror/lang-javascript': 6.2.2 - '@codemirror/language': 6.10.8 - '@codemirror/state': 6.5.1 - '@codemirror/view': 6.36.2 + '@codemirror/lang-javascript': 6.2.3 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.36.4 '@codesandbox/sandpack-client': 2.19.8 '@lezer/highlight': 1.2.1 '@react-hook/intersection-observer': 3.1.2(react@19.0.0) '@stitches/core': 1.2.8 - anser: 2.3.0 + anser: 2.3.2 clean-set: 1.1.2 dequal: 2.0.3 escape-carriage: 1.3.1 @@ -5118,163 +5061,163 @@ snapshots: '@esbuild/aix-ppc64@0.21.5': optional: true - '@esbuild/aix-ppc64@0.24.2': + '@esbuild/aix-ppc64@0.25.1': optional: true '@esbuild/android-arm64@0.21.5': optional: true - '@esbuild/android-arm64@0.24.2': + '@esbuild/android-arm64@0.25.1': optional: true '@esbuild/android-arm@0.21.5': optional: true - '@esbuild/android-arm@0.24.2': + '@esbuild/android-arm@0.25.1': optional: true '@esbuild/android-x64@0.21.5': optional: true - '@esbuild/android-x64@0.24.2': + '@esbuild/android-x64@0.25.1': optional: true '@esbuild/darwin-arm64@0.21.5': optional: true - '@esbuild/darwin-arm64@0.24.2': + '@esbuild/darwin-arm64@0.25.1': optional: true '@esbuild/darwin-x64@0.21.5': optional: true - '@esbuild/darwin-x64@0.24.2': + '@esbuild/darwin-x64@0.25.1': optional: true '@esbuild/freebsd-arm64@0.21.5': optional: true - '@esbuild/freebsd-arm64@0.24.2': + '@esbuild/freebsd-arm64@0.25.1': optional: true '@esbuild/freebsd-x64@0.21.5': optional: true - '@esbuild/freebsd-x64@0.24.2': + '@esbuild/freebsd-x64@0.25.1': optional: true '@esbuild/linux-arm64@0.21.5': optional: true - '@esbuild/linux-arm64@0.24.2': + '@esbuild/linux-arm64@0.25.1': optional: true '@esbuild/linux-arm@0.21.5': optional: true - '@esbuild/linux-arm@0.24.2': + '@esbuild/linux-arm@0.25.1': optional: true '@esbuild/linux-ia32@0.21.5': optional: true - '@esbuild/linux-ia32@0.24.2': + '@esbuild/linux-ia32@0.25.1': optional: true '@esbuild/linux-loong64@0.21.5': optional: true - '@esbuild/linux-loong64@0.24.2': + '@esbuild/linux-loong64@0.25.1': optional: true '@esbuild/linux-mips64el@0.21.5': optional: true - '@esbuild/linux-mips64el@0.24.2': + '@esbuild/linux-mips64el@0.25.1': optional: true '@esbuild/linux-ppc64@0.21.5': optional: true - '@esbuild/linux-ppc64@0.24.2': + '@esbuild/linux-ppc64@0.25.1': optional: true '@esbuild/linux-riscv64@0.21.5': optional: true - '@esbuild/linux-riscv64@0.24.2': + '@esbuild/linux-riscv64@0.25.1': optional: true '@esbuild/linux-s390x@0.21.5': optional: true - '@esbuild/linux-s390x@0.24.2': + '@esbuild/linux-s390x@0.25.1': optional: true '@esbuild/linux-x64@0.21.5': optional: true - '@esbuild/linux-x64@0.24.2': + '@esbuild/linux-x64@0.25.1': optional: true - '@esbuild/netbsd-arm64@0.24.2': + '@esbuild/netbsd-arm64@0.25.1': optional: true '@esbuild/netbsd-x64@0.21.5': optional: true - '@esbuild/netbsd-x64@0.24.2': + '@esbuild/netbsd-x64@0.25.1': optional: true - '@esbuild/openbsd-arm64@0.24.2': + '@esbuild/openbsd-arm64@0.25.1': optional: true '@esbuild/openbsd-x64@0.21.5': optional: true - '@esbuild/openbsd-x64@0.24.2': + '@esbuild/openbsd-x64@0.25.1': optional: true '@esbuild/sunos-x64@0.21.5': optional: true - '@esbuild/sunos-x64@0.24.2': + '@esbuild/sunos-x64@0.25.1': optional: true '@esbuild/win32-arm64@0.21.5': optional: true - '@esbuild/win32-arm64@0.24.2': + '@esbuild/win32-arm64@0.25.1': optional: true '@esbuild/win32-ia32@0.21.5': optional: true - '@esbuild/win32-ia32@0.24.2': + '@esbuild/win32-ia32@0.25.1': optional: true '@esbuild/win32-x64@0.21.5': optional: true - '@esbuild/win32-x64@0.24.2': + '@esbuild/win32-x64@0.25.1': optional: true - '@eslint-community/eslint-utils@4.4.1(eslint@9.16.0(jiti@1.21.7))': + '@eslint-community/eslint-utils@4.5.1(eslint@9.16.0(jiti@1.21.7))': dependencies: eslint: 9.16.0(jiti@1.21.7) eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.1': {} - '@eslint/config-array@0.19.1': + '@eslint/config-array@0.19.2': dependencies: - '@eslint/object-schema': 2.1.5 + '@eslint/object-schema': 2.1.6 debug: 4.4.0 minimatch: 3.1.2 transitivePeerDependencies: - supports-color - '@eslint/core@0.10.0': + '@eslint/core@0.12.0': dependencies: '@types/json-schema': 7.0.15 @@ -5282,14 +5225,14 @@ snapshots: dependencies: '@types/json-schema': 7.0.15 - '@eslint/eslintrc@3.2.0': + '@eslint/eslintrc@3.3.1': dependencies: ajv: 6.12.6 debug: 4.4.0 espree: 10.3.0 globals: 14.0.0 ignore: 5.3.2 - import-fresh: 3.3.0 + import-fresh: 3.3.1 js-yaml: 4.1.0 minimatch: 3.1.2 strip-json-comments: 3.1.1 @@ -5298,11 +5241,11 @@ snapshots: '@eslint/js@9.16.0': {} - '@eslint/object-schema@2.1.5': {} + '@eslint/object-schema@2.1.6': {} - '@eslint/plugin-kit@0.2.5': + '@eslint/plugin-kit@0.2.7': dependencies: - '@eslint/core': 0.10.0 + '@eslint/core': 0.12.0 levn: 0.4.1 '@floating-ui/core@1.6.9': @@ -5330,7 +5273,7 @@ snapshots: '@floating-ui/utils@0.2.9': {} - '@fontsource-variable/space-grotesk@5.1.1': {} + '@fontsource-variable/space-grotesk@5.2.6': {} '@formkit/auto-animate@0.8.2': {} @@ -5349,7 +5292,7 @@ snapshots: '@humanwhocodes/retry@0.3.1': {} - '@humanwhocodes/retry@0.4.1': {} + '@humanwhocodes/retry@0.4.2': {} '@isaacs/cliui@8.0.2': dependencies: @@ -5369,7 +5312,7 @@ snapshots: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 - '@types/node': 22.10.6 + '@types/node': 22.13.14 '@types/yargs': 17.0.33 chalk: 4.1.2 @@ -5390,160 +5333,162 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.0 - '@lexical/clipboard@0.17.1': + '@lexical/clipboard@0.27.2': dependencies: - '@lexical/html': 0.17.1 - '@lexical/list': 0.17.1 - '@lexical/selection': 0.17.1 - '@lexical/utils': 0.17.1 - lexical: 0.17.1 + '@lexical/html': 0.27.2 + '@lexical/list': 0.27.2 + '@lexical/selection': 0.27.2 + '@lexical/utils': 0.27.2 + lexical: 0.27.2 - '@lexical/code@0.17.1': + '@lexical/code@0.27.2': dependencies: - '@lexical/utils': 0.17.1 - lexical: 0.17.1 - prismjs: 1.29.0 + '@lexical/utils': 0.27.2 + lexical: 0.27.2 + prismjs: 1.30.0 - '@lexical/devtools-core@0.17.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@lexical/devtools-core@0.27.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@lexical/html': 0.17.1 - '@lexical/link': 0.17.1 - '@lexical/mark': 0.17.1 - '@lexical/table': 0.17.1 - '@lexical/utils': 0.17.1 - lexical: 0.17.1 + '@lexical/html': 0.27.2 + '@lexical/link': 0.27.2 + '@lexical/mark': 0.27.2 + '@lexical/table': 0.27.2 + '@lexical/utils': 0.27.2 + lexical: 0.27.2 react: 19.0.0 react-dom: 19.0.0(react@19.0.0) - '@lexical/dragon@0.17.1': + '@lexical/dragon@0.27.2': dependencies: - lexical: 0.17.1 + lexical: 0.27.2 - '@lexical/hashtag@0.17.1': + '@lexical/hashtag@0.27.2': dependencies: - '@lexical/utils': 0.17.1 - lexical: 0.17.1 + '@lexical/utils': 0.27.2 + lexical: 0.27.2 - '@lexical/history@0.17.1': + '@lexical/history@0.27.2': dependencies: - '@lexical/utils': 0.17.1 - lexical: 0.17.1 + '@lexical/utils': 0.27.2 + lexical: 0.27.2 - '@lexical/html@0.17.1': + '@lexical/html@0.27.2': dependencies: - '@lexical/selection': 0.17.1 - '@lexical/utils': 0.17.1 - lexical: 0.17.1 + '@lexical/selection': 0.27.2 + '@lexical/utils': 0.27.2 + lexical: 0.27.2 - '@lexical/link@0.17.1': + '@lexical/link@0.27.2': dependencies: - '@lexical/utils': 0.17.1 - lexical: 0.17.1 + '@lexical/utils': 0.27.2 + lexical: 0.27.2 - '@lexical/list@0.17.1': + '@lexical/list@0.27.2': dependencies: - '@lexical/utils': 0.17.1 - lexical: 0.17.1 + '@lexical/utils': 0.27.2 + lexical: 0.27.2 - '@lexical/mark@0.17.1': + '@lexical/mark@0.27.2': dependencies: - '@lexical/utils': 0.17.1 - lexical: 0.17.1 + '@lexical/utils': 0.27.2 + lexical: 0.27.2 - '@lexical/markdown@0.17.1': + '@lexical/markdown@0.27.2': dependencies: - '@lexical/code': 0.17.1 - '@lexical/link': 0.17.1 - '@lexical/list': 0.17.1 - '@lexical/rich-text': 0.17.1 - '@lexical/text': 0.17.1 - '@lexical/utils': 0.17.1 - lexical: 0.17.1 + '@lexical/code': 0.27.2 + '@lexical/link': 0.27.2 + '@lexical/list': 0.27.2 + '@lexical/rich-text': 0.27.2 + '@lexical/text': 0.27.2 + '@lexical/utils': 0.27.2 + lexical: 0.27.2 - '@lexical/offset@0.17.1': + '@lexical/offset@0.27.2': dependencies: - lexical: 0.17.1 + lexical: 0.27.2 - '@lexical/overflow@0.17.1': + '@lexical/overflow@0.27.2': dependencies: - lexical: 0.17.1 + lexical: 0.27.2 - '@lexical/plain-text@0.17.1': + '@lexical/plain-text@0.27.2': dependencies: - '@lexical/clipboard': 0.17.1 - '@lexical/selection': 0.17.1 - '@lexical/utils': 0.17.1 - lexical: 0.17.1 + '@lexical/clipboard': 0.27.2 + '@lexical/selection': 0.27.2 + '@lexical/utils': 0.27.2 + lexical: 0.27.2 - '@lexical/react@0.17.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(yjs@13.6.22)': + '@lexical/react@0.27.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(yjs@13.6.22)': dependencies: - '@lexical/clipboard': 0.17.1 - '@lexical/code': 0.17.1 - '@lexical/devtools-core': 0.17.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@lexical/dragon': 0.17.1 - '@lexical/hashtag': 0.17.1 - '@lexical/history': 0.17.1 - '@lexical/link': 0.17.1 - '@lexical/list': 0.17.1 - '@lexical/mark': 0.17.1 - '@lexical/markdown': 0.17.1 - '@lexical/overflow': 0.17.1 - '@lexical/plain-text': 0.17.1 - '@lexical/rich-text': 0.17.1 - '@lexical/selection': 0.17.1 - '@lexical/table': 0.17.1 - '@lexical/text': 0.17.1 - '@lexical/utils': 0.17.1 - '@lexical/yjs': 0.17.1(yjs@13.6.22) - lexical: 0.17.1 + '@lexical/clipboard': 0.27.2 + '@lexical/code': 0.27.2 + '@lexical/devtools-core': 0.27.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@lexical/dragon': 0.27.2 + '@lexical/hashtag': 0.27.2 + '@lexical/history': 0.27.2 + '@lexical/link': 0.27.2 + '@lexical/list': 0.27.2 + '@lexical/mark': 0.27.2 + '@lexical/markdown': 0.27.2 + '@lexical/overflow': 0.27.2 + '@lexical/plain-text': 0.27.2 + '@lexical/rich-text': 0.27.2 + '@lexical/selection': 0.27.2 + '@lexical/table': 0.27.2 + '@lexical/text': 0.27.2 + '@lexical/utils': 0.27.2 + '@lexical/yjs': 0.27.2(yjs@13.6.22) + lexical: 0.27.2 react: 19.0.0 react-dom: 19.0.0(react@19.0.0) react-error-boundary: 3.1.4(react@19.0.0) transitivePeerDependencies: - yjs - '@lexical/rich-text@0.17.1': + '@lexical/rich-text@0.27.2': dependencies: - '@lexical/clipboard': 0.17.1 - '@lexical/selection': 0.17.1 - '@lexical/utils': 0.17.1 - lexical: 0.17.1 + '@lexical/clipboard': 0.27.2 + '@lexical/selection': 0.27.2 + '@lexical/utils': 0.27.2 + lexical: 0.27.2 - '@lexical/selection@0.17.1': + '@lexical/selection@0.27.2': dependencies: - lexical: 0.17.1 + lexical: 0.27.2 - '@lexical/table@0.17.1': + '@lexical/table@0.27.2': dependencies: - '@lexical/utils': 0.17.1 - lexical: 0.17.1 + '@lexical/clipboard': 0.27.2 + '@lexical/utils': 0.27.2 + lexical: 0.27.2 - '@lexical/text@0.17.1': + '@lexical/text@0.27.2': dependencies: - lexical: 0.17.1 + lexical: 0.27.2 - '@lexical/utils@0.17.1': + '@lexical/utils@0.27.2': dependencies: - '@lexical/list': 0.17.1 - '@lexical/selection': 0.17.1 - '@lexical/table': 0.17.1 - lexical: 0.17.1 + '@lexical/list': 0.27.2 + '@lexical/selection': 0.27.2 + '@lexical/table': 0.27.2 + lexical: 0.27.2 - '@lexical/yjs@0.17.1(yjs@13.6.22)': + '@lexical/yjs@0.27.2(yjs@13.6.22)': dependencies: - '@lexical/offset': 0.17.1 - lexical: 0.17.1 + '@lexical/offset': 0.27.2 + '@lexical/selection': 0.27.2 + lexical: 0.27.2 yjs: 13.6.22 '@lezer/common@1.2.3': {} - '@lezer/cpp@1.1.2': + '@lezer/cpp@1.1.3': dependencies: '@lezer/common': 1.2.3 '@lezer/highlight': 1.2.1 '@lezer/lr': 1.4.2 - '@lezer/css@1.1.9': + '@lezer/css@1.1.11': dependencies: '@lezer/common': 1.2.3 '@lezer/highlight': 1.2.1 @@ -5587,7 +5532,7 @@ snapshots: dependencies: '@lezer/common': 1.2.3 - '@lezer/markdown@1.4.0': + '@lezer/markdown@1.4.2': dependencies: '@lezer/common': 1.2.3 '@lezer/highlight': 1.2.1 @@ -5598,7 +5543,7 @@ snapshots: '@lezer/highlight': 1.2.1 '@lezer/lr': 1.4.2 - '@lezer/python@1.1.15': + '@lezer/python@1.1.16': dependencies: '@lezer/common': 1.2.3 '@lezer/highlight': 1.2.1 @@ -5628,35 +5573,35 @@ snapshots: '@lezer/highlight': 1.2.1 '@lezer/lr': 1.4.2 - '@lingui/babel-plugin-extract-messages@5.1.2': {} + '@lingui/babel-plugin-extract-messages@5.3.0': {} - '@lingui/babel-plugin-lingui-macro@5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3)': + '@lingui/babel-plugin-lingui-macro@5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2)': dependencies: - '@babel/core': 7.26.0 - '@babel/runtime': 7.26.0 - '@babel/types': 7.26.5 - '@lingui/conf': 5.1.2(typescript@5.7.3) - '@lingui/core': 5.1.2(@lingui/babel-plugin-lingui-macro@5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3))(babel-plugin-macros@3.1.0) - '@lingui/message-utils': 5.1.2 + '@babel/core': 7.26.10 + '@babel/runtime': 7.27.0 + '@babel/types': 7.27.0 + '@lingui/conf': 5.3.0(typescript@5.8.2) + '@lingui/core': 5.3.0(@lingui/babel-plugin-lingui-macro@5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2))(babel-plugin-macros@3.1.0) + '@lingui/message-utils': 5.3.0 optionalDependencies: babel-plugin-macros: 3.1.0 transitivePeerDependencies: - supports-color - typescript - '@lingui/cli@5.1.2(typescript@5.7.3)': - dependencies: - '@babel/core': 7.26.0 - '@babel/generator': 7.26.5 - '@babel/parser': 7.26.5 - '@babel/runtime': 7.26.0 - '@babel/types': 7.26.5 - '@lingui/babel-plugin-extract-messages': 5.1.2 - '@lingui/babel-plugin-lingui-macro': 5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3) - '@lingui/conf': 5.1.2(typescript@5.7.3) - '@lingui/core': 5.1.2(@lingui/babel-plugin-lingui-macro@5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3))(babel-plugin-macros@3.1.0) - '@lingui/format-po': 5.1.2(typescript@5.7.3) - '@lingui/message-utils': 5.1.2 + '@lingui/cli@5.3.0(typescript@5.8.2)': + dependencies: + '@babel/core': 7.26.10 + '@babel/generator': 7.27.0 + '@babel/parser': 7.27.0 + '@babel/runtime': 7.27.0 + '@babel/types': 7.27.0 + '@lingui/babel-plugin-extract-messages': 5.3.0 + '@lingui/babel-plugin-lingui-macro': 5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2) + '@lingui/conf': 5.3.0(typescript@5.8.2) + '@lingui/core': 5.3.0(@lingui/babel-plugin-lingui-macro@5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2))(babel-plugin-macros@3.1.0) + '@lingui/format-po': 5.3.0(typescript@5.8.2) + '@lingui/message-utils': 5.3.0 babel-plugin-macros: 3.1.0 chalk: 4.1.2 chokidar: 3.5.1 @@ -5674,164 +5619,170 @@ snapshots: pkg-up: 3.1.0 pofile: 1.1.4 pseudolocale: 2.1.0 - ramda: 0.27.2 source-map: 0.8.0-beta.0 transitivePeerDependencies: - supports-color - typescript - '@lingui/conf@5.1.2(typescript@5.7.3)': + '@lingui/conf@5.3.0(typescript@5.8.2)': dependencies: - '@babel/runtime': 7.26.0 + '@babel/runtime': 7.27.0 chalk: 4.1.2 - cosmiconfig: 8.3.6(typescript@5.7.3) + cosmiconfig: 8.3.6(typescript@5.8.2) jest-validate: 29.7.0 jiti: 1.21.7 lodash.get: 4.4.2 transitivePeerDependencies: - typescript - '@lingui/core@5.1.2(@lingui/babel-plugin-lingui-macro@5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3))(babel-plugin-macros@3.1.0)': + '@lingui/core@5.3.0(@lingui/babel-plugin-lingui-macro@5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2))(babel-plugin-macros@3.1.0)': dependencies: - '@babel/runtime': 7.26.0 - '@lingui/message-utils': 5.1.2 + '@babel/runtime': 7.27.0 + '@lingui/message-utils': 5.3.0 unraw: 3.0.0 optionalDependencies: - '@lingui/babel-plugin-lingui-macro': 5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3) + '@lingui/babel-plugin-lingui-macro': 5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2) babel-plugin-macros: 3.1.0 - '@lingui/format-po@5.1.2(typescript@5.7.3)': + '@lingui/format-po@5.3.0(typescript@5.8.2)': dependencies: - '@lingui/conf': 5.1.2(typescript@5.7.3) - '@lingui/message-utils': 5.1.2 + '@lingui/conf': 5.3.0(typescript@5.8.2) + '@lingui/message-utils': 5.3.0 date-fns: 3.6.0 pofile: 1.1.4 transitivePeerDependencies: - typescript - '@lingui/macro@5.1.2(@lingui/babel-plugin-lingui-macro@5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3))(babel-plugin-macros@3.1.0)(react@19.0.0)': + '@lingui/macro@5.3.0(@lingui/babel-plugin-lingui-macro@5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2))(babel-plugin-macros@3.1.0)(react@19.0.0)': dependencies: - '@lingui/core': 5.1.2(@lingui/babel-plugin-lingui-macro@5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3))(babel-plugin-macros@3.1.0) - '@lingui/react': 5.1.2(@lingui/babel-plugin-lingui-macro@5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3))(babel-plugin-macros@3.1.0)(react@19.0.0) + '@lingui/core': 5.3.0(@lingui/babel-plugin-lingui-macro@5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2))(babel-plugin-macros@3.1.0) + '@lingui/react': 5.3.0(@lingui/babel-plugin-lingui-macro@5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2))(babel-plugin-macros@3.1.0)(react@19.0.0) optionalDependencies: - '@lingui/babel-plugin-lingui-macro': 5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3) + '@lingui/babel-plugin-lingui-macro': 5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2) babel-plugin-macros: 3.1.0 transitivePeerDependencies: - react - '@lingui/message-utils@5.1.2': + '@lingui/message-utils@5.3.0': dependencies: '@messageformat/parser': 5.1.1 js-sha256: 0.10.1 - '@lingui/react@5.1.2(@lingui/babel-plugin-lingui-macro@5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3))(babel-plugin-macros@3.1.0)(react@19.0.0)': + '@lingui/react@5.3.0(@lingui/babel-plugin-lingui-macro@5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2))(babel-plugin-macros@3.1.0)(react@19.0.0)': dependencies: - '@babel/runtime': 7.26.0 - '@lingui/core': 5.1.2(@lingui/babel-plugin-lingui-macro@5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3))(babel-plugin-macros@3.1.0) + '@babel/runtime': 7.27.0 + '@lingui/core': 5.3.0(@lingui/babel-plugin-lingui-macro@5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2))(babel-plugin-macros@3.1.0) react: 19.0.0 optionalDependencies: - '@lingui/babel-plugin-lingui-macro': 5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3) + '@lingui/babel-plugin-lingui-macro': 5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2) babel-plugin-macros: 3.1.0 - '@lingui/swc-plugin@5.0.2(@lingui/core@5.1.2(@lingui/babel-plugin-lingui-macro@5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3))(babel-plugin-macros@3.1.0))': + '@lingui/swc-plugin@5.5.1(@lingui/core@5.3.0(@lingui/babel-plugin-lingui-macro@5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2))(babel-plugin-macros@3.1.0))': dependencies: - '@lingui/core': 5.1.2(@lingui/babel-plugin-lingui-macro@5.1.2(babel-plugin-macros@3.1.0)(typescript@5.7.3))(babel-plugin-macros@3.1.0) + '@lingui/core': 5.3.0(@lingui/babel-plugin-lingui-macro@5.3.0(babel-plugin-macros@3.1.0)(typescript@5.8.2))(babel-plugin-macros@3.1.0) - '@lingui/vite-plugin@5.1.2(typescript@5.7.3)(vite@6.0.9(@types/node@22.10.6)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.1))(yaml@2.7.0))': + '@lingui/vite-plugin@5.3.0(typescript@5.8.2)(vite@6.2.3(@types/node@22.13.14)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.3))(yaml@2.7.0))': dependencies: - '@lingui/cli': 5.1.2(typescript@5.7.3) - '@lingui/conf': 5.1.2(typescript@5.7.3) - vite: 6.0.9(@types/node@22.10.6)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.1))(yaml@2.7.0) + '@lingui/cli': 5.3.0(typescript@5.8.2) + '@lingui/conf': 5.3.0(typescript@5.8.2) + vite: 6.2.3(@types/node@22.13.14)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.3))(yaml@2.7.0) transitivePeerDependencies: - supports-color - typescript - '@mantine/charts@7.16.0(@mantine/core@7.16.0(@mantine/hooks@7.16.0(react@19.0.0))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(@mantine/hooks@7.16.0(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(recharts@2.15.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0))': + '@mantine/charts@7.17.3(@mantine/core@7.17.3(@mantine/hooks@7.17.3(react@19.0.0))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(@mantine/hooks@7.17.3(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(recharts@2.15.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0))': dependencies: - '@mantine/core': 7.16.0(@mantine/hooks@7.16.0(react@19.0.0))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@mantine/hooks': 7.16.0(react@19.0.0) + '@mantine/core': 7.17.3(@mantine/hooks@7.17.3(react@19.0.0))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@mantine/hooks': 7.17.3(react@19.0.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) - recharts: 2.15.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + recharts: 2.15.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@mantine/colors-generator@7.16.0(chroma-js@3.1.2)': + '@mantine/colors-generator@7.17.3(chroma-js@3.1.2)': dependencies: chroma-js: 3.1.2 - '@mantine/core@7.16.0(@mantine/hooks@7.16.0(react@19.0.0))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@mantine/core@7.17.3(@mantine/hooks@7.17.3(react@19.0.0))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: '@floating-ui/react': 0.26.28(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@mantine/hooks': 7.16.0(react@19.0.0) + '@mantine/hooks': 7.17.3(react@19.0.0) clsx: 2.1.1 react: 19.0.0 react-dom: 19.0.0(react@19.0.0) react-number-format: 5.4.3(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - react-remove-scroll: 2.6.2(@types/react@19.0.7)(react@19.0.0) - react-textarea-autosize: 8.5.6(@types/react@19.0.7)(react@19.0.0) - type-fest: 4.32.0 + react-remove-scroll: 2.6.3(@types/react@19.0.12)(react@19.0.0) + react-textarea-autosize: 8.5.6(@types/react@19.0.12)(react@19.0.0) + type-fest: 4.38.0 transitivePeerDependencies: - '@types/react' - '@mantine/dropzone@7.16.0(@mantine/core@7.16.0(@mantine/hooks@7.16.0(react@19.0.0))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(@mantine/hooks@7.16.0(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@mantine/dropzone@7.17.3(@mantine/core@7.17.3(@mantine/hooks@7.17.3(react@19.0.0))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(@mantine/hooks@7.17.3(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@mantine/core': 7.16.0(@mantine/hooks@7.16.0(react@19.0.0))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@mantine/hooks': 7.16.0(react@19.0.0) + '@mantine/core': 7.17.3(@mantine/hooks@7.17.3(react@19.0.0))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@mantine/hooks': 7.17.3(react@19.0.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) react-dropzone-esm: 15.2.0(react@19.0.0) - '@mantine/hooks@7.16.0(react@19.0.0)': + '@mantine/hooks@7.17.3(react@19.0.0)': dependencies: react: 19.0.0 - '@mantine/notifications@7.16.0(@mantine/core@7.16.0(@mantine/hooks@7.16.0(react@19.0.0))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(@mantine/hooks@7.16.0(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@mantine/modals@7.17.3(@mantine/core@7.17.3(@mantine/hooks@7.17.3(react@19.0.0))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(@mantine/hooks@7.17.3(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + dependencies: + '@mantine/core': 7.17.3(@mantine/hooks@7.17.3(react@19.0.0))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@mantine/hooks': 7.17.3(react@19.0.0) + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) + + '@mantine/notifications@7.17.3(@mantine/core@7.17.3(@mantine/hooks@7.17.3(react@19.0.0))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0))(@mantine/hooks@7.17.3(react@19.0.0))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@mantine/core': 7.16.0(@mantine/hooks@7.16.0(react@19.0.0))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@mantine/hooks': 7.16.0(react@19.0.0) - '@mantine/store': 7.16.0(react@19.0.0) + '@mantine/core': 7.17.3(@mantine/hooks@7.17.3(react@19.0.0))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@mantine/hooks': 7.17.3(react@19.0.0) + '@mantine/store': 7.17.3(react@19.0.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) react-transition-group: 4.4.5(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@mantine/store@7.16.0(react@19.0.0)': + '@mantine/store@7.17.3(react@19.0.0)': dependencies: react: 19.0.0 '@marijn/find-cluster-break@1.0.2': {} - '@mdxeditor/editor@3.20.0(@codemirror/language@6.10.8)(@lezer/highlight@1.2.1)(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(yjs@13.6.22)': + '@mdxeditor/editor@3.29.1(@codemirror/language@6.11.0)(@lezer/highlight@1.2.1)(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(yjs@13.6.22)': dependencies: '@codemirror/lang-markdown': 6.3.2 '@codemirror/language-data': 6.5.1 - '@codemirror/merge': 6.8.0 - '@codemirror/state': 6.5.1 - '@codemirror/view': 6.36.2 - '@codesandbox/sandpack-react': 2.19.10(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@lexical/clipboard': 0.17.1 - '@lexical/link': 0.17.1 - '@lexical/list': 0.17.1 - '@lexical/markdown': 0.17.1 - '@lexical/plain-text': 0.17.1 - '@lexical/react': 0.17.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(yjs@13.6.22) - '@lexical/rich-text': 0.17.1 - '@lexical/selection': 0.17.1 - '@lexical/utils': 0.17.1 + '@codemirror/merge': 6.10.0 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.36.4 + '@codesandbox/sandpack-react': 2.20.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@lexical/clipboard': 0.27.2 + '@lexical/link': 0.27.2 + '@lexical/list': 0.27.2 + '@lexical/markdown': 0.27.2 + '@lexical/plain-text': 0.27.2 + '@lexical/react': 0.27.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(yjs@13.6.22) + '@lexical/rich-text': 0.27.2 + '@lexical/selection': 0.27.2 + '@lexical/utils': 0.27.2 '@mdxeditor/gurx': 1.2.3(react-dom@19.0.0(react@19.0.0))(react@19.0.0) '@radix-ui/colors': 3.0.0 - '@radix-ui/react-dialog': 1.1.4(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-dialog': 1.1.6(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) '@radix-ui/react-icons': 1.3.2(react@19.0.0) - '@radix-ui/react-popover': 1.1.4(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-select': 2.1.4(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-toggle-group': 1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-toolbar': 1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-tooltip': 1.1.6(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-popover': 1.1.6(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-select': 2.1.6(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-toggle-group': 1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-toolbar': 1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-tooltip': 1.1.8(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) classnames: 2.5.1 - cm6-theme-basic-light: 0.2.0(@codemirror/language@6.10.8)(@codemirror/state@6.5.1)(@codemirror/view@6.36.2)(@lezer/highlight@1.2.1) + cm6-theme-basic-light: 0.2.0(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.36.4)(@lezer/highlight@1.2.1) codemirror: 6.0.1 downshift: 7.6.2(react@19.0.0) js-yaml: 4.1.0 - lexical: 0.17.1 - mdast-util-directive: 3.0.0 + lexical: 0.27.2 + mdast-util-directive: 3.1.0 mdast-util-from-markdown: 2.0.2 mdast-util-frontmatter: 2.0.1 mdast-util-gfm-strikethrough: 2.0.0 @@ -5843,9 +5794,9 @@ snapshots: micromark-extension-directive: 3.0.2 micromark-extension-frontmatter: 2.0.0 micromark-extension-gfm-strikethrough: 2.1.0 - micromark-extension-gfm-table: 2.1.0 + micromark-extension-gfm-table: 2.1.1 micromark-extension-gfm-task-list-item: 2.1.0 - micromark-extension-mdx-jsx: 3.0.1 + micromark-extension-mdx-jsx: 3.0.2 micromark-extension-mdx-md: 2.0.0 micromark-extension-mdxjs: 3.0.0 micromark-factory-space: 2.0.1 @@ -5882,7 +5833,7 @@ snapshots: '@nodelib/fs.walk@1.2.8': dependencies: '@nodelib/fs.scandir': 2.1.5 - fastq: 1.18.0 + fastq: 1.19.1 '@open-draft/deferred-promise@2.2.0': {} @@ -5897,355 +5848,355 @@ snapshots: '@radix-ui/primitive@1.1.1': {} - '@radix-ui/react-arrow@1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@radix-ui/react-arrow@1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 - '@types/react-dom': 19.0.3(@types/react@19.0.7) + '@types/react': 19.0.12 + '@types/react-dom': 19.0.4(@types/react@19.0.12) - '@radix-ui/react-collection@1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@radix-ui/react-collection@1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-context': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-slot': 1.1.1(@types/react@19.0.7)(react@19.0.0) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-context': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-slot': 1.1.2(@types/react@19.0.12)(react@19.0.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 - '@types/react-dom': 19.0.3(@types/react@19.0.7) + '@types/react': 19.0.12 + '@types/react-dom': 19.0.4(@types/react@19.0.12) - '@radix-ui/react-compose-refs@1.1.1(@types/react@19.0.7)(react@19.0.0)': + '@radix-ui/react-compose-refs@1.1.1(@types/react@19.0.12)(react@19.0.0)': dependencies: react: 19.0.0 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - '@radix-ui/react-context@1.1.1(@types/react@19.0.7)(react@19.0.0)': + '@radix-ui/react-context@1.1.1(@types/react@19.0.12)(react@19.0.0)': dependencies: react: 19.0.0 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - '@radix-ui/react-dialog@1.1.4(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@radix-ui/react-dialog@1.1.6(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-context': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-dismissable-layer': 1.1.3(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-focus-scope': 1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-id': 1.1.0(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-portal': 1.1.3(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-slot': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.0.7)(react@19.0.0) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-context': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-dismissable-layer': 1.1.5(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-focus-scope': 1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-id': 1.1.0(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-portal': 1.1.4(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-slot': 1.1.2(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.0.12)(react@19.0.0) aria-hidden: 1.2.4 react: 19.0.0 react-dom: 19.0.0(react@19.0.0) - react-remove-scroll: 2.6.2(@types/react@19.0.7)(react@19.0.0) + react-remove-scroll: 2.6.3(@types/react@19.0.12)(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 - '@types/react-dom': 19.0.3(@types/react@19.0.7) + '@types/react': 19.0.12 + '@types/react-dom': 19.0.4(@types/react@19.0.12) - '@radix-ui/react-direction@1.1.0(@types/react@19.0.7)(react@19.0.0)': + '@radix-ui/react-direction@1.1.0(@types/react@19.0.12)(react@19.0.0)': dependencies: react: 19.0.0 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - '@radix-ui/react-dismissable-layer@1.1.3(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@radix-ui/react-dismissable-layer@1.1.5(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@19.0.7)(react@19.0.0) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@19.0.12)(react@19.0.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 - '@types/react-dom': 19.0.3(@types/react@19.0.7) + '@types/react': 19.0.12 + '@types/react-dom': 19.0.4(@types/react@19.0.12) - '@radix-ui/react-focus-guards@1.1.1(@types/react@19.0.7)(react@19.0.0)': + '@radix-ui/react-focus-guards@1.1.1(@types/react@19.0.12)(react@19.0.0)': dependencies: react: 19.0.0 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - '@radix-ui/react-focus-scope@1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@radix-ui/react-focus-scope@1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.0.7)(react@19.0.0) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.0.12)(react@19.0.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 - '@types/react-dom': 19.0.3(@types/react@19.0.7) + '@types/react': 19.0.12 + '@types/react-dom': 19.0.4(@types/react@19.0.12) '@radix-ui/react-icons@1.3.2(react@19.0.0)': dependencies: react: 19.0.0 - '@radix-ui/react-id@1.1.0(@types/react@19.0.7)(react@19.0.0)': + '@radix-ui/react-id@1.1.0(@types/react@19.0.12)(react@19.0.0)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.0.7)(react@19.0.0) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.0.12)(react@19.0.0) react: 19.0.0 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - '@radix-ui/react-popover@1.1.4(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@radix-ui/react-popover@1.1.6(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-context': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-dismissable-layer': 1.1.3(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-focus-scope': 1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-id': 1.1.0(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-popper': 1.2.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-portal': 1.1.3(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-slot': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.0.7)(react@19.0.0) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-context': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-dismissable-layer': 1.1.5(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-focus-scope': 1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-id': 1.1.0(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-popper': 1.2.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-portal': 1.1.4(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-slot': 1.1.2(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.0.12)(react@19.0.0) aria-hidden: 1.2.4 react: 19.0.0 react-dom: 19.0.0(react@19.0.0) - react-remove-scroll: 2.6.2(@types/react@19.0.7)(react@19.0.0) + react-remove-scroll: 2.6.3(@types/react@19.0.12)(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 - '@types/react-dom': 19.0.3(@types/react@19.0.7) + '@types/react': 19.0.12 + '@types/react-dom': 19.0.4(@types/react@19.0.12) - '@radix-ui/react-popper@1.2.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@radix-ui/react-popper@1.2.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: '@floating-ui/react-dom': 2.1.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-arrow': 1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-context': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-use-rect': 1.1.0(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-use-size': 1.1.0(@types/react@19.0.7)(react@19.0.0) + '@radix-ui/react-arrow': 1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-context': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-use-rect': 1.1.0(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-use-size': 1.1.0(@types/react@19.0.12)(react@19.0.0) '@radix-ui/rect': 1.1.0 react: 19.0.0 react-dom: 19.0.0(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 - '@types/react-dom': 19.0.3(@types/react@19.0.7) + '@types/react': 19.0.12 + '@types/react-dom': 19.0.4(@types/react@19.0.12) - '@radix-ui/react-portal@1.1.3(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@radix-ui/react-portal@1.1.4(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.0.7)(react@19.0.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.0.12)(react@19.0.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 - '@types/react-dom': 19.0.3(@types/react@19.0.7) + '@types/react': 19.0.12 + '@types/react-dom': 19.0.4(@types/react@19.0.12) - '@radix-ui/react-presence@1.1.2(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@radix-ui/react-presence@1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.0.7)(react@19.0.0) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.0.12)(react@19.0.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 - '@types/react-dom': 19.0.3(@types/react@19.0.7) + '@types/react': 19.0.12 + '@types/react-dom': 19.0.4(@types/react@19.0.12) - '@radix-ui/react-primitive@2.0.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@radix-ui/react-primitive@2.0.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@radix-ui/react-slot': 1.1.1(@types/react@19.0.7)(react@19.0.0) + '@radix-ui/react-slot': 1.1.2(@types/react@19.0.12)(react@19.0.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 - '@types/react-dom': 19.0.3(@types/react@19.0.7) + '@types/react': 19.0.12 + '@types/react-dom': 19.0.4(@types/react@19.0.12) - '@radix-ui/react-roving-focus@1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@radix-ui/react-roving-focus@1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-collection': 1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-context': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-direction': 1.1.0(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-id': 1.1.0(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.0.7)(react@19.0.0) + '@radix-ui/react-collection': 1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-context': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-direction': 1.1.0(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-id': 1.1.0(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.0.12)(react@19.0.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 - '@types/react-dom': 19.0.3(@types/react@19.0.7) + '@types/react': 19.0.12 + '@types/react-dom': 19.0.4(@types/react@19.0.12) - '@radix-ui/react-select@2.1.4(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@radix-ui/react-select@2.1.6(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: '@radix-ui/number': 1.1.0 '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-collection': 1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-context': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-direction': 1.1.0(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-dismissable-layer': 1.1.3(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-focus-scope': 1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-id': 1.1.0(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-popper': 1.2.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-portal': 1.1.3(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-slot': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-use-previous': 1.1.0(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-visually-hidden': 1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-collection': 1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-context': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-direction': 1.1.0(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-dismissable-layer': 1.1.5(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-focus-guards': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-focus-scope': 1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-id': 1.1.0(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-popper': 1.2.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-portal': 1.1.4(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-slot': 1.1.2(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-use-previous': 1.1.0(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-visually-hidden': 1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) aria-hidden: 1.2.4 react: 19.0.0 react-dom: 19.0.0(react@19.0.0) - react-remove-scroll: 2.6.2(@types/react@19.0.7)(react@19.0.0) + react-remove-scroll: 2.6.3(@types/react@19.0.12)(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 - '@types/react-dom': 19.0.3(@types/react@19.0.7) + '@types/react': 19.0.12 + '@types/react-dom': 19.0.4(@types/react@19.0.12) - '@radix-ui/react-separator@1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@radix-ui/react-separator@1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 - '@types/react-dom': 19.0.3(@types/react@19.0.7) + '@types/react': 19.0.12 + '@types/react-dom': 19.0.4(@types/react@19.0.12) - '@radix-ui/react-slot@1.1.1(@types/react@19.0.7)(react@19.0.0)': + '@radix-ui/react-slot@1.1.2(@types/react@19.0.12)(react@19.0.0)': dependencies: - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.7)(react@19.0.0) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.12)(react@19.0.0) react: 19.0.0 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - '@radix-ui/react-toggle-group@1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@radix-ui/react-toggle-group@1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-context': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-direction': 1.1.0(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-roving-focus': 1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-toggle': 1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.0.7)(react@19.0.0) + '@radix-ui/react-context': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-direction': 1.1.0(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-roving-focus': 1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-toggle': 1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.0.12)(react@19.0.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 - '@types/react-dom': 19.0.3(@types/react@19.0.7) + '@types/react': 19.0.12 + '@types/react-dom': 19.0.4(@types/react@19.0.12) - '@radix-ui/react-toggle@1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@radix-ui/react-toggle@1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.0.7)(react@19.0.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.0.12)(react@19.0.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 - '@types/react-dom': 19.0.3(@types/react@19.0.7) + '@types/react': 19.0.12 + '@types/react-dom': 19.0.4(@types/react@19.0.12) - '@radix-ui/react-toolbar@1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@radix-ui/react-toolbar@1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-context': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-direction': 1.1.0(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-roving-focus': 1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-separator': 1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-toggle-group': 1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-context': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-direction': 1.1.0(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-roving-focus': 1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-separator': 1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-toggle-group': 1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 - '@types/react-dom': 19.0.3(@types/react@19.0.7) + '@types/react': 19.0.12 + '@types/react-dom': 19.0.4(@types/react@19.0.12) - '@radix-ui/react-tooltip@1.1.6(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@radix-ui/react-tooltip@1.1.8(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: '@radix-ui/primitive': 1.1.1 - '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-context': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-dismissable-layer': 1.1.3(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-id': 1.1.0(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-popper': 1.2.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-portal': 1.1.3(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - '@radix-ui/react-slot': 1.1.1(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.0.7)(react@19.0.0) - '@radix-ui/react-visually-hidden': 1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-context': 1.1.1(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-dismissable-layer': 1.1.5(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-id': 1.1.0(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-popper': 1.2.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-portal': 1.1.4(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-presence': 1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-slot': 1.1.2(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@19.0.12)(react@19.0.0) + '@radix-ui/react-visually-hidden': 1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 - '@types/react-dom': 19.0.3(@types/react@19.0.7) + '@types/react': 19.0.12 + '@types/react-dom': 19.0.4(@types/react@19.0.12) - '@radix-ui/react-use-callback-ref@1.1.0(@types/react@19.0.7)(react@19.0.0)': + '@radix-ui/react-use-callback-ref@1.1.0(@types/react@19.0.12)(react@19.0.0)': dependencies: react: 19.0.0 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - '@radix-ui/react-use-controllable-state@1.1.0(@types/react@19.0.7)(react@19.0.0)': + '@radix-ui/react-use-controllable-state@1.1.0(@types/react@19.0.12)(react@19.0.0)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.0.7)(react@19.0.0) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.0.12)(react@19.0.0) react: 19.0.0 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - '@radix-ui/react-use-escape-keydown@1.1.0(@types/react@19.0.7)(react@19.0.0)': + '@radix-ui/react-use-escape-keydown@1.1.0(@types/react@19.0.12)(react@19.0.0)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.0.7)(react@19.0.0) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@19.0.12)(react@19.0.0) react: 19.0.0 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - '@radix-ui/react-use-layout-effect@1.1.0(@types/react@19.0.7)(react@19.0.0)': + '@radix-ui/react-use-layout-effect@1.1.0(@types/react@19.0.12)(react@19.0.0)': dependencies: react: 19.0.0 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - '@radix-ui/react-use-previous@1.1.0(@types/react@19.0.7)(react@19.0.0)': + '@radix-ui/react-use-previous@1.1.0(@types/react@19.0.12)(react@19.0.0)': dependencies: react: 19.0.0 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - '@radix-ui/react-use-rect@1.1.0(@types/react@19.0.7)(react@19.0.0)': + '@radix-ui/react-use-rect@1.1.0(@types/react@19.0.12)(react@19.0.0)': dependencies: '@radix-ui/rect': 1.1.0 react: 19.0.0 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - '@radix-ui/react-use-size@1.1.0(@types/react@19.0.7)(react@19.0.0)': + '@radix-ui/react-use-size@1.1.0(@types/react@19.0.12)(react@19.0.0)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.0.7)(react@19.0.0) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@19.0.12)(react@19.0.0) react: 19.0.0 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - '@radix-ui/react-visually-hidden@1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': + '@radix-ui/react-visually-hidden@1.1.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@radix-ui/react-primitive': 2.0.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@radix-ui/react-primitive': 2.0.2(@types/react-dom@19.0.4(@types/react@19.0.12))(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react: 19.0.0 react-dom: 19.0.0(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 - '@types/react-dom': 19.0.3(@types/react@19.0.7) + '@types/react': 19.0.12 + '@types/react-dom': 19.0.4(@types/react@19.0.12) '@radix-ui/rect@1.1.0': {} @@ -6259,197 +6210,199 @@ snapshots: dependencies: react: 19.0.0 - '@react-pdf/fns@3.0.0': - dependencies: - '@babel/runtime': 7.26.0 + '@react-pdf/fns@3.1.2': {} - '@react-pdf/font@3.0.1': + '@react-pdf/font@4.0.2': dependencies: - '@babel/runtime': 7.26.0 - '@react-pdf/types': 2.7.0 + '@react-pdf/pdfkit': 4.0.3 + '@react-pdf/types': 2.9.0 fontkit: 2.0.4 is-url: 1.2.4 - '@react-pdf/image@3.0.1': + '@react-pdf/image@3.0.3': dependencies: - '@babel/runtime': 7.26.0 '@react-pdf/png-js': 3.0.0 jay-peg: 1.1.1 - '@react-pdf/layout@4.2.0': + '@react-pdf/layout@4.4.0': dependencies: - '@babel/runtime': 7.26.0 - '@react-pdf/fns': 3.0.0 - '@react-pdf/image': 3.0.1 - '@react-pdf/pdfkit': 4.0.0 - '@react-pdf/primitives': 4.0.0 - '@react-pdf/stylesheet': 5.2.0 - '@react-pdf/textkit': 5.0.1 - '@react-pdf/types': 2.7.0 + '@react-pdf/fns': 3.1.2 + '@react-pdf/image': 3.0.3 + '@react-pdf/primitives': 4.1.1 + '@react-pdf/stylesheet': 6.1.0 + '@react-pdf/textkit': 6.0.0 + '@react-pdf/types': 2.9.0 emoji-regex: 10.4.0 queue: 6.0.2 yoga-layout: 3.2.1 - '@react-pdf/pdfkit@4.0.0': + '@react-pdf/pdfkit@4.0.3': dependencies: - '@babel/runtime': 7.26.0 + '@babel/runtime': 7.27.0 '@react-pdf/png-js': 3.0.0 browserify-zlib: 0.2.0 crypto-js: 4.2.0 fontkit: 2.0.4 jay-peg: 1.1.1 + linebreak: 1.1.0 vite-compatible-readable-stream: 3.6.1 '@react-pdf/png-js@3.0.0': dependencies: browserify-zlib: 0.2.0 - '@react-pdf/primitives@4.0.0': {} + '@react-pdf/primitives@4.1.1': {} - '@react-pdf/reconciler@1.1.3(react@19.0.0)': + '@react-pdf/reconciler@1.1.4(react@19.0.0)': dependencies: object-assign: 4.1.1 react: 19.0.0 scheduler: 0.25.0-rc-603e6108-20241029 - '@react-pdf/render@4.0.2': + '@react-pdf/render@4.3.0': dependencies: - '@babel/runtime': 7.26.0 - '@react-pdf/fns': 3.0.0 - '@react-pdf/primitives': 4.0.0 - '@react-pdf/textkit': 5.0.1 - '@react-pdf/types': 2.7.0 + '@babel/runtime': 7.27.0 + '@react-pdf/fns': 3.1.2 + '@react-pdf/primitives': 4.1.1 + '@react-pdf/textkit': 6.0.0 + '@react-pdf/types': 2.9.0 abs-svg-path: 0.1.1 color-string: 1.9.1 normalize-svg-path: 1.1.0 parse-svg-path: 0.1.2 svg-arc-to-cubic-bezier: 3.2.0 - '@react-pdf/renderer@4.1.6(react@19.0.0)': - dependencies: - '@babel/runtime': 7.26.0 - '@react-pdf/font': 3.0.1 - '@react-pdf/layout': 4.2.0 - '@react-pdf/pdfkit': 4.0.0 - '@react-pdf/primitives': 4.0.0 - '@react-pdf/reconciler': 1.1.3(react@19.0.0) - '@react-pdf/render': 4.0.2 - '@react-pdf/types': 2.7.0 + '@react-pdf/renderer@4.3.0(react@19.0.0)': + dependencies: + '@babel/runtime': 7.27.0 + '@react-pdf/fns': 3.1.2 + '@react-pdf/font': 4.0.2 + '@react-pdf/layout': 4.4.0 + '@react-pdf/pdfkit': 4.0.3 + '@react-pdf/primitives': 4.1.1 + '@react-pdf/reconciler': 1.1.4(react@19.0.0) + '@react-pdf/render': 4.3.0 + '@react-pdf/types': 2.9.0 events: 3.3.0 object-assign: 4.1.1 prop-types: 15.8.1 queue: 6.0.2 react: 19.0.0 - '@react-pdf/stylesheet@5.2.0': + '@react-pdf/stylesheet@6.1.0': dependencies: - '@babel/runtime': 7.26.0 - '@react-pdf/fns': 3.0.0 - '@react-pdf/types': 2.7.0 + '@react-pdf/fns': 3.1.2 + '@react-pdf/types': 2.9.0 color-string: 1.9.1 hsl-to-hex: 1.0.0 media-engine: 1.0.3 postcss-value-parser: 4.2.0 - '@react-pdf/textkit@5.0.1': + '@react-pdf/textkit@6.0.0': dependencies: - '@babel/runtime': 7.26.0 - '@react-pdf/fns': 3.0.0 + '@react-pdf/fns': 3.1.2 bidi-js: 1.0.3 hyphen: 1.10.6 unicode-properties: 1.4.1 - '@react-pdf/types@2.7.0': {} + '@react-pdf/types@2.9.0': + dependencies: + '@react-pdf/font': 4.0.2 + '@react-pdf/primitives': 4.1.1 + '@react-pdf/stylesheet': 6.1.0 - '@rollup/rollup-android-arm-eabi@4.34.8': + '@rollup/rollup-android-arm-eabi@4.37.0': optional: true - '@rollup/rollup-android-arm64@4.34.8': + '@rollup/rollup-android-arm64@4.37.0': optional: true - '@rollup/rollup-darwin-arm64@4.34.8': + '@rollup/rollup-darwin-arm64@4.37.0': optional: true - '@rollup/rollup-darwin-x64@4.34.8': + '@rollup/rollup-darwin-x64@4.37.0': optional: true - '@rollup/rollup-freebsd-arm64@4.34.8': + '@rollup/rollup-freebsd-arm64@4.37.0': optional: true - '@rollup/rollup-freebsd-x64@4.34.8': + '@rollup/rollup-freebsd-x64@4.37.0': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.34.8': + '@rollup/rollup-linux-arm-gnueabihf@4.37.0': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.34.8': + '@rollup/rollup-linux-arm-musleabihf@4.37.0': optional: true - '@rollup/rollup-linux-arm64-gnu@4.34.8': + '@rollup/rollup-linux-arm64-gnu@4.37.0': optional: true - '@rollup/rollup-linux-arm64-musl@4.34.8': + '@rollup/rollup-linux-arm64-musl@4.37.0': optional: true - '@rollup/rollup-linux-loongarch64-gnu@4.34.8': + '@rollup/rollup-linux-loongarch64-gnu@4.37.0': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.34.8': + '@rollup/rollup-linux-powerpc64le-gnu@4.37.0': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.34.8': + '@rollup/rollup-linux-riscv64-gnu@4.37.0': optional: true - '@rollup/rollup-linux-s390x-gnu@4.34.8': + '@rollup/rollup-linux-riscv64-musl@4.37.0': optional: true - '@rollup/rollup-linux-x64-gnu@4.34.8': + '@rollup/rollup-linux-s390x-gnu@4.37.0': optional: true - '@rollup/rollup-linux-x64-musl@4.34.8': + '@rollup/rollup-linux-x64-gnu@4.37.0': optional: true - '@rollup/rollup-win32-arm64-msvc@4.34.8': + '@rollup/rollup-linux-x64-musl@4.37.0': optional: true - '@rollup/rollup-win32-ia32-msvc@4.34.8': + '@rollup/rollup-win32-arm64-msvc@4.37.0': optional: true - '@rollup/rollup-win32-x64-msvc@4.34.8': + '@rollup/rollup-win32-ia32-msvc@4.37.0': optional: true - '@sentry-internal/browser-utils@8.48.0': + '@rollup/rollup-win32-x64-msvc@4.37.0': + optional: true + + '@sentry-internal/browser-utils@8.55.0': dependencies: - '@sentry/core': 8.48.0 + '@sentry/core': 8.55.0 - '@sentry-internal/feedback@8.48.0': + '@sentry-internal/feedback@8.55.0': dependencies: - '@sentry/core': 8.48.0 + '@sentry/core': 8.55.0 - '@sentry-internal/replay-canvas@8.48.0': + '@sentry-internal/replay-canvas@8.55.0': dependencies: - '@sentry-internal/replay': 8.48.0 - '@sentry/core': 8.48.0 + '@sentry-internal/replay': 8.55.0 + '@sentry/core': 8.55.0 - '@sentry-internal/replay@8.48.0': + '@sentry-internal/replay@8.55.0': dependencies: - '@sentry-internal/browser-utils': 8.48.0 - '@sentry/core': 8.48.0 + '@sentry-internal/browser-utils': 8.55.0 + '@sentry/core': 8.55.0 - '@sentry/browser@8.48.0': + '@sentry/browser@8.55.0': dependencies: - '@sentry-internal/browser-utils': 8.48.0 - '@sentry-internal/feedback': 8.48.0 - '@sentry-internal/replay': 8.48.0 - '@sentry-internal/replay-canvas': 8.48.0 - '@sentry/core': 8.48.0 + '@sentry-internal/browser-utils': 8.55.0 + '@sentry-internal/feedback': 8.55.0 + '@sentry-internal/replay': 8.55.0 + '@sentry-internal/replay-canvas': 8.55.0 + '@sentry/core': 8.55.0 - '@sentry/core@8.48.0': {} + '@sentry/core@8.55.0': {} - '@sentry/react@8.48.0(react@19.0.0)': + '@sentry/react@8.55.0(react@19.0.0)': dependencies: - '@sentry/browser': 8.48.0 - '@sentry/core': 8.48.0 + '@sentry/browser': 8.55.0 + '@sentry/core': 8.55.0 hoist-non-react-statics: 3.3.2 react: 19.0.0 @@ -6457,51 +6410,51 @@ snapshots: '@stitches/core@1.2.8': {} - '@swc/core-darwin-arm64@1.10.7': + '@swc/core-darwin-arm64@1.11.13': optional: true - '@swc/core-darwin-x64@1.10.7': + '@swc/core-darwin-x64@1.11.13': optional: true - '@swc/core-linux-arm-gnueabihf@1.10.7': + '@swc/core-linux-arm-gnueabihf@1.11.13': optional: true - '@swc/core-linux-arm64-gnu@1.10.7': + '@swc/core-linux-arm64-gnu@1.11.13': optional: true - '@swc/core-linux-arm64-musl@1.10.7': + '@swc/core-linux-arm64-musl@1.11.13': optional: true - '@swc/core-linux-x64-gnu@1.10.7': + '@swc/core-linux-x64-gnu@1.11.13': optional: true - '@swc/core-linux-x64-musl@1.10.7': + '@swc/core-linux-x64-musl@1.11.13': optional: true - '@swc/core-win32-arm64-msvc@1.10.7': + '@swc/core-win32-arm64-msvc@1.11.13': optional: true - '@swc/core-win32-ia32-msvc@1.10.7': + '@swc/core-win32-ia32-msvc@1.11.13': optional: true - '@swc/core-win32-x64-msvc@1.10.7': + '@swc/core-win32-x64-msvc@1.11.13': optional: true - '@swc/core@1.10.7(@swc/helpers@0.5.15)': + '@swc/core@1.11.13(@swc/helpers@0.5.15)': dependencies: '@swc/counter': 0.1.3 - '@swc/types': 0.1.17 + '@swc/types': 0.1.20 optionalDependencies: - '@swc/core-darwin-arm64': 1.10.7 - '@swc/core-darwin-x64': 1.10.7 - '@swc/core-linux-arm-gnueabihf': 1.10.7 - '@swc/core-linux-arm64-gnu': 1.10.7 - '@swc/core-linux-arm64-musl': 1.10.7 - '@swc/core-linux-x64-gnu': 1.10.7 - '@swc/core-linux-x64-musl': 1.10.7 - '@swc/core-win32-arm64-msvc': 1.10.7 - '@swc/core-win32-ia32-msvc': 1.10.7 - '@swc/core-win32-x64-msvc': 1.10.7 + '@swc/core-darwin-arm64': 1.11.13 + '@swc/core-darwin-x64': 1.11.13 + '@swc/core-linux-arm-gnueabihf': 1.11.13 + '@swc/core-linux-arm64-gnu': 1.11.13 + '@swc/core-linux-arm64-musl': 1.11.13 + '@swc/core-linux-x64-gnu': 1.11.13 + '@swc/core-linux-x64-musl': 1.11.13 + '@swc/core-win32-arm64-msvc': 1.11.13 + '@swc/core-win32-ia32-msvc': 1.11.13 + '@swc/core-win32-x64-msvc': 1.11.13 '@swc/helpers': 0.5.15 '@swc/counter@0.1.3': {} @@ -6510,16 +6463,16 @@ snapshots: dependencies: tslib: 2.8.1 - '@swc/types@0.1.17': + '@swc/types@0.1.20': dependencies: '@swc/counter': 0.1.3 - '@tabler/icons-react@3.28.1(react@19.0.0)': + '@tabler/icons-react@3.31.0(react@19.0.0)': dependencies: - '@tabler/icons': 3.28.1 + '@tabler/icons': 3.31.0 react: 19.0.0 - '@tabler/icons@3.28.1': {} + '@tabler/icons@3.31.0': {} '@tailwindcss/typography@0.5.16(tailwindcss@3.4.17)': dependencies: @@ -6529,37 +6482,33 @@ snapshots: postcss-selector-parser: 6.0.10 tailwindcss: 3.4.17 - '@tanstack/query-core@5.64.1': {} + '@tanstack/query-core@5.69.2': {} - '@tanstack/react-query@5.64.1(react@19.0.0)': + '@tanstack/react-query@5.69.2(react@19.0.0)': dependencies: - '@tanstack/query-core': 5.64.1 + '@tanstack/query-core': 5.69.2 react: 19.0.0 - '@types/acorn@4.0.6': - dependencies: - '@types/estree': 1.0.6 - '@types/babel__core@7.20.5': dependencies: - '@babel/parser': 7.26.5 - '@babel/types': 7.26.5 + '@babel/parser': 7.27.0 + '@babel/types': 7.27.0 '@types/babel__generator': 7.6.8 '@types/babel__template': 7.4.4 - '@types/babel__traverse': 7.20.6 + '@types/babel__traverse': 7.20.7 '@types/babel__generator@7.6.8': dependencies: - '@babel/types': 7.26.5 + '@babel/types': 7.27.0 '@types/babel__template@7.4.4': dependencies: - '@babel/parser': 7.26.5 - '@babel/types': 7.26.5 + '@babel/parser': 7.27.0 + '@babel/types': 7.27.0 - '@types/babel__traverse@7.20.6': + '@types/babel__traverse@7.20.7': dependencies: - '@babel/types': 7.26.5 + '@babel/types': 7.27.0 '@types/cookie@0.6.0': {} @@ -6573,15 +6522,15 @@ snapshots: dependencies: '@types/d3-color': 3.1.3 - '@types/d3-path@3.1.0': {} + '@types/d3-path@3.1.1': {} - '@types/d3-scale@4.0.8': + '@types/d3-scale@4.0.9': dependencies: '@types/d3-time': 3.0.4 '@types/d3-shape@3.1.7': dependencies: - '@types/d3-path': 3.1.0 + '@types/d3-path': 3.1.1 '@types/d3-time@3.0.4': {} @@ -6589,16 +6538,18 @@ snapshots: '@types/debug@4.1.12': dependencies: - '@types/ms': 0.7.34 + '@types/ms': 2.1.0 '@types/diff-match-patch@1.0.36': {} '@types/estree-jsx@1.0.5': dependencies: - '@types/estree': 1.0.6 + '@types/estree': 1.0.7 '@types/estree@1.0.6': {} + '@types/estree@1.0.7': {} + '@types/hast@3.0.4': dependencies: '@types/unist': 3.0.3 @@ -6615,25 +6566,25 @@ snapshots: '@types/json-schema@7.0.15': {} - '@types/lodash@4.17.14': {} + '@types/lodash@4.17.16': {} '@types/mdast@4.0.4': dependencies: '@types/unist': 3.0.3 - '@types/ms@0.7.34': {} + '@types/ms@2.1.0': {} - '@types/node@22.10.6': + '@types/node@22.13.14': dependencies: undici-types: 6.20.0 '@types/parse-json@4.0.2': {} - '@types/react-dom@19.0.3(@types/react@19.0.7)': + '@types/react-dom@19.0.4(@types/react@19.0.12)': dependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - '@types/react@19.0.7': + '@types/react@19.0.12': dependencies: csstype: 3.1.3 @@ -6649,122 +6600,122 @@ snapshots: dependencies: '@types/yargs-parser': 21.0.3 - '@typescript-eslint/eslint-plugin@8.20.0(@typescript-eslint/parser@8.20.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.7.3))(eslint@9.16.0(jiti@1.21.7))(typescript@5.7.3)': + '@typescript-eslint/eslint-plugin@8.28.0(@typescript-eslint/parser@8.28.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.8.2))(eslint@9.16.0(jiti@1.21.7))(typescript@5.8.2)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.20.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.7.3) - '@typescript-eslint/scope-manager': 8.20.0 - '@typescript-eslint/type-utils': 8.20.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.7.3) - '@typescript-eslint/utils': 8.20.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.7.3) - '@typescript-eslint/visitor-keys': 8.20.0 + '@typescript-eslint/parser': 8.28.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.8.2) + '@typescript-eslint/scope-manager': 8.28.0 + '@typescript-eslint/type-utils': 8.28.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.8.2) + '@typescript-eslint/utils': 8.28.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.8.2) + '@typescript-eslint/visitor-keys': 8.28.0 eslint: 9.16.0(jiti@1.21.7) graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 - ts-api-utils: 2.0.0(typescript@5.7.3) - typescript: 5.7.3 + ts-api-utils: 2.1.0(typescript@5.8.2) + typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.20.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.7.3)': + '@typescript-eslint/parser@8.28.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.8.2)': dependencies: - '@typescript-eslint/scope-manager': 8.20.0 - '@typescript-eslint/types': 8.20.0 - '@typescript-eslint/typescript-estree': 8.20.0(typescript@5.7.3) - '@typescript-eslint/visitor-keys': 8.20.0 + '@typescript-eslint/scope-manager': 8.28.0 + '@typescript-eslint/types': 8.28.0 + '@typescript-eslint/typescript-estree': 8.28.0(typescript@5.8.2) + '@typescript-eslint/visitor-keys': 8.28.0 debug: 4.4.0 eslint: 9.16.0(jiti@1.21.7) - typescript: 5.7.3 + typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@8.20.0': + '@typescript-eslint/scope-manager@8.28.0': dependencies: - '@typescript-eslint/types': 8.20.0 - '@typescript-eslint/visitor-keys': 8.20.0 + '@typescript-eslint/types': 8.28.0 + '@typescript-eslint/visitor-keys': 8.28.0 - '@typescript-eslint/type-utils@8.20.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.7.3)': + '@typescript-eslint/type-utils@8.28.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.8.2)': dependencies: - '@typescript-eslint/typescript-estree': 8.20.0(typescript@5.7.3) - '@typescript-eslint/utils': 8.20.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.7.3) + '@typescript-eslint/typescript-estree': 8.28.0(typescript@5.8.2) + '@typescript-eslint/utils': 8.28.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.8.2) debug: 4.4.0 eslint: 9.16.0(jiti@1.21.7) - ts-api-utils: 2.0.0(typescript@5.7.3) - typescript: 5.7.3 + ts-api-utils: 2.1.0(typescript@5.8.2) + typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/types@8.20.0': {} + '@typescript-eslint/types@8.28.0': {} - '@typescript-eslint/typescript-estree@8.20.0(typescript@5.7.3)': + '@typescript-eslint/typescript-estree@8.28.0(typescript@5.8.2)': dependencies: - '@typescript-eslint/types': 8.20.0 - '@typescript-eslint/visitor-keys': 8.20.0 + '@typescript-eslint/types': 8.28.0 + '@typescript-eslint/visitor-keys': 8.28.0 debug: 4.4.0 fast-glob: 3.3.3 is-glob: 4.0.3 minimatch: 9.0.5 - semver: 7.6.3 - ts-api-utils: 2.0.0(typescript@5.7.3) - typescript: 5.7.3 + semver: 7.7.1 + ts-api-utils: 2.1.0(typescript@5.8.2) + typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.20.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.7.3)': + '@typescript-eslint/utils@8.28.0(eslint@9.16.0(jiti@1.21.7))(typescript@5.8.2)': dependencies: - '@eslint-community/eslint-utils': 4.4.1(eslint@9.16.0(jiti@1.21.7)) - '@typescript-eslint/scope-manager': 8.20.0 - '@typescript-eslint/types': 8.20.0 - '@typescript-eslint/typescript-estree': 8.20.0(typescript@5.7.3) + '@eslint-community/eslint-utils': 4.5.1(eslint@9.16.0(jiti@1.21.7)) + '@typescript-eslint/scope-manager': 8.28.0 + '@typescript-eslint/types': 8.28.0 + '@typescript-eslint/typescript-estree': 8.28.0(typescript@5.8.2) eslint: 9.16.0(jiti@1.21.7) - typescript: 5.7.3 + typescript: 5.8.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/visitor-keys@8.20.0': + '@typescript-eslint/visitor-keys@8.28.0': dependencies: - '@typescript-eslint/types': 8.20.0 + '@typescript-eslint/types': 8.28.0 eslint-visitor-keys: 4.2.0 - '@ungap/structured-clone@1.2.1': {} + '@ungap/structured-clone@1.3.0': {} - '@vitejs/plugin-react-swc@3.7.2(@swc/helpers@0.5.15)(vite@6.0.9(@types/node@22.10.6)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.1))(yaml@2.7.0))': + '@vitejs/plugin-react-swc@3.8.1(@swc/helpers@0.5.15)(vite@6.2.3(@types/node@22.13.14)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.3))(yaml@2.7.0))': dependencies: - '@swc/core': 1.10.7(@swc/helpers@0.5.15) - vite: 6.0.9(@types/node@22.10.6)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.1))(yaml@2.7.0) + '@swc/core': 1.11.13(@swc/helpers@0.5.15) + vite: 6.2.3(@types/node@22.13.14)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.3))(yaml@2.7.0) transitivePeerDependencies: - '@swc/helpers' - '@vitejs/plugin-react@4.3.4(vite@6.0.9(@types/node@22.10.6)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.1))(yaml@2.7.0))': + '@vitejs/plugin-react@4.3.4(vite@6.2.3(@types/node@22.13.14)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.3))(yaml@2.7.0))': dependencies: - '@babel/core': 7.26.0 - '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.0) - '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.0) + '@babel/core': 7.26.10 + '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.10) + '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.10) '@types/babel__core': 7.20.5 react-refresh: 0.14.2 - vite: 6.0.9(@types/node@22.10.6)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.1))(yaml@2.7.0) + vite: 6.2.3(@types/node@22.13.14)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.3))(yaml@2.7.0) transitivePeerDependencies: - supports-color abs-svg-path@0.1.1: {} - acorn-jsx@5.3.2(acorn@8.14.0): + acorn-jsx@5.3.2(acorn@8.14.1): dependencies: - acorn: 8.14.0 + acorn: 8.14.1 - acorn@8.14.0: {} + acorn@8.14.1: {} - ai@4.0.36(react@19.0.0)(zod@3.24.1): + ai@4.2.7(react@19.0.0)(zod@3.24.2): dependencies: - '@ai-sdk/provider': 1.0.4 - '@ai-sdk/provider-utils': 2.0.7(zod@3.24.1) - '@ai-sdk/react': 1.0.11(react@19.0.0)(zod@3.24.1) - '@ai-sdk/ui-utils': 1.0.10(zod@3.24.1) + '@ai-sdk/provider': 1.1.0 + '@ai-sdk/provider-utils': 2.2.1(zod@3.24.2) + '@ai-sdk/react': 1.2.2(react@19.0.0)(zod@3.24.2) + '@ai-sdk/ui-utils': 1.2.1(zod@3.24.2) '@opentelemetry/api': 1.9.0 jsondiffpatch: 0.6.0 + zod: 3.24.2 optionalDependencies: react: 19.0.0 - zod: 3.24.1 ajv@6.12.6: dependencies: @@ -6773,7 +6724,7 @@ snapshots: json-schema-traverse: 0.4.1 uri-js: 4.4.1 - anser@2.3.0: {} + anser@2.3.2: {} ansi-escapes@4.3.2: dependencies: @@ -6808,17 +6759,17 @@ snapshots: asynckit@0.4.0: {} - autoprefixer@10.4.20(postcss@8.5.1): + autoprefixer@10.4.21(postcss@8.5.3): dependencies: browserslist: 4.24.4 - caniuse-lite: 1.0.30001692 + caniuse-lite: 1.0.30001707 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.1.1 - postcss: 8.5.1 + postcss: 8.5.3 postcss-value-parser: 4.2.0 - axios@1.8.2(debug@4.4.0): + axios@1.8.4(debug@4.4.0): dependencies: follow-redirects: 1.15.9(debug@4.4.0) form-data: 4.0.2 @@ -6828,18 +6779,20 @@ snapshots: babel-plugin-macros@3.1.0: dependencies: - '@babel/runtime': 7.26.0 + '@babel/runtime': 7.27.0 cosmiconfig: 7.1.0 resolve: 1.22.10 babel-plugin-react-compiler@19.0.0-beta-37ed2a7-20241206: dependencies: - '@babel/types': 7.26.5 + '@babel/types': 7.27.0 bail@2.0.2: {} balanced-match@1.0.2: {} + base64-js@0.0.8: {} + base64-js@1.5.1: {} bidi-js@1.0.3: @@ -6877,10 +6830,10 @@ snapshots: browserslist@4.24.4: dependencies: - caniuse-lite: 1.0.30001692 - electron-to-chromium: 1.5.82 + caniuse-lite: 1.0.30001707 + electron-to-chromium: 1.5.128 node-releases: 2.0.19 - update-browserslist-db: 1.1.2(browserslist@4.24.4) + update-browserslist-db: 1.1.3(browserslist@4.24.4) buffer@5.7.1: dependencies: @@ -6903,13 +6856,12 @@ snapshots: camelcase@6.3.0: {} - caniuse-lite@1.0.30001692: {} + caniuse-lite@1.0.30001707: {} - canvas@3.0.1: + canvas@3.1.0: dependencies: node-addon-api: 7.1.1 - prebuild-install: 7.1.2 - simple-get: 3.1.1 + prebuild-install: 7.1.3 optional: true ccount@2.0.1: {} @@ -6986,22 +6938,22 @@ snapshots: clsx@2.1.1: {} - cm6-theme-basic-light@0.2.0(@codemirror/language@6.10.8)(@codemirror/state@6.5.1)(@codemirror/view@6.36.2)(@lezer/highlight@1.2.1): + cm6-theme-basic-light@0.2.0(@codemirror/language@6.11.0)(@codemirror/state@6.5.2)(@codemirror/view@6.36.4)(@lezer/highlight@1.2.1): dependencies: - '@codemirror/language': 6.10.8 - '@codemirror/state': 6.5.1 - '@codemirror/view': 6.36.2 + '@codemirror/language': 6.11.0 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.36.4 '@lezer/highlight': 1.2.1 codemirror@6.0.1: dependencies: - '@codemirror/autocomplete': 6.18.4 + '@codemirror/autocomplete': 6.18.6 '@codemirror/commands': 6.8.0 - '@codemirror/language': 6.10.8 - '@codemirror/lint': 6.8.4 - '@codemirror/search': 6.5.8 - '@codemirror/state': 6.5.1 - '@codemirror/view': 6.36.2 + '@codemirror/language': 6.11.0 + '@codemirror/lint': 6.8.5 + '@codemirror/search': 6.5.10 + '@codemirror/state': 6.5.2 + '@codemirror/view': 6.36.4 color-convert@2.0.1: dependencies: @@ -7037,19 +6989,19 @@ snapshots: cosmiconfig@7.1.0: dependencies: '@types/parse-json': 4.0.2 - import-fresh: 3.3.0 + import-fresh: 3.3.1 parse-json: 5.2.0 path-type: 4.0.0 yaml: 1.10.2 - cosmiconfig@8.3.6(typescript@5.7.3): + cosmiconfig@8.3.6(typescript@5.8.2): dependencies: - import-fresh: 3.3.0 + import-fresh: 3.3.1 js-yaml: 4.1.0 parse-json: 5.2.0 path-type: 4.0.0 optionalDependencies: - typescript: 5.7.3 + typescript: 5.8.2 crelt@1.0.6: {} @@ -7118,15 +7070,10 @@ snapshots: decimal.js-light@2.5.1: {} - decode-named-character-reference@1.0.2: + decode-named-character-reference@1.1.0: dependencies: character-entities: 2.0.2 - decompress-response@4.2.1: - dependencies: - mimic-response: 2.1.0 - optional: true - decompress-response@6.0.0: dependencies: mimic-response: 3.1.0 @@ -7166,14 +7113,14 @@ snapshots: dom-helpers@5.2.1: dependencies: - '@babel/runtime': 7.26.0 + '@babel/runtime': 7.27.0 csstype: 3.1.3 dotenv@16.4.7: {} downshift@7.6.2(react@19.0.0): dependencies: - '@babel/runtime': 7.26.0 + '@babel/runtime': 7.27.0 compute-scroll-into-view: 2.0.4 prop-types: 15.8.1 react: 19.0.0 @@ -7188,7 +7135,7 @@ snapshots: eastasianwidth@0.2.0: {} - electron-to-chromium@1.5.82: {} + electron-to-chromium@1.5.128: {} emoji-regex@10.4.0: {} @@ -7264,33 +7211,33 @@ snapshots: '@esbuild/win32-ia32': 0.21.5 '@esbuild/win32-x64': 0.21.5 - esbuild@0.24.2: + esbuild@0.25.1: optionalDependencies: - '@esbuild/aix-ppc64': 0.24.2 - '@esbuild/android-arm': 0.24.2 - '@esbuild/android-arm64': 0.24.2 - '@esbuild/android-x64': 0.24.2 - '@esbuild/darwin-arm64': 0.24.2 - '@esbuild/darwin-x64': 0.24.2 - '@esbuild/freebsd-arm64': 0.24.2 - '@esbuild/freebsd-x64': 0.24.2 - '@esbuild/linux-arm': 0.24.2 - '@esbuild/linux-arm64': 0.24.2 - '@esbuild/linux-ia32': 0.24.2 - '@esbuild/linux-loong64': 0.24.2 - '@esbuild/linux-mips64el': 0.24.2 - '@esbuild/linux-ppc64': 0.24.2 - '@esbuild/linux-riscv64': 0.24.2 - '@esbuild/linux-s390x': 0.24.2 - '@esbuild/linux-x64': 0.24.2 - '@esbuild/netbsd-arm64': 0.24.2 - '@esbuild/netbsd-x64': 0.24.2 - '@esbuild/openbsd-arm64': 0.24.2 - '@esbuild/openbsd-x64': 0.24.2 - '@esbuild/sunos-x64': 0.24.2 - '@esbuild/win32-arm64': 0.24.2 - '@esbuild/win32-ia32': 0.24.2 - '@esbuild/win32-x64': 0.24.2 + '@esbuild/aix-ppc64': 0.25.1 + '@esbuild/android-arm': 0.25.1 + '@esbuild/android-arm64': 0.25.1 + '@esbuild/android-x64': 0.25.1 + '@esbuild/darwin-arm64': 0.25.1 + '@esbuild/darwin-x64': 0.25.1 + '@esbuild/freebsd-arm64': 0.25.1 + '@esbuild/freebsd-x64': 0.25.1 + '@esbuild/linux-arm': 0.25.1 + '@esbuild/linux-arm64': 0.25.1 + '@esbuild/linux-ia32': 0.25.1 + '@esbuild/linux-loong64': 0.25.1 + '@esbuild/linux-mips64el': 0.25.1 + '@esbuild/linux-ppc64': 0.25.1 + '@esbuild/linux-riscv64': 0.25.1 + '@esbuild/linux-s390x': 0.25.1 + '@esbuild/linux-x64': 0.25.1 + '@esbuild/netbsd-arm64': 0.25.1 + '@esbuild/netbsd-x64': 0.25.1 + '@esbuild/openbsd-arm64': 0.25.1 + '@esbuild/openbsd-x64': 0.25.1 + '@esbuild/sunos-x64': 0.25.1 + '@esbuild/win32-arm64': 0.25.1 + '@esbuild/win32-ia32': 0.25.1 + '@esbuild/win32-x64': 0.25.1 escalade@3.2.0: {} @@ -7304,25 +7251,25 @@ snapshots: eslint-plugin-react-compiler@19.0.0-beta-37ed2a7-20241206(eslint@9.16.0(jiti@1.21.7)): dependencies: - '@babel/core': 7.26.0 - '@babel/parser': 7.26.5 - '@babel/plugin-proposal-private-methods': 7.18.6(@babel/core@7.26.0) + '@babel/core': 7.26.10 + '@babel/parser': 7.27.0 + '@babel/plugin-proposal-private-methods': 7.18.6(@babel/core@7.26.10) eslint: 9.16.0(jiti@1.21.7) hermes-parser: 0.25.1 - zod: 3.24.1 - zod-validation-error: 3.4.0(zod@3.24.1) + zod: 3.24.2 + zod-validation-error: 3.4.0(zod@3.24.2) transitivePeerDependencies: - supports-color - eslint-plugin-react-hooks@5.1.0(eslint@9.16.0(jiti@1.21.7)): + eslint-plugin-react-hooks@5.2.0(eslint@9.16.0(jiti@1.21.7)): dependencies: eslint: 9.16.0(jiti@1.21.7) - eslint-plugin-react-refresh@0.4.18(eslint@9.16.0(jiti@1.21.7)): + eslint-plugin-react-refresh@0.4.19(eslint@9.16.0(jiti@1.21.7)): dependencies: eslint: 9.16.0(jiti@1.21.7) - eslint-scope@8.2.0: + eslint-scope@8.3.0: dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 @@ -7333,24 +7280,24 @@ snapshots: eslint@9.16.0(jiti@1.21.7): dependencies: - '@eslint-community/eslint-utils': 4.4.1(eslint@9.16.0(jiti@1.21.7)) + '@eslint-community/eslint-utils': 4.5.1(eslint@9.16.0(jiti@1.21.7)) '@eslint-community/regexpp': 4.12.1 - '@eslint/config-array': 0.19.1 + '@eslint/config-array': 0.19.2 '@eslint/core': 0.9.1 - '@eslint/eslintrc': 3.2.0 + '@eslint/eslintrc': 3.3.1 '@eslint/js': 9.16.0 - '@eslint/plugin-kit': 0.2.5 + '@eslint/plugin-kit': 0.2.7 '@humanfs/node': 0.16.6 '@humanwhocodes/module-importer': 1.0.1 - '@humanwhocodes/retry': 0.4.1 - '@types/estree': 1.0.6 + '@humanwhocodes/retry': 0.4.2 + '@types/estree': 1.0.7 '@types/json-schema': 7.0.15 ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.6 debug: 4.4.0 escape-string-regexp: 4.0.0 - eslint-scope: 8.2.0 + eslint-scope: 8.3.0 eslint-visitor-keys: 4.2.0 espree: 10.3.0 esquery: 1.6.0 @@ -7381,8 +7328,8 @@ snapshots: espree@10.3.0: dependencies: - acorn: 8.14.0 - acorn-jsx: 5.3.2(acorn@8.14.0) + acorn: 8.14.1 + acorn-jsx: 5.3.2(acorn@8.14.1) eslint-visitor-keys: 4.2.0 esquery@1.6.0: @@ -7413,8 +7360,6 @@ snapshots: events@3.3.0: {} - eventsource-parser@3.0.0: {} - expand-template@2.0.3: optional: true @@ -7446,9 +7391,9 @@ snapshots: fast-levenshtein@2.0.6: {} - fastq@1.18.0: + fastq@1.19.1: dependencies: - reusify: 1.0.4 + reusify: 1.1.0 fault@2.0.1: dependencies: @@ -7477,10 +7422,10 @@ snapshots: flat-cache@4.0.1: dependencies: - flatted: 3.3.2 + flatted: 3.3.3 keyv: 4.5.4 - flatted@3.3.2: {} + flatted@3.3.3: {} follow-redirects@1.15.9(debug@4.4.0): optionalDependencies: @@ -7498,7 +7443,7 @@ snapshots: unicode-properties: 1.4.1 unicode-trie: 2.0.0 - foreground-child@3.3.0: + foreground-child@3.3.1: dependencies: cross-spawn: 7.0.6 signal-exit: 4.1.0 @@ -7514,10 +7459,10 @@ snapshots: fraction.js@4.3.7: {} - framer-motion@11.18.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + framer-motion@11.18.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: - motion-dom: 11.16.4 - motion-utils: 11.16.0 + motion-dom: 11.18.1 + motion-utils: 11.18.1 tslib: 2.8.1 optionalDependencies: react: 19.0.0 @@ -7566,7 +7511,7 @@ snapshots: glob@10.4.5: dependencies: - foreground-child: 3.3.0 + foreground-child: 3.3.1 jackspeak: 3.4.3 minimatch: 9.0.5 minipass: 7.1.2 @@ -7575,8 +7520,8 @@ snapshots: glob@11.0.1: dependencies: - foreground-child: 3.3.0 - jackspeak: 4.0.2 + foreground-child: 3.3.1 + jackspeak: 4.1.0 minimatch: 10.0.1 minipass: 7.1.2 package-json-from-dist: 1.0.1 @@ -7602,7 +7547,7 @@ snapshots: dependencies: function-bind: 1.1.2 - hast-util-to-html@9.0.4: + hast-util-to-html@9.0.5: dependencies: '@types/hast': 3.0.4 '@types/unist': 3.0.3 @@ -7611,14 +7556,14 @@ snapshots: hast-util-whitespace: 3.0.0 html-void-elements: 3.0.0 mdast-util-to-hast: 13.2.0 - property-information: 6.5.0 + property-information: 7.0.0 space-separated-tokens: 2.0.2 stringify-entities: 4.0.4 zwitch: 2.0.4 - hast-util-to-jsx-runtime@2.3.2: + hast-util-to-jsx-runtime@2.3.6: dependencies: - '@types/estree': 1.0.6 + '@types/estree': 1.0.7 '@types/hast': 3.0.4 '@types/unist': 3.0.3 comma-separated-tokens: 2.0.3 @@ -7628,9 +7573,9 @@ snapshots: mdast-util-mdx-expression: 2.0.1 mdast-util-mdx-jsx: 3.2.0 mdast-util-mdxjs-esm: 2.0.1 - property-information: 6.5.0 + property-information: 7.0.0 space-separated-tokens: 2.0.2 - style-to-object: 1.0.8 + style-to-js: 1.1.16 unist-util-position: 5.0.0 vfile-message: 4.0.2 transitivePeerDependencies: @@ -7670,7 +7615,7 @@ snapshots: ignore@5.3.2: {} - import-fresh@3.3.0: + import-fresh@3.3.1: dependencies: parent-module: 1.0.1 resolve-from: 4.0.0 @@ -7755,7 +7700,7 @@ snapshots: optionalDependencies: '@pkgjs/parseargs': 0.11.0 - jackspeak@4.0.2: + jackspeak@4.1.0: dependencies: '@isaacs/cliui': 8.0.2 @@ -7815,14 +7760,19 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 - lexical@0.17.1: {} + lexical@0.27.2: {} - lib0@0.2.99: + lib0@0.2.101: dependencies: isomorphic.js: 0.2.5 lilconfig@3.1.3: {} + linebreak@1.1.0: + dependencies: + base64-js: 0.0.8 + unicode-trie: 2.0.0 + lines-and-columns@1.2.4: {} locate-path@3.0.0: @@ -7863,7 +7813,7 @@ snapshots: lru-cache@10.4.3: {} - lru-cache@11.0.2: {} + lru-cache@11.1.0: {} lru-cache@5.1.1: dependencies: @@ -7883,15 +7833,16 @@ snapshots: match-sorter@8.0.0: dependencies: - '@babel/runtime': 7.26.0 + '@babel/runtime': 7.27.0 remove-accents: 0.5.0 math-intrinsics@1.1.0: {} - mdast-util-directive@3.0.0: + mdast-util-directive@3.1.0: dependencies: '@types/mdast': 4.0.4 '@types/unist': 3.0.3 + ccount: 2.0.1 devlop: 1.1.0 mdast-util-from-markdown: 2.0.2 mdast-util-to-markdown: 2.1.2 @@ -7912,15 +7863,15 @@ snapshots: dependencies: '@types/mdast': 4.0.4 '@types/unist': 3.0.3 - decode-named-character-reference: 1.0.2 + decode-named-character-reference: 1.1.0 devlop: 1.1.0 mdast-util-to-string: 4.0.0 - micromark: 4.0.1 + micromark: 4.0.2 micromark-util-decode-numeric-character-reference: 2.0.2 micromark-util-decode-string: 2.0.1 micromark-util-normalize-identifier: 2.0.1 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 unist-util-stringify-position: 4.0.0 transitivePeerDependencies: - supports-color @@ -7944,7 +7895,7 @@ snapshots: mdast-util-find-and-replace: 3.0.2 micromark-util-character: 2.1.1 - mdast-util-gfm-footnote@2.0.0: + mdast-util-gfm-footnote@2.1.0: dependencies: '@types/mdast': 4.0.4 devlop: 1.1.0 @@ -7981,11 +7932,11 @@ snapshots: transitivePeerDependencies: - supports-color - mdast-util-gfm@3.0.0: + mdast-util-gfm@3.1.0: dependencies: mdast-util-from-markdown: 2.0.2 mdast-util-gfm-autolink-literal: 2.0.1 - mdast-util-gfm-footnote: 2.0.0 + mdast-util-gfm-footnote: 2.1.0 mdast-util-gfm-strikethrough: 2.0.0 mdast-util-gfm-table: 2.0.0 mdast-util-gfm-task-list-item: 2.0.0 @@ -8051,7 +8002,7 @@ snapshots: dependencies: '@types/hast': 3.0.4 '@types/mdast': 4.0.4 - '@ungap/structured-clone': 1.2.1 + '@ungap/structured-clone': 1.3.0 devlop: 1.1.0 micromark-util-sanitize-uri: 2.0.1 trim-lines: 3.0.1 @@ -8077,15 +8028,15 @@ snapshots: media-engine@1.0.3: {} - merge-refs@1.3.0(@types/react@19.0.7): + merge-refs@1.3.0(@types/react@19.0.12): optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 merge2@1.4.1: {} - micromark-core-commonmark@2.0.2: + micromark-core-commonmark@2.0.3: dependencies: - decode-named-character-reference: 1.0.2 + decode-named-character-reference: 1.1.0 devlop: 1.1.0 micromark-factory-destination: 2.0.1 micromark-factory-label: 2.0.1 @@ -8098,9 +8049,9 @@ snapshots: micromark-util-html-tag-name: 2.0.1 micromark-util-normalize-identifier: 2.0.1 micromark-util-resolve-all: 2.0.1 - micromark-util-subtokenize: 2.0.3 + micromark-util-subtokenize: 2.1.0 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 micromark-extension-directive@3.0.2: dependencies: @@ -8109,7 +8060,7 @@ snapshots: micromark-factory-whitespace: 2.0.1 micromark-util-character: 2.1.1 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 parse-entities: 4.0.2 micromark-extension-frontmatter@2.0.0: @@ -8117,25 +8068,25 @@ snapshots: fault: 2.0.1 micromark-util-character: 2.1.1 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 micromark-extension-gfm-autolink-literal@2.1.0: dependencies: micromark-util-character: 2.1.1 micromark-util-sanitize-uri: 2.0.1 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 micromark-extension-gfm-footnote@2.1.0: dependencies: devlop: 1.1.0 - micromark-core-commonmark: 2.0.2 + micromark-core-commonmark: 2.0.3 micromark-factory-space: 2.0.1 micromark-util-character: 2.1.1 micromark-util-normalize-identifier: 2.0.1 micromark-util-sanitize-uri: 2.0.1 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 micromark-extension-gfm-strikethrough@2.1.0: dependencies: @@ -8144,19 +8095,19 @@ snapshots: micromark-util-classify-character: 2.0.1 micromark-util-resolve-all: 2.0.1 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 - micromark-extension-gfm-table@2.1.0: + micromark-extension-gfm-table@2.1.1: dependencies: devlop: 1.1.0 micromark-factory-space: 2.0.1 micromark-util-character: 2.1.1 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 micromark-extension-gfm-tagfilter@2.0.0: dependencies: - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 micromark-extension-gfm-task-list-item@2.1.0: dependencies: @@ -8164,119 +8115,118 @@ snapshots: micromark-factory-space: 2.0.1 micromark-util-character: 2.1.1 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 micromark-extension-gfm@3.0.0: dependencies: micromark-extension-gfm-autolink-literal: 2.1.0 micromark-extension-gfm-footnote: 2.1.0 micromark-extension-gfm-strikethrough: 2.1.0 - micromark-extension-gfm-table: 2.1.0 + micromark-extension-gfm-table: 2.1.1 micromark-extension-gfm-tagfilter: 2.0.0 micromark-extension-gfm-task-list-item: 2.1.0 micromark-util-combine-extensions: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 - micromark-extension-mdx-expression@3.0.0: + micromark-extension-mdx-expression@3.0.1: dependencies: - '@types/estree': 1.0.6 + '@types/estree': 1.0.7 devlop: 1.1.0 - micromark-factory-mdx-expression: 2.0.2 + micromark-factory-mdx-expression: 2.0.3 micromark-factory-space: 2.0.1 micromark-util-character: 2.1.1 - micromark-util-events-to-acorn: 2.0.2 + micromark-util-events-to-acorn: 2.0.3 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 - micromark-extension-mdx-jsx@3.0.1: + micromark-extension-mdx-jsx@3.0.2: dependencies: - '@types/acorn': 4.0.6 - '@types/estree': 1.0.6 + '@types/estree': 1.0.7 devlop: 1.1.0 estree-util-is-identifier-name: 3.0.0 - micromark-factory-mdx-expression: 2.0.2 + micromark-factory-mdx-expression: 2.0.3 micromark-factory-space: 2.0.1 micromark-util-character: 2.1.1 - micromark-util-events-to-acorn: 2.0.2 + micromark-util-events-to-acorn: 2.0.3 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 vfile-message: 4.0.2 micromark-extension-mdx-md@2.0.0: dependencies: - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 micromark-extension-mdxjs-esm@3.0.0: dependencies: - '@types/estree': 1.0.6 + '@types/estree': 1.0.7 devlop: 1.1.0 - micromark-core-commonmark: 2.0.2 + micromark-core-commonmark: 2.0.3 micromark-util-character: 2.1.1 - micromark-util-events-to-acorn: 2.0.2 + micromark-util-events-to-acorn: 2.0.3 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 unist-util-position-from-estree: 2.0.0 vfile-message: 4.0.2 micromark-extension-mdxjs@3.0.0: dependencies: - acorn: 8.14.0 - acorn-jsx: 5.3.2(acorn@8.14.0) - micromark-extension-mdx-expression: 3.0.0 - micromark-extension-mdx-jsx: 3.0.1 + acorn: 8.14.1 + acorn-jsx: 5.3.2(acorn@8.14.1) + micromark-extension-mdx-expression: 3.0.1 + micromark-extension-mdx-jsx: 3.0.2 micromark-extension-mdx-md: 2.0.0 micromark-extension-mdxjs-esm: 3.0.0 micromark-util-combine-extensions: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 micromark-factory-destination@2.0.1: dependencies: micromark-util-character: 2.1.1 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 micromark-factory-label@2.0.1: dependencies: devlop: 1.1.0 micromark-util-character: 2.1.1 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 - micromark-factory-mdx-expression@2.0.2: + micromark-factory-mdx-expression@2.0.3: dependencies: - '@types/estree': 1.0.6 + '@types/estree': 1.0.7 devlop: 1.1.0 micromark-factory-space: 2.0.1 micromark-util-character: 2.1.1 - micromark-util-events-to-acorn: 2.0.2 + micromark-util-events-to-acorn: 2.0.3 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 unist-util-position-from-estree: 2.0.0 vfile-message: 4.0.2 micromark-factory-space@2.0.1: dependencies: micromark-util-character: 2.1.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 micromark-factory-title@2.0.1: dependencies: micromark-factory-space: 2.0.1 micromark-util-character: 2.1.1 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 micromark-factory-whitespace@2.0.1: dependencies: micromark-factory-space: 2.0.1 micromark-util-character: 2.1.1 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 micromark-util-character@2.1.1: dependencies: micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 micromark-util-chunked@2.0.1: dependencies: @@ -8286,12 +8236,12 @@ snapshots: dependencies: micromark-util-character: 2.1.1 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 micromark-util-combine-extensions@2.0.1: dependencies: micromark-util-chunked: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 micromark-util-decode-numeric-character-reference@2.0.2: dependencies: @@ -8299,22 +8249,21 @@ snapshots: micromark-util-decode-string@2.0.1: dependencies: - decode-named-character-reference: 1.0.2 + decode-named-character-reference: 1.1.0 micromark-util-character: 2.1.1 micromark-util-decode-numeric-character-reference: 2.0.2 micromark-util-symbol: 2.0.1 micromark-util-encode@2.0.1: {} - micromark-util-events-to-acorn@2.0.2: + micromark-util-events-to-acorn@2.0.3: dependencies: - '@types/acorn': 4.0.6 - '@types/estree': 1.0.6 + '@types/estree': 1.0.7 '@types/unist': 3.0.3 devlop: 1.1.0 estree-util-visit: 2.0.0 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 vfile-message: 4.0.2 micromark-util-html-tag-name@2.0.1: {} @@ -8325,7 +8274,7 @@ snapshots: micromark-util-resolve-all@2.0.1: dependencies: - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 micromark-util-sanitize-uri@2.0.1: dependencies: @@ -8333,24 +8282,24 @@ snapshots: micromark-util-encode: 2.0.1 micromark-util-symbol: 2.0.1 - micromark-util-subtokenize@2.0.3: + micromark-util-subtokenize@2.1.0: dependencies: devlop: 1.1.0 micromark-util-chunked: 2.0.1 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 micromark-util-symbol@2.0.1: {} - micromark-util-types@2.0.1: {} + micromark-util-types@2.0.2: {} - micromark@4.0.1: + micromark@4.0.2: dependencies: '@types/debug': 4.1.12 debug: 4.4.0 - decode-named-character-reference: 1.0.2 + decode-named-character-reference: 1.1.0 devlop: 1.1.0 - micromark-core-commonmark: 2.0.2 + micromark-core-commonmark: 2.0.3 micromark-factory-space: 2.0.1 micromark-util-character: 2.1.1 micromark-util-chunked: 2.0.1 @@ -8360,9 +8309,9 @@ snapshots: micromark-util-normalize-identifier: 2.0.1 micromark-util-resolve-all: 2.0.1 micromark-util-sanitize-uri: 2.0.1 - micromark-util-subtokenize: 2.0.3 + micromark-util-subtokenize: 2.1.0 micromark-util-symbol: 2.0.1 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 transitivePeerDependencies: - supports-color @@ -8373,7 +8322,7 @@ snapshots: mime-db@1.52.0: {} - mime-db@1.53.0: {} + mime-db@1.54.0: {} mime-types@2.1.35: dependencies: @@ -8381,9 +8330,6 @@ snapshots: mimic-fn@2.1.0: {} - mimic-response@2.1.0: - optional: true - mimic-response@3.1.0: optional: true @@ -8409,15 +8355,15 @@ snapshots: moo@0.5.2: {} - motion-dom@11.16.4: + motion-dom@11.18.1: dependencies: - motion-utils: 11.16.0 + motion-utils: 11.18.1 - motion-utils@11.16.0: {} + motion-utils@11.18.1: {} - motion@11.18.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + motion@11.18.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: - framer-motion: 11.18.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + framer-motion: 11.18.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0) tslib: 2.8.1 optionalDependencies: react: 19.0.0 @@ -8433,23 +8379,23 @@ snapshots: object-assign: 4.1.1 thenify-all: 1.6.0 - nanoid@3.3.8: {} + nanoid@3.3.11: {} - napi-build-utils@1.0.2: + napi-build-utils@2.0.0: optional: true natural-compare@1.4.0: {} - next-themes@0.4.4(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + next-themes@0.4.6(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: react: 19.0.0 react-dom: 19.0.0(react@19.0.0) next-tick@1.1.0: {} - node-abi@3.71.0: + node-abi@3.74.0: dependencies: - semver: 7.6.3 + semver: 7.7.1 optional: true node-addon-api@7.1.1: @@ -8538,7 +8484,7 @@ snapshots: '@types/unist': 2.0.11 character-entities-legacy: 3.0.0 character-reference-invalid: 2.0.1 - decode-named-character-reference: 1.0.2 + decode-named-character-reference: 1.1.0 is-alphanumerical: 2.0.1 is-decimal: 2.0.1 is-hexadecimal: 2.0.1 @@ -8567,7 +8513,7 @@ snapshots: path-scurry@2.0.0: dependencies: - lru-cache: 11.0.2 + lru-cache: 11.1.0 minipass: 7.1.2 path-type@4.0.0: {} @@ -8579,7 +8525,7 @@ snapshots: pdfjs-dist@4.8.69: optionalDependencies: - canvas: 3.0.1 + canvas: 3.1.0 path2d: 0.2.2 picocolors@1.1.1: {} @@ -8588,7 +8534,7 @@ snapshots: pify@2.3.0: {} - pirates@4.0.6: {} + pirates@4.0.7: {} pkg-up@3.1.0: dependencies: @@ -8596,43 +8542,43 @@ snapshots: pofile@1.1.4: {} - postcss-import@15.1.0(postcss@8.5.1): + postcss-import@15.1.0(postcss@8.5.3): dependencies: - postcss: 8.5.1 + postcss: 8.5.3 postcss-value-parser: 4.2.0 read-cache: 1.0.0 resolve: 1.22.10 - postcss-js@4.0.1(postcss@8.5.1): + postcss-js@4.0.1(postcss@8.5.3): dependencies: camelcase-css: 2.0.1 - postcss: 8.5.1 + postcss: 8.5.3 - postcss-load-config@4.0.2(postcss@8.5.1): + postcss-load-config@4.0.2(postcss@8.5.3): dependencies: lilconfig: 3.1.3 yaml: 2.7.0 optionalDependencies: - postcss: 8.5.1 + postcss: 8.5.3 - postcss-mixins@9.0.4(postcss@8.5.1): + postcss-mixins@9.0.4(postcss@8.5.3): dependencies: fast-glob: 3.3.3 - postcss: 8.5.1 - postcss-js: 4.0.1(postcss@8.5.1) - postcss-simple-vars: 7.0.1(postcss@8.5.1) - sugarss: 4.0.1(postcss@8.5.1) + postcss: 8.5.3 + postcss-js: 4.0.1(postcss@8.5.3) + postcss-simple-vars: 7.0.1(postcss@8.5.3) + sugarss: 4.0.1(postcss@8.5.3) - postcss-nested@6.2.0(postcss@8.5.1): + postcss-nested@6.2.0(postcss@8.5.3): dependencies: - postcss: 8.5.1 + postcss: 8.5.3 postcss-selector-parser: 6.1.2 - postcss-preset-mantine@1.17.0(postcss@8.5.1): + postcss-preset-mantine@1.17.0(postcss@8.5.3): dependencies: - postcss: 8.5.1 - postcss-mixins: 9.0.4(postcss@8.5.1) - postcss-nested: 6.2.0(postcss@8.5.1) + postcss: 8.5.3 + postcss-mixins: 9.0.4(postcss@8.5.3) + postcss-nested: 6.2.0(postcss@8.5.3) postcss-selector-parser@6.0.10: dependencies: @@ -8644,41 +8590,41 @@ snapshots: cssesc: 3.0.0 util-deprecate: 1.0.2 - postcss-simple-vars@7.0.1(postcss@8.5.1): + postcss-simple-vars@7.0.1(postcss@8.5.3): dependencies: - postcss: 8.5.1 + postcss: 8.5.3 postcss-value-parser@4.2.0: {} - postcss@8.5.1: + postcss@8.5.3: dependencies: - nanoid: 3.3.8 + nanoid: 3.3.11 picocolors: 1.1.1 source-map-js: 1.2.1 - prebuild-install@7.1.2: + prebuild-install@7.1.3: dependencies: detect-libc: 2.0.3 expand-template: 2.0.3 github-from-package: 0.0.0 minimist: 1.2.8 mkdirp-classic: 0.5.3 - napi-build-utils: 1.0.2 - node-abi: 3.71.0 + napi-build-utils: 2.0.0 + node-abi: 3.74.0 pump: 3.0.2 rc: 1.2.8 simple-get: 4.0.1 - tar-fs: 2.1.1 + tar-fs: 2.1.2 tunnel-agent: 0.6.0 optional: true prelude-ls@1.2.1: {} - prettier-plugin-tailwindcss@0.6.9(prettier@3.4.2): + prettier-plugin-tailwindcss@0.6.11(prettier@3.5.3): dependencies: - prettier: 3.4.2 + prettier: 3.5.3 - prettier@3.4.2: {} + prettier@3.5.3: {} pretty-format@29.7.0: dependencies: @@ -8686,7 +8632,7 @@ snapshots: ansi-styles: 5.2.0 react-is: 18.3.1 - prismjs@1.29.0: {} + prismjs@1.30.0: {} prop-types@15.8.1: dependencies: @@ -8694,7 +8640,7 @@ snapshots: object-assign: 4.1.1 react-is: 16.13.1 - property-information@6.5.0: {} + property-information@7.0.0: {} proxy-from-env@1.1.0: {} @@ -8718,8 +8664,6 @@ snapshots: dependencies: inherits: 2.0.4 - ramda@0.27.2: {} - rc@1.2.8: dependencies: deep-extend: 0.6.0 @@ -8728,7 +8672,7 @@ snapshots: strip-json-comments: 2.0.1 optional: true - re-resizable@6.10.3(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + re-resizable@6.11.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: react: 19.0.0 react-dom: 19.0.0(react@19.0.0) @@ -8749,14 +8693,14 @@ snapshots: react-error-boundary@3.1.4(react@19.0.0): dependencies: - '@babel/runtime': 7.26.0 + '@babel/runtime': 7.27.0 react: 19.0.0 react-hook-form@7.54.2(react@19.0.0): dependencies: react: 19.0.0 - react-intersection-observer@9.15.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + react-intersection-observer@9.16.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: react: 19.0.0 optionalDependencies: @@ -8768,12 +8712,13 @@ snapshots: react-is@18.3.1: {} - react-markdown@9.0.3(@types/react@19.0.7)(react@19.0.0): + react-markdown@9.1.0(@types/react@19.0.12)(react@19.0.0): dependencies: '@types/hast': 3.0.4 - '@types/react': 19.0.7 + '@types/mdast': 4.0.4 + '@types/react': 19.0.12 devlop: 1.1.0 - hast-util-to-jsx-runtime: 2.3.2 + hast-util-to-jsx-runtime: 2.3.6 html-url-attributes: 3.0.1 mdast-util-to-hast: 13.2.0 react: 19.0.0 @@ -8790,20 +8735,20 @@ snapshots: react: 19.0.0 react-dom: 19.0.0(react@19.0.0) - react-pdf@9.2.1(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + react-pdf@9.2.1(@types/react@19.0.12)(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: clsx: 2.1.1 dequal: 2.0.3 make-cancellable-promise: 1.3.2 make-event-props: 1.6.2 - merge-refs: 1.3.0(@types/react@19.0.7) + merge-refs: 1.3.0(@types/react@19.0.12) pdfjs-dist: 4.8.69 react: 19.0.0 react-dom: 19.0.0(react@19.0.0) tiny-invariant: 1.3.3 warning: 4.0.3 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 react-qrcode-logo@3.0.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: @@ -8814,32 +8759,32 @@ snapshots: react-refresh@0.14.2: {} - react-remove-scroll-bar@2.3.8(@types/react@19.0.7)(react@19.0.0): + react-remove-scroll-bar@2.3.8(@types/react@19.0.12)(react@19.0.0): dependencies: react: 19.0.0 - react-style-singleton: 2.2.3(@types/react@19.0.7)(react@19.0.0) + react-style-singleton: 2.2.3(@types/react@19.0.12)(react@19.0.0) tslib: 2.8.1 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - react-remove-scroll@2.6.2(@types/react@19.0.7)(react@19.0.0): + react-remove-scroll@2.6.3(@types/react@19.0.12)(react@19.0.0): dependencies: react: 19.0.0 - react-remove-scroll-bar: 2.3.8(@types/react@19.0.7)(react@19.0.0) - react-style-singleton: 2.2.3(@types/react@19.0.7)(react@19.0.0) + react-remove-scroll-bar: 2.3.8(@types/react@19.0.12)(react@19.0.0) + react-style-singleton: 2.2.3(@types/react@19.0.12)(react@19.0.0) tslib: 2.8.1 - use-callback-ref: 1.3.3(@types/react@19.0.7)(react@19.0.0) - use-sidecar: 1.1.3(@types/react@19.0.7)(react@19.0.0) + use-callback-ref: 1.3.3(@types/react@19.0.12)(react@19.0.0) + use-sidecar: 1.1.3(@types/react@19.0.12)(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - react-router-dom@7.1.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + react-router-dom@7.4.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: react: 19.0.0 react-dom: 19.0.0(react@19.0.0) - react-router: 7.1.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + react-router: 7.4.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - react-router@7.1.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + react-router@7.4.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: '@types/cookie': 0.6.0 cookie: 1.0.2 @@ -8857,26 +8802,26 @@ snapshots: react-dom: 19.0.0(react@19.0.0) react-transition-group: 4.4.5(react-dom@19.0.0(react@19.0.0))(react@19.0.0) - react-style-singleton@2.2.3(@types/react@19.0.7)(react@19.0.0): + react-style-singleton@2.2.3(@types/react@19.0.12)(react@19.0.0): dependencies: get-nonce: 1.0.1 react: 19.0.0 tslib: 2.8.1 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - react-textarea-autosize@8.5.6(@types/react@19.0.7)(react@19.0.0): + react-textarea-autosize@8.5.6(@types/react@19.0.12)(react@19.0.0): dependencies: - '@babel/runtime': 7.26.0 + '@babel/runtime': 7.27.0 react: 19.0.0 - use-composed-ref: 1.4.0(@types/react@19.0.7)(react@19.0.0) - use-latest: 1.3.0(@types/react@19.0.7)(react@19.0.0) + use-composed-ref: 1.4.0(@types/react@19.0.12)(react@19.0.0) + use-latest: 1.3.0(@types/react@19.0.12)(react@19.0.0) transitivePeerDependencies: - '@types/react' react-transition-group@4.4.5(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: - '@babel/runtime': 7.26.0 + '@babel/runtime': 7.27.0 dom-helpers: 5.2.1 loose-envify: 1.4.0 prop-types: 15.8.1 @@ -8907,7 +8852,7 @@ snapshots: dependencies: decimal.js-light: 2.5.1 - recharts@2.15.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + recharts@2.15.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: clsx: 2.1.1 eventemitter3: 4.0.7 @@ -8925,13 +8870,13 @@ snapshots: rehype-stringify@10.0.1: dependencies: '@types/hast': 3.0.4 - hast-util-to-html: 9.0.4 + hast-util-to-html: 9.0.5 unified: 11.0.5 - remark-gfm@4.0.0: + remark-gfm@4.0.1: dependencies: '@types/mdast': 4.0.4 - mdast-util-gfm: 3.0.0 + mdast-util-gfm: 3.1.0 micromark-extension-gfm: 3.0.0 remark-parse: 11.0.0 remark-stringify: 11.0.0 @@ -8943,7 +8888,7 @@ snapshots: dependencies: '@types/mdast': 4.0.4 mdast-util-from-markdown: 2.0.2 - micromark-util-types: 2.0.1 + micromark-util-types: 2.0.2 unified: 11.0.5 transitivePeerDependencies: - supports-color @@ -8981,31 +8926,32 @@ snapshots: restructure@3.0.2: {} - reusify@1.0.4: {} + reusify@1.1.0: {} - rollup@4.34.8: + rollup@4.37.0: dependencies: '@types/estree': 1.0.6 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.34.8 - '@rollup/rollup-android-arm64': 4.34.8 - '@rollup/rollup-darwin-arm64': 4.34.8 - '@rollup/rollup-darwin-x64': 4.34.8 - '@rollup/rollup-freebsd-arm64': 4.34.8 - '@rollup/rollup-freebsd-x64': 4.34.8 - '@rollup/rollup-linux-arm-gnueabihf': 4.34.8 - '@rollup/rollup-linux-arm-musleabihf': 4.34.8 - '@rollup/rollup-linux-arm64-gnu': 4.34.8 - '@rollup/rollup-linux-arm64-musl': 4.34.8 - '@rollup/rollup-linux-loongarch64-gnu': 4.34.8 - '@rollup/rollup-linux-powerpc64le-gnu': 4.34.8 - '@rollup/rollup-linux-riscv64-gnu': 4.34.8 - '@rollup/rollup-linux-s390x-gnu': 4.34.8 - '@rollup/rollup-linux-x64-gnu': 4.34.8 - '@rollup/rollup-linux-x64-musl': 4.34.8 - '@rollup/rollup-win32-arm64-msvc': 4.34.8 - '@rollup/rollup-win32-ia32-msvc': 4.34.8 - '@rollup/rollup-win32-x64-msvc': 4.34.8 + '@rollup/rollup-android-arm-eabi': 4.37.0 + '@rollup/rollup-android-arm64': 4.37.0 + '@rollup/rollup-darwin-arm64': 4.37.0 + '@rollup/rollup-darwin-x64': 4.37.0 + '@rollup/rollup-freebsd-arm64': 4.37.0 + '@rollup/rollup-freebsd-x64': 4.37.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.37.0 + '@rollup/rollup-linux-arm-musleabihf': 4.37.0 + '@rollup/rollup-linux-arm64-gnu': 4.37.0 + '@rollup/rollup-linux-arm64-musl': 4.37.0 + '@rollup/rollup-linux-loongarch64-gnu': 4.37.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.37.0 + '@rollup/rollup-linux-riscv64-gnu': 4.37.0 + '@rollup/rollup-linux-riscv64-musl': 4.37.0 + '@rollup/rollup-linux-s390x-gnu': 4.37.0 + '@rollup/rollup-linux-x64-gnu': 4.37.0 + '@rollup/rollup-linux-x64-musl': 4.37.0 + '@rollup/rollup-win32-arm64-msvc': 4.37.0 + '@rollup/rollup-win32-ia32-msvc': 4.37.0 + '@rollup/rollup-win32-x64-msvc': 4.37.0 fsevents: 2.3.3 run-async@2.4.1: {} @@ -9030,7 +8976,7 @@ snapshots: semver@6.3.1: {} - semver@7.6.3: {} + semver@7.7.1: {} set-cookie-parser@2.7.1: {} @@ -9047,13 +8993,6 @@ snapshots: simple-concat@1.0.1: optional: true - simple-get@3.1.1: - dependencies: - decompress-response: 4.2.1 - once: 1.4.0 - simple-concat: 1.0.1 - optional: true - simple-get@4.0.1: dependencies: decompress-response: 6.0.0 @@ -9065,7 +9004,7 @@ snapshots: dependencies: is-arrayish: 0.3.2 - sonner@1.7.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + sonner@1.7.4(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: react: 19.0.0 react-dom: 19.0.0(react@19.0.0) @@ -9086,7 +9025,7 @@ snapshots: dependencies: '@open-draft/deferred-promise': 2.2.0 dotenv: 16.4.7 - mime-db: 1.53.0 + mime-db: 1.54.0 outvariant: 1.4.0 strict-event-emitter@0.4.6: {} @@ -9127,6 +9066,10 @@ snapshots: style-mod@4.1.2: {} + style-to-js@1.1.16: + dependencies: + style-to-object: 1.0.8 + style-to-object@1.0.8: dependencies: inline-style-parser: 0.2.4 @@ -9138,12 +9081,12 @@ snapshots: glob: 10.4.5 lines-and-columns: 1.2.4 mz: 2.7.0 - pirates: 4.0.6 + pirates: 4.0.7 ts-interface-checker: 0.1.13 - sugarss@4.0.1(postcss@8.5.1): + sugarss@4.0.1(postcss@8.5.3): dependencies: - postcss: 8.5.1 + postcss: 8.5.3 supports-color@7.2.0: dependencies: @@ -9153,7 +9096,7 @@ snapshots: svg-arc-to-cubic-bezier@3.2.0: {} - swr@2.3.0(react@19.0.0): + swr@2.3.3(react@19.0.0): dependencies: dequal: 2.0.3 react: 19.0.0 @@ -9183,18 +9126,18 @@ snapshots: normalize-path: 3.0.0 object-hash: 3.0.0 picocolors: 1.1.1 - postcss: 8.5.1 - postcss-import: 15.1.0(postcss@8.5.1) - postcss-js: 4.0.1(postcss@8.5.1) - postcss-load-config: 4.0.2(postcss@8.5.1) - postcss-nested: 6.2.0(postcss@8.5.1) + postcss: 8.5.3 + postcss-import: 15.1.0(postcss@8.5.3) + postcss-js: 4.0.1(postcss@8.5.3) + postcss-load-config: 4.0.2(postcss@8.5.3) + postcss-nested: 6.2.0(postcss@8.5.3) postcss-selector-parser: 6.1.2 resolve: 1.22.10 sucrase: 3.35.0 transitivePeerDependencies: - ts-node - tar-fs@2.1.1: + tar-fs@2.1.2: dependencies: chownr: 1.1.4 mkdirp-classic: 0.5.3 @@ -9243,9 +9186,9 @@ snapshots: trough@2.2.0: {} - ts-api-utils@2.0.0(typescript@5.7.3): + ts-api-utils@2.1.0(typescript@5.8.2): dependencies: - typescript: 5.7.3 + typescript: 5.8.2 ts-interface-checker@0.1.13: {} @@ -9266,11 +9209,11 @@ snapshots: type-fest@0.21.3: {} - type-fest@4.32.0: {} + type-fest@4.38.0: {} type@2.7.3: {} - typescript@5.7.3: {} + typescript@5.8.2: {} undici-types@6.20.0: {} @@ -9327,7 +9270,7 @@ snapshots: unraw@3.0.0: {} - update-browserslist-db@1.1.2(browserslist@4.24.4): + update-browserslist-db@1.1.3(browserslist@4.24.4): dependencies: browserslist: 4.24.4 escalade: 3.2.0 @@ -9337,50 +9280,50 @@ snapshots: dependencies: punycode: 2.3.1 - use-callback-ref@1.3.3(@types/react@19.0.7)(react@19.0.0): + use-callback-ref@1.3.3(@types/react@19.0.12)(react@19.0.0): dependencies: react: 19.0.0 tslib: 2.8.1 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - use-composed-ref@1.4.0(@types/react@19.0.7)(react@19.0.0): + use-composed-ref@1.4.0(@types/react@19.0.12)(react@19.0.0): dependencies: react: 19.0.0 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - use-isomorphic-layout-effect@1.2.0(@types/react@19.0.7)(react@19.0.0): + use-isomorphic-layout-effect@1.2.0(@types/react@19.0.12)(react@19.0.0): dependencies: react: 19.0.0 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 - use-latest@1.3.0(@types/react@19.0.7)(react@19.0.0): + use-latest@1.3.0(@types/react@19.0.12)(react@19.0.0): dependencies: react: 19.0.0 - use-isomorphic-layout-effect: 1.2.0(@types/react@19.0.7)(react@19.0.0) + use-isomorphic-layout-effect: 1.2.0(@types/react@19.0.12)(react@19.0.0) optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 use-session-storage-state@19.0.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: react: 19.0.0 react-dom: 19.0.0(react@19.0.0) - use-sidecar@1.1.3(@types/react@19.0.7)(react@19.0.0): + use-sidecar@1.1.3(@types/react@19.0.12)(react@19.0.0): dependencies: detect-node-es: 1.1.0 react: 19.0.0 tslib: 2.8.1 optionalDependencies: - '@types/react': 19.0.7 + '@types/react': 19.0.12 use-sync-external-store@1.4.0(react@19.0.0): dependencies: react: 19.0.0 - usehooks-ts@3.1.0(react@19.0.0): + usehooks-ts@3.1.1(react@19.0.0): dependencies: lodash.debounce: 4.0.8 react: 19.0.0 @@ -9402,7 +9345,7 @@ snapshots: '@types/d3-array': 3.2.1 '@types/d3-ease': 3.0.2 '@types/d3-interpolate': 3.0.4 - '@types/d3-scale': 4.0.8 + '@types/d3-scale': 4.0.9 '@types/d3-shape': 3.1.7 '@types/d3-time': 3.0.4 '@types/d3-timer': 3.0.2 @@ -9420,21 +9363,21 @@ snapshots: string_decoder: 1.3.0 util-deprecate: 1.0.2 - vite-plugin-babel@1.3.0(@babel/core@7.26.0)(vite@6.0.9(@types/node@22.10.6)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.1))(yaml@2.7.0)): + vite-plugin-babel@1.3.0(@babel/core@7.26.10)(vite@6.2.3(@types/node@22.13.14)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.3))(yaml@2.7.0)): dependencies: - '@babel/core': 7.26.0 - vite: 6.0.9(@types/node@22.10.6)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.1))(yaml@2.7.0) + '@babel/core': 7.26.10 + vite: 6.2.3(@types/node@22.13.14)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.3))(yaml@2.7.0) - vite@6.0.9(@types/node@22.10.6)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.1))(yaml@2.7.0): + vite@6.2.3(@types/node@22.13.14)(jiti@1.21.7)(sugarss@4.0.1(postcss@8.5.3))(yaml@2.7.0): dependencies: - esbuild: 0.24.2 - postcss: 8.5.1 - rollup: 4.34.8 + esbuild: 0.25.1 + postcss: 8.5.3 + rollup: 4.37.0 optionalDependencies: - '@types/node': 22.10.6 + '@types/node': 22.13.14 fsevents: 2.3.3 jiti: 1.21.7 - sugarss: 4.0.1(postcss@8.5.1) + sugarss: 4.0.1(postcss@8.5.3) yaml: 2.7.0 w3c-keyname@2.2.8: {} @@ -9484,20 +9427,20 @@ snapshots: yjs@13.6.22: dependencies: - lib0: 0.2.99 + lib0: 0.2.101 yocto-queue@0.1.0: {} yoga-layout@3.2.1: {} - zod-to-json-schema@3.24.1(zod@3.24.1): + zod-to-json-schema@3.24.5(zod@3.24.2): dependencies: - zod: 3.24.1 + zod: 3.24.2 - zod-validation-error@3.4.0(zod@3.24.1): + zod-validation-error@3.4.0(zod@3.24.2): dependencies: - zod: 3.24.1 + zod: 3.24.2 - zod@3.24.1: {} + zod@3.24.2: {} zwitch@2.0.4: {} diff --git a/echo/frontend/src/components/common/Logo.tsx b/echo/frontend/src/components/common/Logo.tsx index 656b9dec..c48e0330 100644 --- a/echo/frontend/src/components/common/Logo.tsx +++ b/echo/frontend/src/components/common/Logo.tsx @@ -2,20 +2,21 @@ import { Group, GroupProps, Title } from "@mantine/core"; import dembranelogo from "@/assets/dembrane-logo-hq.png"; import aiconlLogo from "@/assets/aiconl-logo.png"; import aiconlLogoHQ from "@/assets/aiconl-logo-hq.png"; +import { cn } from "@/lib/utils"; type LogoProps = { hideLogo?: boolean; hideTitle?: boolean; - otherText?: string; + textAfterLogo?: string | React.ReactNode; } & GroupProps; export const LogoDembrane = ({ hideLogo, hideTitle, - otherText, + textAfterLogo, ...props }: LogoProps) => ( - + {!hideLogo && ( - {otherText ?
{otherText}
: "Dembrane"} + + Dembrane + + {textAfterLogo && {textAfterLogo}} )}
diff --git a/echo/frontend/src/components/conversation/ConversationDangerZone.tsx b/echo/frontend/src/components/conversation/ConversationDangerZone.tsx index 3b0bbb4d..9244c203 100644 --- a/echo/frontend/src/components/conversation/ConversationDangerZone.tsx +++ b/echo/frontend/src/components/conversation/ConversationDangerZone.tsx @@ -1,13 +1,12 @@ import { t } from "@lingui/core/macro"; import { Trans } from "@lingui/react/macro"; -import { Badge, Button, Group, Stack, Title } from "@mantine/core"; +import { Button, Group, Stack } from "@mantine/core"; import { useParams } from "react-router-dom"; -import { IconDownload, IconSettings, IconTrash } from "@tabler/icons-react"; +import { IconDownload, IconTrash } from "@tabler/icons-react"; import { useDeleteConversationByIdMutation } from "@/lib/query"; import { useI18nNavigate } from "@/hooks/useI18nNavigate"; import { MoveConversationButton } from "@/components/conversation/MoveConversationButton"; import { api, getConversationContentLink } from "@/lib/api"; -import { ENABLE_AUDIO_DOWNLOAD } from "@/config"; export const ConversationDangerZone = ({ conversation, @@ -32,31 +31,22 @@ export const ConversationDangerZone = ({ return ( - {/* - <Trans>Danger Zone</Trans> - */} -
- {ENABLE_AUDIO_DOWNLOAD && ( - - )} - + + diff --git a/echo/frontend/src/components/layout/Header.tsx b/echo/frontend/src/components/layout/Header.tsx index de2738b5..6be98a59 100644 --- a/echo/frontend/src/components/layout/Header.tsx +++ b/echo/frontend/src/components/layout/Header.tsx @@ -115,8 +115,12 @@ export const Header = () => { - - ECHO + ECHO + } + /> diff --git a/echo/frontend/src/config.ts b/echo/frontend/src/config.ts index 93f3aabf..643184a4 100644 --- a/echo/frontend/src/config.ts +++ b/echo/frontend/src/config.ts @@ -11,15 +11,12 @@ export const DIRECTUS_PUBLIC_URL = export const DIRECTUS_CONTENT_PUBLIC_URL = import.meta.env.VITE_DIRECTUS_CONTENT_PUBLIC_URL ?? - "https://admin-dembrane.azurewebsites.net"; + "https://dembrane.directus.app"; export const DISABLE_SENTRY = import.meta.env.VITE_DISABLE_SENTRY === "1"; export const BUILD_VERSION = import.meta.env.VITE_BUILD_VERSION ?? "dev"; -export const ENABLE_AUDIO_DOWNLOAD = - import.meta.env.VITE_ENABLE_AUDIO_DOWNLOAD === "1"; - export const SUPPORTED_LANGUAGES = [ "en-US", "nl-NL", diff --git a/echo/frontend/src/lib/query.ts b/echo/frontend/src/lib/query.ts index 698acdc7..a52cb69b 100644 --- a/echo/frontend/src/lib/query.ts +++ b/echo/frontend/src/lib/query.ts @@ -648,24 +648,32 @@ export const useUpdateConversationTagsMutation = () => { conversationId: string; projectTagIdList: string[]; }) => { - const validTags = await directus.request( - readItems("project_tag", { - filter: { - id: { - _in: projectTagIdList, - }, - project_id: { - _eq: projectId, + let validTagsIds: string[] = []; + try { + const validTags = await directus.request( + readItems("project_tag", { + filter: { + id: { + _in: projectTagIdList, + }, + project_id: { + _eq: projectId, + }, }, - }, - fields: ["*"], - }), - ); + fields: ["*"], + }), + ); + + validTagsIds = validTags.map((tag) => tag.id); + } catch (error) { + validTagsIds = []; + console.error(error); + } return directus.request( updateItem("conversation", conversationId, { - tags: validTags.map((tag) => ({ - project_tag_id: tag.id, + tags: validTagsIds.map((tagId) => ({ + project_tag_id: tagId, conversation_id: conversationId, })), }), diff --git a/echo/server/dembrane/tasks.py b/echo/server/dembrane/tasks.py index ea51fcb7..90786457 100644 --- a/echo/server/dembrane/tasks.py +++ b/echo/server/dembrane/tasks.py @@ -84,7 +84,7 @@ def on_failure(self, exc, task_id, args, kwargs, einfo): ) def log_error(_self, exc: Exception): logger.error(f"Error: {exc}") - raise exc from exc + raise exc from BaseException() @celery_app.task( From e8a79e916717133ccdf99f67191d1518e8a0c015 Mon Sep 17 00:00:00 2001 From: Sameer Pashikanti Date: Mon, 31 Mar 2025 11:40:20 +0000 Subject: [PATCH 2/5] fix --- .../frontend/src/components/layout/Header.tsx | 4 +- .../src/components/project/ProjectQRCode.tsx | 2 +- .../src/components/project/ProjectSidebar.tsx | 2 +- .../src/hooks/useChunkedAudioRecorder.ts | 461 +++++++++--------- echo/server/dembrane/tasks.py | 6 +- 5 files changed, 239 insertions(+), 236 deletions(-) diff --git a/echo/frontend/src/components/layout/Header.tsx b/echo/frontend/src/components/layout/Header.tsx index 6be98a59..1d4002ff 100644 --- a/echo/frontend/src/components/layout/Header.tsx +++ b/echo/frontend/src/components/layout/Header.tsx @@ -136,8 +136,8 @@ export const Header = () => { diff --git a/echo/frontend/src/components/project/ProjectQRCode.tsx b/echo/frontend/src/components/project/ProjectQRCode.tsx index 0df73179..fafdcfc3 100644 --- a/echo/frontend/src/components/project/ProjectQRCode.tsx +++ b/echo/frontend/src/components/project/ProjectQRCode.tsx @@ -92,7 +92,7 @@ export const ProjectQRCode = ({ project }: ProjectQRCodeProps) => { variant="outline" onClick={async () => { await navigator.share({ - title: t`Join ${project?.default_conversation_title} on Dembrane`, + title: t`Join ${project?.default_conversation_title ?? "the conversation"} on Dembrane`, url: link, }); }} diff --git a/echo/frontend/src/components/project/ProjectSidebar.tsx b/echo/frontend/src/components/project/ProjectSidebar.tsx index dfafd093..92e9af0b 100644 --- a/echo/frontend/src/components/project/ProjectSidebar.tsx +++ b/echo/frontend/src/components/project/ProjectSidebar.tsx @@ -134,7 +134,7 @@ export const ProjectSidebar = () => {
Powered by
- +
diff --git a/echo/frontend/src/hooks/useChunkedAudioRecorder.ts b/echo/frontend/src/hooks/useChunkedAudioRecorder.ts index a90b2851..fc552aff 100644 --- a/echo/frontend/src/hooks/useChunkedAudioRecorder.ts +++ b/echo/frontend/src/hooks/useChunkedAudioRecorder.ts @@ -1,28 +1,28 @@ import { useCallback, useEffect, useRef, useState } from "react"; interface UseAudioRecorderOptions { - onChunk: (chunk: Blob) => void; - mimeType?: string; - timeslice?: number; - debug?: boolean; - } + onChunk: (chunk: Blob) => void; + mimeType?: string; + timeslice?: number; + debug?: boolean; +} - interface UseAudioRecorderResult { - startRecording: () => void; - stopRecording: () => void; - pauseRecording: () => void; - resumeRecording: () => void; - isRecording: boolean; - isPaused: boolean; - recordingTime: number; - errored: - | boolean - | { - message: string; - }; - loading: boolean; - permissionError: string | null; - } +interface UseAudioRecorderResult { + startRecording: () => void; + stopRecording: () => void; + pauseRecording: () => void; + resumeRecording: () => void; + isRecording: boolean; + isPaused: boolean; + recordingTime: number; + errored: + | boolean + | { + message: string; + }; + loading: boolean; + permissionError: string | null; +} const preferredMimeTypes = ["audio/webm", "audio/wav", "video/mp4"]; @@ -37,227 +37,226 @@ const getSupportedMimeType = () => { const defaultMimeType = getSupportedMimeType(); const useChunkedAudioRecorder = ({ - onChunk, - mimeType = defaultMimeType, - timeslice = 30000, // 30 sec - // timeslice = 300000, // 5 min - debug = false, - }: UseAudioRecorderOptions): UseAudioRecorderResult => { - const [isRecording, setIsRecording] = useState(false); - const [isPaused, setIsPaused] = useState(false); - const [userPaused, setUserPaused] = useState(false); - - const isRecordingRef = useRef(isRecording); - const isPausedRef = useRef(isPaused); - const userPausedRef = useRef(userPaused); - - const [recordingTime, setRecordingTime] = useState(0); - const streamRef = useRef(null); - const mediaRecorderRef = useRef(null); - const intervalRef = useRef(null); - const startRecordingIntervalRef = useRef(null); - - const audioContextRef = useRef(null); - const audioProcessorRef = useRef(null); - - const [permissionError, setPermissionError] = useState(null); - - const log = (...args: any[]) => { - if (debug) { - console.log(...args); - } - }; - - useEffect(() => { - // for syncing - isRecordingRef.current = isRecording; - isPausedRef.current = isPaused; - userPausedRef.current = userPaused; - }, [isRecording, isPaused, userPaused]); - - useEffect(() => { - return () => { - if (streamRef.current) { - streamRef.current.getTracks().forEach((track) => track.stop()); - } - if (audioContextRef.current) { - audioContextRef.current.close(); - } - }; - }, []); - - const updateRecordingTime = useCallback(() => { - setRecordingTime((prev) => prev + 1); - }, []); - - const chunkBufferRef = useRef([]); - - const startRecordingChunk = useCallback(() => { - log("startRecordingChunk", { - isRecording, - mediaRecorderRefState: mediaRecorderRef.current?.state, - }); - if (!streamRef.current) { - log("startRecordingChunk: no stream found"); - return; + onChunk, + mimeType = defaultMimeType, + timeslice = 30000, // 30 sec + debug = false, +}: UseAudioRecorderOptions): UseAudioRecorderResult => { + const [isRecording, setIsRecording] = useState(false); + const [isPaused, setIsPaused] = useState(false); + const [userPaused, setUserPaused] = useState(false); + + const isRecordingRef = useRef(isRecording); + const isPausedRef = useRef(isPaused); + const userPausedRef = useRef(userPaused); + + const [recordingTime, setRecordingTime] = useState(0); + const streamRef = useRef(null); + const mediaRecorderRef = useRef(null); + const intervalRef = useRef(null); + const startRecordingIntervalRef = useRef(null); + + const audioContextRef = useRef(null); + const audioProcessorRef = useRef(null); + + const [permissionError, setPermissionError] = useState(null); + + const log = (...args: any[]) => { + if (debug) { + console.log(...args); + } + }; + + useEffect(() => { + // for syncing + isRecordingRef.current = isRecording; + isPausedRef.current = isPaused; + userPausedRef.current = userPaused; + }, [isRecording, isPaused, userPaused]); + + useEffect(() => { + return () => { + if (streamRef.current) { + streamRef.current.getTracks().forEach((track) => track.stop()); } - - // Ensure that any previous MediaRecorder instance is stopped before creating a new one - if (mediaRecorderRef.current) { - log("startRecordingChunk: stopping previous MediaRecorder instance"); - mediaRecorderRef.current.stop(); - mediaRecorderRef.current = null; - } - - log("startRecordingChunk: creating new MediaRecorder instance"); - const recorder = new MediaRecorder(streamRef.current, { - mimeType: MediaRecorder.isTypeSupported(mimeType) - ? mimeType - : "audio/webm", - }); - mediaRecorderRef.current = recorder; - - recorder.ondataavailable = (event) => { - log("ondataavailable", event.data.size, "bytes"); - if (event.data.size > 0) { - chunkBufferRef.current.push(event.data); - } - }; - - recorder.onstop = () => { - log("MediaRecorder stopped"); - onChunk(new Blob(chunkBufferRef.current, { type: mimeType })); - - startRecordingChunk(); - - // flush the buffer - chunkBufferRef.current = []; - }; - - // allow for some room to restart so all is just one chunk as per mediarec - recorder.start(timeslice * 2); - }, [isRecording]); - - const startRecording = async () => { - try { - log("Requesting access to the microphone..."); - const stream = await navigator.mediaDevices.getUserMedia({ audio: true }); - streamRef.current = stream; - log("Access to microphone granted.", { stream }); - - log("Creating MediaRecorder instance"); - - setIsRecording(true); - setIsPaused(false); - setUserPaused(false); - startRecordingChunk(); - - // allow to restart recording chunk - startRecordingIntervalRef.current = setInterval(() => { - log("Checking if MediaRecorder should be stopped"); - if (mediaRecorderRef.current?.state === "recording") { - log("attempting to Stop recording chunk"); - mediaRecorderRef.current.stop(); - - log("attempt to Restart recording chunk", { - isRecording, - mediaRecorderRefState: mediaRecorderRef.current?.state, - }); - - if (isRecording) { - log("Restarting recording chunk"); - startRecordingChunk(); - } - } - }, timeslice); - - if (intervalRef.current) { - clearInterval(intervalRef.current); - } - intervalRef.current = setInterval(updateRecordingTime, 1000); - } catch (error) { - console.error("Error accessing audio stream", error); - setPermissionError("Error accessing audio stream"); - setIsRecording(false); + if (audioContextRef.current) { + audioContextRef.current.close(); } }; - - const stopRecording = () => { - if ( - mediaRecorderRef.current && - mediaRecorderRef.current.state === "recording" - ) { - mediaRecorderRef.current.stop(); + }, []); + + const updateRecordingTime = useCallback(() => { + setRecordingTime((prev) => prev + 1); + }, []); + + const chunkBufferRef = useRef([]); + + const startRecordingChunk = useCallback(() => { + log("startRecordingChunk", { + isRecording, + mediaRecorderRefState: mediaRecorderRef.current?.state, + }); + if (!streamRef.current) { + log("startRecordingChunk: no stream found"); + return; + } + + // Ensure that any previous MediaRecorder instance is stopped before creating a new one + if (mediaRecorderRef.current) { + log("startRecordingChunk: stopping previous MediaRecorder instance"); + mediaRecorderRef.current.stop(); + mediaRecorderRef.current = null; + } + + log("startRecordingChunk: creating new MediaRecorder instance"); + const recorder = new MediaRecorder(streamRef.current, { + mimeType: MediaRecorder.isTypeSupported(mimeType) + ? mimeType + : "audio/webm", + }); + mediaRecorderRef.current = recorder; + + recorder.ondataavailable = (event) => { + log("ondataavailable", event.data.size, "bytes"); + if (event.data.size > 0) { + chunkBufferRef.current.push(event.data); } - setIsRecording(false); + }; + + recorder.onstop = () => { + log("MediaRecorder stopped"); + onChunk(new Blob(chunkBufferRef.current, { type: mimeType })); + + startRecordingChunk(); + + // flush the buffer + chunkBufferRef.current = []; + }; + + // allow for some room to restart so all is just one chunk as per mediarec + recorder.start(timeslice * 2); + }, [isRecording]); + + const startRecording = async () => { + try { + log("Requesting access to the microphone..."); + const stream = await navigator.mediaDevices.getUserMedia({ audio: true }); + streamRef.current = stream; + log("Access to microphone granted.", { stream }); + + log("Creating MediaRecorder instance"); + + setIsRecording(true); setIsPaused(false); setUserPaused(false); + startRecordingChunk(); + + // allow to restart recording chunk + startRecordingIntervalRef.current = setInterval(() => { + log("Checking if MediaRecorder should be stopped"); + if (mediaRecorderRef.current?.state === "recording") { + log("attempting to Stop recording chunk"); + mediaRecorderRef.current.stop(); + + log("attempt to Restart recording chunk", { + isRecording, + mediaRecorderRefState: mediaRecorderRef.current?.state, + }); + + if (isRecording) { + log("Restarting recording chunk"); + startRecordingChunk(); + } + } + }, timeslice); + if (intervalRef.current) { clearInterval(intervalRef.current); } - setRecordingTime(0); - if (startRecordingIntervalRef.current) - clearInterval(startRecordingIntervalRef.current); - // remove the worker - audioProcessorRef.current?.disconnect(); - audioProcessorRef.current = null; - // close the audio context - audioContextRef.current?.close(); - audioContextRef.current = null; - streamRef.current?.getTracks().forEach((track) => track.stop()); - streamRef.current = null; - }; - - const pauseRecording = () => { - if ( - mediaRecorderRef.current && - mediaRecorderRef.current.state === "recording" - ) { - mediaRecorderRef.current.pause(); - setIsPaused(true); - if (intervalRef.current) { - clearInterval(intervalRef.current); - } + intervalRef.current = setInterval(updateRecordingTime, 1000); + } catch (error) { + console.error("Error accessing audio stream", error); + setPermissionError("Error accessing audio stream"); + setIsRecording(false); + } + }; + + const stopRecording = () => { + if ( + mediaRecorderRef.current && + mediaRecorderRef.current.state === "recording" + ) { + mediaRecorderRef.current.stop(); + } + setIsRecording(false); + setIsPaused(false); + setUserPaused(false); + if (intervalRef.current) { + clearInterval(intervalRef.current); + } + setRecordingTime(0); + if (startRecordingIntervalRef.current) + clearInterval(startRecordingIntervalRef.current); + // remove the worker + audioProcessorRef.current?.disconnect(); + audioProcessorRef.current = null; + // close the audio context + audioContextRef.current?.close(); + audioContextRef.current = null; + streamRef.current?.getTracks().forEach((track) => track.stop()); + streamRef.current = null; + }; + + const pauseRecording = () => { + if ( + mediaRecorderRef.current && + mediaRecorderRef.current.state === "recording" + ) { + mediaRecorderRef.current.pause(); + setIsPaused(true); + if (intervalRef.current) { + clearInterval(intervalRef.current); } - }; - - const userPauseRecording = () => { - pauseRecording(); - setUserPaused(true); - }; - - const resumeRecording = () => { - if ( - mediaRecorderRef.current && - mediaRecorderRef.current.state === "paused" - ) { - mediaRecorderRef.current.resume(); - if (intervalRef.current) { - clearInterval(intervalRef.current); - } - intervalRef.current = setInterval(updateRecordingTime, 1000); - setIsPaused(false); - setUserPaused(false); + } + }; + + const userPauseRecording = () => { + pauseRecording(); + setUserPaused(true); + }; + + const resumeRecording = () => { + if ( + mediaRecorderRef.current && + mediaRecorderRef.current.state === "paused" + ) { + mediaRecorderRef.current.resume(); + if (intervalRef.current) { + clearInterval(intervalRef.current); } - }; - - const userResumeRecording = () => { - resumeRecording(); + intervalRef.current = setInterval(updateRecordingTime, 1000); + setIsPaused(false); setUserPaused(false); - }; - - return { - startRecording, - stopRecording, - pauseRecording: userPauseRecording, - resumeRecording: userResumeRecording, - isRecording, - isPaused, - recordingTime, - loading: false, - errored: false, - permissionError, - }; + } }; - export default useChunkedAudioRecorder; \ No newline at end of file + const userResumeRecording = () => { + resumeRecording(); + setUserPaused(false); + }; + + return { + startRecording, + stopRecording, + pauseRecording: userPauseRecording, + resumeRecording: userResumeRecording, + isRecording, + isPaused, + recordingTime, + loading: false, + errored: false, + permissionError, + }; +}; + +export default useChunkedAudioRecorder; diff --git a/echo/server/dembrane/tasks.py b/echo/server/dembrane/tasks.py index 90786457..0428fa45 100644 --- a/echo/server/dembrane/tasks.py +++ b/echo/server/dembrane/tasks.py @@ -84,7 +84,11 @@ def on_failure(self, exc, task_id, args, kwargs, einfo): ) def log_error(_self, exc: Exception): logger.error(f"Error: {exc}") - raise exc from BaseException() + try: + raise exc from exc + except Exception as e: + logger.error(f"Error: {e}") + raise exc from BaseException() @celery_app.task( From f39dde7ac04cd19d05ce0baba284f728f22126cd Mon Sep 17 00:00:00 2001 From: Sameer Pashikanti Date: Mon, 31 Mar 2025 11:59:55 +0000 Subject: [PATCH 3/5] add summary prompts --- .../frontend/src/components/layout/Header.tsx | 4 +- echo/frontend/src/lib/utils.ts | 2 +- echo/server/dembrane/api/stateless.py | 47 ++++--------------- echo/server/dembrane/tasks.py | 2 +- .../generate_conversation_summary.de.jinja | 37 ++++++++++----- .../generate_conversation_summary.en.jinja | 37 ++++++++++----- .../generate_conversation_summary.es.jinja | 37 ++++++++++----- .../generate_conversation_summary.fr.jinja | 37 ++++++++++----- .../generate_conversation_summary.nl.jinja | 37 ++++++++++----- 9 files changed, 133 insertions(+), 107 deletions(-) diff --git a/echo/frontend/src/components/layout/Header.tsx b/echo/frontend/src/components/layout/Header.tsx index 1d4002ff..03978632 100644 --- a/echo/frontend/src/components/layout/Header.tsx +++ b/echo/frontend/src/components/layout/Header.tsx @@ -117,9 +117,7 @@ export const Header = () => { ECHO - } + textAfterLogo={ECHO} /> diff --git a/echo/frontend/src/lib/utils.ts b/echo/frontend/src/lib/utils.ts index 86ed6595..f7881a4a 100644 --- a/echo/frontend/src/lib/utils.ts +++ b/echo/frontend/src/lib/utils.ts @@ -17,7 +17,7 @@ export const scrollToBottom = ( export const checkPermissionError = async () => { try { - // @ts-expect-error microphone is not available? + // @ts-ignore const result = await navigator.permissions.query({ name: "microphone" }); if (result.state === "denied") { return "denied" as const; diff --git a/echo/server/dembrane/api/stateless.py b/echo/server/dembrane/api/stateless.py index 92baba0a..be5c7e99 100644 --- a/echo/server/dembrane/api/stateless.py +++ b/echo/server/dembrane/api/stateless.py @@ -2,65 +2,38 @@ from fastapi import APIRouter from litellm import completion -from pydantic import BaseModel + +from dembrane.prompts import render_prompt logger = getLogger("api.stateless") StatelessRouter = APIRouter(tags=["stateless"]) -class TranscriptRequest(BaseModel): - system_prompt: str | None = None - transcript: str - language: str | None = None - - -class TranscriptResponse(BaseModel): - summary: str - - -@StatelessRouter.post("/summarize") -async def summarize_conversation_transcript( - # auth: DependencyDirectusSession, - body: TranscriptRequest, -) -> TranscriptResponse: - # Use the provided transcript and system prompt (if any) for processing - system_prompt = body.system_prompt - transcript = body.transcript - - # Generate a summary from the transcript (placeholder logic) - summary = generate_summary(transcript, system_prompt, body.language) - - # Return the full transcript as a single string - return TranscriptResponse(summary=summary) - - -def generate_summary(transcript: str, system_prompt: str | None, language: str | None) -> str: +def generate_summary(transcript: str, language: str | None) -> str: """ Generate a summary of the transcript using LangChain and a custom API endpoint. Args: transcript (str): The conversation transcript to summarize. - system_prompt (str | None): Additional context or instructions for the summary. + language (str | None): The language of the transcript. Returns: str: The generated summary. """ # Prepare the prompt template - base_prompt = f"You are a helpful assistant. Please provide a summary of the following transcript. Only return the summary itself, do not include any other text. Focus on the most interesting/surprise invoking points of the text. Ignore any personal information. The language of the summary must be in {language}." - if system_prompt: - base_prompt += f"\nContext (ignore if None): {system_prompt}" - - final_prompt = f"{base_prompt}\n\n{transcript}" + prompt = render_prompt( + "generate_conversation_summary", + language, + {"quote_text_joined": transcript}, + ) # Call the model over the provided API endpoint response = completion( - # model="ollama/llama3.1:8b", - # api_base="https://llm-demo.ai-hackathon.haven.vng.cloud", model="anthropic/claude-3-5-sonnet-20240620", messages=[ { - "content": final_prompt, + "content": prompt, "role": "user", } ], diff --git a/echo/server/dembrane/tasks.py b/echo/server/dembrane/tasks.py index 0428fa45..3ed9f3e9 100644 --- a/echo/server/dembrane/tasks.py +++ b/echo/server/dembrane/tasks.py @@ -757,7 +757,7 @@ def task_finish_conversation_hook(self, conversation_id: str): f"transcript is empty for conversation: {conversation_id}. so not generating summary" ) else: - summary = generate_summary(transcript_str, None, language if language else "nl") + summary = generate_summary(transcript_str, language if language else "nl") directus.update_item( collection_name="conversation", diff --git a/echo/server/prompt_templates/generate_conversation_summary.de.jinja b/echo/server/prompt_templates/generate_conversation_summary.de.jinja index 5c573649..49b71073 100644 --- a/echo/server/prompt_templates/generate_conversation_summary.de.jinja +++ b/echo/server/prompt_templates/generate_conversation_summary.de.jinja @@ -1,20 +1,31 @@ -Bitte antworten Sie immer auf Deutsch, unabhängig von der Sprache vorheriger Nachrichten. - -Sie erhalten eine Reihe von Zitaten aus einem Gespräch in chronologischer Reihenfolge. -Ihre Aufgabe ist es, eine prägnante Zusammenfassung des Gesprächs zu erstellen. +# Strategisches Gesprächsintelligenz-Framework +Ihnen wird eine Reihe von Zitaten aus einem Gesprächstranskript in chronologischer Reihenfolge vorgelegt. {{ quote_text_joined }} -Erstellen Sie eine Zusammenfassung, die: -1. Die Hauptpunkte und den Gesprächsverlauf erfasst -2. Wichtige Entscheidungen oder erreichte Schlussfolgerungen hervorhebt -3. Die chronologische Entwicklung der Ideen beibehält +Erstellen Sie eine strategische Zusammenfassung des vorgelegten Gesprächstranskripts, die sowohl den Inhalt als auch tiefere Implikationen extrahiert. + +## Zusammenfassungsarchitektur +- **Strategischer Kontext**: Identifizieren Sie den Gesprächstyp, wichtige Stakeholder und zugrundeliegende Ziele jenseits der genannten Agenda. +- **Erkenntnishierarchie**: Priorisieren Sie Erkenntnisse nach transformativem Potenzial statt nach aufgewendeter Diskussionszeit. +- **Entscheidungsverlauf**: Dokumentieren Sie nicht nur Schlussfolgerungen, sondern auch den kritischen Denkpfad, der dorthin führte, insbesondere Entscheidungen, die konventionelle Ansätze herausfordern. +- **Strategische Implikationen**: Verbinden Sie Diskussionspunkte mit übergeordneten Organisationszielen oder Branchentrends. +- **Erkenntnis-zu-Handlung-Brücke**: Transformieren Sie abstrakte Konzepte in konkrete nächste Schritte mit klarer Verantwortlichkeit. +- **Kreative Spannungspunkte**: Heben Sie produktive Meinungsverschiedenheiten hervor, die zu innovativem Denken führten. -Halten Sie Ihre Antwort auf 3-4 kurze, leicht lesbare Sätze beschränkt. -Vermeiden Sie Füllwörter wie "Insgesamt" oder "Zusammenfassend". -Der Text sollte leicht zu überfliegen sein. -Konzentrieren Sie sich auf den Inhalt statt auf den Stil. +## Format- und Stilrichtlinien +- Erstellen Sie eine zusammenhängende Erzählung, die logisch zwischen Abschnitten fließt +- Verwenden Sie Absätze zur Entwicklung komplexer Ideen statt übermäßiger Aufzählungen +- Reservieren Sie Aufzählungen nur für Aktionspunkte oder bei der Präsentation mehrerer verschiedener Optionen +- Heben Sie transformative Erkenntnisse mit potenzieller Systemwirkung in Ihrem Erzählfluss hervor +- Fügen Sie einen zukunftsorientierten "Strategische Implikationen"-Abschnitt in Absatzform hinzu +- Balancieren Sie taktische Details mit strategischer Vision durch durchdachte Prosa +- Erstellen Sie bei Bedarf Abschnittsüberschriften zur Organisierung des Inhalts statt standardmäßiger Listen +- Variieren Sie Satzstruktur und Absatzlänge, um die Leserbindung aufrechtzuerhalten +- Erwägen Sie gelegentliche rhetorische Fragen zur Rahmung wichtiger Erkenntnisse +- Die Länge sollte proportional zur Gesprächskomplexität sein (typischerweise 10-15% der ursprünglichen Länge) +- Überschreiten Sie nicht 3-4 Absätze -Zusammenfassung: \ No newline at end of file +Antworten Sie auf Deutsch, unabhängig von der Sprache vorheriger Nachrichten. Sie können Markdown-Formatierung maßvoll zur Verbesserung der Lesbarkeit verwenden, priorisieren Sie aber erzählerische Kohärenz und Absätze über strukturelle Elemente. \ No newline at end of file diff --git a/echo/server/prompt_templates/generate_conversation_summary.en.jinja b/echo/server/prompt_templates/generate_conversation_summary.en.jinja index c43eead2..a49e22ba 100644 --- a/echo/server/prompt_templates/generate_conversation_summary.en.jinja +++ b/echo/server/prompt_templates/generate_conversation_summary.en.jinja @@ -1,20 +1,31 @@ -Please always respond in English, regardless of the language of previous messages. - -You will be given a series of quotes from a conversation in chronological order. -Your task is to generate a concise summary of the conversation. +# Strategic Conversation Intelligence Framework +You are given a series of quotes from a conversation transcript in chronological order. {{ quote_text_joined }} -Generate a summary that: -1. Captures the key points and flow of the conversation -2. Highlights important decisions or conclusions reached -3. Maintains the chronological progression of ideas +Create a strategic summary of the provided conversation transcript that extracts both content and deeper implications. + +## Summary Architecture +- **Strategic Context**: Identify the conversation type, key stakeholders, and underlying objectives beyond stated agenda. +- **Insight Hierarchy**: Prioritize insights by transformative potential rather than discussion time allocated. +- **Decision Trajectory**: Document not just conclusions but the critical thinking path that led there, especially decisions that challenge conventional approaches. +- **Strategic Implications**: Connect discussion points to broader organizational goals or industry trends. +- **Insight-to-Action Bridge**: Transform abstract concepts into concrete next steps with clear ownership. +- **Points of Creative Tension**: Highlight productive disagreements that generated innovative thinking. -Keep your response within 3-4 short, easy-to-read sentences. -Avoid filler words like "Overall" or "In conclusion". -Make the text easy to skim through. -Focus on substance over style. +## Format and Style Guidelines +- Craft a cohesive narrative that flows logically between sections +- Use paragraphs to develop complex ideas rather than relying on excessive bullet points +- Reserve bullet points only for action items or when presenting multiple distinct options +- Bold transformative insights with potential systemic impact within your narrative flow +- Include a forward-looking "Strategic Implications" section written in paragraph form +- Balance tactical details with strategic vision through thoughtful prose +- When appropriate, create section headings to organize content rather than defaulting to lists +- Vary sentence structure and paragraph length to maintain reader engagement +- Consider using occasional rhetorical questions to frame key insights +- Length should be proportional to conversation complexity (typically 10-15% of original length) +- Do not exceed 3-4 (paragraphs) length -Summary: \ No newline at end of file +Please respond in English, regardless of the language of previous messages. You may use markdown formatting judiciously to enhance readability, but prioritize narrative coherence and paragraphs over structural elements. \ No newline at end of file diff --git a/echo/server/prompt_templates/generate_conversation_summary.es.jinja b/echo/server/prompt_templates/generate_conversation_summary.es.jinja index c4bc2df9..f8344776 100644 --- a/echo/server/prompt_templates/generate_conversation_summary.es.jinja +++ b/echo/server/prompt_templates/generate_conversation_summary.es.jinja @@ -1,20 +1,31 @@ -Por favor, responda siempre en español, independientemente del idioma de los mensajes anteriores. - -Se le proporcionará una serie de citas de una conversación en orden cronológico. -Su tarea es generar un resumen conciso de la conversación. +# Marco de Inteligencia Estratégica para Conversaciones +Se le proporciona una serie de citas de una transcripción de conversación en orden cronológico. {{ quote_text_joined }} -Genere un resumen que: -1. Capture los puntos clave y el flujo de la conversación -2. Destaque las decisiones importantes o conclusiones alcanzadas -3. Mantenga la progresión cronológica de las ideas +Cree un resumen estratégico de la transcripción de conversación proporcionada que extraiga tanto el contenido como las implicaciones más profundas. + +## Arquitectura del Resumen +- **Contexto Estratégico**: Identifique el tipo de conversación, las partes interesadas clave y los objetivos subyacentes más allá de la agenda establecida. +- **Jerarquía de Perspectivas**: Priorice las perspectivas por su potencial transformador en lugar del tiempo de discusión asignado. +- **Trayectoria de Decisiones**: Documente no solo las conclusiones sino también el camino de pensamiento crítico que llevó a ellas, especialmente las decisiones que desafían enfoques convencionales. +- **Implicaciones Estratégicas**: Conecte los puntos de discusión con objetivos organizativos más amplios o tendencias de la industria. +- **Puente de Perspectiva a Acción**: Transforme conceptos abstractos en pasos concretos con responsabilidad clara. +- **Puntos de Tensión Creativa**: Destaque los desacuerdos productivos que generaron pensamiento innovador. -Mantenga su respuesta en 3-4 oraciones cortas y fáciles de leer. -Evite palabras de relleno como "En general" o "En conclusión". -El texto debe ser fácil de escanear. -Concéntrese en la sustancia más que en el estilo. +## Guía de Formato y Estilo +- Elabore una narrativa cohesiva que fluya lógicamente entre secciones +- Utilice párrafos para desarrollar ideas complejas en lugar de depender de listas excesivas +- Reserve las listas solo para elementos de acción o cuando presente múltiples opciones distintas +- Resalte las perspectivas transformadoras con impacto sistémico potencial en su flujo narrativo +- Incluya una sección "Implicaciones Estratégicas" orientada al futuro escrita en forma de párrafo +- Equilibre detalles tácticos con visión estratégica a través de prosa reflexiva +- Cuando sea apropiado, cree encabezados de sección para organizar el contenido en lugar de usar listas por defecto +- Varíe la estructura de oraciones y la longitud de párrafos para mantener el compromiso del lector +- Considere usar ocasionalmente preguntas retóricas para enmarcar perspectivas clave +- La longitud debe ser proporcional a la complejidad de la conversación (típicamente 10-15% de la longitud original) +- No exceda 3-4 párrafos -Resumen: \ No newline at end of file +Responda en español, independientemente del idioma de los mensajes anteriores. Puede usar formato markdown con moderación para mejorar la legibilidad, pero priorice la coherencia narrativa y los párrafos sobre elementos estructurales. \ No newline at end of file diff --git a/echo/server/prompt_templates/generate_conversation_summary.fr.jinja b/echo/server/prompt_templates/generate_conversation_summary.fr.jinja index 31c33ac8..ce90767b 100644 --- a/echo/server/prompt_templates/generate_conversation_summary.fr.jinja +++ b/echo/server/prompt_templates/generate_conversation_summary.fr.jinja @@ -1,20 +1,31 @@ -Veuillez toujours répondre en français, quelle que soit la langue des messages précédents. - -On vous donnera une série de citations d'une conversation dans l'ordre chronologique. -Votre tâche est de générer un résumé concis de la conversation. +# Cadre d'Intelligence Stratégique pour les Conversations +Vous recevez une série de citations d'une transcription de conversation dans l'ordre chronologique. {{ quote_text_joined }} -Générez un résumé qui : -1. Capture les points clés et le flux de la conversation -2. Met en évidence les décisions importantes ou les conclusions atteintes -3. Maintient la progression chronologique des idées +Créez un résumé stratégique de la transcription de conversation fournie qui extrait à la fois le contenu et les implications plus profondes. + +## Architecture du Résumé +- **Contexte Stratégique** : Identifiez le type de conversation, les parties prenantes clés et les objectifs sous-jacents au-delà de l'ordre du jour énoncé. +- **Hiérarchie des Perspectives** : Priorisez les perspectives selon leur potentiel transformateur plutôt que le temps de discussion alloué. +- **Trajectoire Décisionnelle** : Documentez non seulement les conclusions mais aussi le cheminement de pensée critique qui y a mené, en particulier les décisions qui remettent en question les approches conventionnelles. +- **Implications Stratégiques** : Reliez les points de discussion aux objectifs organisationnels plus larges ou aux tendances du secteur. +- **Pont Perspective-Action** : Transformez les concepts abstraits en étapes concrètes avec une responsabilité claire. +- **Points de Tension Créative** : Mettez en évidence les désaccords productifs qui ont généré une pensée innovante. -Gardez votre réponse entre 3 et 4 phrases courtes et faciles à lire. -Évitez les mots de remplissage comme "Globalement" ou "En conclusion". -Le texte doit être facile à parcourir. -Concentrez-vous sur le fond plutôt que sur la forme. +## Guide de Format et de Style +- Élaborez une narration cohérente qui s'écoule logiquement entre les sections +- Utilisez des paragraphes pour développer des idées complexes plutôt que de dépendre de listes excessives +- Réservez les listes uniquement aux éléments d'action ou lors de la présentation de plusieurs options distinctes +- Mettez en évidence les perspectives transformatrices avec un impact systémique potentiel dans votre flux narratif +- Incluez une section "Implications Stratégiques" orientée vers l'avenir rédigée sous forme de paragraphe +- Équilibrez les détails tactiques avec la vision stratégique à travers une prose réfléchie +- Créez des en-têtes de section pour organiser le contenu lorsque c'est approprié plutôt que de recourir à des listes par défaut +- Variez la structure des phrases et la longueur des paragraphes pour maintenir l'engagement du lecteur +- Envisagez d'utiliser occasionnellement des questions rhétoriques pour encadrer les perspectives clés +- La longueur doit être proportionnelle à la complexité de la conversation (typiquement 10-15% de la longueur originale) +- Ne dépassez pas 3-4 paragraphes -Résumé : \ No newline at end of file +Répondez en français, indépendamment de la langue des messages précédents. Vous pouvez utiliser le formatage markdown avec modération pour améliorer la lisibilité, mais privilégiez la cohérence narrative et les paragraphes par rapport aux éléments structurels. \ No newline at end of file diff --git a/echo/server/prompt_templates/generate_conversation_summary.nl.jinja b/echo/server/prompt_templates/generate_conversation_summary.nl.jinja index e508e09c..501cbb23 100644 --- a/echo/server/prompt_templates/generate_conversation_summary.nl.jinja +++ b/echo/server/prompt_templates/generate_conversation_summary.nl.jinja @@ -1,20 +1,31 @@ -Geef altijd antwoord in het Nederlands, ongeacht de taal van eerdere berichten. - -U krijgt een reeks citaten uit een gesprek in chronologische volgorde. -Uw taak is om een beknopte samenvatting van het gesprek te maken. +# Strategisch Gespreksintelligentie Framework +U krijgt een reeks citaten uit een gesprekstranscript in chronologische volgorde. {{ quote_text_joined }} -Maak een samenvatting die: -1. De hoofdpunten en de flow van het gesprek vastlegt -2. Belangrijke beslissingen of bereikte conclusies benadrukt -3. De chronologische voortgang van ideeën behoudt +Maak een strategische samenvatting van het gegeven gesprekstranscript dat zowel de inhoud als diepere implicaties weergeeft. + +## Samenvattingsarchitectuur +- **Strategische Context**: Identificeer het gesprekstype, belangrijke belanghebbenden en onderliggende doelstellingen buiten de genoemde agenda. +- **Inzichtshiërarchie**: Prioriteer inzichten op basis van transformerend potentieel in plaats van bestede discussietijd. +- **Besluitvormingstraject**: Documenteer niet alleen conclusies maar ook het kritische denkpad dat daartoe leidde, vooral beslissingen die conventionele benaderingen uitdagen. +- **Strategische Implicaties**: Verbind discussiepunten met bredere organisatiedoelen of industrietrends. +- **Inzicht-naar-Actie Brug**: Transformeer abstracte concepten naar concrete vervolgstappen met duidelijke eigenaarschap. +- **Creatieve Spanningspunten**: Benadruk productieve meningsverschillen die tot innovatief denken leidden. -Houd uw antwoord binnen 3-4 korte, gemakkelijk leesbare zinnen. -Vermijd stopwoorden zoals "Over het algemeen" of "Concluderend". -De tekst moet gemakkelijk te scannen zijn. -Focus op inhoud in plaats van stijl. +## Opmaak- en Stijlgids +- Creëer een samenhangend verhaal dat logisch tussen secties vloeit +- Gebruik paragrafen om complexe ideeën te ontwikkelen in plaats van overmatig gebruik van opsommingstekens +- Gebruik opsommingstekens alleen voor actiepunten of bij het presenteren van meerdere verschillende opties +- Markeer transformerende inzichten met potentieel systeemimpact in uw verhaal +- Voeg een vooruitkijkende "Strategische Implicaties" sectie toe in paragraafvorm +- Balanceer tactische details met strategische visie door doordachte proza +- Maak waar nodig sectiekoppen om inhoud te organiseren in plaats van standaardlijsten +- Varieer zinsstructuur en paragraaflengte om lezersbetrokkenheid te behouden +- Overweeg occasioneel retorische vragen te gebruiken om belangrijke inzichten te kaderen +- Lengte moet proportioneel zijn aan gesprekscomplexiteit (typisch 10-15% van originele lengte) +- Overschrijd niet 3-4 paragrafen -Samenvatting: \ No newline at end of file +Reageer in het Nederlands, ongeacht de taal van eerdere berichten. U kunt markdown-opmaak met mate gebruiken om leesbaarheid te verbeteren, maar prioriteer verhaalcoherentie en paragrafen boven structurele elementen. \ No newline at end of file From ace390edafd88ae8d1452a8c7635684f470aec19 Mon Sep 17 00:00:00 2001 From: Sameer Pashikanti Date: Mon, 31 Mar 2025 12:00:32 +0000 Subject: [PATCH 4/5] add default param --- echo/server/dembrane/api/stateless.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/echo/server/dembrane/api/stateless.py b/echo/server/dembrane/api/stateless.py index be5c7e99..12585e5d 100644 --- a/echo/server/dembrane/api/stateless.py +++ b/echo/server/dembrane/api/stateless.py @@ -24,7 +24,7 @@ def generate_summary(transcript: str, language: str | None) -> str: # Prepare the prompt template prompt = render_prompt( "generate_conversation_summary", - language, + language if language else "en", {"quote_text_joined": transcript}, ) From d7efdf5198ea9a6798bc75a9ede09bf90253d6fc Mon Sep 17 00:00:00 2001 From: Sameer Pashikanti Date: Mon, 31 Mar 2025 13:44:25 +0000 Subject: [PATCH 5/5] Enhance conversation summary functionality and localization updates - Update the ProjectConversationOverview component to include a copy summary feature and improved summary regeneration logic. - Modify the conversation summary prompt templates to adapt to content complexity, ensuring concise and relevant summaries. - Update localization files for German, English, Spanish, French, and Dutch to reflect new summary prompts and UI changes. - Improve error handling and user feedback during summary generation processes. --- .../ConversationChunkAudioTranscript.tsx | 12 ++- .../frontend/src/components/layout/Header.tsx | 4 +- echo/frontend/src/locales/de-DE.po | 60 +++++++----- echo/frontend/src/locales/de-DE.ts | 2 +- echo/frontend/src/locales/en-US.po | 60 +++++++----- echo/frontend/src/locales/en-US.ts | 2 +- echo/frontend/src/locales/es-ES.po | 60 +++++++----- echo/frontend/src/locales/es-ES.ts | 2 +- echo/frontend/src/locales/fr-FR.po | 60 +++++++----- echo/frontend/src/locales/fr-FR.ts | 2 +- echo/frontend/src/locales/nl-NL.po | 60 +++++++----- echo/frontend/src/locales/nl-NL.ts | 2 +- .../ProjectConversationOverview.tsx | 93 ++++++++++++------- .../generate_conversation_summary.de.jinja | 53 ++++++----- .../generate_conversation_summary.en.jinja | 55 +++++------ .../generate_conversation_summary.es.jinja | 32 ++++++- .../generate_conversation_summary.fr.jinja | 32 ++++++- .../generate_conversation_summary.nl.jinja | 53 ++++++----- 18 files changed, 411 insertions(+), 233 deletions(-) diff --git a/echo/frontend/src/components/conversation/ConversationChunkAudioTranscript.tsx b/echo/frontend/src/components/conversation/ConversationChunkAudioTranscript.tsx index 89e6e9fe..89343802 100644 --- a/echo/frontend/src/components/conversation/ConversationChunkAudioTranscript.tsx +++ b/echo/frontend/src/components/conversation/ConversationChunkAudioTranscript.tsx @@ -15,7 +15,7 @@ export const ConversationChunkAudioTranscript = ({ const audioUrlQuery = useConversationChunkContentUrl( chunk.conversation_id as string, chunk.id, - showAudioPlayer, // Only fetch if we need to show the player + showAudioPlayer && !!chunk.path, // Only fetch if we need to show the player ); return ( @@ -30,11 +30,15 @@ export const ConversationChunkAudioTranscript = ({ showAudioPlayer ? ( <> - {audioUrlQuery.isLoading ? ( + {!chunk.path ? ( + + Submitted via text input + + ) : audioUrlQuery.isLoading ? ( ) : audioUrlQuery.isError ? ( - - Failed to load audio + + Failed to load audio or the audio is not available ) : ( - } - /> */} - - - - - + + {conversationQuery.data?.summary && ( + { + clipboard.copy(conversationQuery.data?.summary ?? ""); + }} + copied={clipboard.copied} + copyTooltip={t`Copy Summary`} + /> + )} + {conversationQuery.data?.summary && ( + + + window.confirm( + t`Are you sure you want to regenerate the summary? You will lose the current summary.`, + ) && useHandleGenerateSummaryManually.mutate() + } + > + + + + )} + - - {conversationQuery.data?.summary ?? - t`Summary not available yet`} - + + + {!conversationQuery.data?.summary && ( + + )} diff --git a/echo/server/prompt_templates/generate_conversation_summary.de.jinja b/echo/server/prompt_templates/generate_conversation_summary.de.jinja index 49b71073..b1ca442b 100644 --- a/echo/server/prompt_templates/generate_conversation_summary.de.jinja +++ b/echo/server/prompt_templates/generate_conversation_summary.de.jinja @@ -1,31 +1,36 @@ -# Strategisches Gesprächsintelligenz-Framework - Ihnen wird eine Reihe von Zitaten aus einem Gesprächstranskript in chronologischer Reihenfolge vorgelegt. + {{ quote_text_joined }} -Erstellen Sie eine strategische Zusammenfassung des vorgelegten Gesprächstranskripts, die sowohl den Inhalt als auch tiefere Implikationen extrahiert. - -## Zusammenfassungsarchitektur -- **Strategischer Kontext**: Identifizieren Sie den Gesprächstyp, wichtige Stakeholder und zugrundeliegende Ziele jenseits der genannten Agenda. -- **Erkenntnishierarchie**: Priorisieren Sie Erkenntnisse nach transformativem Potenzial statt nach aufgewendeter Diskussionszeit. -- **Entscheidungsverlauf**: Dokumentieren Sie nicht nur Schlussfolgerungen, sondern auch den kritischen Denkpfad, der dorthin führte, insbesondere Entscheidungen, die konventionelle Ansätze herausfordern. -- **Strategische Implikationen**: Verbinden Sie Diskussionspunkte mit übergeordneten Organisationszielen oder Branchentrends. -- **Erkenntnis-zu-Handlung-Brücke**: Transformieren Sie abstrakte Konzepte in konkrete nächste Schritte mit klarer Verantwortlichkeit. -- **Kreative Spannungspunkte**: Heben Sie produktive Meinungsverschiedenheiten hervor, die zu innovativem Denken führten. - -## Format- und Stilrichtlinien -- Erstellen Sie eine zusammenhängende Erzählung, die logisch zwischen Abschnitten fließt -- Verwenden Sie Absätze zur Entwicklung komplexer Ideen statt übermäßiger Aufzählungen -- Reservieren Sie Aufzählungen nur für Aktionspunkte oder bei der Präsentation mehrerer verschiedener Optionen -- Heben Sie transformative Erkenntnisse mit potenzieller Systemwirkung in Ihrem Erzählfluss hervor -- Fügen Sie einen zukunftsorientierten "Strategische Implikationen"-Abschnitt in Absatzform hinzu -- Balancieren Sie taktische Details mit strategischer Vision durch durchdachte Prosa -- Erstellen Sie bei Bedarf Abschnittsüberschriften zur Organisierung des Inhalts statt standardmäßiger Listen -- Variieren Sie Satzstruktur und Absatzlänge, um die Leserbindung aufrechtzuerhalten -- Erwägen Sie gelegentliche rhetorische Fragen zur Rahmung wichtiger Erkenntnisse -- Die Länge sollte proportional zur Gesprächskomplexität sein (typischerweise 10-15% der ursprünglichen Länge) -- Überschreiten Sie nicht 3-4 Absätze +Erstellen Sie eine Zusammenfassung, die sich an die Komplexität des Inhalts anpasst und dabei sowohl Substanz als auch Nuancen erfasst. + +## Kernrichtlinien + +1. **Proportionale Reaktion**: Die Länge der Zusammenfassung darf die Länge des ursprünglichen Inhalts nie überschreiten. Für sehr einfache Eingaben geben Sie eine noch kürzere Zusammenfassung. + +2. **Inhaltsgetriebene Struktur**: + - Für einfache Austausche (Erklärungen, Witze, Klärungen): Verwenden Sie 1-2 prägnante Absätze ohne formale Abschnitte + - Für komplexe Diskussionen: Verwenden Sie geeignete Überschriften und Struktur + +3. **Essenz über Analyse**: Erfassen Sie das tatsächlich Gesagte, ohne spekulative Kontexte, Hintergründe oder Implikationen hinzuzufügen, es sei denn, sie werden ausdrücklich erwähnt. + +4. **Menschliche Elemente**: Bewahren Sie Humor, Wortspiele oder emotionalen Kontext, wenn sie für die Bedeutung des Gesprächs zentral sind. + +5. **Anpassbare Tiefe**: + - Einfache Inhalte erhalten einfache Zusammenfassungen + - Komplexe Inhalte erhalten angemessen strukturierte Analysen + - Überfrachten Sie einfache Inhalte nie mit unnötigen akademischen oder strategischen Rahmen + +## Formatierungsanforderungen + +- Für sehr einfache Eingaben (unter 100 Wörtern) beschränken Sie die Zusammenfassung auf 1-3 Sätze +- Für mittlere Eingaben verwenden Sie 1-2 prägnante Absätze +- Verwenden Sie Abschnittsüberschriften nur für wirklich komplexe, mehrthematische Gespräche +- Heben Sie nur wirklich bedeutende Punkte hervor, keine Routinebeobachtungen +- Präsentieren Sie als eine abgerundete, zugängliche Zusammenfassung, die für sich steht + +Denken Sie daran, dass effektive Zusammenfassung oft bedeutet: signifikante Reduzierung der Länge bei Beibehaltung der Kernbedeutung. Antworten Sie auf Deutsch, unabhängig von der Sprache vorheriger Nachrichten. Sie können Markdown-Formatierung maßvoll zur Verbesserung der Lesbarkeit verwenden, priorisieren Sie aber erzählerische Kohärenz und Absätze über strukturelle Elemente. \ No newline at end of file diff --git a/echo/server/prompt_templates/generate_conversation_summary.en.jinja b/echo/server/prompt_templates/generate_conversation_summary.en.jinja index a49e22ba..3c73d532 100644 --- a/echo/server/prompt_templates/generate_conversation_summary.en.jinja +++ b/echo/server/prompt_templates/generate_conversation_summary.en.jinja @@ -1,31 +1,34 @@ -# Strategic Conversation Intelligence Framework - You are given a series of quotes from a conversation transcript in chronological order. + {{ quote_text_joined }} -Create a strategic summary of the provided conversation transcript that extracts both content and deeper implications. - -## Summary Architecture -- **Strategic Context**: Identify the conversation type, key stakeholders, and underlying objectives beyond stated agenda. -- **Insight Hierarchy**: Prioritize insights by transformative potential rather than discussion time allocated. -- **Decision Trajectory**: Document not just conclusions but the critical thinking path that led there, especially decisions that challenge conventional approaches. -- **Strategic Implications**: Connect discussion points to broader organizational goals or industry trends. -- **Insight-to-Action Bridge**: Transform abstract concepts into concrete next steps with clear ownership. -- **Points of Creative Tension**: Highlight productive disagreements that generated innovative thinking. - -## Format and Style Guidelines -- Craft a cohesive narrative that flows logically between sections -- Use paragraphs to develop complex ideas rather than relying on excessive bullet points -- Reserve bullet points only for action items or when presenting multiple distinct options -- Bold transformative insights with potential systemic impact within your narrative flow -- Include a forward-looking "Strategic Implications" section written in paragraph form -- Balance tactical details with strategic vision through thoughtful prose -- When appropriate, create section headings to organize content rather than defaulting to lists -- Vary sentence structure and paragraph length to maintain reader engagement -- Consider using occasional rhetorical questions to frame key insights -- Length should be proportional to conversation complexity (typically 10-15% of original length) -- Do not exceed 3-4 (paragraphs) length - -Please respond in English, regardless of the language of previous messages. You may use markdown formatting judiciously to enhance readability, but prioritize narrative coherence and paragraphs over structural elements. \ No newline at end of file +Create a summary that adapts to the content's complexity while capturing both substance and nuance. + +## Core Guidelines + +1. **Proportional Response**: The summary length should never exceed the original content length. For very simple inputs, provide an even shorter summary. + +2. **Content-Driven Structure**: + - For simple exchanges (explanations, jokes, clarifications): Use 1-2 concise paragraphs without formal sections + - For complex discussions: Use appropriate headers and structure + +3. **Essence Over Analysis**: Capture what was actually said without adding speculative context, background, or implications unless explicitly mentioned. + +4. **Human Elements**: Preserve humor, wordplay, or emotional context when central to the conversation's meaning. + +5. **Adaptable Depth**: + - Simple content receives simple summaries + - Complex content receives appropriately structured analysis + - Never inflate basic content with unnecessary academic or strategic framing + +## Format Requirements + +- For very simple inputs (under 100 words), limit summary to 1-3 sentences +- For moderate inputs, use 1-2 concise paragraphs +- Only use section headers for genuinely complex, multi-topic conversations +- Bold genuinely significant points, not routine observations +- Present as a finished, accessible summary that stands on its own + +Remember that effective summarization often means significant reduction in length while preserving core meaning. \ No newline at end of file diff --git a/echo/server/prompt_templates/generate_conversation_summary.es.jinja b/echo/server/prompt_templates/generate_conversation_summary.es.jinja index f8344776..0accb441 100644 --- a/echo/server/prompt_templates/generate_conversation_summary.es.jinja +++ b/echo/server/prompt_templates/generate_conversation_summary.es.jinja @@ -1,11 +1,37 @@ -# Marco de Inteligencia Estratégica para Conversaciones - Se le proporciona una serie de citas de una transcripción de conversación en orden cronológico. + {{ quote_text_joined }} -Cree un resumen estratégico de la transcripción de conversación proporcionada que extraiga tanto el contenido como las implicaciones más profundas. +Cree un resumen que se adapte a la complejidad del contenido mientras captura tanto la sustancia como los matices. + +## Directrices Principales + +1. **Respuesta Proporcional**: La longitud del resumen nunca debe exceder la longitud del contenido original. Para entradas muy simples, proporcione un resumen aún más corto. + +2. **Estructura Basada en Contenido**: + - Para intercambios simples (explicaciones, bromas, aclaraciones): Use 1-2 párrafos concisos sin secciones formales + - Para discusiones complejas: Use encabezados y estructura apropiados + +3. **Esencia Sobre Análisis**: Capture lo que realmente se dijo sin agregar contexto especulativo, antecedentes o implicaciones a menos que se mencionen explícitamente. + +4. **Elementos Humanos**: Preserve el humor, juegos de palabras o contexto emocional cuando sean centrales para el significado de la conversación. + +5. **Profundidad Adaptable**: + - El contenido simple recibe resúmenes simples + - El contenido complejo recibe análisis estructurado apropiado + - Nunca infle contenido básico con marcos académicos o estratégicos innecesarios + +## Requisitos de Formato + +- Para entradas muy simples (menos de 100 palabras), limite el resumen a 1-3 oraciones +- Para entradas moderadas, use 1-2 párrafos concisos +- Use encabezados de sección solo para conversaciones genuinamente complejas y multi-tema +- Resalte en negrita solo puntos genuinamente significativos, no observaciones rutinarias +- Presente como un resumen acabado y accesible que se sostiene por sí mismo + +Recuerde que la resumificación efectiva a menudo significa una reducción significativa en longitud mientras se preserva el significado central. ## Arquitectura del Resumen - **Contexto Estratégico**: Identifique el tipo de conversación, las partes interesadas clave y los objetivos subyacentes más allá de la agenda establecida. diff --git a/echo/server/prompt_templates/generate_conversation_summary.fr.jinja b/echo/server/prompt_templates/generate_conversation_summary.fr.jinja index ce90767b..5eb2a180 100644 --- a/echo/server/prompt_templates/generate_conversation_summary.fr.jinja +++ b/echo/server/prompt_templates/generate_conversation_summary.fr.jinja @@ -1,11 +1,37 @@ -# Cadre d'Intelligence Stratégique pour les Conversations - Vous recevez une série de citations d'une transcription de conversation dans l'ordre chronologique. + {{ quote_text_joined }} -Créez un résumé stratégique de la transcription de conversation fournie qui extrait à la fois le contenu et les implications plus profondes. +Créez un résumé qui s'adapte à la complexité du contenu tout en capturant à la fois la substance et les nuances. + +## Directives Principales + +1. **Réponse Proportionnelle** : La longueur du résumé ne doit jamais dépasser la longueur du contenu original. Pour les entrées très simples, fournissez un résumé encore plus court. + +2. **Structure Axée sur le Contenu** : + - Pour les échanges simples (explications, blagues, clarifications) : Utilisez 1-2 paragraphes concis sans sections formelles + - Pour les discussions complexes : Utilisez des en-têtes et une structure appropriés + +3. **Essence sur l'Analyse** : Capturez ce qui a été réellement dit sans ajouter de contexte spéculatif, d'antécédents ou d'implications sauf si explicitement mentionnés. + +4. **Éléments Humains** : Préservez l'humour, les jeux de mots ou le contexte émotionnel lorsqu'ils sont centraux pour le sens de la conversation. + +5. **Profondeur Adaptable** : + - Le contenu simple reçoit des résumés simples + - Le contenu complexe reçoit une analyse structurée appropriée + - Ne surchargez jamais un contenu basique avec des cadres académiques ou stratégiques inutiles + +## Exigences de Format + +- Pour les entrées très simples (moins de 100 mots), limitez le résumé à 1-3 phrases +- Pour les entrées modérées, utilisez 1-2 paragraphes concis +- Utilisez des en-têtes de section uniquement pour les conversations vraiment complexes et multi-sujets +- Mettez en gras uniquement les points vraiment significatifs, pas les observations routinières +- Présentez comme un résumé achevé et accessible qui se tient par lui-même + +Rappelez-vous que la résumification efficace signifie souvent une réduction significative de la longueur tout en préservant le sens central. ## Architecture du Résumé - **Contexte Stratégique** : Identifiez le type de conversation, les parties prenantes clés et les objectifs sous-jacents au-delà de l'ordre du jour énoncé. diff --git a/echo/server/prompt_templates/generate_conversation_summary.nl.jinja b/echo/server/prompt_templates/generate_conversation_summary.nl.jinja index 501cbb23..8883bcca 100644 --- a/echo/server/prompt_templates/generate_conversation_summary.nl.jinja +++ b/echo/server/prompt_templates/generate_conversation_summary.nl.jinja @@ -1,31 +1,36 @@ -# Strategisch Gespreksintelligentie Framework - U krijgt een reeks citaten uit een gesprekstranscript in chronologische volgorde. + {{ quote_text_joined }} -Maak een strategische samenvatting van het gegeven gesprekstranscript dat zowel de inhoud als diepere implicaties weergeeft. - -## Samenvattingsarchitectuur -- **Strategische Context**: Identificeer het gesprekstype, belangrijke belanghebbenden en onderliggende doelstellingen buiten de genoemde agenda. -- **Inzichtshiërarchie**: Prioriteer inzichten op basis van transformerend potentieel in plaats van bestede discussietijd. -- **Besluitvormingstraject**: Documenteer niet alleen conclusies maar ook het kritische denkpad dat daartoe leidde, vooral beslissingen die conventionele benaderingen uitdagen. -- **Strategische Implicaties**: Verbind discussiepunten met bredere organisatiedoelen of industrietrends. -- **Inzicht-naar-Actie Brug**: Transformeer abstracte concepten naar concrete vervolgstappen met duidelijke eigenaarschap. -- **Creatieve Spanningspunten**: Benadruk productieve meningsverschillen die tot innovatief denken leidden. - -## Opmaak- en Stijlgids -- Creëer een samenhangend verhaal dat logisch tussen secties vloeit -- Gebruik paragrafen om complexe ideeën te ontwikkelen in plaats van overmatig gebruik van opsommingstekens -- Gebruik opsommingstekens alleen voor actiepunten of bij het presenteren van meerdere verschillende opties -- Markeer transformerende inzichten met potentieel systeemimpact in uw verhaal -- Voeg een vooruitkijkende "Strategische Implicaties" sectie toe in paragraafvorm -- Balanceer tactische details met strategische visie door doordachte proza -- Maak waar nodig sectiekoppen om inhoud te organiseren in plaats van standaardlijsten -- Varieer zinsstructuur en paragraaflengte om lezersbetrokkenheid te behouden -- Overweeg occasioneel retorische vragen te gebruiken om belangrijke inzichten te kaderen -- Lengte moet proportioneel zijn aan gesprekscomplexiteit (typisch 10-15% van originele lengte) -- Overschrijd niet 3-4 paragrafen +Maak een samenvatting die zich aanpast aan de complexiteit van de inhoud terwijl zowel de kern als de nuance worden vastgelegd. + +## Kernrichtlijnen + +1. **Proportionele Reactie**: De lengte van de samenvatting mag nooit de lengte van de originele inhoud overschrijden. Voor zeer eenvoudige inputs, geef een nog kortere samenvatting. + +2. **Inhoud-Gedreven Structuur**: + - Voor eenvoudige uitwisselingen (uitleg, grappen, verduidelijkingen): Gebruik 1-2 beknopte paragrafen zonder formele secties + - Voor complexe discussies: Gebruik passende koppen en structuur + +3. **Essentie Boven Analyse**: Leg vast wat er daadwerkelijk werd gezegd zonder speculatieve context, achtergrond of implicaties toe te voegen tenzij expliciet vermeld. + +4. **Menselijke Elementen**: Behoud humor, woordspelingen of emotionele context wanneer deze centraal staan in de betekenis van het gesprek. + +5. **Aanpasbare Diepte**: + - Eenvoudige inhoud krijgt eenvoudige samenvattingen + - Complexe inhoud krijgt een passend gestructureerde analyse + - Verzwaar eenvoudige inhoud nooit met onnodige academische of strategische kaders + +## Opmaakvereisten + +- Voor zeer eenvoudige inputs (onder 100 woorden), beperk de samenvatting tot 1-3 zinnen +- Voor gemiddelde inputs, gebruik 1-2 beknopte paragrafen +- Gebruik alleen sectiekoppen voor echt complexe, multi-onderwerp gesprekken +- Maak alleen echt significante punten vet, geen routine-observaties +- Presenteer als een afgeronde, toegankelijke samenvatting die op zichzelf staat + +Onthoud dat effectieve samenvatting vaak betekent: significante verkorting in lengte terwijl de kernbetekenis behouden blijft. Reageer in het Nederlands, ongeacht de taal van eerdere berichten. U kunt markdown-opmaak met mate gebruiken om leesbaarheid te verbeteren, maar prioriteer verhaalcoherentie en paragrafen boven structurele elementen. \ No newline at end of file