From 47d7d53f4d4f7395e4cdf50fa85ce328bfe91fbb Mon Sep 17 00:00:00 2001 From: Jonathan Matthey Date: Thu, 8 Jan 2026 04:39:24 +0100 Subject: [PATCH 01/42] add: Radix Themes --- packages/frontend/app/root.tsx | 49 +++++++++++++++++++--------------- 1 file changed, 27 insertions(+), 22 deletions(-) diff --git a/packages/frontend/app/root.tsx b/packages/frontend/app/root.tsx index 229e4c5f0a..57ea18235d 100644 --- a/packages/frontend/app/root.tsx +++ b/packages/frontend/app/root.tsx @@ -13,6 +13,7 @@ import { } from '@remix-run/react' import type { ReactNode } from 'react' import { useEffect, useState } from 'react' +import { Theme } from '@radix-ui/themes' import logo from '../public/logo.svg' import { XCircle } from './components/icons' import { Sidebar } from './components/Sidebar' @@ -20,6 +21,7 @@ import { Snackbar } from './components/Snackbar' import { Button } from './components/ui/Button' import { messageStorage, type Message } from './lib/message.server' import tailwind from './styles/tailwind.css' +import radixStyles from '@radix-ui/themes/styles.css' import { getOpenPaymentsUrl } from './shared/utils' import { PublicEnv, type PublicEnvironment } from './PublicEnv' import { isLoggedIn, checkAuthAndRedirect } from './lib/kratos_checks.server' @@ -127,29 +129,31 @@ export default function App() { -
- {displaySidebar && ( - - )} -
-
- -
+ +
+ {displaySidebar && ( + + )} +
+
+ +
+
-
- setSnackbarOpen(false)} - show={snackbarOpen} - message={message} - dismissAfter={2000} - /> + setSnackbarOpen(false)} + show={snackbarOpen} + message={message} + dismissAfter={2000} + /> + @@ -233,6 +237,7 @@ export function ErrorBoundary() { export function links() { return [ + { rel: 'stylesheet', href: radixStyles }, { rel: 'stylesheet', href: tailwind }, { rel: 'icon', href: logo } ] From 50584e77b76722a2a3be56dd6cfe003d184eaa76 Mon Sep 17 00:00:00 2001 From: Jonathan Matthey Date: Thu, 8 Jan 2026 04:51:37 +0100 Subject: [PATCH 02/42] rm old background, add radix themes in container --- packages/frontend/app/root.tsx | 4 +- packages/frontend/package.json | 1 + packages/frontend/public/bg.webp | Bin 72276 -> 0 bytes packages/frontend/tailwind.config.js | 3 - pnpm-lock.yaml | 1745 ++++++++++++++++++++++++-- 5 files changed, 1610 insertions(+), 143 deletions(-) delete mode 100644 packages/frontend/public/bg.webp diff --git a/packages/frontend/app/root.tsx b/packages/frontend/app/root.tsx index 57ea18235d..6383121c6d 100644 --- a/packages/frontend/app/root.tsx +++ b/packages/frontend/app/root.tsx @@ -122,7 +122,7 @@ export default function App() { return ( @@ -170,7 +170,7 @@ export function ErrorBoundary() { return ( diff --git a/packages/frontend/package.json b/packages/frontend/package.json index 253f807ceb..aeb3cb6bfa 100644 --- a/packages/frontend/package.json +++ b/packages/frontend/package.json @@ -17,6 +17,7 @@ "@headlessui/react": "^1.7.19", "@ory/client": "^1.9.0", "@ory/integrations": "^1.3.1", + "@radix-ui/themes": "^3.2.1", "@remix-run/node": "^2.16.4", "@remix-run/react": "^2.16.4", "@remix-run/serve": "^2.16.4", diff --git a/packages/frontend/public/bg.webp b/packages/frontend/public/bg.webp deleted file mode 100644 index dcd5cfa2f22b27ac7eb509e23378a921d417f544..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 72276 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
    >qYe_9>Qiv`38+E$_Qm$d` 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 J5wLd*n*WkQ$It)( diff --git a/packages/frontend/tailwind.config.js b/packages/frontend/tailwind.config.js index bac9de89d6..8420254913 100644 --- a/packages/frontend/tailwind.config.js +++ b/packages/frontend/tailwind.config.js @@ -3,9 +3,6 @@ module.exports = { content: ['./app/**/*.{js,ts,jsx,tsx}'], theme: { extend: { - backgroundImage: { - polkadot: 'url("public/bg.webp")' - }, colors: { pearl: '#eee6e2', offwhite: '#fbf7f4', diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ee8f9930bf..7198c8666d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -240,7 +240,7 @@ importers: version: link:../token-introspection ts-node-dev: specifier: ^2.0.0 - version: 2.0.0(@swc/core@1.15.3)(@types/node@24.10.1)(typescript@5.9.3) + version: 2.0.0(@swc/core@1.15.3)(@types/node@20.14.15)(typescript@5.9.3) uuid: specifier: ^9.0.1 version: 9.0.1 @@ -253,7 +253,7 @@ importers: version: 8.4.1 '@graphql-codegen/cli': specifier: 5.0.4 - version: 5.0.4(@babel/core@7.28.5)(@types/node@24.10.1)(graphql@16.11.0) + version: 5.0.4(@babel/core@7.28.5)(@types/node@20.14.15)(graphql@16.11.0) '@graphql-codegen/introspection': specifier: 4.0.3 version: 4.0.3(graphql@16.11.0) @@ -292,7 +292,7 @@ importers: version: 14.0.0-beta.19 node-mocks-http: specifier: ^1.16.2 - version: 1.16.2(@types/node@24.10.1) + version: 1.16.2(@types/node@20.14.15) openapi-types: specifier: ^12.1.3 version: 12.1.3 @@ -473,7 +473,7 @@ importers: devDependencies: '@graphql-codegen/cli': specifier: 5.0.4 - version: 5.0.4(@babel/core@7.28.5)(@types/node@24.10.1)(graphql@16.11.0) + version: 5.0.4(@babel/core@7.28.5)(@types/node@20.14.15)(graphql@16.11.0) '@graphql-codegen/introspection': specifier: 4.0.3 version: 4.0.3(graphql@16.11.0) @@ -530,7 +530,7 @@ importers: version: 14.0.0-beta.19 node-mocks-http: specifier: ^1.16.2 - version: 1.16.2(@types/node@24.10.1) + version: 1.16.2(@types/node@20.14.15) openapi-types: specifier: ^12.1.3 version: 12.1.3 @@ -548,7 +548,7 @@ importers: version: 0.2.3 ts-node-dev: specifier: ^2.0.0 - version: 2.0.0(@swc/core@1.15.3)(@types/node@24.10.1)(typescript@5.9.3) + version: 2.0.0(@swc/core@1.15.3)(@types/node@20.14.15)(typescript@5.9.3) packages/card-service: dependencies: @@ -676,6 +676,9 @@ importers: '@ory/integrations': specifier: ^1.3.1 version: 1.3.1(@ory/client@1.9.0)(next@15.5.6) + '@radix-ui/themes': + specifier: ^3.2.1 + version: 3.2.1(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) '@remix-run/node': specifier: ^2.16.4 version: 2.16.4(typescript@5.9.3) @@ -842,14 +845,14 @@ importers: version: 8.19.0 ts-node-dev: specifier: ^2.0.0 - version: 2.0.0(@swc/core@1.15.3)(@types/node@24.10.1)(typescript@5.9.3) + version: 2.0.0(@swc/core@1.15.3)(@types/node@20.14.15)(typescript@5.9.3) uuid: specifier: ^9.0.1 version: 9.0.1 devDependencies: '@graphql-codegen/cli': specifier: 5.0.4 - version: 5.0.4(@babel/core@7.28.5)(@types/node@24.10.1)(graphql@16.11.0) + version: 5.0.4(@babel/core@7.28.5)(@types/node@20.14.15)(graphql@16.11.0) '@graphql-codegen/introspection': specifier: 4.0.3 version: 4.0.3(graphql@16.11.0) @@ -894,7 +897,7 @@ importers: version: 14.0.0-beta.19 node-mocks-http: specifier: ^1.16.2 - version: 1.16.2(@types/node@24.10.1) + version: 1.16.2(@types/node@20.14.15) testcontainers: specifier: ^10.16.0 version: 10.16.0 @@ -4783,6 +4786,34 @@ packages: engines: {node: '>=14'} dev: true + /@floating-ui/core@1.7.3: + resolution: {integrity: sha512-sGnvb5dmrJaKEZ+LDIpguvdX3bDlEllmv4/ClQ9awcmCZrlx5jQyyMWFM5kBI+EyNOCDDiKk8il0zeuX3Zlg/w==} + dependencies: + '@floating-ui/utils': 0.2.10 + dev: false + + /@floating-ui/dom@1.7.4: + resolution: {integrity: sha512-OOchDgh4F2CchOX94cRVqhvy7b3AFb+/rQXyswmzmGakRfkMgoWVjfnLWkRirfLEfuD4ysVW16eXzwt3jHIzKA==} + dependencies: + '@floating-ui/core': 1.7.3 + '@floating-ui/utils': 0.2.10 + dev: false + + /@floating-ui/react-dom@2.1.6(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-4JX6rEatQEvlmgU80wZyq9RT96HZJa88q8hp0pBd+LrczeDI4o6uA2M+uvxngVHo4Ihr8uibXxH6+70zhAFrVw==} + peerDependencies: + react: '>=16.8.0' + react-dom: '>=16.8.0' + dependencies: + '@floating-ui/dom': 1.7.4 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@floating-ui/utils@0.2.10: + resolution: {integrity: sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==} + dev: false + /@graphql-codegen/add@5.0.3(graphql@16.11.0): resolution: {integrity: sha512-SxXPmramkth8XtBlAHu4H4jYcYXM/o3p01+psU+0NADQowA8jtYkK6MW5rV6T+CxkEaNZItfSmZRPgIuypcqnA==} peerDependencies: @@ -4793,7 +4824,7 @@ packages: tslib: 2.6.2 dev: true - /@graphql-codegen/cli@5.0.4(@babel/core@7.28.5)(@types/node@24.10.1)(graphql@16.11.0): + /@graphql-codegen/cli@5.0.4(@babel/core@7.28.5)(@types/node@20.14.15)(graphql@16.11.0): resolution: {integrity: sha512-vPO1mCtrttFVy8mPR+jMAvsYTv8E/7payIPaneeGE15mQjyvQXXsHoAg06Qpf6tykOdCwKVLWre0Mf6g0KBwUg==} engines: {node: '>=16'} hasBin: true @@ -4813,12 +4844,12 @@ packages: '@graphql-tools/apollo-engine-loader': 8.0.0(graphql@16.11.0) '@graphql-tools/code-file-loader': 8.0.1(@babel/core@7.28.5)(graphql@16.11.0) '@graphql-tools/git-loader': 8.0.1(@babel/core@7.28.5)(graphql@16.11.0) - '@graphql-tools/github-loader': 8.0.0(@babel/core@7.28.5)(@types/node@24.10.1)(graphql@16.11.0) + '@graphql-tools/github-loader': 8.0.0(@babel/core@7.28.5)(@types/node@20.14.15)(graphql@16.11.0) '@graphql-tools/graphql-file-loader': 8.0.12(graphql@16.11.0) '@graphql-tools/json-file-loader': 8.0.11(graphql@16.11.0) '@graphql-tools/load': 8.0.12(graphql@16.11.0) - '@graphql-tools/prisma-loader': 8.0.1(@types/node@24.10.1)(graphql@16.11.0) - '@graphql-tools/url-loader': 8.0.24(@types/node@24.10.1)(graphql@16.11.0) + '@graphql-tools/prisma-loader': 8.0.1(@types/node@20.14.15)(graphql@16.11.0) + '@graphql-tools/url-loader': 8.0.24(@types/node@20.14.15)(graphql@16.11.0) '@graphql-tools/utils': 10.7.2(graphql@16.11.0) '@whatwg-node/fetch': 0.10.3 chalk: 4.1.2 @@ -4826,7 +4857,7 @@ packages: debounce: 1.2.1 detect-indent: 6.1.0 graphql: 16.11.0 - graphql-config: 5.1.3(@types/node@24.10.1)(graphql@16.11.0) + graphql-config: 5.1.3(@types/node@20.14.15)(graphql@16.11.0) inquirer: 8.2.4 is-glob: 4.0.3 jiti: 1.21.6 @@ -5210,7 +5241,7 @@ packages: - utf-8-validate dev: true - /@graphql-tools/executor-http@1.2.5(@types/node@24.10.1)(graphql@16.11.0): + /@graphql-tools/executor-http@1.2.5(@types/node@20.14.15)(graphql@16.11.0): resolution: {integrity: sha512-pG5YXsF2EhKS4JMhwFwI+0S5RGhPuJ3j3Dg1vWItzeBFiTzr2+VO8yyyahHIncLx7OzSYP/6pBDFp76FC55e+g==} engines: {node: '>=18.0.0'} peerDependencies: @@ -5224,7 +5255,7 @@ packages: '@whatwg-node/fetch': 0.10.3 extract-files: 11.0.0 graphql: 16.11.0 - meros: 1.2.1(@types/node@24.10.1) + meros: 1.2.1(@types/node@20.14.15) tslib: 2.8.1 value-or-promise: 1.0.12 transitivePeerDependencies: @@ -5281,14 +5312,14 @@ packages: - supports-color dev: true - /@graphql-tools/github-loader@8.0.0(@babel/core@7.28.5)(@types/node@24.10.1)(graphql@16.11.0): + /@graphql-tools/github-loader@8.0.0(@babel/core@7.28.5)(@types/node@20.14.15)(graphql@16.11.0): resolution: {integrity: sha512-VuroArWKcG4yaOWzV0r19ElVIV6iH6UKDQn1MXemND0xu5TzrFme0kf3U9o0YwNo0kUYEk9CyFM0BYg4he17FA==} engines: {node: '>=16.0.0'} peerDependencies: graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 dependencies: '@ardatan/sync-fetch': 0.0.1 - '@graphql-tools/executor-http': 1.2.5(@types/node@24.10.1)(graphql@16.11.0) + '@graphql-tools/executor-http': 1.2.5(@types/node@20.14.15)(graphql@16.11.0) '@graphql-tools/graphql-tag-pluck': 8.0.1(@babel/core@7.28.5)(graphql@16.11.0) '@graphql-tools/utils': 10.7.2(graphql@16.11.0) '@whatwg-node/fetch': 0.9.8 @@ -5441,13 +5472,13 @@ packages: tslib: 2.8.1 dev: true - /@graphql-tools/prisma-loader@8.0.1(@types/node@24.10.1)(graphql@16.11.0): + /@graphql-tools/prisma-loader@8.0.1(@types/node@20.14.15)(graphql@16.11.0): resolution: {integrity: sha512-bl6e5sAYe35Z6fEbgKXNrqRhXlCJYeWKBkarohgYA338/SD9eEhXtg3Cedj7fut3WyRLoQFpHzfiwxKs7XrgXg==} engines: {node: '>=16.0.0'} peerDependencies: graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 dependencies: - '@graphql-tools/url-loader': 8.0.24(@types/node@24.10.1)(graphql@16.11.0) + '@graphql-tools/url-loader': 8.0.24(@types/node@20.14.15)(graphql@16.11.0) '@graphql-tools/utils': 10.7.2(graphql@16.11.0) '@types/js-yaml': 4.0.9 '@types/json-stable-stringify': 1.0.34 @@ -5537,14 +5568,14 @@ packages: value-or-promise: 1.0.12 dev: false - /@graphql-tools/url-loader@8.0.24(@types/node@24.10.1)(graphql@16.11.0): + /@graphql-tools/url-loader@8.0.24(@types/node@20.14.15)(graphql@16.11.0): resolution: {integrity: sha512-f+Yt6sswiEPrcWsInMbmf+3HNENV2IZK1z3IiGMHuyqb+QsMbJLxzDPHnxMtF2QGJOiRjBQy2sF2en7DPG+jSw==} engines: {node: '>=16.0.0'} peerDependencies: graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 dependencies: '@graphql-tools/executor-graphql-ws': 1.3.7(graphql@16.11.0) - '@graphql-tools/executor-http': 1.2.5(@types/node@24.10.1)(graphql@16.11.0) + '@graphql-tools/executor-http': 1.2.5(@types/node@20.14.15)(graphql@16.11.0) '@graphql-tools/executor-legacy-ws': 1.1.10(graphql@16.11.0) '@graphql-tools/utils': 10.7.2(graphql@16.11.0) '@graphql-tools/wrap': 10.0.28(graphql@16.11.0) @@ -7428,39 +7459,1386 @@ packages: resolution: {integrity: sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==} dev: false - /@protobufjs/codegen@2.0.4: - resolution: {integrity: sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==} + /@protobufjs/codegen@2.0.4: + resolution: {integrity: sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==} + dev: false + + /@protobufjs/eventemitter@1.1.0: + resolution: {integrity: sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==} + dev: false + + /@protobufjs/fetch@1.1.0: + resolution: {integrity: sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==} + dependencies: + '@protobufjs/aspromise': 1.1.2 + '@protobufjs/inquire': 1.1.0 + dev: false + + /@protobufjs/float@1.0.2: + resolution: {integrity: sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==} + dev: false + + /@protobufjs/inquire@1.1.0: + resolution: {integrity: sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==} + dev: false + + /@protobufjs/path@1.1.2: + resolution: {integrity: sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==} + dev: false + + /@protobufjs/pool@1.1.0: + resolution: {integrity: sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==} + dev: false + + /@protobufjs/utf8@1.1.0: + resolution: {integrity: sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==} + dev: false + + /@radix-ui/colors@3.0.0: + resolution: {integrity: sha512-FUOsGBkHrYJwCSEtWRCIfQbZG7q1e6DgxCIOe1SUQzDe/7rXXeA47s8yCn6fuTNQAj1Zq4oTFi9Yjp3wzElcxg==} + dev: false + + /@radix-ui/number@1.1.1: + resolution: {integrity: sha512-MkKCwxlXTgz6CFoJx3pCwn07GKp36+aZyu/u2Ln2VrA5DcdyCZkASEDBTd8x5whTQQL5CiYf4prXKLcgQdv29g==} + dev: false + + /@radix-ui/primitive@1.1.3: + resolution: {integrity: sha512-JTF99U/6XIjCBo0wqkU5sK10glYe27MRRsfwoiq5zzOEZLHU3A3KCMa5X/azekYRCJ0HlwI0crAXS/5dEHTzDg==} + dev: false + + /@radix-ui/react-accessible-icon@1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-XM+E4WXl0OqUJFovy6GjmxxFyx9opfCAIUku4dlKRd5YEPqt4kALOkQOp0Of6reHuUkJuiPBEc5k0o4z4lTC8A==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-accordion@1.2.12(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-T4nygeh9YE9dLRPhAHSeOZi7HBXo+0kYIPJXayZfvWOWA0+n3dESrZbjfDPUABkUNym6Hd+f2IR113To8D2GPA==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-collapsible': 1.1.12(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-direction': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-alert-dialog@1.1.15(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-oTVLkEw5GpdRe29BqJ0LSDFWI3qu0vR1M0mUkOQWDIUnY/QIkLpgDMWuKxP94c2NAC2LGcgVhG1ImF3jkZ5wXw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-dialog': 1.1.15(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-slot': 1.2.3(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-arrow@1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-F+M1tLhO+mlQaOWspE8Wstg+z6PwxwRd8oQ8IXceWz92kfAmalTRf0EjrouQeo7QssEPfCn05B4Ihs1K9WQ/7w==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-aspect-ratio@1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-Yq6lvO9HQyPwev1onK1daHCHqXVLzPhSVjmsNjCa2Zcxy2f7uJD2itDtxknv6FzAKCwD1qQkeVDmX/cev13n/g==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-avatar@1.1.10(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-V8piFfWapM5OmNCXTzVQY+E1rDa53zY+MQ4Y7356v4fFz6vqCyUtIz2rUD44ZEdwg78/jKmMJHj07+C/Z/rcog==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-is-hydrated': 0.1.0(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-checkbox@1.3.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-wBbpv+NQftHDdG86Qc0pIyXk5IR3tM8Vd0nWLKDcX8nNn4nXFOFwsKuqw2okA/1D/mpaAkmuyndrPJTYDNZtFw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-previous': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-size': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-collapsible@1.1.12(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-Uu+mSh4agx2ib1uIGPP4/CKNULyajb3p92LsVXmH2EHVMTfZWpll88XJ0j4W0z3f8NK1eYl1+Mf/szHPmcHzyA==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-collection@1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-Fh9rGN0MoI4ZFUNyfFVNU4y9LUz93u9/0K+yLgA2bwRojxM8JU1DyvvMBabnZPBgMWREAJvU2jjVzq+LrFUglw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-slot': 1.2.3(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-compose-refs@1.1.2(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-z4eqJvfiNnFMHIIvXP3CY57y2WJs5g2v3X0zm9mEJkrkNv4rDxu+sg9Jh8EkXyeqBkB7SOcboo9dMVqhyrACIg==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': 18.2.73 + react: 18.2.0 + dev: false + + /@radix-ui/react-context-menu@2.2.16(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-O8morBEW+HsVG28gYDZPTrT9UUovQUlJue5YO836tiTJhuIWBm/zQHc7j388sHWtdH/xUZurK9olD2+pcqx5ww==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-menu': 2.1.16(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-context@1.1.2(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': 18.2.73 + react: 18.2.0 + dev: false + + /@radix-ui/react-dialog@1.1.15(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-TCglVRtzlffRNxRMEyR36DGBLJpeusFcgMVD9PZEzAKnUs1lKCgX5u9BmC2Yg+LL9MgZDugFFs1Vl+Jp4t/PGw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-slot': 1.2.3(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + aria-hidden: 1.2.6 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + react-remove-scroll: 2.7.2(@types/react@18.2.73)(react@18.2.0) + dev: false + + /@radix-ui/react-direction@1.1.1(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-1UEWRX6jnOA2y4H5WczZ44gOOjTEmlqv1uNW4GAJEO5+bauCBhv8snY65Iw5/VOS/ghKN9gr2KjnLKxrsvoMVw==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': 18.2.73 + react: 18.2.0 + dev: false + + /@radix-ui/react-dismissable-layer@1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-Nqcp+t5cTB8BinFkZgXiMJniQH0PsUt2k51FUhbdfeKvc4ACcG2uQniY/8+h1Yv6Kza4Q7lD7PQV0z0oicE0Mg==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-dropdown-menu@2.1.16(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-1PLGQEynI/3OX/ftV54COn+3Sud/Mn8vALg2rWnBLnRaGtJDduNW/22XjlGgPdpcIbiQxjKtb7BkcjP00nqfJw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-menu': 2.1.16(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-focus-guards@1.1.3(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-0rFg/Rj2Q62NCm62jZw0QX7a3sz6QCQU0LpZdNrJX8byRGaGVTqbrW9jAoIAHyMQqsNpeZ81YgSizOt5WXq0Pw==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': 18.2.73 + react: 18.2.0 + dev: false + + /@radix-ui/react-focus-scope@1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-t2ODlkXBQyn7jkl6TNaw/MtVEVvIGelJDCG41Okq/KwUsJBwQ4XVZsHAVUkK4mBv3ewiAS3PGuUWuY2BoK4ZUw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-form@0.1.8(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-QM70k4Zwjttifr5a4sZFts9fn8FzHYvQ5PiB19O2HsYibaHSVt9fH9rzB0XZo/YcM+b7t/p7lYCT/F5eOeF5yQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-label': 2.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-hover-card@1.1.15(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-qgTkjNT1CfKMoP0rcasmlH2r1DAiYicWsDsufxl940sT2wHNEWWv6FMWIQXWhVdmC1d/HYfbhQx60KYyAtKxjg==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-id@1.1.1(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-kGkGegYIdQsOb4XjsfM97rXsiHaBwco+hFI66oO4s9LU+PLAC5oJ7khdOVFxkhsmlbpUqDAvXw11CluXP+jkHg==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + react: 18.2.0 + dev: false + + /@radix-ui/react-label@2.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-YT1GqPSL8kJn20djelMX7/cTRp/Y9w5IZHvfxQTVHrOqa2yMl7i/UfMqKRU5V7mEyKTrUVgJXhNQPVCG8PBLoQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-menu@2.1.16(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-72F2T+PLlphrqLcAotYPp0uJMr5SjP5SL01wfEspJbru5Zs5vQaSHb4VB3ZMJPimgHHCHG7gMOeOB9H3Hdmtxg==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-direction': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-slot': 1.2.3(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + aria-hidden: 1.2.6 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + react-remove-scroll: 2.7.2(@types/react@18.2.73)(react@18.2.0) + dev: false + + /@radix-ui/react-menubar@1.1.16(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-EB1FktTz5xRRi2Er974AUQZWg2yVBb1yjip38/lgwtCVRd3a+maUoGHN/xs9Yv8SY8QwbSEb+YrxGadVWbEutA==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-direction': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-menu': 2.1.16(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-navigation-menu@1.2.14(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-YB9mTFQvCOAQMHU+C/jVl96WmuWeltyUEpRJJky51huhds5W2FQr1J8D/16sQlf0ozxkPK8uF3niQMdUwZPv5w==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-direction': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-previous': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-one-time-password-field@0.1.8(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-ycS4rbwURavDPVjCb5iS3aG4lURFDILi6sKI/WITUMZ13gMmn/xGjpLoqBAalhJaDk8I3UbCM5GzKHrnzwHbvg==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/number': 1.1.1 + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-direction': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-effect-event': 0.0.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-is-hydrated': 0.1.0(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-password-toggle-field@0.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-/UuCrDBWravcaMix4TdT+qlNdVwOM1Nck9kWx/vafXsdfj1ChfhOdfi3cy9SGBpWgTXwYCuboT/oYpJy3clqfw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-effect-event': 0.0.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-is-hydrated': 0.1.0(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-popover@1.1.15(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-kr0X2+6Yy/vJzLYJUPCZEc8SfQcf+1COFoAqauJm74umQhta9M7lNJHP7QQS3vkvcGLQUbWpMzwrXYwrYztHKA==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-slot': 1.2.3(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + aria-hidden: 1.2.6 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + react-remove-scroll: 2.7.2(@types/react@18.2.73)(react@18.2.0) + dev: false + + /@radix-ui/react-popper@1.2.8(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-0NJQ4LFFUuWkE7Oxf0htBKS6zLkkjBH+hM1uk7Ng705ReR8m/uelduy1DBo0PyBXPKVnBA6YBlU94MBGXrSBCw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@floating-ui/react-dom': 2.1.6(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-arrow': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-rect': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-size': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/rect': 1.1.1 + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-portal@1.1.9(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-bpIxvq03if6UNwXZ+HTK71JLh4APvnXntDc6XOX8UVq4XQOVl7lwok0AvIl+b8zgCw3fSaVTZMpAPPagXbKmHQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-presence@1.1.5(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-/jfEwNDdQVBCNvjkGit4h6pMOzq8bHkopq458dPt2lMjx+eBQUohZNG9A7DtO/O5ukSbxuaNGXMjHicgwy6rQQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-primitive@2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/react-slot': 1.2.3(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-progress@1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-vPdg/tF6YC/ynuBIJlk1mm7Le0VgW6ub6J2UWnTQ7/D23KXcPI1qy+0vBkgKgd38RCMJavBXpB83HPNFMTb0Fg==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-radio-group@1.3.8(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-VBKYIYImA5zsxACdisNQ3BjCBfmbGH3kQlnFVqlWU4tXwjy7cGX8ta80BcrO+WJXIn5iBylEH3K6ZTlee//lgQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-direction': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-previous': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-size': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-roving-focus@1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-7A6S9jSgm/S+7MdtNDSb+IU859vQqJ/QAtcYQcfFC6W8RS4IxIZDldLR0xqCFZ6DCyrQLjLPsxtTNch5jVA4lA==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-direction': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-scroll-area@1.2.10(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-tAXIa1g3sM5CGpVT0uIbUx/U3Gs5N8T52IICuCtObaos1S8fzsrPXG5WObkQN3S6NVl6wKgPhAIiBGbWnvc97A==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/number': 1.1.1 + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-direction': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-select@2.2.6(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-I30RydO+bnn2PQztvo25tswPH+wFBjehVGtmagkU78yMdwTwVf12wnAOF+AeP8S2N8xD+5UPbGhkUfPyvT+mwQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/number': 1.1.1 + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-direction': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-slot': 1.2.3(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-previous': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + aria-hidden: 1.2.6 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + react-remove-scroll: 2.7.2(@types/react@18.2.73)(react@18.2.0) + dev: false + + /@radix-ui/react-separator@1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-0HEb8R9E8A+jZjvmFCy/J4xhbXy3TV+9XSnGJ3KvTtjlIUy/YQ/p6UYZvi7YbeoeXdyU9+Y3scizK6hkY37baA==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-slider@1.3.6(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-JPYb1GuM1bxfjMRlNLE+BcmBC8onfCi60Blk7OBqi2MLTFdS+8401U4uFjnwkOr49BLmXxLC6JHkvAsx5OJvHw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/number': 1.1.1 + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-direction': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-previous': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-size': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-slot@1.2.3(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + react: 18.2.0 + dev: false + + /@radix-ui/react-switch@1.2.6(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-bByzr1+ep1zk4VubeEVViV592vu2lHE2BZY5OnzehZqOOgogN80+mNtCqPkhn2gklJqOpxWgPoYTSnhBCqpOXQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-previous': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-size': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-tabs@1.1.13(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-7xdcatg7/U+7+Udyoj2zodtI9H/IIopqo+YOIcZOq1nJwXWBZ9p8xiu5llXlekDbZkca79a/fozEYQXIA4sW6A==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-direction': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-toast@1.2.15(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-3OSz3TacUWy4WtOXV38DggwxoqJK4+eDkNMl5Z/MJZaoUPaP4/9lf81xXMe1I2ReTAptverZUpbPY4wWwWyL5g==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-toggle-group@1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-5umnS0T8JQzQT6HbPyO7Hh9dgd82NmS36DQr+X/YJ9ctFNCiiQd6IJAYYZ33LUwm8M+taCz5t2ui29fHZc4Y6Q==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-direction': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-toggle': 1.1.10(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-toggle@1.1.10(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-lS1odchhFTeZv3xwHH31YPObmJn8gOg7Lq12inrr0+BH/l3Tsq32VfjqH1oh80ARM3mlkfMic15n0kg4sD1poQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-toolbar@1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-4ol06/1bLoFu1nwUqzdD4Y5RZ9oDdKeiHIsntug54Hcr1pgaHiPqHFEaXI1IFP/EsOfROQZ8Mig9VTIRza6Tjg==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-direction': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-separator': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-toggle-group': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-tooltip@1.2.8(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-tY7sVt1yL9ozIxvmbtN5qtmH2krXcBCfjEiCgKGLqunJHvgvZG2Pcl2oQ3kbcZARb1BGEHdkLzcYGO8ynVlieg==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-id': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-slot': 1.2.3(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + + /@radix-ui/react-use-callback-ref@1.1.1(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-FkBMwD+qbGQeMu1cOHnuGB6x4yzPjho8ap5WtbEJ26umhgqVXbhekKUQO+hZEL1vU92a3wHwdp0HAcqAUF5iDg==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': 18.2.73 + react: 18.2.0 + dev: false + + /@radix-ui/react-use-controllable-state@1.2.2(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-BjasUjixPFdS+NKkypcyyN5Pmg83Olst0+c6vGov0diwTEo6mgdqVR6hxcEgFuh4QrAs7Rc+9KuGJ9TVCj0Zzg==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@radix-ui/react-use-effect-event': 0.0.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + react: 18.2.0 + dev: false + + /@radix-ui/react-use-effect-event@0.0.2(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-Qp8WbZOBe+blgpuUT+lw2xheLP8q0oatc9UpmiemEICxGvFLYmHm9QowVZGHtJlGbS6A6yJ3iViad/2cVjnOiA==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + react: 18.2.0 + dev: false + + /@radix-ui/react-use-escape-keydown@1.1.1(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-Il0+boE7w/XebUHyBjroE+DbByORGR9KKmITzbR7MyQ4akpORYP/ZmbhAr0DG7RmmBqoOnZdy2QlvajJ2QA59g==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + react: 18.2.0 + dev: false + + /@radix-ui/react-use-is-hydrated@0.1.0(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-U+UORVEq+cTnRIaostJv9AGdV3G6Y+zbVd+12e18jQ5A3c0xL03IhnHuiU4UV69wolOQp5GfR58NW/EgdQhwOA==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': 18.2.73 + react: 18.2.0 + use-sync-external-store: 1.6.0(react@18.2.0) dev: false - /@protobufjs/eventemitter@1.1.0: - resolution: {integrity: sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==} + /@radix-ui/react-use-layout-effect@1.1.1(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': 18.2.73 + react: 18.2.0 dev: false - /@protobufjs/fetch@1.1.0: - resolution: {integrity: sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==} + /@radix-ui/react-use-previous@1.1.1(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-2dHfToCj/pzca2Ck724OZ5L0EVrr3eHRNsG/b3xQJLA2hZpVCS99bLAX+hm1IHXDEnzU6by5z/5MIY794/a8NQ==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true dependencies: - '@protobufjs/aspromise': 1.1.2 - '@protobufjs/inquire': 1.1.0 + '@types/react': 18.2.73 + react: 18.2.0 dev: false - /@protobufjs/float@1.0.2: - resolution: {integrity: sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==} + /@radix-ui/react-use-rect@1.1.1(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-QTYuDesS0VtuHNNvMh+CjlKJ4LJickCMUAqjlE3+j8w+RlRpwyX3apEQKGFzbZGdo7XNG1tXa+bQqIE7HIXT2w==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@radix-ui/rect': 1.1.1 + '@types/react': 18.2.73 + react: 18.2.0 dev: false - /@protobufjs/inquire@1.1.0: - resolution: {integrity: sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==} + /@radix-ui/react-use-size@1.1.1(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-ewrXRDTAqAXlkl6t/fkXWNAhFX9I+CkKlw6zjEwk86RSPKwZr3xpBRso655aqYafwtnbpHLj6toFzmd6xdVptQ==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@types/react': 18.2.73 + react: 18.2.0 dev: false - /@protobufjs/path@1.1.2: - resolution: {integrity: sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==} + /@radix-ui/react-visually-hidden@1.2.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-pzJq12tEaaIhqjbzpCuv/OypJY/BPavOofm+dbab+MHLajy277+1lLm6JFcGgF5eskJ6mquGirhXY2GD/8u8Ug==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) dev: false - /@protobufjs/pool@1.1.0: - resolution: {integrity: sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==} + /@radix-ui/rect@1.1.1: + resolution: {integrity: sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==} dev: false - /@protobufjs/utf8@1.1.0: - resolution: {integrity: sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==} + /@radix-ui/themes@3.2.1(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-WJL2YKAGItkunwm3O4cLTFKCGJTfAfF6Hmq7f5bCo1ggqC9qJQ/wfg/25AAN72aoEM1yqXZQ+pslsw48AFR0Xg==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: 16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: 16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/colors': 3.0.0 + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + classnames: 2.5.1 + radix-ui: 1.4.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + react-remove-scroll-bar: 2.3.8(@types/react@18.2.73)(react@18.2.0) dev: false /@remix-run/dev@2.16.4(@remix-run/react@2.16.4)(@remix-run/serve@2.16.4)(@types/node@18.11.9)(typescript@5.4.3)(yaml@2.7.0): @@ -9091,11 +10469,6 @@ packages: dependencies: undici-types: 5.26.5 - /@types/node@24.10.1: - resolution: {integrity: sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ==} - dependencies: - undici-types: 7.16.0 - /@types/node@8.10.66: resolution: {integrity: sha512-tktOkFUA4kXx2hhhrB8bIFb5TbwzS4uOhKEmwiD+NoiL0qtP2OQ9mFldbgD4dV1djrlBYP6eBuQZiWjuHUpqFw==} dev: false @@ -9135,7 +10508,6 @@ packages: resolution: {integrity: sha512-fHkBXPeNtfvri6gdsMYyW+dW7RXFo6Ad09nLFK0VQWR7yGLai/Cyvyj696gbwYvBnhGtevUG9cET0pmUbMtoPQ==} dependencies: '@types/react': 18.2.73 - dev: true /@types/react@18.2.73: resolution: {integrity: sha512-XcGdod0Jjv84HOC7N5ziY3x+qL0AfmubvKOZ9hJjJ2yd5EE+KYjWhdOjt387e9HPheHkdggF9atTifMRtyAaRA==} @@ -10181,6 +11553,13 @@ packages: /argparse@2.0.1: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + /aria-hidden@1.2.6: + resolution: {integrity: sha512-ik3ZgC9dY/lYVVM++OISsaYDeg1tb0VtP5uL3ouh1koGOaUMDPpbFIei4JkFimWUFPn90sbMNMXQAIVOlnYKJA==} + engines: {node: '>=10'} + dependencies: + tslib: 2.8.1 + dev: false + /aria-query@5.3.2: resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} engines: {node: '>= 0.4'} @@ -11329,6 +12708,10 @@ packages: clsx: 2.1.1 dev: false + /classnames@2.5.1: + resolution: {integrity: sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==} + dev: false + /clean-css@5.3.3: resolution: {integrity: sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg==} engines: {node: '>= 10.0'} @@ -12491,6 +13874,10 @@ packages: engines: {node: '>=8'} dev: true + /detect-node-es@1.1.0: + resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==} + dev: false + /deterministic-object-hash@2.0.2: resolution: {integrity: sha512-KxektNH63SrbfUyDiwXqRb1rLwKt33AmMv+5Nhsw1kqZ13SJBRTgZHtGbE+hH3a1mVW1cz+4pqSWVPAtLVXTzQ==} engines: {node: '>=18'} @@ -14342,6 +15729,11 @@ packages: hasown: 2.0.2 math-intrinsics: 1.0.0 + /get-nonce@1.0.1: + resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==} + engines: {node: '>=6'} + dev: false + /get-package-type@0.1.0: resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==} engines: {node: '>=8.0.0'} @@ -14590,7 +15982,7 @@ packages: resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} dev: true - /graphql-config@5.1.3(@types/node@24.10.1)(graphql@16.11.0): + /graphql-config@5.1.3(@types/node@20.14.15)(graphql@16.11.0): resolution: {integrity: sha512-RBhejsPjrNSuwtckRlilWzLVt2j8itl74W9Gke1KejDTz7oaA5kVd6wRn9zK9TS5mcmIYGxf7zN7a1ORMdxp1Q==} engines: {node: '>= 16.0.0'} peerDependencies: @@ -14604,7 +15996,7 @@ packages: '@graphql-tools/json-file-loader': 8.0.11(graphql@16.11.0) '@graphql-tools/load': 8.0.12(graphql@16.11.0) '@graphql-tools/merge': 9.0.17(graphql@16.11.0) - '@graphql-tools/url-loader': 8.0.24(@types/node@24.10.1)(graphql@16.11.0) + '@graphql-tools/url-loader': 8.0.24(@types/node@20.14.15)(graphql@16.11.0) '@graphql-tools/utils': 10.7.2(graphql@16.11.0) cosmiconfig: 8.1.3 graphql: 16.11.0 @@ -17877,7 +19269,7 @@ packages: - supports-color dev: false - /meros@1.2.1(@types/node@24.10.1): + /meros@1.2.1(@types/node@20.14.15): resolution: {integrity: sha512-R2f/jxYqCAGI19KhAvaxSOxALBMkaXWH2a7rOyqQw+ZmizX5bKkEYWLzdhC+U82ZVVPVp6MCXe3EkVligh+12g==} engines: {node: '>=13'} peerDependencies: @@ -17886,7 +19278,7 @@ packages: '@types/node': optional: true dependencies: - '@types/node': 24.10.1 + '@types/node': 20.14.15 dev: true /methods@1.1.2: @@ -18830,6 +20222,7 @@ packages: /next@15.5.6(@babel/core@7.26.0)(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-zTxsnI3LQo3c9HSdSf91O1jMNsEzIXDShXd4wVdg9y5shwLqBXi4ZtUUJyB86KGVSJLZx0PFONvO54aheGX8QQ==} engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0} + deprecated: This version has a security vulnerability. Please upgrade to a patched version. See https://nextjs.org/blog/CVE-2025-66478 for more details. hasBin: true peerDependencies: '@opentelemetry/api': ^1.1.0 @@ -18986,31 +20379,6 @@ packages: type-is: 1.6.18 dev: true - /node-mocks-http@1.16.2(@types/node@24.10.1): - resolution: {integrity: sha512-2Sh6YItRp1oqewZNlck3LaFp5vbyW2u51HX2p1VLxQ9U/bG90XV8JY9O7Nk+HDd6OOn/oV3nA5Tx5k4Rki0qlg==} - engines: {node: '>=14'} - peerDependencies: - '@types/express': ^4.17.21 || ^5.0.0 - '@types/node': '*' - peerDependenciesMeta: - '@types/express': - optional: true - '@types/node': - optional: true - dependencies: - '@types/node': 24.10.1 - accepts: 1.3.8 - content-disposition: 0.5.4 - depd: 1.1.2 - fresh: 0.5.2 - merge-descriptors: 1.0.3 - methods: 1.1.2 - mime: 1.6.0 - parseurl: 1.3.3 - range-parser: 1.2.1 - type-is: 1.6.18 - dev: true - /node-releases@2.0.18: resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==} @@ -20454,6 +21822,80 @@ packages: engines: {node: '>=10'} dev: false + /radix-ui@1.4.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-aWizCQiyeAenIdUbqEpXgRA1ya65P13NKn/W8rWkcN0OPkRDxdBVLWnIEDsS2RpwCK2nobI7oMUSmexzTDyAmA==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + dependencies: + '@radix-ui/primitive': 1.1.3 + '@radix-ui/react-accessible-icon': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-accordion': 1.2.12(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-alert-dialog': 1.1.15(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-arrow': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-aspect-ratio': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-avatar': 1.1.10(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-checkbox': 1.3.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-collapsible': 1.1.12(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context': 1.1.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-context-menu': 2.2.16(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-dialog': 1.1.15(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-direction': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-dropdown-menu': 2.1.16(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-form': 0.1.8(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-hover-card': 1.1.15(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-label': 2.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-menu': 2.1.16(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-menubar': 1.1.16(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-navigation-menu': 1.2.14(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-one-time-password-field': 0.1.8(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-password-toggle-field': 0.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-popover': 1.1.15(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-progress': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-radio-group': 1.3.8(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-scroll-area': 1.2.10(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-select': 2.2.6(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-separator': 1.1.7(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-slider': 1.3.6(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-slot': 1.2.3(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-switch': 1.2.6(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-tabs': 1.1.13(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-toast': 1.2.15(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-toggle': 1.1.10(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-toggle-group': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-toolbar': 1.1.11(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-tooltip': 1.2.8(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-effect-event': 0.0.2(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-is-hydrated': 0.1.0(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-use-size': 1.1.1(@types/react@18.2.73)(react@18.2.0) + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@18.2.22)(@types/react@18.2.73)(react-dom@18.2.0)(react@18.2.0) + '@types/react': 18.2.73 + '@types/react-dom': 18.2.22 + react: 18.2.0 + react-dom: 18.2.0(react@18.2.0) + dev: false + /radix3@1.1.2: resolution: {integrity: sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA==} dev: false @@ -20510,6 +21952,41 @@ packages: engines: {node: '>=0.10.0'} dev: true + /react-remove-scroll-bar@2.3.8(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': '*' + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': 18.2.73 + react: 18.2.0 + react-style-singleton: 2.2.3(@types/react@18.2.73)(react@18.2.0) + tslib: 2.8.1 + dev: false + + /react-remove-scroll@2.7.2(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-Iqb9NjCCTt6Hf+vOdNIZGdTiH1QSqr27H/Ek9sv/a97gfueI/5h1s3yRi1nngzMUaOOToin5dI1dXKdXiF+u0Q==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': '*' + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': 18.2.73 + react: 18.2.0 + react-remove-scroll-bar: 2.3.8(@types/react@18.2.73)(react@18.2.0) + react-style-singleton: 2.2.3(@types/react@18.2.73)(react@18.2.0) + tslib: 2.8.1 + use-callback-ref: 1.3.3(@types/react@18.2.73)(react@18.2.0) + use-sidecar: 1.1.3(@types/react@18.2.73)(react@18.2.0) + dev: false + /react-router-dom@6.30.0(react-dom@18.2.0)(react@18.2.0): resolution: {integrity: sha512-x30B78HV5tFk8ex0ITwzC9TTZMua4jGyA9IUlH1JLQYQTFyxr/ZxwOJq7evg1JX1qGVUcvhsmQSKdPncQrjTgA==} engines: {node: '>=14.0.0'} @@ -20531,6 +22008,22 @@ packages: '@remix-run/router': 1.23.0 react: 18.2.0 + /react-style-singleton@2.2.3(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': '*' + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': 18.2.73 + get-nonce: 1.0.1 + react: 18.2.0 + tslib: 2.8.1 + dev: false + /react@18.2.0: resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} engines: {node: '>=0.10.0'} @@ -22932,34 +24425,6 @@ packages: - '@swc/core' - '@swc/wasm' - '@types/node' - dev: true - - /ts-node-dev@2.0.0(@swc/core@1.15.3)(@types/node@24.10.1)(typescript@5.9.3): - resolution: {integrity: sha512-ywMrhCfH6M75yftYvrvNarLEY+SUXtUvU8/0Z6llrHQVBx12GiFk5sStF8UdfE/yfzk9IAq7O5EEbTQsxlBI8w==} - engines: {node: '>=0.8.0'} - hasBin: true - peerDependencies: - node-notifier: '*' - typescript: '*' - peerDependenciesMeta: - node-notifier: - optional: true - dependencies: - chokidar: 3.6.0 - dynamic-dedupe: 0.3.0 - minimist: 1.2.8 - mkdirp: 1.0.4 - resolve: 1.22.8 - rimraf: 2.7.1 - source-map-support: 0.5.21 - tree-kill: 1.2.2 - ts-node: 10.9.2(@swc/core@1.15.3)(@types/node@24.10.1)(typescript@5.9.3) - tsconfig: 7.0.0 - typescript: 5.9.3 - transitivePeerDependencies: - - '@swc/core' - - '@swc/wasm' - - '@types/node' /ts-node@10.9.2(@swc/core@1.15.3)(@types/node@20.14.15)(typescript@5.9.3): resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} @@ -22991,38 +24456,6 @@ packages: typescript: 5.9.3 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 - dev: true - - /ts-node@10.9.2(@swc/core@1.15.3)(@types/node@24.10.1)(typescript@5.9.3): - resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} - hasBin: true - peerDependencies: - '@swc/core': '>=1.2.50' - '@swc/wasm': '>=1.2.50' - '@types/node': '*' - typescript: '>=2.7' - peerDependenciesMeta: - '@swc/core': - optional: true - '@swc/wasm': - optional: true - dependencies: - '@cspotcode/source-map-support': 0.8.1 - '@swc/core': 1.15.3 - '@tsconfig/node10': 1.0.11 - '@tsconfig/node12': 1.0.11 - '@tsconfig/node14': 1.0.3 - '@tsconfig/node16': 1.0.4 - '@types/node': 24.10.1 - acorn: 8.14.0 - acorn-walk: 8.3.2 - arg: 4.1.3 - create-require: 1.1.1 - diff: 4.0.2 - make-error: 1.3.6 - typescript: 5.9.3 - v8-compile-cache-lib: 3.0.1 - yn: 3.1.1 /tsconfck@3.1.6(typescript@5.9.3): resolution: {integrity: sha512-ks6Vjr/jEw0P1gmOVwutM3B7fWxoWBL2KRDb1JfqGVawBmO5UsvmWOQFGHBPl5yxYz4eERr19E6L7NMv+Fej4w==} @@ -23325,9 +24758,6 @@ packages: /undici-types@5.26.5: resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} - /undici-types@7.16.0: - resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==} - /undici@5.28.5: resolution: {integrity: sha512-zICwjrDrcrUE0pyyJc1I2QzBkLM8FINsgOrt6WjA+BgajVq9Nxu2PbFFXUrAggLfDXlZGZBVZYw7WNV5KiBiBA==} engines: {node: '>=14.0'} @@ -23683,6 +25113,45 @@ packages: resolution: {integrity: sha512-WHN8KDQblxd32odxeIgo83rdVDE2bvdkb86it7bMhYZwWKJz0+O0RK/eZiHYnM+zgt/U7hAHOlCQGfjjvSkw2g==} dev: true + /use-callback-ref@1.3.3(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': '*' + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': 18.2.73 + react: 18.2.0 + tslib: 2.8.1 + dev: false + + /use-sidecar@1.1.3(@types/react@18.2.73)(react@18.2.0): + resolution: {integrity: sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': '*' + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + dependencies: + '@types/react': 18.2.73 + detect-node-es: 1.1.0 + react: 18.2.0 + tslib: 2.8.1 + dev: false + + /use-sync-external-store@1.6.0(react@18.2.0): + resolution: {integrity: sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + dependencies: + react: 18.2.0 + dev: false + /util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} From 2c4370d5c657094c5357cdb83b52b45ac8ecead6 Mon Sep 17 00:00:00 2001 From: Jonathan Matthey Date: Thu, 8 Jan 2026 04:59:27 +0100 Subject: [PATCH 03/42] fix: redesign tenants page --- .../frontend/app/routes/tenants._index.tsx | 169 +++++++++--------- 1 file changed, 80 insertions(+), 89 deletions(-) diff --git a/packages/frontend/app/routes/tenants._index.tsx b/packages/frontend/app/routes/tenants._index.tsx index ef1fdc848d..e2eb863794 100644 --- a/packages/frontend/app/routes/tenants._index.tsx +++ b/packages/frontend/app/routes/tenants._index.tsx @@ -1,7 +1,6 @@ import { json, type LoaderFunctionArgs } from '@remix-run/node' import { useLoaderData, useNavigate } from '@remix-run/react' -import { Badge, BadgeColor, PageHeader } from '~/components' -import { Button, Table } from '~/components/ui' +import { Box, Button, Card, Flex, Heading, Table, Badge, Text } from '@radix-ui/themes' import { getTenantInfo, listTenants, whoAmI } from '~/lib/api/tenant.server' import { paginationSchema } from '~/lib/validate.server' import { checkAuthAndRedirect } from '../lib/kratos_checks.server' @@ -59,99 +58,91 @@ export default function TenantsPage() { const navigate = useNavigate() return ( -
    -
    - -
    -

    Tenants

    -
    -
    + + + + + Tenants {me.isOperator && ( - )} -
    -
    - - - - {tenantEdges.length ? ( - tenantEdges.map((tenant) => ( - navigate(`/tenants/${tenant.node.id}`)} - > - -
    -
    - - {tenant.node.publicName ? ( - - {tenant.node.publicName} - - ) : ( - - No public name - + + + + + + Public name + Email + Status + + + + {tenantEdges.length ? ( + tenantEdges.map((tenant) => ( + navigate(`/tenants/${tenant.node.id}`)} + > + + + + + {tenant.node.publicName || 'No public name'} + + {me.isOperator && me.id == tenant.node.id && ( + Operator )} - - {me.isOperator && me.id == tenant.node.id && ( - Operator - )} -
    -
    - (ID: {tenant.node.id}) -
    -
    -
    - - {tenant.node.email ? ( - {tenant.node.email} - ) : ( - No email - )} - - - {tenant.node.deletedAt ? ( - Inactive - ) : ( - Active - )} + + + (ID: {tenant.node.id}) + + + + + + {tenant.node.email || 'No email'} + + + + {tenant.node.deletedAt ? ( + Inactive + ) : ( + Active + )} + +
    + )) + ) : ( + + + No tenants found. - )) - ) : ( - - - No tenants found. - - - )} -
    -
    -
    - - -
    -
    -
    + )} + + + + + + + + + + ) } From f15d4886d9bd7b3f716f1b1e258067274cc04333 Mon Sep 17 00:00:00 2001 From: Jonathan Matthey Date: Thu, 8 Jan 2026 04:59:40 +0100 Subject: [PATCH 04/42] fix: redesign peers page --- packages/frontend/app/routes/peers._index.tsx | 154 +++++++++--------- 1 file changed, 77 insertions(+), 77 deletions(-) diff --git a/packages/frontend/app/routes/peers._index.tsx b/packages/frontend/app/routes/peers._index.tsx index a8d201f4f6..41bae964b5 100644 --- a/packages/frontend/app/routes/peers._index.tsx +++ b/packages/frontend/app/routes/peers._index.tsx @@ -1,7 +1,6 @@ import { json, type LoaderFunctionArgs } from '@remix-run/node' import { useLoaderData, useNavigate } from '@remix-run/react' -import { PageHeader } from '~/components' -import { Button, Table } from '~/components/ui' +import { Box, Button, Card, Flex, Heading, Table, Text } from '@radix-ui/themes' import { listPeers } from '~/lib/api/peer.server' import { paginationSchema } from '~/lib/validate.server' import { checkAuthAndRedirect } from '../lib/kratos_checks.server' @@ -38,87 +37,88 @@ export const loader = async ({ request }: LoaderFunctionArgs) => { } export default function PeersPage() { - const { peers, previousPageUrl, nextPageUrl } = useLoaderData() + const { peers, previousPageUrl, nextPageUrl} = useLoaderData() const navigate = useNavigate() return ( -
    - {/* Peers Table */} -
    - -
    -

    Peers

    -
    -
    - -
    -
    - - - - {peers.edges.length ? ( - peers.edges.map((peer) => ( - navigate(`/peers/${peer.node.id}`)} - > - -
    - {peer.node.name ? ( - {peer.node.name} - ) : ( - No peer name - )} -
    - (ID: {peer.node.id}) -
    -
    -
    - {peer.node.staticIlpAddress} - - {peer.node.asset.code} (Scale: {peer.node.asset.scale}) - - {peer.node.http.outgoing.endpoint} -
    - )) - ) : ( + + + + - - No peers found. - + Name + ILP Address + Asset + Outgoing HTTP Endpoint - )} -
    -
    - {/* Pagination */} -
    - - -
    - {/* Pagination - END */} -
    - {/* Peers Table - END*/} -
    + + + {peers.edges.length ? ( + peers.edges.map((peer) => ( + navigate(`/peers/${peer.node.id}`)} + > + + + + {peer.node.name || 'No peer name'} + + + (ID: {peer.node.id}) + + + + + {peer.node.staticIlpAddress} + + + + {peer.node.asset.code} (Scale: {peer.node.asset.scale}) + + + + {peer.node.http.outgoing.endpoint} + + + )) + ) : ( + + + No peers found. + + + )} + + + + + + + + + + ) } From 4a6a287ee26c21b97edb932acd89ea33abd6121d Mon Sep 17 00:00:00 2001 From: Jonathan Matthey Date: Thu, 8 Jan 2026 04:59:48 +0100 Subject: [PATCH 05/42] fix: redesign assets page --- .../frontend/app/routes/assets._index.tsx | 138 +++++++++--------- 1 file changed, 71 insertions(+), 67 deletions(-) diff --git a/packages/frontend/app/routes/assets._index.tsx b/packages/frontend/app/routes/assets._index.tsx index 758f40d613..c7708ad4a2 100644 --- a/packages/frontend/app/routes/assets._index.tsx +++ b/packages/frontend/app/routes/assets._index.tsx @@ -1,7 +1,6 @@ import { json, type LoaderFunctionArgs } from '@remix-run/node' import { useLoaderData, useNavigate } from '@remix-run/react' -import { PageHeader } from '~/components' -import { Button, Table } from '~/components/ui' +import { Box, Button, Card, Flex, Heading, Table, Text } from '@radix-ui/themes' import { listAssets } from '~/lib/api/asset.server' import { paginationSchema } from '~/lib/validate.server' import { checkAuthAndRedirect } from '../lib/kratos_checks.server' @@ -43,74 +42,79 @@ export default function AssetsPage() { const navigate = useNavigate() return ( -
    -
    - -
    -

    Assets

    -
    -
    - -
    -
    - - - - {assets.edges.length ? ( - assets.edges.map((asset) => ( - navigate(`/assets/${asset.node.id}`)} - > - {asset.node.id} - {asset.node.code} - {asset.node.scale} - - {asset.node.withdrawalThreshold ? ( - asset.node.withdrawalThreshold - ) : ( - - No withdrawal threshold - - )} - - - )) - ) : ( + + + + - - No assets found. - + ID + Code + Scale + Withdrawal threshold - )} - -
    -
    - - -
    -
    -
    + + + {assets.edges.length ? ( + assets.edges.map((asset) => ( + navigate(`/assets/${asset.node.id}`)} + > + + {asset.node.id} + + + {asset.node.code} + + + {asset.node.scale} + + + {asset.node.withdrawalThreshold ? ( + {asset.node.withdrawalThreshold} + ) : ( + No withdrawal threshold + )} + + + )) + ) : ( + + + No assets found. + + + )} + + + + + + + + + + ) } From c8ad16f7ccc9bc8350720638bad04cd8ec99362d Mon Sep 17 00:00:00 2001 From: Jonathan Matthey Date: Thu, 8 Jan 2026 05:00:00 +0100 Subject: [PATCH 06/42] fix: redesign wallet addresses page --- .../app/routes/wallet-addresses._index.tsx | 148 +++++++++--------- 1 file changed, 72 insertions(+), 76 deletions(-) diff --git a/packages/frontend/app/routes/wallet-addresses._index.tsx b/packages/frontend/app/routes/wallet-addresses._index.tsx index 0ff8612a98..d7122369c0 100644 --- a/packages/frontend/app/routes/wallet-addresses._index.tsx +++ b/packages/frontend/app/routes/wallet-addresses._index.tsx @@ -1,10 +1,8 @@ import { json, type LoaderFunctionArgs } from '@remix-run/node' import { useLoaderData, useNavigate } from '@remix-run/react' -import { Badge, PageHeader } from '~/components' -import { Button, Table } from '~/components/ui' +import { Box, Button, Card, Flex, Heading, Table, Badge, Text } from '@radix-ui/themes' import { listWalletAddresses } from '~/lib/api/wallet-address.server' import { paginationSchema } from '~/lib/validate.server' -import { badgeColorByWalletAddressStatus } from '~/shared/utils' import { checkAuthAndRedirect } from '../lib/kratos_checks.server' export const loader = async ({ request }: LoaderFunctionArgs) => { @@ -38,88 +36,86 @@ export const loader = async ({ request }: LoaderFunctionArgs) => { return json({ walletAddresses, previousPageUrl, nextPageUrl }) } +const statusColorMap: Record = { + ACTIVE: 'green', + INACTIVE: 'red' +} + export default function WalletAddressesPage() { const { walletAddresses, previousPageUrl, nextPageUrl } = useLoaderData() const navigate = useNavigate() return ( -
    -
    - -
    -

    Wallet Addresses

    -
    -
    - -
    -
    - - - - {walletAddresses.edges.length ? ( - walletAddresses.edges.map((wa) => ( - navigate(`/wallet-addresses/${wa.node.id}`)} - > - {wa.node.address} - -
    - {wa.node.publicName ? ( - - {wa.node.publicName} - - ) : ( - No public name - )} -
    -
    - - - {wa.node.status} - - -
    - )) - ) : ( + + + + - - No wallet addresses found. - + Wallet address + Public name + Status - )} -
    -
    -
    - - -
    -
    -
    + + + {walletAddresses.edges.length ? ( + walletAddresses.edges.map((wa) => ( + navigate(`/wallet-addresses/${wa.node.id}`)} + > + + {wa.node.address} + + + + {wa.node.publicName || 'No public name'} + + + + + {wa.node.status} + + + + )) + ) : ( + + + No wallet addresses found. + + + )} + + + + + + + + + + ) } From 914eaa2471587a529c9cdb8917107bd6b77c63ce Mon Sep 17 00:00:00 2001 From: Jonathan Matthey Date: Thu, 8 Jan 2026 05:04:06 +0100 Subject: [PATCH 07/42] fix: redesign webhook page --- .../frontend/app/routes/webhook-events.tsx | 156 ++++++++++-------- 1 file changed, 84 insertions(+), 72 deletions(-) diff --git a/packages/frontend/app/routes/webhook-events.tsx b/packages/frontend/app/routes/webhook-events.tsx index d2129223da..288f99fdaf 100644 --- a/packages/frontend/app/routes/webhook-events.tsx +++ b/packages/frontend/app/routes/webhook-events.tsx @@ -5,9 +5,8 @@ import { useNavigate, useSearchParams } from '@remix-run/react' -import { PageHeader } from '~/components' +import { Box, Button, Card, Flex, Heading, Table, Text } from '@radix-ui/themes' import { PopoverFilter } from '~/components/Filters' -import { Button, Table } from '~/components/ui' import { listWebhooks } from '~/lib/api/webhook.server' import { webhooksSearchParams } from '~/lib/validate.server' import { WebhookEventType } from '~/shared/enums' @@ -84,16 +83,13 @@ export default function WebhookEventsPage() { return ( <> -
    -
    - -
    -

    Webhook Events

    -
    -
    -
    -

    Filters

    -
    + + + + Webhook Events + + + Filters 0 ? type : ['all']} @@ -116,68 +112,84 @@ export default function WebhookEventsPage() { })) ]} /> -
    -
    - - - - {webhooks.edges.length ? ( - webhooks.edges.map((webhook) => ( - - {webhook.node.id} - {webhook.node.type} - - {new Date(webhook.node.createdAt).toLocaleString()} - - - - - - )) - ) : ( + + + + - - No webhook events found. - + ID + Type + Date + Data - )} - -
    -
    - - -
    -
    -
    + + + {webhooks.edges.length ? ( + webhooks.edges.map((webhook) => ( + + + {webhook.node.id} + + + {webhook.node.type} + + + {new Date(webhook.node.createdAt).toLocaleString()} + + + + + + )) + ) : ( + + + No webhook events found. + + + )} + + + + + + + + + + ) From 85d17a925d7bd88fba144ab5f0ec22cabb0adf63 Mon Sep 17 00:00:00 2001 From: Jonathan Matthey Date: Thu, 8 Jan 2026 05:04:10 +0100 Subject: [PATCH 08/42] fix: redesign payment page --- .../frontend/app/routes/payments._index.tsx | 323 +++++++++--------- 1 file changed, 167 insertions(+), 156 deletions(-) diff --git a/packages/frontend/app/routes/payments._index.tsx b/packages/frontend/app/routes/payments._index.tsx index 9c57ca2512..302800e7d9 100644 --- a/packages/frontend/app/routes/payments._index.tsx +++ b/packages/frontend/app/routes/payments._index.tsx @@ -12,9 +12,9 @@ import { Form, useActionData } from '@remix-run/react' -import { Badge, PageHeader } from '~/components' +import { Box, Button, Card, Flex, Heading, Table, Badge, Text, TextField } from '@radix-ui/themes' import { PopoverFilter } from '~/components/Filters' -import { Button, Table, ErrorPanel, FieldError } from '~/components/ui' +import { ErrorPanel, FieldError } from '~/components/ui' import { listPayments } from '~/lib/api/payments.server' import { paymentsSearchParams } from '~/lib/validate.server' import { PaymentType } from '~/generated/graphql' @@ -119,94 +119,92 @@ export default function PaymentsPage() { } return ( -
    -
    - -
    -

    Payments

    -
    -
    -
    -

    Filters

    -
    + + + + Payments + + + Filters -
    -
    - 0 ? type : ['all']} - options={[ - { - name: 'All', - value: 'all', - action: () => + + + 0 ? type : ['all']} + options={[ + { + name: 'All', + value: 'all', + action: () => + updateParams({ + type: null, + before: null, + after: null, + walletAddressId + }) + }, + ...Object.values(PaymentType).map((value) => ({ + name: capitalize(value), + value: value, + action: () => setTypeFilterParams(value) + })) + ]} + /> + +
    { + if (!walletId) { + e.preventDefault() updateParams({ - type: null, + walletAddressId: null, + type: searchParams.get('type'), before: null, - after: null, - walletAddressId + after: null }) - }, - ...Object.values(PaymentType).map((value) => ({ - name: capitalize(value), - value: value, - action: () => setTypeFilterParams(value) - })) - ]} - /> - { - if (!walletId) { - e.preventDefault() - updateParams({ - walletAddressId: null, - type: searchParams.get('type'), - before: null, - after: null - }) - } - }} - > -
    - setWalletId(e.target.value)} - /> - + + setWalletId(e.target.value)} + /> + + + + - -
    - - -
    -
    + + + -
    -
    - - - - {payments.edges.length ? ( - payments.edges.map((payment) => ( - { - const subpath = paymentSubpathByType[payment.node.type] - return navigate(`/payments/${subpath}/${payment.node.id}`) - }} - > - {payment.node.id} - {capitalize(payment.node.type)} - - - {payment.node.state} - - - - {new Date(payment.node.createdAt).toLocaleString()} - - - )) - ) : ( + + + + - - No payments found. - + ID + Type + State + Date - )} - -
    -
    - - -
    -
    -
    + + + {payments.edges.length ? ( + payments.edges.map((payment) => ( + { + const subpath = paymentSubpathByType[payment.node.type] + return navigate(`/payments/${subpath}/${payment.node.id}`) + }} + > + + {payment.node.id} + + + {capitalize(payment.node.type)} + + + + {payment.node.state} + + + + {new Date(payment.node.createdAt).toLocaleString()} + + + )) + ) : ( + + + No payments found. + + + )} + + + + + + + + + + ) } From 5bfa624fa7a3c2a45a7e2599a72198f53a6ba26e Mon Sep 17 00:00:00 2001 From: Jonathan Matthey Date: Thu, 8 Jan 2026 05:05:49 +0100 Subject: [PATCH 09/42] fix: redesign sidebar --- packages/frontend/app/components/Sidebar.tsx | 69 ++++++++++---------- 1 file changed, 36 insertions(+), 33 deletions(-) diff --git a/packages/frontend/app/components/Sidebar.tsx b/packages/frontend/app/components/Sidebar.tsx index 5e37ef29d5..87a8a1402b 100644 --- a/packages/frontend/app/components/Sidebar.tsx +++ b/packages/frontend/app/components/Sidebar.tsx @@ -3,8 +3,8 @@ import { NavLink } from '@remix-run/react' import { cx } from 'class-variance-authority' import type { FC } from 'react' import { Fragment, useState } from 'react' +import { Box, Button, Flex, Heading, IconButton } from '@radix-ui/themes' import { Bars, XIcon } from './icons' -import { Button } from '~/components/ui' interface SidebarProps { logoutUrl: string @@ -85,15 +85,18 @@ export const Sidebar: FC = ({ >
    ) From 698c1e060d3cdac47422633b1213882771fe32b5 Mon Sep 17 00:00:00 2001 From: Jonathan Matthey Date: Thu, 8 Jan 2026 05:24:36 +0100 Subject: [PATCH 10/42] fix: light css background --- packages/frontend/app/components/Sidebar.tsx | 4 +-- packages/frontend/app/root.tsx | 6 ++--- packages/frontend/app/routes/_index.tsx | 2 +- packages/frontend/app/styles/tailwind.css | 28 ++++++++++++++++++++ 4 files changed, 34 insertions(+), 6 deletions(-) diff --git a/packages/frontend/app/components/Sidebar.tsx b/packages/frontend/app/components/Sidebar.tsx index 87a8a1402b..983a61b93e 100644 --- a/packages/frontend/app/components/Sidebar.tsx +++ b/packages/frontend/app/components/Sidebar.tsx @@ -143,8 +143,8 @@ export const Sidebar: FC = ({ -