diff --git a/.env.example b/.env.example index 552ae41f..6ca790b4 100644 --- a/.env.example +++ b/.env.example @@ -1,9 +1,16 @@ # production api NEXT_PUBLIC_API_URL=https://api.skip.money +NEXT_PUBLIC_CLIENT_ID= # development API -# NEXT_PUBLIC_API_URL=https://solve-dev.skip.money +# NEXT_PUBLIC_API_URL="https://solve-dev.skip.money" +# NEXT_PUBLIC_CLIENT_ID= -CORS_EDGE_CONFIG= -POLKACHU_USER= -POLKACHU_PASSWORD= +POLKACHU_USER +POLKACHU_PASSWORD + +NEXT_PUBLIC_EDGE_CONFIG= +NEXT_PUBLIC_FLAGS_OVERRIDE= +NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID= +RESEND_API_KEY= +WALLETCONNECT_VERIFY_KEY= diff --git a/chain-registry b/chain-registry index 6d45eb71..44cfc8bf 160000 --- a/chain-registry +++ b/chain-registry @@ -1 +1 @@ -Subproject commit 6d45eb71e54dd0d8d26fe55f5cd77b2949014c51 +Subproject commit 44cfc8bfaf43737539b7afbbf3143758b3fd595a diff --git a/env.d.ts b/env.d.ts index 7b17c8ea..3649925f 100644 --- a/env.d.ts +++ b/env.d.ts @@ -7,9 +7,10 @@ declare namespace NodeJS { readonly POLKACHU_USER?: string; readonly POLKACHU_PASSWORD?: string; - readonly CORS_EDGE_CONFIG?: string; - readonly RESEND_API_KEY?: string; + readonly NEXT_PUBLIC_EDGE_CONFIG?: string; + readonly NEXT_PUBLIC_FLAGS_OVERRIDE?: string; readonly NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID?: string; + readonly RESEND_API_KEY?: string; readonly WALLETCONNECT_VERIFY_KEY?: string; } } diff --git a/package-lock.json b/package-lock.json index c47d082d..6f86fef4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -19,22 +19,19 @@ "@cosmjs/tendermint-rpc": "0.31.x", "@cosmos-kit/core": "2.8.x", "@cosmos-kit/cosmostation": "2.6.x", - "@cosmos-kit/initia": "^0.2.2", "@cosmos-kit/keplr": "2.6.x", "@cosmos-kit/leap": "2.6.x", "@cosmos-kit/okxwallet": "2.4.x", "@cosmos-kit/react": "2.10.x", - "@cosmos-kit/react-lite": "2.6.x", "@cosmos-kit/station": "2.5.x", "@cosmos-kit/vectis": "2.6.x", "@cosmos-kit/xdefi": "2.5.x", "@fontsource/jost": "^5.0.16", "@graz-sh/types": "^0.0.14", - "@headlessui/react": "^1.7.18", "@heroicons/react": "^2.1.1", "@injectivelabs/sdk-ts": "^1.14.5", "@injectivelabs/utils": "^1.14.5", - "@keplr-wallet/types": "^0.12.62", + "@keplr-wallet/types": "^0.12.63", "@radix-ui/react-accordion": "^1.1.2", "@radix-ui/react-collapsible": "^1.0.3", "@radix-ui/react-dialog": "^1.0.5", @@ -42,24 +39,22 @@ "@radix-ui/react-toggle-group": "^1.0.4", "@radix-ui/react-tooltip": "^1.0.7", "@react-stately/table": "^3.11.4", - "@sentry/nextjs": "^7.93.0", - "@skip-router/core": "^1.2.3", + "@sentry/nextjs": "^7.94.1", + "@skip-router/core": "^1.2.7", "@tailwindcss/forms": "^0.5.7", - "@tanstack/query-sync-storage-persister": "^5.17.15", - "@tanstack/react-query": "^5.17.15", - "@tanstack/react-query-persist-client": "^5.17.15", + "@tanstack/query-sync-storage-persister": "^5.17.19", + "@tanstack/react-query": "^5.17.19", + "@tanstack/react-query-persist-client": "^5.17.19", "@types/node": "^20.11.5", "@types/react": "^18.2.48", "@types/react-dom": "^18.2.18", "@vercel/analytics": "^1.1.2", "@vercel/edge-config": "^0.4.1", - "@web3modal/core": "^3.5.6", - "@web3modal/ui": "^3.5.6", "autoprefixer": "^10.4.17", "axios": "^1.6.5", "clsx": "^2.1.0", "cosmjs-types": "0.8.x", - "date-fns": "^3.2.0", + "date-fns": "^3.3.1", "download": "^8.0.0", "ethers": "^6.10.0", "match-sorter": "^6.3.3", @@ -70,26 +65,26 @@ "react": "^18.2.0", "react-dom": "^18.2.0", "react-hot-toast": "^2.4.1", - "resend": "^3.0.0", + "resend": "^3.1.0", "tailwindcss": "^3.4.1", "tinykeys": "^2.1.0", - "undici": "^6.3.0", + "undici": "^6.4.0", "viem": "1.x", "wagmi": "1.x", "zod": "^3.22.4", - "zustand": "^4.4.7" + "zustand": "^4.5.0" }, "devDependencies": { - "@playwright/test": "^1.41.0", - "@tanstack/eslint-plugin-query": "^5.17.7", - "@testing-library/jest-dom": "^6.2.0", + "@playwright/test": "^1.41.1", + "@tanstack/eslint-plugin-query": "^5.17.20", + "@testing-library/jest-dom": "^6.2.1", "@testing-library/react": "^14.1.2", "@testing-library/user-event": "^14.5.2", "@types/download": "^8.0.5", "@types/jest": "^29.5.11", "@types/testing-library__jest-dom": "^5.14.9", - "@typescript-eslint/eslint-plugin": "^6.19.0", - "@typescript-eslint/parser": "^6.19.0", + "@typescript-eslint/eslint-plugin": "^6.19.1", + "@typescript-eslint/parser": "^6.19.1", "eslint": "^8.56.0", "eslint-config-next": "^14.1.0", "eslint-config-prettier": "^9.1.0", @@ -105,7 +100,7 @@ "prettier": "^3.2.4", "prettier-plugin-tailwindcss": "^0.5.11", "resize-observer-polyfill": "^1.5.1", - "ts-jest": "^29.1.1", + "ts-jest": "^29.1.2", "tsx": "^4.7.0", "typed-query-selector": "^2.11.0", "typescript": "5.2.x" @@ -156,9 +151,9 @@ } }, "node_modules/@apollo/client": { - "version": "3.8.8", - "resolved": "https://registry.npmjs.org/@apollo/client/-/client-3.8.8.tgz", - "integrity": "sha512-omjd9ryGDkadZrKW6l5ktUAdS4SNaFOccYQ4ZST0HLW83y8kQaSZOCTNlpkoBUK8cv6qP8+AxOKwLm2ho8qQ+Q==", + "version": "3.8.10", + "resolved": "https://registry.npmjs.org/@apollo/client/-/client-3.8.10.tgz", + "integrity": "sha512-p/22RZ8ehHyvySnC20EHPPe0gdu8Xp6ZCiXOfdEe1ZORw5cUteD/TLc66tfKv8qu8NLIfbiWoa+6s70XnKvxqg==", "dependencies": { "@graphql-typed-document-node/core": "^3.1.1", "@wry/equality": "^0.5.6", @@ -204,9 +199,9 @@ } }, "node_modules/@axelar-network/axelarjs-sdk": { - "version": "0.13.8", - "resolved": "https://registry.npmjs.org/@axelar-network/axelarjs-sdk/-/axelarjs-sdk-0.13.8.tgz", - "integrity": "sha512-cEIGb2q1VB4HmcFpZ5CBejKaPSGFOL28e8ZYzPZo0b8LFWApTtWh6TKiLeKL1O/maIaH+duTENooiM427EDsfg==", + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/@axelar-network/axelarjs-sdk/-/axelarjs-sdk-0.13.9.tgz", + "integrity": "sha512-c7UooF1/2V51LAB936GOHRxMtautB7uGXW3QfeEufzoBAPx2Sfx2IB8pT7KHaohdY4zZUI8lVYRNogOVeZhjpg==", "hasInstallScript": true, "dependencies": { "@axelar-network/axelar-cgp-solidity": "^4.5.0", @@ -456,9 +451,9 @@ } }, "node_modules/@babel/core": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.6.tgz", - "integrity": "sha512-FxpRyGjrMJXh7X3wGLGhNDCRiwpWEF74sKjTLDJSG5Kyvow3QZaG0Adbqzi9ZrVjTWpsX+2cxWXD71NMg93kdw==", + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.7.tgz", + "integrity": "sha512-+UpDgowcmqe36d4NwqvKsyPMlOLNGMsfMmQ5WGCu+siCe3t3dfe9njrzGfdN4qq+bcNUt0+Vw6haRxBOycs4dw==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", @@ -466,10 +461,10 @@ "@babel/generator": "^7.23.6", "@babel/helper-compilation-targets": "^7.23.6", "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.23.6", + "@babel/helpers": "^7.23.7", "@babel/parser": "^7.23.6", "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.6", + "@babel/traverse": "^7.23.7", "@babel/types": "^7.23.6", "convert-source-map": "^2.0.0", "debug": "^4.1.0", @@ -660,13 +655,13 @@ } }, "node_modules/@babel/helpers": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.6.tgz", - "integrity": "sha512-wCfsbN4nBidDRhpDhvcKlzHWCTlgJYUUdSJfzXb2NuBssDSIjc3xcb+znA7l+zYsFljAcGM0aFkN40cR3lXiGA==", + "version": "7.23.8", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.8.tgz", + "integrity": "sha512-KDqYz4PiOWvDFrdHLPhKtCThtIcKVy6avWD2oG4GEvyQ+XDZwHD4YQd+H2vNMnq2rkdxsDkU82T+Vk8U/WXHRQ==", "dev": true, "dependencies": { "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.6", + "@babel/traverse": "^7.23.7", "@babel/types": "^7.23.6" }, "engines": { @@ -973,9 +968,9 @@ } }, "node_modules/@babel/traverse": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.6.tgz", - "integrity": "sha512-czastdK1e8YByZqezMPFiZ8ahwVMh/ESl9vPgvgdB9AmFMGP5jfpFax74AQgl5zj4XHzqeYAg2l8PuUeRS1MgQ==", + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.7.tgz", + "integrity": "sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==", "dev": true, "dependencies": { "@babel/code-frame": "^7.23.5", @@ -1022,6 +1017,26 @@ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, + "node_modules/@chain-registry/client": { + "version": "1.18.4", + "resolved": "https://registry.npmjs.org/@chain-registry/client/-/client-1.18.4.tgz", + "integrity": "sha512-q06EeCQahVPTqf9n0nRw2/bL+tZArltvGH+fllsXfwLa6vhc264McFJRMownhiYJvhFaI/WChMeNmjFOaMIABA==", + "dependencies": { + "@babel/runtime": "^7.21.0", + "@chain-registry/types": "^0.17.1", + "@chain-registry/utils": "^1.17.3", + "bfs-path": "^1.0.2", + "cross-fetch": "^3.1.5" + } + }, + "node_modules/@chain-registry/client/node_modules/@chain-registry/types": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@chain-registry/types/-/types-0.17.1.tgz", + "integrity": "sha512-O0CgrtJgIlqXvZm1CqDZe/7jZz068O/uuCIoyDXCegFHK03rdHacKcDGwEIUuI0MNUf8YV3jdE4xHQMSAX+79w==", + "dependencies": { + "@babel/runtime": "^7.21.0" + } + }, "node_modules/@chain-registry/cosmostation": { "version": "1.26.0", "resolved": "https://registry.npmjs.org/@chain-registry/cosmostation/-/cosmostation-1.26.0.tgz", @@ -1054,9 +1069,9 @@ } }, "node_modules/@chain-registry/utils": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/@chain-registry/utils/-/utils-1.17.0.tgz", - "integrity": "sha512-MNIfpFM8rF1Gex+LhmuHgUElLbjz2vgmjI9qpRl9MMuQUSndu/NVhCDWcgvGNVKCD6woR6ohD9UIs9n0/Q91AA==", + "version": "1.17.3", + "resolved": "https://registry.npmjs.org/@chain-registry/utils/-/utils-1.17.3.tgz", + "integrity": "sha512-PmpYJ8pG8YUMVNKDl560Cqad5tyJT0gfgXRt8NmRoxbFsFSzvVeJTAod9m/puSyCQNxODZN/SvMiHwL9LQlSqg==", "dependencies": { "@babel/runtime": "^7.21.0", "@chain-registry/types": "^0.17.1", @@ -1084,18 +1099,6 @@ "protobufjs": "~6.11.2" } }, - "node_modules/@classic-terra/terra.proto/node_modules/@improbable-eng/grpc-web": { - "version": "0.14.1", - "resolved": "https://registry.npmjs.org/@improbable-eng/grpc-web/-/grpc-web-0.14.1.tgz", - "integrity": "sha512-XaIYuunepPxoiGVLLHmlnVminUGzBTnXr8Wv7khzmLWbNw4TCwJKX09GSMJlKhu/TRk6gms0ySFxewaETSBqgw==", - "peer": true, - "dependencies": { - "browser-headers": "^0.4.1" - }, - "peerDependencies": { - "google-protobuf": "^3.14.0" - } - }, "node_modules/@coinbase/wallet-sdk": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/@coinbase/wallet-sdk/-/wallet-sdk-3.7.2.tgz", @@ -1328,10 +1331,11 @@ "integrity": "sha512-VBhAgzrrYdIe0O5IbKRqwszbQa7ZyQLx9nEQuHQ3HUplQW7P44COG/ye2n6AzCudtqxmwdX7nyX8ta1J07GoqA==" }, "node_modules/@cosmos-kit/core": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/core/-/core-2.8.2.tgz", - "integrity": "sha512-dbKpmf4rItykpm1aOc9BGth0Kh82IFQOWUBiEZKMwkBwOJIIa4tdKfOON7koXqQ6/ho9ugeLnlxFaViljcSWlQ==", + "version": "2.8.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/core/-/core-2.8.6.tgz", + "integrity": "sha512-6/yTJflQkGK6+pfp+t9eX6jPqTNLrbZFFIEZCMD2eFlVdJV/dCJflLB6zr5CxDe9fzFasOfCJRh+/ffEU4xfBQ==", "dependencies": { + "@chain-registry/client": "^1.18.0", "@chain-registry/types": "0.17.0", "@cosmjs/amino": "^0.32.2", "@cosmjs/cosmwasm-stargate": "^0.32.2", @@ -1345,21 +1349,21 @@ } }, "node_modules/@cosmos-kit/cosmostation": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/cosmostation/-/cosmostation-2.6.2.tgz", - "integrity": "sha512-hLdey6M0jUqojG2IbA6vbip/NycOQ03iiHSamB9cu2BK6z7WvnUAizhuxYQlyO/szRtAbc1mBr1Cqp/FaNn4jQ==", + "version": "2.6.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/cosmostation/-/cosmostation-2.6.6.tgz", + "integrity": "sha512-TC4fhYfYI+EY8h7TGDEnfvSHgc3qYxFSKAjypKH+K0+S2zdE1mg4cQde9eHkJx7k0PCjjWmA6wvLytddyPF2yA==", "dependencies": { - "@cosmos-kit/cosmostation-extension": "^2.7.2", - "@cosmos-kit/cosmostation-mobile": "^2.6.2" + "@cosmos-kit/cosmostation-extension": "^2.7.6", + "@cosmos-kit/cosmostation-mobile": "^2.6.6" } }, "node_modules/@cosmos-kit/cosmostation-extension": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/cosmostation-extension/-/cosmostation-extension-2.7.2.tgz", - "integrity": "sha512-d7K+dhPPGQarivY2sKvCpIzqqmH0U5piawit0bKUdZ+4H5Hwm6pChGpeh22el1pXVi6L94hPRKIxrnvGLICpHA==", + "version": "2.7.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/cosmostation-extension/-/cosmostation-extension-2.7.6.tgz", + "integrity": "sha512-yoJ3RdfWHqL6/+piaglGER5Gr3GsAF+qV8dPy/lPezuHx2x9FA7zrmgEJY4B53VUtcXE+ua7MwxdYmlzo9Du+w==", "dependencies": { "@chain-registry/cosmostation": "^1.26.0", - "@cosmos-kit/core": "^2.8.2" + "@cosmos-kit/core": "^2.8.6" }, "peerDependencies": { "@cosmjs/amino": ">=0.32.2", @@ -1368,54 +1372,31 @@ } }, "node_modules/@cosmos-kit/cosmostation-mobile": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/cosmostation-mobile/-/cosmostation-mobile-2.6.2.tgz", - "integrity": "sha512-c2YCZVxzaF7tiEHhfcI6yyE1kyjXTkfQtvRrcniSxK+IqIThDmE0S7KgKCQDpVL1kAm3Ewd8hk30oqfBw2Swdw==", + "version": "2.6.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/cosmostation-mobile/-/cosmostation-mobile-2.6.6.tgz", + "integrity": "sha512-l1RmKCIYPjdwavzuMnQ3wGuGufSIG1myy4H4sgW3SZji5Tj5wTS6Agv0vq7+7F9HzGutE+ghjeuI9Ots6imX9Q==", "dependencies": { "@chain-registry/cosmostation": "1.26.0", - "@cosmos-kit/core": "^2.8.2", - "@cosmos-kit/walletconnect": "^2.5.2" - } - }, - "node_modules/@cosmos-kit/initia": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/initia/-/initia-0.2.2.tgz", - "integrity": "sha512-6YlUu+5d555xotofOI/OSTn/oF46Haazjuz/dNgwYE1z3hvUkLQjTOzWTMEJFAVHyE1qU42fiiASoBFa2MeBkw==", - "dependencies": { - "@cosmos-kit/initia-extension": "^0.2.2" - } - }, - "node_modules/@cosmos-kit/initia-extension": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/initia-extension/-/initia-extension-0.2.2.tgz", - "integrity": "sha512-uyVz3KazKHUGVRiFlG0FJUuWG1sVc9zlh1ys6JURTuuF6h7tY1bkS1qLD9At4Br9xFDs2WMy0N5OizqTNGYavA==", - "dependencies": { - "@chain-registry/keplr": "1.28.0", - "@cosmos-kit/core": "^2.8.2", - "@initia/initia.proto": "^0.1.20", - "@initia/shared": "^0.6.0" - }, - "peerDependencies": { - "@cosmjs/amino": ">=0.32.2", - "@cosmjs/proto-signing": ">=0.32.2" + "@cosmos-kit/core": "^2.8.6", + "@cosmos-kit/walletconnect": "^2.5.6" } }, "node_modules/@cosmos-kit/keplr": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/keplr/-/keplr-2.6.2.tgz", - "integrity": "sha512-MVFSlz36GBXeyLEyDffmyiSvyx0wLlhk+mhrObd5Cf8/j89gsAWyTMMLWGsMpONWAAQZWS/jNP5zkODLlH38Kw==", + "version": "2.6.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/keplr/-/keplr-2.6.6.tgz", + "integrity": "sha512-6GsW4ZDLp0VndCDhhQQKJkIGo2ObR8rYAVizd3oSkqDrEe2ulHPe5LJtDjG9eMX5ZY+8JiQOUT3XQwRvtqSIug==", "dependencies": { - "@cosmos-kit/keplr-extension": "^2.7.2", - "@cosmos-kit/keplr-mobile": "^2.6.2" + "@cosmos-kit/keplr-extension": "^2.7.6", + "@cosmos-kit/keplr-mobile": "^2.6.6" } }, "node_modules/@cosmos-kit/keplr-extension": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/keplr-extension/-/keplr-extension-2.7.2.tgz", - "integrity": "sha512-krl/QohD+1V4cn18uUOxyzo/Hbw2uLz22NFotHA6DWn8sJu8dHr3zxTDMMle2IuGdlQa3av9MjtnDcWu2m9p2w==", + "version": "2.7.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/keplr-extension/-/keplr-extension-2.7.6.tgz", + "integrity": "sha512-YtZRRRc0QfMzC5Mtw6gC8UkgjC09z+pEBWNLP2zdws9h8ePCDPp5dH032jaUEib471ZA2orz15bq5uQ7X0J4TQ==", "dependencies": { "@chain-registry/keplr": "1.28.0", - "@cosmos-kit/core": "^2.8.2", + "@cosmos-kit/core": "^2.8.6", "@keplr-wallet/types": "^0.12.58" }, "peerDependencies": { @@ -1424,13 +1405,13 @@ } }, "node_modules/@cosmos-kit/keplr-mobile": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/keplr-mobile/-/keplr-mobile-2.6.2.tgz", - "integrity": "sha512-mNke7LWGfNzOj9856l7KbVQgldIYo8a+sx6k6cKP1GX1Zf8znNojtvlxPPs2pTme8jci2XOEXr3tenNxF4J24g==", + "version": "2.6.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/keplr-mobile/-/keplr-mobile-2.6.6.tgz", + "integrity": "sha512-FRe3TpEp+C+qfuF5+G9ccf+nafAERR1GbGuVTHsBc4o+KhTXKmg77UUwY8JixKSC6+TCrc64ibGiivqzCWZ/rg==", "dependencies": { "@chain-registry/keplr": "1.28.0", - "@cosmos-kit/core": "^2.8.2", - "@cosmos-kit/walletconnect": "^2.5.2" + "@cosmos-kit/core": "^2.8.6", + "@cosmos-kit/walletconnect": "^2.5.6" }, "peerDependencies": { "@cosmjs/amino": ">=0.32.2", @@ -1438,22 +1419,22 @@ } }, "node_modules/@cosmos-kit/leap": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/leap/-/leap-2.6.2.tgz", - "integrity": "sha512-kkj0j52SF3p9My1/uNmZK0vHaJXcBFne8SavwKspYeMzS8TgkZCCuFgNusOq9Hfq70yQxTJ3l/TgwXLx0mq6TA==", + "version": "2.6.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/leap/-/leap-2.6.6.tgz", + "integrity": "sha512-y2yVg+MrU0VWLT/sI7Uj2oKdSbBWy/0PtnzeBFitct4xEdf6O/dqD4dxebUY1X0QxGADT0kM/NhK46rlw3qq1Q==", "dependencies": { - "@cosmos-kit/leap-extension": "^2.7.2", - "@cosmos-kit/leap-metamask-cosmos-snap": "^0.5.2", - "@cosmos-kit/leap-mobile": "^2.6.2" + "@cosmos-kit/leap-extension": "^2.7.6", + "@cosmos-kit/leap-metamask-cosmos-snap": "^0.5.6", + "@cosmos-kit/leap-mobile": "^2.6.6" } }, "node_modules/@cosmos-kit/leap-extension": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/leap-extension/-/leap-extension-2.7.2.tgz", - "integrity": "sha512-NL9KCJ+35WgGNRRzr3bmhWIoDQ9uRps3Fh9oDij39CUFm8BGY1bYanK2COBuwXSHbf71trKQc43E2hygGz5rwQ==", + "version": "2.7.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/leap-extension/-/leap-extension-2.7.6.tgz", + "integrity": "sha512-i7omOnvA/7UAe2f4xWCyqvH16Kpxqo7WSFgh0AyVjppnyveGZL84QBFWT+fjFYOileKhWTYcvaKOLfRTBCjZkg==", "dependencies": { "@chain-registry/keplr": "1.28.0", - "@cosmos-kit/core": "^2.8.2" + "@cosmos-kit/core": "^2.8.6" }, "peerDependencies": { "@cosmjs/amino": ">=0.32.2", @@ -1461,12 +1442,12 @@ } }, "node_modules/@cosmos-kit/leap-metamask-cosmos-snap": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/leap-metamask-cosmos-snap/-/leap-metamask-cosmos-snap-0.5.2.tgz", - "integrity": "sha512-n93mhNXTWss6Fcxk6uRapVs8Z26BRKnHGkxgjnfp0ExHpp9XAtFTwJ2PvYN3l1wHaPvcY1DyegTs8jTq0QUu/Q==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/leap-metamask-cosmos-snap/-/leap-metamask-cosmos-snap-0.5.6.tgz", + "integrity": "sha512-/+oYz5fbIe9067WxmLRJrgNBzJyINn3Y4OpNwOIeg/VKbrFuTiZV9DIroGip2PJhwZHFWSe4t/sAikHrU892mQ==", "dependencies": { "@chain-registry/keplr": "1.28.0", - "@cosmos-kit/core": "^2.8.2", + "@cosmos-kit/core": "^2.8.6", "@leapwallet/cosmos-snap-provider": "0.1.25", "@metamask/providers": "^11.1.1" }, @@ -1477,29 +1458,29 @@ } }, "node_modules/@cosmos-kit/leap-mobile": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/leap-mobile/-/leap-mobile-2.6.2.tgz", - "integrity": "sha512-+VVQerOqz+cUmw4Mqj/lD14ZRIj/Iad6a0ydocjpPiyt+yEbkmK+zqPO7F+AA2eReOoL2UJHHgHhPUKMwGrr1Q==", + "version": "2.6.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/leap-mobile/-/leap-mobile-2.6.6.tgz", + "integrity": "sha512-3YiuMOwO8IU4ZFzL/oAPSdwNrX0ngjP6j9CGbWqLDs9BlvphiQzeqC/v8aZzV7w+BXI0EU7/tJfp7dY0wJPrhA==", "dependencies": { "@chain-registry/keplr": "1.28.0", - "@cosmos-kit/core": "^2.8.2", - "@cosmos-kit/walletconnect": "^2.5.2" + "@cosmos-kit/core": "^2.8.6", + "@cosmos-kit/walletconnect": "^2.5.6" } }, "node_modules/@cosmos-kit/okxwallet": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/okxwallet/-/okxwallet-2.4.2.tgz", - "integrity": "sha512-Set161WC3t1LxeFLFwanF6Sm6+TC5fjG2rHFK/up3pWgjne8CJl4Z/DV8/bL5h66XuWly9irl5HdYOnhUxlqug==", + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/okxwallet/-/okxwallet-2.4.6.tgz", + "integrity": "sha512-UEqBNn9vui2jGkEWH4Ch4d6vZZmpIzs8p/V3Fbb9oBBbHRL1lpPfCF9CP+S1GOP3Fh18BBJi39YxsfoBUrMcWg==", "dependencies": { - "@cosmos-kit/okxwallet-extension": "^2.6.2" + "@cosmos-kit/okxwallet-extension": "^2.6.6" } }, "node_modules/@cosmos-kit/okxwallet-extension": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/okxwallet-extension/-/okxwallet-extension-2.6.2.tgz", - "integrity": "sha512-j88WL8DipzRG8Z4xO4D5a8PcAAvMZyMKLV6ffsxK4B6DIWK117T0IaLlLbtbj0pemj/rOTdOTO93Ne/wxYMlhw==", + "version": "2.6.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/okxwallet-extension/-/okxwallet-extension-2.6.6.tgz", + "integrity": "sha512-zAx0f7PeZ5z30RuyRPtaC3VHGZjdUnyVQpKEY6MV0xFi9BZiZ/2ULA7+EDpwi2JQdjGSk9Q32GUKXFjZyOnVAA==", "dependencies": { - "@cosmos-kit/core": "^2.8.2" + "@cosmos-kit/core": "^2.8.6" }, "peerDependencies": { "@cosmjs/amino": ">=0.32.2", @@ -1507,13 +1488,13 @@ } }, "node_modules/@cosmos-kit/react": { - "version": "2.10.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/react/-/react-2.10.2.tgz", - "integrity": "sha512-+/YCETixxhMc1P/cyKdNbqjgT728Nn7Y0aWqH7VbTGANS5NvCIlk82VPlXH7ybYRApBdsG8rJ1Sc/n3kAgdk4g==", + "version": "2.10.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/react/-/react-2.10.6.tgz", + "integrity": "sha512-Fkm+tu1fnq/EzvdtrWShu2AmX4XecoFxMWHHZ4qWjGXVIeVqcDKlLyq8ZNHLobuQc1lT7/YQrnRCFM3YQYMTPQ==", "dependencies": { "@chain-registry/types": "0.17.0", - "@cosmos-kit/core": "^2.8.2", - "@cosmos-kit/react-lite": "^2.6.2", + "@cosmos-kit/core": "^2.8.6", + "@cosmos-kit/react-lite": "^2.6.6", "@react-icons/all-files": "^4.1.0" }, "peerDependencies": { @@ -1523,12 +1504,12 @@ } }, "node_modules/@cosmos-kit/react-lite": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/react-lite/-/react-lite-2.6.2.tgz", - "integrity": "sha512-3BJ8ccSmy6DpLtk1uUHcpHmiJlmXGZdEThOUm46biNoBuzuFaaw78ybZVaa7N3HYmbLqnxGoCCCyPLkh+dttBg==", + "version": "2.6.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/react-lite/-/react-lite-2.6.6.tgz", + "integrity": "sha512-ISTgrs4m8/nX+IhiyKMbDdfVKtcZEiLCXUQHsWUR3JknFtbqiQnRgGpQYM2Gt89OoAtzSEukXvXNG00UeGq+zQ==", "dependencies": { "@chain-registry/types": "0.17.0", - "@cosmos-kit/core": "^2.8.2" + "@cosmos-kit/core": "^2.8.6" }, "peerDependencies": { "react": "^18", @@ -1536,20 +1517,20 @@ } }, "node_modules/@cosmos-kit/station": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/station/-/station-2.5.2.tgz", - "integrity": "sha512-IArKrULrsdNTCptbvszs7gIU6MAiaYrzaiMEVA+yds0Q0MePe3ANdqbCB5a1h+3de8nrII5GMr2nT+4iizDISQ==", + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/station/-/station-2.5.6.tgz", + "integrity": "sha512-uRN4E+xyWLQfLiteclbDvkXj6Bc3e6REUcFiTEo0uNabKswzspgscQZXHx+rS/jKyg108FX8X9XlpA/3q278fA==", "dependencies": { - "@cosmos-kit/station-extension": "^2.6.2" + "@cosmos-kit/station-extension": "^2.6.6" } }, "node_modules/@cosmos-kit/station-extension": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/station-extension/-/station-extension-2.6.2.tgz", - "integrity": "sha512-S/dJ8exY+3L+iXPI0Uypui0FbZdfL/OIO5Em5iG2w8YEPvnkQE+bWFhZrvPH1TusW9UTWEM0byUatFzwB9DB0w==", + "version": "2.6.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/station-extension/-/station-extension-2.6.6.tgz", + "integrity": "sha512-pcqtOIJx0ilVfqLjIlNy9TeQ/hZUc1JG1Dqom3tQ3+6TuvklXwRFHXU65S8erV2RLEQybmUtOfLj3rFgsCZF8g==", "dependencies": { "@chain-registry/types": "0.17.0", - "@cosmos-kit/core": "^2.8.2", + "@cosmos-kit/core": "^2.8.6", "@terra-money/feather.js": "^1.0.8", "@terra-money/station-connector": "^1.0.5", "@terra-money/wallet-types": "^3.11.2" @@ -1605,20 +1586,20 @@ } }, "node_modules/@cosmos-kit/vectis": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/vectis/-/vectis-2.6.2.tgz", - "integrity": "sha512-C8+ZKjTKAmBZ4apAlZ9NIJAGYX08tZhLnjJn/v8W8L12E451j9TtZKbzutSjIExpBez4mRuLy0hO8megpT7ClA==", + "version": "2.6.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/vectis/-/vectis-2.6.6.tgz", + "integrity": "sha512-C7wlSZVZPw0wHwHenaF7AQyjI3eZIvUkEJsYTLkPzIsOFUsBVfHkb5LOY5u1Rz7nEKq9a808F5Mh8h61LKXhkA==", "dependencies": { - "@cosmos-kit/vectis-extension": "^2.6.2" + "@cosmos-kit/vectis-extension": "^2.6.6" } }, "node_modules/@cosmos-kit/vectis-extension": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/vectis-extension/-/vectis-extension-2.6.2.tgz", - "integrity": "sha512-EFAVypRKLxpjLBCL5qBuYfZnTL+zZKVHmmijZezYN3xfAxqIloTjRMfJg7BevbzLoIFVDS2BSVa6sHlGffBXIw==", + "version": "2.6.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/vectis-extension/-/vectis-extension-2.6.6.tgz", + "integrity": "sha512-MCG23pSps0vSwSFE40wQo83zxl7bi5qxlLJUZPIQ6JdSXKItKtivHSigzIOV7v2znhOqnLbKJ3ID2SAAKQaoOg==", "dependencies": { "@chain-registry/keplr": "1.28.0", - "@cosmos-kit/core": "^2.8.2" + "@cosmos-kit/core": "^2.8.6" }, "peerDependencies": { "@cosmjs/amino": ">=0.32.2", @@ -1626,11 +1607,11 @@ } }, "node_modules/@cosmos-kit/walletconnect": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/walletconnect/-/walletconnect-2.5.2.tgz", - "integrity": "sha512-i0X2QOowGKfDHMmB92nqWjKXNlRnFeOKgeZPI6PFEbGkXFzN+KMScxCEcp97/3Hy+mG7YV+wsXtq1tbpmv5qsg==", + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/walletconnect/-/walletconnect-2.5.6.tgz", + "integrity": "sha512-bQpJFIR3TPIOMfeh7yPlF1DWElBi91zQDC9Huap8GhwF4kZyCLTPEvYltvlP7kiifOIZ94BE5mst1SH1ROAVfg==", "dependencies": { - "@cosmos-kit/core": "^2.8.2", + "@cosmos-kit/core": "^2.8.6", "@walletconnect/sign-client": "^2.9.0", "@walletconnect/utils": "^2.9.0", "events": "3.3.0" @@ -1642,19 +1623,19 @@ } }, "node_modules/@cosmos-kit/xdefi": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/xdefi/-/xdefi-2.5.2.tgz", - "integrity": "sha512-yC/lxPbFT55RYEJUPXmYfJCm75Na+RFUVVDkh4Pj2oF6RGzMRhxqTnuXp+KVyf1F/EtDzNrWkHoCdW8EzyMzEA==", + "version": "2.5.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/xdefi/-/xdefi-2.5.6.tgz", + "integrity": "sha512-MCBnxRdUSUtrER3wIWWrdr8b4k11tryj98R+oLJOjeBy1WLVo57vujKDHlDghe2MGv+0gRwTR+yueEivdoPt7g==", "dependencies": { - "@cosmos-kit/xdefi-extension": "^2.6.2" + "@cosmos-kit/xdefi-extension": "^2.6.6" } }, "node_modules/@cosmos-kit/xdefi-extension": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/@cosmos-kit/xdefi-extension/-/xdefi-extension-2.6.2.tgz", - "integrity": "sha512-nBRzorXV7M6Da/KHlD7PU/JrvOQldlJ/7gP3MhLU8KZVjEFaEH366383X8S0j1PbIfqdKHmk2miUWzytq6OoVw==", + "version": "2.6.6", + "resolved": "https://registry.npmjs.org/@cosmos-kit/xdefi-extension/-/xdefi-extension-2.6.6.tgz", + "integrity": "sha512-DhaXVC8QbGu0gE33ywVLGPzOOqGFcP9IKx3mLQwZxdKCr/ZYeGt7pcmXdfyIH0vHR4yF54kKjcwEijxCplS/Ug==", "dependencies": { - "@cosmos-kit/core": "^2.8.2" + "@cosmos-kit/core": "^2.8.6" }, "peerDependencies": { "@cosmjs/amino": ">=0.32.2", @@ -1683,9 +1664,9 @@ "integrity": "sha512-JRDFP6+Hczb1E0/HhIg0PONgBYasfGfDheujmfxaZaAv/NAH4jE6Kf48WbqfRZdxt4IZI3jl3Ri7sZ1nP09lgw==" }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.10.tgz", - "integrity": "sha512-Q+mk96KJ+FZ30h9fsJl+67IjNJm3x2eX+GBWGmocAKgzp27cowCOOqSdscX80s0SpdFXZnIv/+1xD1EctFx96Q==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.11.tgz", + "integrity": "sha512-FnzU0LyE3ySQk7UntJO4+qIiQgI7KoODnZg5xzXIrFJlKd2P2gwHsHY4927xj9y5PJmJSzULiUCWmv7iWnNa7g==", "cpu": [ "ppc64" ], @@ -1699,9 +1680,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.10.tgz", - "integrity": "sha512-7W0bK7qfkw1fc2viBfrtAEkDKHatYfHzr/jKAHNr9BvkYDXPcC6bodtm8AyLJNNuqClLNaeTLuwURt4PRT9d7w==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.11.tgz", + "integrity": "sha512-5OVapq0ClabvKvQ58Bws8+wkLCV+Rxg7tUVbo9xu034Nm536QTII4YzhaFriQ7rMrorfnFKUsArD2lqKbFY4vw==", "cpu": [ "arm" ], @@ -1715,9 +1696,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.10.tgz", - "integrity": "sha512-1X4CClKhDgC3by7k8aOWZeBXQX8dHT5QAMCAQDArCLaYfkppoARvh0fit3X2Qs+MXDngKcHv6XXyQCpY0hkK1Q==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.11.tgz", + "integrity": "sha512-aiu7K/5JnLj//KOnOfEZ0D90obUkRzDMyqd/wNAUQ34m4YUPVhRZpnqKV9uqDGxT7cToSDnIHsGooyIczu9T+Q==", "cpu": [ "arm64" ], @@ -1731,9 +1712,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.10.tgz", - "integrity": "sha512-O/nO/g+/7NlitUxETkUv/IvADKuZXyH4BHf/g/7laqKC4i/7whLpB0gvpPc2zpF0q9Q6FXS3TS75QHac9MvVWw==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.11.tgz", + "integrity": "sha512-eccxjlfGw43WYoY9QgB82SgGgDbibcqyDTlk3l3C0jOVHKxrjdc9CTwDUQd0vkvYg5um0OH+GpxYvp39r+IPOg==", "cpu": [ "x64" ], @@ -1747,9 +1728,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.10.tgz", - "integrity": "sha512-YSRRs2zOpwypck+6GL3wGXx2gNP7DXzetmo5pHXLrY/VIMsS59yKfjPizQ4lLt5vEI80M41gjm2BxrGZ5U+VMA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.11.tgz", + "integrity": "sha512-ETp87DRWuSt9KdDVkqSoKoLFHYTrkyz2+65fj9nfXsaV3bMhTCjtQfw3y+um88vGRKRiF7erPrh/ZuIdLUIVxQ==", "cpu": [ "arm64" ], @@ -1763,9 +1744,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.10.tgz", - "integrity": "sha512-alfGtT+IEICKtNE54hbvPg13xGBe4GkVxyGWtzr+yHO7HIiRJppPDhOKq3zstTcVf8msXb/t4eavW3jCDpMSmA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.11.tgz", + "integrity": "sha512-fkFUiS6IUK9WYUO/+22omwetaSNl5/A8giXvQlcinLIjVkxwTLSktbF5f/kJMftM2MJp9+fXqZ5ezS7+SALp4g==", "cpu": [ "x64" ], @@ -1779,9 +1760,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.10.tgz", - "integrity": "sha512-dMtk1wc7FSH8CCkE854GyGuNKCewlh+7heYP/sclpOG6Cectzk14qdUIY5CrKDbkA/OczXq9WesqnPl09mj5dg==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.11.tgz", + "integrity": "sha512-lhoSp5K6bxKRNdXUtHoNc5HhbXVCS8V0iZmDvyWvYq9S5WSfTIHU2UGjcGt7UeS6iEYp9eeymIl5mJBn0yiuxA==", "cpu": [ "arm64" ], @@ -1795,9 +1776,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.10.tgz", - "integrity": "sha512-G5UPPspryHu1T3uX8WiOEUa6q6OlQh6gNl4CO4Iw5PS+Kg5bVggVFehzXBJY6X6RSOMS8iXDv2330VzaObm4Ag==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.11.tgz", + "integrity": "sha512-JkUqn44AffGXitVI6/AbQdoYAq0TEullFdqcMY/PCUZ36xJ9ZJRtQabzMA+Vi7r78+25ZIBosLTOKnUXBSi1Kw==", "cpu": [ "x64" ], @@ -1811,9 +1792,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.10.tgz", - "integrity": "sha512-j6gUW5aAaPgD416Hk9FHxn27On28H4eVI9rJ4az7oCGTFW48+LcgNDBN+9f8rKZz7EEowo889CPKyeaD0iw9Kg==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.11.tgz", + "integrity": "sha512-3CRkr9+vCV2XJbjwgzjPtO8T0SZUmRZla+UL1jw+XqHZPkPgZiyWvbDvl9rqAN8Zl7qJF0O/9ycMtjU67HN9/Q==", "cpu": [ "arm" ], @@ -1827,9 +1808,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.10.tgz", - "integrity": "sha512-QxaouHWZ+2KWEj7cGJmvTIHVALfhpGxo3WLmlYfJ+dA5fJB6lDEIg+oe/0//FuyVHuS3l79/wyBxbHr0NgtxJQ==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.11.tgz", + "integrity": "sha512-LneLg3ypEeveBSMuoa0kwMpCGmpu8XQUh+mL8XXwoYZ6Be2qBnVtcDI5azSvh7vioMDhoJFZzp9GWp9IWpYoUg==", "cpu": [ "arm64" ], @@ -1843,9 +1824,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.10.tgz", - "integrity": "sha512-4ub1YwXxYjj9h1UIZs2hYbnTZBtenPw5NfXCRgEkGb0b6OJ2gpkMvDqRDYIDRjRdWSe/TBiZltm3Y3Q8SN1xNg==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.11.tgz", + "integrity": "sha512-caHy++CsD8Bgq2V5CodbJjFPEiDPq8JJmBdeyZ8GWVQMjRD0sU548nNdwPNvKjVpamYYVL40AORekgfIubwHoA==", "cpu": [ "ia32" ], @@ -1859,9 +1840,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.10.tgz", - "integrity": "sha512-lo3I9k+mbEKoxtoIbM0yC/MZ1i2wM0cIeOejlVdZ3D86LAcFXFRdeuZmh91QJvUTW51bOK5W2BznGNIl4+mDaA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.11.tgz", + "integrity": "sha512-ppZSSLVpPrwHccvC6nQVZaSHlFsvCQyjnvirnVjbKSHuE5N24Yl8F3UwYUUR1UEPaFObGD2tSvVKbvR+uT1Nrg==", "cpu": [ "loong64" ], @@ -1875,9 +1856,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.10.tgz", - "integrity": "sha512-J4gH3zhHNbdZN0Bcr1QUGVNkHTdpijgx5VMxeetSk6ntdt+vR1DqGmHxQYHRmNb77tP6GVvD+K0NyO4xjd7y4A==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.11.tgz", + "integrity": "sha512-B5x9j0OgjG+v1dF2DkH34lr+7Gmv0kzX6/V0afF41FkPMMqaQ77pH7CrhWeR22aEeHKaeZVtZ6yFwlxOKPVFyg==", "cpu": [ "mips64el" ], @@ -1891,9 +1872,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.10.tgz", - "integrity": "sha512-tgT/7u+QhV6ge8wFMzaklOY7KqiyitgT1AUHMApau32ZlvTB/+efeCtMk4eXS+uEymYK249JsoiklZN64xt6oQ==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.11.tgz", + "integrity": "sha512-MHrZYLeCG8vXblMetWyttkdVRjQlQUb/oMgBNurVEnhj4YWOr4G5lmBfZjHYQHHN0g6yDmCAQRR8MUHldvvRDA==", "cpu": [ "ppc64" ], @@ -1907,9 +1888,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.10.tgz", - "integrity": "sha512-0f/spw0PfBMZBNqtKe5FLzBDGo0SKZKvMl5PHYQr3+eiSscfJ96XEknCe+JoOayybWUFQbcJTrk946i3j9uYZA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.11.tgz", + "integrity": "sha512-f3DY++t94uVg141dozDu4CCUkYW+09rWtaWfnb3bqe4w5NqmZd6nPVBm+qbz7WaHZCoqXqHz5p6CM6qv3qnSSQ==", "cpu": [ "riscv64" ], @@ -1923,9 +1904,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.10.tgz", - "integrity": "sha512-pZFe0OeskMHzHa9U38g+z8Yx5FNCLFtUnJtQMpwhS+r4S566aK2ci3t4NCP4tjt6d5j5uo4h7tExZMjeKoehAA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.11.tgz", + "integrity": "sha512-A5xdUoyWJHMMlcSMcPGVLzYzpcY8QP1RtYzX5/bS4dvjBGVxdhuiYyFwp7z74ocV7WDc0n1harxmpq2ePOjI0Q==", "cpu": [ "s390x" ], @@ -1939,9 +1920,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.10.tgz", - "integrity": "sha512-SpYNEqg/6pZYoc+1zLCjVOYvxfZVZj6w0KROZ3Fje/QrM3nfvT2llI+wmKSrWuX6wmZeTapbarvuNNK/qepSgA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.11.tgz", + "integrity": "sha512-grbyMlVCvJSfxFQUndw5mCtWs5LO1gUlwP4CDi4iJBbVpZcqLVT29FxgGuBJGSzyOxotFG4LoO5X+M1350zmPA==", "cpu": [ "x64" ], @@ -1955,9 +1936,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.10.tgz", - "integrity": "sha512-ACbZ0vXy9zksNArWlk2c38NdKg25+L9pr/mVaj9SUq6lHZu/35nx2xnQVRGLrC1KKQqJKRIB0q8GspiHI3J80Q==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.11.tgz", + "integrity": "sha512-13jvrQZJc3P230OhU8xgwUnDeuC/9egsjTkXN49b3GcS5BKvJqZn86aGM8W9pd14Kd+u7HuFBMVtrNGhh6fHEQ==", "cpu": [ "x64" ], @@ -1971,9 +1952,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.10.tgz", - "integrity": "sha512-PxcgvjdSjtgPMiPQrM3pwSaG4kGphP+bLSb+cihuP0LYdZv1epbAIecHVl5sD3npkfYBZ0ZnOjR878I7MdJDFg==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.11.tgz", + "integrity": "sha512-ysyOGZuTp6SNKPE11INDUeFVVQFrhcNDVUgSQVDzqsqX38DjhPEPATpid04LCoUr2WXhQTEZ8ct/EgJCUDpyNw==", "cpu": [ "x64" ], @@ -1987,9 +1968,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.10.tgz", - "integrity": "sha512-ZkIOtrRL8SEJjr+VHjmW0znkPs+oJXhlJbNwfI37rvgeMtk3sxOQevXPXjmAPZPigVTncvFqLMd+uV0IBSEzqA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.11.tgz", + "integrity": "sha512-Hf+Sad9nVwvtxy4DXCZQqLpgmRTQqyFyhT3bZ4F2XlJCjxGmRFF0Shwn9rzhOYRB61w9VMXUkxlBy56dk9JJiQ==", "cpu": [ "x64" ], @@ -2003,9 +1984,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.10.tgz", - "integrity": "sha512-+Sa4oTDbpBfGpl3Hn3XiUe4f8TU2JF7aX8cOfqFYMMjXp6ma6NJDztl5FDG8Ezx0OjwGikIHw+iA54YLDNNVfw==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.11.tgz", + "integrity": "sha512-0P58Sbi0LctOMOQbpEOvOL44Ne0sqbS0XWHMvvrg6NE5jQ1xguCSSw9jQeUk2lfrXYsKDdOe6K+oZiwKPilYPQ==", "cpu": [ "arm64" ], @@ -2019,9 +2000,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.10.tgz", - "integrity": "sha512-EOGVLK1oWMBXgfttJdPHDTiivYSjX6jDNaATeNOaCOFEVcfMjtbx7WVQwPSE1eIfCp/CaSF2nSrDtzc4I9f8TQ==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.11.tgz", + "integrity": "sha512-6YOrWS+sDJDmshdBIQU+Uoyh7pQKrdykdefC1avn76ss5c+RN6gut3LZA4E2cH5xUEp5/cA0+YxRaVtRAb0xBg==", "cpu": [ "ia32" ], @@ -2035,9 +2016,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.10.tgz", - "integrity": "sha512-whqLG6Sc70AbU73fFYvuYzaE4MNMBIlR1Y/IrUeOXFrWHxBEjjbZaQ3IXIQS8wJdAzue2GwYZCjOrgrU1oUHoA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.11.tgz", + "integrity": "sha512-vfkhltrjCAb603XaFhqhAF4LGDi2M4OrCRrFusyQ+iTLQ/o60QQXxc9cZC/FFpihBI9N1Grn6SMKVJ4KP7Fuiw==", "cpu": [ "x64" ], @@ -2097,6 +2078,28 @@ "url": "https://opencollective.com/eslint" } }, + "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@eslint/eslintrc/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/@eslint/js": { "version": "8.56.0", "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", @@ -2817,30 +2820,30 @@ "peer": true }, "node_modules/@floating-ui/core": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.5.2.tgz", - "integrity": "sha512-Ii3MrfY/GAIN3OhXNzpCKaLxHQfJF9qvwq/kEJYdqDxeIHa01K8sldugal6TmeeXl+WMvhv9cnVzUTaFFJF09A==", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.5.3.tgz", + "integrity": "sha512-O0WKDOo0yhJuugCx6trZQj5jVJ9yR0ystG2JaNAemYUWce+pmM6WUEFIibnWyEJKdrDxhm75NoSRME35FNaM/Q==", "dependencies": { - "@floating-ui/utils": "^0.1.3" + "@floating-ui/utils": "^0.2.0" } }, "node_modules/@floating-ui/dom": { - "version": "1.5.3", - "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.3.tgz", - "integrity": "sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.5.4.tgz", + "integrity": "sha512-jByEsHIY+eEdCjnTVu+E3ephzTOzkQ8hgUfGwos+bg7NlH33Zc5uO+QHz1mrQUOgIKKDD1RtS201P9NvAfq3XQ==", "dependencies": { - "@floating-ui/core": "^1.4.2", - "@floating-ui/utils": "^0.1.3" + "@floating-ui/core": "^1.5.3", + "@floating-ui/utils": "^0.2.0" } }, "node_modules/@floating-ui/react": { - "version": "0.26.4", - "resolved": "https://registry.npmjs.org/@floating-ui/react/-/react-0.26.4.tgz", - "integrity": "sha512-pRiEz+SiPyfTcckAtLkEf3KJ/sUbB4X4fWMcDm27HT2kfAq+dH+hMc2VoOkNaGpDE35a2PKo688ugWeHaToL3g==", + "version": "0.26.6", + "resolved": "https://registry.npmjs.org/@floating-ui/react/-/react-0.26.6.tgz", + "integrity": "sha512-FFDAuSlRwb8CY4/VvYio/wwk/0339B257yRpKwNOjcHWNYL/fgjl1KUvT3K6ZZ4WDbBWYc7Km4ITMuPZrS8omg==", "peer": true, "dependencies": { - "@floating-ui/react-dom": "^2.0.3", - "@floating-ui/utils": "^0.1.5", + "@floating-ui/react-dom": "^2.0.6", + "@floating-ui/utils": "^0.2.1", "tabbable": "^6.0.1" }, "peerDependencies": { @@ -2849,11 +2852,11 @@ } }, "node_modules/@floating-ui/react-dom": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.0.4.tgz", - "integrity": "sha512-CF8k2rgKeh/49UrnIBs4BdxPUV6vize/Db1d/YbCLyp9GiVZ0BEwf5AiDSxJRCr6yOkGqTFHtmrULxkEfYZ7dQ==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.0.6.tgz", + "integrity": "sha512-IB8aCRFxr8nFkdYZgH+Otd9EVQPJoynxeFRGTB8voPoZMRWo8XjYuCRgpI1btvuKY69XMiLnW+ym7zoBHM90Rw==", "dependencies": { - "@floating-ui/dom": "^1.5.1" + "@floating-ui/dom": "^1.5.4" }, "peerDependencies": { "react": ">=16.8.0", @@ -2861,9 +2864,9 @@ } }, "node_modules/@floating-ui/utils": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.1.6.tgz", - "integrity": "sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A==" + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.1.tgz", + "integrity": "sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q==" }, "node_modules/@fontsource/jost": { "version": "5.0.16", @@ -2871,12 +2874,12 @@ "integrity": "sha512-3eyBs4pMxRnrLhTPrhSgeeRP3B9XC1b8NXhI7VPzUuvDoqviqdUl7nOpih0dwDGkS+hUCVD35LWMNp0uSyNHDQ==" }, "node_modules/@formatjs/ecma402-abstract": { - "version": "1.18.0", - "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.18.0.tgz", - "integrity": "sha512-PEVLoa3zBevWSCZzPIM/lvPCi8P5l4G+NXQMc/CjEiaCWgyHieUoo0nM7Bs0n/NbuQ6JpXEolivQ9pKSBHaDlA==", + "version": "1.18.2", + "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.18.2.tgz", + "integrity": "sha512-+QoPW4csYALsQIl8GbN14igZzDbuwzcpWrku9nyMXlaqAlwRBgl5V+p0vWMGFqHOw37czNXaP/lEk4wbLgcmtA==", "peer": true, "dependencies": { - "@formatjs/intl-localematcher": "0.5.2", + "@formatjs/intl-localematcher": "0.5.4", "tslib": "^2.4.0" } }, @@ -2890,30 +2893,30 @@ } }, "node_modules/@formatjs/icu-messageformat-parser": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.7.3.tgz", - "integrity": "sha512-X/jy10V9S/vW+qlplqhMUxR8wErQ0mmIYSq4mrjpjDl9mbuGcCILcI1SUYkL5nlM4PJqpc0KOS0bFkkJNPxYRw==", + "version": "2.7.5", + "resolved": "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.7.5.tgz", + "integrity": "sha512-zCB53HdGDibh6/2ISEN3TGsFQruQ6gGKMFV94qHNyVrs0tNO6ncKhV0vq0n3Ydz8ipIQ2GaYAvfCoimNOVvKqA==", "peer": true, "dependencies": { - "@formatjs/ecma402-abstract": "1.18.0", - "@formatjs/icu-skeleton-parser": "1.7.0", + "@formatjs/ecma402-abstract": "1.18.2", + "@formatjs/icu-skeleton-parser": "1.7.2", "tslib": "^2.4.0" } }, "node_modules/@formatjs/icu-skeleton-parser": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.7.0.tgz", - "integrity": "sha512-Cfdo/fgbZzpN/jlN/ptQVe0lRHora+8ezrEeg2RfrNjyp+YStwBy7cqDY8k5/z2LzXg6O0AdzAV91XS0zIWv+A==", + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.7.2.tgz", + "integrity": "sha512-nlIXVv280bjGW3ail5Np1+xgGKBnMhwQQIivgbk9xX0af8ESQO+y2VW9TOY7mCrs3WH786uVpZlLimXAlXH7SA==", "peer": true, "dependencies": { - "@formatjs/ecma402-abstract": "1.18.0", + "@formatjs/ecma402-abstract": "1.18.2", "tslib": "^2.4.0" } }, "node_modules/@formatjs/intl-localematcher": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.5.2.tgz", - "integrity": "sha512-txaaE2fiBMagLrR4jYhxzFO6wEdEG4TPMqrzBAcbr4HFUYzH/YC+lg6OIzKCHm8WgDdyQevxbAAV1OgcXctuGw==", + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.5.4.tgz", + "integrity": "sha512-zTwEpWOzZ2CiKcB93BLngUX59hQkuZjT2+SAQEscSm52peDW/getsawMcWF1rGRpMCX6D7nSJA3CzJ8gn13N/g==", "peer": true, "dependencies": { "tslib": "^2.4.0" @@ -2950,22 +2953,6 @@ } } }, - "node_modules/@headlessui/react": { - "version": "1.7.18", - "resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.18.tgz", - "integrity": "sha512-4i5DOrzwN4qSgNsL4Si61VMkUcWbcSKueUV7sFhpHzQcSShdlHENE5+QBntMSRvHt8NyoFO2AGG8si9lq+w4zQ==", - "dependencies": { - "@tanstack/react-virtual": "^3.0.0-beta.60", - "client-only": "^0.0.1" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "react": "^16 || ^17 || ^18", - "react-dom": "^16 || ^17 || ^18" - } - }, "node_modules/@heroicons/react": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/@heroicons/react/-/react-2.1.1.tgz", @@ -2975,19 +2962,41 @@ } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.13", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", - "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", + "version": "0.11.14", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", + "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", "dev": true, "dependencies": { - "@humanwhocodes/object-schema": "^2.0.1", - "debug": "^4.1.1", + "@humanwhocodes/object-schema": "^2.0.2", + "debug": "^4.3.1", "minimatch": "^3.0.5" }, "engines": { "node": ">=10.10.0" } }, + "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@humanwhocodes/config-array/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/@humanwhocodes/module-importer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", @@ -3002,15 +3011,15 @@ } }, "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", - "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.2.tgz", + "integrity": "sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==", "dev": true }, "node_modules/@improbable-eng/grpc-web": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/@improbable-eng/grpc-web/-/grpc-web-0.15.0.tgz", - "integrity": "sha512-ERft9/0/8CmYalqOVnJnpdDry28q+j+nAlFFARdjyxXDJ+Mhgv9+F600QC8BR9ygOfrXRlAk6CvST2j+JCpQPg==", + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/@improbable-eng/grpc-web/-/grpc-web-0.14.1.tgz", + "integrity": "sha512-XaIYuunepPxoiGVLLHmlnVminUGzBTnXr8Wv7khzmLWbNw4TCwJKX09GSMJlKhu/TRk6gms0ySFxewaETSBqgw==", "dependencies": { "browser-headers": "^0.4.1" }, @@ -3018,60 +3027,10 @@ "google-protobuf": "^3.14.0" } }, - "node_modules/@initia/initia.proto": { - "version": "0.1.23", - "resolved": "https://registry.npmjs.org/@initia/initia.proto/-/initia.proto-0.1.23.tgz", - "integrity": "sha512-g82tTHlaEmNMhcH3Fq619qndgfj0fP0WF6vVJw3UltqEmMwNbgotX4YWDE8f5wYcEr6Z+NC5B6Y676Ozt9gylw==", - "dependencies": { - "@improbable-eng/grpc-web": "^0.15.0", - "google-protobuf": "^3.21.0", - "long": "^5.2.3", - "protobufjs": "^7.1.1" - } - }, - "node_modules/@initia/initia.proto/node_modules/long": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/long/-/long-5.2.3.tgz", - "integrity": "sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q==" - }, - "node_modules/@initia/initia.proto/node_modules/protobufjs": { - "version": "7.2.6", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.2.6.tgz", - "integrity": "sha512-dgJaEDDL6x8ASUZ1YqWciTRrdOuYNzoOf27oHNfdyvKqHr5i0FV7FSLU+aIeFjyFgVxrpTOtQUi0BLLBymZaBw==", - "hasInstallScript": true, - "dependencies": { - "@protobufjs/aspromise": "^1.1.2", - "@protobufjs/base64": "^1.1.2", - "@protobufjs/codegen": "^2.0.4", - "@protobufjs/eventemitter": "^1.1.0", - "@protobufjs/fetch": "^1.1.0", - "@protobufjs/float": "^1.0.2", - "@protobufjs/inquire": "^1.1.0", - "@protobufjs/path": "^1.1.2", - "@protobufjs/pool": "^1.1.0", - "@protobufjs/utf8": "^1.1.0", - "@types/node": ">=13.7.0", - "long": "^5.0.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@initia/shared": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/@initia/shared/-/shared-0.6.0.tgz", - "integrity": "sha512-qU4VDt6u14heaMA+YuUBFatLkMs9/F1kGs2ddhLxkFIBV/Nu1+s2Nz4EEf5+5UpLtEs3EwSLMzTCUuLNH2jrPQ==", - "peerDependencies": { - "@cosmjs/proto-signing": "^0.31.1", - "@cosmjs/stargate": "^0.31.1", - "@initia/initia.proto": "*", - "zod": "^3.22.4" - } - }, "node_modules/@injectivelabs/core-proto-ts": { - "version": "0.0.18", - "resolved": "https://registry.npmjs.org/@injectivelabs/core-proto-ts/-/core-proto-ts-0.0.18.tgz", - "integrity": "sha512-WSZS7SQ+I/m8jdc7fhzkMTUhA7i5nVTeKbN6QGqKmOwQ/F+PqM75vDHD9Y9NbLPx9P+m7hyUzSHz4zmajth5jw==", + "version": "0.0.21", + "resolved": "https://registry.npmjs.org/@injectivelabs/core-proto-ts/-/core-proto-ts-0.0.21.tgz", + "integrity": "sha512-RBxSkRBCty60R/l55/D1jsSW0Aof5dyGFhCFdN3A010KjMv/SzZGGr+6DZPY/hflyFeaJzDv/VTopCymKNRBvQ==", "dependencies": { "@injectivelabs/grpc-web": "^0.0.1", "google-protobuf": "^3.14.0", @@ -3322,17 +3281,6 @@ "snakecase-keys": "^5.4.1" } }, - "node_modules/@injectivelabs/sdk-ts/node_modules/@injectivelabs/core-proto-ts": { - "version": "0.0.21", - "resolved": "https://registry.npmjs.org/@injectivelabs/core-proto-ts/-/core-proto-ts-0.0.21.tgz", - "integrity": "sha512-RBxSkRBCty60R/l55/D1jsSW0Aof5dyGFhCFdN3A010KjMv/SzZGGr+6DZPY/hflyFeaJzDv/VTopCymKNRBvQ==", - "dependencies": { - "@injectivelabs/grpc-web": "^0.0.1", - "google-protobuf": "^3.14.0", - "protobufjs": "^7.0.0", - "rxjs": "^7.4.0" - } - }, "node_modules/@injectivelabs/sdk-ts/node_modules/axios": { "version": "0.27.2", "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", @@ -3407,34 +3355,6 @@ "node": ">= 6" } }, - "node_modules/@injectivelabs/sdk-ts/node_modules/long": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/long/-/long-5.2.3.tgz", - "integrity": "sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q==" - }, - "node_modules/@injectivelabs/sdk-ts/node_modules/protobufjs": { - "version": "7.2.6", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.2.6.tgz", - "integrity": "sha512-dgJaEDDL6x8ASUZ1YqWciTRrdOuYNzoOf27oHNfdyvKqHr5i0FV7FSLU+aIeFjyFgVxrpTOtQUi0BLLBymZaBw==", - "hasInstallScript": true, - "dependencies": { - "@protobufjs/aspromise": "^1.1.2", - "@protobufjs/base64": "^1.1.2", - "@protobufjs/codegen": "^2.0.4", - "@protobufjs/eventemitter": "^1.1.0", - "@protobufjs/fetch": "^1.1.0", - "@protobufjs/float": "^1.0.2", - "@protobufjs/inquire": "^1.1.0", - "@protobufjs/path": "^1.1.2", - "@protobufjs/pool": "^1.1.0", - "@protobufjs/utf8": "^1.1.0", - "@types/node": ">=13.7.0", - "long": "^5.0.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, "node_modules/@injectivelabs/test-utils": { "version": "1.14.3", "resolved": "https://registry.npmjs.org/@injectivelabs/test-utils/-/test-utils-1.14.3.tgz", @@ -3512,14 +3432,14 @@ } }, "node_modules/@interchain-ui/react": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/@interchain-ui/react/-/react-1.17.1.tgz", - "integrity": "sha512-CH6AH8zvbvq06a6J8Dcwr4L5pEBWBMz/76JQ/JsEEvX/ankgJd9qIFHEvcHYmnc4cfzzS2TKsas1BLdIKaOO/g==", + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/@interchain-ui/react/-/react-1.21.0.tgz", + "integrity": "sha512-2vO3OD0oj8436vcrBNrUnuQ3ABFtBPm0hE7I6HytC/gv7bDlTPEm+PwVZy3UfhdyG7dQ0jD6arRQk/ZcFSnaXQ==", "peer": true, "dependencies": { "@fastify/deepmerge": "^1.3.0", - "@floating-ui/dom": "^1.5.2", - "@floating-ui/react": "^0.26.0", + "@floating-ui/dom": "^1.5.3", + "@floating-ui/react": "^0.26.4", "@formkit/auto-animate": "^0.8.1", "@react-aria/utils": "^3.21.1", "@vanilla-extract/css": "^1.14.0", @@ -3532,10 +3452,10 @@ "copy-to-clipboard": "^3.3.3", "immer": "^9.0.19", "lodash": "^4.17.21", - "rainbow-sprinkles": "^0.17.0", + "rainbow-sprinkles": "^0.17.1", "react-aria": "^3.29.1", "react-stately": "^3.27.1", - "zustand": "4.4.6" + "zustand": "^4.4.7" }, "peerDependencies": { "react": "^18.x", @@ -3551,38 +3471,10 @@ "node": ">=6" } }, - "node_modules/@interchain-ui/react/node_modules/zustand": { - "version": "4.4.6", - "resolved": "https://registry.npmjs.org/zustand/-/zustand-4.4.6.tgz", - "integrity": "sha512-Rb16eW55gqL4W2XZpJh0fnrATxYEG3Apl2gfHTyDSE965x/zxslTikpNch0JgNjJA9zK6gEFW8Fl6d1rTZaqgg==", - "peer": true, - "dependencies": { - "use-sync-external-store": "1.2.0" - }, - "engines": { - "node": ">=12.7.0" - }, - "peerDependencies": { - "@types/react": ">=16.8", - "immer": ">=9.0", - "react": ">=16.8" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - }, - "immer": { - "optional": true - }, - "react": { - "optional": true - } - } - }, "node_modules/@internationalized/date": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@internationalized/date/-/date-3.5.0.tgz", - "integrity": "sha512-nw0Q+oRkizBWMioseI8+2TeUPEyopJVz5YxoYVzR0W1v+2YytiYah7s/ot35F149q/xAg4F1gT/6eTd+tsUpFQ==", + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/@internationalized/date/-/date-3.5.1.tgz", + "integrity": "sha512-LUQIfwU9e+Fmutc/DpRTGXSdgYZLBegi4wygCWDSVmUdLTaMHsQyASDiJtREwanwKuQLq0hY76fCJ9J/9I2xOQ==", "peer": true, "dependencies": { "@swc/helpers": "^0.5.0" @@ -3599,18 +3491,18 @@ } }, "node_modules/@internationalized/number": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/@internationalized/number/-/number-3.4.0.tgz", - "integrity": "sha512-8TvotW3qVDHC4uv/BVoN6Qx0Dm8clHY1/vpH+dh+XRiPW/9NVpKn1P8d1A+WLphWrMwyqyWXI7uWehJPviaeIw==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@internationalized/number/-/number-3.5.0.tgz", + "integrity": "sha512-ZY1BW8HT9WKYvaubbuqXbbDdHhOUMfE2zHHFJeTppid0S+pc8HtdIxFxaYMsGjCb4UsF+MEJ4n2TfU7iHnUK8w==", "peer": true, "dependencies": { "@swc/helpers": "^0.5.0" } }, "node_modules/@internationalized/string": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@internationalized/string/-/string-3.1.1.tgz", - "integrity": "sha512-fvSr6YRoVPgONiVIUhgCmIAlifMVCeej/snPZVzbzRPxGpHl3o1GRe+d/qh92D8KhgOciruDUH8I5mjdfdjzfA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@internationalized/string/-/string-3.2.0.tgz", + "integrity": "sha512-Xx3Sy3f2c9ctT+vh8c7euEaEHQZltp0euZ3Hy4UfT3E13r6lxpUS3kgKyumEjboJZSnaZv7JhqWz3D75v+IxQg==", "peer": true, "dependencies": { "@swc/helpers": "^0.5.0" @@ -3659,11 +3551,6 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@isaacs/cliui/node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" - }, "node_modules/@isaacs/cliui/node_modules/string-width": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", @@ -4079,6 +3966,16 @@ } } }, + "node_modules/@jest/reporters/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/@jest/reporters/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -4115,13 +4012,25 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@jest/reporters/node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "node_modules/@jest/reporters/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, - "engines": { - "node": ">=8" + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@jest/reporters/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" } }, "node_modules/@jest/schemas": { @@ -4308,9 +4217,9 @@ "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.20", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz", - "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==", + "version": "0.3.22", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.22.tgz", + "integrity": "sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw==", "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" @@ -4392,9 +4301,9 @@ "integrity": "sha512-T2CiKS2B5n0ZA7CWw0CA6qIAH0XYI1siE50MP+i+V0ZniCGBeL+BMcDw64vFJUcEH+1L5X4sDAzV37fQxGwllA==" }, "node_modules/@keplr-wallet/types": { - "version": "0.12.62", - "resolved": "https://registry.npmjs.org/@keplr-wallet/types/-/types-0.12.62.tgz", - "integrity": "sha512-IM6Z5wxYyHUIOiFx3Jc48JmFfYMJTLvFqBpKlsYv+Zozpp99R+qSySzj3BOSi1wUmW3VoIKHLaGFGjIu4iDCzw==", + "version": "0.12.63", + "resolved": "https://registry.npmjs.org/@keplr-wallet/types/-/types-0.12.63.tgz", + "integrity": "sha512-pN1+cVi5tjIjFjRS2jqUS2eoAHIApACGpJlXkrrzfQyxa6qO5W7B2sqQ9XGzpCoWl70VzpGm0Xlsj3lbBcaTKw==", "dependencies": { "long": "^4.0.0" } @@ -4494,11 +4403,11 @@ "integrity": "sha512-jnOD+/+dSrfTWYfSXBXlo5l5f0q1UuJo3tkbMDCYA2lKUYq79jaxqtGEvnRoh049nt1vdo1+45RinipU6FGY2g==" }, "node_modules/@lit/reactive-element": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-2.0.3.tgz", - "integrity": "sha512-e067EuTNNgOHm1tZcc0Ia7TCzD/9ZpoPegHKgesrGK6pSDRGkGDAQbYuQclqLPIoJ9eC8Kb9mYtGryWcM5AywA==", + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-1.6.3.tgz", + "integrity": "sha512-QuTgnG52Poic7uM1AN5yJ09QMe0O28e10XzSvWDz02TJiiKee4stsiownEIadWm8nYzyDAyT+gKzUoZmiWQtsQ==", "dependencies": { - "@lit-labs/ssr-dom-shim": "^1.1.2" + "@lit-labs/ssr-dom-shim": "^1.0.0" } }, "node_modules/@metamask/eth-sig-util": { @@ -4608,45 +4517,45 @@ } }, "node_modules/@motionone/animation": { - "version": "10.16.3", - "resolved": "https://registry.npmjs.org/@motionone/animation/-/animation-10.16.3.tgz", - "integrity": "sha512-QUGWpLbMFLhyqKlngjZhjtxM8IqiJQjLK0DF+XOF6od9nhSvlaeEpOY/UMCRVcZn/9Tr2rZO22EkuCIjYdI74g==", + "version": "10.17.0", + "resolved": "https://registry.npmjs.org/@motionone/animation/-/animation-10.17.0.tgz", + "integrity": "sha512-ANfIN9+iq1kGgsZxs+Nz96uiNcPLGTXwfNo2Xz/fcJXniPYpaz/Uyrfa+7I5BPLxCP82sh7quVDudf1GABqHbg==", "dependencies": { - "@motionone/easing": "^10.16.3", - "@motionone/types": "^10.16.3", - "@motionone/utils": "^10.16.3", + "@motionone/easing": "^10.17.0", + "@motionone/types": "^10.17.0", + "@motionone/utils": "^10.17.0", "tslib": "^2.3.1" } }, "node_modules/@motionone/dom": { - "version": "10.16.4", - "resolved": "https://registry.npmjs.org/@motionone/dom/-/dom-10.16.4.tgz", - "integrity": "sha512-HPHlVo/030qpRj9R8fgY50KTN4Ko30moWRTA3L3imrsRBmob93cTYmodln49HYFbQm01lFF7X523OkKY0DX6UA==", - "dependencies": { - "@motionone/animation": "^10.16.3", - "@motionone/generators": "^10.16.4", - "@motionone/types": "^10.16.3", - "@motionone/utils": "^10.16.3", + "version": "10.17.0", + "resolved": "https://registry.npmjs.org/@motionone/dom/-/dom-10.17.0.tgz", + "integrity": "sha512-cMm33swRlCX/qOPHWGbIlCl0K9Uwi6X5RiL8Ma6OrlJ/TP7Q+Np5GE4xcZkFptysFjMTi4zcZzpnNQGQ5D6M0Q==", + "dependencies": { + "@motionone/animation": "^10.17.0", + "@motionone/generators": "^10.17.0", + "@motionone/types": "^10.17.0", + "@motionone/utils": "^10.17.0", "hey-listen": "^1.0.8", "tslib": "^2.3.1" } }, "node_modules/@motionone/easing": { - "version": "10.16.3", - "resolved": "https://registry.npmjs.org/@motionone/easing/-/easing-10.16.3.tgz", - "integrity": "sha512-HWTMZbTmZojzwEuKT/xCdvoMPXjYSyQvuVM6jmM0yoGU6BWzsmYMeB4bn38UFf618fJCNtP9XeC/zxtKWfbr0w==", + "version": "10.17.0", + "resolved": "https://registry.npmjs.org/@motionone/easing/-/easing-10.17.0.tgz", + "integrity": "sha512-Bxe2wSuLu/qxqW4rBFS5m9tMLOw+QBh8v5A7Z5k4Ul4sTj5jAOfZG5R0bn5ywmk+Fs92Ij1feZ5pmC4TeXA8Tg==", "dependencies": { - "@motionone/utils": "^10.16.3", + "@motionone/utils": "^10.17.0", "tslib": "^2.3.1" } }, "node_modules/@motionone/generators": { - "version": "10.16.4", - "resolved": "https://registry.npmjs.org/@motionone/generators/-/generators-10.16.4.tgz", - "integrity": "sha512-geFZ3w0Rm0ZXXpctWsSf3REGywmLLujEjxPYpBR0j+ymYwof0xbV6S5kGqqsDKgyWKVWpUInqQYvQfL6fRbXeg==", + "version": "10.17.0", + "resolved": "https://registry.npmjs.org/@motionone/generators/-/generators-10.17.0.tgz", + "integrity": "sha512-T6Uo5bDHrZWhIfxG/2Aut7qyWQyJIWehk6OB4qNvr/jwA/SRmixwbd7SOrxZi1z5rH3LIeFFBKK1xHnSbGPZSQ==", "dependencies": { - "@motionone/types": "^10.16.3", - "@motionone/utils": "^10.16.3", + "@motionone/types": "^10.17.0", + "@motionone/utils": "^10.17.0", "tslib": "^2.3.1" } }, @@ -4660,16 +4569,16 @@ } }, "node_modules/@motionone/types": { - "version": "10.16.3", - "resolved": "https://registry.npmjs.org/@motionone/types/-/types-10.16.3.tgz", - "integrity": "sha512-W4jkEGFifDq73DlaZs3HUfamV2t1wM35zN/zX7Q79LfZ2sc6C0R1baUHZmqc/K5F3vSw3PavgQ6HyHLd/MXcWg==" + "version": "10.17.0", + "resolved": "https://registry.npmjs.org/@motionone/types/-/types-10.17.0.tgz", + "integrity": "sha512-EgeeqOZVdRUTEHq95Z3t8Rsirc7chN5xFAPMYFobx8TPubkEfRSm5xihmMUkbaR2ErKJTUw3347QDPTHIW12IA==" }, "node_modules/@motionone/utils": { - "version": "10.16.3", - "resolved": "https://registry.npmjs.org/@motionone/utils/-/utils-10.16.3.tgz", - "integrity": "sha512-WNWDksJIxQkaI9p9Z9z0+K27xdqISGNFy1SsWVGaiedTHq0iaT6iZujby8fT/ZnZxj1EOaxJtSfUPCFNU5CRoA==", + "version": "10.17.0", + "resolved": "https://registry.npmjs.org/@motionone/utils/-/utils-10.17.0.tgz", + "integrity": "sha512-bGwrki4896apMWIj9yp5rAS2m0xyhxblg6gTB/leWDPt+pb410W8lYWsxyurX+DH+gO1zsQsfx2su/c1/LtTpg==", "dependencies": { - "@motionone/types": "^10.16.3", + "@motionone/types": "^10.17.0", "hey-listen": "^1.0.8", "tslib": "^2.3.1" } @@ -4678,6 +4587,7 @@ "version": "10.16.4", "resolved": "https://registry.npmjs.org/@motionone/vue/-/vue-10.16.4.tgz", "integrity": "sha512-z10PF9JV6SbjFq+/rYabM+8CVlMokgl8RFGvieSGNTmrkQanfHn+15XBrhG3BgUfvmTeSeyShfOHpG0i9zEdcg==", + "deprecated": "Motion One for Vue is deprecated. Use Oku Motion instead https://oku-ui.com/motion", "dependencies": { "@motionone/dom": "^10.16.4", "tslib": "^2.3.1" @@ -4738,15 +4648,6 @@ "glob": "10.3.10" } }, - "node_modules/@next/eslint-plugin-next/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, "node_modules/@next/eslint-plugin-next/node_modules/glob": { "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", @@ -4769,21 +4670,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@next/eslint-plugin-next/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/@next/swc-darwin-arm64": { "version": "14.1.0", "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.0.tgz", @@ -4985,9 +4871,9 @@ "dev": true }, "node_modules/@parcel/watcher": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.3.0.tgz", - "integrity": "sha512-pW7QaFiL11O0BphO+bq3MgqeX/INAk9jgBldVDYjlQPO4VddoZnF22TcF9onMhnLVHuNqBJeRf+Fj7eezi/+rQ==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.4.0.tgz", + "integrity": "sha512-XJLGVL0DEclX5pcWa2N9SX1jCGTDd8l972biNooLFtjneuGqodupPQh6XseXIBBeVIMaaJ7bTcs3qGvXwsp4vg==", "hasInstallScript": true, "dependencies": { "detect-libc": "^1.0.3", @@ -5003,24 +4889,24 @@ "url": "https://opencollective.com/parcel" }, "optionalDependencies": { - "@parcel/watcher-android-arm64": "2.3.0", - "@parcel/watcher-darwin-arm64": "2.3.0", - "@parcel/watcher-darwin-x64": "2.3.0", - "@parcel/watcher-freebsd-x64": "2.3.0", - "@parcel/watcher-linux-arm-glibc": "2.3.0", - "@parcel/watcher-linux-arm64-glibc": "2.3.0", - "@parcel/watcher-linux-arm64-musl": "2.3.0", - "@parcel/watcher-linux-x64-glibc": "2.3.0", - "@parcel/watcher-linux-x64-musl": "2.3.0", - "@parcel/watcher-win32-arm64": "2.3.0", - "@parcel/watcher-win32-ia32": "2.3.0", - "@parcel/watcher-win32-x64": "2.3.0" + "@parcel/watcher-android-arm64": "2.4.0", + "@parcel/watcher-darwin-arm64": "2.4.0", + "@parcel/watcher-darwin-x64": "2.4.0", + "@parcel/watcher-freebsd-x64": "2.4.0", + "@parcel/watcher-linux-arm-glibc": "2.4.0", + "@parcel/watcher-linux-arm64-glibc": "2.4.0", + "@parcel/watcher-linux-arm64-musl": "2.4.0", + "@parcel/watcher-linux-x64-glibc": "2.4.0", + "@parcel/watcher-linux-x64-musl": "2.4.0", + "@parcel/watcher-win32-arm64": "2.4.0", + "@parcel/watcher-win32-ia32": "2.4.0", + "@parcel/watcher-win32-x64": "2.4.0" } }, "node_modules/@parcel/watcher-android-arm64": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.3.0.tgz", - "integrity": "sha512-f4o9eA3dgk0XRT3XhB0UWpWpLnKgrh1IwNJKJ7UJek7eTYccQ8LR7XUWFKqw6aEq5KUNlCcGvSzKqSX/vtWVVA==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.4.0.tgz", + "integrity": "sha512-+fPtO/GsbYX1LJnCYCaDVT3EOBjvSFdQN9Mrzh9zWAOOfvidPWyScTrHIZHHfJBvlHzNA0Gy0U3NXFA/M7PHUA==", "cpu": [ "arm64" ], @@ -5037,9 +4923,9 @@ } }, "node_modules/@parcel/watcher-darwin-arm64": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.3.0.tgz", - "integrity": "sha512-mKY+oijI4ahBMc/GygVGvEdOq0L4DxhYgwQqYAz/7yPzuGi79oXrZG52WdpGA1wLBPrYb0T8uBaGFo7I6rvSKw==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.4.0.tgz", + "integrity": "sha512-T/At5pansFuQ8VJLRx0C6C87cgfqIYhW2N/kBfLCUvDhCah0EnLLwaD/6MW3ux+rpgkpQAnMELOCTKlbwncwiA==", "cpu": [ "arm64" ], @@ -5056,9 +4942,9 @@ } }, "node_modules/@parcel/watcher-darwin-x64": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.3.0.tgz", - "integrity": "sha512-20oBj8LcEOnLE3mgpy6zuOq8AplPu9NcSSSfyVKgfOhNAc4eF4ob3ldj0xWjGGbOF7Dcy1Tvm6ytvgdjlfUeow==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.4.0.tgz", + "integrity": "sha512-vZMv9jl+szz5YLsSqEGCMSllBl1gU1snfbRL5ysJU03MEa6gkVy9OMcvXV1j4g0++jHEcvzhs3Z3LpeEbVmY6Q==", "cpu": [ "x64" ], @@ -5075,9 +4961,9 @@ } }, "node_modules/@parcel/watcher-freebsd-x64": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.3.0.tgz", - "integrity": "sha512-7LftKlaHunueAEiojhCn+Ef2CTXWsLgTl4hq0pkhkTBFI3ssj2bJXmH2L67mKpiAD5dz66JYk4zS66qzdnIOgw==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.4.0.tgz", + "integrity": "sha512-dHTRMIplPDT1M0+BkXjtMN+qLtqq24sLDUhmU+UxxLP2TEY2k8GIoqIJiVrGWGomdWsy5IO27aDV1vWyQ6gfHA==", "cpu": [ "x64" ], @@ -5094,9 +4980,9 @@ } }, "node_modules/@parcel/watcher-linux-arm-glibc": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.3.0.tgz", - "integrity": "sha512-1apPw5cD2xBv1XIHPUlq0cO6iAaEUQ3BcY0ysSyD9Kuyw4MoWm1DV+W9mneWI+1g6OeP6dhikiFE6BlU+AToTQ==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.4.0.tgz", + "integrity": "sha512-9NQXD+qk46RwATNC3/UB7HWurscY18CnAPMTFcI9Y8CTbtm63/eex1SNt+BHFinEQuLBjaZwR2Lp+n7pmEJPpQ==", "cpu": [ "arm" ], @@ -5113,9 +4999,9 @@ } }, "node_modules/@parcel/watcher-linux-arm64-glibc": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.3.0.tgz", - "integrity": "sha512-mQ0gBSQEiq1k/MMkgcSB0Ic47UORZBmWoAWlMrTW6nbAGoLZP+h7AtUM7H3oDu34TBFFvjy4JCGP43JlylkTQA==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.4.0.tgz", + "integrity": "sha512-QuJTAQdsd7PFW9jNGaV9Pw+ZMWV9wKThEzzlY3Lhnnwy7iW23qtQFPql8iEaSFMCVI5StNNmONUopk+MFKpiKg==", "cpu": [ "arm64" ], @@ -5132,9 +5018,9 @@ } }, "node_modules/@parcel/watcher-linux-arm64-musl": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.3.0.tgz", - "integrity": "sha512-LXZAExpepJew0Gp8ZkJ+xDZaTQjLHv48h0p0Vw2VMFQ8A+RKrAvpFuPVCVwKJCr5SE+zvaG+Etg56qXvTDIedw==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.4.0.tgz", + "integrity": "sha512-oyN+uA9xcTDo/45bwsd6TFHa7Lc7hKujyMlvwrCLvSckvWogndCEoVYFNfZ6JJ2KNL/6fFiGPcbjp8jJmEh5Ng==", "cpu": [ "arm64" ], @@ -5151,9 +5037,9 @@ } }, "node_modules/@parcel/watcher-linux-x64-glibc": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.3.0.tgz", - "integrity": "sha512-P7Wo91lKSeSgMTtG7CnBS6WrA5otr1K7shhSjKHNePVmfBHDoAOHYRXgUmhiNfbcGk0uMCHVcdbfxtuiZCHVow==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.4.0.tgz", + "integrity": "sha512-KphV8awJmxU3q52JQvJot0QMu07CIyEjV+2Tb2ZtbucEgqyRcxOBDMsqp1JNq5nuDXtcCC0uHQICeiEz38dPBQ==", "cpu": [ "x64" ], @@ -5170,9 +5056,9 @@ } }, "node_modules/@parcel/watcher-linux-x64-musl": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.3.0.tgz", - "integrity": "sha512-+kiRE1JIq8QdxzwoYY+wzBs9YbJ34guBweTK8nlzLKimn5EQ2b2FSC+tAOpq302BuIMjyuUGvBiUhEcLIGMQ5g==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.4.0.tgz", + "integrity": "sha512-7jzcOonpXNWcSijPpKD5IbC6xC7yTibjJw9jviVzZostYLGxbz8LDJLUnLzLzhASPlPGgpeKLtFUMjAAzM+gSA==", "cpu": [ "x64" ], @@ -5214,9 +5100,9 @@ "license": "MIT" }, "node_modules/@parcel/watcher-win32-arm64": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.3.0.tgz", - "integrity": "sha512-35gXCnaz1AqIXpG42evcoP2+sNL62gZTMZne3IackM+6QlfMcJLy3DrjuL6Iks7Czpd3j4xRBzez3ADCj1l7Aw==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.4.0.tgz", + "integrity": "sha512-NOej2lqlq8bQNYhUMnOD0nwvNql8ToQF+1Zhi9ULZoG+XTtJ9hNnCFfyICxoZLXor4bBPTOnzs/aVVoefYnjIg==", "cpu": [ "arm64" ], @@ -5233,9 +5119,9 @@ } }, "node_modules/@parcel/watcher-win32-ia32": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.3.0.tgz", - "integrity": "sha512-FJS/IBQHhRpZ6PiCjFt1UAcPr0YmCLHRbTc00IBTrelEjlmmgIVLeOx4MSXzx2HFEy5Jo5YdhGpxCuqCyDJ5ow==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.4.0.tgz", + "integrity": "sha512-IO/nM+K2YD/iwjWAfHFMBPz4Zqn6qBDqZxY4j2n9s+4+OuTSRM/y/irksnuqcspom5DjkSeF9d0YbO+qpys+JA==", "cpu": [ "ia32" ], @@ -5252,9 +5138,9 @@ } }, "node_modules/@parcel/watcher-win32-x64": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.3.0.tgz", - "integrity": "sha512-dLx+0XRdMnVI62kU3wbXvbIRhLck4aE28bIGKbRGS7BJNt54IIj9+c/Dkqb+7DJEbHUZAX1bwaoM8PqVlHJmCA==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.4.0.tgz", + "integrity": "sha512-pAUyUVjfFjWaf/pShmJpJmNxZhbMvJASUpdes9jL6bTEJ+gDxPRSpXTIemNyNsb9AtbiGXs9XduP1reThmd+dA==", "cpu": [ "x64" ], @@ -5271,9 +5157,12 @@ } }, "node_modules/@parcel/watcher/node_modules/node-addon-api": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.0.0.tgz", - "integrity": "sha512-vgbBJTS4m5/KkE16t5Ly0WW9hz46swAstv0hYYwMtbG7AznRhNyfLRe8HZAiWIpcHzoO7HxhLuBQj9rJ/Ho0ZA==" + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.0.tgz", + "integrity": "sha512-mNcltoe1R8o7STTegSOHdnJNN7s5EUvhoS7ShnTHDyOSd+8H+UdWODq6qSv67PjC8Zc5JRT8+oLAMCr0SIXw7g==", + "engines": { + "node": "^16 || ^18 || >= 20" + } }, "node_modules/@pkgjs/parseargs": { "version": "0.11.0", @@ -5284,19 +5173,11 @@ "node": ">=14" } }, - "node_modules/@pkgr/utils": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/@pkgr/utils/-/utils-2.4.2.tgz", - "integrity": "sha512-POgTXhjrTfbTV63DiFXav4lBHiICLKKwDeaKn9Nphwj7WH6m0hMMCaJkMyRWjgtPFyRKRVoMXXjczsTQRDEhYw==", + "node_modules/@pkgr/core": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", + "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==", "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "fast-glob": "^3.3.0", - "is-glob": "^4.0.3", - "open": "^9.1.0", - "picocolors": "^1.0.0", - "tslib": "^2.6.0" - }, "engines": { "node": "^12.20.0 || ^14.18.0 || >=16.0.0" }, @@ -5304,31 +5185,13 @@ "url": "https://opencollective.com/unts" } }, - "node_modules/@pkgr/utils/node_modules/open": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/open/-/open-9.1.0.tgz", - "integrity": "sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==", - "dev": true, - "dependencies": { - "default-browser": "^4.0.0", - "define-lazy-prop": "^3.0.0", - "is-inside-container": "^1.0.0", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/@playwright/test": { - "version": "1.41.0", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.41.0.tgz", - "integrity": "sha512-Grvzj841THwtpBOrfiHOeYTJQxDRnKofMSzCiV8XeyLWu3o89qftQ4BCKfkziJhSUQRd0utKhrddtIsiraIwmw==", + "version": "1.41.1", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.41.1.tgz", + "integrity": "sha512-9g8EWTjiQ9yFBXc6HjCWe41msLpxEX0KhmfmPl9RPLJdfzL4F0lg2BdJ91O9azFdl11y1pmpwdjBiSxvqc+btw==", "dev": true, "dependencies": { - "playwright": "1.41.0" + "playwright": "1.41.1" }, "bin": { "playwright": "cli.js" @@ -6099,14 +5962,14 @@ } }, "node_modules/@react-aria/breadcrumbs": { - "version": "3.5.8", - "resolved": "https://registry.npmjs.org/@react-aria/breadcrumbs/-/breadcrumbs-3.5.8.tgz", - "integrity": "sha512-jeek23igeqXct7S3ShW2jtFUc5g3fS9ZEBZkF64FWBrwfCiaZwb8TcKkK/xFw36/q5mxEt+seNiqnNzvsICJuQ==", + "version": "3.5.9", + "resolved": "https://registry.npmjs.org/@react-aria/breadcrumbs/-/breadcrumbs-3.5.9.tgz", + "integrity": "sha512-asbXTL5NjeHl1+YIF0K70y8tNHk8Lb6VneYH8yOkpLO49ejyNDYBK0tp0jtI9IZAQiTa2qkhYq58c9LloTwebQ==", "peer": true, "dependencies": { - "@react-aria/i18n": "^3.9.0", - "@react-aria/link": "^3.6.2", - "@react-aria/utils": "^3.22.0", + "@react-aria/i18n": "^3.10.0", + "@react-aria/link": "^3.6.3", + "@react-aria/utils": "^3.23.0", "@react-types/breadcrumbs": "^3.7.2", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" @@ -6116,14 +5979,14 @@ } }, "node_modules/@react-aria/button": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/@react-aria/button/-/button-3.9.0.tgz", - "integrity": "sha512-Jri4OCN+4YmpJDPNQvk1DJoskKD9sdTxZaWWWJdAwoSIunZk3IEBXVvRfKzsEAVtI+UJN25zC2kyjXbVPS2XAA==", + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/@react-aria/button/-/button-3.9.1.tgz", + "integrity": "sha512-nAnLMUAnwIVcRkKzS1G2IU6LZSkIWPJGu9amz/g7Y02cGUwFp3lk5bEw2LdoaXiSDJNSX8g0SZFU8FROg57jfQ==", "peer": true, "dependencies": { - "@react-aria/focus": "^3.15.0", - "@react-aria/interactions": "^3.20.0", - "@react-aria/utils": "^3.22.0", + "@react-aria/focus": "^3.16.0", + "@react-aria/interactions": "^3.20.1", + "@react-aria/utils": "^3.23.0", "@react-stately/toggle": "^3.7.0", "@react-types/button": "^3.9.1", "@react-types/shared": "^3.22.0", @@ -6134,19 +5997,19 @@ } }, "node_modules/@react-aria/calendar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/@react-aria/calendar/-/calendar-3.5.3.tgz", - "integrity": "sha512-jW48jk0TIe0HAJS+z8zqd8M86FEuqrk1qEIjMWnf8rFnA7hPPpjdjUrY9vSIeC95NcbyZbFnr1bHzQjAIzosQw==", + "version": "3.5.4", + "resolved": "https://registry.npmjs.org/@react-aria/calendar/-/calendar-3.5.4.tgz", + "integrity": "sha512-8k7khgea5kwfWriZJWCADNB0R2d7g5A6tTjUEktK4FFZcTb0RCubFejts4hRyzKlF9XHUro2dfh6sbZrzfMKDQ==", "peer": true, "dependencies": { - "@internationalized/date": "^3.5.0", - "@react-aria/i18n": "^3.9.0", - "@react-aria/interactions": "^3.20.0", + "@internationalized/date": "^3.5.1", + "@react-aria/i18n": "^3.10.0", + "@react-aria/interactions": "^3.20.1", "@react-aria/live-announcer": "^3.3.1", - "@react-aria/utils": "^3.22.0", - "@react-stately/calendar": "^3.4.2", + "@react-aria/utils": "^3.23.0", + "@react-stately/calendar": "^3.4.3", "@react-types/button": "^3.9.1", - "@react-types/calendar": "^3.4.2", + "@react-types/calendar": "^3.4.3", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" }, @@ -6156,16 +6019,16 @@ } }, "node_modules/@react-aria/checkbox": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/@react-aria/checkbox/-/checkbox-3.12.0.tgz", - "integrity": "sha512-CyFZoI+z9hhyB3wb7IBsZxE30vXfYO2vSyET16zlkJ4qiFMqMiVLE4ekq034MHltCdpAczgP5yfKgNnJOmj7vQ==", + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/@react-aria/checkbox/-/checkbox-3.13.0.tgz", + "integrity": "sha512-eylJwtADIPKJ1Y5rITNJm/8JD8sXG2nhiZBIg1ko44Szxrpu+Le53NoGtg8nlrfh9vbUrXVvuFtf2jxbPXR5Jw==", "peer": true, "dependencies": { - "@react-aria/form": "^3.0.0", - "@react-aria/label": "^3.7.3", - "@react-aria/toggle": "^3.9.0", - "@react-aria/utils": "^3.22.0", - "@react-stately/checkbox": "^3.6.0", + "@react-aria/form": "^3.0.1", + "@react-aria/label": "^3.7.4", + "@react-aria/toggle": "^3.10.0", + "@react-aria/utils": "^3.23.0", + "@react-stately/checkbox": "^3.6.1", "@react-stately/form": "^3.0.0", "@react-stately/toggle": "^3.7.0", "@react-types/checkbox": "^3.6.0", @@ -6177,24 +6040,24 @@ } }, "node_modules/@react-aria/combobox": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/@react-aria/combobox/-/combobox-3.8.0.tgz", - "integrity": "sha512-lInzzZrH4vFlxmvDpXgQRkkREm7YIx258IRpQqll8Bny2vKMmZoF06zWMbcHP0CjFqYxExQeTjSYx0OTRRxkCQ==", + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/@react-aria/combobox/-/combobox-3.8.2.tgz", + "integrity": "sha512-q8Kdw1mx6nSSydXqRagRuyKH1NPGvpSOFjUfgxdO8ZqaEEuZX3ObOoiO/DLtXDndViNc03dMbMpfuJoLYXfCtg==", "peer": true, "dependencies": { - "@react-aria/i18n": "^3.9.0", - "@react-aria/listbox": "^3.11.2", + "@react-aria/i18n": "^3.10.0", + "@react-aria/listbox": "^3.11.3", "@react-aria/live-announcer": "^3.3.1", - "@react-aria/menu": "^3.11.2", - "@react-aria/overlays": "^3.19.0", - "@react-aria/selection": "^3.17.2", - "@react-aria/textfield": "^3.13.0", - "@react-aria/utils": "^3.22.0", - "@react-stately/collections": "^3.10.3", - "@react-stately/combobox": "^3.8.0", + "@react-aria/menu": "^3.12.0", + "@react-aria/overlays": "^3.20.0", + "@react-aria/selection": "^3.17.3", + "@react-aria/textfield": "^3.14.1", + "@react-aria/utils": "^3.23.0", + "@react-stately/collections": "^3.10.4", + "@react-stately/combobox": "^3.8.1", "@react-stately/form": "^3.0.0", "@react-types/button": "^3.9.1", - "@react-types/combobox": "^3.9.0", + "@react-types/combobox": "^3.10.0", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" }, @@ -6204,26 +6067,26 @@ } }, "node_modules/@react-aria/datepicker": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/@react-aria/datepicker/-/datepicker-3.9.0.tgz", - "integrity": "sha512-FIpiJxwBNOM8a6hLOqQJ4JrvRiGL6Zr44E1mHtAWStp2kBEJ6+O2JRm4PQ5Pzvdw6xnCpOBdfESdNdlXN7lVqQ==", + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/@react-aria/datepicker/-/datepicker-3.9.1.tgz", + "integrity": "sha512-bdlY2H/zwe3hQf64Lp1oGTf7Va8ennDyAv4Ffowb+BOoL8+FB9smtGyONKe87zXu7VJL2M5xYAi4n7c004PM+w==", "peer": true, "dependencies": { - "@internationalized/date": "^3.5.0", - "@internationalized/number": "^3.4.0", - "@internationalized/string": "^3.1.1", - "@react-aria/focus": "^3.15.0", - "@react-aria/form": "^3.0.0", - "@react-aria/i18n": "^3.9.0", - "@react-aria/interactions": "^3.20.0", - "@react-aria/label": "^3.7.3", - "@react-aria/spinbutton": "^3.6.0", - "@react-aria/utils": "^3.22.0", - "@react-stately/datepicker": "^3.9.0", + "@internationalized/date": "^3.5.1", + "@internationalized/number": "^3.5.0", + "@internationalized/string": "^3.2.0", + "@react-aria/focus": "^3.16.0", + "@react-aria/form": "^3.0.1", + "@react-aria/i18n": "^3.10.0", + "@react-aria/interactions": "^3.20.1", + "@react-aria/label": "^3.7.4", + "@react-aria/spinbutton": "^3.6.1", + "@react-aria/utils": "^3.23.0", + "@react-stately/datepicker": "^3.9.1", "@react-stately/form": "^3.0.0", "@react-types/button": "^3.9.1", - "@react-types/calendar": "^3.4.2", - "@react-types/datepicker": "^3.7.0", + "@react-types/calendar": "^3.4.3", + "@react-types/datepicker": "^3.7.1", "@react-types/dialog": "^3.5.7", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" @@ -6234,14 +6097,14 @@ } }, "node_modules/@react-aria/dialog": { - "version": "3.5.8", - "resolved": "https://registry.npmjs.org/@react-aria/dialog/-/dialog-3.5.8.tgz", - "integrity": "sha512-KIc1FORdHhZ3bWom4qHO0hmlL4e5Hup6N25EY8HP5I7Ftv9EBBGaO5grtxZ2fX8kiCJNI4y+k67ZZ71wKJvMiA==", + "version": "3.5.10", + "resolved": "https://registry.npmjs.org/@react-aria/dialog/-/dialog-3.5.10.tgz", + "integrity": "sha512-H2BNVLOfaum6/4irH5XUU/wIcXSs/ymxmTPGmucRG1hzaUh8H3tupdl/qCZ+SsW9oYDFlphY172uM1nsPjBMiQ==", "peer": true, "dependencies": { - "@react-aria/focus": "^3.15.0", - "@react-aria/overlays": "^3.19.0", - "@react-aria/utils": "^3.22.0", + "@react-aria/focus": "^3.16.0", + "@react-aria/overlays": "^3.20.0", + "@react-aria/utils": "^3.23.0", "@react-types/dialog": "^3.5.7", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" @@ -6252,18 +6115,18 @@ } }, "node_modules/@react-aria/dnd": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@react-aria/dnd/-/dnd-3.5.0.tgz", - "integrity": "sha512-6IuqmXwnfgRfeXDbfsPZzScapCmtRIkphTBPoLT575uEbZC7ROLgRJ/4NIKxvtTA6IIBqUGcvaqU9Mpg8j4U5Q==", + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/@react-aria/dnd/-/dnd-3.5.1.tgz", + "integrity": "sha512-7OPGePdle+xNYHAIAUOvIETRMfnkRt7h/C0bCkxUR2GYefEbTzfraso4ppNH2JZ7fCRd0K/Qe+jvQklwusHAKA==", "peer": true, "dependencies": { - "@internationalized/string": "^3.1.1", - "@react-aria/i18n": "^3.9.0", - "@react-aria/interactions": "^3.20.0", + "@internationalized/string": "^3.2.0", + "@react-aria/i18n": "^3.10.0", + "@react-aria/interactions": "^3.20.1", "@react-aria/live-announcer": "^3.3.1", - "@react-aria/overlays": "^3.19.0", - "@react-aria/utils": "^3.22.0", - "@react-stately/dnd": "^3.2.6", + "@react-aria/overlays": "^3.20.0", + "@react-aria/utils": "^3.23.0", + "@react-stately/dnd": "^3.2.7", "@react-types/button": "^3.9.1", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" @@ -6274,38 +6137,29 @@ } }, "node_modules/@react-aria/focus": { - "version": "3.15.0", - "resolved": "https://registry.npmjs.org/@react-aria/focus/-/focus-3.15.0.tgz", - "integrity": "sha512-nnxRyfqHuAjRwdQ4BpQyZPtGFKZmRU6cnaIb3pqWFCqEyJQensV7MA3TJ4Jhadq67cy1Ji5SYSlr1duBwjoYvw==", + "version": "3.16.0", + "resolved": "https://registry.npmjs.org/@react-aria/focus/-/focus-3.16.0.tgz", + "integrity": "sha512-GP6EYI07E8NKQQcXHjpIocEU0vh0oi0Vcsd+/71fKS0NnTR0TUOEeil0JuuQ9ymkmPDTu51Aaaa4FxVsuN/23A==", "peer": true, "dependencies": { - "@react-aria/interactions": "^3.20.0", - "@react-aria/utils": "^3.22.0", + "@react-aria/interactions": "^3.20.1", + "@react-aria/utils": "^3.23.0", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0", - "clsx": "^1.1.1" + "clsx": "^2.0.0" }, "peerDependencies": { "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" } }, - "node_modules/@react-aria/focus/node_modules/clsx": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", - "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", - "peer": true, - "engines": { - "node": ">=6" - } - }, "node_modules/@react-aria/form": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@react-aria/form/-/form-3.0.0.tgz", - "integrity": "sha512-APeGph9oTO8nro4ZObuy1hk+0hpF/ji9O3odPGhLkzP/HvW2J7NI9pjKJOINfgtYr2yvVUZf/MbTMxPwtAxhaQ==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@react-aria/form/-/form-3.0.1.tgz", + "integrity": "sha512-6586oODMDR4/ciGRwXjpvEAg7tWGSDrXE//waK0n5e5sMuzlPOo1DHc5SpPTvz0XdJsu6VDt2rHdVWVIC9LEyw==", "peer": true, "dependencies": { - "@react-aria/interactions": "^3.20.0", - "@react-aria/utils": "^3.22.0", + "@react-aria/interactions": "^3.20.1", + "@react-aria/utils": "^3.23.0", "@react-stately/form": "^3.0.0", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" @@ -6315,21 +6169,21 @@ } }, "node_modules/@react-aria/grid": { - "version": "3.8.5", - "resolved": "https://registry.npmjs.org/@react-aria/grid/-/grid-3.8.5.tgz", - "integrity": "sha512-0p+Bbs9rpQeOy8b75DamlzVPKylBoe/z0XwkeeTChHP2TK3TwPXh6J5EmisQx6K8zsb3iZULQRcP4QibvnMbrg==", + "version": "3.8.6", + "resolved": "https://registry.npmjs.org/@react-aria/grid/-/grid-3.8.6.tgz", + "integrity": "sha512-JlQDkdm5heG1FfRyy5KnB8b6s/hRqSI6Xt2xN2AccLX5kcbfFr2/d5KVxyf6ahfa4Gfd46alN6477ju5eTWJew==", "peer": true, "dependencies": { - "@react-aria/focus": "^3.15.0", - "@react-aria/i18n": "^3.9.0", - "@react-aria/interactions": "^3.20.0", + "@react-aria/focus": "^3.16.0", + "@react-aria/i18n": "^3.10.0", + "@react-aria/interactions": "^3.20.1", "@react-aria/live-announcer": "^3.3.1", - "@react-aria/selection": "^3.17.2", - "@react-aria/utils": "^3.22.0", - "@react-stately/collections": "^3.10.3", - "@react-stately/grid": "^3.8.3", - "@react-stately/selection": "^3.14.1", - "@react-stately/virtualizer": "^3.6.5", + "@react-aria/selection": "^3.17.3", + "@react-aria/utils": "^3.23.0", + "@react-stately/collections": "^3.10.4", + "@react-stately/grid": "^3.8.4", + "@react-stately/selection": "^3.14.2", + "@react-stately/virtualizer": "^3.6.6", "@react-types/checkbox": "^3.6.0", "@react-types/grid": "^3.2.3", "@react-types/shared": "^3.22.0", @@ -6341,18 +6195,18 @@ } }, "node_modules/@react-aria/gridlist": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/@react-aria/gridlist/-/gridlist-3.7.2.tgz", - "integrity": "sha512-9keGYZz0yILVqAnFzF6hGRtHm1vfSD1mNnH8oyn7mKjyr7qOln7s5f8Nl85ueMolfrV3H2rCZgM2itNQ+Ezzgg==", + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/@react-aria/gridlist/-/gridlist-3.7.3.tgz", + "integrity": "sha512-rkkepYM7xJiebR0g3uC4zzkdR7a8z0fLaM+sg9lSTbdElHMLAlrebS2ytEyZnhiu9nbOnw13GN1OC4/ZenzbHQ==", "peer": true, "dependencies": { - "@react-aria/focus": "^3.15.0", - "@react-aria/grid": "^3.8.5", - "@react-aria/i18n": "^3.9.0", - "@react-aria/interactions": "^3.20.0", - "@react-aria/selection": "^3.17.2", - "@react-aria/utils": "^3.22.0", - "@react-stately/list": "^3.10.1", + "@react-aria/focus": "^3.16.0", + "@react-aria/grid": "^3.8.6", + "@react-aria/i18n": "^3.10.0", + "@react-aria/interactions": "^3.20.1", + "@react-aria/selection": "^3.17.3", + "@react-aria/utils": "^3.23.0", + "@react-stately/list": "^3.10.2", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" }, @@ -6362,17 +6216,17 @@ } }, "node_modules/@react-aria/i18n": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/@react-aria/i18n/-/i18n-3.9.0.tgz", - "integrity": "sha512-ebGP/sVG0ZtNF4RNFzs/W01tl7waYpBManh1kKWgA4roDPFt/odkgkDBzKGl+ggBb7TQRHsfUFHuqKsrsMy9TA==", + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/@react-aria/i18n/-/i18n-3.10.0.tgz", + "integrity": "sha512-sviD5Y1pLPG49HHRmVjR+5nONrp0HK219+nu9Y7cDfUhXu2EjyhMS9t/n9/VZ69hHChZ2PnHYLEE2visu9CuCg==", "peer": true, "dependencies": { - "@internationalized/date": "^3.5.0", + "@internationalized/date": "^3.5.1", "@internationalized/message": "^3.1.1", - "@internationalized/number": "^3.4.0", - "@internationalized/string": "^3.1.1", - "@react-aria/ssr": "^3.9.0", - "@react-aria/utils": "^3.22.0", + "@internationalized/number": "^3.5.0", + "@internationalized/string": "^3.2.0", + "@react-aria/ssr": "^3.9.1", + "@react-aria/utils": "^3.23.0", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" }, @@ -6381,13 +6235,13 @@ } }, "node_modules/@react-aria/interactions": { - "version": "3.20.0", - "resolved": "https://registry.npmjs.org/@react-aria/interactions/-/interactions-3.20.0.tgz", - "integrity": "sha512-JCCEyK2Nb4mEHucrgmqhTHTNAEqhsiM07jJmmY22eikxnCQnsEfdwXyg9cgZLG79D5V7jyqVRqOp2OsG7Qx7kQ==", + "version": "3.20.1", + "resolved": "https://registry.npmjs.org/@react-aria/interactions/-/interactions-3.20.1.tgz", + "integrity": "sha512-PLNBr87+SzRhe9PvvF9qvzYeP4ofTwfKSorwmO+hjr3qoczrSXf4LRQlb27wB6hF10C7ZE/XVbUI1lj4QQrZ/g==", "peer": true, "dependencies": { - "@react-aria/ssr": "^3.9.0", - "@react-aria/utils": "^3.22.0", + "@react-aria/ssr": "^3.9.1", + "@react-aria/utils": "^3.23.0", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" }, @@ -6396,12 +6250,12 @@ } }, "node_modules/@react-aria/label": { - "version": "3.7.3", - "resolved": "https://registry.npmjs.org/@react-aria/label/-/label-3.7.3.tgz", - "integrity": "sha512-v1zuqbpYyYaPjrBWpceGjMpwP4ne6fLoOXdoIZoKLux2jkAcyIF2kIJFiyYoPQYQJWGRNo7q1oSwamxmng4xJw==", + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@react-aria/label/-/label-3.7.4.tgz", + "integrity": "sha512-3Y0yyrqpLzZdzHw+TOyzwuyx5wa2ujU5DGfKuL5GFnU9Ii4DtdwBGSYS7Yu7qadU+eQmG4OGhAgFVswbIgIwJw==", "peer": true, "dependencies": { - "@react-aria/utils": "^3.22.0", + "@react-aria/utils": "^3.23.0", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" }, @@ -6410,14 +6264,14 @@ } }, "node_modules/@react-aria/link": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/@react-aria/link/-/link-3.6.2.tgz", - "integrity": "sha512-v9gXgQ3Gev0JOlg2MAXcubDMgX+0BlJ+hTyFYFMuN/4jVBlAe426WKbjg+6MMzxwukWg9C3Q08JzqdFTi4cBng==", + "version": "3.6.3", + "resolved": "https://registry.npmjs.org/@react-aria/link/-/link-3.6.3.tgz", + "integrity": "sha512-8kPWc4u/lDow3Ll0LDxeMgaxt9Y3sl8UldKLGli8tzRSltYFugNh/n+i9sCnmo4Qv9Tp9kYv+yxBK50Uk9sINw==", "peer": true, "dependencies": { - "@react-aria/focus": "^3.15.0", - "@react-aria/interactions": "^3.20.0", - "@react-aria/utils": "^3.22.0", + "@react-aria/focus": "^3.16.0", + "@react-aria/interactions": "^3.20.1", + "@react-aria/utils": "^3.23.0", "@react-types/link": "^3.5.2", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" @@ -6427,17 +6281,17 @@ } }, "node_modules/@react-aria/listbox": { - "version": "3.11.2", - "resolved": "https://registry.npmjs.org/@react-aria/listbox/-/listbox-3.11.2.tgz", - "integrity": "sha512-FXdoqYLUTJn16OxodyS518PIcwzFkCfW5bxQepoy88NDMGtqp6u8fvEPpAoZbomvw/pV9MuEaMAw9qLyfkD4DA==", + "version": "3.11.3", + "resolved": "https://registry.npmjs.org/@react-aria/listbox/-/listbox-3.11.3.tgz", + "integrity": "sha512-PBrnldmyEYUUJvfDeljW8ITvZyBTfGpLNf0b5kfBPK3TDgRH4niEH2vYEcaZvSqb0FrpdvcunuTRXcOpfb+gCQ==", "peer": true, "dependencies": { - "@react-aria/interactions": "^3.20.0", - "@react-aria/label": "^3.7.3", - "@react-aria/selection": "^3.17.2", - "@react-aria/utils": "^3.22.0", - "@react-stately/collections": "^3.10.3", - "@react-stately/list": "^3.10.1", + "@react-aria/interactions": "^3.20.1", + "@react-aria/label": "^3.7.4", + "@react-aria/selection": "^3.17.3", + "@react-aria/utils": "^3.23.0", + "@react-stately/collections": "^3.10.4", + "@react-stately/list": "^3.10.2", "@react-types/listbox": "^3.4.6", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" @@ -6457,20 +6311,20 @@ } }, "node_modules/@react-aria/menu": { - "version": "3.11.2", - "resolved": "https://registry.npmjs.org/@react-aria/menu/-/menu-3.11.2.tgz", - "integrity": "sha512-I4R5FOvRtwIQW+0naXav5giZBp935X2tXB2xBg/cSAYDXgfLmFPLHkyPbO77hR6FwazfFfJoKdn0pVcRox3lrQ==", + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/@react-aria/menu/-/menu-3.12.0.tgz", + "integrity": "sha512-Nsujv3b61WR0gybDKnBjAeyxDVJOfPLMggRUf9SQDfPWnrPXEsAFxaPaVcAkzlfI4HiQs1IxNwsKFNpc3PPZTQ==", "peer": true, "dependencies": { - "@react-aria/focus": "^3.15.0", - "@react-aria/i18n": "^3.9.0", - "@react-aria/interactions": "^3.20.0", - "@react-aria/overlays": "^3.19.0", - "@react-aria/selection": "^3.17.2", - "@react-aria/utils": "^3.22.0", - "@react-stately/collections": "^3.10.3", - "@react-stately/menu": "^3.5.7", - "@react-stately/tree": "^3.7.4", + "@react-aria/focus": "^3.16.0", + "@react-aria/i18n": "^3.10.0", + "@react-aria/interactions": "^3.20.1", + "@react-aria/overlays": "^3.20.0", + "@react-aria/selection": "^3.17.3", + "@react-aria/utils": "^3.23.0", + "@react-stately/collections": "^3.10.4", + "@react-stately/menu": "^3.6.0", + "@react-stately/tree": "^3.7.5", "@react-types/button": "^3.9.1", "@react-types/menu": "^3.9.6", "@react-types/shared": "^3.22.0", @@ -6482,12 +6336,12 @@ } }, "node_modules/@react-aria/meter": { - "version": "3.4.8", - "resolved": "https://registry.npmjs.org/@react-aria/meter/-/meter-3.4.8.tgz", - "integrity": "sha512-u/pNisFs8UottonYlwqaS2i/NhHIw9LcApHo55XP7XMFCnaHPlq3mJzpSsr0zuCTvat2djoKelj41jT6Fhuw+A==", + "version": "3.4.9", + "resolved": "https://registry.npmjs.org/@react-aria/meter/-/meter-3.4.9.tgz", + "integrity": "sha512-1/FHFmFmSyfQBJ2oH152lp4nps76v1UdhnFbIsmRIH+0g0IfMv1yDT2M9dIZ/b9DgVZSx527FmWOXm0eHGKD6w==", "peer": true, "dependencies": { - "@react-aria/progress": "^3.4.8", + "@react-aria/progress": "^3.4.9", "@react-types/meter": "^3.3.6", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" @@ -6497,18 +6351,18 @@ } }, "node_modules/@react-aria/numberfield": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/@react-aria/numberfield/-/numberfield-3.10.0.tgz", - "integrity": "sha512-ixkvkPTn18RNPnbaT726CHA+Wpr/qTYWboq8hSaJK0LiAtiEWCKg0pmVtJ4lFntAQ5GNp02xudTwhQdLN5WRig==", + "version": "3.10.2", + "resolved": "https://registry.npmjs.org/@react-aria/numberfield/-/numberfield-3.10.2.tgz", + "integrity": "sha512-KjGTXq3lIhN4DEdEeHzfS/k9Qq0sDEpLgLr/hgSfGN4Q7Syu4Ck/n2HXmrDn//z08/wNvcukuP6Ioers138DcQ==", "peer": true, "dependencies": { - "@react-aria/i18n": "^3.9.0", - "@react-aria/interactions": "^3.20.0", - "@react-aria/spinbutton": "^3.6.0", - "@react-aria/textfield": "^3.13.0", - "@react-aria/utils": "^3.22.0", + "@react-aria/i18n": "^3.10.0", + "@react-aria/interactions": "^3.20.1", + "@react-aria/spinbutton": "^3.6.1", + "@react-aria/textfield": "^3.14.1", + "@react-aria/utils": "^3.23.0", "@react-stately/form": "^3.0.0", - "@react-stately/numberfield": "^3.7.0", + "@react-stately/numberfield": "^3.8.0", "@react-types/button": "^3.9.1", "@react-types/numberfield": "^3.7.0", "@react-types/shared": "^3.22.0", @@ -6520,17 +6374,17 @@ } }, "node_modules/@react-aria/overlays": { - "version": "3.19.0", - "resolved": "https://registry.npmjs.org/@react-aria/overlays/-/overlays-3.19.0.tgz", - "integrity": "sha512-VN5GkB8+uZ2cfXljBtkqmrsAhBdGoj4un/agH0Qyihi2dazsMeafczSNnqzbpVgB4Zt2UHPJUkKwihgzXRxJJA==", + "version": "3.20.0", + "resolved": "https://registry.npmjs.org/@react-aria/overlays/-/overlays-3.20.0.tgz", + "integrity": "sha512-2m7MpRJL5UucbEuu08lMHsiFJoDowkJV4JAIFBZYK1NzVH0vF/A+w9HRNM7jRwx2DUxE+iIsZnl8yKV/7KY8OQ==", "peer": true, "dependencies": { - "@react-aria/focus": "^3.15.0", - "@react-aria/i18n": "^3.9.0", - "@react-aria/interactions": "^3.20.0", - "@react-aria/ssr": "^3.9.0", - "@react-aria/utils": "^3.22.0", - "@react-aria/visually-hidden": "^3.8.7", + "@react-aria/focus": "^3.16.0", + "@react-aria/i18n": "^3.10.0", + "@react-aria/interactions": "^3.20.1", + "@react-aria/ssr": "^3.9.1", + "@react-aria/utils": "^3.23.0", + "@react-aria/visually-hidden": "^3.8.8", "@react-stately/overlays": "^3.6.4", "@react-types/button": "^3.9.1", "@react-types/overlays": "^3.8.4", @@ -6543,14 +6397,14 @@ } }, "node_modules/@react-aria/progress": { - "version": "3.4.8", - "resolved": "https://registry.npmjs.org/@react-aria/progress/-/progress-3.4.8.tgz", - "integrity": "sha512-Nah3aj5BNRa0+urQZimzb0vuKQK7lsc8BrUwJuHTwGRBSWUjCADExrJYdhDIR/nLUV2TCmAQl+GJtTgbEEj0DQ==", + "version": "3.4.9", + "resolved": "https://registry.npmjs.org/@react-aria/progress/-/progress-3.4.9.tgz", + "integrity": "sha512-CME1ZLsJHOmSgK8IAPOC/+vYO5Oc614mkEw5MluT/yclw5rMyjAkK1XsHLjEXy81uwPeiRyoQQIMPKG2/sMxFQ==", "peer": true, "dependencies": { - "@react-aria/i18n": "^3.9.0", - "@react-aria/label": "^3.7.3", - "@react-aria/utils": "^3.22.0", + "@react-aria/i18n": "^3.10.0", + "@react-aria/label": "^3.7.4", + "@react-aria/utils": "^3.23.0", "@react-types/progress": "^3.5.1", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" @@ -6560,19 +6414,19 @@ } }, "node_modules/@react-aria/radio": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/@react-aria/radio/-/radio-3.9.0.tgz", - "integrity": "sha512-kr3+OQ1YU/3mURZfCsYaQmJ/c15qOm8uScaDRC39qz97bLNASakQqMImIaS+GluPKx1PEW3y2ErAgLplH28zZw==", + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/@react-aria/radio/-/radio-3.10.0.tgz", + "integrity": "sha512-6NaKzdGymdcVWLYgHT0cHsVmNzPOp89o8r41w29OPBQWu8w2c9mxg4366OiIZn/uXIBS4abhQ4nL4toBRLgBrg==", "peer": true, "dependencies": { - "@react-aria/focus": "^3.15.0", - "@react-aria/form": "^3.0.0", - "@react-aria/i18n": "^3.9.0", - "@react-aria/interactions": "^3.20.0", - "@react-aria/label": "^3.7.3", - "@react-aria/utils": "^3.22.0", - "@react-stately/radio": "^3.10.0", - "@react-types/radio": "^3.6.0", + "@react-aria/focus": "^3.16.0", + "@react-aria/form": "^3.0.1", + "@react-aria/i18n": "^3.10.0", + "@react-aria/interactions": "^3.20.1", + "@react-aria/label": "^3.7.4", + "@react-aria/utils": "^3.23.0", + "@react-stately/radio": "^3.10.1", + "@react-types/radio": "^3.7.0", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" }, @@ -6581,14 +6435,14 @@ } }, "node_modules/@react-aria/searchfield": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@react-aria/searchfield/-/searchfield-3.6.0.tgz", - "integrity": "sha512-mHaN+sx2SLqluvF0/YIBQ9WA5LakSWl79FgC0sOWEaOZhDswAbJ9tESdi/M/ahtOnVwblE0cpHRlUKV0Oz4gOw==", + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/@react-aria/searchfield/-/searchfield-3.7.1.tgz", + "integrity": "sha512-ebhnV/reNByIZzpcQLHIo1RQ+BrYS8HdwX624i9R7dep1gxGHXYEaqL9aSY+RdngNerB4OeiWmB75em9beSpjQ==", "peer": true, "dependencies": { - "@react-aria/i18n": "^3.9.0", - "@react-aria/textfield": "^3.13.0", - "@react-aria/utils": "^3.22.0", + "@react-aria/i18n": "^3.10.0", + "@react-aria/textfield": "^3.14.1", + "@react-aria/utils": "^3.23.0", "@react-stately/searchfield": "^3.5.0", "@react-types/button": "^3.9.1", "@react-types/searchfield": "^3.5.2", @@ -6600,23 +6454,23 @@ } }, "node_modules/@react-aria/select": { - "version": "3.14.0", - "resolved": "https://registry.npmjs.org/@react-aria/select/-/select-3.14.0.tgz", - "integrity": "sha512-ulVFH8K1yr8CxQE7pzhlM3aWBltWfSbWdJV3FXDqM0kA+GHqqPwZVJcqPuegtaiju1z6nRk4q789kJa4o+4M9g==", + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/@react-aria/select/-/select-3.14.1.tgz", + "integrity": "sha512-pAy/+Xbj11Lx6bi/O1hWH0NSIDRxFb6V7N0ry2L8x7MALljh516VbpnAc5RgvbjbuKq0cHUAcdINOzOzpYWm4A==", "peer": true, "dependencies": { - "@react-aria/form": "^3.0.0", - "@react-aria/i18n": "^3.9.0", - "@react-aria/interactions": "^3.20.0", - "@react-aria/label": "^3.7.3", - "@react-aria/listbox": "^3.11.2", - "@react-aria/menu": "^3.11.2", - "@react-aria/selection": "^3.17.2", - "@react-aria/utils": "^3.22.0", - "@react-aria/visually-hidden": "^3.8.7", - "@react-stately/select": "^3.6.0", + "@react-aria/form": "^3.0.1", + "@react-aria/i18n": "^3.10.0", + "@react-aria/interactions": "^3.20.1", + "@react-aria/label": "^3.7.4", + "@react-aria/listbox": "^3.11.3", + "@react-aria/menu": "^3.12.0", + "@react-aria/selection": "^3.17.3", + "@react-aria/utils": "^3.23.0", + "@react-aria/visually-hidden": "^3.8.8", + "@react-stately/select": "^3.6.1", "@react-types/button": "^3.9.1", - "@react-types/select": "^3.9.0", + "@react-types/select": "^3.9.1", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" }, @@ -6626,16 +6480,16 @@ } }, "node_modules/@react-aria/selection": { - "version": "3.17.2", - "resolved": "https://registry.npmjs.org/@react-aria/selection/-/selection-3.17.2.tgz", - "integrity": "sha512-AXXY3eOIWnITabMn6c0bpLPXkSX7040LOZU+7pQgtZJwDdZorLuKw4i7WS5i71LcV71ywG4mtqc9mOb/GfhUbg==", + "version": "3.17.3", + "resolved": "https://registry.npmjs.org/@react-aria/selection/-/selection-3.17.3.tgz", + "integrity": "sha512-xl2sgeGH61ngQeE05WOWWPVpGRTPMjQEFmsAWEprArFi4Z7ihSZgpGX22l1w7uSmtXM/eN/v0W8hUYUju5iXlQ==", "peer": true, "dependencies": { - "@react-aria/focus": "^3.15.0", - "@react-aria/i18n": "^3.9.0", - "@react-aria/interactions": "^3.20.0", - "@react-aria/utils": "^3.22.0", - "@react-stately/selection": "^3.14.1", + "@react-aria/focus": "^3.16.0", + "@react-aria/i18n": "^3.10.0", + "@react-aria/interactions": "^3.20.1", + "@react-aria/utils": "^3.23.0", + "@react-stately/selection": "^3.14.2", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" }, @@ -6645,12 +6499,12 @@ } }, "node_modules/@react-aria/separator": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/@react-aria/separator/-/separator-3.3.8.tgz", - "integrity": "sha512-u15HgH2IVKN/mx7Hp9dfNiFpPU/mq2EA7l0e2fsVSjA77nhSctUFBAqaR7FAI/y86RUhq3zplIz4BJek1/3Dvw==", + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/@react-aria/separator/-/separator-3.3.9.tgz", + "integrity": "sha512-1wEXiaSJjq2+DR5TC0RKnUBsfZN+YXTzyI7XMzjQoc3YlclumX8wQtzPAOGOEjHB1JKUgo1Gw70FtupVXz58QQ==", "peer": true, "dependencies": { - "@react-aria/utils": "^3.22.0", + "@react-aria/utils": "^3.23.0", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" }, @@ -6659,17 +6513,17 @@ } }, "node_modules/@react-aria/slider": { - "version": "3.7.3", - "resolved": "https://registry.npmjs.org/@react-aria/slider/-/slider-3.7.3.tgz", - "integrity": "sha512-AbrTD9UzMn0CwxFjOhJHz2ms2zdJlBL3XnbvqkpsmpXUl0u8WT1QAEaMnS5+792gnSGZs/ARDmse53o+IO8wTA==", + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@react-aria/slider/-/slider-3.7.4.tgz", + "integrity": "sha512-OFJWeGSL2duVDFs/kcjlWsY6bqCVKZgM0aFn2QN4wmID+vfBvBnqGHAgWv3BCePTAPS3+GBjMN002TrftorjwQ==", "peer": true, "dependencies": { - "@react-aria/focus": "^3.15.0", - "@react-aria/i18n": "^3.9.0", - "@react-aria/interactions": "^3.20.0", - "@react-aria/label": "^3.7.3", - "@react-aria/utils": "^3.22.0", - "@react-stately/slider": "^3.4.5", + "@react-aria/focus": "^3.16.0", + "@react-aria/i18n": "^3.10.0", + "@react-aria/interactions": "^3.20.1", + "@react-aria/label": "^3.7.4", + "@react-aria/utils": "^3.23.0", + "@react-stately/slider": "^3.5.0", "@react-types/shared": "^3.22.0", "@react-types/slider": "^3.7.0", "@swc/helpers": "^0.5.0" @@ -6679,14 +6533,14 @@ } }, "node_modules/@react-aria/spinbutton": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@react-aria/spinbutton/-/spinbutton-3.6.0.tgz", - "integrity": "sha512-I7f1gfwVRcjguEXZijk0z5g8njZ2YWnQzVzcwGf8ocLPxfw1CnSivNCzwVj2ChXPX10uXewXVMLWVCz+BRC9uQ==", + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/@react-aria/spinbutton/-/spinbutton-3.6.1.tgz", + "integrity": "sha512-u5GuOP3k4Zis055iY0fZJNHU7dUNCoSfUq5LKwJ1iNaCqDcavdstAnAg+X1a7rhpp5zCnJmAMseo3Qmzi9P+Ew==", "peer": true, "dependencies": { - "@react-aria/i18n": "^3.9.0", + "@react-aria/i18n": "^3.10.0", "@react-aria/live-announcer": "^3.3.1", - "@react-aria/utils": "^3.22.0", + "@react-aria/utils": "^3.23.0", "@react-types/button": "^3.9.1", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" @@ -6697,9 +6551,9 @@ } }, "node_modules/@react-aria/ssr": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/@react-aria/ssr/-/ssr-3.9.0.tgz", - "integrity": "sha512-Bz6BqP6ZorCme9tSWHZVmmY+s7AU8l6Vl2NUYmBzezD//fVHHfFo4lFBn5tBuAaJEm3AuCLaJQ6H2qhxNSb7zg==", + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/@react-aria/ssr/-/ssr-3.9.1.tgz", + "integrity": "sha512-NqzkLFP8ZVI4GSorS0AYljC13QW2sc8bDqJOkBvkAt3M8gbcAXJWVRGtZBCRscki9RZF+rNlnPdg0G0jYkhJcg==", "peer": true, "dependencies": { "@swc/helpers": "^0.5.0" @@ -6712,12 +6566,12 @@ } }, "node_modules/@react-aria/switch": { - "version": "3.5.7", - "resolved": "https://registry.npmjs.org/@react-aria/switch/-/switch-3.5.7.tgz", - "integrity": "sha512-zBEsB071zzhQ82RwAA42pFLXHgrpya0OoRAsTO6jHZwiaYMsyqJI2eiXd7F6rqklpgyO6k7jOQklGUuoSJW4pA==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@react-aria/switch/-/switch-3.6.0.tgz", + "integrity": "sha512-YNWc5fGLNXE4XlmDAKyqAdllRiClGR7ki4KGFY7nL+xR5jxzjCGU3S3ToMK5Op3QSMGZLxY/aYmC4O+MvcoADQ==", "peer": true, "dependencies": { - "@react-aria/toggle": "^3.9.0", + "@react-aria/toggle": "^3.10.0", "@react-stately/toggle": "^3.7.0", "@react-types/switch": "^3.5.0", "@swc/helpers": "^0.5.0" @@ -6727,26 +6581,26 @@ } }, "node_modules/@react-aria/table": { - "version": "3.13.2", - "resolved": "https://registry.npmjs.org/@react-aria/table/-/table-3.13.2.tgz", - "integrity": "sha512-bJgMx2SZ8SFmTosbv6k1lZ1a0Yw3f8tzWhpIQodCaMHhtI7izA6YqDNx47NeBNYpVm9DFfAoWbb79HFJ+OKIJA==", + "version": "3.13.3", + "resolved": "https://registry.npmjs.org/@react-aria/table/-/table-3.13.3.tgz", + "integrity": "sha512-AzmETpyxwNqISTzwHJPs85x9gujG40IIsSOBUdp49oKhB85RbPLvMwhadp4wCVAoHw3erOC/TJxHtVc7o2K1LA==", "peer": true, "dependencies": { - "@react-aria/focus": "^3.15.0", - "@react-aria/grid": "^3.8.5", - "@react-aria/i18n": "^3.9.0", - "@react-aria/interactions": "^3.20.0", + "@react-aria/focus": "^3.16.0", + "@react-aria/grid": "^3.8.6", + "@react-aria/i18n": "^3.10.0", + "@react-aria/interactions": "^3.20.1", "@react-aria/live-announcer": "^3.3.1", - "@react-aria/utils": "^3.22.0", - "@react-aria/visually-hidden": "^3.8.7", - "@react-stately/collections": "^3.10.3", + "@react-aria/utils": "^3.23.0", + "@react-aria/visually-hidden": "^3.8.8", + "@react-stately/collections": "^3.10.4", "@react-stately/flags": "^3.0.0", - "@react-stately/table": "^3.11.3", - "@react-stately/virtualizer": "^3.6.5", + "@react-stately/table": "^3.11.4", + "@react-stately/virtualizer": "^3.6.6", "@react-types/checkbox": "^3.6.0", "@react-types/grid": "^3.2.3", "@react-types/shared": "^3.22.0", - "@react-types/table": "^3.9.1", + "@react-types/table": "^3.9.2", "@swc/helpers": "^0.5.0" }, "peerDependencies": { @@ -6755,16 +6609,16 @@ } }, "node_modules/@react-aria/tabs": { - "version": "3.8.2", - "resolved": "https://registry.npmjs.org/@react-aria/tabs/-/tabs-3.8.2.tgz", - "integrity": "sha512-zDfeEEyJmcnH9TFvJECWIrJpxX4SmREFV1/P8hN6ZUJPYoeiGMXYYFvjcRb1r3LN8XKlbwR37AQ3Cn1/yhrUwQ==", + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/@react-aria/tabs/-/tabs-3.8.3.tgz", + "integrity": "sha512-Plw0K/5Qv35vYq7pHZFfQB2BF5OClFx4Abzo9hLVx4oMy3qb7i5lxmLBVbt81yPX/MdjYeP4zO1EHGBl4zMRhA==", "peer": true, "dependencies": { - "@react-aria/focus": "^3.15.0", - "@react-aria/i18n": "^3.9.0", - "@react-aria/selection": "^3.17.2", - "@react-aria/utils": "^3.22.0", - "@react-stately/tabs": "^3.6.2", + "@react-aria/focus": "^3.16.0", + "@react-aria/i18n": "^3.10.0", + "@react-aria/selection": "^3.17.3", + "@react-aria/utils": "^3.23.0", + "@react-stately/tabs": "^3.6.3", "@react-types/shared": "^3.22.0", "@react-types/tabs": "^3.3.4", "@swc/helpers": "^0.5.0" @@ -6775,18 +6629,18 @@ } }, "node_modules/@react-aria/tag": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@react-aria/tag/-/tag-3.3.0.tgz", - "integrity": "sha512-mANJTcPyut98O4D3cAKaNEV6QFfoljZCDAgC+uJkV/Zn8cU4JOFeNLAyNoLRlPvYw+msqr6wUyPkWNERuO+1Uw==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@react-aria/tag/-/tag-3.3.1.tgz", + "integrity": "sha512-w7d8sVZqxTo8VFfeg2ixLp5kawtrcguGznVY4mt5aE6K8LMJOeNVDqNNfolfyia80VjOWjeX+RpVdVJRdrv/GQ==", "peer": true, "dependencies": { - "@react-aria/gridlist": "^3.7.2", - "@react-aria/i18n": "^3.9.0", - "@react-aria/interactions": "^3.20.0", - "@react-aria/label": "^3.7.3", - "@react-aria/selection": "^3.17.2", - "@react-aria/utils": "^3.22.0", - "@react-stately/list": "^3.10.1", + "@react-aria/gridlist": "^3.7.3", + "@react-aria/i18n": "^3.10.0", + "@react-aria/interactions": "^3.20.1", + "@react-aria/label": "^3.7.4", + "@react-aria/selection": "^3.17.3", + "@react-aria/utils": "^3.23.0", + "@react-stately/list": "^3.10.2", "@react-types/button": "^3.9.1", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" @@ -6797,15 +6651,15 @@ } }, "node_modules/@react-aria/textfield": { - "version": "3.13.0", - "resolved": "https://registry.npmjs.org/@react-aria/textfield/-/textfield-3.13.0.tgz", - "integrity": "sha512-sUlinDE+k/WhbskyqVOkuffuhiQpjgvp+iGRoralStVgb8Tcb+POxgAlw5jS4tNjdivCb3IjVJemUNJM7xsxxA==", + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/@react-aria/textfield/-/textfield-3.14.1.tgz", + "integrity": "sha512-UMepuYtDdCgrUF4dMphNxrUm23xOmR54aZD1pbp9cJyfioVkJN35BTXZVkD0D07gHLn4RhxKIZxBortQQrLB9g==", "peer": true, "dependencies": { - "@react-aria/focus": "^3.15.0", - "@react-aria/form": "^3.0.0", - "@react-aria/label": "^3.7.3", - "@react-aria/utils": "^3.22.0", + "@react-aria/focus": "^3.16.0", + "@react-aria/form": "^3.0.1", + "@react-aria/label": "^3.7.4", + "@react-aria/utils": "^3.23.0", "@react-stately/form": "^3.0.0", "@react-stately/utils": "^3.9.0", "@react-types/shared": "^3.22.0", @@ -6817,14 +6671,14 @@ } }, "node_modules/@react-aria/toggle": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/@react-aria/toggle/-/toggle-3.9.0.tgz", - "integrity": "sha512-2YMWYQUEmcoAXtrAE86QXBS9XlmJyV6IFRlMTBNaeLTdH3AmACExgsyU66Tt0sKl6LMDMI376ItMFqAz27BBdQ==", + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/@react-aria/toggle/-/toggle-3.10.0.tgz", + "integrity": "sha512-6cUf4V9TuG2J7AvXUdU/GspEPFCubUOID3mrselSe563RViy+mMZk0vUEOdyoNanDcEXl58W4dE3SGWxFn71vg==", "peer": true, "dependencies": { - "@react-aria/focus": "^3.15.0", - "@react-aria/interactions": "^3.20.0", - "@react-aria/utils": "^3.22.0", + "@react-aria/focus": "^3.16.0", + "@react-aria/interactions": "^3.20.1", + "@react-aria/utils": "^3.23.0", "@react-stately/toggle": "^3.7.0", "@react-types/checkbox": "^3.6.0", "@swc/helpers": "^0.5.0" @@ -6834,14 +6688,14 @@ } }, "node_modules/@react-aria/tooltip": { - "version": "3.6.5", - "resolved": "https://registry.npmjs.org/@react-aria/tooltip/-/tooltip-3.6.5.tgz", - "integrity": "sha512-hXw4Z8nYLOWz3QOQ807wWZdvDwR3gofsmZhAehg2HPRwdRfCQK+1cjVKeUd9cKCAxs0Cay7dV0oUdilLbCQ2Gg==", + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@react-aria/tooltip/-/tooltip-3.7.0.tgz", + "integrity": "sha512-+u9Sftkfe09IDyPEnbbreFKS50vh9X/WTa7n1u2y3PenI9VreLpUR6czyzda4BlvQ95e9jQz1cVxUjxTNaZmBw==", "peer": true, "dependencies": { - "@react-aria/focus": "^3.15.0", - "@react-aria/interactions": "^3.20.0", - "@react-aria/utils": "^3.22.0", + "@react-aria/focus": "^3.16.0", + "@react-aria/interactions": "^3.20.1", + "@react-aria/utils": "^3.23.0", "@react-stately/tooltip": "^3.4.6", "@react-types/shared": "^3.22.0", "@react-types/tooltip": "^3.4.6", @@ -6852,38 +6706,29 @@ } }, "node_modules/@react-aria/utils": { - "version": "3.22.0", - "resolved": "https://registry.npmjs.org/@react-aria/utils/-/utils-3.22.0.tgz", - "integrity": "sha512-Qi/m65GFFljXA/ayj1m5g3KZdgbZY3jacSSqD5vNUOEGiKsn4OQcsw8RfC2c0SgtLV1hLzsfvFI1OiryPlGCcw==", + "version": "3.23.0", + "resolved": "https://registry.npmjs.org/@react-aria/utils/-/utils-3.23.0.tgz", + "integrity": "sha512-fJA63/VU4iQNT8WUvrmll3kvToqMurD69CcgVmbQ56V7ZbvlzFi44E7BpnoaofScYLLtFWRjVdaHsohT6O/big==", "peer": true, "dependencies": { - "@react-aria/ssr": "^3.9.0", + "@react-aria/ssr": "^3.9.1", "@react-stately/utils": "^3.9.0", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0", - "clsx": "^1.1.1" + "clsx": "^2.0.0" }, "peerDependencies": { "react": "^16.8.0 || ^17.0.0-rc.1 || ^18.0.0" } }, - "node_modules/@react-aria/utils/node_modules/clsx": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", - "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", - "peer": true, - "engines": { - "node": ">=6" - } - }, "node_modules/@react-aria/visually-hidden": { - "version": "3.8.7", - "resolved": "https://registry.npmjs.org/@react-aria/visually-hidden/-/visually-hidden-3.8.7.tgz", - "integrity": "sha512-OuIGMVQIt7GC43h4x35BgkZid8lhoPu7Xz4TQRP8nvOJWb1lH7ehrRRuGdUsK3y90nwpxTdNdg4DILblg+VaLw==", + "version": "3.8.8", + "resolved": "https://registry.npmjs.org/@react-aria/visually-hidden/-/visually-hidden-3.8.8.tgz", + "integrity": "sha512-Cn2PYKD4ijGDtF0+dvsh8qa4y7KTNAlkTG6h20r8Q+6UTyRNmtE2/26QEaApRF8CBiNy9/BZC/ZC4FK2OjvCoA==", "peer": true, "dependencies": { - "@react-aria/interactions": "^3.20.0", - "@react-aria/utils": "^3.22.0", + "@react-aria/interactions": "^3.20.1", + "@react-aria/utils": "^3.23.0", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" }, @@ -6892,9 +6737,9 @@ } }, "node_modules/@react-email/render": { - "version": "0.0.11", - "resolved": "https://registry.npmjs.org/@react-email/render/-/render-0.0.11.tgz", - "integrity": "sha512-Ec4vLkVbxoQhThBK1H++FdO4NgCeucg57qmwQ8A9xbozA2hWJiT2jJb5IA/bLE0YdixK8BeucXghJp84YZIG7A==", + "version": "0.0.12", + "resolved": "https://registry.npmjs.org/@react-email/render/-/render-0.0.12.tgz", + "integrity": "sha512-S8WRv/PqECEi6x0QJBj0asnAb5GFtJaHlnByxLETLkgJjc76cxMYDH4r9wdbuJ4sjkcbpwP3LPnVzwS+aIjT7g==", "dependencies": { "html-to-text": "9.0.5", "js-beautify": "^1.14.11", @@ -6914,14 +6759,14 @@ } }, "node_modules/@react-stately/calendar": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@react-stately/calendar/-/calendar-3.4.2.tgz", - "integrity": "sha512-RfH40rVa2EhUnQgqH3HTZL+YhL+6tZ8T9GbN1K3AbIM5BBEtkb3P8qGhcaI7WpwNy1rlRFFFXGcqFAMUncDg2Q==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@react-stately/calendar/-/calendar-3.4.3.tgz", + "integrity": "sha512-OrEcdskszDjnjVnFuSiDC2PVBJ6lWMCJROD5s6W1LUehUtBp8LX9wPavAGHV43LbhN9ldj560sxaQ4WCddrRCA==", "peer": true, "dependencies": { - "@internationalized/date": "^3.5.0", + "@internationalized/date": "^3.5.1", "@react-stately/utils": "^3.9.0", - "@react-types/calendar": "^3.4.2", + "@react-types/calendar": "^3.4.3", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" }, @@ -6930,9 +6775,9 @@ } }, "node_modules/@react-stately/checkbox": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@react-stately/checkbox/-/checkbox-3.6.0.tgz", - "integrity": "sha512-e1ChMwGovcOEDcdizqXDT6eDZixIMiPQOzNV5wPQ91SlGaIry9b0lQnK18tHg3yv2iiS6Ipj96cGBUKLJqQ+cQ==", + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/@react-stately/checkbox/-/checkbox-3.6.1.tgz", + "integrity": "sha512-rOjFeVBy32edYwhKiHj3ZLdLeO+xZ2fnBwxnOBjcygnw4Neygm8FJH/dB1J0hdYYR349yby86ED2x0wRc84zPw==", "peer": true, "dependencies": { "@react-stately/form": "^3.0.0", @@ -6958,18 +6803,18 @@ } }, "node_modules/@react-stately/combobox": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/@react-stately/combobox/-/combobox-3.8.0.tgz", - "integrity": "sha512-F74Avf7+8ruRqEB+3Lh6/C5jXc3ESJbRf9ovUxhmNAzBGeFKesPn5HpEpo87C+3OukGb+/Buvi3Rhib9+HVBKA==", + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/@react-stately/combobox/-/combobox-3.8.1.tgz", + "integrity": "sha512-FaWkqTXQdWg7ptaeU4iPcqF/kxbRg2ZNUcvW/hiL/enciV5tRCsddvfNqvDvy1L30z9AUwlp9MWqzm/DhBITCw==", "peer": true, "dependencies": { - "@react-stately/collections": "^3.10.3", + "@react-stately/collections": "^3.10.4", "@react-stately/form": "^3.0.0", - "@react-stately/list": "^3.10.1", - "@react-stately/menu": "^3.5.7", - "@react-stately/select": "^3.6.0", + "@react-stately/list": "^3.10.2", + "@react-stately/overlays": "^3.6.4", + "@react-stately/select": "^3.6.1", "@react-stately/utils": "^3.9.0", - "@react-types/combobox": "^3.9.0", + "@react-types/combobox": "^3.10.0", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" }, @@ -6991,17 +6836,17 @@ } }, "node_modules/@react-stately/datepicker": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/@react-stately/datepicker/-/datepicker-3.9.0.tgz", - "integrity": "sha512-p6BuxPbDxjIgBZmskdv2dR6XIdPEftCjS7kYe/+iLZxfz1vYiDqpJVb3ascLyBjl84bDDyr4z2vWcKhdDwyhEA==", + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/@react-stately/datepicker/-/datepicker-3.9.1.tgz", + "integrity": "sha512-o5xLvlZGJyAbTev2yruGlV2fzQyIDuYTgL19TTt0W0WCfjGGr/AAA9GjGXXmyoRA7sZMxqIPnnv7lNrdA38ofA==", "peer": true, "dependencies": { - "@internationalized/date": "^3.5.0", - "@internationalized/string": "^3.1.1", + "@internationalized/date": "^3.5.1", + "@internationalized/string": "^3.2.0", "@react-stately/form": "^3.0.0", "@react-stately/overlays": "^3.6.4", "@react-stately/utils": "^3.9.0", - "@react-types/datepicker": "^3.7.0", + "@react-types/datepicker": "^3.7.1", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" }, @@ -7010,12 +6855,12 @@ } }, "node_modules/@react-stately/dnd": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/@react-stately/dnd/-/dnd-3.2.6.tgz", - "integrity": "sha512-ex3Pjn+9uIoqsBb9F4ZFJb3fB0YadN8uYBOEiBb9N4UXWyANibGUYJ2FvIbvq1nFDU7On7MW1J9e3vkGglX4FQ==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/@react-stately/dnd/-/dnd-3.2.7.tgz", + "integrity": "sha512-QqSCvE9Rhp+Mr8Mt/SrByze24BFX1cy7gmXbwoqAYgHNIx3gWCVdBLqxfpfgYIhZdF9H72EWS8lQkfkZla06Ng==", "peer": true, "dependencies": { - "@react-stately/selection": "^3.14.1", + "@react-stately/selection": "^3.14.2", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" }, @@ -7069,13 +6914,13 @@ } }, "node_modules/@react-stately/list": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/@react-stately/list/-/list-3.10.1.tgz", - "integrity": "sha512-iVarLMd7FmMT0H20dRWsFOHHX5+c4gK51AXP2BSr1VtDSfbL4dgaGgu7IaAMVc/rO0au1e1tPM2hutiIFvPcnA==", + "version": "3.10.2", + "resolved": "https://registry.npmjs.org/@react-stately/list/-/list-3.10.2.tgz", + "integrity": "sha512-INt+zofkIg2KN8B95xPi9pJG7ZFWAm30oIm/lCPBqM3K1Nm03/QaAbiQj2QeJcOsG3lb7oqI6D6iwTolwJkjIQ==", "peer": true, "dependencies": { - "@react-stately/collections": "^3.10.3", - "@react-stately/selection": "^3.14.1", + "@react-stately/collections": "^3.10.4", + "@react-stately/selection": "^3.14.2", "@react-stately/utils": "^3.9.0", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" @@ -7085,9 +6930,9 @@ } }, "node_modules/@react-stately/menu": { - "version": "3.5.7", - "resolved": "https://registry.npmjs.org/@react-stately/menu/-/menu-3.5.7.tgz", - "integrity": "sha512-bzTmAqzcMNatvyruWlvOdZSmMhz3+mkdxtqaZzYHq+DpR6ka57lIRj8dBnZWQGwV3RypMZfz+X6aIX4kruGVbw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@react-stately/menu/-/menu-3.6.0.tgz", + "integrity": "sha512-OB6CjNyfOkAuirqx1oTL8z8epS9WDzLyrXjmRnxdiCU9EgRXLGAQNECuO7VIpl58oDry8tgRJiJ8fn8FivWSQA==", "peer": true, "dependencies": { "@react-stately/overlays": "^3.6.4", @@ -7100,12 +6945,12 @@ } }, "node_modules/@react-stately/numberfield": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/@react-stately/numberfield/-/numberfield-3.7.0.tgz", - "integrity": "sha512-DOz4jL7T30KGUXpGh/z80aHf+DEOQfvCHVDfll+IU7p3sd+bbM5uj7JdwXpZgIYUK8KTf2N49sL6lq5uCoxh8w==", + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/@react-stately/numberfield/-/numberfield-3.8.0.tgz", + "integrity": "sha512-1XvB8tDOvZKcFnMM6qNLEaTVJcIc0jRFS/9jtS8MzalZvh8DbKi0Ucm1bGU7S5rkCx2QWqZ0rGOIm2h/RlcpkA==", "peer": true, "dependencies": { - "@internationalized/number": "^3.4.0", + "@internationalized/number": "^3.5.0", "@react-stately/form": "^3.0.0", "@react-stately/utils": "^3.9.0", "@react-types/numberfield": "^3.7.0", @@ -7130,14 +6975,14 @@ } }, "node_modules/@react-stately/radio": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/@react-stately/radio/-/radio-3.10.0.tgz", - "integrity": "sha512-d8IgZtUq/4vhE7YhyBVg1QdVoFS0caIcvPumXqtp/5vlDgpUsVy9jSeWtbk0H4FyUcmJlQhRcTylKB9THXY1YQ==", + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/@react-stately/radio/-/radio-3.10.1.tgz", + "integrity": "sha512-MsBYbcLCvjKsqTAKe43T681F2XwKMsS7PLG0eplZgWP9210AMY78GeY1XPYZKHPAau8XkbYiuJqbqTerIJ3DBw==", "peer": true, "dependencies": { "@react-stately/form": "^3.0.0", "@react-stately/utils": "^3.9.0", - "@react-types/radio": "^3.6.0", + "@react-types/radio": "^3.7.0", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" }, @@ -7160,15 +7005,15 @@ } }, "node_modules/@react-stately/select": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@react-stately/select/-/select-3.6.0.tgz", - "integrity": "sha512-GvSE4DXmcvdRNUc+ciPU7gedt7LfRO8FFFIzhB/bCQhUlK6/xihUPrGXayzqxLeTQKttMH323LuYFKfwpJRhsA==", + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/@react-stately/select/-/select-3.6.1.tgz", + "integrity": "sha512-e5ixtLiYLlFWM8z1msDqXWhflF9esIRfroptZsltMn1lt2iImUlDRlOTZlMtPQzUrDWoiHXRX88sSKUM/jXjQQ==", "peer": true, "dependencies": { "@react-stately/form": "^3.0.0", - "@react-stately/list": "^3.10.1", - "@react-stately/menu": "^3.5.7", - "@react-types/select": "^3.9.0", + "@react-stately/list": "^3.10.2", + "@react-stately/overlays": "^3.6.4", + "@react-types/select": "^3.9.1", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" }, @@ -7191,9 +7036,9 @@ } }, "node_modules/@react-stately/slider": { - "version": "3.4.5", - "resolved": "https://registry.npmjs.org/@react-stately/slider/-/slider-3.4.5.tgz", - "integrity": "sha512-lJPZC8seYbnZDqAlZm3/QC95I5iluG8ouwkPMmvtWCz1baayV/jJtfxA/74zR7Vcob9Fe7O57g8Edhz/hv9xOQ==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@react-stately/slider/-/slider-3.5.0.tgz", + "integrity": "sha512-dOVpIxb7XKuiRxgpHt1bUSlsklciFki100tKIyBPR+Okar9iC/CwLYROYgVfLkGe77jEBNkor9tDLjDGEWcc1w==", "peer": true, "dependencies": { "@react-stately/utils": "^3.9.0", @@ -7225,12 +7070,12 @@ } }, "node_modules/@react-stately/tabs": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/@react-stately/tabs/-/tabs-3.6.2.tgz", - "integrity": "sha512-f+U4D1FAVfVVcNRbtKIv4GrO37CLFClYQlXx9zIuSXjHsviapVD2IQSyAmpKo/CbgXhYRMdGwENZdOsmF/Ns7g==", + "version": "3.6.3", + "resolved": "https://registry.npmjs.org/@react-stately/tabs/-/tabs-3.6.3.tgz", + "integrity": "sha512-Nj+Gacwa2SIzYIvHW40GsyX4Q6c8kF7GOuXESeQswbCjnwqhrSbDBp+ngPcUPUJxqFh6JhDCVwAS3wMhUoyUwA==", "peer": true, "dependencies": { - "@react-stately/list": "^3.10.1", + "@react-stately/list": "^3.10.2", "@react-types/shared": "^3.22.0", "@react-types/tabs": "^3.3.4", "@swc/helpers": "^0.5.0" @@ -7268,13 +7113,13 @@ } }, "node_modules/@react-stately/tree": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@react-stately/tree/-/tree-3.7.4.tgz", - "integrity": "sha512-0yvVODBS8WnSivLFX5ccEjCl2NA/8lbEt1E48wVcY1xcXgISNpw5MSGK5jC6YrtJPIqVolQIkNSbMreXGBktIg==", + "version": "3.7.5", + "resolved": "https://registry.npmjs.org/@react-stately/tree/-/tree-3.7.5.tgz", + "integrity": "sha512-xTJVwvhAeY0N5rui4N/TxN7f8hjXdqApDuGDxMZeFAWoQz8Abf7LFKBVQ3OkT6qVr7P+23dgoisUDBhD5a45Hg==", "peer": true, "dependencies": { - "@react-stately/collections": "^3.10.3", - "@react-stately/selection": "^3.14.1", + "@react-stately/collections": "^3.10.4", + "@react-stately/selection": "^3.14.2", "@react-stately/utils": "^3.9.0", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" @@ -7295,12 +7140,12 @@ } }, "node_modules/@react-stately/virtualizer": { - "version": "3.6.5", - "resolved": "https://registry.npmjs.org/@react-stately/virtualizer/-/virtualizer-3.6.5.tgz", - "integrity": "sha512-v0cZeNCGPMeo3LP4UrGuDo3Xpq7ufNaZyGObgSvdrIW49qK5F02kczcKy6NKg+QfOgC/+Nc9Tof/2S8dcxDrCA==", + "version": "3.6.6", + "resolved": "https://registry.npmjs.org/@react-stately/virtualizer/-/virtualizer-3.6.6.tgz", + "integrity": "sha512-9hWvfITdE/028q4YFve6FxlmA3PdSMkUwpYA+vfaGCXI/4DFZIssBMspUeu4PTRJoV+k+m0z1wYHPmufrq6a3g==", "peer": true, "dependencies": { - "@react-aria/utils": "^3.22.0", + "@react-aria/utils": "^3.23.0", "@react-types/shared": "^3.22.0", "@swc/helpers": "^0.5.0" }, @@ -7334,12 +7179,12 @@ } }, "node_modules/@react-types/calendar": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/@react-types/calendar/-/calendar-3.4.2.tgz", - "integrity": "sha512-tCZ21un/8OAhpNtmSXDkOVvS5Pzp+y/JwNr6VGFi8HBC5F/c8SzuwV0jKN8ymsZSWbDQ68xXGNWxFaG43Bw8Pg==", + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@react-types/calendar/-/calendar-3.4.3.tgz", + "integrity": "sha512-96x57ctX5wNEl+8et3sc2NQm8neOJayEeqOQQpyPtI7jyvst/xBrKCwysf9W/dhgPlUC+KeBAYFWfjd5hFVHYA==", "peer": true, "dependencies": { - "@internationalized/date": "^3.5.0", + "@internationalized/date": "^3.5.1", "@react-types/shared": "^3.22.0" }, "peerDependencies": { @@ -7359,9 +7204,9 @@ } }, "node_modules/@react-types/combobox": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/@react-types/combobox/-/combobox-3.9.0.tgz", - "integrity": "sha512-VAQWM2jrIWROgcTKxj4k37WWpK/1zRjj1HfGeuenAQyOQwImqDwCHx5YxQR1GiUEFne4v1yXe2khT0T5Kt2vDg==", + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/@react-types/combobox/-/combobox-3.10.0.tgz", + "integrity": "sha512-1IXSNS02TPbguyYopaW2snU6sZusbClHrEyVr4zPeexTV4kpUUBNXOzFQ+eSQRR0r2XW57Z0yRW4GJ6FGU0yCA==", "peer": true, "dependencies": { "@react-types/shared": "^3.22.0" @@ -7371,13 +7216,13 @@ } }, "node_modules/@react-types/datepicker": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/@react-types/datepicker/-/datepicker-3.7.0.tgz", - "integrity": "sha512-Uh+p6pZpMFc5ZBOns5TXCBbUvJp1KVROLBn2gk5dMEFVq78Qs1VFuAt4lwr9gQBOJrX5I/l65pRTwwWwAKxYtQ==", + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/@react-types/datepicker/-/datepicker-3.7.1.tgz", + "integrity": "sha512-5juVDULOytNzkotqX8j5mYKJckeIpkgbHqVSGkPgLw0++FceIaSZ6RH56cqLup0pO45paqIt9zHh+QXBYX+syg==", "peer": true, "dependencies": { - "@internationalized/date": "^3.5.0", - "@react-types/calendar": "^3.4.2", + "@internationalized/date": "^3.5.1", + "@react-types/calendar": "^3.4.3", "@react-types/overlays": "^3.8.4", "@react-types/shared": "^3.22.0" }, @@ -7495,9 +7340,9 @@ } }, "node_modules/@react-types/radio": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@react-types/radio/-/radio-3.6.0.tgz", - "integrity": "sha512-VOZzegxxZS55gHRVyWu278Q4y/rEQGiAVQCUqi25GmpbMe4MlHrzg16c76RiZMUK9PPoyv+XNUgAaPmxebkn7g==", + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@react-types/radio/-/radio-3.7.0.tgz", + "integrity": "sha512-EcwGAXzSHjSqpFZha7xn3IUrhPiJLj+0yb1Ip0qPmhWz0VVw2DwrkY7q/jfaKroVvQhTo2TbfGhcsAQrt0fRqg==", "peer": true, "dependencies": { "@react-types/shared": "^3.22.0" @@ -7520,9 +7365,9 @@ } }, "node_modules/@react-types/select": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/@react-types/select/-/select-3.9.0.tgz", - "integrity": "sha512-0nalGmcoma4jreICLSJae/uKAuMiVyWgqWjGrGiUGGcdDchH4limKVEqNDaBwLvxVT6NB5LLsaipCTCAEEl4Rg==", + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/@react-types/select/-/select-3.9.1.tgz", + "integrity": "sha512-EpKSxrnh8HdZvOF9dHQkjivAcdIp1K81FaxmvosH8Lygqh0iYXxAdZGtKLMyBoPI8YFhA+rotIzTcOqgCCnqWA==", "peer": true, "dependencies": { "@react-types/shared": "^3.22.0" @@ -7658,20 +7503,29 @@ } }, "node_modules/@rushstack/eslint-patch": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.6.0.tgz", - "integrity": "sha512-2/U3GXA6YiPYQDLGwtGlnNgKYBSwCFIHf8Y9LUY5VATHdtbLlU0Y1R3QoBnT0aB4qv/BEiVVsj7LJXoQCgJ2vA==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.7.0.tgz", + "integrity": "sha512-Jh4t/593gxs0lJZ/z3NnasKlplXT2f+4y/LZYuaKZW5KAaiVFL/fThhs+17EbUd53jUVJ0QudYCBGbN/psvaqg==", "dev": true }, "node_modules/@safe-global/safe-apps-provider": { - "version": "0.18.1", - "resolved": "https://registry.npmjs.org/@safe-global/safe-apps-provider/-/safe-apps-provider-0.18.1.tgz", - "integrity": "sha512-V4a05A3EgJcriqtDoJklDz1BOinWhC6P0hjUSxshA4KOZM7rGPCTto/usXs09zr1vvL28evl/NldSTv97j2bmg==", + "version": "0.18.2", + "resolved": "https://registry.npmjs.org/@safe-global/safe-apps-provider/-/safe-apps-provider-0.18.2.tgz", + "integrity": "sha512-yHHAcppwE7aIUWEeZiYAClQzZCdP5l0Kbd0CBlhKAsTcqZnx4Gh3G3G3frY5LlWcGzp9qmQ5jv+J1GBpaZLDgw==", "dependencies": { - "@safe-global/safe-apps-sdk": "^8.1.0", + "@safe-global/safe-apps-sdk": "^9.0.0", "events": "^3.3.0" } }, + "node_modules/@safe-global/safe-apps-provider/node_modules/@safe-global/safe-apps-sdk": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@safe-global/safe-apps-sdk/-/safe-apps-sdk-9.0.0.tgz", + "integrity": "sha512-fEqmQBU3JqTjORSl3XYrcaxdxkUqeeM39qsQjqCzzTHioN8DEfg3JCLq6EBoXzcKTVOYi8SPzLV7KJccdDw+4w==", + "dependencies": { + "@safe-global/safe-gateway-typescript-sdk": "^3.5.3", + "viem": "^1.6.0" + } + }, "node_modules/@safe-global/safe-apps-sdk": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/@safe-global/safe-apps-sdk/-/safe-apps-sdk-8.1.0.tgz", @@ -7682,9 +7536,9 @@ } }, "node_modules/@safe-global/safe-gateway-typescript-sdk": { - "version": "3.13.3", - "resolved": "https://registry.npmjs.org/@safe-global/safe-gateway-typescript-sdk/-/safe-gateway-typescript-sdk-3.13.3.tgz", - "integrity": "sha512-qBDM469cVCedpBpeTSn+k5FUr9+rq5bMTflp/mKd7h35uafcexvOR/PHZn2qftqV8b1kc9b8t22cPRJ2365jew==", + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/@safe-global/safe-gateway-typescript-sdk/-/safe-gateway-typescript-sdk-3.14.0.tgz", + "integrity": "sha512-/dqU66RvHw50n+7x3nwnJedq8V6iLQyoWitNdjx5cFTBmae+rpP+LvHq+LqZfXJVkB1qNytMdjFjdyES0t79gQ==", "engines": { "node": ">=16" } @@ -7735,51 +7589,65 @@ } }, "node_modules/@sentry-internal/feedback": { - "version": "7.93.0", - "resolved": "https://registry.npmjs.org/@sentry-internal/feedback/-/feedback-7.93.0.tgz", - "integrity": "sha512-4G7rMeQbYGfCHxEoFroABX+UREYc2BSbFqjLmLbIcWowSpgzcwweLLphWHKOciqK6f7DnNDK0jZzx3u7NrkWHw==", + "version": "7.94.1", + "resolved": "https://registry.npmjs.org/@sentry-internal/feedback/-/feedback-7.94.1.tgz", + "integrity": "sha512-NlJn/TEX1MOPfY4bb6FU0Equ6YuaewZ+lIAqYt3HuEoYI7nYApeRGaPuVLkkezN0cmI7oU/+pJ7v83PtYXCFZw==", + "dependencies": { + "@sentry/core": "7.94.1", + "@sentry/types": "7.94.1", + "@sentry/utils": "7.94.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@sentry-internal/replay-canvas": { + "version": "7.94.1", + "resolved": "https://registry.npmjs.org/@sentry-internal/replay-canvas/-/replay-canvas-7.94.1.tgz", + "integrity": "sha512-kCFxdIJTbo2z8wnAQ3IqNVI8y2lSOtaSSZeBgeqiertro8Pe/DS8AXUnhXnAQkluM2i2koA+AgUo6/4bUeZXuQ==", "dependencies": { - "@sentry/core": "7.93.0", - "@sentry/types": "7.93.0", - "@sentry/utils": "7.93.0" + "@sentry/core": "7.94.1", + "@sentry/replay": "7.94.1", + "@sentry/types": "7.94.1" }, "engines": { "node": ">=12" } }, "node_modules/@sentry-internal/tracing": { - "version": "7.93.0", - "resolved": "https://registry.npmjs.org/@sentry-internal/tracing/-/tracing-7.93.0.tgz", - "integrity": "sha512-DjuhmQNywPp+8fxC9dvhGrqgsUb6wI/HQp25lS2Re7VxL1swCasvpkg8EOYP4iBniVQ86QK0uITkOIRc5tdY1w==", + "version": "7.94.1", + "resolved": "https://registry.npmjs.org/@sentry-internal/tracing/-/tracing-7.94.1.tgz", + "integrity": "sha512-znxCdrz7tPXm9Bwoe46PW72Zr0Iv7bXT6+b2LNg5fxWiCQVBbQFrMuVvtXEmHxeRRJVEgTh/4TdulB7wrtQIUQ==", "dependencies": { - "@sentry/core": "7.93.0", - "@sentry/types": "7.93.0", - "@sentry/utils": "7.93.0" + "@sentry/core": "7.94.1", + "@sentry/types": "7.94.1", + "@sentry/utils": "7.94.1" }, "engines": { "node": ">=8" } }, "node_modules/@sentry/browser": { - "version": "7.93.0", - "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-7.93.0.tgz", - "integrity": "sha512-MtLTcQ7y3rfk+aIvnnwCfSJvYhTJnIJi+Mf6y/ap6SKObdlsKMbQoJLlRViglGLq+nKxHLAvU0fONiCEmKfV6A==", + "version": "7.94.1", + "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-7.94.1.tgz", + "integrity": "sha512-IUR8B/AEPEzLijZ4Uo5qJsgmIBnCudBqAWd3zAiuk3TWYYOQUEvleddFxffN3n6pFhGx3ArksB+AIQBruttLGA==", "dependencies": { - "@sentry-internal/feedback": "7.93.0", - "@sentry-internal/tracing": "7.93.0", - "@sentry/core": "7.93.0", - "@sentry/replay": "7.93.0", - "@sentry/types": "7.93.0", - "@sentry/utils": "7.93.0" + "@sentry-internal/feedback": "7.94.1", + "@sentry-internal/replay-canvas": "7.94.1", + "@sentry-internal/tracing": "7.94.1", + "@sentry/core": "7.94.1", + "@sentry/replay": "7.94.1", + "@sentry/types": "7.94.1", + "@sentry/utils": "7.94.1" }, "engines": { "node": ">=8" } }, "node_modules/@sentry/cli": { - "version": "1.77.1", - "resolved": "https://registry.npmjs.org/@sentry/cli/-/cli-1.77.1.tgz", - "integrity": "sha512-OtJ7U9LeuPUAY/xow9wwcjM9w42IJIpDtClTKI/RliE685vd/OJUIpiAvebHNthDYpQynvwb/0iuF4fonh+CKw==", + "version": "1.77.3", + "resolved": "https://registry.npmjs.org/@sentry/cli/-/cli-1.77.3.tgz", + "integrity": "sha512-c3eDqcDRmy4TFz2bFU5Y6QatlpoBPPa8cxBooaS4aMQpnIdLYPF1xhyyiW0LQlDUNc3rRjNF7oN5qKoaRoMTQQ==", "hasInstallScript": true, "dependencies": { "https-proxy-agent": "^5.0.0", @@ -7797,25 +7665,25 @@ } }, "node_modules/@sentry/core": { - "version": "7.93.0", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.93.0.tgz", - "integrity": "sha512-vZQSUiDn73n+yu2fEcH+Wpm4GbRmtxmnXnYCPgM6IjnXqkVm3awWAkzrheADblx3kmxrRiOlTXYHw9NTWs56fg==", + "version": "7.94.1", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.94.1.tgz", + "integrity": "sha512-4sjiMnkbGpv9O98YHVZe7fHNwwdYl+zLoCOoEOadtrJ1EYYvnK/MSixN2HJF7g/0s22xd4xY958QyNIRVR+Iiw==", "dependencies": { - "@sentry/types": "7.93.0", - "@sentry/utils": "7.93.0" + "@sentry/types": "7.94.1", + "@sentry/utils": "7.94.1" }, "engines": { "node": ">=8" } }, "node_modules/@sentry/integrations": { - "version": "7.93.0", - "resolved": "https://registry.npmjs.org/@sentry/integrations/-/integrations-7.93.0.tgz", - "integrity": "sha512-uGQ8+DiqUr6SbhdJJHyIqDJ6kHnFuSv8nZWtj2tJ1I8q8u8MX8t8Om6R/R4ap45gCkWg/zqZq7B+gQV6TYewjQ==", + "version": "7.94.1", + "resolved": "https://registry.npmjs.org/@sentry/integrations/-/integrations-7.94.1.tgz", + "integrity": "sha512-Fw7OxLlGkrVAVO9WtBJezrb5IxxItCTuefv2IfKku+A5EhHtH1AhXYjQynmt0TLLYIUlyBWiatpOngBzS2wSxw==", "dependencies": { - "@sentry/core": "7.93.0", - "@sentry/types": "7.93.0", - "@sentry/utils": "7.93.0", + "@sentry/core": "7.94.1", + "@sentry/types": "7.94.1", + "@sentry/utils": "7.94.1", "localforage": "^1.8.1" }, "engines": { @@ -7823,18 +7691,18 @@ } }, "node_modules/@sentry/nextjs": { - "version": "7.93.0", - "resolved": "https://registry.npmjs.org/@sentry/nextjs/-/nextjs-7.93.0.tgz", - "integrity": "sha512-/O4Xl+hMSEM6/sVfmKXCZhLUUGNJbi+L0tasTiw4wB4EQQeMDKf4cBfx8e4mNBMzhA2SZnfQZAwJGqhvFJniPQ==", + "version": "7.94.1", + "resolved": "https://registry.npmjs.org/@sentry/nextjs/-/nextjs-7.94.1.tgz", + "integrity": "sha512-OOQP/UW82NHnICsUxiVe3tAVfDdvzipxw8F2tZEpqR5Dq6CQ5EGNHMfuGln6wIQFpIdTuLgNwZBRFttHEJ4y8w==", "dependencies": { "@rollup/plugin-commonjs": "24.0.0", - "@sentry/core": "7.93.0", - "@sentry/integrations": "7.93.0", - "@sentry/node": "7.93.0", - "@sentry/react": "7.93.0", - "@sentry/types": "7.93.0", - "@sentry/utils": "7.93.0", - "@sentry/vercel-edge": "7.93.0", + "@sentry/core": "7.94.1", + "@sentry/integrations": "7.94.1", + "@sentry/node": "7.94.1", + "@sentry/react": "7.94.1", + "@sentry/types": "7.94.1", + "@sentry/utils": "7.94.1", + "@sentry/vercel-edge": "7.94.1", "@sentry/webpack-plugin": "1.21.0", "chalk": "3.0.0", "resolve": "1.22.8", @@ -7856,29 +7724,28 @@ } }, "node_modules/@sentry/node": { - "version": "7.93.0", - "resolved": "https://registry.npmjs.org/@sentry/node/-/node-7.93.0.tgz", - "integrity": "sha512-nUXPCZQm5Y9Ipv7iWXLNp5dbuyi1VvbJ3RtlwD7utgsNkRYB4ixtKE9w2QU8DZZAjaEF6w2X94OkYH6C932FWw==", + "version": "7.94.1", + "resolved": "https://registry.npmjs.org/@sentry/node/-/node-7.94.1.tgz", + "integrity": "sha512-30nyrfVbY1vNoWg5ptGW+soykU532VvKLuXiKty3SKEXjp5bv23JrCcVtuwp9KrW4josHOJbxZUqeNni85YplQ==", "dependencies": { - "@sentry-internal/tracing": "7.93.0", - "@sentry/core": "7.93.0", - "@sentry/types": "7.93.0", - "@sentry/utils": "7.93.0", - "https-proxy-agent": "^5.0.0" + "@sentry-internal/tracing": "7.94.1", + "@sentry/core": "7.94.1", + "@sentry/types": "7.94.1", + "@sentry/utils": "7.94.1" }, "engines": { "node": ">=8" } }, "node_modules/@sentry/react": { - "version": "7.93.0", - "resolved": "https://registry.npmjs.org/@sentry/react/-/react-7.93.0.tgz", - "integrity": "sha512-B0bzziV1lEyN7xd0orUPyJdpoK6CtcyodmQkfY0WsHLm/1d9xi95M05lObHnsMWO1js6c9B9d9kO8RlKFz947A==", - "dependencies": { - "@sentry/browser": "7.93.0", - "@sentry/core": "7.93.0", - "@sentry/types": "7.93.0", - "@sentry/utils": "7.93.0", + "version": "7.94.1", + "resolved": "https://registry.npmjs.org/@sentry/react/-/react-7.94.1.tgz", + "integrity": "sha512-7uzmsssy4Y/syIxVDrSWBWoukSsqR+/BqUO98A78NCWZsG9gxDXvD+l7D/o1u6TVkZo6i1z0NNybb1CtB73hug==", + "dependencies": { + "@sentry/browser": "7.94.1", + "@sentry/core": "7.94.1", + "@sentry/types": "7.94.1", + "@sentry/utils": "7.94.1", "hoist-non-react-statics": "^3.3.2" }, "engines": { @@ -7889,47 +7756,47 @@ } }, "node_modules/@sentry/replay": { - "version": "7.93.0", - "resolved": "https://registry.npmjs.org/@sentry/replay/-/replay-7.93.0.tgz", - "integrity": "sha512-dMlLU8v+OkUeGCrPvTu5NriH7BGj3el4rGHWWAYicfJ2QXqTTq50vfasQBP1JeVNcFqnf1y653TdEIvo4RH4tw==", + "version": "7.94.1", + "resolved": "https://registry.npmjs.org/@sentry/replay/-/replay-7.94.1.tgz", + "integrity": "sha512-4wf3CZ1LR2Neh9IiZD0rY8AORS5Dc5HlKfMug026f8KM2aeoDyneM2JFBnPT/ulRnbD2gNciV+kdZiRd5K5jiw==", "dependencies": { - "@sentry-internal/tracing": "7.93.0", - "@sentry/core": "7.93.0", - "@sentry/types": "7.93.0", - "@sentry/utils": "7.93.0" + "@sentry-internal/tracing": "7.94.1", + "@sentry/core": "7.94.1", + "@sentry/types": "7.94.1", + "@sentry/utils": "7.94.1" }, "engines": { "node": ">=12" } }, "node_modules/@sentry/types": { - "version": "7.93.0", - "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.93.0.tgz", - "integrity": "sha512-UnzUccNakhFRA/esWBWP+0v7cjNg+RilFBQC03Mv9OEMaZaS29zSbcOGtRzuFOXXLBdbr44BWADqpz3VW0XaNw==", + "version": "7.94.1", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.94.1.tgz", + "integrity": "sha512-A7CdEXFSgGyWv2BT2p9cAvJfb+dypvOtsY8ZvZvdPLUa7kqCV7ndhURUqKjvMBzsL2GParHn3ehDTl2eVc7pvA==", "engines": { "node": ">=8" } }, "node_modules/@sentry/utils": { - "version": "7.93.0", - "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.93.0.tgz", - "integrity": "sha512-Iovj7tUnbgSkh/WrAaMrd5UuYjW7AzyzZlFDIUrwidsyIdUficjCG2OIxYzh76H6nYIx9SxewW0R54Q6XoB4uA==", + "version": "7.94.1", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.94.1.tgz", + "integrity": "sha512-gQ2EaMpUU1gGH3S+iqpog9gkXbCo8tlhGYA9a5FUtEtER3D3OAlp8dGFwClwzWDAwzjdLT1+X55zmEptU1cP/A==", "dependencies": { - "@sentry/types": "7.93.0" + "@sentry/types": "7.94.1" }, "engines": { "node": ">=8" } }, "node_modules/@sentry/vercel-edge": { - "version": "7.93.0", - "resolved": "https://registry.npmjs.org/@sentry/vercel-edge/-/vercel-edge-7.93.0.tgz", - "integrity": "sha512-3jddd6gVUpGX8Sis9gxODL7zPR+lZohYYvOJVhf8UMglZSiWa3/xYJQ5VISj3UH6sVSxvfMxgssmQEHcvuubHQ==", + "version": "7.94.1", + "resolved": "https://registry.npmjs.org/@sentry/vercel-edge/-/vercel-edge-7.94.1.tgz", + "integrity": "sha512-W+ICIbDuky/Oj0IB17PtBBBj89XGS9a/tiH0Ldoy9peem3Ug4ucgfPxkdjF28hhmY1dA8rDp+aGRCv51/Ydcbg==", "dependencies": { - "@sentry-internal/tracing": "7.93.0", - "@sentry/core": "7.93.0", - "@sentry/types": "7.93.0", - "@sentry/utils": "7.93.0" + "@sentry-internal/tracing": "7.94.1", + "@sentry/core": "7.94.1", + "@sentry/types": "7.94.1", + "@sentry/utils": "7.94.1" }, "engines": { "node": ">=8" @@ -7974,9 +7841,9 @@ } }, "node_modules/@sinonjs/commons": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz", - "integrity": "sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", + "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", "dev": true, "dependencies": { "type-detect": "4.0.8" @@ -7992,9 +7859,9 @@ } }, "node_modules/@skip-router/core": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@skip-router/core/-/core-1.2.3.tgz", - "integrity": "sha512-byH0lsex+9P3kGavqNxqaLuASeAX4objs/EEsNUGNGMr+7YpwxPrXlgvJ8Xk6u+XmBQplpgsYGh/EjfIZnqHSg==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@skip-router/core/-/core-1.2.7.tgz", + "integrity": "sha512-Zbz7wH57yJPU2hJ3DICnCDDxFYYqWq9aF4yCTAOTMdOA6HPx6EJqiO2xAaSsN6OwtkTazNqUCkZ0MS41r0Kyjw==", "dependencies": { "@axelar-network/axelarjs-sdk": "^0.13.6", "@cosmjs/amino": "^0.31.1", @@ -8007,39 +7874,78 @@ "@injectivelabs/core-proto-ts": "^0.0.18", "@injectivelabs/sdk-ts": "^1.12.1", "axios": "^1.4.0", - "chain-registry": "^1.19.0", + "chain-registry": "^1.25.4", "cosmjs-types": "^0.8.0", "faker": "^6.6.6", "keccak256": "^1.0.6", "viem": "^1.12.2" } }, - "node_modules/@socket.io/component-emitter": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz", - "integrity": "sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==" - }, - "node_modules/@solana/buffer-layout": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@solana/buffer-layout/-/buffer-layout-4.0.1.tgz", - "integrity": "sha512-E1ImOIAD1tBZFRdjeM4/pzTiTApC0AOBGwyAMS4fwIodCWArzJ3DWdoh8cKxeFM2fElkxBh2Aqts1BPC373rHA==", + "node_modules/@skip-router/core/node_modules/@injectivelabs/core-proto-ts": { + "version": "0.0.18", + "resolved": "https://registry.npmjs.org/@injectivelabs/core-proto-ts/-/core-proto-ts-0.0.18.tgz", + "integrity": "sha512-WSZS7SQ+I/m8jdc7fhzkMTUhA7i5nVTeKbN6QGqKmOwQ/F+PqM75vDHD9Y9NbLPx9P+m7hyUzSHz4zmajth5jw==", "dependencies": { - "buffer": "~6.0.3" - }, - "engines": { - "node": ">=5.10" + "@injectivelabs/grpc-web": "^0.0.1", + "google-protobuf": "^3.14.0", + "protobufjs": "^7.0.0", + "rxjs": "^7.4.0" } }, - "node_modules/@solana/web3.js": { - "version": "1.87.6", - "resolved": "https://registry.npmjs.org/@solana/web3.js/-/web3.js-1.87.6.tgz", - "integrity": "sha512-LkqsEBgTZztFiccZZXnawWa8qNCATEqE97/d0vIwjTclmVlc8pBpD1DmjfVHtZ1HS5fZorFlVhXfpwnCNDZfyg==", + "node_modules/@skip-router/core/node_modules/long": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/long/-/long-5.2.3.tgz", + "integrity": "sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q==" + }, + "node_modules/@skip-router/core/node_modules/protobufjs": { + "version": "7.2.6", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.2.6.tgz", + "integrity": "sha512-dgJaEDDL6x8ASUZ1YqWciTRrdOuYNzoOf27oHNfdyvKqHr5i0FV7FSLU+aIeFjyFgVxrpTOtQUi0BLLBymZaBw==", + "hasInstallScript": true, "dependencies": { - "@babel/runtime": "^7.23.2", + "@protobufjs/aspromise": "^1.1.2", + "@protobufjs/base64": "^1.1.2", + "@protobufjs/codegen": "^2.0.4", + "@protobufjs/eventemitter": "^1.1.0", + "@protobufjs/fetch": "^1.1.0", + "@protobufjs/float": "^1.0.2", + "@protobufjs/inquire": "^1.1.0", + "@protobufjs/path": "^1.1.2", + "@protobufjs/pool": "^1.1.0", + "@protobufjs/utf8": "^1.1.0", + "@types/node": ">=13.7.0", + "long": "^5.0.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@socket.io/component-emitter": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz", + "integrity": "sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==" + }, + "node_modules/@solana/buffer-layout": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@solana/buffer-layout/-/buffer-layout-4.0.1.tgz", + "integrity": "sha512-E1ImOIAD1tBZFRdjeM4/pzTiTApC0AOBGwyAMS4fwIodCWArzJ3DWdoh8cKxeFM2fElkxBh2Aqts1BPC373rHA==", + "dependencies": { + "buffer": "~6.0.3" + }, + "engines": { + "node": ">=5.10" + } + }, + "node_modules/@solana/web3.js": { + "version": "1.89.1", + "resolved": "https://registry.npmjs.org/@solana/web3.js/-/web3.js-1.89.1.tgz", + "integrity": "sha512-t9TTLtPQxtQB3SAf/5E8xPXfVDsC6WGOsgKY02l2cbe0HLymT7ynE8Hu48Lk5qynHCquj6nhISfEHcjMkYpu/A==", + "dependencies": { + "@babel/runtime": "^7.23.4", "@noble/curves": "^1.2.0", - "@noble/hashes": "^1.3.1", - "@solana/buffer-layout": "^4.0.0", - "agentkeepalive": "^4.3.0", + "@noble/hashes": "^1.3.2", + "@solana/buffer-layout": "^4.0.1", + "agentkeepalive": "^4.5.0", "bigint-buffer": "^1.1.5", "bn.js": "^5.2.1", "borsh": "^0.7.0", @@ -8047,7 +7953,7 @@ "buffer": "6.0.3", "fast-stable-stringify": "^1.0.0", "jayson": "^4.1.0", - "node-fetch": "^2.6.12", + "node-fetch": "^2.7.0", "rpc-websockets": "^7.5.1", "superstruct": "^0.14.2" } @@ -8218,9 +8124,9 @@ } }, "node_modules/@tanstack/eslint-plugin-query": { - "version": "5.17.7", - "resolved": "https://registry.npmjs.org/@tanstack/eslint-plugin-query/-/eslint-plugin-query-5.17.7.tgz", - "integrity": "sha512-RpKZXIuplRrUZLqqh+jTM1yJP8/Ck21FpaSB5uGyc9LY8LNwxC8AwgaRAXVOZzKVeQMunnt3HrK83HME+7jnGw==", + "version": "5.17.20", + "resolved": "https://registry.npmjs.org/@tanstack/eslint-plugin-query/-/eslint-plugin-query-5.17.20.tgz", + "integrity": "sha512-Jxu/GV7JqDgI6HMP8wQqc5a8efe0GaXoc0qCI+YjVBWEaWh8+T+wF5Ywha44gVraaEGlqkEhYmZrykg6dUG3OA==", "dev": true, "dependencies": { "@typescript-eslint/utils": "^5.62.0" @@ -8234,20 +8140,20 @@ } }, "node_modules/@tanstack/query-core": { - "version": "4.36.1", - "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-4.36.1.tgz", - "integrity": "sha512-DJSilV5+ytBP1FbFcEJovv4rnnm/CokuVvrBEtW/Va9DvuJ3HksbXUJEpI0aV1KtuL4ZoO9AVE6PyNLzF7tLeA==", + "version": "5.17.19", + "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.17.19.tgz", + "integrity": "sha512-Lzw8FUtnLCc9Jwz0sw9xOjZB+/mCCmJev38v2wHMUl/ioXNIhnNWeMxu0NKUjIhAd62IRB3eAtvxAGDJ55UkyA==", "funding": { "type": "github", "url": "https://github.com/sponsors/tannerlinsley" } }, "node_modules/@tanstack/query-persist-client-core": { - "version": "4.36.1", - "resolved": "https://registry.npmjs.org/@tanstack/query-persist-client-core/-/query-persist-client-core-4.36.1.tgz", - "integrity": "sha512-eocgCeI7D7TRv1IUUBMfVwOI0wdSmMkBIbkKhqEdTrnUHUQEeOaYac8oeZk2cumAWJdycu6P/wB+WqGynTnzXg==", + "version": "5.17.19", + "resolved": "https://registry.npmjs.org/@tanstack/query-persist-client-core/-/query-persist-client-core-5.17.19.tgz", + "integrity": "sha512-gDpISmHOjzoLYvGRKtuWbh/lwfyKroqywfUUEab6weBSDJmYc9V1USNfJJpwA5tasSmI+ktCDX2jqt+7EwPSxw==", "dependencies": { - "@tanstack/query-core": "4.36.1" + "@tanstack/query-core": "5.17.19" }, "funding": { "type": "github", @@ -8255,33 +8161,12 @@ } }, "node_modules/@tanstack/query-sync-storage-persister": { - "version": "5.17.15", - "resolved": "https://registry.npmjs.org/@tanstack/query-sync-storage-persister/-/query-sync-storage-persister-5.17.15.tgz", - "integrity": "sha512-xWJrrIPJzkbDPrIakMuMqIoPAclx+4m+o4V7ahn7hBWYddqX3YNGmsxsH3GJIudJZ73rDiP+o0C30I6i7XpuXg==", + "version": "5.17.19", + "resolved": "https://registry.npmjs.org/@tanstack/query-sync-storage-persister/-/query-sync-storage-persister-5.17.19.tgz", + "integrity": "sha512-rGcKm6OOXF8o+tM2ZOgvb+cParxF3DDFmGEWiseZIRc3Ze2X5hGOxtkmtYfIlziY9G/O82xBXxWG1/v6ocBwsg==", "dependencies": { - "@tanstack/query-core": "5.17.15", - "@tanstack/query-persist-client-core": "5.17.15" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/tannerlinsley" - } - }, - "node_modules/@tanstack/query-sync-storage-persister/node_modules/@tanstack/query-core": { - "version": "5.17.15", - "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.17.15.tgz", - "integrity": "sha512-QURxpu77/ICA4d61aPvV7EcJ2MwmksxUejKBaq/xLcO2TUJAlXf4PFKHC/WxnVFI/7F1jeLx85AO3Vpk0+uBXw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/tannerlinsley" - } - }, - "node_modules/@tanstack/query-sync-storage-persister/node_modules/@tanstack/query-persist-client-core": { - "version": "5.17.15", - "resolved": "https://registry.npmjs.org/@tanstack/query-persist-client-core/-/query-persist-client-core-5.17.15.tgz", - "integrity": "sha512-u9wqfxwjIeNeuohCENztwTo2qkCEwMeFex2H5X7qpRWlbA2d9cMxeYizQ/7TW9GVyKIEqt653TGivkyviN1N7w==", - "dependencies": { - "@tanstack/query-core": "5.17.15" + "@tanstack/query-core": "5.17.19", + "@tanstack/query-persist-client-core": "5.17.19" }, "funding": { "type": "github", @@ -8289,11 +8174,11 @@ } }, "node_modules/@tanstack/react-query": { - "version": "5.17.15", - "resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.17.15.tgz", - "integrity": "sha512-9qur91mOihaUN7pXm6ioDtS+4qgkBcCiIaZyvi3lZNcQZsrMGCYZ+eP3hiFrV4khoJyJrFUX1W0NcCVlgwNZxQ==", + "version": "5.17.19", + "resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.17.19.tgz", + "integrity": "sha512-qaQENB6/03Gj3dFZGvdmUoqeUGlGm7P1p0RmaR04Bf1Ib1T9lLGimcC9T3oCFbrx0b2ZF21ngjFZNjj9uPJMcg==", "dependencies": { - "@tanstack/query-core": "5.17.15" + "@tanstack/query-core": "5.17.19" }, "funding": { "type": "github", @@ -8304,76 +8189,21 @@ } }, "node_modules/@tanstack/react-query-persist-client": { - "version": "5.17.15", - "resolved": "https://registry.npmjs.org/@tanstack/react-query-persist-client/-/react-query-persist-client-5.17.15.tgz", - "integrity": "sha512-ZPiJeicuaBBSw6mkTaQJ5dPDOKlsXUub07WZinUCDaogDy74yYrMWl7Zem+tqLlZHizD3vW82V9Pb1QQqRDluw==", + "version": "5.17.19", + "resolved": "https://registry.npmjs.org/@tanstack/react-query-persist-client/-/react-query-persist-client-5.17.19.tgz", + "integrity": "sha512-BPi2asL7pRLI+smNU7zrJza4gQWJD3NYMJ6ZDDiiDvwc5N5ExI0DPOHWLkQ2RN1CNswDOHp2Js7R/0zQJEcqnA==", "dependencies": { - "@tanstack/query-persist-client-core": "5.17.15" + "@tanstack/query-persist-client-core": "5.17.19" }, "funding": { "type": "github", "url": "https://github.com/sponsors/tannerlinsley" }, "peerDependencies": { - "@tanstack/react-query": "^5.17.15", + "@tanstack/react-query": "^5.17.19", "react": "^18.0.0" } }, - "node_modules/@tanstack/react-query-persist-client/node_modules/@tanstack/query-core": { - "version": "5.17.15", - "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.17.15.tgz", - "integrity": "sha512-QURxpu77/ICA4d61aPvV7EcJ2MwmksxUejKBaq/xLcO2TUJAlXf4PFKHC/WxnVFI/7F1jeLx85AO3Vpk0+uBXw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/tannerlinsley" - } - }, - "node_modules/@tanstack/react-query-persist-client/node_modules/@tanstack/query-persist-client-core": { - "version": "5.17.15", - "resolved": "https://registry.npmjs.org/@tanstack/query-persist-client-core/-/query-persist-client-core-5.17.15.tgz", - "integrity": "sha512-u9wqfxwjIeNeuohCENztwTo2qkCEwMeFex2H5X7qpRWlbA2d9cMxeYizQ/7TW9GVyKIEqt653TGivkyviN1N7w==", - "dependencies": { - "@tanstack/query-core": "5.17.15" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/tannerlinsley" - } - }, - "node_modules/@tanstack/react-query/node_modules/@tanstack/query-core": { - "version": "5.17.15", - "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.17.15.tgz", - "integrity": "sha512-QURxpu77/ICA4d61aPvV7EcJ2MwmksxUejKBaq/xLcO2TUJAlXf4PFKHC/WxnVFI/7F1jeLx85AO3Vpk0+uBXw==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/tannerlinsley" - } - }, - "node_modules/@tanstack/react-virtual": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.0.1.tgz", - "integrity": "sha512-IFOFuRUTaiM/yibty9qQ9BfycQnYXIDHGP2+cU+0LrFFGNhVxCXSQnaY6wkX8uJVteFEBjUondX0Hmpp7TNcag==", - "dependencies": { - "@tanstack/virtual-core": "3.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/tannerlinsley" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0 || ^18.0.0", - "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0" - } - }, - "node_modules/@tanstack/virtual-core": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.0.0.tgz", - "integrity": "sha512-SYXOBTjJb05rXa2vl55TTwO40A6wKu0R5i1qQwhJYNDIqaIGF7D0HsLw+pJAyi2OvntlEIVusx3xtbbgSUi6zg==", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/tannerlinsley" - } - }, "node_modules/@terra-money/feather.js": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/@terra-money/feather.js/-/feather.js-1.2.1.tgz", @@ -8532,18 +8362,6 @@ "node": ">=14" } }, - "node_modules/@terra-money/terra.js/node_modules/@improbable-eng/grpc-web": { - "version": "0.14.1", - "resolved": "https://registry.npmjs.org/@improbable-eng/grpc-web/-/grpc-web-0.14.1.tgz", - "integrity": "sha512-XaIYuunepPxoiGVLLHmlnVminUGzBTnXr8Wv7khzmLWbNw4TCwJKX09GSMJlKhu/TRk6gms0ySFxewaETSBqgw==", - "peer": true, - "dependencies": { - "browser-headers": "^0.4.1" - }, - "peerDependencies": { - "google-protobuf": "^3.14.0" - } - }, "node_modules/@terra-money/terra.js/node_modules/@terra-money/terra.proto": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/@terra-money/terra.proto/-/terra.proto-2.1.0.tgz", @@ -8601,9 +8419,9 @@ } }, "node_modules/@terra-money/terra.proto": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/@terra-money/terra.proto/-/terra.proto-4.0.5.tgz", - "integrity": "sha512-I+Ks1ifrJ8TfBAfr1VSXEPpULr9FFmuep3utejzXBm0DXgPaUctfAceaGtIUYeZK+pyX3aNTV4hGBvw9HYPIKA==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@terra-money/terra.proto/-/terra.proto-4.0.6.tgz", + "integrity": "sha512-dxcO4/AN/b1wZPvo7xeoL/cugoMW4U/2HYGCmwAqgRX/x+L/Y+3AVqgKGeiLsiBBdRdephwd4SeGMcB9Q3zeBQ==", "dependencies": { "@improbable-eng/grpc-web": "^0.14.1", "browser-headers": "^0.4.1", @@ -8612,17 +8430,6 @@ "protobufjs": "~6.11.2" } }, - "node_modules/@terra-money/terra.proto/node_modules/@improbable-eng/grpc-web": { - "version": "0.14.1", - "resolved": "https://registry.npmjs.org/@improbable-eng/grpc-web/-/grpc-web-0.14.1.tgz", - "integrity": "sha512-XaIYuunepPxoiGVLLHmlnVminUGzBTnXr8Wv7khzmLWbNw4TCwJKX09GSMJlKhu/TRk6gms0ySFxewaETSBqgw==", - "dependencies": { - "browser-headers": "^0.4.1" - }, - "peerDependencies": { - "google-protobuf": "^3.14.0" - } - }, "node_modules/@terra-money/wallet-types": { "version": "3.11.2", "resolved": "https://registry.npmjs.org/@terra-money/wallet-types/-/wallet-types-3.11.2.tgz", @@ -8635,9 +8442,9 @@ } }, "node_modules/@testing-library/dom": { - "version": "9.3.3", - "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-9.3.3.tgz", - "integrity": "sha512-fB0R+fa3AUqbLHWyxXa2kGVtf1Fe1ZZFr0Zp6AIbIAzXb2mKbEXl+PCQNUOaq5lbTab5tfctfXRNsWXxa2f7Aw==", + "version": "9.3.4", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-9.3.4.tgz", + "integrity": "sha512-FlS4ZWlp97iiNWig0Muq8p+3rVDjRiYE+YKGbAqXOu9nwJFFOdL00kFpz42M+4huzYi86vAK1sOOfyOG45muIQ==", "dev": true, "dependencies": { "@babel/code-frame": "^7.10.4", @@ -8670,9 +8477,9 @@ } }, "node_modules/@testing-library/jest-dom": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.2.0.tgz", - "integrity": "sha512-+BVQlJ9cmEn5RDMUS8c2+TU6giLvzaHZ8sU/x0Jj7fk+6/46wPdwlgOPcpxS17CjcanBi/3VmGMqVr2rmbUmNw==", + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.2.1.tgz", + "integrity": "sha512-Nuy/uFFDe9h/2jwoUuMKgoxvgkUv4S9jI9bARj6dGUKJ3euRhg8JFi5sciYbrayoxkadEOZednRT9+vo6LvvxQ==", "dev": true, "dependencies": { "@adobe/css-tools": "^4.3.2", @@ -8691,6 +8498,7 @@ }, "peerDependencies": { "@jest/globals": ">= 28", + "@types/bun": "latest", "@types/jest": ">= 28", "jest": ">= 28", "vitest": ">= 0.32" @@ -8699,6 +8507,9 @@ "@jest/globals": { "optional": true }, + "@types/bun": { + "optional": true + }, "@types/jest": { "optional": true }, @@ -8776,9 +8587,9 @@ } }, "node_modules/@types/babel__generator": { - "version": "7.6.7", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.7.tgz", - "integrity": "sha512-6Sfsq+EaaLrw4RmdFWE9Onp63TOUue71AWb4Gpa6JxzgTYtimbM086WnYTy2U67AofR++QKCo08ZP6pwx8YFHQ==", + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", "dev": true, "dependencies": { "@babel/types": "^7.0.0" @@ -8795,9 +8606,9 @@ } }, "node_modules/@types/babel__traverse": { - "version": "7.20.4", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.4.tgz", - "integrity": "sha512-mSM/iKUk5fDDrEV/e83qY+Cr3I1+Q3qqTuEn++HAWYjEa1+NxZr6CNrcJGf2ZTnq4HoFGC3zaTPZTobCzCFukA==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.5.tgz", + "integrity": "sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==", "dev": true, "dependencies": { "@babel/types": "^7.20.7" @@ -9124,16 +8935,16 @@ "dev": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.19.0.tgz", - "integrity": "sha512-DUCUkQNklCQYnrBSSikjVChdc84/vMPDQSgJTHBZ64G9bA9w0Crc0rd2diujKbTdp6w2J47qkeHQLoi0rpLCdg==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.19.1.tgz", + "integrity": "sha512-roQScUGFruWod9CEyoV5KlCYrubC/fvG8/1zXuT0WTcxX87GnMMmnksMwSg99lo1xiKrBzw2icsJPMAw1OtKxg==", "dev": true, "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.19.0", - "@typescript-eslint/type-utils": "6.19.0", - "@typescript-eslint/utils": "6.19.0", - "@typescript-eslint/visitor-keys": "6.19.0", + "@typescript-eslint/scope-manager": "6.19.1", + "@typescript-eslint/type-utils": "6.19.1", + "@typescript-eslint/utils": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -9159,17 +8970,17 @@ } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.19.0.tgz", - "integrity": "sha512-QR41YXySiuN++/dC9UArYOg4X86OAYP83OWTewpVx5ct1IZhjjgTLocj7QNxGhWoTqknsgpl7L+hGygCO+sdYw==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.19.1.tgz", + "integrity": "sha512-JvjfEZuP5WoMqwh9SPAPDSHSg9FBHHGhjPugSRxu5jMfjvBpq5/sGTD+9M9aQ5sh6iJ8AY/Kk/oUYVEMAPwi7w==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.19.0", - "@typescript-eslint/types": "6.19.0", - "@typescript-eslint/typescript-estree": "6.19.0", + "@typescript-eslint/scope-manager": "6.19.1", + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/typescript-estree": "6.19.1", "semver": "^7.5.4" }, "engines": { @@ -9184,15 +8995,15 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.19.0.tgz", - "integrity": "sha512-1DyBLG5SH7PYCd00QlroiW60YJ4rWMuUGa/JBV0iZuqi4l4IK3twKPq5ZkEebmGqRjXWVgsUzfd3+nZveewgow==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.19.1.tgz", + "integrity": "sha512-WEfX22ziAh6pRE9jnbkkLGp/4RhTpffr2ZK5bJ18M8mIfA8A+k97U9ZyaXCEJRlmMHh7R9MJZWXp/r73DzINVQ==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "6.19.0", - "@typescript-eslint/types": "6.19.0", - "@typescript-eslint/typescript-estree": "6.19.0", - "@typescript-eslint/visitor-keys": "6.19.0", + "@typescript-eslint/scope-manager": "6.19.1", + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/typescript-estree": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1", "debug": "^4.3.4" }, "engines": { @@ -9212,13 +9023,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.19.0.tgz", - "integrity": "sha512-dO1XMhV2ehBI6QN8Ufi7I10wmUovmLU0Oru3n5LVlM2JuzB4M+dVphCPLkVpKvGij2j/pHBWuJ9piuXx+BhzxQ==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.19.1.tgz", + "integrity": "sha512-4CdXYjKf6/6aKNMSly/BP4iCSOpvMmqtDzRtqFyyAae3z5kkqEjKndR5vDHL8rSuMIIWP8u4Mw4VxLyxZW6D5w==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.19.0", - "@typescript-eslint/visitor-keys": "6.19.0" + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -9229,13 +9040,13 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.19.0.tgz", - "integrity": "sha512-mcvS6WSWbjiSxKCwBcXtOM5pRkPQ6kcDds/juxcy/727IQr3xMEcwr/YLHW2A2+Fp5ql6khjbKBzOyjuPqGi/w==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.19.1.tgz", + "integrity": "sha512-0vdyld3ecfxJuddDjACUvlAeYNrHP/pDeQk2pWBR2ESeEzQhg52DF53AbI9QCBkYE23lgkhLCZNkHn2hEXXYIg==", "dev": true, "dependencies": { - "@typescript-eslint/typescript-estree": "6.19.0", - "@typescript-eslint/utils": "6.19.0", + "@typescript-eslint/typescript-estree": "6.19.1", + "@typescript-eslint/utils": "6.19.1", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -9256,17 +9067,17 @@ } }, "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.19.0.tgz", - "integrity": "sha512-QR41YXySiuN++/dC9UArYOg4X86OAYP83OWTewpVx5ct1IZhjjgTLocj7QNxGhWoTqknsgpl7L+hGygCO+sdYw==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.19.1.tgz", + "integrity": "sha512-JvjfEZuP5WoMqwh9SPAPDSHSg9FBHHGhjPugSRxu5jMfjvBpq5/sGTD+9M9aQ5sh6iJ8AY/Kk/oUYVEMAPwi7w==", "dev": true, "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.19.0", - "@typescript-eslint/types": "6.19.0", - "@typescript-eslint/typescript-estree": "6.19.0", + "@typescript-eslint/scope-manager": "6.19.1", + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/typescript-estree": "6.19.1", "semver": "^7.5.4" }, "engines": { @@ -9281,9 +9092,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.19.0.tgz", - "integrity": "sha512-lFviGV/vYhOy3m8BJ/nAKoAyNhInTdXpftonhWle66XHAtT1ouBlkjL496b5H5hb8dWXHwtypTqgtb/DEa+j5A==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.19.1.tgz", + "integrity": "sha512-6+bk6FEtBhvfYvpHsDgAL3uo4BfvnTnoge5LrrCj2eJN8g3IJdLTD4B/jK3Q6vo4Ql/Hoip9I8aB6fF+6RfDqg==", "dev": true, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -9294,13 +9105,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.19.0.tgz", - "integrity": "sha512-o/zefXIbbLBZ8YJ51NlkSAt2BamrK6XOmuxSR3hynMIzzyMY33KuJ9vuMdFSXW+H0tVvdF9qBPTHA91HDb4BIQ==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.19.1.tgz", + "integrity": "sha512-aFdAxuhzBFRWhy+H20nYu19+Km+gFfwNO4TEqyszkMcgBDYQjmPJ61erHxuT2ESJXhlhrO7I5EFIlZ+qGR8oVA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.19.0", - "@typescript-eslint/visitor-keys": "6.19.0", + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", @@ -9321,15 +9132,6 @@ } } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, "node_modules/@typescript-eslint/typescript-estree/node_modules/globby": { "version": "11.1.0", "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", @@ -9350,21 +9152,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/@typescript-eslint/typescript-estree/node_modules/slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", @@ -9504,12 +9291,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.19.0.tgz", - "integrity": "sha512-hZaUCORLgubBvtGpp1JEFEazcuEdfxta9j4iUwdSAr7mEsYYAp3EAUyCZk3VEEqGj6W+AV4uWyrDGtrlawAsgQ==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.19.1.tgz", + "integrity": "sha512-gkdtIO+xSO/SmI0W68DBg4u1KElmIUo3vXzgHyGPs6cxgB0sa3TlptRAAE0hUY1hM6FcDKEv7aIwiTGm76cXfQ==", "dev": true, "dependencies": { - "@typescript-eslint/types": "6.19.0", + "@typescript-eslint/types": "6.19.1", "eslint-visitor-keys": "^3.4.1" }, "engines": { @@ -10053,42 +9840,6 @@ "qrcode": "1.5.3" } }, - "node_modules/@walletconnect/modal-ui/node_modules/@lit/reactive-element": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-1.6.3.tgz", - "integrity": "sha512-QuTgnG52Poic7uM1AN5yJ09QMe0O28e10XzSvWDz02TJiiKee4stsiownEIadWm8nYzyDAyT+gKzUoZmiWQtsQ==", - "dependencies": { - "@lit-labs/ssr-dom-shim": "^1.0.0" - } - }, - "node_modules/@walletconnect/modal-ui/node_modules/lit": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/lit/-/lit-2.8.0.tgz", - "integrity": "sha512-4Sc3OFX9QHOJaHbmTMk28SYgVxLN3ePDjg7hofEft2zWlehFL3LiAuapWc4U/kYwMYJSh2hTCPZ6/LIC7ii0MA==", - "dependencies": { - "@lit/reactive-element": "^1.6.0", - "lit-element": "^3.3.0", - "lit-html": "^2.8.0" - } - }, - "node_modules/@walletconnect/modal-ui/node_modules/lit-element": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-3.3.3.tgz", - "integrity": "sha512-XbeRxmTHubXENkV4h8RIPyr8lXc+Ff28rkcQzw3G6up2xg5E8Zu1IgOWIwBLEQsu3cOVFqdYwiVi0hv0SlpqUA==", - "dependencies": { - "@lit-labs/ssr-dom-shim": "^1.1.0", - "@lit/reactive-element": "^1.3.0", - "lit-html": "^2.8.0" - } - }, - "node_modules/@walletconnect/modal-ui/node_modules/lit-html": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-2.8.0.tgz", - "integrity": "sha512-o9t+MQM3P4y7M7yNzqAyjp7z+mQGa4NS4CxiyLqFPyFWyc4O+nodLrkrxSaCTrla6M5YOLaT3RpbbqjszB5g3Q==", - "dependencies": { - "@types/trusted-types": "^2.0.2" - } - }, "node_modules/@walletconnect/randombytes": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/@walletconnect/randombytes/-/randombytes-1.0.3.tgz", @@ -10256,41 +10007,6 @@ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "node_modules/@web3modal/common": { - "version": "3.5.6", - "resolved": "https://registry.npmjs.org/@web3modal/common/-/common-3.5.6.tgz", - "integrity": "sha512-3rjpPynxBju6kyQgn7mJIhcZAk+K5mqZtYy4TMg1oq9rZ6w4K5ydCTk6CfI1NEP+mrTOHRY2OnASDOSQ/TLGcQ==", - "dependencies": { - "dayjs": "1.11.10" - } - }, - "node_modules/@web3modal/core": { - "version": "3.5.6", - "resolved": "https://registry.npmjs.org/@web3modal/core/-/core-3.5.6.tgz", - "integrity": "sha512-MxGtZSp5BoGEJqQct589AGEc9FCTvIoPiIPuy9BDeI80NuWGojeIWuS0FTn/8XFvtTABHtRTbO9qYTRAvr2LLQ==", - "dependencies": { - "@web3modal/common": "3.5.6", - "@web3modal/wallet": "3.5.6", - "valtio": "1.11.2" - } - }, - "node_modules/@web3modal/ui": { - "version": "3.5.6", - "resolved": "https://registry.npmjs.org/@web3modal/ui/-/ui-3.5.6.tgz", - "integrity": "sha512-XO/KmruzDaZDmhU4ZYhRIelN9vRBWiBjLeFfUz/LEnbRRagzGBZtHXabQ5zUnivReUo9mE7uoQIZbax+GPIJyw==", - "dependencies": { - "lit": "3.1.0", - "qrcode": "1.5.3" - } - }, - "node_modules/@web3modal/wallet": { - "version": "3.5.6", - "resolved": "https://registry.npmjs.org/@web3modal/wallet/-/wallet-3.5.6.tgz", - "integrity": "sha512-uYlO+qtD6GsbssHXqghiNDUD8y8gAvHqAAqW65AErCTHyNCxiTHBlJcP1dDfzs6AIO/7WFmUef/Pq32jlGawBg==", - "dependencies": { - "zod": "3.22.4" - } - }, "node_modules/@wry/caches": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@wry/caches/-/caches-1.0.1.tgz", @@ -10396,9 +10112,9 @@ } }, "node_modules/acorn": { - "version": "8.11.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz", - "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==", + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", "bin": { "acorn": "bin/acorn" }, @@ -10426,9 +10142,9 @@ } }, "node_modules/acorn-walk": { - "version": "8.3.1", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.1.tgz", - "integrity": "sha512-TgUZgYvqZprrl7YldZNoa9OciCAyZR+Ejm9eXzKCmjsF5IKp/wgQ7Z/ZpjpGTIUPwrHQIcYeI8qDh4PsEwxMbw==", + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", + "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", "dev": true, "engines": { "node": ">=0.4.0" @@ -10549,25 +10265,6 @@ "node": ">= 8" } }, - "node_modules/arch": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", - "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, "node_modules/archive-type": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/archive-type/-/archive-type-4.0.0.tgz", @@ -11087,6 +10784,11 @@ "resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz", "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==" }, + "node_modules/bfs-path": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bfs-path/-/bfs-path-1.0.2.tgz", + "integrity": "sha512-KTKx2JJtAAAT7C/rJYDXXWA2VLPycAS4kwFktKsxUo0hj4UTtw/Gm5PJuY7Uf3xSlIQNo7HRCSWei2ivncVwbQ==" + }, "node_modules/big-integer": { "version": "1.6.52", "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", @@ -11240,25 +10942,12 @@ "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==" }, - "node_modules/bplist-parser": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz", - "integrity": "sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==", - "dev": true, - "dependencies": { - "big-integer": "^1.6.44" - }, - "engines": { - "node": ">= 5.10.0" - } - }, "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "balanced-match": "^1.0.0" } }, "node_modules/braces": { @@ -11500,21 +11189,6 @@ "node": ">=6.14.2" } }, - "node_modules/bundle-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz", - "integrity": "sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==", - "dev": true, - "dependencies": { - "run-applescript": "^5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/busboy": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", @@ -11619,9 +11293,9 @@ ] }, "node_modules/chain-registry": { - "version": "1.24.1", - "resolved": "https://registry.npmjs.org/chain-registry/-/chain-registry-1.24.1.tgz", - "integrity": "sha512-1jfGg4FQ95SFMZLMDoYZwPPxkkk1cowuqBg4Lod7AtRrmoImCfH7f4yWXarcvWOc2j/NyU7XXNQu+qCnrkjDJg==", + "version": "1.25.4", + "resolved": "https://registry.npmjs.org/chain-registry/-/chain-registry-1.25.4.tgz", + "integrity": "sha512-QxBSg4lLR4CXqDgratAAqelw3K/WdROKNvq+IThuirXMfCcuL6wNPVunlvz3gPPdnyAA6D+dSZ4ky4ZWavDcOg==", "dependencies": { "@babel/runtime": "^7.21.0", "@chain-registry/types": "^0.17.1" @@ -11776,13 +11450,104 @@ "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" }, "node_modules/clipboardy": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-4.0.0.tgz", + "integrity": "sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w==", + "dependencies": { + "execa": "^8.0.1", + "is-wsl": "^3.1.0", + "is64bit": "^2.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy/node_modules/execa": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", + "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^8.0.1", + "human-signals": "^5.0.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^4.1.0", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": ">=16.17" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/clipboardy/node_modules/get-stream": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", + "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy/node_modules/human-signals": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", + "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", + "engines": { + "node": ">=16.17.0" + } + }, + "node_modules/clipboardy/node_modules/is-stream": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-3.0.0.tgz", - "integrity": "sha512-Su+uU5sr1jkUy1sGRpLKjKrvEOVXgSgiSInwa/qeID6aJ07yh+5NWc3h2QfjHjBnfX4LhtFcuAWKUsJ3r+fjbg==", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy/node_modules/is-wsl": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-3.1.0.tgz", + "integrity": "sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==", "dependencies": { - "arch": "^2.2.0", - "execa": "^5.1.1", - "is-wsl": "^2.2.0" + "is-inside-container": "^1.0.0" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy/node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy/node_modules/npm-run-path": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.2.0.tgz", + "integrity": "sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==", + "dependencies": { + "path-key": "^4.0.0" }, "engines": { "node": "^12.20.0 || ^14.13.1 || >=16.0.0" @@ -11791,6 +11556,53 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/clipboardy/node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dependencies": { + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clipboardy/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/clipboardy/node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/cliui": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", @@ -11907,9 +11719,12 @@ } }, "node_modules/commander": { - "version": "2.20.3", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", + "engines": { + "node": ">=14" + } }, "node_modules/commondir": { "version": "1.0.1", @@ -11995,6 +11810,15 @@ "copyup": "copyfiles" } }, + "node_modules/copyfiles/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/copyfiles/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -12014,6 +11838,17 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/copyfiles/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/copyfiles/node_modules/mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", @@ -12241,19 +12076,14 @@ } }, "node_modules/date-fns": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-3.2.0.tgz", - "integrity": "sha512-E4KWKavANzeuusPi0jUjpuI22SURAznGkx7eZV+4i6x2A+IZxAMcajgkvuDAU1bg40+xuhW1zRdVIIM/4khuIg==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-3.3.1.tgz", + "integrity": "sha512-y8e109LYGgoQDveiEBD3DYXKba1jWf5BA8YU1FL5Tvm0BTdEfy54WLCwnuYWZNnzzvALy/QQ4Hov+Q9RVRv+Zw==", "funding": { "type": "github", "url": "https://github.com/sponsors/kossnocorp" } }, - "node_modules/dayjs": { - "version": "1.11.10", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.10.tgz", - "integrity": "sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==" - }, "node_modules/debug": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", @@ -12538,166 +12368,10 @@ }, "node_modules/deepmerge": { "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/default-browser": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-4.0.0.tgz", - "integrity": "sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==", - "dev": true, - "dependencies": { - "bundle-name": "^3.0.0", - "default-browser-id": "^3.0.0", - "execa": "^7.1.1", - "titleize": "^3.0.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser-id": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-3.0.0.tgz", - "integrity": "sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==", - "dev": true, - "dependencies": { - "bplist-parser": "^0.2.0", - "untildify": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/execa": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", - "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.1", - "human-signals": "^4.3.0", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^3.0.7", - "strip-final-newline": "^3.0.0" - }, - "engines": { - "node": "^14.18.0 || ^16.14.0 || >=18.0.0" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/default-browser/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/human-signals": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", - "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", - "dev": true, - "engines": { - "node": ">=14.18.0" - } - }, - "node_modules/default-browser/node_modules/is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/npm-run-path": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.2.0.tgz", - "integrity": "sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==", - "dev": true, - "dependencies": { - "path-key": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", - "dev": true, - "dependencies": { - "mimic-fn": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "engines": { + "node": ">=0.10.0" } }, "node_modules/defaults": { @@ -12725,18 +12399,6 @@ "node": ">= 0.4" } }, - "node_modules/define-lazy-prop": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz", - "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/define-properties": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", @@ -12754,9 +12416,9 @@ } }, "node_modules/defu": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/defu/-/defu-6.1.3.tgz", - "integrity": "sha512-Vy2wmG3NTkmHNg/kzpuvHhkqeIx3ODWqasgCRbKtbXEN0G+HpEEv9BtJLp7ZG1CZloFaC41Ah3ZFbq7aqCqMeQ==" + "version": "6.1.4", + "resolved": "https://registry.npmjs.org/defu/-/defu-6.1.4.tgz", + "integrity": "sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==" }, "node_modules/delay": { "version": "4.4.1", @@ -13061,22 +12723,6 @@ "node": ">=14" } }, - "node_modules/editorconfig/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/editorconfig/node_modules/commander": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", - "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", - "engines": { - "node": ">=14" - } - }, "node_modules/editorconfig/node_modules/minimatch": { "version": "9.0.1", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.1.tgz", @@ -13092,9 +12738,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.612", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.612.tgz", - "integrity": "sha512-dM8BMtXtlH237ecSMnYdYuCkib2QHq0kpWfUnavjdYsyr/6OsAwg5ZGUfnQ9KD1Ga4QgB2sqXlB2NT8zy2GnVg==" + "version": "1.4.641", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.641.tgz", + "integrity": "sha512-JetAF3M5Lr9hwzDe3oMmWFOydlclqt2loEljxc0AAP5NYM170sSW+F5/cn5ROBfjx5LdmzeeAgWnyAU9cjPhmA==" }, "node_modules/elliptic": { "version": "6.5.4", @@ -13128,9 +12774,9 @@ } }, "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" }, "node_modules/encode-utf8": { "version": "1.0.3", @@ -13367,9 +13013,9 @@ } }, "node_modules/esbuild": { - "version": "0.19.10", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.10.tgz", - "integrity": "sha512-S1Y27QGt/snkNYrRcswgRFqZjaTG5a5xM3EQo97uNBnH505pdzSNe/HLBq1v0RO7iK/ngdbhJB6mDAp0OK+iUA==", + "version": "0.19.11", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.11.tgz", + "integrity": "sha512-HJ96Hev2hX/6i5cDVwcqiJBBtuo9+FeIJOtZ9W1kA5M6AMJRHUZlpYZ1/SbEwtO0ioNAW8rUooVpC/WehY2SfA==", "dev": true, "hasInstallScript": true, "bin": { @@ -13379,29 +13025,29 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.19.10", - "@esbuild/android-arm": "0.19.10", - "@esbuild/android-arm64": "0.19.10", - "@esbuild/android-x64": "0.19.10", - "@esbuild/darwin-arm64": "0.19.10", - "@esbuild/darwin-x64": "0.19.10", - "@esbuild/freebsd-arm64": "0.19.10", - "@esbuild/freebsd-x64": "0.19.10", - "@esbuild/linux-arm": "0.19.10", - "@esbuild/linux-arm64": "0.19.10", - "@esbuild/linux-ia32": "0.19.10", - "@esbuild/linux-loong64": "0.19.10", - "@esbuild/linux-mips64el": "0.19.10", - "@esbuild/linux-ppc64": "0.19.10", - "@esbuild/linux-riscv64": "0.19.10", - "@esbuild/linux-s390x": "0.19.10", - "@esbuild/linux-x64": "0.19.10", - "@esbuild/netbsd-x64": "0.19.10", - "@esbuild/openbsd-x64": "0.19.10", - "@esbuild/sunos-x64": "0.19.10", - "@esbuild/win32-arm64": "0.19.10", - "@esbuild/win32-ia32": "0.19.10", - "@esbuild/win32-x64": "0.19.10" + "@esbuild/aix-ppc64": "0.19.11", + "@esbuild/android-arm": "0.19.11", + "@esbuild/android-arm64": "0.19.11", + "@esbuild/android-x64": "0.19.11", + "@esbuild/darwin-arm64": "0.19.11", + "@esbuild/darwin-x64": "0.19.11", + "@esbuild/freebsd-arm64": "0.19.11", + "@esbuild/freebsd-x64": "0.19.11", + "@esbuild/linux-arm": "0.19.11", + "@esbuild/linux-arm64": "0.19.11", + "@esbuild/linux-ia32": "0.19.11", + "@esbuild/linux-loong64": "0.19.11", + "@esbuild/linux-mips64el": "0.19.11", + "@esbuild/linux-ppc64": "0.19.11", + "@esbuild/linux-riscv64": "0.19.11", + "@esbuild/linux-s390x": "0.19.11", + "@esbuild/linux-x64": "0.19.11", + "@esbuild/netbsd-x64": "0.19.11", + "@esbuild/openbsd-x64": "0.19.11", + "@esbuild/sunos-x64": "0.19.11", + "@esbuild/win32-arm64": "0.19.11", + "@esbuild/win32-ia32": "0.19.11", + "@esbuild/win32-x64": "0.19.11" } }, "node_modules/escalade": { @@ -13445,15 +13091,6 @@ "source-map": "~0.6.1" } }, - "node_modules/escodegen/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, "node_modules/eslint": { "version": "8.56.0", "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", @@ -13619,9 +13256,9 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.0.tgz", - "integrity": "sha512-QPOO5NO6Odv5lpoTkddtutccQjysJuFxoPS7fAHO+9m9udNHvTCPSAMW9zGAYj8lAIdr40I8yPCdUYrncXtrwg==", + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", + "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", "dev": true, "dependencies": { "array-includes": "^3.1.7", @@ -13640,7 +13277,7 @@ "object.groupby": "^1.0.1", "object.values": "^1.1.7", "semver": "^6.3.1", - "tsconfig-paths": "^3.14.2" + "tsconfig-paths": "^3.15.0" }, "engines": { "node": ">=4" @@ -13649,6 +13286,16 @@ "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" } }, + "node_modules/eslint-plugin-import/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/eslint-plugin-import/node_modules/debug": { "version": "3.2.7", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", @@ -13670,6 +13317,18 @@ "node": ">=0.10.0" } }, + "node_modules/eslint-plugin-import/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/eslint-plugin-import/node_modules/semver": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", @@ -13718,11 +13377,27 @@ "dequal": "^2.0.3" } }, - "node_modules/eslint-plugin-jsx-a11y/node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true + "node_modules/eslint-plugin-jsx-a11y/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/eslint-plugin-jsx-a11y/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } }, "node_modules/eslint-plugin-prettier": { "version": "5.1.3", @@ -13796,6 +13471,16 @@ "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" } }, + "node_modules/eslint-plugin-react/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/eslint-plugin-react/node_modules/doctrine": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", @@ -13808,13 +13493,16 @@ "node": ">=0.10.0" } }, - "node_modules/eslint-plugin-react/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "node_modules/eslint-plugin-react/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, "engines": { - "node": ">=4.0" + "node": "*" } }, "node_modules/eslint-plugin-react/node_modules/resolve": { @@ -13865,6 +13553,15 @@ "node": ">=8.0.0" } }, + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, "node_modules/eslint-visitor-keys": { "version": "3.4.3", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", @@ -13877,6 +13574,16 @@ "url": "https://opencollective.com/eslint" } }, + "node_modules/eslint/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/eslint/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -13909,13 +13616,16 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "node_modules/eslint/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, "engines": { - "node": ">=4.0" + "node": "*" } }, "node_modules/espree": { @@ -13960,15 +13670,6 @@ "node": ">=0.10" } }, - "node_modules/esquery/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, "node_modules/esrecurse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", @@ -13981,7 +13682,7 @@ "node": ">=4.0" } }, - "node_modules/esrecurse/node_modules/estraverse": { + "node_modules/estraverse": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", @@ -13990,15 +13691,6 @@ "node": ">=4.0" } }, - "node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, "node_modules/estree-walker": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", @@ -14257,6 +13949,7 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, "dependencies": { "cross-spawn": "^7.0.3", "get-stream": "^6.0.0", @@ -14279,6 +13972,7 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, "engines": { "node": ">=10" }, @@ -14452,9 +14146,9 @@ "integrity": "sha512-wpYMUmFu5f00Sm0cj2pfivpmawLZ0NKdviQ4w9zJeR8JVtOpOxHmLaJuj0vxvGqMJQWyP/COUkF75/57OKyRag==" }, "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.16.0.tgz", + "integrity": "sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==", "dependencies": { "reusify": "^1.0.4" } @@ -14611,9 +14305,9 @@ "dev": true }, "node_modules/follow-redirects": { - "version": "1.15.4", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.4.tgz", - "integrity": "sha512-Cr4D/5wlrb0z9dgERpUL3LrmPKVDsETIJhaCMeDfuFYcqa5bldGV6wBsAN6X/vxlXQtFBMrXdXxdL8CbDTGniw==", + "version": "1.15.5", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.5.tgz", + "integrity": "sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==", "funding": [ { "type": "individual", @@ -14820,9 +14514,9 @@ } }, "node_modules/get-port-please": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/get-port-please/-/get-port-please-3.1.1.tgz", - "integrity": "sha512-3UBAyM3u4ZBVYDsxOQfJDxEa6XTbpBDrOjp4mf7ExFRt5BKs/QywQQiJsh2B+hxcZLSapWqCRvElUe8DnKcFHA==" + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/get-port-please/-/get-port-please-3.1.2.tgz", + "integrity": "sha512-Gxc29eLs1fbn6LQ4jSU4vXjlwyZhF5HsGuMAa7gqBP4Rw4yxxltyDUuF5MBclFzDTXO+ACchGQoeela4DSfzdQ==" }, "node_modules/get-stream": { "version": "4.1.0", @@ -14892,14 +14586,6 @@ "node": ">=10.13.0" } }, - "node_modules/glob/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, "node_modules/glob/node_modules/minimatch": { "version": "5.1.6", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", @@ -14961,9 +14647,9 @@ } }, "node_modules/goober": { - "version": "2.1.13", - "resolved": "https://registry.npmjs.org/goober/-/goober-2.1.13.tgz", - "integrity": "sha512-jFj3BQeleOoy7t93E9rZ2de+ScC4lQICLwiAQmKMg9F6roKGaLSHoCDYKkWlSafg138jejvq/mTdvmnwDQgqoQ==", + "version": "2.1.14", + "resolved": "https://registry.npmjs.org/goober/-/goober-2.1.14.tgz", + "integrity": "sha512-4UpC0NdGyAFqLNPnhCT2iHpza2q+RAY3GV85a/mRPdzyPQMsj0KmMMuetdIkzWRbJ+Hgau1EZztq8ImmiMGhsg==", "peerDependencies": { "csstype": "^3.0.10" } @@ -15061,9 +14747,9 @@ } }, "node_modules/h3": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/h3/-/h3-1.9.0.tgz", - "integrity": "sha512-+F3ZqrNV/CFXXfZ2lXBINHi+rM4Xw3CDC5z2CDK3NMPocjonKipGLLDSkrqY9DOrioZNPTIdDMWfQKm//3X2DA==", + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/h3/-/h3-1.10.0.tgz", + "integrity": "sha512-Tw1kcIC+AeimwRmviiObaD5EB430Yt+lTgOxLJxNr96Vd/fGRu04EF7aKfOAcpwKCI+U2JlbxOLhycD86p3Ciw==", "dependencies": { "cookie-es": "^1.0.0", "defu": "^6.1.3", @@ -15072,7 +14758,7 @@ "radix3": "^1.1.0", "ufo": "^1.3.2", "uncrypto": "^0.1.3", - "unenv": "^1.7.4" + "unenv": "^1.8.0" } }, "node_modules/has-bigints": { @@ -15354,6 +15040,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, "engines": { "node": ">=10.17.0" } @@ -15563,14 +15250,14 @@ } }, "node_modules/intl-messageformat": { - "version": "10.5.8", - "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-10.5.8.tgz", - "integrity": "sha512-NRf0jpBWV0vd671G5b06wNofAN8tp7WWDogMZyaU8GUAsmbouyvgwmFJI7zLjfAMpm3zK+vSwRP3jzaoIcMbaA==", + "version": "10.5.10", + "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-10.5.10.tgz", + "integrity": "sha512-3yzwX6t/my9WRtNiqP05r+/UkpWxwstQiwaHAiuHmDRt7ykzWJ+nceOVjNLZYYWGiSltY+C+Likd8OIVkASepw==", "peer": true, "dependencies": { - "@formatjs/ecma402-abstract": "1.18.0", + "@formatjs/ecma402-abstract": "1.18.2", "@formatjs/fast-memoize": "2.2.0", - "@formatjs/icu-messageformat-parser": "2.7.3", + "@formatjs/icu-messageformat-parser": "2.7.5", "tslib": "^2.4.0" } }, @@ -15755,6 +15442,7 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, "bin": { "is-docker": "cli.js" }, @@ -15840,7 +15528,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", - "dev": true, "dependencies": { "is-docker": "^3.0.0" }, @@ -15858,7 +15545,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", - "dev": true, "bin": { "is-docker": "cli.js" }, @@ -16153,6 +15839,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, "dependencies": { "is-docker": "^2.0.0" }, @@ -16160,6 +15847,20 @@ "node": ">=8" } }, + "node_modules/is64bit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is64bit/-/is64bit-2.0.0.tgz", + "integrity": "sha512-jv+8jaWCl0g2lSBkNSVXdzfBA0npK1HGC2KtWM9FumFRoGS94g3NbCCLVnCYHLjp4GrW2KZeeSTMo5ddtznmGw==", + "dependencies": { + "system-architecture": "^0.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/isarray": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", @@ -16363,6 +16064,11 @@ "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" }, + "node_modules/jayson/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, "node_modules/jayson/node_modules/delay": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/delay/-/delay-5.0.0.tgz", @@ -16653,6 +16359,16 @@ } } }, + "node_modules/jest-config/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/jest-config/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -16689,6 +16405,18 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/jest-config/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/jest-config/node_modules/pretty-format": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", @@ -17311,6 +17039,16 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, + "node_modules/jest-runtime/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/jest-runtime/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -17347,6 +17085,18 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/jest-runtime/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/jest-runtime/node_modules/slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", @@ -17637,14 +17387,6 @@ "node": ">=14" } }, - "node_modules/js-beautify/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, "node_modules/js-beautify/node_modules/glob": { "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", @@ -17666,20 +17408,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/js-beautify/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/js-levenshtein": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", @@ -17865,9 +17593,9 @@ "dev": true }, "node_modules/json-stable-stringify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.1.0.tgz", - "integrity": "sha512-zfA+5SuwYN2VWqN1/5HZaDzQKLJHaBVMZIIM+wuYjdptkaQsqzDdqjqf+lZZJUuJq1aanHiY8LhH8LmH+qBYJA==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.1.1.tgz", + "integrity": "sha512-SU/971Kt5qVQfJpyDveVhQ/vya+5hvrjClFOcr8c0Fq5aODJjMwutrOfCU+eCnVD5gpx1Q3fEqkyom77zH1iIg==", "dev": true, "dependencies": { "call-bind": "^1.0.5", @@ -18235,26 +17963,26 @@ } }, "node_modules/listhen": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/listhen/-/listhen-1.5.5.tgz", - "integrity": "sha512-LXe8Xlyh3gnxdv4tSjTjscD1vpr/2PRpzq8YIaMJgyKzRG8wdISlWVWnGThJfHnlJ6hmLt2wq1yeeix0TEbuoA==", + "version": "1.5.6", + "resolved": "https://registry.npmjs.org/listhen/-/listhen-1.5.6.tgz", + "integrity": "sha512-gTpEJhT5L85L0bFgmu+Boqu5rP4DwDtEb4Exq5gdQUxWRwx4jbzdInZkmyLONo5EwIcQB0k7ZpWlpCDPdL77EQ==", "dependencies": { "@parcel/watcher": "^2.3.0", "@parcel/watcher-wasm": "2.3.0", - "citty": "^0.1.4", - "clipboardy": "^3.0.0", + "citty": "^0.1.5", + "clipboardy": "^4.0.0", "consola": "^3.2.3", - "defu": "^6.1.2", - "get-port-please": "^3.1.1", - "h3": "^1.8.1", + "defu": "^6.1.4", + "get-port-please": "^3.1.2", + "h3": "^1.10.0", "http-shutdown": "^1.2.2", - "jiti": "^1.20.0", + "jiti": "^1.21.0", "mlly": "^1.4.2", "node-forge": "^1.3.1", "pathe": "^1.1.1", - "std-env": "^3.4.3", - "ufo": "^1.3.0", - "untun": "^0.1.2", + "std-env": "^3.7.0", + "ufo": "^1.3.2", + "untun": "^0.1.3", "uqr": "^0.1.2" }, "bin": { @@ -18263,29 +17991,29 @@ } }, "node_modules/lit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/lit/-/lit-3.1.0.tgz", - "integrity": "sha512-rzo/hmUqX8zmOdamDAeydfjsGXbbdtAFqMhmocnh2j9aDYqbu0fjXygjCa0T99Od9VQ/2itwaGrjZz/ZELVl7w==", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/lit/-/lit-2.8.0.tgz", + "integrity": "sha512-4Sc3OFX9QHOJaHbmTMk28SYgVxLN3ePDjg7hofEft2zWlehFL3LiAuapWc4U/kYwMYJSh2hTCPZ6/LIC7ii0MA==", "dependencies": { - "@lit/reactive-element": "^2.0.0", - "lit-element": "^4.0.0", - "lit-html": "^3.1.0" + "@lit/reactive-element": "^1.6.0", + "lit-element": "^3.3.0", + "lit-html": "^2.8.0" } }, "node_modules/lit-element": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-4.0.3.tgz", - "integrity": "sha512-2vhidmC7gGLfnVx41P8UZpzyS0Fb8wYhS5RCm16cMW3oERO0Khd3EsKwtRpOnttuByI5rURjT2dfoA7NlInCNw==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-3.3.3.tgz", + "integrity": "sha512-XbeRxmTHubXENkV4h8RIPyr8lXc+Ff28rkcQzw3G6up2xg5E8Zu1IgOWIwBLEQsu3cOVFqdYwiVi0hv0SlpqUA==", "dependencies": { - "@lit-labs/ssr-dom-shim": "^1.1.2", - "@lit/reactive-element": "^2.0.0", - "lit-html": "^3.1.0" + "@lit-labs/ssr-dom-shim": "^1.1.0", + "@lit/reactive-element": "^1.3.0", + "lit-html": "^2.8.0" } }, "node_modules/lit-html": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-3.1.1.tgz", - "integrity": "sha512-x/EwfGk2D/f4odSFM40hcGumzqoKv0/SUh6fBO+1Ragez81APrcAMPo1jIrCDd9Sn+Z4CT867HWKViByvkDZUA==", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-2.8.0.tgz", + "integrity": "sha512-o9t+MQM3P4y7M7yNzqAyjp7z+mQGa4NS4CxiyLqFPyFWyc4O+nodLrkrxSaCTrla6M5YOLaT3RpbbqjszB5g3Q==", "dependencies": { "@types/trusted-types": "^2.0.2" } @@ -18602,6 +18330,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, "engines": { "node": ">=6" } @@ -18642,14 +18371,17 @@ "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==" }, "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dependencies": { - "brace-expansion": "^1.1.7" + "brace-expansion": "^2.0.1" }, "engines": { - "node": "*" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/minimist": { @@ -18680,14 +18412,14 @@ } }, "node_modules/mlly": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.4.2.tgz", - "integrity": "sha512-i/Ykufi2t1EZ6NaPLdfnZk2AX8cs0d+mTzVKuPfqPKPatxLApaBoxJQ9x1/uckXtrS/U5oisPMDkNs0yQTaBRg==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.5.0.tgz", + "integrity": "sha512-NPVQvAY1xr1QoVeG0cy8yUYC7FQcOx6evl/RjT1wL5FvzPnzOysoqB/jmx/DhssT2dYa8nxECLAaFI/+gVLhDQ==", "dependencies": { - "acorn": "^8.10.0", - "pathe": "^1.1.1", + "acorn": "^8.11.3", + "pathe": "^1.1.2", "pkg-types": "^1.0.3", - "ufo": "^1.3.0" + "ufo": "^1.3.2" } }, "node_modules/mobx": { @@ -19019,9 +18751,9 @@ } }, "node_modules/node-fetch-native": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/node-fetch-native/-/node-fetch-native-1.4.1.tgz", - "integrity": "sha512-NsXBU0UgBxo2rQLOeWNZqS3fvflWePMECr8CoSWoSTqCqGbVVsvl9vZu1HfQicYN0g5piV9Gh8RTEvo/uP752w==" + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/node-fetch-native/-/node-fetch-native-1.6.1.tgz", + "integrity": "sha512-bW9T/uJDPAJB2YNYEpWzE54U5O3MQidXsOyTfnbKYtTtFexRvGzb1waphBN4ZwP6EcIvYYEOwW0b72BpAqydTw==" }, "node_modules/node-fetch/node_modules/tr46": { "version": "0.0.3", @@ -19051,9 +18783,9 @@ } }, "node_modules/node-gyp-build": { - "version": "4.7.1", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.7.1.tgz", - "integrity": "sha512-wTSrZ+8lsRRa3I3H8Xr65dLWSgCvY2l4AOnaeKdPA9TB/WYMPaTcrzf3rXvFoVvjKNVnu0CcWSx54qq9GKRUYg==", + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.0.tgz", + "integrity": "sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og==", "bin": { "node-gyp-build": "bin.js", "node-gyp-build-optional": "optional.js", @@ -19375,34 +19107,11 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/npm-run-all2/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/npm-run-all2/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/npm-run-path": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, "dependencies": { "path-key": "^3.0.0" }, @@ -22006,6 +21715,7 @@ "version": "5.1.2", "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, "dependencies": { "mimic-fn": "^2.1.0" }, @@ -22328,6 +22038,16 @@ "npm": ">5" } }, + "node_modules/patch-package/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/patch-package/node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -22364,6 +22084,18 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/patch-package/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/patch-package/node_modules/rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -22468,9 +22200,9 @@ } }, "node_modules/pathe": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.1.tgz", - "integrity": "sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q==" + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==" }, "node_modules/pbkdf2": { "version": "3.1.2", @@ -22673,12 +22405,12 @@ } }, "node_modules/playwright": { - "version": "1.41.0", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.41.0.tgz", - "integrity": "sha512-XOsfl5ZtAik/T9oek4V0jAypNlaCNzuKOwVhqhgYT3os6kH34PzbRb74F0VWcLYa5WFdnmxl7qyAHBXvPv7lqQ==", + "version": "1.41.1", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.41.1.tgz", + "integrity": "sha512-gdZAWG97oUnbBdRL3GuBvX3nDDmUOuqzV/D24dytqlKt+eI5KbwusluZRGljx1YoJKZ2NRPaeWiFTeGZO7SosQ==", "dev": true, "dependencies": { - "playwright-core": "1.41.0" + "playwright-core": "1.41.1" }, "bin": { "playwright": "cli.js" @@ -22691,9 +22423,9 @@ } }, "node_modules/playwright-core": { - "version": "1.41.0", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.41.0.tgz", - "integrity": "sha512-UGKASUhXmvqm2Lxa1fNr8sFwAtqjpgBRr9jQ7XBI8Rn5uFiEowGUGwrruUQsVPIom4bk7Lt+oLGpXobnXzrBIw==", + "version": "1.41.1", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.41.1.tgz", + "integrity": "sha512-/KPO5DzXSMlxSX77wy+HihKGOunh3hqndhqeo/nMxfigiKzogn8kfL0ZBDu0L1RKgan5XHCPmn6zXd2NUJgjhg==", "dev": true, "bin": { "playwright-core": "cli.js" @@ -23335,9 +23067,9 @@ "integrity": "sha512-pNsHDxbGORSvuSScqNJ+3Km6QAVqk8CfsCBIEoDgpqLrkD2f3QM4I7d1ozJJ172OmIcoUcerZaNWqtLkRXTV3A==" }, "node_modules/rainbow-sprinkles": { - "version": "0.17.0", - "resolved": "https://registry.npmjs.org/rainbow-sprinkles/-/rainbow-sprinkles-0.17.0.tgz", - "integrity": "sha512-ok3NrylQ0szvJtuBYaB/w09L9zOvvqcSQrvycT2A5XJxQNvwvkeADvTqQWGOQ3b6MkO8UmYccBPt8g8vVvxM9A==", + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/rainbow-sprinkles/-/rainbow-sprinkles-0.17.1.tgz", + "integrity": "sha512-s/6mCZsBw63mxw976CesRhaLEa3QJVOzEXiuUm3/OKp1R0bBNiCsM3AoAjvazLn3F+BKKxI5sqyNmfah7nTdnQ==", "peer": true, "peerDependencies": { "@vanilla-extract/css": "^1", @@ -23373,46 +23105,47 @@ } }, "node_modules/react-aria": { - "version": "3.30.0", - "resolved": "https://registry.npmjs.org/react-aria/-/react-aria-3.30.0.tgz", - "integrity": "sha512-ULMlmH68/jXzkDaMjuM9O8dKCxnAYviW4E5sywfLX4J6mC6eGsQzoqtwWeQgr1M9SJqLfgKaVoDP1dLvb4XzEA==", + "version": "3.31.1", + "resolved": "https://registry.npmjs.org/react-aria/-/react-aria-3.31.1.tgz", + "integrity": "sha512-q4jRCVDKO6V2o4Sgir5S2obssw/YnMx6QOy10+p0dYqROHpSnMFNkONrKT1w/nA+Nx4ptfPqZbaNra1hR1bUWg==", "peer": true, "dependencies": { - "@react-aria/breadcrumbs": "^3.5.8", - "@react-aria/button": "^3.9.0", - "@react-aria/calendar": "^3.5.3", - "@react-aria/checkbox": "^3.12.0", - "@react-aria/combobox": "^3.8.0", - "@react-aria/datepicker": "^3.9.0", - "@react-aria/dialog": "^3.5.8", - "@react-aria/dnd": "^3.5.0", - "@react-aria/focus": "^3.15.0", - "@react-aria/gridlist": "^3.7.2", - "@react-aria/i18n": "^3.9.0", - "@react-aria/interactions": "^3.20.0", - "@react-aria/label": "^3.7.3", - "@react-aria/link": "^3.6.2", - "@react-aria/listbox": "^3.11.2", - "@react-aria/menu": "^3.11.2", - "@react-aria/meter": "^3.4.8", - "@react-aria/numberfield": "^3.10.0", - "@react-aria/overlays": "^3.19.0", - "@react-aria/progress": "^3.4.8", - "@react-aria/radio": "^3.9.0", - "@react-aria/searchfield": "^3.6.0", - "@react-aria/select": "^3.14.0", - "@react-aria/selection": "^3.17.2", - "@react-aria/separator": "^3.3.8", - "@react-aria/slider": "^3.7.3", - "@react-aria/ssr": "^3.9.0", - "@react-aria/switch": "^3.5.7", - "@react-aria/table": "^3.13.2", - "@react-aria/tabs": "^3.8.2", - "@react-aria/tag": "^3.3.0", - "@react-aria/textfield": "^3.13.0", - "@react-aria/tooltip": "^3.6.5", - "@react-aria/utils": "^3.22.0", - "@react-aria/visually-hidden": "^3.8.7", + "@internationalized/string": "^3.2.0", + "@react-aria/breadcrumbs": "^3.5.9", + "@react-aria/button": "^3.9.1", + "@react-aria/calendar": "^3.5.4", + "@react-aria/checkbox": "^3.13.0", + "@react-aria/combobox": "^3.8.2", + "@react-aria/datepicker": "^3.9.1", + "@react-aria/dialog": "^3.5.10", + "@react-aria/dnd": "^3.5.1", + "@react-aria/focus": "^3.16.0", + "@react-aria/gridlist": "^3.7.3", + "@react-aria/i18n": "^3.10.0", + "@react-aria/interactions": "^3.20.1", + "@react-aria/label": "^3.7.4", + "@react-aria/link": "^3.6.3", + "@react-aria/listbox": "^3.11.3", + "@react-aria/menu": "^3.12.0", + "@react-aria/meter": "^3.4.9", + "@react-aria/numberfield": "^3.10.2", + "@react-aria/overlays": "^3.20.0", + "@react-aria/progress": "^3.4.9", + "@react-aria/radio": "^3.10.0", + "@react-aria/searchfield": "^3.7.1", + "@react-aria/select": "^3.14.1", + "@react-aria/selection": "^3.17.3", + "@react-aria/separator": "^3.3.9", + "@react-aria/slider": "^3.7.4", + "@react-aria/ssr": "^3.9.1", + "@react-aria/switch": "^3.6.0", + "@react-aria/table": "^3.13.3", + "@react-aria/tabs": "^3.8.3", + "@react-aria/tag": "^3.3.1", + "@react-aria/textfield": "^3.14.1", + "@react-aria/tooltip": "^3.7.0", + "@react-aria/utils": "^3.23.0", + "@react-aria/visually-hidden": "^3.8.8", "@react-types/shared": "^3.22.0" }, "peerDependencies": { @@ -23498,33 +23231,33 @@ } }, "node_modules/react-stately": { - "version": "3.28.0", - "resolved": "https://registry.npmjs.org/react-stately/-/react-stately-3.28.0.tgz", - "integrity": "sha512-owEHRGS1zRMwtiR/jeXUjUWyqk8oe53wNtedMvg9+8+NNhDKL4/DXHcIp2A13q08v09xYWgVPtnu8fsF53x2PQ==", + "version": "3.29.1", + "resolved": "https://registry.npmjs.org/react-stately/-/react-stately-3.29.1.tgz", + "integrity": "sha512-hc4ZHy/ahvMwr6z7XMjYJ7EgzNVrXhzM4l2Qj17rdRhERo7/ovWmQencf9pF7K8kD5TraEHxPHLrYzGN4fxfUQ==", "peer": true, "dependencies": { - "@react-stately/calendar": "^3.4.2", - "@react-stately/checkbox": "^3.6.0", - "@react-stately/collections": "^3.10.3", - "@react-stately/combobox": "^3.8.0", + "@react-stately/calendar": "^3.4.3", + "@react-stately/checkbox": "^3.6.1", + "@react-stately/collections": "^3.10.4", + "@react-stately/combobox": "^3.8.1", "@react-stately/data": "^3.11.0", - "@react-stately/datepicker": "^3.9.0", - "@react-stately/dnd": "^3.2.6", + "@react-stately/datepicker": "^3.9.1", + "@react-stately/dnd": "^3.2.7", "@react-stately/form": "^3.0.0", - "@react-stately/list": "^3.10.1", - "@react-stately/menu": "^3.5.7", - "@react-stately/numberfield": "^3.7.0", + "@react-stately/list": "^3.10.2", + "@react-stately/menu": "^3.6.0", + "@react-stately/numberfield": "^3.8.0", "@react-stately/overlays": "^3.6.4", - "@react-stately/radio": "^3.10.0", + "@react-stately/radio": "^3.10.1", "@react-stately/searchfield": "^3.5.0", - "@react-stately/select": "^3.6.0", - "@react-stately/selection": "^3.14.1", - "@react-stately/slider": "^3.4.5", - "@react-stately/table": "^3.11.3", - "@react-stately/tabs": "^3.6.2", + "@react-stately/select": "^3.6.1", + "@react-stately/selection": "^3.14.2", + "@react-stately/slider": "^3.5.0", + "@react-stately/table": "^3.11.4", + "@react-stately/tabs": "^3.6.3", "@react-stately/toggle": "^3.7.0", "@react-stately/tooltip": "^3.4.6", - "@react-stately/tree": "^3.7.4", + "@react-stately/tree": "^3.7.5", "@react-types/shared": "^3.22.0" }, "peerDependencies": { @@ -23637,9 +23370,9 @@ } }, "node_modules/read-pkg/node_modules/type-fest": { - "version": "4.9.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.9.0.tgz", - "integrity": "sha512-KS/6lh/ynPGiHD/LnAobrEFq3Ad4pBzOlJ1wAnJx9N4EYoqFhMfLIBjUT2UEx4wg5ZE+cC1ob6DCSpppVo+rtg==", + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.10.0.tgz", + "integrity": "sha512-NPaKJsb4wyJ16qc8zBQrWswLKv/YirgBFykvUQ1Iajt2wd+twC8E4hFXdlIXqiMl6kWA0zY8tUJ9ELVAdu5h7w==", "dev": true, "engines": { "node": ">=16" @@ -23760,9 +23493,9 @@ } }, "node_modules/regenerator-runtime": { - "version": "0.14.0", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", - "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==" + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" }, "node_modules/regexp.prototype.flags": { "version": "1.5.1", @@ -23806,11 +23539,11 @@ "dev": true }, "node_modules/resend": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resend/-/resend-3.0.0.tgz", - "integrity": "sha512-LpQVIX5tFqQOtTSco8Q0NxP16zh35Sqla5LqLKIQ1PNv3BRwGMeP84cQ6feIg+JWJ3Xk/1yVoqxJJ0C+iUucbA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/resend/-/resend-3.1.0.tgz", + "integrity": "sha512-H+Ll0bAim1L1slAGzjPZlYAlWqihHAdCM14POqJ0AUgEPfwZQ3Eb6Z9HCO5Wsi3IDMHihPx+O77kzgprj5CchQ==", "dependencies": { - "@react-email/render": "0.0.11" + "@react-email/render": "0.0.12" }, "engines": { "node": ">=18" @@ -23938,6 +23671,15 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/rimraf/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/rimraf/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -23957,6 +23699,17 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/rimraf/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/ripemd160": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", @@ -24038,21 +23791,6 @@ } } }, - "node_modules/run-applescript": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz", - "integrity": "sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==", - "dev": true, - "dependencies": { - "execa": "^5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/run-async": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", @@ -24093,13 +23831,13 @@ } }, "node_modules/safe-array-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.1.tgz", - "integrity": "sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.0.tgz", + "integrity": "sha512-ZdQ0Jeb9Ofti4hbt5lX3T2JcAamT9hfzYU1MNB+z/jaEbB6wfFfPIR/zEORmZqobkCCJhSjodobH6WHNmJ97dg==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", + "call-bind": "^1.0.5", + "get-intrinsic": "^1.2.2", "has-symbols": "^1.0.3", "isarray": "^2.0.5" }, @@ -24130,15 +23868,18 @@ ] }, "node_modules/safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.2.tgz", + "integrity": "sha512-83S9w6eFq12BBIJYvjMux6/dkirb8+4zJRA9cxNBVb7Wq5fJBW+Xze48WqR8pxua7bDuAaaAxtVVd4Idjp1dBQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", + "call-bind": "^1.0.5", + "get-intrinsic": "^1.2.2", "is-regex": "^1.1.4" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -24207,6 +23948,11 @@ "seek-table": "bin/seek-bzip-table" } }, + "node_modules/seek-bzip/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, "node_modules/selderee": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/selderee/-/selderee-0.11.0.tgz", @@ -24265,14 +24011,15 @@ "dev": true }, "node_modules/set-function-length": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.1.1.tgz", - "integrity": "sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.0.tgz", + "integrity": "sha512-4DBHDoyHlM1IRPGYcoxexgh67y4ueR53FKV1yyxwFMY7aCqcN/38M1+SwZ/qJQ8iLv7+ck385ot4CcisOAPT9w==", "dependencies": { "define-data-property": "^1.1.1", - "get-intrinsic": "^1.2.1", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.2", "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0" + "has-property-descriptors": "^1.0.1" }, "engines": { "node": ">= 0.4" @@ -24364,6 +24111,15 @@ "node": ">=4" } }, + "node_modules/shelljs/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/shelljs/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -24383,6 +24139,17 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/shelljs/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/shx": { "version": "0.3.4", "resolved": "https://registry.npmjs.org/shx/-/shx-0.3.4.tgz", @@ -24414,7 +24181,8 @@ "node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true }, "node_modules/sisteransi": { "version": "1.0.5", @@ -24468,9 +24236,9 @@ } }, "node_modules/socket.io-client": { - "version": "4.7.2", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.7.2.tgz", - "integrity": "sha512-vtA0uD4ibrYD793SOIAwlo8cj6haOeMHrGvwPxJsxH7CeIksqJ+3Zc06RvWTIFgiSqx4A3sOnTXpfAEE2Zyz6w==", + "version": "4.7.4", + "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.7.4.tgz", + "integrity": "sha512-wh+OkeF0rAVCrABWQBaEjLfb7DVPotMbu0cgWgyR0v6eA4EoVnAwcIeIbcdTE3GT/H3kbdLl7OoH2+asoDRIIg==", "dependencies": { "@socket.io/component-emitter": "~3.1.0", "debug": "~4.3.2", @@ -24674,9 +24442,9 @@ } }, "node_modules/std-env": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.6.0.tgz", - "integrity": "sha512-aFZ19IgVmhdB2uX599ve2kE6BIE3YMnQ6Gp6BURhW/oIzpXGKr878TQfAQZn1+i0Flcc/UKUy1gOlcfaUBCryg==" + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.7.0.tgz", + "integrity": "sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==" }, "node_modules/stop-iteration-iterator": { "version": "1.0.0", @@ -24718,9 +24486,9 @@ } }, "node_modules/stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.3.tgz", + "integrity": "sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==" }, "node_modules/streamsearch": { "version": "1.1.0", @@ -24802,6 +24570,16 @@ "node": ">=8" } }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/string-width/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, "node_modules/string.prototype.matchall": { "version": "4.0.10", "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.10.tgz", @@ -24911,6 +24689,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, "engines": { "node": ">=6" } @@ -24993,13 +24772,13 @@ } }, "node_modules/sucrase": { - "version": "3.34.0", - "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.34.0.tgz", - "integrity": "sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==", + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", "dependencies": { "@jridgewell/gen-mapping": "^0.3.2", "commander": "^4.0.0", - "glob": "7.1.6", + "glob": "^10.3.10", "lines-and-columns": "^1.1.6", "mz": "^2.7.0", "pirates": "^4.0.1", @@ -25010,7 +24789,7 @@ "sucrase-node": "bin/sucrase-node" }, "engines": { - "node": ">=8" + "node": ">=16 || 14 >=14.17" } }, "node_modules/sucrase/node_modules/commander": { @@ -25022,19 +24801,21 @@ } }, "node_modules/sucrase/node_modules/glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" }, "engines": { - "node": "*" + "node": ">=16 || 14 >=14.17" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -25082,12 +24863,12 @@ "dev": true }, "node_modules/synckit": { - "version": "0.8.6", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.6.tgz", - "integrity": "sha512-laHF2savN6sMeHCjLRkheIU4wo3Zg9Ln5YOjOo7sZ5dVQW8yF5pPE5SIw1dsPhq3TRp1jisKRCdPhfs/1WMqDA==", + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.8.tgz", + "integrity": "sha512-HwOKAP7Wc5aRGYdKH+dw0PRRpbO841v2DENBtjnR5HFWoiNByAl7vrx3p0G/rCyYXQsrxqtX48TImFtPcIHSpQ==", "dev": true, "dependencies": { - "@pkgr/utils": "^2.4.2", + "@pkgr/core": "^0.1.0", "tslib": "^2.6.2" }, "engines": { @@ -25097,6 +24878,17 @@ "url": "https://opencollective.com/unts" } }, + "node_modules/system-architecture": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/system-architecture/-/system-architecture-0.1.0.tgz", + "integrity": "sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/tabbable": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", @@ -25188,6 +24980,16 @@ "node": ">=8" } }, + "node_modules/test-exclude/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, "node_modules/test-exclude/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", @@ -25208,6 +25010,18 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/test-exclude/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, "node_modules/text-encoding-utf-8": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/text-encoding-utf-8/-/text-encoding-utf-8-1.0.2.tgz", @@ -25294,18 +25108,6 @@ "resolved": "https://registry.npmjs.org/tinykeys/-/tinykeys-2.1.0.tgz", "integrity": "sha512-/MESnqBD1xItZJn5oGQ4OsNORQgJfPP96XSGoyu4eLpwpL0ifO0SYR5OD76u0YMhMXsqkb0UqvI9+yXTh4xv8Q==" }, - "node_modules/titleize": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/titleize/-/titleize-3.0.0.tgz", - "integrity": "sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/tmp": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", @@ -25437,9 +25239,9 @@ } }, "node_modules/ts-jest": { - "version": "29.1.1", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.1.tgz", - "integrity": "sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA==", + "version": "29.1.2", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.2.tgz", + "integrity": "sha512-br6GJoH/WUX4pu7FbZXuWGKGNDuU7b8Uj77g/Sp7puZV6EXzuByl6JrECvm0MzVzSTkSHWTihsXt+5XYER5b+g==", "dev": true, "dependencies": { "bs-logger": "0.x", @@ -25455,7 +25257,7 @@ "ts-jest": "cli.js" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": "^16.10.0 || ^18.0.0 || >=20.0.0" }, "peerDependencies": { "@babel/core": ">=7.0.0-beta.0 <8", @@ -25762,9 +25564,9 @@ "integrity": "sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==" }, "node_modules/undici": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/undici/-/undici-6.3.0.tgz", - "integrity": "sha512-zkSMOXs2topAR1LF0PxAaNNvhdX4LYEcmRMJLMh3mjgfZpBtc/souXOp4aYiR5Q46HrBPA2/8DkEZhD3eNFE1Q==", + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-6.4.0.tgz", + "integrity": "sha512-wYaKgftNqf6Je7JQ51YzkEkEevzOgM7at5JytKO7BjaURQpERW8edQSMrr2xb+Yv4U8Yg47J24+lc9+NbeXMFA==", "dependencies": { "@fastify/busboy": "^2.0.0" }, @@ -25778,14 +25580,14 @@ "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" }, "node_modules/unenv": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/unenv/-/unenv-1.8.0.tgz", - "integrity": "sha512-uIGbdCWZfhRRmyKj1UioCepQ0jpq638j/Cf0xFTn4zD1nGJ2lSdzYHLzfdXN791oo/0juUiSWW1fBklXMTsuqg==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/unenv/-/unenv-1.9.0.tgz", + "integrity": "sha512-QKnFNznRxmbOF1hDgzpqrlIf6NC5sbZ2OJ+5Wl3OX8uM+LUJXbj4TXvLJCtwbPTmbMHCLIz6JLKNinNsMShK9g==", "dependencies": { "consola": "^3.2.3", "defu": "^6.1.3", "mime": "^3.0.0", - "node-fetch-native": "^1.4.1", + "node-fetch-native": "^1.6.1", "pathe": "^1.1.1" } }, @@ -25902,11 +25704,11 @@ } }, "node_modules/untun": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/untun/-/untun-0.1.2.tgz", - "integrity": "sha512-wLAMWvxfqyTiBODA1lg3IXHQtjggYLeTK7RnSfqtOXixWJ3bAa2kK/HHmOOg19upteqO3muLvN6O/icbyQY33Q==", + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/untun/-/untun-0.1.3.tgz", + "integrity": "sha512-4luGP9LMYszMRZwsvyUd9MrxgEGZdZuZgpVQHEEX0lCYFESasVRvZd0EYpCkOIbJKHMuv0LskpXc/8Un+MJzEQ==", "dependencies": { - "citty": "^0.1.3", + "citty": "^0.1.5", "consola": "^3.2.3", "pathe": "^1.1.1" }, @@ -25987,9 +25789,9 @@ } }, "node_modules/use-callback-ref": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.0.tgz", - "integrity": "sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.3.1.tgz", + "integrity": "sha512-Lg4Vx1XZQauB42Hw3kK7JM6yjVjgFmFC5/Ab797s79aARomD2nEErc4mCgM8EZrARLmmbWpi5DGCadmK50DcAQ==", "dependencies": { "tslib": "^2.0.0" }, @@ -26065,9 +25867,9 @@ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, "node_modules/utility-types": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz", - "integrity": "sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==", + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.11.0.tgz", + "integrity": "sha512-6Z7Ma2aVEWisaL6TvBCy7P8rm2LQoPv6dJ7ecIaIixHcwfbJ0x7mWdbcwlIM5IGQxPZSFYeqRCqlOOeKoJYMkw==", "engines": { "node": ">= 4" } @@ -26226,6 +26028,27 @@ } } }, + "node_modules/wagmi/node_modules/@tanstack/query-core": { + "version": "4.36.1", + "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-4.36.1.tgz", + "integrity": "sha512-DJSilV5+ytBP1FbFcEJovv4rnnm/CokuVvrBEtW/Va9DvuJ3HksbXUJEpI0aV1KtuL4ZoO9AVE6PyNLzF7tLeA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, + "node_modules/wagmi/node_modules/@tanstack/query-persist-client-core": { + "version": "4.36.1", + "resolved": "https://registry.npmjs.org/@tanstack/query-persist-client-core/-/query-persist-client-core-4.36.1.tgz", + "integrity": "sha512-eocgCeI7D7TRv1IUUBMfVwOI0wdSmMkBIbkKhqEdTrnUHUQEeOaYac8oeZk2cumAWJdycu6P/wB+WqGynTnzXg==", + "dependencies": { + "@tanstack/query-core": "4.36.1" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/tannerlinsley" + } + }, "node_modules/wagmi/node_modules/@tanstack/query-sync-storage-persister": { "version": "4.36.1", "resolved": "https://registry.npmjs.org/@tanstack/query-sync-storage-persister/-/query-sync-storage-persister-4.36.1.tgz", @@ -26708,9 +26531,9 @@ } }, "node_modules/zustand": { - "version": "4.4.7", - "resolved": "https://registry.npmjs.org/zustand/-/zustand-4.4.7.tgz", - "integrity": "sha512-QFJWJMdlETcI69paJwhSMJz7PPWjVP8Sjhclxmxmxv/RYI7ZOvR5BHX+ktH0we9gTWQMxcne8q1OY8xxz604gw==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/zustand/-/zustand-4.5.0.tgz", + "integrity": "sha512-zlVFqS5TQ21nwijjhJlx4f9iGrXSL0o/+Dpy4txAP22miJ8Ti6c1Ol1RLNN98BMib83lmDH/2KmLwaNXpjrO1A==", "dependencies": { "use-sync-external-store": "1.2.0" }, @@ -26719,7 +26542,7 @@ }, "peerDependencies": { "@types/react": ">=16.8", - "immer": ">=9.0", + "immer": ">=9.0.6", "react": ">=16.8" }, "peerDependenciesMeta": { diff --git a/package.json b/package.json index cf1065eb..90ee744f 100644 --- a/package.json +++ b/package.json @@ -36,22 +36,19 @@ "@cosmjs/tendermint-rpc": "0.31.x", "@cosmos-kit/core": "2.8.x", "@cosmos-kit/cosmostation": "2.6.x", - "@cosmos-kit/initia": "^0.2.2", "@cosmos-kit/keplr": "2.6.x", "@cosmos-kit/leap": "2.6.x", "@cosmos-kit/okxwallet": "2.4.x", "@cosmos-kit/react": "2.10.x", - "@cosmos-kit/react-lite": "2.6.x", "@cosmos-kit/station": "2.5.x", "@cosmos-kit/vectis": "2.6.x", "@cosmos-kit/xdefi": "2.5.x", "@fontsource/jost": "^5.0.16", "@graz-sh/types": "^0.0.14", - "@headlessui/react": "^1.7.18", "@heroicons/react": "^2.1.1", "@injectivelabs/sdk-ts": "^1.14.5", "@injectivelabs/utils": "^1.14.5", - "@keplr-wallet/types": "^0.12.62", + "@keplr-wallet/types": "^0.12.63", "@radix-ui/react-accordion": "^1.1.2", "@radix-ui/react-collapsible": "^1.0.3", "@radix-ui/react-dialog": "^1.0.5", @@ -59,24 +56,22 @@ "@radix-ui/react-toggle-group": "^1.0.4", "@radix-ui/react-tooltip": "^1.0.7", "@react-stately/table": "^3.11.4", - "@sentry/nextjs": "^7.93.0", - "@skip-router/core": "^1.2.3", + "@skip-router/core": "^1.2.7", + "@sentry/nextjs": "^7.94.1", "@tailwindcss/forms": "^0.5.7", - "@tanstack/query-sync-storage-persister": "^5.17.15", - "@tanstack/react-query": "^5.17.15", - "@tanstack/react-query-persist-client": "^5.17.15", + "@tanstack/query-sync-storage-persister": "^5.17.19", + "@tanstack/react-query": "^5.17.19", + "@tanstack/react-query-persist-client": "^5.17.19", "@types/node": "^20.11.5", "@types/react": "^18.2.48", "@types/react-dom": "^18.2.18", "@vercel/analytics": "^1.1.2", "@vercel/edge-config": "^0.4.1", - "@web3modal/core": "^3.5.6", - "@web3modal/ui": "^3.5.6", "autoprefixer": "^10.4.17", "axios": "^1.6.5", "clsx": "^2.1.0", "cosmjs-types": "0.8.x", - "date-fns": "^3.2.0", + "date-fns": "^3.3.1", "download": "^8.0.0", "ethers": "^6.10.0", "match-sorter": "^6.3.3", @@ -87,26 +82,26 @@ "react": "^18.2.0", "react-dom": "^18.2.0", "react-hot-toast": "^2.4.1", - "resend": "^3.0.0", + "resend": "^3.1.0", "tailwindcss": "^3.4.1", "tinykeys": "^2.1.0", - "undici": "^6.3.0", + "undici": "^6.4.0", "viem": "1.x", "wagmi": "1.x", "zod": "^3.22.4", - "zustand": "^4.4.7" + "zustand": "^4.5.0" }, "devDependencies": { - "@playwright/test": "^1.41.0", - "@tanstack/eslint-plugin-query": "^5.17.7", - "@testing-library/jest-dom": "^6.2.0", + "@playwright/test": "^1.41.1", + "@tanstack/eslint-plugin-query": "^5.17.20", + "@testing-library/jest-dom": "^6.2.1", "@testing-library/react": "^14.1.2", "@testing-library/user-event": "^14.5.2", "@types/download": "^8.0.5", "@types/jest": "^29.5.11", "@types/testing-library__jest-dom": "^5.14.9", - "@typescript-eslint/eslint-plugin": "^6.19.0", - "@typescript-eslint/parser": "^6.19.0", + "@typescript-eslint/eslint-plugin": "^6.19.1", + "@typescript-eslint/parser": "^6.19.1", "eslint": "^8.56.0", "eslint-config-next": "^14.1.0", "eslint-config-prettier": "^9.1.0", @@ -122,7 +117,7 @@ "prettier": "^3.2.4", "prettier-plugin-tailwindcss": "^0.5.11", "resize-observer-polyfill": "^1.5.1", - "ts-jest": "^29.1.1", + "ts-jest": "^29.1.2", "tsx": "^4.7.0", "typed-query-selector": "^2.11.0", "typescript": "5.2.x" diff --git a/src/components/AssetInput.tsx b/src/components/AssetInput.tsx index 03849ab0..731e09ce 100644 --- a/src/components/AssetInput.tsx +++ b/src/components/AssetInput.tsx @@ -4,7 +4,7 @@ import { formatUnits } from "ethers"; import { MouseEventHandler, useMemo } from "react"; import { AssetWithMetadata, useAssets } from "@/context/assets"; -import { useSettingsStore } from "@/context/settings"; +import { useAnyDisclosureOpen } from "@/context/disclosures"; import { useAccount } from "@/hooks/useAccount"; import { useBalancesByChain } from "@/hooks/useBalancesByChain"; import { Chain } from "@/hooks/useChains"; @@ -21,13 +21,15 @@ interface Props { amountUSD?: string; diffPercentage?: number; onAmountChange?: (amount: string) => void; + onAmountMax?: MouseEventHandler; asset?: AssetWithMetadata; onAssetChange?: (asset: AssetWithMetadata) => void; chain?: Chain; onChainChange?: (chain: Chain) => void; chains: Chain[]; showBalance?: boolean; - context?: "src" | "dest"; + context: "source" | "destination"; + isError?: string | boolean; isLoading?: boolean; } @@ -36,6 +38,7 @@ function AssetInput({ amountUSD, diffPercentage = 0, onAmountChange, + onAmountMax, asset, onAssetChange, chain, @@ -43,69 +46,46 @@ function AssetInput({ onChainChange, showBalance, context, + isError, isLoading, }: Props) { const { assetsByChainID, getNativeAssets } = useAssets(); const assets = useMemo(() => { - if (!chain) { - return getNativeAssets(); - } - + if (!chain) return getNativeAssets(); return assetsByChainID(chain.chainID); }, [assetsByChainID, chain, getNativeAssets]); - const showChainInfo = chain ? false : true; + const account = useAccount(context); - const account = useAccount(context === "src" ? "source" : "destination"); + const isAnyDisclosureOpen = useAnyDisclosureOpen(); - const { data: balances } = useBalancesByChain(account?.address, chain, assets); + const { data: balances } = useBalancesByChain({ + address: account?.address, + chain, + assets, + enabled: !isAnyDisclosureOpen, + }); const selectedAssetBalance = useMemo(() => { - if (!asset || !balances) return 0; - - const balanceWei = balances[asset.denom]; - if (!balanceWei) return 0; - - return parseFloat(formatUnits(balanceWei, asset.decimals)); + if (!asset || !balances) return "0"; + return formatUnits(balances[asset.denom] ?? "0", asset.decimals ?? 6); }, [asset, balances]); - const formattedSelectedAssetBalance = useMemo(() => { - return selectedAssetBalance.toLocaleString("en-US", { - minimumFractionDigits: 2, - maximumFractionDigits: 4, - }); - }, [selectedAssetBalance]); - const maxButtonDisabled = useMemo(() => { - return selectedAssetBalance <= 0; + return parseFloat(selectedAssetBalance) <= 0; }, [selectedAssetBalance]); - const handleMax: MouseEventHandler = (event) => { - if (!selectedAssetBalance || !chain || !asset) return; - - let balance = new BigNumber(selectedAssetBalance); - - if (event.shiftKey) { - onAmountChange?.(balance.toString()); - return; - } - - const { gasComputed } = useSettingsStore.getState(); - gasComputed && (balance = balance.minus(gasComputed)); - - onAmountChange?.(balance.toString()); - }; - return (
-
+
-
+
{isLoading && }

{amountUSD ? formatUSD(amountUSD) : null}

- {amountUSD !== undefined && diffPercentage !== 0 && context === "dest" ? ( + {amountUSD !== undefined && diffPercentage !== 0 && context === "destination" ? (

= 0 ? "text-green-500" : "text-red-500")}> ({formatPercent(diffPercentage)})

@@ -197,14 +177,16 @@ function AssetInput({ {showBalance && account?.address && asset && (
Balance: - +
- {formattedSelectedAssetBalance} + {parseFloat(selectedAssetBalance).toLocaleString("en-US", { + maximumFractionDigits: 4, + })}
@@ -221,6 +203,11 @@ function AssetInput({ )}
+ {typeof isError === "string" && ( +
+ {isError} +
+ )}
); } diff --git a/src/components/Footer.tsx b/src/components/Footer.tsx index 42c673ab..45c6446a 100644 --- a/src/components/Footer.tsx +++ b/src/components/Footer.tsx @@ -6,15 +6,10 @@ import { useDisclosureKey } from "@/context/disclosures"; export function Footer() { const [isOpen, { open }] = useDisclosureKey("contactDialog"); return ( -
+
@@ -213,7 +233,7 @@ export const Item = forwardRef(function Item(props, r "flex items-center justify-center space-x-1", "bg-[#FF486E]/20 text-[#FF486E] hover:bg-[#FF486E]/30", )} - onClick={() => removeTxHistory(id)} + onClick={() => txHistory.remove(id)} > diff --git a/src/components/HistoryDialog/SyncState.tsx b/src/components/HistoryDialog/SyncState.tsx new file mode 100644 index 00000000..daec7605 --- /dev/null +++ b/src/components/HistoryDialog/SyncState.tsx @@ -0,0 +1,137 @@ +import { RouteResponse, SkipRouter, TxStatusResponse } from "@skip-router/core"; +import { differenceInMinutes, parseISO } from "date-fns"; +import { useCallback, useEffect } from "react"; + +import { txHistory, TxHistoryItem } from "@/context/tx-history"; +import { useSkipClient } from "@/solve"; + +export function useSyncState() { + const skipClient = useSkipClient(); + + const sync = useCallback( + async (skipIfOlderThanMinutes?: number) => { + for (const [id, historyItem] of Object.entries(history)) { + if ( + skipIfOlderThanMinutes && + differenceInMinutes(new Date(), parseISO(historyItem.timestamp)) > skipIfOlderThanMinutes + ) { + continue; + } + + if (historyItem.status === "pending") { + await updatePendingRoute(id, historyItem, skipClient); + } + + if (historyItemIsMissingAxelarlarscanLink(historyItem)) { + await updateAxelarscanLink(id, historyItem, skipClient); + } + } + }, + [skipClient], + ); + + return sync; +} + +export function SyncState({ skipIfOlderThanMinutes }: { skipIfOlderThanMinutes?: number }) { + const sync = useSyncState(); + + useEffect(() => { + sync(skipIfOlderThanMinutes); + }, [sync, skipIfOlderThanMinutes]); + + return null; +} + +/////////////////////////////////////////////////////////////////////////////// + +function routeHasAxelarTransfer(route: RouteResponse): boolean { + for (const operation of route.operations) { + if ("axelarTransfer" in operation) { + return true; + } + } + return false; +} + +function historyItemIsMissingAxelarlarscanLink(historyItem: TxHistoryItem) { + if (!routeHasAxelarTransfer(historyItem.route)) { + return false; + } + + for (const tx of historyItem.txStatus) { + if (tx.axelarscanLink) { + return false; + } + } + + return true; +} + +function maybeGetAxelarscanLinkFromTransactionStatus(status: TxStatusResponse): string | undefined { + for (const seqEvent of status.transferSequence) { + if ("axelarTransfer" in seqEvent) { + if ("contractCallWithTokenTxs" in seqEvent.axelarTransfer.txs) { + return seqEvent.axelarTransfer.txs.contractCallWithTokenTxs.sendTx + ? `https://axelarscan.io/gmp/${seqEvent.axelarTransfer.txs.contractCallWithTokenTxs.sendTx.txHash}` + : undefined; + } + + if ("sendTokenTxs" in seqEvent.axelarTransfer.txs) { + return seqEvent.axelarTransfer.txs.sendTokenTxs.sendTx + ? `https://axelarscan.io/transfer/${seqEvent.axelarTransfer.txs.sendTokenTxs.sendTx.txHash}` + : undefined; + } + } + } + return undefined; +} + +async function updatePendingRoute(id: string, historyItem: TxHistoryItem, skipClient: SkipRouter) { + const firstTx = historyItem.txStatus.length > 0 ? historyItem.txStatus[0] : undefined; + + if (!firstTx) { + return; + } + + try { + const status = await skipClient.transactionStatus({ + chainID: firstTx.chainId, + txHash: firstTx.txHash, + }); + + if (status.state === "STATE_COMPLETED_SUCCESS") { + txHistory.success(id); + } + + if (status.state === "STATE_COMPLETED_ERROR") { + txHistory.fail(id); + } + } catch { + // Sometimes this is called before the API knows about the transaction. We can probably safely ignore errors. + } +} + +async function updateAxelarscanLink(id: string, historyItem: TxHistoryItem, skipClient: SkipRouter) { + for (const tx of historyItem.txStatus) { + try { + const status = await skipClient.transactionStatus({ + chainID: tx.chainId, + txHash: tx.txHash, + }); + + const axelarscanLink = maybeGetAxelarscanLinkFromTransactionStatus(status); + + if (axelarscanLink && !tx.axelarscanLink) { + if (axelarscanLink) { + txHistory.updateStatus(id, { + ...tx, + axelarscanLink, + }); + } + } + } catch { + /* empty */ + } + } +} diff --git a/src/components/HistoryDialog/index.tsx b/src/components/HistoryDialog/index.tsx index 03ad4500..bf7f8ac6 100644 --- a/src/components/HistoryDialog/index.tsx +++ b/src/components/HistoryDialog/index.tsx @@ -10,6 +10,7 @@ import { useTxHistory } from "@/context/tx-history"; import { HistoryClearButton } from "./HistoryClearButton"; import * as HistoryList from "./HistoryList"; +import { useSyncState } from "./SyncState"; export const HistoryDialog = () => { const [isOpen, { close }] = useDisclosureKey("historyDialog"); @@ -21,6 +22,8 @@ export const HistoryDialog = () => { return isReady ? Object.entries(history).reverse() : undefined; }, [history, isReady]); + useSyncState(); + return ( = ({ amount, symbol, logo, chain }) => { +} + +function RouteEnd({ amount, symbol, logo, chain }: RouteEndProps) { return (
@@ -71,19 +74,28 @@ const RouteEnd: FC<{

- {amount} {symbol} + + + {parseFloat(amount).toLocaleString("en-US", { + maximumFractionDigits: 8, + })} + + {" "} + {symbol}

On {chain}

); -}; +} -const TransferStep: FC<{ +interface TransferStepProps { action: TransferAction; id: string; statusData?: ReturnType["data"]; -}> = ({ action, id, statusData }) => { +} + +function TransferStep({ action, id, statusData }: TransferStepProps) { const { data: sourceChain } = useChainByID(action.sourceChain); const { data: destinationChain } = useChainByID(action.destinationChain); @@ -92,7 +104,7 @@ const TransferStep: FC<{ const transfer = statusData?.transferSequence[operationCount]; // We can assume that the transfer is successful when the state is TRANSFER_SUCCESS or TRANSFER_RECEIVED - const transferState = useMemo(() => { + const renderTransferState = useMemo(() => { switch (transfer?.state) { case "TRANSFER_SUCCESS": return ( @@ -124,7 +136,7 @@ const TransferStep: FC<{ } }, [transfer?.state]); - const renderExplorerLink = () => { + const renderExplorerLink = useMemo(() => { if (!transfer?.explorerLink) return null; return ( ); - }; + }, [transfer?.explorerLink]); const { getAsset } = useAssets(); @@ -150,7 +162,7 @@ const TransferStep: FC<{ if (!asset) { return (
-
{transferState}
+
{renderTransferState}

Transfer to{" "} @@ -161,7 +173,7 @@ const TransferStep: FC<{ />{" "} {destinationChain.prettyName}

- {renderExplorerLink()} + {renderExplorerLink}
); @@ -169,7 +181,7 @@ const TransferStep: FC<{ return (
-
{transferState}
+
{renderTransferState}

Transfer{" "} @@ -194,18 +206,20 @@ const TransferStep: FC<{ />{" "} {destinationChain.prettyName}

- {renderExplorerLink()} + {renderExplorerLink}
); -}; +} -const SwapStep: FC<{ +interface SwapStepProps { action: SwapAction; actions: Action[]; id: string; statusData?: ReturnType["data"]; -}> = ({ action, actions, id, statusData }) => { +} + +function SwapStep({ action, actions, id, statusData }: SwapStepProps) { const { getAsset } = useAssets(); const assetIn = getAsset(action.sourceAsset, action.chain); @@ -225,7 +239,7 @@ const SwapStep: FC<{ const swap = statusData?.transferSequence[operationCount]; // as for swap operations, we can assume that the swap is successful if the previous transfer state is TRANSFER_SUCCESS - const swapState = useMemo(() => { + const renderSwapState = useMemo(() => { switch (swap?.state) { case "TRANSFER_RECEIVED": return ( @@ -251,7 +265,7 @@ const SwapStep: FC<{ } }, [swap?.state]); - const renderExplorerLink = () => { + const renderExplorerLink = useMemo(() => { if (!swap?.explorerLink) return null; if (swap?.state !== "TRANSFER_SUCCESS") return null; return ( @@ -264,12 +278,12 @@ const SwapStep: FC<{ ); - }; + }, [swap?.explorerLink, swap?.state]); if (!assetIn && assetOut) { return (
-
{swapState}
+
{renderSwapState}

Swap to{" "} @@ -288,7 +302,7 @@ const SwapStep: FC<{ />{" "} {venue.name}

- {renderExplorerLink()} + {renderExplorerLink}
); @@ -297,7 +311,7 @@ const SwapStep: FC<{ if (assetIn && !assetOut) { return (
-
{swapState}
+
{renderSwapState}

Swap{" "} @@ -314,7 +328,7 @@ const SwapStep: FC<{ />{" "} {venue.name}

- {renderExplorerLink()} + {renderExplorerLink}
); @@ -326,7 +340,7 @@ const SwapStep: FC<{ return (
-
{swapState}
+
{renderSwapState}

Swap{" "} @@ -349,20 +363,20 @@ const SwapStep: FC<{ />{" "} {venue.name}

- {renderExplorerLink()} + {renderExplorerLink}
); -}; +} -interface Props { +interface RouteDisplayProps { route: RouteResponse; isRouteExpanded: boolean; setIsRouteExpanded: Dispatch>; broadcastedTxs?: BroadcastedTx[]; } -const RouteDisplay: FC = ({ route, isRouteExpanded, setIsRouteExpanded, broadcastedTxs }) => { +function RouteDisplay({ route, isRouteExpanded, setIsRouteExpanded, broadcastedTxs }: RouteDisplayProps) { const { getAsset } = useAssets(); const sourceAsset = getAsset(route.sourceAssetDenom, route.sourceAssetChainID); @@ -442,7 +456,12 @@ const RouteDisplay: FC = ({ route, isRouteExpanded, setIsRouteExpanded, b return; } - const sourceChain = operation.transfer.chainID; + let sourceChain = ""; + if ("cctpTransfer" in operation) { + sourceChain = operation.cctpTransfer.fromChainID; + } else { + sourceChain = operation.transfer.chainID; + } let destinationChain = ""; if (i === route.operations.length - 1) { @@ -459,6 +478,8 @@ const RouteDisplay: FC = ({ route, isRouteExpanded, setIsRouteExpanded, b } } else if ("axelarTransfer" in nextOperation) { destinationChain = nextOperation.axelarTransfer.toChainID; + } else if ("cctpTransfer" in nextOperation) { + destinationChain = nextOperation.cctpTransfer.toChainID; } else { destinationChain = nextOperation.transfer.chainID; } @@ -472,14 +493,18 @@ const RouteDisplay: FC = ({ route, isRouteExpanded, setIsRouteExpanded, b id: `transfer-${transferCount}-${i}`, }); - asset = operation.transfer.destDenom; + if ("cctpTransfer" in operation) { + asset = operation.cctpTransfer.burnToken; + } else { + asset = operation.transfer.destDenom; + } transferCount++; }); return _actions; }, [route]); - const { data: statusData } = useBroadcastedTxsStatus(route.txsRequired, broadcastedTxs); + const { data: statusData } = useBroadcastedTxsStatus({ txsRequired: route.txsRequired, txs: broadcastedTxs }); return (
@@ -496,7 +521,7 @@ const RouteDisplay: FC = ({ route, isRouteExpanded, setIsRouteExpanded, b /> {isRouteExpanded && (
{isRouteExpanded && - actions.map((action, i) => { - return ( - - {action.type === "SWAP" && ( - - )} - {action.type === "TRANSFER" && ( - - )} - - ); - })} + actions.map((action, i) => ( + + {action.type === "SWAP" && ( + + )} + {action.type === "TRANSFER" && ( + + )} + + ))} {!isRouteExpanded && (
); -}; +} -const Spinner = () => { +function Spinner() { return ( { /> ); -}; +} export default RouteDisplay; diff --git a/src/components/SettingsDialog/GasSetting.tsx b/src/components/SettingsDialog/GasSetting.tsx index 767f58d6..9a2ebb77 100644 --- a/src/components/SettingsDialog/GasSetting.tsx +++ b/src/components/SettingsDialog/GasSetting.tsx @@ -2,7 +2,7 @@ import { useSettingsStore } from "@/context/settings"; import { formatNumberWithCommas, formatNumberWithoutCommas } from "@/utils/number"; export const GasSetting = () => { - const currentValue = useSettingsStore((state) => state.gasMultiplier); + const currentValue = useSettingsStore((state) => state.gasAmount); return (
@@ -23,7 +23,7 @@ export const GasSetting = () => { latest = latest.replace(/[,]{2,}/g, ","); // Remove multiple commas const value = Math.max(0, +latest); - useSettingsStore.setState({ gasMultiplier: value.toString() }); + useSettingsStore.setState({ gasAmount: value.toString() }); }} />
diff --git a/src/components/SwapWidget/SwapDetails.tsx b/src/components/SwapWidget/SwapDetails.tsx index 1b0ff337..ba9b0006 100644 --- a/src/components/SwapWidget/SwapDetails.tsx +++ b/src/components/SwapWidget/SwapDetails.tsx @@ -2,18 +2,18 @@ import { ChevronDownIcon, PencilSquareIcon } from "@heroicons/react/16/solid"; import * as Collapsible from "@radix-ui/react-collapsible"; import { RouteResponse } from "@skip-router/core"; import { clsx } from "clsx"; -import { Fragment, useEffect, useMemo } from "react"; +import { useMemo } from "react"; import { disclosure, useDisclosureKey } from "@/context/disclosures"; import { useSettingsStore } from "@/context/settings"; -import { formatMaxFraction, formatPercent } from "@/utils/intl"; +import { formatPercent } from "@/utils/intl"; import { ConversionRate } from "../ConversionRate"; import { SimpleTooltip } from "../SimpleTooltip"; import { UsdValue } from "../UsdValue"; -import { FormValues } from "./useSwapWidget"; +import { SwapWidgetStore } from "./useSwapWidget"; -type Props = FormValues & { +type Props = SwapWidgetStore & { amountOut: string; route: RouteResponse; priceImpactPercent: number; @@ -25,6 +25,7 @@ export const SwapDetails = ({ amountOut, sourceChain, sourceAsset, + gasRequired, destinationChain, destinationAsset, route, @@ -33,33 +34,27 @@ export const SwapDetails = ({ }: Props) => { const [open, control] = useDisclosureKey("swapDetailsCollapsible"); - const { gasComputed, slippage } = useSettingsStore(); + const { gasAmount, slippage } = useSettingsStore(); const axelarTransferOperation = useMemo(() => { for (const op of route.operations) { if ("axelarTransfer" in op) return op; } - return null; }, [route]); const bridgingFee = useMemo(() => { - if (!axelarTransferOperation) return 0; - const { feeAmount } = axelarTransferOperation.axelarTransfer; - return +feeAmount / Math.pow(10, 18); + if (!axelarTransferOperation) return; + const { feeAmount, asset } = axelarTransferOperation.axelarTransfer; + const computed = (+feeAmount / Math.pow(10, 18)).toLocaleString("en-US", { + maximumFractionDigits: 6, + }); + return `${computed} ${asset}`; }, [axelarTransferOperation]); - useEffect(() => { - if (priceImpactThresholdReached) { - control.open(); - } - }, [control, priceImpactThresholdReached]); - if (!(sourceChain && sourceAsset && destinationChain && destinationAsset)) { return null; } - const isEvm = sourceChain?.chainType === "evm" || destinationChain?.chainType === "evm"; - return (
@@ -137,10 +132,10 @@ export const SwapDetails = ({ )} > {priceImpactPercent ? ( - + <>
Price Impact
{formatPercent(priceImpactPercent)}
-
+ ) : null}
Slippage
@@ -158,9 +153,11 @@ export const SwapDetails = ({ {slippage}%
-
Gas Adjustment
+
Estimated Fee
+
{gasRequired ?? "-"}
+
Gas Amount
- + - {gasComputed && - parseFloat(gasComputed).toLocaleString("en-US", { - maximumFractionDigits: 8, - })} + {parseFloat(gasAmount).toLocaleString()}
Bridging Fee
-
- {formatMaxFraction(bridgingFee)} {isEvm ? "ETH" : ""} -
+
{bridgingFee ?? "-"}
diff --git a/src/components/SwapWidget/SwapWidget.tsx b/src/components/SwapWidget/SwapWidget.tsx index 1e53ec11..bf577f3a 100644 --- a/src/components/SwapWidget/SwapWidget.tsx +++ b/src/components/SwapWidget/SwapWidget.tsx @@ -40,21 +40,25 @@ export function SwapWidget() { destinationAsset, destinationChain, direction, - insufficientBalance, + isAmountError, numberOfTransactions, onDestinationAssetChange, onDestinationChainChange, + onDestinationAmountChange, onSourceAssetChange, onSourceChainChange, + onSourceAmountChange, + onSourceAmountMax, + onInvertDirection, priceImpactThresholdReached, route, routeError, routeLoading, routeWarningMessage, routeWarningTitle, - setFormValues, sourceAsset, sourceChain, + sourceFeeAmount, swapPriceImpactPercent, } = useSwapWidget(); @@ -135,14 +139,14 @@ export function SwapWidget() { asset={sourceAsset} chain={sourceChain} chains={chains ?? []} - onAmountChange={(amount) => { - setFormValues({ amountIn: amount, direction: "swap-in" }); - }} + onAmountChange={onSourceAmountChange} + onAmountMax={onSourceAmountMax} onAssetChange={onSourceAssetChange} onChainChange={onSourceChainChange} showBalance - context="src" + context="source" isLoading={direction === "swap-out" && routeLoading} + isError={isAmountError} />
@@ -158,15 +162,7 @@ export function SwapWidget() { onClick={() => { if (!destinationChain || !invertButtonRef.current) return; invertButtonRef.current.setAttribute("data-swap", "true"); - setFormValues({ - sourceChain: destinationChain, - sourceAsset: destinationAsset, - destinationChain: sourceChain, - destinationAsset: sourceAsset, - amountIn: amountOut, - amountOut: amountIn, - direction: direction === "swap-in" ? "swap-out" : "swap-in", - }); + onInvertDirection(); }} data-testid="swap-button" ref={invertButtonRef} @@ -206,12 +202,10 @@ export function SwapWidget() { asset={destinationAsset} chain={destinationChain} chains={chains ?? []} - onAmountChange={(amount) => { - setFormValues({ amountOut: amount, direction: "swap-out" }); - }} + onAmountChange={onDestinationAmountChange} onAssetChange={onDestinationAssetChange} onChainChange={onDestinationChainChange} - context="dest" + context="destination" isLoading={direction === "swap-in" && routeLoading} />
@@ -222,6 +216,7 @@ export function SwapWidget() { amountOut={amountOut} sourceChain={sourceChain} sourceAsset={sourceAsset} + gasRequired={sourceFeeAmount} destinationChain={destinationChain} destinationAsset={destinationAsset} route={route} @@ -247,7 +242,12 @@ export function SwapWidget() { )} {!isWalletConnected && ( )} - {insufficentBalance && !transacting && !txComplete && ( + {isAmountError && !transacting && !txComplete && (

Insufficient Balance

)} diff --git a/src/components/TransactionDialog/index.tsx b/src/components/TransactionDialog/index.tsx index 43e08aa0..3eb8c58e 100644 --- a/src/components/TransactionDialog/index.tsx +++ b/src/components/TransactionDialog/index.tsx @@ -13,7 +13,7 @@ interface Props { isLoading?: boolean; route?: RouteResponse; transactionCount: number; - insufficientBalance?: boolean | string; + isAmountError?: boolean | string; shouldShowPriceImpactWarning?: boolean; routeWarningMessage?: string; routeWarningTitle?: string; @@ -22,7 +22,7 @@ interface Props { function TransactionDialog({ isLoading, route, - insufficientBalance, + isAmountError, transactionCount, shouldShowPriceImpactWarning, routeWarningMessage, @@ -69,7 +69,7 @@ function TransactionDialog({ setIsOpen(false)} - insufficentBalance={insufficientBalance} + isAmountError={isAmountError} transactionCount={transactionCount} /> )} diff --git a/src/components/WalletModal/WalletListItem.tsx b/src/components/WalletModal/WalletListItem.tsx index 7c29dc0e..7333cca5 100644 --- a/src/components/WalletModal/WalletListItem.tsx +++ b/src/components/WalletModal/WalletListItem.tsx @@ -1,10 +1,11 @@ -import { useWalletClient as useCosmosWalletClient } from "@cosmos-kit/react"; +import { useWallet, useWalletClient as useCosmosWalletClient } from "@cosmos-kit/react"; import { ComponentProps, useEffect, useMemo } from "react"; import toast from "react-hot-toast"; import { useConnect } from "wagmi"; import { create } from "zustand"; import { MergedWalletClient } from "@/lib/cosmos-kit"; +import { isMobile } from "@/utils/os"; const useStore = create>(() => ({})); @@ -39,15 +40,25 @@ const CosmosWalletListItem = ({ walletName: string; }) => { const { client } = useCosmosWalletClient(walletName); + const { wallet } = useWallet(walletName); + const walletClient = client as MergedWalletClient | undefined; + const isWalletConnect = wallet?.mode === "wallet-connect"; + const _isMobile = isMobile(); const show = useMemo(() => { if (!walletClient) return false; if ("snapInstalled" in walletClient) { return walletClient.snapInstalled; } + if (_isMobile) { + return isWalletConnect || walletClient; + } + if (!_isMobile) { + return !isWalletConnect; + } return true; - }, [walletClient]); + }, [_isMobile, isWalletConnect, walletClient]); useEffect(() => { const unregister = () => { diff --git a/src/components/WalletModal/WalletModal.tsx b/src/components/WalletModal/WalletModal.tsx index 77693d7c..b47443c4 100644 --- a/src/components/WalletModal/WalletModal.tsx +++ b/src/components/WalletModal/WalletModal.tsx @@ -10,6 +10,7 @@ import { DialogContent } from "@/components/Dialog"; import { EVM_WALLET_LOGOS, INJECTED_EVM_WALLET_LOGOS } from "@/constants/wagmi"; import { trackWallet } from "@/context/track-wallet"; import { useChainByID } from "@/hooks/useChains"; +import { gracefullyConnect } from "@/utils/wallet"; import { AdaptiveLink } from "../AdaptiveLink"; import { useWalletModal } from "./context"; @@ -168,40 +169,26 @@ function WalletModalWithContext() { if (chainType === "cosmos") { const chainName = chainIdToName[chainID]; const walletRepo = getWalletRepo(chainName); - wallets = walletRepo.wallets.map((w) => ({ - walletName: w.walletName, - walletPrettyName: w.walletPrettyName, + wallets = walletRepo.wallets.map((wallet) => ({ + walletName: wallet.walletName, + walletPrettyName: wallet.walletPrettyName, walletInfo: { - logo: w.walletInfo.logo, + logo: wallet.walletInfo.logo, }, connect: async () => { - await w.client.addChain?.({ - chain: { - bech32_prefix: w.chain.bech32_prefix, - chain_id: w.chain.chain_id, - chain_name: w.chain.chain_name, - network_type: w.chain.network_type, - pretty_name: w.chain.pretty_name, - slip44: w.chain.slip44, - status: w.chain.status, - apis: w.chain.apis, - bech32_config: w.chain.bech32_config, - explorers: w.chain.explorers, - extra_codecs: w.chain.extra_codecs, - fees: w.chain.fees, - peers: w.chain.peers, - }, - name: w.chainName, - assetList: w.assetList, - }); - await w.connect(); - context && trackWallet.track(context, chainID, w.walletName, chainType); + try { + await gracefullyConnect(wallet); + context && trackWallet.track(context, chainID, wallet.walletName, chainType); + } catch (error) { + console.error(error); + context && trackWallet.untrack(context); + } }, disconnect: async () => { - await w.disconnect(); + await wallet.disconnect(); context && trackWallet.untrack(context); }, - isWalletConnected: w.isWalletConnected, + isWalletConnected: wallet.isWalletConnected, })); } diff --git a/src/context/assets.tsx b/src/context/assets.tsx index fe3f4c76..0dc1f511 100644 --- a/src/context/assets.tsx +++ b/src/context/assets.tsx @@ -1,5 +1,5 @@ import { Asset } from "@skip-router/core"; -import { createContext, FC, PropsWithChildren, useCallback, useContext, useEffect, useMemo } from "react"; +import { createContext, ReactNode, useCallback, useContext, useEffect, useMemo } from "react"; import { useChains } from "@/hooks/useChains"; @@ -11,7 +11,7 @@ interface AssetsContext { assets: Record; assetsByChainID: (chainID?: string) => AssetWithMetadata[]; getAsset(denom: string, chainID: string): AssetWithMetadata | undefined; - getFeeDenom(chainID: string): AssetWithMetadata | undefined; + getFeeAsset(chainID: string): AssetWithMetadata | undefined; getNativeAssets(): AssetWithMetadata[]; isReady: boolean; } @@ -20,12 +20,12 @@ export const AssetsContext = createContext({ assets: {}, assetsByChainID: () => [], getAsset: () => undefined, - getFeeDenom: () => undefined, + getFeeAsset: () => undefined, getNativeAssets: () => [], isReady: false, }); -export const AssetsProvider: FC = ({ children }) => { +export function AssetsProvider({ children }: { children: ReactNode }) { const { data: chains } = useChains(); const { data: solveAssets } = useSolveAssets(); @@ -56,20 +56,21 @@ export const AssetsProvider: FC = ({ children }) => { [assets], ); - const getFeeDenom = useCallback( + const getFeeAsset = useCallback( (chainID: string) => { const chain = (chains ?? []).find((chain) => chain.chainID === chainID); - if (!chain || chain.feeAssets.length === 0) return undefined; + if (!chain || chain.feeAssets.length === 0) return; - // prioritize non-ibc assets - const sortedFeeDenoms = [...chain.feeAssets].sort((a, b) => { - if (a.denom.includes("ibc/")) return 1; - if (b.denom.includes("ibc/")) return -1; + // deprio denoms start with 'ibc/' and 'factory/' + const [firstFeeAsset] = chain.feeAssets.sort((a, b) => { + if (a.denom.match(/^(ibc|factory)\//)) return 1; + if (b.denom.match(/^(ibc|factory)\//)) return -1; return 0; }); + if (!firstFeeAsset) return; - return getAsset(sortedFeeDenoms[0].denom, chainID); + return getAsset(firstFeeAsset.denom, chainID); }, [chains, getAsset], ); @@ -111,7 +112,7 @@ export const AssetsProvider: FC = ({ children }) => { assets, assetsByChainID, getAsset, - getFeeDenom, + getFeeAsset, getNativeAssets, isReady, }} @@ -119,7 +120,7 @@ export const AssetsProvider: FC = ({ children }) => { {children} ); -}; +} export function useAssets() { return useContext(AssetsContext); diff --git a/src/context/settings.ts b/src/context/settings.ts index 995aa196..5123442e 100644 --- a/src/context/settings.ts +++ b/src/context/settings.ts @@ -2,20 +2,18 @@ import { create } from "zustand"; import { persist } from "zustand/middleware"; interface SettingsStore { - gasComputed?: string; - gasMultiplier: string; + gasAmount: string; slippage: string; } export const defaultValues: SettingsStore = { - gasComputed: undefined, - gasMultiplier: (150_000).toString(), + gasAmount: (200_000).toString(), slippage: (3).toString(), }; export const useSettingsStore = create()( persist(() => defaultValues, { name: "SettingsState", - version: 1, + version: 3, }), ); diff --git a/src/context/tx-history.ts b/src/context/tx-history.ts index 9ebbfafd..4c32a601 100644 --- a/src/context/tx-history.ts +++ b/src/context/tx-history.ts @@ -22,101 +22,99 @@ export type TxHistoryItemInput = Pick; export type TxHistoryState = Record; +const defaultValues: TxHistoryState = {}; + export const useTxHistory = create( - persist((): TxHistoryState => ({}), { + persist(() => defaultValues, { name: "TxHistoryState", version: 1, }), ); -export const addTxHistory = (input: TxHistoryItemInput) => { - const id = randomId(); - - const newItem: TxHistoryItem = { - txStatus: [], - timestamp: new Date().toISOString(), - status: "pending", - ...input, - }; - - useTxHistory.setState({ [id]: newItem }); - - return [id, newItem] as const; -}; - -export const successTxHistory = (id: string) => { - useTxHistory.setState((state) => { - const current = state[id]; - if (!current) return state; - - const latest: TxHistoryItem = { - ...current, - status: "success", - }; - - return { [id]: latest }; - }); -}; - -export const failTxHistory = (id: string) => { - useTxHistory.setState((state) => { - const current = state[id]; - if (!current) return state; +export const txHistory = { + add: (input: TxHistoryItemInput) => { + const id = randomId(); - const latest: TxHistoryItem = { - ...current, - status: "failed", + const newItem: TxHistoryItem = { + txStatus: [], + timestamp: new Date().toISOString(), + status: "pending", + ...input, }; - return { [id]: latest }; - }); -}; - -export const removeTxHistory = (id: string) => { - useTxHistory.setState((state) => { - // eslint-disable-next-line @typescript-eslint/no-unused-vars - const { [id]: _, ...newState } = state; - return newState; - }, true); -}; + useTxHistory.setState({ [id]: newItem }); -export const addTxStatus = (id: string, txStatus: TxStatus) => { - useTxHistory.setState((state) => { - const current = state[id]; - if (!current) return state; + return [id, newItem] as const; + }, + success: (id: string) => { + useTxHistory.setState((state) => { + const current = state[id]; + if (!current) return state; - const newTxStatus = current.txStatus.concat(txStatus); + const latest: TxHistoryItem = { + ...current, + status: "success", + }; - const latest: TxHistoryItem = { - ...current, - txStatus: newTxStatus, - }; - - return { [id]: latest }; - }); -}; - -export const updateTxStatus = (id: string, txStatus: TxStatus) => { - useTxHistory.setState((state) => { - const current = state[id]; - if (!current) return state; - - const newTxStatus = current.txStatus.map((item) => { - if (item.txHash === txStatus.txHash) { - return txStatus; - } - return item; + return { [id]: latest }; }); - - const latest: TxHistoryItem = { - ...current, - txStatus: newTxStatus, - }; - - return { [id]: latest }; - }); -}; - -export const clearTxHistory = () => { - useTxHistory.setState({}, true); + }, + fail: (id: string) => { + useTxHistory.setState((state) => { + const current = state[id]; + if (!current) return state; + + const latest: TxHistoryItem = { + ...current, + status: "failed", + }; + + return { [id]: latest }; + }); + }, + remove: (id: string) => { + useTxHistory.setState((state) => { + // eslint-disable-next-line @typescript-eslint/no-unused-vars + const { [id]: _, ...newState } = state; + return newState; + }, true); + }, + addStatus: (id: string, txStatus: TxStatus) => { + useTxHistory.setState((state) => { + const current = state[id]; + if (!current) return state; + + const newTxStatus = current.txStatus.concat(txStatus); + + const latest: TxHistoryItem = { + ...current, + txStatus: newTxStatus, + }; + + return { [id]: latest }; + }); + }, + updateStatus: (id: string, txStatus: TxStatus) => { + useTxHistory.setState((state) => { + const current = state[id]; + if (!current) return state; + + const newTxStatus = current.txStatus.map((item) => { + if (item.txHash === txStatus.txHash) { + return txStatus; + } + return item; + }); + + const latest: TxHistoryItem = { + ...current, + txStatus: newTxStatus, + }; + + return { [id]: latest }; + }); + }, + clear: () => { + useTxHistory.setState({}, true); + }, }; diff --git a/src/hooks/useBalancesByChain.ts b/src/hooks/useBalancesByChain.ts index 5f217547..ee83d6d1 100644 --- a/src/hooks/useBalancesByChain.ts +++ b/src/hooks/useBalancesByChain.ts @@ -9,12 +9,14 @@ import { Chain } from "@/hooks/useChains"; import { useSkipClient } from "@/solve"; import { getCosmWasmClientForChainID, getStargateClientForChainID } from "@/utils/clients"; -export function useBalancesByChain( - address?: string, - chain?: Chain, - assets?: AssetWithMetadata[], - enabled: boolean = true, -) { +interface Args { + address?: string; + chain?: Chain; + assets?: AssetWithMetadata[]; + enabled?: boolean; +} + +export function useBalancesByChain({ address, chain, assets, enabled = true }: Args) { const publicClient = usePublicClient({ chainId: chain?.chainType === "evm" ? parseInt(chain.chainID) : undefined, }); @@ -34,25 +36,26 @@ export function useBalancesByChain( return getBalancesByChain(address, chain.chainID, assets ?? []); }, - refetchInterval: 1000 * 5, enabled: !!chain && !!address && enabled, }); } export async function getBalancesByChain(address: string, chainID: ChainId, assets: AssetWithMetadata[]) { - const client = await getStargateClientForChainID(chainID); - const cosmwasmClient = await getCosmWasmClientForChainID(chainID); + const [stargate, cosmwasm] = await Promise.all([ + getStargateClientForChainID(chainID), + getCosmWasmClientForChainID(chainID), + ]); - const balances = await client.getAllBalances(address); + const balances = await stargate.getAllBalances(address); const cw20Assets = assets.filter((asset) => asset.isCW20); const cw20Balances = await Promise.all( - cw20Assets.map((asset) => - cosmwasmClient.queryContractSmart(asset.tokenContract!, { + cw20Assets.map((asset) => { + return cosmwasm.queryContractSmart(asset.tokenContract!, { balance: { address }, - }), - ), + }); + }), ); const allBalances = balances.reduce>( diff --git a/src/lib/cosmos-kit.ts b/src/lib/cosmos-kit.ts index ef077fce..ac50976a 100644 --- a/src/lib/cosmos-kit.ts +++ b/src/lib/cosmos-kit.ts @@ -1,6 +1,5 @@ import { WalletClient } from "@cosmos-kit/core"; import { wallets as cosmostation } from "@cosmos-kit/cosmostation"; -import { wallets as initia } from "@cosmos-kit/initia"; import { wallets as keplr } from "@cosmos-kit/keplr"; import { wallets as leap } from "@cosmos-kit/leap"; import { wallets as okxwallet } from "@cosmos-kit/okxwallet"; @@ -8,12 +7,11 @@ import { wallets as station } from "@cosmos-kit/station"; import { wallets as vectis } from "@cosmos-kit/vectis"; import { wallets as xdefi } from "@cosmos-kit/xdefi"; -export const wallets = [...keplr, ...cosmostation, ...initia, ...leap, ...okxwallet, ...station, ...vectis, ...xdefi]; +export const wallets = [...keplr, ...cosmostation, ...leap, ...okxwallet, ...station, ...vectis, ...xdefi]; export type MergedWalletClient = | import("@cosmos-kit/cosmostation-extension/cjs/extension/client").CosmostationClient | import("@cosmos-kit/cosmostation-mobile/cjs/wallet-connect/client").CosmostationClient - | import("@cosmos-kit/initia-extension/cjs/extension/client").InitiaClient | import("@cosmos-kit/keplr-extension/cjs/extension/client").KeplrClient | import("@cosmos-kit/keplr-mobile/cjs/wallet-connect/client").KeplrClient | import("@cosmos-kit/leap-extension/cjs/extension/client").LeapClient diff --git a/src/lib/edge-config.ts b/src/lib/edge-config.ts index a37d3628..648f7d5f 100644 --- a/src/lib/edge-config.ts +++ b/src/lib/edge-config.ts @@ -1,8 +1,34 @@ +import type { ExperimentalFeature } from "@skip-router/core"; import { createClient } from "@vercel/edge-config"; -export async function getCorsDomains() { - const client = createClient(process.env.CORS_EDGE_CONFIG!); - const value = await client.get("domains"); - if (Array.isArray(value)) return value; - return []; +function getClient() { + return createClient(process.env.NEXT_PUBLIC_EDGE_CONFIG!); +} + +export async function getCorsDomains(): Promise { + try { + const client = getClient(); + const value = await client.get("domains"); + if (Array.isArray(value)) return value; + return []; + } catch (error) { + console.error(error); + return []; + } +} + +export async function getClientFlags(): Promise { + try { + if (process.env.NEXT_PUBLIC_FLAGS_OVERRIDE) { + const value = process.env.NEXT_PUBLIC_FLAGS_OVERRIDE.split(",").filter(Boolean) as ExperimentalFeature[]; + return value; + } + const client = getClient(); + const value = await client.get("experimentalFeatures"); + if (Array.isArray(value)) return value; + return []; + } catch (error) { + console.error(error); + return []; + } } diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx index f2cca82d..bdcc703c 100644 --- a/src/pages/_app.tsx +++ b/src/pages/_app.tsx @@ -1,5 +1,6 @@ import "@fontsource/jost/latin.css"; import "@/styles/globals.css"; +import "@interchain-ui/react/styles"; import { ChainProvider } from "@cosmos-kit/react"; import { PersistQueryClientProvider } from "@tanstack/react-query-persist-client"; @@ -66,7 +67,7 @@ export default function App({ Component, pageProps }: AppProps) { diff --git a/src/pages/api/contact.ts b/src/pages/api/contact.ts index 5f06a427..848d61ca 100644 --- a/src/pages/api/contact.ts +++ b/src/pages/api/contact.ts @@ -2,7 +2,7 @@ import { PageConfig } from "next"; import { NextRequest } from "next/server"; import { Resend } from "resend"; -import { contactFormSchema } from "@/schemas/contact"; +import { contactFormSchema } from "@/schemas/api"; export const config: PageConfig = { runtime: "edge", diff --git a/src/pages/api/explorer/[chainId].ts b/src/pages/api/explorer/[chainId].ts new file mode 100644 index 00000000..2b95f0ad --- /dev/null +++ b/src/pages/api/explorer/[chainId].ts @@ -0,0 +1,52 @@ +import { PageConfig } from "next"; +import { NextRequest } from "next/server"; + +import { explorersRecord } from "@/chains/explorers"; +import { ExplorerResponse } from "@/schemas/api"; + +export const config: PageConfig = { + runtime: "edge", +}; + +export default async function handler(req: NextRequest) { + let baseUrl: string | undefined; + const chainId = req.nextUrl.searchParams.get("chainId") || ""; + + const parsedIntId = parseInt(chainId); + const isEvmChain = typeof parsedIntId === "number" && !isNaN(parsedIntId); + + if (isEvmChain) { + const { EVM_CHAINS } = await import("@/constants/wagmi"); + const chain = EVM_CHAINS.find((chain) => chain.id === parseInt(chainId)); + if (chain?.blockExplorers?.default.url) { + baseUrl = chain.blockExplorers!.default.url; + } + } + + const explorers = explorersRecord[chainId] || []; + + const mintscan = explorers.find((explorer) => explorer.kind === "mintscan"); + if (mintscan && mintscan.tx_page) { + baseUrl = mintscan.tx_page; + } + + if (explorers[0]?.tx_page) { + baseUrl = explorers[0].tx_page; + } + + if (!baseUrl) { + return new Response(null, { status: 404 }); // Not Found + } + + const payload: ExplorerResponse = { + evm: isEvmChain, + explorer: baseUrl, + }; + + return new Response(JSON.stringify(payload), { + headers: { + "cache-control": "public, max-age=604800, immutable", // 1 week + "content-type": "application/json", + }, + }); +} diff --git a/src/pages/api/gas/[chainName].ts b/src/pages/api/gas/[chainName].ts new file mode 100644 index 00000000..33208fac --- /dev/null +++ b/src/pages/api/gas/[chainName].ts @@ -0,0 +1,35 @@ +import { FeeAsset } from "@skip-router/core"; +import { PageConfig } from "next"; +import { NextRequest } from "next/server"; + +import { chainRecord } from "@/chains/chains"; +import { chainNameToId } from "@/chains/types"; + +export const config: PageConfig = { + runtime: "edge", +}; + +export default async function handler(req: NextRequest) { + const chainName = chainNameToId[req.nextUrl.searchParams.get("chainName") || ""]; + if (!chainName) { + return new Response(null, { status: 404 }); // Not Found + } + const { fees } = chainRecord[chainName]; + + const feeAssets: FeeAsset[] = + fees?.fee_tokens.map((ft) => ({ + denom: ft.denom, + gasPrice: { + low: (ft.low_gas_price ?? 0.01).toString(), + average: (ft.average_gas_price ?? 0.025).toString(), + high: (ft.high_gas_price ?? 0.04).toString(), + }, + })) ?? []; + + return new Response(JSON.stringify(feeAssets), { + headers: { + "cache-control": "public, max-age=86400", + "content-type": "application/json", + }, + }); +} diff --git a/src/pages/index.tsx b/src/pages/index.tsx index 9481fe8c..d91e83dc 100644 --- a/src/pages/index.tsx +++ b/src/pages/index.tsx @@ -1,162 +1,7 @@ -import { useManager } from "@cosmos-kit/react"; -import { RouteResponse, SkipRouter, TxStatusResponse } from "@skip-router/core"; -import { differenceInMinutes, parseISO } from "date-fns"; -import { useState } from "react"; - import { SwapWidget } from "@/components/SwapWidget"; import { WalletModalProvider } from "@/components/WalletModal"; -import { useAssets } from "@/context/assets"; -import { failTxHistory, successTxHistory, TxHistoryItem, updateTxStatus, useTxHistory } from "@/context/tx-history"; -import { getBalancesByChain } from "@/hooks/useBalancesByChain"; -import { useInterval } from "@/hooks/useInterval"; -import { queryClient } from "@/lib/react-query"; -import { useSkipClient } from "@/solve"; - -function routeHasAxelarTransfer(route: RouteResponse): boolean { - for (const operation of route.operations) { - if ("axelarTransfer" in operation) { - return true; - } - } - return false; -} - -function historyItemIsMissingAxelarlarscanLink(historyItem: TxHistoryItem) { - if (!routeHasAxelarTransfer(historyItem.route)) { - return false; - } - - for (const tx of historyItem.txStatus) { - if (tx.axelarscanLink) { - return false; - } - } - - return true; -} - -function maybeGetAxelarscanLinkFromTransactionStatus(status: TxStatusResponse): string | undefined { - for (const seqEvent of status.transferSequence) { - if ("axelarTransfer" in seqEvent) { - if ("contractCallWithTokenTxs" in seqEvent.axelarTransfer.txs) { - return seqEvent.axelarTransfer.txs.contractCallWithTokenTxs.sendTx - ? `https://axelarscan.io/gmp/${seqEvent.axelarTransfer.txs.contractCallWithTokenTxs.sendTx.txHash}` - : undefined; - } - - if ("sendTokenTxs" in seqEvent.axelarTransfer.txs) { - return seqEvent.axelarTransfer.txs.sendTokenTxs.sendTx - ? `https://axelarscan.io/transfer/${seqEvent.axelarTransfer.txs.sendTokenTxs.sendTx.txHash}` - : undefined; - } - } - } - return undefined; -} - -async function updatePendingRoute(id: string, historyItem: TxHistoryItem, skipClient: SkipRouter) { - const firstTx = historyItem.txStatus.length > 0 ? historyItem.txStatus[0] : undefined; - - if (!firstTx) { - return; - } - - try { - const status = await skipClient.transactionStatus({ - chainID: firstTx.chainId, - txHash: firstTx.txHash, - }); - - if (status.state === "STATE_COMPLETED_SUCCESS") { - successTxHistory(id); - } - - if (status.state === "STATE_COMPLETED_ERROR") { - failTxHistory(id); - } - } catch { - // Sometimes this is called before the API knows about the transaction. We can probably safely ignore errors. - } -} - -async function updateAxelarscanLink(id: string, historyItem: TxHistoryItem, skipClient: SkipRouter) { - for (const tx of historyItem.txStatus) { - try { - const status = await skipClient.transactionStatus({ - chainID: tx.chainId, - txHash: tx.txHash, - }); - - const axelarscanLink = maybeGetAxelarscanLinkFromTransactionStatus(status); - - if (axelarscanLink && !tx.axelarscanLink) { - if (axelarscanLink) { - updateTxStatus(id, { - ...tx, - axelarscanLink, - }); - } - } - } catch { - /* empty */ - } - } -} export default function Home() { - const { walletRepos } = useManager(); - const history = useTxHistory(); - const skipClient = useSkipClient(); - const { assetsByChainID } = useAssets(); - - async function prefetchBalances(address: string, chainID: string) { - try { - const balances = await getBalancesByChain(address, chainID, assetsByChainID(chainID)); - - queryClient.setQueryData(["balances-by-chain", address, chainID], balances); - } catch { - /* empty */ - } - } - - async function updateTransactionHistory(skipIfOlderThanMinutes?: number) { - for (const [id, historyItem] of Object.entries(history)) { - if ( - skipIfOlderThanMinutes && - differenceInMinutes(new Date(), parseISO(historyItem.timestamp)) > skipIfOlderThanMinutes - ) { - continue; - } - - if (historyItem.status === "pending") { - await updatePendingRoute(id, historyItem, skipClient); - } - - if (historyItemIsMissingAxelarlarscanLink(historyItem)) { - await updateAxelarscanLink(id, historyItem, skipClient); - } - } - } - - useInterval(() => { - for (const repo of walletRepos) { - if (repo.current && repo.current.address) { - prefetchBalances(repo.current.address, repo.chainRecord.chain.chain_id); - } - } - }, 1000 * 5); - - // on the first run (aka page load), check all transactions in the history - const [firstRun, setFirstRun] = useState(true); - - useInterval(async () => { - await updateTransactionHistory(firstRun ? undefined : 30); - - if (firstRun) { - setFirstRun(false); - } - }, 1000 * 2); - return (
diff --git a/src/schemas/contact.ts b/src/schemas/api.ts similarity index 51% rename from src/schemas/contact.ts rename to src/schemas/api.ts index ae840f4c..9d87c625 100644 --- a/src/schemas/contact.ts +++ b/src/schemas/api.ts @@ -8,3 +8,12 @@ export const contactFormSchema = z.object({ email: z.string().email(), message: z.string().optional(), }); + +export type ContactForm = z.infer; + +export const explorerResponseSchema = z.object({ + evm: z.boolean(), + explorer: z.string(), +}); + +export type ExplorerResponse = z.infer; diff --git a/src/solve/context.tsx b/src/solve/context.tsx index a69fa473..601dfdae 100644 --- a/src/solve/context.tsx +++ b/src/solve/context.tsx @@ -4,7 +4,7 @@ import { getWalletClient } from "@wagmi/core"; import { createContext, ReactNode } from "react"; import { useNetwork as useWagmiNetwork } from "wagmi"; -import { chainIdToName } from "@/chains"; +import { chainIdToName } from "@/chains/types"; import { API_URL } from "@/constants/api"; import { trackWallet } from "@/context/track-wallet"; import { getNodeProxyEndpoint } from "@/utils/api"; diff --git a/src/solve/queries.ts b/src/solve/queries.ts index 510820bc..bc7c7ce8 100644 --- a/src/solve/queries.ts +++ b/src/solve/queries.ts @@ -2,6 +2,8 @@ import { AssetsRequest, SwapVenue, TransferState } from "@skip-router/core"; import { useQuery } from "@tanstack/react-query"; import { useEffect, useMemo, useState } from "react"; +import { getClientFlags } from "@/lib/edge-config"; + import { useSkipClient } from "./hooks"; interface TransferSequence { @@ -89,6 +91,8 @@ export function useRoute({ return; } + const experimentalFeatures = await getClientFlags(); + const route = await skipClient.route( direction === "swap-in" ? { @@ -98,6 +102,7 @@ export function useRoute({ destAssetDenom: destinationAsset, destAssetChainID: destinationAssetChainID, swapVenue, + experimentalFeatures, } : { amountOut: amount, @@ -106,6 +111,7 @@ export function useRoute({ destAssetDenom: destinationAsset, destAssetChainID: destinationAssetChainID, swapVenue, + experimentalFeatures, }, ); @@ -116,7 +122,6 @@ export function useRoute({ return route; }, refetchInterval: refetchCount < 10 ? 1000 * 5 : false, - retry: false, enabled: enabled && !!sourceAsset && @@ -139,20 +144,27 @@ export function useRoute({ return query; } -export const useBroadcastedTxsStatus = ( - txsRequired: number, - txs: { chainID: string; txHash: string }[] | undefined, -) => { +export const useBroadcastedTxsStatus = ({ + txs, + txsRequired, + enabled, +}: { + txsRequired: number; + txs: { chainID: string; txHash: string }[] | undefined; + enabled?: boolean; +}) => { const skipClient = useSkipClient(); const [isSettled, setIsSettled] = useState(false); const [prevData, setPrevData] = useState< | { + isSuccess: boolean; + isSettled: boolean; transferSequence: TransferSequence[]; } | undefined >(undefined); - const queryKey = useMemo(() => ["solve-tx-status", txsRequired, txs] as const, [txs, txsRequired]); + const queryKey = useMemo(() => ["solve-txs-status", txsRequired, txs] as const, [txs, txsRequired]); return useQuery({ queryKey, @@ -210,6 +222,11 @@ export const useBroadcastedTxsStatus = ( tx.state === "STATE_ABANDONED" ); }); + + const _isSuccess = result.every((tx) => { + return tx.state === "STATE_COMPLETED_SUCCESS"; + }); + if (result.length > 0 && txsRequired === result.length && _isSettled) { setIsSettled(true); } @@ -219,12 +236,14 @@ export const useBroadcastedTxsStatus = ( }, []); const resData = { + isSuccess: _isSuccess, + isSettled: _isSettled, transferSequence: mergedTransferSequence, }; setPrevData(resData); return resData; }, - enabled: !isSettled && !!txs && txs.length > 0, + enabled: !isSettled && !!txs && txs.length > 0 && enabled !== undefined ? enabled : true, refetchInterval: 1000 * 2, // to make the data persist when query key changed initialData: prevData, diff --git a/src/utils/assert.ts b/src/utils/assert.ts index 48d958f8..6a95641a 100644 --- a/src/utils/assert.ts +++ b/src/utils/assert.ts @@ -1,3 +1,3 @@ -export const raise = (message?: string, opts?: ErrorOptions): never => { +export function raise(message?: string, opts?: ErrorOptions): never { throw new Error(message, opts); -}; +} diff --git a/src/utils/chain.ts b/src/utils/chain.ts index 22dd787c..3e07692a 100644 --- a/src/utils/chain.ts +++ b/src/utils/chain.ts @@ -1,7 +1,15 @@ -import { Chain } from "@skip-router/core"; +import { Chain, FeeAsset } from "@skip-router/core"; +import { ChainId } from "@/chains/types"; import { CHAIN_NAME_TO_CHAINLIST_ID, CHAINLIST_LOGO_CHAIN_IDS } from "@/constants/chainlist"; +export async function getChainFeeAssets(chainID: ChainId): Promise { + const response = await fetch(`/api/gas/${chainID}`); + if (!response.ok) return []; + const feeAssets = await response.json(); + return feeAssets; +} + export function getChainLogo(chain: Chain) { if (chain.logoURI && chain.logoURI.match("-light")) { return chain.logoURI.replace("-light", "-dark"); diff --git a/src/utils/explorer.ts b/src/utils/explorer.ts index 4129d258..196df2b4 100644 --- a/src/utils/explorer.ts +++ b/src/utils/explorer.ts @@ -1,44 +1,18 @@ -import { explorersRecord } from "@/chains/explorers"; +import { explorerResponseSchema } from "@/schemas/api"; -const explorerCache = new Map string>(); -export async function getChainExplorerUrl(chainId: string) { - const cached = explorerCache.get(chainId); - if (cached) return cached; - - const parsedIntId = parseInt(chainId); - const isEvmChain = typeof parsedIntId === "number" && !isNaN(parsedIntId); - - if (isEvmChain) { - const { EVM_CHAINS } = await import("@/constants/wagmi"); - const chain = EVM_CHAINS.find((chain) => chain.id === parseInt(chainId)); - if (chain?.blockExplorers?.default.url) { - const explorer = (txHash: string) => { - return `${chain.blockExplorers!.default.url}/tx/${txHash}`; - }; - explorerCache.set(chainId, explorer); - return explorer; - } - } - - const explorers = explorersRecord[chainId] || []; - - const mintscan = explorers.find((explorer) => explorer.kind === "mintscan"); - if (mintscan && mintscan.tx_page) { - const explorer = (txHash: string) => { - return mintscan.tx_page!.replace("${txHash}", txHash); - }; - explorerCache.set(chainId, explorer); - return explorer; - } +export interface ChainExplorerResponse { + evm: boolean; + explorer: string; +} - if (explorers[0]?.tx_page) { - // return explorers[0].tx_page.replace("${txHash}", txHash); - const explorer = (txHash: string) => { - return explorers[0].tx_page!.replace("${txHash}", txHash); - }; - explorerCache.set(chainId, explorer); - return explorer; +export async function getExplorerUrl(chainId: string) { + const response = await fetch(`/api/explorer/${chainId}`); + if (!response.ok) return; + const data = await response.json(); + const { evm, explorer } = await explorerResponseSchema.parseAsync(data); + if (evm) { + return (txHash: string) => `${explorer}/tx/${txHash}`; + } else { + return (txHash: string) => `${explorer.replace("${txHash}", txHash)}`; } - - return null; } diff --git a/src/utils/number.ts b/src/utils/number.ts index 6997f250..28bd5a27 100644 --- a/src/utils/number.ts +++ b/src/utils/number.ts @@ -1,3 +1,6 @@ +import { BigNumber } from "bignumber.js"; +import { formatUnits } from "ethers"; + export function formatNumberWithCommas(str: string | number) { const text = String(str); // Format integer part with commas every three digits @@ -10,3 +13,21 @@ export function formatNumberWithCommas(str: string | number) { export function formatNumberWithoutCommas(str: string | number) { return String(str).replace(/,/g, ""); } + +export function getAmountWei(amount?: string, decimals = 6) { + if (!amount || !amount) return "0"; + try { + return new BigNumber(formatNumberWithoutCommas(amount)).shiftedBy(decimals ?? 6).toFixed(0); + } catch (err) { + return "0"; + } +} + +export function parseAmountWei(amount?: string, decimals = 6) { + if (!amount) return "0"; + try { + return formatUnits(amount.replace(/,/g, ""), decimals ?? 6); + } catch (err) { + return "0"; + } +} diff --git a/src/utils/os.ts b/src/utils/os.ts new file mode 100644 index 00000000..4c90eee7 --- /dev/null +++ b/src/utils/os.ts @@ -0,0 +1,25 @@ +const isBrowser = typeof window !== "undefined" && typeof window.navigator !== "undefined"; + +export function isAndroid() { + if (!isBrowser) { + return false; + } + return isMobile() && window.navigator.userAgent.toLowerCase().includes("android"); +} + +export function isIos() { + if (!isBrowser) { + return false; + } + return isMobile() && window.navigator.userAgent.toLowerCase().match(/iphone|ipad/u); +} + +export function isMobile() { + if (!isBrowser) { + return false; + } + return ( + window.matchMedia("(pointer:coarse)").matches || + !!window.navigator.userAgent.match(/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini/u) + ); +} diff --git a/src/utils/wallet.ts b/src/utils/wallet.ts index e1773320..2c4fc7e0 100644 --- a/src/utils/wallet.ts +++ b/src/utils/wallet.ts @@ -1,6 +1,46 @@ -import { ChainId } from "@/chains"; +import { ChainWalletBase } from "@cosmos-kit/core"; + +import { ChainId } from "@/chains/types"; import { MergedWalletClient } from "@/lib/cosmos-kit"; +import { isMobile } from "./os"; + +export async function gracefullyConnect( + wallet: ChainWalletBase, + { + onAddChainError = console.error, + }: { + onAddChainError?: (err: unknown) => void | Promise; + } = {}, +) { + const client = wallet.client as MergedWalletClient; + const canAddChain = !isMobile() || !("snapInstalled" in client); + if (canAddChain) { + await wallet.client + .addChain?.({ + chain: { + bech32_prefix: wallet.chain.bech32_prefix, + chain_id: wallet.chain.chain_id, + chain_name: wallet.chain.chain_name, + network_type: wallet.chain.network_type, + pretty_name: wallet.chain.pretty_name, + slip44: wallet.chain.slip44, + status: wallet.chain.status, + apis: wallet.chain.apis, + bech32_config: wallet.chain.bech32_config, + explorers: wallet.chain.explorers, + extra_codecs: wallet.chain.extra_codecs, + fees: wallet.chain.fees, + peers: wallet.chain.peers, + }, + name: wallet.chainName, + assetList: wallet.assetList, + }) + .catch(onAddChainError); + } + await wallet.connect(); +} + export async function isWalletClientUsingLedger(walletClient: T, chainID: ChainId) { if (!("client" in walletClient)) { return false;