From cee39e93bdeb6472cd0cd6effdcc170386c6bc7c Mon Sep 17 00:00:00 2001 From: Fabio Rigamonti <73019897+fabiorigam@users.noreply.github.com> Date: Thu, 21 Nov 2024 17:34:26 +0100 Subject: [PATCH 01/16] feat: add dapp-kit-react-privy package --- packages/dapp-kit-react-privy/LICENSE | 21 + .../dapp-kit-react-privy/eslint.config.mjs | 17 + packages/dapp-kit-react-privy/package.json | 34 + .../DAppKitPrivyProvider.tsx | 21 + .../src/DAppKitPrivyProvider/hooks/index.ts | 0 .../src/DAppKitPrivyProvider/index.ts | 2 + packages/dapp-kit-react-privy/src/index.ts | 0 packages/dapp-kit-react-privy/tsconfig.json | 23 + packages/dapp-kit-react-privy/tsup.config.ts | 13 + yarn.lock | 1624 ++++++++++++++++- 10 files changed, 1707 insertions(+), 48 deletions(-) create mode 100644 packages/dapp-kit-react-privy/LICENSE create mode 100644 packages/dapp-kit-react-privy/eslint.config.mjs create mode 100644 packages/dapp-kit-react-privy/package.json create mode 100644 packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/DAppKitPrivyProvider.tsx create mode 100644 packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/index.ts create mode 100644 packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/index.ts create mode 100644 packages/dapp-kit-react-privy/src/index.ts create mode 100644 packages/dapp-kit-react-privy/tsconfig.json create mode 100644 packages/dapp-kit-react-privy/tsup.config.ts diff --git a/packages/dapp-kit-react-privy/LICENSE b/packages/dapp-kit-react-privy/LICENSE new file mode 100644 index 00000000..329efe3f --- /dev/null +++ b/packages/dapp-kit-react-privy/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2023 Vechain + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/packages/dapp-kit-react-privy/eslint.config.mjs b/packages/dapp-kit-react-privy/eslint.config.mjs new file mode 100644 index 00000000..c9e3ec07 --- /dev/null +++ b/packages/dapp-kit-react-privy/eslint.config.mjs @@ -0,0 +1,17 @@ +import tseslint from 'typescript-eslint'; + +export default tseslint.config({ + ignores: ['**/*.config.ts', 'dist/**'], + extends: [...tseslint.configs.recommended], + files: ['**/*.{ts,tsx}'], + rules: { + '@typescript-eslint/no-explicit-any': 'off', + '@typescript-eslint/ban-ts-comment': 'off', + 'no-console': ['error', { allow: ['error'] }], + 'eslint-comments/no-unused-disable': 'off', + '@typescript-eslint/no-unused-vars': [ + 'error', + { argsIgnorePattern: '^_' }, + ], + }, +}); diff --git a/packages/dapp-kit-react-privy/package.json b/packages/dapp-kit-react-privy/package.json new file mode 100644 index 00000000..5fa3388b --- /dev/null +++ b/packages/dapp-kit-react-privy/package.json @@ -0,0 +1,34 @@ +{ + "name": "@vechain/dapp-kit-react-privy", + "version": "1.1.1", + "private": false, + "homepage": "https://github.com/vechain/vechain-dapp-kit", + "repository": "github:vechain/vechain-dapp-kit", + "license": "MIT", + "sideEffects": false, + "type": "module", + "main": "./dist/index.js", + "types": "./dist/index.d.ts", + "files": [ + "dist", + "package.json", + "README.md", + "LICENSE" + ], + "scripts": { + "build": "tsup", + "clean": "rm -rf dist .turbo", + "lint": "eslint" + }, + "dependencies": { + "@privy-io/react-auth": "1.83.1" + }, + "devDependencies": { + "@types/react": "^18.2.28", + "@types/react-dom": "^18.2.13", + "eslint": "^9.12.0", + "react": "^18.2.0", + "tsup": "*", + "typescript": "*" + } +} diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/DAppKitPrivyProvider.tsx b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/DAppKitPrivyProvider.tsx new file mode 100644 index 00000000..7867af22 --- /dev/null +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/DAppKitPrivyProvider.tsx @@ -0,0 +1,21 @@ +import { PrivyProvider as BasePrivyProvider } from "@privy-io/react-auth"; + +export const DAppKitPrivyProvider = ({}) => { + return ( + + + {children} + + + ); +}; \ No newline at end of file diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/index.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/index.ts new file mode 100644 index 00000000..e69de29b diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/index.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/index.ts new file mode 100644 index 00000000..c6440150 --- /dev/null +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/index.ts @@ -0,0 +1,2 @@ +export * from './DAppKitPrivyProvider'; +export * from './hooks'; diff --git a/packages/dapp-kit-react-privy/src/index.ts b/packages/dapp-kit-react-privy/src/index.ts new file mode 100644 index 00000000..e69de29b diff --git a/packages/dapp-kit-react-privy/tsconfig.json b/packages/dapp-kit-react-privy/tsconfig.json new file mode 100644 index 00000000..2bc962ed --- /dev/null +++ b/packages/dapp-kit-react-privy/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "ESNext", + "moduleResolution": "node", + "target": "es2021", + "experimentalDecorators": true, + "composite": false, + "declaration": true, + "declarationMap": true, + "esModuleInterop": true, + "forceConsistentCasingInFileNames": true, + "inlineSources": false, + "isolatedModules": true, + "noUnusedLocals": false, + "noUnusedParameters": false, + "preserveWatchOutput": true, + "skipLibCheck": true, + "strict": true, + // React + "jsx": "react-jsx" + }, + "include": ["src/**/*.ts", "test/**/*.test.ts", "eslint.config.mjs"] +} diff --git a/packages/dapp-kit-react-privy/tsup.config.ts b/packages/dapp-kit-react-privy/tsup.config.ts new file mode 100644 index 00000000..38224b1d --- /dev/null +++ b/packages/dapp-kit-react-privy/tsup.config.ts @@ -0,0 +1,13 @@ +import { defineConfig } from 'tsup'; + +// eslint-disable-next-line import/no-default-export +export default defineConfig({ + entry: ['src/index.ts'], + outDir: 'dist', + format: 'esm', + minify: true, + sourcemap: true, + dts: true, + clean: true, + external: ['react'], +}); diff --git a/yarn.lock b/yarn.lock index caca6f0c..f658d24e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -12,7 +12,7 @@ resolved "https://registry.yarnpkg.com/@adraffy/ens-normalize/-/ens-normalize-1.10.1.tgz#63430d04bd8c5e74f8d7d049338f1cd9d4f02069" integrity sha512-96Z2IP3mYmF1Xg2cDm8f1gWGf/HUVedQ3FMifV4kG/PQ4yEP51xDtRAEfhVNt5f/uzpNkZHwWQuUcu6D6K+Ekw== -"@adraffy/ens-normalize@1.11.0": +"@adraffy/ens-normalize@1.11.0", "@adraffy/ens-normalize@^1.10.1": version "1.11.0" resolved "https://registry.yarnpkg.com/@adraffy/ens-normalize/-/ens-normalize-1.11.0.tgz#42cc67c5baa407ac25059fcd7d405cc5ecdb0c33" integrity sha512-/3DDPKHqqIqxUULp8yP4zODUY1i+2xvVWsv8A79xGWdCAG+8sb0hRh0Rk2QyOJUnnbyPUAZYcpBuRe3nS2OIUg== @@ -260,6 +260,15 @@ "@babel/highlight" "^7.24.7" picocolors "^1.0.0" +"@babel/code-frame@^7.25.9": + version "7.26.2" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.26.2.tgz#4b5fab97d33338eff916235055f0ebc21e573a85" + integrity sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ== + dependencies: + "@babel/helper-validator-identifier" "^7.25.9" + js-tokens "^4.0.0" + picocolors "^1.0.0" + "@babel/compat-data@^7.22.6", "@babel/compat-data@^7.22.9", "@babel/compat-data@^7.25.2": version "7.25.2" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.25.2.tgz#e41928bd33475305c586f6acbbb7e3ade7a6f7f5" @@ -348,6 +357,17 @@ "@jridgewell/trace-mapping" "^0.3.25" jsesc "^2.5.1" +"@babel/generator@^7.25.9": + version "7.26.2" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.26.2.tgz#87b75813bec87916210e5e01939a4c823d6bb74f" + integrity sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw== + dependencies: + "@babel/parser" "^7.26.2" + "@babel/types" "^7.26.0" + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.25" + jsesc "^3.0.2" + "@babel/helper-annotate-as-pure@7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz#e7f06737b197d580a01edf75d97e2c8be99d3882" @@ -362,6 +382,13 @@ dependencies: "@babel/types" "^7.24.7" +"@babel/helper-annotate-as-pure@^7.22.5": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.25.9.tgz#d8eac4d2dc0d7b6e11fa6e535332e0d3184f06b4" + integrity sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g== + dependencies: + "@babel/types" "^7.25.9" + "@babel/helper-builder-binary-assignment-operator-visitor@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.24.7.tgz#37d66feb012024f2422b762b9b2a7cfe27c7fba3" @@ -451,6 +478,14 @@ "@babel/traverse" "^7.24.8" "@babel/types" "^7.24.8" +"@babel/helper-module-imports@^7.0.0": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz#e7f8d20602ebdbf9ebbea0a0751fb0f2a4141715" + integrity sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw== + dependencies: + "@babel/traverse" "^7.25.9" + "@babel/types" "^7.25.9" + "@babel/helper-module-imports@^7.22.5", "@babel/helper-module-imports@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz#f2f980392de5b84c3328fc71d38bd81bbb83042b" @@ -481,6 +516,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.8.tgz#94ee67e8ec0e5d44ea7baeb51e571bd26af07878" integrity sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg== +"@babel/helper-plugin-utils@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.9.tgz#9cbdd63a9443a2c92a725cca7ebca12cc8dd9f46" + integrity sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw== + "@babel/helper-remap-async-to-generator@^7.18.9", "@babel/helper-remap-async-to-generator@^7.22.5", "@babel/helper-remap-async-to-generator@^7.24.7", "@babel/helper-remap-async-to-generator@^7.25.0": version "7.25.0" resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.0.tgz#d2f0fbba059a42d68e5e378feaf181ef6055365e" @@ -527,11 +567,21 @@ resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz#5b3329c9a58803d5df425e5785865881a81ca48d" integrity sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ== +"@babel/helper-string-parser@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz#1aabb72ee72ed35789b4bbcad3ca2862ce614e8c" + integrity sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA== + "@babel/helper-validator-identifier@^7.24.7": version "7.24.7" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz#75b889cfaf9e35c2aaf42cf0d72c8e91719251db" integrity sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w== +"@babel/helper-validator-identifier@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz#24b64e2c3ec7cd3b3c547729b8d16871f22cbdc7" + integrity sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ== + "@babel/helper-validator-option@^7.22.5", "@babel/helper-validator-option@^7.24.7", "@babel/helper-validator-option@^7.24.8": version "7.24.8" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz#3725cdeea8b480e86d34df15304806a06975e33d" @@ -569,6 +619,13 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.25.0.tgz#9fdc9237504d797b6e7b8f66e78ea7f570d256ad" integrity sha512-CzdIU9jdP0dg7HdyB+bHvDJGagUv+qtzZt5rYCWwW6tITNqV9odjp6Qu41gkG0ca5UfdDUWrKkiAnHHdGRnOrA== +"@babel/parser@^7.25.9", "@babel/parser@^7.26.2": + version "7.26.2" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.26.2.tgz#fd7b6f487cfea09889557ef5d4eeb9ff9a5abd11" + integrity sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ== + dependencies: + "@babel/types" "^7.26.0" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.22.5": version "7.25.0" resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.0.tgz#749bde80356b295390954643de7635e0dffabe73" @@ -695,6 +752,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.24.7" +"@babel/plugin-syntax-jsx@^7.22.5": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.9.tgz#a34313a178ea56f1951599b929c1ceacee719290" + integrity sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA== + dependencies: + "@babel/helper-plugin-utils" "^7.25.9" + "@babel/plugin-syntax-logical-assignment-operators@^7.10.4": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" @@ -1342,6 +1406,15 @@ "@babel/parser" "^7.25.0" "@babel/types" "^7.25.0" +"@babel/template@^7.25.9": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.9.tgz#ecb62d81a8a6f5dc5fe8abfc3901fc52ddf15016" + integrity sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg== + dependencies: + "@babel/code-frame" "^7.25.9" + "@babel/parser" "^7.25.9" + "@babel/types" "^7.25.9" + "@babel/traverse@^7.22.8", "@babel/traverse@^7.23.2", "@babel/traverse@^7.24.7", "@babel/traverse@^7.24.8", "@babel/traverse@^7.25.0", "@babel/traverse@^7.25.1", "@babel/traverse@^7.25.2": version "7.25.2" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.2.tgz#1a0a4aef53177bead359ccd0c89f4426c805b2ae" @@ -1355,6 +1428,19 @@ debug "^4.3.1" globals "^11.1.0" +"@babel/traverse@^7.25.9", "@babel/traverse@^7.4.5": + version "7.25.9" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.25.9.tgz#a50f8fe49e7f69f53de5bea7e413cd35c5e13c84" + integrity sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw== + dependencies: + "@babel/code-frame" "^7.25.9" + "@babel/generator" "^7.25.9" + "@babel/parser" "^7.25.9" + "@babel/template" "^7.25.9" + "@babel/types" "^7.25.9" + debug "^4.3.1" + globals "^11.1.0" + "@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.24.7", "@babel/types@^7.24.8", "@babel/types@^7.25.0", "@babel/types@^7.25.2", "@babel/types@^7.4.4": version "7.25.2" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.25.2.tgz#55fb231f7dc958cd69ea141a4c2997e819646125" @@ -1364,6 +1450,14 @@ "@babel/helper-validator-identifier" "^7.24.7" to-fast-properties "^2.0.0" +"@babel/types@^7.25.9", "@babel/types@^7.26.0": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.26.0.tgz#deabd08d6b753bc8e0f198f8709fb575e31774ff" + integrity sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA== + dependencies: + "@babel/helper-string-parser" "^7.25.9" + "@babel/helper-validator-identifier" "^7.25.9" + "@balena/dockerignore@^1.0.2": version "1.0.2" resolved "https://registry.yarnpkg.com/@balena/dockerignore/-/dockerignore-1.0.2.tgz#9ffe4726915251e8eb69f44ef3547e0da2c03e0d" @@ -1589,6 +1683,18 @@ human-id "^1.0.2" prettier "^2.7.1" +"@coinbase/wallet-sdk@4.0.3": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@coinbase/wallet-sdk/-/wallet-sdk-4.0.3.tgz#fd52dd4c168c35979c7b3294018a6f78d163a593" + integrity sha512-y/OGEjlvosikjfB+wk+4CVb9OxD1ob9cidEBLI5h8Hxaf/Qoob2XoVT1uvhtAzBx34KpGYSd+alKvh/GCRre4Q== + dependencies: + buffer "^6.0.3" + clsx "^1.2.1" + eventemitter3 "^5.0.1" + keccak "^3.0.3" + preact "^10.16.0" + sha.js "^2.4.11" + "@coinbase/wallet-sdk@^3.6.6": version "3.9.3" resolved "https://registry.yarnpkg.com/@coinbase/wallet-sdk/-/wallet-sdk-3.9.3.tgz#daf10cb0c85d0363315b7270cb3f02bedc408aab" @@ -1894,6 +2000,28 @@ resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.9.2.tgz#ff9221b9f58b4dfe61e619a7788734bd63f6898b" integrity sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g== +"@emotion/is-prop-valid@^1.1.0": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-1.3.1.tgz#8d5cf1132f836d7adbe42cf0b49df7816fc88240" + integrity sha512-/ACwoqx7XQi9knQs/G0qKvv5teDMhD7bXYns9N/wM8ah8iNb8jZ2uNO0YOgiq2o2poIvVtJS2YALasQuMSQ7Kw== + dependencies: + "@emotion/memoize" "^0.9.0" + +"@emotion/memoize@^0.9.0": + version "0.9.0" + resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.9.0.tgz#745969d649977776b43fc7648c556aaa462b4102" + integrity sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ== + +"@emotion/stylis@^0.8.4": + version "0.8.5" + resolved "https://registry.yarnpkg.com/@emotion/stylis/-/stylis-0.8.5.tgz#deacb389bd6ee77d1e7fcaccce9e16c5c7e78e04" + integrity sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ== + +"@emotion/unitless@^0.7.4": + version "0.7.5" + resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.5.tgz#77211291c1900a700b8a78cfafda3160d76949ed" + integrity sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg== + "@esbuild-plugins/node-globals-polyfill@^0.2.3": version "0.2.3" resolved "https://registry.yarnpkg.com/@esbuild-plugins/node-globals-polyfill/-/node-globals-polyfill-0.2.3.tgz#0e4497a2b53c9e9485e149bc92ddb228438d6bcf" @@ -2692,16 +2820,407 @@ ethereum-cryptography "^2.0.0" micro-ftch "^0.3.1" +"@ethersproject/abi@5.7.0", "@ethersproject/abi@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.7.0.tgz#b3f3e045bbbeed1af3947335c247ad625a44e449" + integrity sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/abstract-provider@5.7.0", "@ethersproject/abstract-provider@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz#b0a8550f88b6bf9d51f90e4795d48294630cb9ef" + integrity sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + +"@ethersproject/abstract-signer@5.7.0", "@ethersproject/abstract-signer@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz#13f4f32117868452191a4649723cb086d2b596b2" + integrity sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/address@5.7.0", "@ethersproject/address@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.7.0.tgz#19b56c4d74a3b0a46bfdbb6cfcc0a153fc697f37" + integrity sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + +"@ethersproject/base64@5.7.0", "@ethersproject/base64@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.7.0.tgz#ac4ee92aa36c1628173e221d0d01f53692059e1c" + integrity sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + +"@ethersproject/basex@5.7.0", "@ethersproject/basex@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.7.0.tgz#97034dc7e8938a8ca943ab20f8a5e492ece4020b" + integrity sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/bignumber@5.7.0", "@ethersproject/bignumber@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.7.0.tgz#e2f03837f268ba655ffba03a57853e18a18dc9c2" + integrity sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + bn.js "^5.2.1" + +"@ethersproject/bytes@5.7.0", "@ethersproject/bytes@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.7.0.tgz#a00f6ea8d7e7534d6d87f47188af1148d71f155d" + integrity sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/constants@5.7.0", "@ethersproject/constants@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.7.0.tgz#df80a9705a7e08984161f09014ea012d1c75295e" + integrity sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + +"@ethersproject/contracts@5.7.0", "@ethersproject/contracts@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.7.0.tgz#c305e775abd07e48aa590e1a877ed5c316f8bd1e" + integrity sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg== + dependencies: + "@ethersproject/abi" "^5.7.0" + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + +"@ethersproject/hash@5.7.0", "@ethersproject/hash@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.7.0.tgz#eb7aca84a588508369562e16e514b539ba5240a7" + integrity sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/hdnode@5.7.0", "@ethersproject/hdnode@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.7.0.tgz#e627ddc6b466bc77aebf1a6b9e47405ca5aef9cf" + integrity sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/json-wallets@5.7.0", "@ethersproject/json-wallets@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz#5e3355287b548c32b368d91014919ebebddd5360" + integrity sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + aes-js "3.0.0" + scrypt-js "3.0.1" + +"@ethersproject/keccak256@5.7.0", "@ethersproject/keccak256@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.7.0.tgz#3186350c6e1cd6aba7940384ec7d6d9db01f335a" + integrity sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + js-sha3 "0.8.0" + +"@ethersproject/logger@5.7.0", "@ethersproject/logger@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.7.0.tgz#6ce9ae168e74fecf287be17062b590852c311892" + integrity sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig== + +"@ethersproject/networks@5.7.1", "@ethersproject/networks@^5.7.0": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.7.1.tgz#118e1a981d757d45ccea6bb58d9fd3d9db14ead6" + integrity sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/pbkdf2@5.7.0", "@ethersproject/pbkdf2@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz#d2267d0a1f6e123f3771007338c47cccd83d3102" + integrity sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + +"@ethersproject/properties@5.7.0", "@ethersproject/properties@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.7.0.tgz#a6e12cb0439b878aaf470f1902a176033067ed30" + integrity sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/providers@5.7.2", "@ethersproject/providers@^5.7.1", "@ethersproject/providers@^5.7.2": + version "5.7.2" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.7.2.tgz#f8b1a4f275d7ce58cf0a2eec222269a08beb18cb" + integrity sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + bech32 "1.1.4" + ws "7.4.6" + +"@ethersproject/random@5.7.0", "@ethersproject/random@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.7.0.tgz#af19dcbc2484aae078bb03656ec05df66253280c" + integrity sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/rlp@5.7.0", "@ethersproject/rlp@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.7.0.tgz#de39e4d5918b9d74d46de93af80b7685a9c21304" + integrity sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/sha2@5.7.0", "@ethersproject/sha2@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.7.0.tgz#9a5f7a7824ef784f7f7680984e593a800480c9fb" + integrity sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + hash.js "1.1.7" + +"@ethersproject/signing-key@5.7.0", "@ethersproject/signing-key@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.7.0.tgz#06b2df39411b00bc57c7c09b01d1e41cf1b16ab3" + integrity sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + bn.js "^5.2.1" + elliptic "6.5.4" + hash.js "1.1.7" + +"@ethersproject/solidity@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.7.0.tgz#5e9c911d8a2acce2a5ebb48a5e2e0af20b631cb8" + integrity sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/strings@5.7.0", "@ethersproject/strings@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.7.0.tgz#54c9d2a7c57ae8f1205c88a9d3a56471e14d5ed2" + integrity sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/transactions@5.7.0", "@ethersproject/transactions@^5.6.2", "@ethersproject/transactions@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.7.0.tgz#91318fc24063e057885a6af13fdb703e1f993d3b" + integrity sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + +"@ethersproject/units@5.7.0", "@ethersproject/units@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.7.0.tgz#637b563d7e14f42deeee39245275d477aae1d8b1" + integrity sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/wallet@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.7.0.tgz#4e5d0790d96fe21d61d38fb40324e6c7ef350b2d" + integrity sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/json-wallets" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/web@5.7.1", "@ethersproject/web@^5.7.0": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.7.1.tgz#de1f285b373149bee5928f4eb7bcb87ee5fbb4ae" + integrity sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w== + dependencies: + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/wordlists@5.7.0", "@ethersproject/wordlists@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.7.0.tgz#8fb2c07185d68c3e09eb3bfd6e779ba2774627f5" + integrity sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@fastify/busboy@^2.0.0": version "2.1.1" resolved "https://registry.yarnpkg.com/@fastify/busboy/-/busboy-2.1.1.tgz#b9da6a878a371829a0502c9b6c1c143ef6663f4d" integrity sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA== +"@floating-ui/core@^1.6.0": + version "1.6.8" + resolved "https://registry.yarnpkg.com/@floating-ui/core/-/core-1.6.8.tgz#aa43561be075815879305965020f492cdb43da12" + integrity sha512-7XJ9cPU+yI2QeLS+FCSlqNFZJq8arvswefkZrYI1yQBbftw6FyrZOxYSh+9S7z7TpeWlRt9zJ5IhM1WIL334jA== + dependencies: + "@floating-ui/utils" "^0.2.8" + +"@floating-ui/dom@^1.0.0": + version "1.6.12" + resolved "https://registry.yarnpkg.com/@floating-ui/dom/-/dom-1.6.12.tgz#6333dcb5a8ead3b2bf82f33d6bc410e95f54e556" + integrity sha512-NP83c0HjokcGVEMeoStg317VD9W7eDlGK7457dMBANbKA6GJZdc7rjujdgqzTaz93jkGgc5P/jeWbaCHnMNc+w== + dependencies: + "@floating-ui/core" "^1.6.0" + "@floating-ui/utils" "^0.2.8" + +"@floating-ui/react-dom@^2.1.2": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@floating-ui/react-dom/-/react-dom-2.1.2.tgz#a1349bbf6a0e5cb5ded55d023766f20a4d439a31" + integrity sha512-06okr5cgPzMNBy+Ycse2A6udMi4bqwW/zgBF/rwjcNqWkyr82Mcg8b0vjX8OJpZFy/FKjJmw6wV7t44kK6kW7A== + dependencies: + "@floating-ui/dom" "^1.0.0" + +"@floating-ui/react@^0.26.22": + version "0.26.28" + resolved "https://registry.yarnpkg.com/@floating-ui/react/-/react-0.26.28.tgz#93f44ebaeb02409312e9df9507e83aab4a8c0dc7" + integrity sha512-yORQuuAtVpiRjpMhdc0wJj06b9JFjrYF4qp96j++v2NBpbi6SEGF7donUJ3TMieerQ6qVkAv1tgr7L4r5roTqw== + dependencies: + "@floating-ui/react-dom" "^2.1.2" + "@floating-ui/utils" "^0.2.8" + tabbable "^6.0.0" + +"@floating-ui/utils@^0.2.8": + version "0.2.8" + resolved "https://registry.yarnpkg.com/@floating-ui/utils/-/utils-0.2.8.tgz#21a907684723bbbaa5f0974cf7730bd797eb8e62" + integrity sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig== + "@gar/promisify@^1.1.3": version "1.1.3" resolved "https://registry.yarnpkg.com/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== +"@headlessui/react@^1.7.18": + version "1.7.19" + resolved "https://registry.yarnpkg.com/@headlessui/react/-/react-1.7.19.tgz#91c78cf5fcb254f4a0ebe96936d48421caf75f40" + integrity sha512-Ll+8q3OlMJfJbAKM/+/Y2q6PPYbryqNTXDbryx7SXLIDamkF6iQFbriYHga0dY44PvDhvvBWCx1Xj4U5+G4hOw== + dependencies: + "@tanstack/react-virtual" "^3.0.0-beta.60" + client-only "^0.0.1" + +"@heroicons/react@^2.1.1": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@heroicons/react/-/react-2.2.0.tgz#0c05124af50434a800773abec8d3af6a297d904b" + integrity sha512-LMcepvRaS9LYHJGsF0zzmgKCUim/X3N/DQKc4jepAXJ7l8QxJ1PmxJzqplF2Z3FE4PqBAIGyJAQ/w4B5dsqbtQ== + "@humanfs/core@^0.19.0": version "0.19.0" resolved "https://registry.yarnpkg.com/@humanfs/core/-/core-0.19.0.tgz#08db7a8c73bb07673d9ebd925f2dad746411fcec" @@ -2925,6 +3444,11 @@ globby "^11.0.0" read-yaml-file "^1.1.0" +"@marsidev/react-turnstile@^0.4.1": + version "0.4.1" + resolved "https://registry.yarnpkg.com/@marsidev/react-turnstile/-/react-turnstile-0.4.1.tgz#a31531643d23d6f3c056e37c490533f6eb46cffe" + integrity sha512-uZusUW9mPr0csWpls8bApe5iuRK0YK7H1PCKqfM4djW3OA9GB9rU68irjk7xRO8qlHyj0aDTeVu9tTLPExBO4Q== + "@mdx-js/mdx@^2.3.0": version "2.3.0" resolved "https://registry.yarnpkg.com/@mdx-js/mdx/-/mdx-2.3.0.tgz#d65d8c3c28f3f46bb0e7cb3bf7613b39980671a9" @@ -2948,6 +3472,14 @@ unist-util-visit "^4.0.0" vfile "^5.0.0" +"@metamask/abi-utils@^1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@metamask/abi-utils/-/abi-utils-1.2.0.tgz#068e1b0f5e423dfae96961e0e5276a7c1babc03a" + integrity sha512-Hf7fnBDM9ptCPDtq/wQffWbw859CdVGMwlpWUEsTH6gLXhXONGrRXHA2piyYPRuia8YYTdJvRC/zSK1/nyLvYg== + dependencies: + "@metamask/utils" "^3.4.1" + superstruct "^1.0.3" + "@metamask/eth-json-rpc-provider@^1.0.0": version "1.0.1" resolved "https://registry.yarnpkg.com/@metamask/eth-json-rpc-provider/-/eth-json-rpc-provider-1.0.1.tgz#3fd5316c767847f4ca107518b611b15396a5a32c" @@ -2957,6 +3489,19 @@ "@metamask/safe-event-emitter" "^3.0.0" "@metamask/utils" "^5.0.1" +"@metamask/eth-sig-util@^6.0.0": + version "6.0.2" + resolved "https://registry.yarnpkg.com/@metamask/eth-sig-util/-/eth-sig-util-6.0.2.tgz#d81dc87e0cd5a6580010911501976b48821746ad" + integrity sha512-D6IIefM2vS+4GUGGtezdBbkwUYQC4bCosYx/JteUuF0zfe6lyxR4cruA8+2QHoUg7F7edNH1xymYpqYq1BeOkw== + dependencies: + "@ethereumjs/util" "^8.1.0" + "@metamask/abi-utils" "^1.2.0" + "@metamask/utils" "^5.0.2" + ethereum-cryptography "^2.1.2" + ethjs-util "^0.1.6" + tweetnacl "^1.0.3" + tweetnacl-util "^0.15.1" + "@metamask/json-rpc-engine@^7.0.0": version "7.3.3" resolved "https://registry.yarnpkg.com/@metamask/json-rpc-engine/-/json-rpc-engine-7.3.3.tgz#f2b30a2164558014bfcca45db10f5af291d989af" @@ -2989,7 +3534,17 @@ resolved "https://registry.yarnpkg.com/@metamask/superstruct/-/superstruct-3.1.0.tgz#148f786a674fba3ac885c1093ab718515bf7f648" integrity sha512-N08M56HdOgBfRKkrgCMZvQppkZGcArEop3kixNEtVbJKm6P9Cfg0YkI6X0s1g78sNrj2fWUwvJADdZuzJgFttA== -"@metamask/utils@^5.0.1": +"@metamask/utils@^3.4.1": + version "3.6.0" + resolved "https://registry.yarnpkg.com/@metamask/utils/-/utils-3.6.0.tgz#b218b969a05ca7a8093b5d1670f6625061de707d" + integrity sha512-9cIRrfkWvHblSiNDVXsjivqa9Ak0RYo/1H6tqTqTbAx+oBK2Sva0lWDHxGchOqA7bySGUJKAWSNJvH6gdHZ0gQ== + dependencies: + "@types/debug" "^4.1.7" + debug "^4.3.4" + semver "^7.3.8" + superstruct "^1.0.3" + +"@metamask/utils@^5.0.1", "@metamask/utils@^5.0.2": version "5.0.2" resolved "https://registry.yarnpkg.com/@metamask/utils/-/utils-5.0.2.tgz#140ba5061d90d9dac0280c19cab101bc18c8857c" integrity sha512-yfmE79bRQtnMzarnKfX7AEJBwFTxvTyw3nBQlu/5rmGXrjAeAMltoGxO62TFurxrQAFMNa/fEjIHNvungZp0+g== @@ -3250,7 +3805,7 @@ dependencies: "@noble/hashes" "1.4.0" -"@noble/curves@1.6.0", "@noble/curves@~1.6.0": +"@noble/curves@1.6.0", "@noble/curves@^1.6.0", "@noble/curves@~1.6.0": version "1.6.0" resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.6.0.tgz#be5296ebcd5a1730fccea4786d420f87abfeb40b" integrity sha512-TlaHRXDehJuRNR9TfZDNQ45mMEd5dwUwmicsafcIX4SsNiqnCHKjE/1alYPd/lDRVhxdhUAlv8uEhMCI5zjIJQ== @@ -3267,7 +3822,7 @@ resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.4.0.tgz#45814aa329f30e4fe0ba49426f49dfccdd066426" integrity sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg== -"@noble/hashes@1.5.0", "@noble/hashes@~1.5.0": +"@noble/hashes@1.5.0", "@noble/hashes@^1.5.0", "@noble/hashes@~1.5.0": version "1.5.0" resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.5.0.tgz#abadc5ca20332db2b1b2aa3e496e9af1213570b0" integrity sha512-1j6kQFb7QRru7eKN3ZDvRcP13rugwdxZqCjbiAVZfIJwgj2A65UmT4TgARXGlXgnRkORLTDTrO19ZErt7+QXgA== @@ -4080,6 +4635,99 @@ resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.8.tgz#6b79032e760a0899cd4204710beede972a3a185f" integrity sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A== +"@privy-io/api-base@1.2.3": + version "1.2.3" + resolved "https://registry.yarnpkg.com/@privy-io/api-base/-/api-base-1.2.3.tgz#0fe5e96514b859e9ddf75d3dbba10b25aa04582d" + integrity sha512-ycl6L+C/B5BRtJNaeD3nS12SpSh6dMDg95d76jKGT1SBZd5VjaOnZYaEMIiAndu0txqLgVszLwdfai+f028iew== + dependencies: + zod "^3.21.4" + +"@privy-io/api-base@^1.2.3": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@privy-io/api-base/-/api-base-1.4.0.tgz#2e3485ef1398c26302a76d0b941c3900002412a0" + integrity sha512-8Pm/8bx6WvNt8uLtYOOj9acYL+JjUJxeChlBEvSywmre1l5o8naK6J4SeAb5v8b8p4178VNI4AYhd+rFh4HCsA== + dependencies: + zod "^3.21.4" + +"@privy-io/js-sdk-core@0.27.0": + version "0.27.0" + resolved "https://registry.yarnpkg.com/@privy-io/js-sdk-core/-/js-sdk-core-0.27.0.tgz#7ec695af36e7c1792c368af51693a4f80b74fd32" + integrity sha512-DkY3HRgQ7K7x7D1nFyT8RGKiHgMoHS4eSn4DvLAbdX4d381ICDvsl7zTvB+Pe+dKWJZajFhrJzJLuzWx9b99cg== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/contracts" "^5.7.0" + "@ethersproject/providers" "^5.7.2" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/units" "^5.7.0" + "@privy-io/api-base" "^1.2.3" + "@privy-io/public-api" "2.9.4" + eventemitter3 "^5.0.1" + fetch-retry "^5.0.6" + jose "^4.15.5" + js-cookie "^3.0.5" + set-cookie-parser "^2.6.0" + uuid ">=8 <10" + +"@privy-io/public-api@2.9.4": + version "2.9.4" + resolved "https://registry.yarnpkg.com/@privy-io/public-api/-/public-api-2.9.4.tgz#499b0b7a5e5960d2de3cb4964c31f2cf6b796aa2" + integrity sha512-/GFzSTCEavvm7f1OWG5SalNsm6EeQsOE3CosYBQc8j0MinmPF29OPaERlhkvGzqCEQ2YVmOf53fRK03X/WeQCQ== + dependencies: + "@privy-io/api-base" "1.2.3" + bs58 "^5.0.0" + ethers "^5.7.2" + libphonenumber-js "^1.10.31" + zod "^3.22.4" + +"@privy-io/react-auth@1.83.1": + version "1.83.1" + resolved "https://registry.yarnpkg.com/@privy-io/react-auth/-/react-auth-1.83.1.tgz#a6e06d1915034621bea348286aa406451c4751d2" + integrity sha512-TPBwkAmZhAouuELmKu6e2jeCWbtwm0pvk9HcD3bzFmXxE4/Ch7+1dJXwnHjLOad35pLC5ysv+MiDkpXTP7Aj4A== + dependencies: + "@coinbase/wallet-sdk" "4.0.3" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/contracts" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/providers" "^5.7.1" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/units" "^5.7.0" + "@floating-ui/react" "^0.26.22" + "@headlessui/react" "^1.7.18" + "@heroicons/react" "^2.1.1" + "@marsidev/react-turnstile" "^0.4.1" + "@metamask/eth-sig-util" "^6.0.0" + "@privy-io/js-sdk-core" "0.27.0" + "@simplewebauthn/browser" "^9.0.1" + "@walletconnect/ethereum-provider" "^2.15.1" + "@walletconnect/modal" "^2.6.2" + base64-js "^1.5.1" + dotenv "^16.0.3" + encoding "^0.1.13" + eventemitter3 "^5.0.1" + fast-password-entropy "^1.1.1" + jose "^4.15.5" + js-cookie "^3.0.5" + libphonenumber-js "^1.10.14" + lokijs "^1.5.12" + md5 "^2.3.0" + mipd "^0.0.7" + ofetch "^1.3.4" + pino-pretty "^10.0.0" + qrcode "^1.5.1" + react-device-detect "^2.2.2" + secure-password-utilities "^0.2.1" + styled-components "^5.3.6" + tinycolor2 "^1.6.0" + uuid ">=8 <10" + viem "^2.17.0" + web3-core "^1.8.0" + web3-core-helpers "^1.8.0" + "@remix-run/dev@^2.8.1": version "2.10.3" resolved "https://registry.yarnpkg.com/@remix-run/dev/-/dev-2.10.3.tgz#d98d18ec859099bad8552e69f6c01bf4d3faa03b" @@ -4414,7 +5062,7 @@ "@noble/hashes" "~1.4.0" "@scure/base" "~1.1.6" -"@scure/bip32@1.5.0": +"@scure/bip32@1.5.0", "@scure/bip32@^1.5.0": version "1.5.0" resolved "https://registry.yarnpkg.com/@scure/bip32/-/bip32-1.5.0.tgz#dd4a2e1b8a9da60e012e776d954c4186db6328e6" integrity sha512-8EnFYkqEQdnkuGBVpCzKxyIwDCBLDVj3oiX0EKUFre/tOjL/Hqba1D6n/8RcmaQy4f95qQFrO2A8Sr6ybh4NRw== @@ -4552,6 +5200,18 @@ "@sigstore/protobuf-specs" "^0.2.0" tuf-js "^1.1.7" +"@simplewebauthn/browser@^9.0.1": + version "9.0.1" + resolved "https://registry.yarnpkg.com/@simplewebauthn/browser/-/browser-9.0.1.tgz#46a12c2bcefcb199f7fcb6a7e883531cd6efde17" + integrity sha512-wD2WpbkaEP4170s13/HUxPcAV5y4ZXaKo1TfNklS5zDefPinIgXOpgz1kpEvobAsaLPa2KeH7AKKX/od1mrBJw== + dependencies: + "@simplewebauthn/types" "^9.0.1" + +"@simplewebauthn/types@^9.0.1": + version "9.0.1" + resolved "https://registry.yarnpkg.com/@simplewebauthn/types/-/types-9.0.1.tgz#3a68d50e63d8821cf2067de3324c68d5e8120d0c" + integrity sha512-tGSRP1QvsAvsJmnOlRQyw/mvK9gnPtjEc5fg2+m8n+QUa+D7rvrKkOYyfpy42GTs90X3RDOnqJgfHt+qO67/+w== + "@sinclair/typebox@^0.27.8": version "0.27.8" resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e" @@ -4656,7 +5316,7 @@ "@stablelib/constant-time" "^1.0.1" "@stablelib/wipe" "^1.0.1" -"@stablelib/random@^1.0.1", "@stablelib/random@^1.0.2": +"@stablelib/random@1.0.2", "@stablelib/random@^1.0.1", "@stablelib/random@^1.0.2": version "1.0.2" resolved "https://registry.yarnpkg.com/@stablelib/random/-/random-1.0.2.tgz#2dece393636489bf7e19c51229dd7900eddf742c" integrity sha512-rIsE83Xpb7clHPVRlBj8qNe5L8ISQOzjghYQm/dZ7VaM2KHYwMW5adjQjrzTZCchFnNCNhkwtnOBa9HTMJCI8w== @@ -4687,7 +5347,7 @@ resolved "https://registry.yarnpkg.com/@stablelib/wipe/-/wipe-1.0.1.tgz#d21401f1d59ade56a62e139462a97f104ed19a36" integrity sha512-WfqfX/eXGiAd3RJe4VU2snh/ZPwtSjLG4ynQ/vYzvghTh7dHFcI1wl+nrkWG6lGhukOxOsUHfv8dUXr58D0ayg== -"@stablelib/x25519@^1.0.3": +"@stablelib/x25519@1.0.3", "@stablelib/x25519@^1.0.3": version "1.0.3" resolved "https://registry.yarnpkg.com/@stablelib/x25519/-/x25519-1.0.3.tgz#13c8174f774ea9f3e5e42213cbf9fc68a3c7b7fd" integrity sha512-KnTbKmUhPhHavzobclVJQG5kuivH+qDLpe84iRqX3CLrKp881cF160JvXJ+hjn1aMyCwYOKeIZefIH/P5cJoRw== @@ -4843,6 +5503,18 @@ dependencies: "@swc/counter" "^0.1.3" +"@tanstack/react-virtual@^3.0.0-beta.60": + version "3.10.9" + resolved "https://registry.yarnpkg.com/@tanstack/react-virtual/-/react-virtual-3.10.9.tgz#40606b6dd8aba8e977f576d8f7df07f69ca63eea" + integrity sha512-OXO2uBjFqA4Ibr2O3y0YMnkrRWGVNqcvHQXmGvMu6IK8chZl3PrDxFXdGZ2iZkSrKh3/qUYoFqYe+Rx23RoU0g== + dependencies: + "@tanstack/virtual-core" "3.10.9" + +"@tanstack/virtual-core@3.10.9": + version "3.10.9" + resolved "https://registry.yarnpkg.com/@tanstack/virtual-core/-/virtual-core-3.10.9.tgz#55710c92b311fdaa8d8c66682a0dbdd684bc77c4" + integrity sha512-kBknKOKzmeR7lN+vSadaKWXaLS0SZZG+oqpQ/k80Q6g9REn6zRHS/ZYdrIzHnpHgy/eWs00SujveUN/GJT2qTw== + "@teppeis/multimaps@3.0.0": version "3.0.0" resolved "https://registry.yarnpkg.com/@teppeis/multimaps/-/multimaps-3.0.0.tgz#bb9c3f8d569f589e548586fa0bbf423010ddfdc5" @@ -4971,6 +5643,13 @@ dependencies: "@types/node" "*" +"@types/bn.js@^5.1.1": + version "5.1.6" + resolved "https://registry.yarnpkg.com/@types/bn.js/-/bn.js-5.1.6.tgz#9ba818eec0c85e4d3c679518428afdf611d03203" + integrity sha512-Xh8vSwUeMKeYYrj3cX4lGQgFSF/N03r+tv4AiLl1SucqV+uTQpxRcnM8AkXKHwYP9ZPXOYXRr2KPXpVlIvqh9w== + dependencies: + "@types/node" "*" + "@types/body-parser@*": version "1.19.5" resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.5.tgz#04ce9a3b677dc8bd681a17da1ab9835dc9d3ede4" @@ -5270,7 +5949,7 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.60.tgz#35f3d6213daed95da7f0f73e75bcc6980e90597b" integrity sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw== -"@types/node@^12.11.1", "@types/node@^12.7.1": +"@types/node@^12.11.1", "@types/node@^12.12.6", "@types/node@^12.7.1": version "12.20.55" resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240" integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ== @@ -6160,6 +6839,29 @@ lodash.isequal "4.5.0" uint8arrays "^3.1.0" +"@walletconnect/core@2.17.2": + version "2.17.2" + resolved "https://registry.yarnpkg.com/@walletconnect/core/-/core-2.17.2.tgz#877dc03f190d7b262bff8ce346330fdf1019cd83" + integrity sha512-O9VUsFg78CbvIaxfQuZMsHcJ4a2Z16DRz/O4S+uOAcGKhH/i/ln8hp864Tb+xRvifWSzaZ6CeAVxk657F+pscA== + dependencies: + "@walletconnect/heartbeat" "1.2.2" + "@walletconnect/jsonrpc-provider" "1.0.14" + "@walletconnect/jsonrpc-types" "1.0.4" + "@walletconnect/jsonrpc-utils" "1.0.8" + "@walletconnect/jsonrpc-ws-connection" "1.0.14" + "@walletconnect/keyvaluestorage" "1.1.1" + "@walletconnect/logger" "2.1.2" + "@walletconnect/relay-api" "1.0.11" + "@walletconnect/relay-auth" "1.0.4" + "@walletconnect/safe-json" "1.0.2" + "@walletconnect/time" "1.0.2" + "@walletconnect/types" "2.17.2" + "@walletconnect/utils" "2.17.2" + "@walletconnect/window-getters" "1.0.1" + events "3.3.0" + lodash.isequal "4.5.0" + uint8arrays "3.1.0" + "@walletconnect/crypto@^1.0.3": version "1.0.3" resolved "https://registry.yarnpkg.com/@walletconnect/crypto/-/crypto-1.0.3.tgz#7b8dd4d7e2884fe3543c7c07aea425eef5ef9dd4" @@ -6204,7 +6906,24 @@ "@walletconnect/utils" "2.11.0" events "^3.3.0" -"@walletconnect/events@^1.0.1": +"@walletconnect/ethereum-provider@^2.15.1": + version "2.17.2" + resolved "https://registry.yarnpkg.com/@walletconnect/ethereum-provider/-/ethereum-provider-2.17.2.tgz#7ac8091daf65f33c9f77cb08f524246c638e9e66" + integrity sha512-o4aL4KkUKT+n0iDwGzC6IY4bl+9n8bwOeT2KwifaVHsFw/irhtRPlsAQQH4ezOiPyk8cri1KN9dPk/YeU0pe6w== + dependencies: + "@walletconnect/jsonrpc-http-connection" "1.0.8" + "@walletconnect/jsonrpc-provider" "1.0.14" + "@walletconnect/jsonrpc-types" "1.0.4" + "@walletconnect/jsonrpc-utils" "1.0.8" + "@walletconnect/keyvaluestorage" "1.1.1" + "@walletconnect/modal" "2.7.0" + "@walletconnect/sign-client" "2.17.2" + "@walletconnect/types" "2.17.2" + "@walletconnect/universal-provider" "2.17.2" + "@walletconnect/utils" "2.17.2" + events "3.3.0" + +"@walletconnect/events@1.0.1", "@walletconnect/events@^1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@walletconnect/events/-/events-1.0.1.tgz#2b5f9c7202019e229d7ccae1369a9e86bda7816c" integrity sha512-NPTqaoi0oPBVNuLv7qPaJazmGHs5JGyO8eEAk5VGKmJzDR7AHzD4k6ilox5kxk1iwiOnFopBOOMLs86Oa76HpQ== @@ -6221,7 +6940,16 @@ "@walletconnect/time" "^1.0.2" tslib "1.14.1" -"@walletconnect/jsonrpc-http-connection@^1.0.4", "@walletconnect/jsonrpc-http-connection@^1.0.7": +"@walletconnect/heartbeat@1.2.2": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@walletconnect/heartbeat/-/heartbeat-1.2.2.tgz#e8dc5179db7769950c6f9cf59b23516d9b95227d" + integrity sha512-uASiRmC5MwhuRuf05vq4AT48Pq8RMi876zV8rr8cV969uTOzWdB/k+Lj5yI2PBtB1bGQisGen7MM1GcZlQTBXw== + dependencies: + "@walletconnect/events" "^1.0.1" + "@walletconnect/time" "^1.0.2" + events "^3.3.0" + +"@walletconnect/jsonrpc-http-connection@1.0.8", "@walletconnect/jsonrpc-http-connection@^1.0.4", "@walletconnect/jsonrpc-http-connection@^1.0.7": version "1.0.8" resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-http-connection/-/jsonrpc-http-connection-1.0.8.tgz#2f4c3948f074960a3edd07909560f3be13e2c7ae" integrity sha512-+B7cRuaxijLeFDJUq5hAzNyef3e3tBDIxyaCNmFtjwnod5AGis3RToNqzFU33vpVcxFhofkpE7Cx+5MYejbMGw== @@ -6240,7 +6968,7 @@ "@walletconnect/safe-json" "^1.0.2" tslib "1.14.1" -"@walletconnect/jsonrpc-provider@^1.0.13", "@walletconnect/jsonrpc-provider@^1.0.6": +"@walletconnect/jsonrpc-provider@1.0.14", "@walletconnect/jsonrpc-provider@^1.0.13", "@walletconnect/jsonrpc-provider@^1.0.6": version "1.0.14" resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-provider/-/jsonrpc-provider-1.0.14.tgz#696f3e3b6d728b361f2e8b853cfc6afbdf2e4e3e" integrity sha512-rtsNY1XqHvWj0EtITNeuf8PHMvlCLiS3EjQL+WOkxEOA4KPxsohFnBDeyPYiNm4ZvkQdLnece36opYidmtbmow== @@ -6257,7 +6985,7 @@ keyvaluestorage-interface "^1.0.0" tslib "1.14.1" -"@walletconnect/jsonrpc-types@^1.0.2", "@walletconnect/jsonrpc-types@^1.0.3": +"@walletconnect/jsonrpc-types@1.0.4", "@walletconnect/jsonrpc-types@^1.0.2", "@walletconnect/jsonrpc-types@^1.0.3": version "1.0.4" resolved "https://registry.yarnpkg.com/@walletconnect/jsonrpc-types/-/jsonrpc-types-1.0.4.tgz#ce1a667d79eadf2a2d9d002c152ceb68739c230c" integrity sha512-P6679fG/M+wuWg9TY8mh6xFSdYnFyFjwFelxyISxMDrlbXokorEVXYOxiqEbrU3x1BmBoCAJJ+vtEaEoMlpCBQ== @@ -6284,7 +7012,7 @@ events "^3.3.0" ws "^7.5.1" -"@walletconnect/keyvaluestorage@^1.1.1": +"@walletconnect/keyvaluestorage@1.1.1", "@walletconnect/keyvaluestorage@^1.1.1": version "1.1.1" resolved "https://registry.yarnpkg.com/@walletconnect/keyvaluestorage/-/keyvaluestorage-1.1.1.tgz#dd2caddabfbaf80f6b8993a0704d8b83115a1842" integrity sha512-V7ZQq2+mSxAq7MrRqDxanTzu2RcElfK1PfNYiaVnJgJ7Q7G7hTVwF8voIBx92qsRyGHZihrwNPHuZd1aKkd0rA== @@ -6353,7 +7081,7 @@ detect-browser "^5.3.0" query-string "^6.13.5" -"@walletconnect/logger@^2.0.1": +"@walletconnect/logger@2.1.2", "@walletconnect/logger@^2.0.1": version "2.1.2" resolved "https://registry.yarnpkg.com/@walletconnect/logger/-/logger-2.1.2.tgz#813c9af61b96323a99f16c10089bfeb525e2a272" integrity sha512-aAb28I3S6pYXZHQm5ESB+V6rDqIYfsnHaQyzFbwUUBFY4H0OXx/YtTl8lvhUNhMMfb9UxbwEBS253TlXUYJWSw== @@ -6368,6 +7096,13 @@ dependencies: valtio "1.11.2" +"@walletconnect/modal-core@2.7.0": + version "2.7.0" + resolved "https://registry.yarnpkg.com/@walletconnect/modal-core/-/modal-core-2.7.0.tgz#73c13c3b7b0abf9ccdbac9b242254a86327ce0a4" + integrity sha512-oyMIfdlNdpyKF2kTJowTixZSo0PGlCJRdssUN/EZdA6H6v03hZnf09JnwpljZNfir2M65Dvjm/15nGrDQnlxSA== + dependencies: + valtio "1.11.2" + "@walletconnect/modal-ui@2.6.2": version "2.6.2" resolved "https://registry.yarnpkg.com/@walletconnect/modal-ui/-/modal-ui-2.6.2.tgz#fa57c087c57b7f76aaae93deab0f84bb68b59cf9" @@ -6378,6 +7113,16 @@ motion "10.16.2" qrcode "1.5.3" +"@walletconnect/modal-ui@2.7.0": + version "2.7.0" + resolved "https://registry.yarnpkg.com/@walletconnect/modal-ui/-/modal-ui-2.7.0.tgz#dbbb7ee46a5a25f7d39db622706f2d197b268cbb" + integrity sha512-gERYvU7D7K1ANCN/8vUgsE0d2hnRemfAFZ2novm9aZBg7TEd/4EgB+AqbJ+1dc7GhOL6dazckVq78TgccHb7mQ== + dependencies: + "@walletconnect/modal-core" "2.7.0" + lit "2.8.0" + motion "10.16.2" + qrcode "1.5.3" + "@walletconnect/modal@2.6.2", "@walletconnect/modal@^2.6.2": version "2.6.2" resolved "https://registry.yarnpkg.com/@walletconnect/modal/-/modal-2.6.2.tgz#4b534a836f5039eeb3268b80be7217a94dd12651" @@ -6386,6 +7131,14 @@ "@walletconnect/modal-core" "2.6.2" "@walletconnect/modal-ui" "2.6.2" +"@walletconnect/modal@2.7.0": + version "2.7.0" + resolved "https://registry.yarnpkg.com/@walletconnect/modal/-/modal-2.7.0.tgz#55f969796d104cce1205f5f844d8f8438b79723a" + integrity sha512-RQVt58oJ+rwqnPcIvRFeMGKuXb9qkgSmwz4noF8JZGUym3gUAzVs+uW2NQ1Owm9XOJAV+sANrtJ+VoVq1ftElw== + dependencies: + "@walletconnect/modal-core" "2.7.0" + "@walletconnect/modal-ui" "2.7.0" + "@walletconnect/randombytes@^1.0.3": version "1.0.3" resolved "https://registry.yarnpkg.com/@walletconnect/randombytes/-/randombytes-1.0.3.tgz#e795e4918367fd1e6a2215e075e64ab93e23985b" @@ -6396,6 +7149,13 @@ randombytes "^2.1.0" tslib "1.14.1" +"@walletconnect/relay-api@1.0.11": + version "1.0.11" + resolved "https://registry.yarnpkg.com/@walletconnect/relay-api/-/relay-api-1.0.11.tgz#80ab7ef2e83c6c173be1a59756f95e515fb63224" + integrity sha512-tLPErkze/HmC9aCmdZOhtVmYZq1wKfWTJtygQHoWtgg722Jd4homo54Cs4ak2RUFUZIGO2RsOpIcWipaua5D5Q== + dependencies: + "@walletconnect/jsonrpc-types" "^1.0.2" + "@walletconnect/relay-api@^1.0.9": version "1.0.10" resolved "https://registry.yarnpkg.com/@walletconnect/relay-api/-/relay-api-1.0.10.tgz#5aef3cd07c21582b968136179aa75849dcc65499" @@ -6403,7 +7163,7 @@ dependencies: "@walletconnect/jsonrpc-types" "^1.0.2" -"@walletconnect/relay-auth@^1.0.4": +"@walletconnect/relay-auth@1.0.4", "@walletconnect/relay-auth@^1.0.4": version "1.0.4" resolved "https://registry.yarnpkg.com/@walletconnect/relay-auth/-/relay-auth-1.0.4.tgz#0b5c55c9aa3b0ef61f526ce679f3ff8a5c4c2c7c" integrity sha512-kKJcS6+WxYq5kshpPaxGHdwf5y98ZwbfuS4EE/NkQzqrDFm5Cj+dP8LofzWvjrrLkZq7Afy7WrQMXdLy8Sx7HQ== @@ -6415,7 +7175,7 @@ tslib "1.14.1" uint8arrays "^3.0.0" -"@walletconnect/safe-json@^1.0.1", "@walletconnect/safe-json@^1.0.2": +"@walletconnect/safe-json@1.0.2", "@walletconnect/safe-json@^1.0.1", "@walletconnect/safe-json@^1.0.2": version "1.0.2" resolved "https://registry.yarnpkg.com/@walletconnect/safe-json/-/safe-json-1.0.2.tgz#7237e5ca48046e4476154e503c6d3c914126fa77" integrity sha512-Ogb7I27kZ3LPC3ibn8ldyUr5544t3/STow9+lzz7Sfo808YD7SBWk7SAsdBFlYgP2zDRy2hS3sKRcuSRM0OTmA== @@ -6452,7 +7212,22 @@ "@walletconnect/utils" "2.11.3" events "^3.3.0" -"@walletconnect/time@^1.0.2": +"@walletconnect/sign-client@2.17.2": + version "2.17.2" + resolved "https://registry.yarnpkg.com/@walletconnect/sign-client/-/sign-client-2.17.2.tgz#b8bd125d7c34a67916745ebbdbbc834db5518c8b" + integrity sha512-/wigdCIQjlBXSWY43Id0IPvZ5biq4HiiQZti8Ljvx408UYjmqcxcBitbj2UJXMYkid7704JWAB2mw32I1HgshQ== + dependencies: + "@walletconnect/core" "2.17.2" + "@walletconnect/events" "1.0.1" + "@walletconnect/heartbeat" "1.2.2" + "@walletconnect/jsonrpc-utils" "1.0.8" + "@walletconnect/logger" "2.1.2" + "@walletconnect/time" "1.0.2" + "@walletconnect/types" "2.17.2" + "@walletconnect/utils" "2.17.2" + events "3.3.0" + +"@walletconnect/time@1.0.2", "@walletconnect/time@^1.0.2": version "1.0.2" resolved "https://registry.yarnpkg.com/@walletconnect/time/-/time-1.0.2.tgz#6c5888b835750ecb4299d28eecc5e72c6d336523" integrity sha512-uzdd9woDcJ1AaBZRhqy5rNC9laqWGErfc4dxA9a87mPdKOgWMD85mcFo9dIYIts/Jwocfwn07EC6EzclKubk/g== @@ -6483,6 +7258,18 @@ "@walletconnect/logger" "^2.0.1" events "^3.3.0" +"@walletconnect/types@2.17.2": + version "2.17.2" + resolved "https://registry.yarnpkg.com/@walletconnect/types/-/types-2.17.2.tgz#f9afff242563be33f377de689b03b482f5b20aee" + integrity sha512-j/+0WuO00lR8ntu7b1+MKe/r59hNwYLFzW0tTmozzhfAlDL+dYwWasDBNq4AH8NbVd7vlPCQWmncH7/6FVtOfQ== + dependencies: + "@walletconnect/events" "1.0.1" + "@walletconnect/heartbeat" "1.2.2" + "@walletconnect/jsonrpc-types" "1.0.4" + "@walletconnect/keyvaluestorage" "1.1.1" + "@walletconnect/logger" "2.1.2" + events "3.3.0" + "@walletconnect/universal-provider@2.11.0": version "2.11.0" resolved "https://registry.yarnpkg.com/@walletconnect/universal-provider/-/universal-provider-2.11.0.tgz#89053c2360b5ce766c213ca4e33bb4ce4976b0be" @@ -6498,6 +7285,24 @@ "@walletconnect/utils" "2.11.0" events "^3.3.0" +"@walletconnect/universal-provider@2.17.2": + version "2.17.2" + resolved "https://registry.yarnpkg.com/@walletconnect/universal-provider/-/universal-provider-2.17.2.tgz#f4627dd9b66db3bacc31864584112868be23bf08" + integrity sha512-yIWDhBODRa9J349d/i1sObzon0vy4n+7R3MvGQQYaU1EVrV+WfoGSRsu8U7rYsL067/MAUu9t/QrpPblaSbz7g== + dependencies: + "@walletconnect/events" "1.0.1" + "@walletconnect/jsonrpc-http-connection" "1.0.8" + "@walletconnect/jsonrpc-provider" "1.0.14" + "@walletconnect/jsonrpc-types" "1.0.4" + "@walletconnect/jsonrpc-utils" "1.0.8" + "@walletconnect/keyvaluestorage" "1.1.1" + "@walletconnect/logger" "2.1.2" + "@walletconnect/sign-client" "2.17.2" + "@walletconnect/types" "2.17.2" + "@walletconnect/utils" "2.17.2" + events "3.3.0" + lodash "4.17.21" + "@walletconnect/utils@2.11.0": version "2.11.0" resolved "https://registry.yarnpkg.com/@walletconnect/utils/-/utils-2.11.0.tgz#31c95151c823022077883dda61800cdea71879b7" @@ -6538,14 +7343,40 @@ query-string "7.1.3" uint8arrays "^3.1.0" -"@walletconnect/window-getters@^1.0.1": +"@walletconnect/utils@2.17.2": + version "2.17.2" + resolved "https://registry.yarnpkg.com/@walletconnect/utils/-/utils-2.17.2.tgz#b4b12e3f5ebbfd883b2a5c87fb818e53501dc7ea" + integrity sha512-T7eLRiuw96fgwUy2A5NZB5Eu87ukX8RCVoO9lji34RFV4o2IGU9FhTEWyd4QQKI8OuQRjSknhbJs0tU0r0faPw== + dependencies: + "@ethersproject/hash" "5.7.0" + "@ethersproject/transactions" "5.7.0" + "@stablelib/chacha20poly1305" "1.0.1" + "@stablelib/hkdf" "1.0.1" + "@stablelib/random" "1.0.2" + "@stablelib/sha256" "1.0.1" + "@stablelib/x25519" "1.0.3" + "@walletconnect/jsonrpc-utils" "1.0.8" + "@walletconnect/keyvaluestorage" "1.1.1" + "@walletconnect/relay-api" "1.0.11" + "@walletconnect/relay-auth" "1.0.4" + "@walletconnect/safe-json" "1.0.2" + "@walletconnect/time" "1.0.2" + "@walletconnect/types" "2.17.2" + "@walletconnect/window-getters" "1.0.1" + "@walletconnect/window-metadata" "1.0.1" + detect-browser "5.3.0" + elliptic "6.6.0" + query-string "7.1.3" + uint8arrays "3.1.0" + +"@walletconnect/window-getters@1.0.1", "@walletconnect/window-getters@^1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@walletconnect/window-getters/-/window-getters-1.0.1.tgz#f36d1c72558a7f6b87ecc4451fc8bd44f63cbbdc" integrity sha512-vHp+HqzGxORPAN8gY03qnbTMnhqIwjeRJNOMOAzePRg4xVEEE2WvYsI9G2NMjOknA8hnuYbU3/hwLcKbjhc8+Q== dependencies: tslib "1.14.1" -"@walletconnect/window-metadata@^1.0.1": +"@walletconnect/window-metadata@1.0.1", "@walletconnect/window-metadata@^1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@walletconnect/window-metadata/-/window-metadata-1.0.1.tgz#2124f75447b7e989e4e4e1581d55d25bc75f7be5" integrity sha512-9koTqyGrM2cqFRW517BPY/iEtUDx2r1+Pwwu5m7sJ7ka79wi3EyqhqcICk/yDmv6jAS1rjKgTKXlEhanYjijcA== @@ -6772,7 +7603,7 @@ abitype@1.0.5: resolved "https://registry.yarnpkg.com/abitype/-/abitype-1.0.5.tgz#29d0daa3eea867ca90f7e4123144c1d1270774b6" integrity sha512-YzDhti7cjlfaBhHutMaboYB21Ha3rXR9QTkNJFzYC4kC8YclaiwPBBBJY8ejFdu2wnJeZCVZSMlQJ7fi8S6hsw== -abitype@1.0.6: +abitype@1.0.6, abitype@^1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/abitype/-/abitype-1.0.6.tgz#76410903e1d88e34f1362746e2d407513c38565b" integrity sha512-MMSqYh4+C/aVqI2RQaWqbvI4Kxo5cQV40WQ4QFtDnNzCkqChm8MuENhElmynZlO0qUy/ObkEUaXtKqYnx1Kp3A== @@ -6789,6 +7620,11 @@ abortcontroller-polyfill@^1.1.9: resolved "https://registry.yarnpkg.com/abortcontroller-polyfill/-/abortcontroller-polyfill-1.7.5.tgz#6738495f4e901fbb57b6c0611d0c75f76c485bed" integrity sha512-JMJ5soJWP18htbbxJjG7bG6yuI6pRhgJ0scHHTfkUjf6wjP912xZWvM+A4sJK3gqd9E8fcPbDnOefbA9Th/FIQ== +abortcontroller-polyfill@^1.7.5: + version "1.7.6" + resolved "https://registry.yarnpkg.com/abortcontroller-polyfill/-/abortcontroller-polyfill-1.7.6.tgz#7be8d35b5ed7dfa1a51b36f221720b23deb13f36" + integrity sha512-Zypm+LjYdWAzvuypZvDN0smUJrhOurcuBWhhMRBExqVLRvdjp3Z9mASxKyq19K+meZMshwjjy5S0lkm388zE4Q== + accepts@~1.3.4, accepts@~1.3.5, accepts@~1.3.8: version "1.3.8" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" @@ -7398,6 +8234,17 @@ babel-plugin-polyfill-regenerator@^0.5.1: dependencies: "@babel/helper-define-polyfill-provider" "^0.5.0" +"babel-plugin-styled-components@>= 1.12.0": + version "2.1.4" + resolved "https://registry.yarnpkg.com/babel-plugin-styled-components/-/babel-plugin-styled-components-2.1.4.tgz#9a1f37c7f32ef927b4b008b529feb4a2c82b1092" + integrity sha512-Xgp9g+A/cG47sUyRwwYxGM4bR/jDRg5N6it/8+HxCnbT5XNKSKDT9xm4oag/osgqjC2It/vH0yXsomOG6k558g== + dependencies: + "@babel/helper-annotate-as-pure" "^7.22.5" + "@babel/helper-module-imports" "^7.22.5" + "@babel/plugin-syntax-jsx" "^7.22.5" + lodash "^4.17.21" + picomatch "^2.3.1" + bail@^2.0.0: version "2.0.2" resolved "https://registry.yarnpkg.com/bail/-/bail-2.0.2.tgz#d26f5cd8fe5d6f832a31517b9f7c356040ba6d5d" @@ -7448,7 +8295,12 @@ base-x@^3.0.8: dependencies: safe-buffer "^5.0.1" -base64-js@^1.2.0, base64-js@^1.3.1: +base-x@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/base-x/-/base-x-4.0.0.tgz#d0e3b7753450c73f8ad2389b5c018a4af7b2224a" + integrity sha512-FuwxlW4H5kh37X/oW59pwTzzTKRzfrrQwhmyspRM7swOEZcHtDZSCt45U6oKgtuFE+WYPblePMVIPR4RZrh/hw== + +base64-js@^1.2.0, base64-js@^1.3.1, base64-js@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== @@ -7477,6 +8329,11 @@ bcrypt-pbkdf@^1.0.2: dependencies: tweetnacl "^0.14.3" +bech32@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/bech32/-/bech32-1.1.4.tgz#e38c9f37bf179b8eb16ae3a772b40c356d4832e9" + integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== + better-path-resolve@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/better-path-resolve/-/better-path-resolve-1.0.0.tgz#13a35a1104cdd48a7b74bf8758f96a1ee613f99d" @@ -7494,7 +8351,7 @@ bignumber.js@^7.2.1: resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-7.2.1.tgz#80c048759d826800807c4bfd521e50edbba57a5f" integrity sha512-S4XzBk5sMB+Rcb/LNcpzXr57VRTxgAvaAEDAl1AwRx27j00hT84O6OkteE7u8UB3NuaaygCRrEpqox4uDOrbdQ== -bignumber.js@^9.1.2: +bignumber.js@^9.0.0, bignumber.js@^9.1.2: version "9.1.2" resolved "https://registry.yarnpkg.com/bignumber.js/-/bignumber.js-9.1.2.tgz#b7c4242259c008903b13707983b5f4bbd31eda0c" integrity sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug== @@ -7518,6 +8375,11 @@ blakejs@^1.1.2, blakejs@^1.2.1: resolved "https://registry.yarnpkg.com/blakejs/-/blakejs-1.2.1.tgz#5057e4206eadb4a97f7c0b6e197a505042fc3814" integrity sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ== +bn.js@4.11.6: + version "4.11.6" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.6.tgz#53344adb14617a13f6e8dd2ce28905d1c0ba3215" + integrity sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA== + bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9, bn.js@^4.4.0: version "4.12.0" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" @@ -7700,6 +8562,13 @@ browserslist@^4.14.5, browserslist@^4.21.5, browserslist@^4.23.0, browserslist@^ node-releases "^2.0.14" update-browserslist-db "^1.1.0" +bs58@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/bs58/-/bs58-5.0.0.tgz#865575b4d13c09ea2a84622df6c8cbeb54ffc279" + integrity sha512-r+ihvQJvahgYT50JD05dyJNKlmmSlMoOGwn1lCcEzanPglg7TxYjioQUYehQ9mAR/+hOSd2jRc/Z2y5UxBymvQ== + dependencies: + base-x "^4.0.0" + buffer-crc32@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-1.0.0.tgz#a10993b9055081d55304bd9feb4a072de179f405" @@ -7710,7 +8579,7 @@ buffer-from@^1.0.0: resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== -"buffer-polyfill@npm:buffer@^6.0.3", buffer@^6.0.3: +"buffer-polyfill@npm:buffer@^6.0.3": version "6.0.3" resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA== @@ -7731,6 +8600,21 @@ buffer@5.7.1, buffer@^5.5.0, buffer@^5.7.1: base64-js "^1.3.1" ieee754 "^1.1.13" +buffer@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" + integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.2.1" + +bufferutil@^4.0.1: + version "4.0.8" + resolved "https://registry.yarnpkg.com/bufferutil/-/bufferutil-4.0.8.tgz#1de6a71092d65d7766c4d8a522b261a6e787e8ea" + integrity sha512-4T53u4PdgsXqKaIctwF8ifXlRTTmEPJ8iEPWFdGZvcf7sbwYo6FKFEX9eNNAnzFZ7EzJAQ3CJeOtCRA4rDp7Pw== + dependencies: + node-gyp-build "^4.3.0" + buildcheck@~0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/buildcheck/-/buildcheck-0.0.6.tgz#89aa6e417cfd1e2196e3f8fe915eb709d2fe4238" @@ -7854,6 +8738,11 @@ camelcase@^5.0.0, camelcase@^5.3.1: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== +camelize@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/camelize/-/camelize-1.0.1.tgz#89b7e16884056331a35d6b5ad064332c91daa6c3" + integrity sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ== + caniuse-lite@^1.0.30001464, caniuse-lite@^1.0.30001579, caniuse-lite@^1.0.30001640: version "1.0.30001644" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001644.tgz#bcd4212a7a03bdedba1ea850b8a72bfe4bec2395" @@ -7933,6 +8822,11 @@ chardet@^0.7.0: resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== +charenc@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/charenc/-/charenc-0.0.2.tgz#c0a1d2f3a7092e03774bfa83f14c0fc5790a8667" + integrity sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA== + check-error@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.3.tgz#a6502e4312a7ee969f646e83bb3ddd56281bd694" @@ -8065,7 +8959,7 @@ cli-width@^3.0.0: resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6" integrity sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw== -client-only@0.0.1: +client-only@0.0.1, client-only@^0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/client-only/-/client-only-0.0.1.tgz#38bba5d403c41ab150bff64a95c85013cf73bca1" integrity sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA== @@ -8170,7 +9064,7 @@ color-support@^1.1.3: resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== -colorette@^2.0.10, colorette@^2.0.20: +colorette@^2.0.10, colorette@^2.0.20, colorette@^2.0.7: version "2.0.20" resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a" integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w== @@ -8570,6 +9464,13 @@ cross-fetch@^3.1.4: dependencies: node-fetch "^2.6.12" +cross-fetch@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-4.0.0.tgz#f037aef1580bb3a1a35164ea2a848ba81b445983" + integrity sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g== + dependencies: + node-fetch "^2.6.12" + cross-spawn@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" @@ -8593,6 +9494,11 @@ crossws@^0.2.0, crossws@^0.2.4: resolved "https://registry.yarnpkg.com/crossws/-/crossws-0.2.4.tgz#82a8b518bff1018ab1d21ced9e35ffbe1681ad03" integrity sha512-DAxroI2uSOgUKLz00NX6A8U/8EE3SZHmIND+10jkVSaypvyt57J5JEOxAQOL6lQxyzi/wZbTIwssU1uy69h5Vg== +crypt@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/crypt/-/crypt-0.0.2.tgz#88d7ff7ec0dfb86f713dc87bbb42d044d3e6c41b" + integrity sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow== + crypto-browserify@3.12.0, crypto-browserify@^3.11.0: version "3.12.0" resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" @@ -8610,6 +9516,11 @@ crypto-browserify@3.12.0, crypto-browserify@^3.11.0: randombytes "^2.0.0" randomfill "^1.0.3" +css-color-keywords@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/css-color-keywords/-/css-color-keywords-1.0.0.tgz#fea2616dc676b2962686b3af8dbdbe180b244e05" + integrity sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg== + css-loader@6.8.1: version "6.8.1" resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-6.8.1.tgz#0f8f52699f60f5e679eab4ec0fcd68b8e8a50a88" @@ -8646,6 +9557,15 @@ css-select@^5.1.0: domutils "^3.0.1" nth-check "^2.0.1" +css-to-react-native@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/css-to-react-native/-/css-to-react-native-3.2.0.tgz#cdd8099f71024e149e4f6fe17a7d46ecd55f1e32" + integrity sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ== + dependencies: + camelize "^1.0.0" + css-color-keywords "^1.0.0" + postcss-value-parser "^4.0.2" + css-tree@^1.1.2, css-tree@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.1.3.tgz#eb4870fb6fd7707327ec95c2ff2ab09b5e8db91d" @@ -8706,6 +9626,14 @@ custom-event@~1.0.0: resolved "https://registry.yarnpkg.com/custom-event/-/custom-event-1.0.1.tgz#5d02a46850adf1b4a317946a3928fccb5bfd0425" integrity sha512-GAj5FOq0Hd+RsCGVJxZuKaIDXDf3h6GQoNEjFgbLLI/trgtavwUbSnZ5pVfg27DVCaWjIohryS0JFwIJyT2cMg== +d@1, d@^1.0.1, d@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/d/-/d-1.0.2.tgz#2aefd554b81981e7dccf72d6842ae725cb17e5de" + integrity sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw== + dependencies: + es5-ext "^0.10.64" + type "^2.7.2" + damerau-levenshtein@^1.0.8: version "1.0.8" resolved "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz#b43d286ccbd36bc5b2f7ed41caf2d0aba1f8a6e7" @@ -8762,12 +9690,17 @@ date-format@^4.0.14: resolved "https://registry.yarnpkg.com/date-format/-/date-format-4.0.14.tgz#7a8e584434fb169a521c8b7aa481f355810d9400" integrity sha512-39BOQLs9ZjKh0/patS9nrT8wc3ioX3/eA/zgbKNopnF2wCqJEoxywwwElATYvRsXdnOxA/OQeQoFZ3rFjVajhg== +dateformat@^4.6.3: + version "4.6.3" + resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-4.6.3.tgz#556fa6497e5217fedb78821424f8a1c22fa3f4b5" + integrity sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA== + de-indent@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/de-indent/-/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d" integrity sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg== -debug@2.6.9: +debug@2.6.9, debug@^2.2.0: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== @@ -9164,7 +10097,7 @@ dotenv-expand@^5.1.0: resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz#3fbaf020bfd794884072ea26b1e9791d45a629f0" integrity sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA== -dotenv@^16.0.0: +dotenv@^16.0.0, dotenv@^16.0.3: version "16.4.5" resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.4.5.tgz#cdd3b3b604cb327e286b4762e13502f717cb099f" integrity sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg== @@ -9222,6 +10155,19 @@ elliptic@6.5.4: minimalistic-assert "^1.0.1" minimalistic-crypto-utils "^1.0.1" +elliptic@6.6.0: + version "6.6.0" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.6.0.tgz#5919ec723286c1edf28685aa89261d4761afa210" + integrity sha512-dpwoQcLc/2WLQvJvLRHKZ+f9FgOdjnq11rurqwekGQygGPsYSK29OMMD2WalatiqQ+XGFDglTNixpPfI+lpaAA== + dependencies: + bn.js "^4.11.9" + brorand "^1.1.0" + hash.js "^1.0.0" + hmac-drbg "^1.0.1" + inherits "^2.0.4" + minimalistic-assert "^1.0.1" + minimalistic-crypto-utils "^1.0.1" + elliptic@^6.5.3, elliptic@^6.5.5: version "6.5.6" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.6.tgz#ee5f7c3a00b98a2144ac84d67d01f04d438fa53e" @@ -9515,11 +10461,43 @@ es-to-primitive@^1.2.1: is-date-object "^1.0.1" is-symbol "^1.0.2" +es5-ext@^0.10.35, es5-ext@^0.10.62, es5-ext@^0.10.63, es5-ext@^0.10.64, es5-ext@~0.10.14: + version "0.10.64" + resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.64.tgz#12e4ffb48f1ba2ea777f1fcdd1918ef73ea21714" + integrity sha512-p2snDhiLaXe6dahss1LddxqEm+SkuDvV8dnIQG0MWjyHpcMNfXKPE+/Cc0y+PhxJX3A4xGNeFCj5oc0BUh6deg== + dependencies: + es6-iterator "^2.0.3" + es6-symbol "^3.1.3" + esniff "^2.0.1" + next-tick "^1.1.0" + +es6-iterator@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" + integrity sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g== + dependencies: + d "1" + es5-ext "^0.10.35" + es6-symbol "^3.1.1" + es6-promise@^3.1.2: version "3.3.1" resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.3.1.tgz#a08cdde84ccdbf34d027a1451bc91d4bcd28a613" integrity sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg== +es6-promise@^4.2.8: + version "4.2.8" + resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.8.tgz#4eb21594c972bc40553d276e510539143db53e0a" + integrity sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w== + +es6-symbol@^3.1.1, es6-symbol@^3.1.3: + version "3.1.4" + resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.4.tgz#f4e7d28013770b4208ecbf3e0bf14d3bcb557b8c" + integrity sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg== + dependencies: + d "^1.0.2" + ext "^1.7.0" + esbuild-android-64@0.14.54: version "0.14.54" resolved "https://registry.yarnpkg.com/esbuild-android-64/-/esbuild-android-64-0.14.54.tgz#505f41832884313bbaffb27704b8bcaa2d8616be" @@ -10106,6 +11084,16 @@ esm-env@^1.0.0: resolved "https://registry.yarnpkg.com/esm-env/-/esm-env-1.0.0.tgz#b124b40b180711690a4cb9b00d16573391950413" integrity sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA== +esniff@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/esniff/-/esniff-2.0.1.tgz#a4d4b43a5c71c7ec51c51098c1d8a29081f9b308" + integrity sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg== + dependencies: + d "^1.0.1" + es5-ext "^0.10.62" + event-emitter "^0.3.5" + type "^2.7.2" + espree@^10.0.1, espree@^10.2.0: version "10.2.0" resolved "https://registry.yarnpkg.com/espree/-/espree-10.2.0.tgz#f4bcead9e05b0615c968e85f83816bc386a45df6" @@ -10267,7 +11255,14 @@ eth-rpc-errors@^4.0.2: dependencies: fast-safe-stringify "^2.0.6" -ethereum-cryptography@^2.0.0: +ethereum-bloom-filters@^1.0.6: + version "1.2.0" + resolved "https://registry.yarnpkg.com/ethereum-bloom-filters/-/ethereum-bloom-filters-1.2.0.tgz#8294f074c1a6cbd32c39d2cc77ce86ff14797dab" + integrity sha512-28hyiE7HVsWubqhpVLVmZXFd4ITeHi+BUu05o9isf0GUpMtzBUi+8/gFrGaGYzvGAJQmJ3JKj77Mk9G98T84rA== + dependencies: + "@noble/hashes" "^1.4.0" + +ethereum-cryptography@^2.0.0, ethereum-cryptography@^2.1.2: version "2.2.1" resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-2.2.1.tgz#58f2810f8e020aecb97de8c8c76147600b0b8ccf" integrity sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg== @@ -10290,6 +11285,58 @@ ethers@6.13.2: tslib "2.4.0" ws "8.17.1" +ethers@^5.7.2: + version "5.7.2" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.7.2.tgz#3a7deeabbb8c030d4126b24f84e525466145872e" + integrity sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg== + dependencies: + "@ethersproject/abi" "5.7.0" + "@ethersproject/abstract-provider" "5.7.0" + "@ethersproject/abstract-signer" "5.7.0" + "@ethersproject/address" "5.7.0" + "@ethersproject/base64" "5.7.0" + "@ethersproject/basex" "5.7.0" + "@ethersproject/bignumber" "5.7.0" + "@ethersproject/bytes" "5.7.0" + "@ethersproject/constants" "5.7.0" + "@ethersproject/contracts" "5.7.0" + "@ethersproject/hash" "5.7.0" + "@ethersproject/hdnode" "5.7.0" + "@ethersproject/json-wallets" "5.7.0" + "@ethersproject/keccak256" "5.7.0" + "@ethersproject/logger" "5.7.0" + "@ethersproject/networks" "5.7.1" + "@ethersproject/pbkdf2" "5.7.0" + "@ethersproject/properties" "5.7.0" + "@ethersproject/providers" "5.7.2" + "@ethersproject/random" "5.7.0" + "@ethersproject/rlp" "5.7.0" + "@ethersproject/sha2" "5.7.0" + "@ethersproject/signing-key" "5.7.0" + "@ethersproject/solidity" "5.7.0" + "@ethersproject/strings" "5.7.0" + "@ethersproject/transactions" "5.7.0" + "@ethersproject/units" "5.7.0" + "@ethersproject/wallet" "5.7.0" + "@ethersproject/web" "5.7.1" + "@ethersproject/wordlists" "5.7.0" + +ethjs-unit@0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/ethjs-unit/-/ethjs-unit-0.1.6.tgz#c665921e476e87bce2a9d588a6fe0405b2c41699" + integrity sha512-/Sn9Y0oKl0uqQuvgFk/zQgR7aw1g36qX/jzSQ5lSwlO0GigPymk4eGQfeNTD03w1dPOqfz8V77Cy43jH56pagw== + dependencies: + bn.js "4.11.6" + number-to-bn "1.7.0" + +ethjs-util@^0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/ethjs-util/-/ethjs-util-0.1.6.tgz#f308b62f185f9fe6237132fb2a9818866a5cd536" + integrity sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w== + dependencies: + is-hex-prefixed "1.0.0" + strip-hex-prefix "1.0.0" + eval@0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/eval/-/eval-0.1.8.tgz#2b903473b8cc1d1989b83a1e7923f883eb357f85" @@ -10298,6 +11345,14 @@ eval@0.1.8: "@types/node" "*" require-like ">= 0.1.1" +event-emitter@^0.3.5: + version "0.3.5" + resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" + integrity sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA== + dependencies: + d "1" + es5-ext "~0.10.14" + event-target-shim@^5.0.0: version "5.0.1" resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" @@ -10308,17 +11363,22 @@ eventemitter-asyncresource@^1.0.0: resolved "https://registry.yarnpkg.com/eventemitter-asyncresource/-/eventemitter-asyncresource-1.0.0.tgz#734ff2e44bf448e627f7748f905d6bdd57bdb65b" integrity sha512-39F7TBIV0G7gTelxwbEqnwhp90eqCPON1k0NwNfwhgKn4Co4ybUbj2pECcXT0B3ztRKZ7Pw1JujUUgmQJHcVAQ== -eventemitter3@^4.0.0, eventemitter3@^4.0.7: - version "4.0.7" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" - integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== +eventemitter3@4.0.4: + version "4.0.4" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.4.tgz#b5463ace635a083d018bdc7c917b4c5f10a85384" + integrity sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ== -eventemitter3@^5.0.1: +eventemitter3@5.0.1, eventemitter3@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-5.0.1.tgz#53f5ffd0a492ac800721bb42c66b841de96423c4" integrity sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA== -events@^3.0.0, events@^3.2.0, events@^3.3.0: +eventemitter3@^4.0.0, eventemitter3@^4.0.7: + version "4.0.7" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" + integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== + +events@3.3.0, events@^3.0.0, events@^3.2.0, events@^3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== @@ -10419,6 +11479,13 @@ express@^4.17.3, express@^4.19.2: utils-merge "1.0.1" vary "~1.1.2" +ext@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/ext/-/ext-1.7.0.tgz#0ea4383c0103d60e70be99e9a7f11027a33c4f5f" + integrity sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw== + dependencies: + type "^2.7.2" + extend@^3.0.0: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" @@ -10438,6 +11505,11 @@ external-editor@^3.0.3, external-editor@^3.1.0: iconv-lite "^0.4.24" tmp "^0.0.33" +fast-copy@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/fast-copy/-/fast-copy-3.0.2.tgz#59c68f59ccbcac82050ba992e0d5c389097c9d35" + integrity sha512-dl0O9Vhju8IrcLndv2eU4ldt1ftXMqqfgN4H1cpmGV7P6jeB9FwpN9a2c8DPGE1Ys88rNUJVYDHq73CGAGOPfQ== + fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" @@ -10491,12 +11563,17 @@ fast-levenshtein@^2.0.6: resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== +fast-password-entropy@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/fast-password-entropy/-/fast-password-entropy-1.1.1.tgz#47ba9933095fd5a32fb184915fc8e76ee19cf429" + integrity sha512-dxm29/BPFrNgyEDygg/lf9c2xQR0vnQhG7+hZjAI39M/3um9fD4xiqG6F0ZjW6bya5m9CI0u6YryHGRtxCGCiw== + fast-redact@^3.0.0: version "3.5.0" resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-3.5.0.tgz#e9ea02f7e57d0cd8438180083e93077e496285e4" integrity sha512-dwsoQlS7h9hMeYUq1W++23NDcBLV4KqONnITDV9DjfS3q1SgDGVrBdvvTLUotWtPSD7asWDV9/CmsZPy8Hf70A== -fast-safe-stringify@^2.0.6: +fast-safe-stringify@^2.0.6, fast-safe-stringify@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz#c406a83b6e70d9e35ce3b30a81141df30aeba884" integrity sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA== @@ -10527,6 +11604,11 @@ faye-websocket@^0.11.3: dependencies: websocket-driver ">=0.5.1" +fetch-retry@^5.0.6: + version "5.0.6" + resolved "https://registry.yarnpkg.com/fetch-retry/-/fetch-retry-5.0.6.tgz#17d0bc90423405b7a88b74355bf364acd2a7fa56" + integrity sha512-3yurQZ2hD9VISAhJJP9bpYFNQrHHBXE2JxxjY5aLEcDi46RmAzJE2OC9FAde0yis5ElW0jTTzs0zfg/Cca4XqQ== + figures@^3.0.0, figures@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" @@ -11210,7 +12292,7 @@ hash.js@1.1.3: inherits "^2.0.3" minimalistic-assert "^1.0.0" -hash.js@^1.0.0, hash.js@^1.0.3, hash.js@^1.1.7: +hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3, hash.js@^1.1.7: version "1.1.7" resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== @@ -11270,6 +12352,11 @@ he@^1.2.0: resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== +help-me@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/help-me/-/help-me-5.0.0.tgz#b1ebe63b967b74060027c2ac61f9be12d354a6f6" + integrity sha512-7xgomUX6ADmcYzFik0HzAxh/73YlKR9bmFzf51CZwR+b6YtzU2m0u49hQCqV6SvlqIqsaxovfwdvbnsw3b/zpg== + hey-listen@^1.0.8: version "1.0.8" resolved "https://registry.yarnpkg.com/hey-listen/-/hey-listen-1.0.8.tgz#8e59561ff724908de1aa924ed6ecc84a56a9aa68" @@ -11284,6 +12371,13 @@ hmac-drbg@^1.0.1: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.1" +hoist-non-react-statics@^3.0.0: + version "3.3.2" + resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" + integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== + dependencies: + react-is "^16.7.0" + hosted-git-info@^2.1.4: version "2.8.9" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" @@ -11390,6 +12484,11 @@ http-errors@~1.6.2: setprototypeof "1.1.0" statuses ">= 1.4.0 < 2" +http-https@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/http-https/-/http-https-1.0.0.tgz#2f908dd5f1db4068c058cd6e6d4ce392c913389b" + integrity sha512-o0PWwVCSp3O0wS6FvNr6xfBCHgt0m1tvPLFOCc2iFDKTRAXhB7m8klDf7ErowFH8POa6dVdGatKU5I1YYwzUyg== + http-parser-js@>=0.5.1: version "0.5.8" resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.8.tgz#af23090d9ac4e24573de6f6aecc9d84a48bf20e3" @@ -11742,6 +12841,11 @@ is-buffer@^2.0.0: resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191" integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== +is-buffer@~1.1.6: + version "1.1.6" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== + is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.7: version "1.2.7" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" @@ -11836,6 +12940,11 @@ is-gzip@^1.0.0: resolved "https://registry.yarnpkg.com/is-gzip/-/is-gzip-1.0.0.tgz#6ca8b07b99c77998025900e555ced8ed80879a83" integrity sha512-rcfALRIb1YewtnksfRIHGcIY93QnK8BIQ/2c9yDYcG/Y6+vRoJuTWBmmSEbyLLYtXm7q35pHOHbZFQBaLrhlWQ== +is-hex-prefixed@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz#7d8d37e6ad77e5d127148913c573e082d777f554" + integrity sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA== + is-hexadecimal@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz#86b5bf668fca307498d319dfc03289d781a90027" @@ -12301,17 +13410,27 @@ jiti@^1.18.2, jiti@^1.19.1, jiti@^1.21.0: resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.6.tgz#6c7f7398dd4b3142767f9a168af2f317a428d268" integrity sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w== +jose@^4.15.5: + version "4.15.9" + resolved "https://registry.yarnpkg.com/jose/-/jose-4.15.9.tgz#9b68eda29e9a0614c042fa29387196c7dd800100" + integrity sha512-1vUQX+IdDMVPj4k8kOxgUqlcK518yluMuGZwqlr44FS1ppZB/5GWh4rZG89erpOBOJjU/OBsnCVFfapsRz6nEA== + joycon@^3.0.1, joycon@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/joycon/-/joycon-3.1.1.tgz#bce8596d6ae808f8b68168f5fc69280996894f03" integrity sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw== +js-cookie@^3.0.5: + version "3.0.5" + resolved "https://registry.yarnpkg.com/js-cookie/-/js-cookie-3.0.5.tgz#0b7e2fd0c01552c58ba86e0841f94dc2557dcdbc" + integrity sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw== + js-sha3@0.5.7: version "0.5.7" resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.5.7.tgz#0d4ffd8002d5333aabaf4a23eed2f6374c9f28e7" integrity sha512-GII20kjaPX0zJ8wzkTbNDYMY7msuZcTWk8S5UOh6806Jq/wz1J8/bnr8uGU0DAUmYDjj2Mr4X1cW8v/GLYnR+g== -js-sha3@^0.8.0: +js-sha3@0.8.0, js-sha3@^0.8.0: version "0.8.0" resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== @@ -12379,7 +13498,7 @@ jsdom@^16.4.0: ws "^7.4.6" xml-name-validator "^3.0.0" -jsesc@3.0.2: +jsesc@3.0.2, jsesc@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.0.2.tgz#bb8b09a6597ba426425f2e4a07245c3d00b9343e" integrity sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g== @@ -12670,6 +13789,11 @@ levn@^0.4.1: prelude-ls "^1.2.1" type-check "~0.4.0" +libphonenumber-js@^1.10.14, libphonenumber-js@^1.10.31: + version "1.11.15" + resolved "https://registry.yarnpkg.com/libphonenumber-js/-/libphonenumber-js-1.11.15.tgz#0947ba02208cf6c44fdf3b07e097a98b3ec945f4" + integrity sha512-M7+rtYi9l5RvMmHyjyoF3BHHUpXTYdJ0PezZGHNs0GyW1lO+K7jxlXpbdIb7a56h0nqLYdjIw+E+z0ciGaJP7g== + license-webpack-plugin@4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/license-webpack-plugin/-/license-webpack-plugin-4.0.2.tgz#1e18442ed20b754b82f1adeff42249b81d11aec6" @@ -13033,7 +14157,7 @@ lodash.upperfirst@^4.3.1: resolved "https://registry.yarnpkg.com/lodash.upperfirst/-/lodash.upperfirst-4.3.1.tgz#1365edf431480481ef0d1c68957a5ed99d49f7ce" integrity sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg== -lodash@^4.17.15, lodash@^4.17.21, lodash@^4.7.0: +lodash@4.17.21, lodash@^4.17.15, lodash@^4.17.21, lodash@^4.7.0: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -13249,6 +14373,15 @@ md5.js@^1.3.4: inherits "^2.0.1" safe-buffer "^5.1.2" +md5@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/md5/-/md5-2.3.0.tgz#c3da9a6aae3a30b46b7b0c349b87b110dc3bda4f" + integrity sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g== + dependencies: + charenc "0.0.2" + crypt "0.0.2" + is-buffer "~1.1.6" + mdast-util-definitions@^5.0.0: version "5.1.2" resolved "https://registry.yarnpkg.com/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz#9910abb60ac5d7115d6819b57ae0bcef07a3f7a7" @@ -13968,6 +15101,11 @@ minizlib@^2.1.1, minizlib@^2.1.2: minipass "^3.0.0" yallist "^4.0.0" +mipd@^0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/mipd/-/mipd-0.0.7.tgz#bb5559e21fa18dc3d9fe1c08902ef14b7ce32fd9" + integrity sha512-aAPZPNDQ3uMTdKbuO2YmAw2TxLHO0moa4YKAyETM/DTj5FloZo+a+8tU+iv4GmW+sOxKLSRwcSFuczk+Cpt6fg== + mkdirp-classic@^0.5.2: version "0.5.3" resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" @@ -14154,6 +15292,11 @@ neo-async@^2.6.2: resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== +next-tick@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.1.0.tgz#1836ee30ad56d67ef281b22bd199f709449b35eb" + integrity sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ== + next@14.2.10: version "14.2.10" resolved "https://registry.yarnpkg.com/next/-/next-14.2.10.tgz#331981a4fecb1ae8af1817d4db98fc9687ee1cb6" @@ -14249,6 +15392,11 @@ node-gyp-build@^4.2.0, node-gyp-build@^4.2.2: resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.8.1.tgz#976d3ad905e71b76086f4f0b0d3637fe79b6cda5" integrity sha512-OSs33Z9yWr148JZcbZd5WiAXhh/n9z8TxQcdMhIOlpN9AhWpLfvVFO73+m77bBABQMaY9XSvIa+qk0jlI7Gcaw== +node-gyp-build@^4.3.0: + version "4.8.4" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.8.4.tgz#8a70ee85464ae52327772a90d66c6077a900cfc8" + integrity sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ== + node-gyp@^9.0.0: version "9.4.1" resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-9.4.1.tgz#8a1023e0d6766ecb52764cc3a734b36ff275e185" @@ -14456,6 +15604,14 @@ nullthrows@^1.1.1: resolved "https://registry.yarnpkg.com/nullthrows/-/nullthrows-1.1.1.tgz#7818258843856ae971eae4208ad7d7eb19a431b1" integrity sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw== +number-to-bn@1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/number-to-bn/-/number-to-bn-1.7.0.tgz#bb3623592f7e5f9e0030b1977bd41a0c53fe1ea0" + integrity sha512-wsJ9gfSz1/s4ZsJN01lyonwuxA1tml6X1yBDnfpMglypcBRFZZkus26EdPSlqS5GJfYddVZa22p3VNb3z5m5Ig== + dependencies: + bn.js "4.11.6" + strip-hex-prefix "1.0.0" + nwsapi@^2.2.0: version "2.2.12" resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.12.tgz#fb6af5c0ec35b27b4581eb3bbad34ec9e5c696f8" @@ -14536,6 +15692,13 @@ object.values@^1.1.6, object.values@^1.1.7, object.values@^1.2.0: define-properties "^1.2.1" es-object-atoms "^1.0.0" +oboe@2.1.5: + version "2.1.5" + resolved "https://registry.yarnpkg.com/oboe/-/oboe-2.1.5.tgz#5554284c543a2266d7a38f17e073821fbde393cd" + integrity sha512-zRFWiF+FoicxEs3jNI/WYUrVEgA7DeET/InK0XQuudGHRg8iIob3cNPrJTKaz4004uaA9Pbe+Dwa8iluhjLZWA== + dependencies: + http-https "^1.0.0" + obuf@^1.0.0, obuf@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" @@ -14550,6 +15713,15 @@ ofetch@^1.3.3: node-fetch-native "^1.6.3" ufo "^1.5.3" +ofetch@^1.3.4: + version "1.4.1" + resolved "https://registry.yarnpkg.com/ofetch/-/ofetch-1.4.1.tgz#b6bf6b0d75ba616cef6519dd8b6385a8bae480ec" + integrity sha512-QZj2DfGplQAr2oj9KzceK9Hwz6Whxazmn85yYeVuS3u9XTMOGMRx0kO95MQ+vLsj/S/NwBDMMLU5hpxvI6Tklw== + dependencies: + destr "^2.0.3" + node-fetch-native "^1.6.4" + ufo "^1.5.4" + ohash@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/ohash/-/ohash-1.1.3.tgz#f12c3c50bfe7271ce3fd1097d42568122ccdcf07" @@ -14560,6 +15732,11 @@ on-exit-leak-free@^0.2.0: resolved "https://registry.yarnpkg.com/on-exit-leak-free/-/on-exit-leak-free-0.2.0.tgz#b39c9e3bf7690d890f4861558b0d7b90a442d209" integrity sha512-dqaz3u44QbRXQooZLTUKU41ZrzYrcvLISVgbrzbyCMxpmSLJvZ3ZamIJIZ29P6OhZIkNIQKosdeM6t1LYbA9hg== +on-exit-leak-free@^2.1.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/on-exit-leak-free/-/on-exit-leak-free-2.1.2.tgz#fed195c9ebddb7d9e4c3842f93f281ac8dadd3b8" + integrity sha512-0eJJY6hXLGf1udHwfNftBqH+g73EU4B504nZeKpz1sYRKafAghwxEJunB2O7rDZkL4PGfsMVnTXZ2EjibbqcsA== + on-finished@2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" @@ -14668,6 +15845,19 @@ outdent@^0.8.0: resolved "https://registry.yarnpkg.com/outdent/-/outdent-0.8.0.tgz#2ebc3e77bf49912543f1008100ff8e7f44428eb0" integrity sha512-KiOAIsdpUTcAXuykya5fnVVT+/5uS0Q1mrkRHcF89tpieSmY33O/tmc54CqwA+bfhbtEfZUNLHaPUiB9X3jt1A== +ox@0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/ox/-/ox-0.1.2.tgz#0f791be2ccabeaf4928e6d423498fe1c8094e560" + integrity sha512-ak/8K0Rtphg9vnRJlbOdaX9R7cmxD2MiSthjWGaQdMk3D7hrAlDoM+6Lxn7hN52Za3vrXfZ7enfke/5WjolDww== + dependencies: + "@adraffy/ens-normalize" "^1.10.1" + "@noble/curves" "^1.6.0" + "@noble/hashes" "^1.5.0" + "@scure/bip32" "^1.5.0" + "@scure/bip39" "^1.4.0" + abitype "^1.0.6" + eventemitter3 "5.0.1" + p-filter@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/p-filter/-/p-filter-2.1.0.tgz#1b1472562ae7a0f742f0f3d3d3718ea66ff9c09c" @@ -15028,6 +16218,14 @@ pify@^5.0.0: resolved "https://registry.yarnpkg.com/pify/-/pify-5.0.0.tgz#1f5eca3f5e87ebec28cc6d54a0e4aaf00acc127f" integrity sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA== +pino-abstract-transport@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/pino-abstract-transport/-/pino-abstract-transport-1.2.0.tgz#97f9f2631931e242da531b5c66d3079c12c9d1b5" + integrity sha512-Guhh8EZfPCfH+PMXAb6rKOjGQEoy0xlAIn+irODG5kgfYV+BQ0rGYYWTIel3P5mmyXqkYkPmdIkywsn6QKUR1Q== + dependencies: + readable-stream "^4.0.0" + split2 "^4.0.0" + pino-abstract-transport@v0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/pino-abstract-transport/-/pino-abstract-transport-0.5.0.tgz#4b54348d8f73713bfd14e3dc44228739aa13d9c0" @@ -15036,6 +16234,26 @@ pino-abstract-transport@v0.5.0: duplexify "^4.1.2" split2 "^4.0.0" +pino-pretty@^10.0.0: + version "10.3.1" + resolved "https://registry.yarnpkg.com/pino-pretty/-/pino-pretty-10.3.1.tgz#e3285a5265211ac6c7cd5988f9e65bf3371a0ca9" + integrity sha512-az8JbIYeN/1iLj2t0jR9DV48/LQ3RC6hZPpapKPkb84Q+yTidMCpgWxIT3N0flnBDilyBQ1luWNpOeJptjdp/g== + dependencies: + colorette "^2.0.7" + dateformat "^4.6.3" + fast-copy "^3.0.0" + fast-safe-stringify "^2.1.1" + help-me "^5.0.0" + joycon "^3.1.1" + minimist "^1.2.6" + on-exit-leak-free "^2.1.0" + pino-abstract-transport "^1.0.0" + pump "^3.0.0" + readable-stream "^4.0.0" + secure-json-parse "^2.4.0" + sonic-boom "^3.0.0" + strip-json-comments "^3.1.1" + pino-std-serializers@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-4.0.0.tgz#1791ccd2539c091ae49ce9993205e2cd5dbba1e2" @@ -15216,7 +16434,7 @@ postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4, postcss-selector cssesc "^3.0.0" util-deprecate "^1.0.2" -postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0: +postcss-value-parser@^4.0.2, postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== @@ -15607,6 +16825,13 @@ raw-body@2.5.2: iconv-lite "0.4.24" unpipe "1.0.0" +react-device-detect@^2.2.2: + version "2.2.3" + resolved "https://registry.yarnpkg.com/react-device-detect/-/react-device-detect-2.2.3.tgz#97a7ae767cdd004e7c3578260f48cf70c036e7ca" + integrity sha512-buYY3qrCnQVlIFHrC5UcUoAj7iANs/+srdkwsnNjI7anr3Tt7UY6MqNxtMLlr0tMBied0O49UZVK8XKs3ZIiPw== + dependencies: + ua-parser-js "^1.0.33" + react-dom@^18, react-dom@^18.2.0: version "18.3.1" resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.3.1.tgz#c2265d79511b57d479b3dd3fdfa51536494c5cb4" @@ -15625,7 +16850,7 @@ react-error-overlay@6.0.9: resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.3.1.tgz#e83557dc12eae63a99e003a46388b1dcbb44db7e" integrity sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg== -react-is@^16.13.1: +react-is@^16.13.1, react-is@^16.7.0: version "16.13.1" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== @@ -16304,6 +17529,21 @@ scrypt-js@2.0.4: resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-2.0.4.tgz#32f8c5149f0797672e551c07e230f834b6af5f16" integrity sha512-4KsaGcPnuhtCZQCxFxN3GVYIhKFPTdLd8PLC552XwbMndtD0cjRFAhDuuydXQ0h08ZfPgzqe6EKHozpuH74iDw== +scrypt-js@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312" + integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA== + +secure-json-parse@^2.4.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/secure-json-parse/-/secure-json-parse-2.7.0.tgz#5a5f9cd6ae47df23dba3151edd06855d47e09862" + integrity sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw== + +secure-password-utilities@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/secure-password-utilities/-/secure-password-utilities-0.2.1.tgz#14a0d0c17c26ace573f5e5383df4cc2b51c27479" + integrity sha512-znUg8ae3cpuAaogiFBhP82gD2daVkSz4Qv/L7OWjB7wWvfbCdeqqQuJkm2/IvhKQPOV0T739YPR6rb7vs0uWaw== + seed-random@~2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/seed-random/-/seed-random-2.2.0.tgz#2a9b19e250a817099231a5b99a4daf80b7fbed54" @@ -16483,6 +17723,11 @@ shallow-clone@^3.0.0: dependencies: kind-of "^6.0.2" +shallowequal@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8" + integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== + shebang-command@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" @@ -16650,6 +17895,13 @@ sonic-boom@^2.2.1: dependencies: atomic-sleep "^1.0.0" +sonic-boom@^3.0.0: + version "3.8.1" + resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-3.8.1.tgz#d5ba8c4e26d6176c9a1d14d549d9ff579a163422" + integrity sha512-y4Z8LCDBuum+PBP3lSV7RHrXscqksve/bi0as7mhwVnBW+/wUqKT/2Kb7um8yqcFy0duYbbPxzt89Zy2nOCaxg== + dependencies: + atomic-sleep "^1.0.0" + sorcery@^0.11.0: version "0.11.1" resolved "https://registry.yarnpkg.com/sorcery/-/sorcery-0.11.1.tgz#7cac27ae9c9549b3cd1e4bb85317f7b2dc7b7e22" @@ -16963,7 +18215,16 @@ string-hash@^1.1.1: resolved "https://registry.yarnpkg.com/string-hash/-/string-hash-1.1.3.tgz#e8aafc0ac1855b4666929ed7dd1275df5d6c811b" integrity sha512-kJUvRUFK49aub+a7T1nNE66EJbZBMnBgoC1UbCZ5n6bsZKBRga4KgBRTMn/pFkeCZSYtNeSyMxPDM0AXWELk2A== -"string-width-cjs@npm:string-width@^4.2.0", "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0": + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -17074,7 +18335,14 @@ stringify-entities@^4.0.0: character-entities-html4 "^2.0.0" character-entities-legacy "^3.0.0" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@6.0.1, strip-ansi@^6.0.0, strip-ansi@^6.0.1: +"strip-ansi-cjs@npm:strip-ansi@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-ansi@6.0.1, strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -17103,6 +18371,13 @@ strip-final-newline@^3.0.0: resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-3.0.0.tgz#52894c313fbff318835280aed60ff71ebf12b8fd" integrity sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw== +strip-hex-prefix@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz#0c5f155fef1151373377de9dbb588da05500e36f" + integrity sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A== + dependencies: + is-hex-prefixed "1.0.0" + strip-indent@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" @@ -17143,6 +18418,22 @@ style-to-object@^0.4.1: dependencies: inline-style-parser "0.1.1" +styled-components@^5.3.6: + version "5.3.11" + resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-5.3.11.tgz#9fda7bf1108e39bf3f3e612fcc18170dedcd57a8" + integrity sha512-uuzIIfnVkagcVHv9nE0VPlHPSCmXIUGKfJ42LNjxCCTDTL5sgnJ8Z7GZBq0EnLYGln77tPpEpExt2+qa+cZqSw== + dependencies: + "@babel/helper-module-imports" "^7.0.0" + "@babel/traverse" "^7.4.5" + "@emotion/is-prop-valid" "^1.1.0" + "@emotion/stylis" "^0.8.4" + "@emotion/unitless" "^0.7.4" + babel-plugin-styled-components ">= 1.12.0" + css-to-react-native "^3.0.0" + hoist-non-react-statics "^3.0.0" + shallowequal "^1.1.0" + supports-color "^5.5.0" + styled-jsx@5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.1.1.tgz#839a1c3aaacc4e735fed0781b8619ea5d0009d1f" @@ -17168,7 +18459,7 @@ superstruct@^1.0.3: resolved "https://registry.yarnpkg.com/superstruct/-/superstruct-1.0.4.tgz#0adb99a7578bd2f1c526220da6571b2d485d91ca" integrity sha512-7JpaAoX2NGyoFlI9NBh66BQXGONc+uE+MRS5i2iOBKuS4e+ccgMDjATgZldkah+33DakBxDHiss9kvUcGAO8UQ== -supports-color@^5.3.0: +supports-color@^5.3.0, supports-color@^5.5.0: version "5.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== @@ -17281,6 +18572,11 @@ system-architecture@^0.1.0: resolved "https://registry.yarnpkg.com/system-architecture/-/system-architecture-0.1.0.tgz#71012b3ac141427d97c67c56bc7921af6bff122d" integrity sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA== +tabbable@^6.0.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/tabbable/-/tabbable-6.2.0.tgz#732fb62bc0175cfcec257330be187dcfba1f3b97" + integrity sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew== + table-layout@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/table-layout/-/table-layout-1.0.2.tgz#c4038a1853b0136d63365a734b6931cf4fad4a04" @@ -17536,6 +18832,11 @@ tinybench@^2.5.0, tinybench@^2.5.1: resolved "https://registry.yarnpkg.com/tinybench/-/tinybench-2.8.0.tgz#30e19ae3a27508ee18273ffed9ac7018949acd7b" integrity sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw== +tinycolor2@^1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.6.0.tgz#f98007460169b0263b97072c5ae92484ce02d09e" + integrity sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw== + tinypool@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/tinypool/-/tinypool-0.7.0.tgz#88053cc99b4a594382af23190c609d93fddf8021" @@ -17854,11 +19155,21 @@ turbo@latest: turbo-windows-64 "2.0.9" turbo-windows-arm64 "2.0.9" +tweetnacl-util@^0.15.1: + version "0.15.1" + resolved "https://registry.yarnpkg.com/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz#b80fcdb5c97bcc508be18c44a4be50f022eea00b" + integrity sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw== + tweetnacl@^0.14.3: version "0.14.5" resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" integrity sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA== +tweetnacl@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-1.0.3.tgz#ac0af71680458d8a6378d0d0d050ab1407d35596" + integrity sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw== + type-check@^0.4.0, type-check@~0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" @@ -17914,6 +19225,11 @@ type-is@~1.6.18: media-typer "0.3.0" mime-types "~2.1.24" +type@^2.7.2: + version "2.7.3" + resolved "https://registry.yarnpkg.com/type/-/type-2.7.3.tgz#436981652129285cc3ba94f392886c2637ea0486" + integrity sha512-8j+1QmAbPvLZow5Qpi6NCaN8FB60p/6x8/vfNqOk/hC+HuvFZhL4+WfekuhQLiqFZXOgQdrs3B+XxEmCc6b3FQ== + typechain@^8.3.2: version "8.3.2" resolved "https://registry.yarnpkg.com/typechain/-/typechain-8.3.2.tgz#1090dd8d9c57b6ef2aed3640a516bdbf01b00d73" @@ -17979,7 +19295,7 @@ typed-assert@^1.0.8: resolved "https://registry.yarnpkg.com/typed-assert/-/typed-assert-1.0.9.tgz#8af9d4f93432c4970ec717e3006f33f135b06213" integrity sha512-KNNZtayBCtmnNmbo5mG47p1XsCyrx6iVqomjcZnec/1Y5GGARaxPs6r49RnSPeUP3YjNYiU9sQHAtY4BBvnZwg== -typedarray-to-buffer@3.1.5: +typedarray-to-buffer@3.1.5, typedarray-to-buffer@^3.1.5: version "3.1.5" resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== @@ -18035,11 +19351,23 @@ ua-parser-js@^0.7.30: resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.38.tgz#f497d8a4dc1fec6e854e5caa4b2f9913422ef054" integrity sha512-fYmIy7fKTSFAhG3fuPlubeGaMoAd6r0rSnfEsO5nEY55i26KSLt9EH7PLQiiqPUhNqYIJvSkTy1oArIcXAbPbA== -ufo@^1.4.0, ufo@^1.5.3: +ua-parser-js@^1.0.33: + version "1.0.39" + resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-1.0.39.tgz#bfc07f361549bf249bd8f4589a4cccec18fd2018" + integrity sha512-k24RCVWlEcjkdOxYmVJgeD/0a1TiSpqLg+ZalVGV9lsnr4yqu0w7tX/x2xX6G4zpkgQnRf89lxuZ1wsbjXM8lw== + +ufo@^1.4.0, ufo@^1.5.3, ufo@^1.5.4: version "1.5.4" resolved "https://registry.yarnpkg.com/ufo/-/ufo-1.5.4.tgz#16d6949674ca0c9e0fbbae1fa20a71d7b1ded754" integrity sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ== +uint8arrays@3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/uint8arrays/-/uint8arrays-3.1.0.tgz#8186b8eafce68f28bd29bd29d683a311778901e2" + integrity sha512-ei5rfKtoRO8OyOIor2Rz5fhzjThwIHJZ3uyDPnDHTXbP0aMQ1RN/6AI5B5d9dBxJOU+BvOAk7ZQ1xphsX8Lrog== + dependencies: + multiformats "^9.4.2" + uint8arrays@^3.0.0, uint8arrays@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/uint8arrays/-/uint8arrays-3.1.1.tgz#2d8762acce159ccd9936057572dade9459f65ae0" @@ -18328,6 +19656,18 @@ use-sync-external-store@1.2.0: resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz#7dbefd6ef3fe4e767a0cf5d7287aacfb5846928a" integrity sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA== +utf-8-validate@^5.0.2: + version "5.0.10" + resolved "https://registry.yarnpkg.com/utf-8-validate/-/utf-8-validate-5.0.10.tgz#d7d10ea39318171ca982718b6b96a8d2442571a2" + integrity sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ== + dependencies: + node-gyp-build "^4.3.0" + +utf8@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/utf8/-/utf8-3.0.0.tgz#f052eed1364d696e769ef058b183df88c87f69d1" + integrity sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ== + util-arity@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/util-arity/-/util-arity-1.1.0.tgz#59d01af1fdb3fede0ac4e632b0ab5f6ce97c9330" @@ -18364,7 +19704,7 @@ uuid@2.0.1: resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.1.tgz#c2a30dedb3e535d72ccf82e343941a50ba8533ac" integrity sha512-nWg9+Oa3qD2CQzHIP4qKUqwNfzKn8P0LtFhotaCTFchsV7ZfDhAybeip/HZVeMIpZi9JgY1E3nUlwaCmZT1sEg== -uuid@9.0.1, uuid@^9.0.1: +uuid@9.0.1, "uuid@>=8 <10", uuid@^9.0.1: version "9.0.1" resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.1.tgz#e188d4c8853cc722220392c424cd637f32293f30" integrity sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA== @@ -18484,6 +19824,21 @@ viem@^2.1.1: webauthn-p256 "0.0.5" ws "8.17.1" +viem@^2.17.0: + version "2.21.48" + resolved "https://registry.yarnpkg.com/viem/-/viem-2.21.48.tgz#f8f1d0bf5381282e22e6a1f8b72ebd6e64426480" + integrity sha512-/hBHyG1gdIIuiQv0z9YmzXl5eWJa0UCZGwkeuQzH2Bmg6FIEwZeEcxgiytXZydip+p2wMBFa1jdr7o5O1+mrIg== + dependencies: + "@noble/curves" "1.6.0" + "@noble/hashes" "1.5.0" + "@scure/bip32" "1.5.0" + "@scure/bip39" "1.4.0" + abitype "1.0.6" + isows "1.0.6" + ox "0.1.2" + webauthn-p256 "0.0.10" + ws "8.18.0" + viem@^2.21.14: version "2.21.35" resolved "https://registry.yarnpkg.com/viem/-/viem-2.21.35.tgz#418782906554b6409082aa2ccb5f27c77abdf1b1" @@ -18743,6 +20098,143 @@ web-streams-polyfill@^3.1.1: resolved "https://registry.yarnpkg.com/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz#2073b91a2fdb1fbfbd401e7de0ac9f8214cecb4b" integrity sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw== +web3-core-helpers@1.10.4: + version "1.10.4" + resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.10.4.tgz#bd2b4140df2016d5dd3bb2b925fc29ad8678677c" + integrity sha512-r+L5ylA17JlD1vwS8rjhWr0qg7zVoVMDvWhajWA5r5+USdh91jRUYosp19Kd1m2vE034v7Dfqe1xYRoH2zvG0g== + dependencies: + web3-eth-iban "1.10.4" + web3-utils "1.10.4" + +web3-core-helpers@^1.8.0: + version "1.10.3" + resolved "https://registry.yarnpkg.com/web3-core-helpers/-/web3-core-helpers-1.10.3.tgz#f2db40ea57e888795e46f229b06113b60bcd671c" + integrity sha512-Yv7dQC3B9ipOc5sWm3VAz1ys70Izfzb8n9rSiQYIPjpqtJM+3V4EeK6ghzNR6CO2es0+Yu9CtCkw0h8gQhrTxA== + dependencies: + web3-eth-iban "1.10.3" + web3-utils "1.10.3" + +web3-core-method@1.10.4: + version "1.10.4" + resolved "https://registry.yarnpkg.com/web3-core-method/-/web3-core-method-1.10.4.tgz#566b52f006d3cbb13b21b72b8d2108999bf5d6bf" + integrity sha512-uZTb7flr+Xl6LaDsyTeE2L1TylokCJwTDrIVfIfnrGmnwLc6bmTWCCrm71sSrQ0hqs6vp/MKbQYIYqUN0J8WyA== + dependencies: + "@ethersproject/transactions" "^5.6.2" + web3-core-helpers "1.10.4" + web3-core-promievent "1.10.4" + web3-core-subscriptions "1.10.4" + web3-utils "1.10.4" + +web3-core-promievent@1.10.4: + version "1.10.4" + resolved "https://registry.yarnpkg.com/web3-core-promievent/-/web3-core-promievent-1.10.4.tgz#629b970b7934430b03c5033c79f3bb3893027e22" + integrity sha512-2de5WnJQ72YcIhYwV/jHLc4/cWJnznuoGTJGD29ncFQHAfwW/MItHFSVKPPA5v8AhJe+r6y4Y12EKvZKjQVBvQ== + dependencies: + eventemitter3 "4.0.4" + +web3-core-requestmanager@1.10.4: + version "1.10.4" + resolved "https://registry.yarnpkg.com/web3-core-requestmanager/-/web3-core-requestmanager-1.10.4.tgz#eb1f147e6b9df84e3a37e602162f8925bdb4bb9a" + integrity sha512-vqP6pKH8RrhT/2MoaU+DY/OsYK9h7HmEBNCdoMj+4ZwujQtw/Mq2JifjwsJ7gits7Q+HWJwx8q6WmQoVZAWugg== + dependencies: + util "^0.12.5" + web3-core-helpers "1.10.4" + web3-providers-http "1.10.4" + web3-providers-ipc "1.10.4" + web3-providers-ws "1.10.4" + +web3-core-subscriptions@1.10.4: + version "1.10.4" + resolved "https://registry.yarnpkg.com/web3-core-subscriptions/-/web3-core-subscriptions-1.10.4.tgz#2f4dcb404237e92802a563265d11a33934dc38e6" + integrity sha512-o0lSQo/N/f7/L76C0HV63+S54loXiE9fUPfHFcTtpJRQNDBVsSDdWRdePbWwR206XlsBqD5VHApck1//jEafTw== + dependencies: + eventemitter3 "4.0.4" + web3-core-helpers "1.10.4" + +web3-core@^1.8.0: + version "1.10.4" + resolved "https://registry.yarnpkg.com/web3-core/-/web3-core-1.10.4.tgz#639de68b8b9871d2dc8892e0dd4e380cb1361a98" + integrity sha512-B6elffYm81MYZDTrat7aEhnhdtVE3lDBUZft16Z8awYMZYJDbnykEbJVS+l3mnA7AQTnSDr/1MjWofGDLBJPww== + dependencies: + "@types/bn.js" "^5.1.1" + "@types/node" "^12.12.6" + bignumber.js "^9.0.0" + web3-core-helpers "1.10.4" + web3-core-method "1.10.4" + web3-core-requestmanager "1.10.4" + web3-utils "1.10.4" + +web3-eth-iban@1.10.3: + version "1.10.3" + resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.10.3.tgz#91d458e5400195edc883a0d4383bf1cecd17240d" + integrity sha512-ZCfOjYKAjaX2TGI8uif5ah+J3BYFuo+47JOIV1RIz2l7kD9VfnxvRH5UiQDRyMALQC7KFd2hUqIEtHklapNyKA== + dependencies: + bn.js "^5.2.1" + web3-utils "1.10.3" + +web3-eth-iban@1.10.4: + version "1.10.4" + resolved "https://registry.yarnpkg.com/web3-eth-iban/-/web3-eth-iban-1.10.4.tgz#bc61b4a1930d19b1df8762c606d669902558e54d" + integrity sha512-0gE5iNmOkmtBmbKH2aTodeompnNE8jEyvwFJ6s/AF6jkw9ky9Op9cqfzS56AYAbrqEFuClsqB/AoRves7LDELw== + dependencies: + bn.js "^5.2.1" + web3-utils "1.10.4" + +web3-providers-http@1.10.4: + version "1.10.4" + resolved "https://registry.yarnpkg.com/web3-providers-http/-/web3-providers-http-1.10.4.tgz#ca7aa58aeaf8123500c24ffe0595896319f830e8" + integrity sha512-m2P5Idc8hdiO0l60O6DSCPw0kw64Zgi0pMjbEFRmxKIck2Py57RQMu4bxvkxJwkF06SlGaEQF8rFZBmuX7aagQ== + dependencies: + abortcontroller-polyfill "^1.7.5" + cross-fetch "^4.0.0" + es6-promise "^4.2.8" + web3-core-helpers "1.10.4" + +web3-providers-ipc@1.10.4: + version "1.10.4" + resolved "https://registry.yarnpkg.com/web3-providers-ipc/-/web3-providers-ipc-1.10.4.tgz#2e03437909e4e7771d646ff05518efae44b783c3" + integrity sha512-YRF/bpQk9z3WwjT+A6FI/GmWRCASgd+gC0si7f9zbBWLXjwzYAKG73bQBaFRAHex1hl4CVcM5WUMaQXf3Opeuw== + dependencies: + oboe "2.1.5" + web3-core-helpers "1.10.4" + +web3-providers-ws@1.10.4: + version "1.10.4" + resolved "https://registry.yarnpkg.com/web3-providers-ws/-/web3-providers-ws-1.10.4.tgz#55d0c3ba36c6a79d105f02e20a707eb3978e7f82" + integrity sha512-j3FBMifyuFFmUIPVQR4pj+t5ILhAexAui0opgcpu9R5LxQrLRUZxHSnU+YO25UycSOa/NAX8A+qkqZNpcFAlxA== + dependencies: + eventemitter3 "4.0.4" + web3-core-helpers "1.10.4" + websocket "^1.0.32" + +web3-utils@1.10.3: + version "1.10.3" + resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.10.3.tgz#f1db99c82549c7d9f8348f04ffe4e0188b449714" + integrity sha512-OqcUrEE16fDBbGoQtZXWdavsPzbGIDc5v3VrRTZ0XrIpefC/viZ1ZU9bGEemazyS0catk/3rkOOxpzTfY+XsyQ== + dependencies: + "@ethereumjs/util" "^8.1.0" + bn.js "^5.2.1" + ethereum-bloom-filters "^1.0.6" + ethereum-cryptography "^2.1.2" + ethjs-unit "0.1.6" + number-to-bn "1.7.0" + randombytes "^2.1.0" + utf8 "3.0.0" + +web3-utils@1.10.4: + version "1.10.4" + resolved "https://registry.yarnpkg.com/web3-utils/-/web3-utils-1.10.4.tgz#0daee7d6841641655d8b3726baf33b08eda1cbec" + integrity sha512-tsu8FiKJLk2PzhDl9fXbGUWTkkVXYhtTA+SmEFkKft+9BgwLxfCRpU96sWv7ICC8zixBNd3JURVoiR3dUXgP8A== + dependencies: + "@ethereumjs/util" "^8.1.0" + bn.js "^5.2.1" + ethereum-bloom-filters "^1.0.6" + ethereum-cryptography "^2.1.2" + ethjs-unit "0.1.6" + number-to-bn "1.7.0" + randombytes "^2.1.0" + utf8 "3.0.0" + webauthn-p256@0.0.10: version "0.0.10" resolved "https://registry.yarnpkg.com/webauthn-p256/-/webauthn-p256-0.0.10.tgz#877e75abe8348d3e14485932968edf3325fd2fdd" @@ -18906,6 +20398,18 @@ websocket-extensions@>=0.1.1: resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz#7f8473bc839dfd87608adb95d7eb075211578a42" integrity sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg== +websocket@^1.0.32: + version "1.0.35" + resolved "https://registry.yarnpkg.com/websocket/-/websocket-1.0.35.tgz#374197207d7d4cc4c36cbf8a1bb886ee52a07885" + integrity sha512-/REy6amwPZl44DDzvRCkaI1q1bIiQB0mEFQLUrhz3z2EK91cp3n72rAjUlrTP0zV22HJIUOVHQGPxhFRjxjt+Q== + dependencies: + bufferutil "^4.0.1" + debug "^2.2.0" + es5-ext "^0.10.63" + typedarray-to-buffer "^3.1.5" + utf-8-validate "^5.0.2" + yaeti "^0.0.6" + whatwg-encoding@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" @@ -19083,7 +20587,7 @@ wordwrapjs@^4.0.0: reduce-flatten "^2.0.0" typical "^5.2.0" -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== @@ -19101,6 +20605,15 @@ wrap-ansi@^6.2.0: string-width "^4.1.0" strip-ansi "^6.0.0" +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrap-ansi@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" @@ -19124,6 +20637,11 @@ wrappy@1: resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== +ws@7.4.6: + version "7.4.6" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" + integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== + ws@8.13.0: version "8.13.0" resolved "https://registry.yarnpkg.com/ws/-/ws-8.13.0.tgz#9a9fb92f93cf41512a0735c8f4dd09b8a1211cd0" @@ -19179,6 +20697,11 @@ y18n@^5.0.5: resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== +yaeti@^0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/yaeti/-/yaeti-0.0.6.tgz#f26f484d72684cf42bedfb76970aa1608fbf9577" + integrity sha512-MvQa//+KcZCUkBTIC9blM+CU9J2GzuTytsOUwf2lidtvkx/6gnEp1QvJv34t9vdjhFmha/mUiNDbN0D0mJWdug== + yallist@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" @@ -19304,6 +20827,11 @@ zip-stream@^6.0.1: compress-commons "^6.0.2" readable-stream "^4.0.0" +zod@^3.21.4, zod@^3.22.4: + version "3.23.8" + resolved "https://registry.yarnpkg.com/zod/-/zod-3.23.8.tgz#e37b957b5d52079769fb8097099b592f0ef4067d" + integrity sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g== + zone.js@~0.13.1: version "0.13.3" resolved "https://registry.yarnpkg.com/zone.js/-/zone.js-0.13.3.tgz#344c24098fa047eda6427a4c7ed486e391fd67b5" From f2e74cbf905454ea223904a4e9784021f889e8d5 Mon Sep 17 00:00:00 2001 From: Fabio Rigamonti <73019897+fabiorigam@users.noreply.github.com> Date: Thu, 21 Nov 2024 17:46:27 +0100 Subject: [PATCH 02/16] fix: continue the privy provider --- packages/dapp-kit-react-privy/package.json | 6 +- .../DAppKitPrivyProvider.tsx | 67 +++++++++++++++++-- .../src/DAppKitPrivyProvider/index.ts | 1 - packages/dapp-kit-react-privy/src/index.ts | 1 + packages/dapp-kit-react-privy/vite.config.ts | 33 +++++++++ 5 files changed, 100 insertions(+), 8 deletions(-) create mode 100644 packages/dapp-kit-react-privy/vite.config.ts diff --git a/packages/dapp-kit-react-privy/package.json b/packages/dapp-kit-react-privy/package.json index 5fa3388b..52c0d4e9 100644 --- a/packages/dapp-kit-react-privy/package.json +++ b/packages/dapp-kit-react-privy/package.json @@ -18,7 +18,8 @@ "scripts": { "build": "tsup", "clean": "rm -rf dist .turbo", - "lint": "eslint" + "lint": "eslint", + "purge": "yarn clean && rm -rf node_modules" }, "dependencies": { "@privy-io/react-auth": "1.83.1" @@ -29,6 +30,7 @@ "eslint": "^9.12.0", "react": "^18.2.0", "tsup": "*", - "typescript": "*" + "typescript": "*", + "vite": "^4.5.5" } } diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/DAppKitPrivyProvider.tsx b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/DAppKitPrivyProvider.tsx index 7867af22..ad65bdb4 100644 --- a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/DAppKitPrivyProvider.tsx +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/DAppKitPrivyProvider.tsx @@ -1,8 +1,67 @@ +import { ReactNode } from "react"; import { PrivyProvider as BasePrivyProvider } from "@privy-io/react-auth"; -export const DAppKitPrivyProvider = ({}) => { +type Props = { + children: ReactNode; + appId: string; + clientId: string; + appearance: { + theme: "dark" | "light"; + accentColor: `#${string}`; + loginMessage: string; + logo: string; + }; + embeddedWallets: { + createOnLogin: "all-users"; + }; + loginMethods: ( + | "wallet" + | "email" + | "sms" + | "google" + | "twitter" + | "discord" + | "github" + | "linkedin" + | "spotify" + | "instagram" + | "tiktok" + | "apple" + | "farcaster" + | "telegram" + )[]; + smartAccountConfig: { + nodeUrl: string; + delegatorUrl: string; + accountFactoryAddress: string; + }; + dappKitConfig: { + nodeUrl: string; + genesis: Connex.Thor.Block; + projectId: string; + colorMode: "DARK" | "LIGHT"; + walletConnectOptions: { + projectId: string; + metadata: { + name: string; + description: string; + url: string; + icons: string[]; + }; + }; + }; +}; + +export const DAppKitPrivyProvider = ({ + children, + appId, + clientId, + loginMethods, + appearance, + embeddedWallets, +}: Props) => { return ( - { }, }} > - - {children} - + {children} ); }; \ No newline at end of file diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/index.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/index.ts index c6440150..a553082a 100644 --- a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/index.ts +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/index.ts @@ -1,2 +1 @@ export * from './DAppKitPrivyProvider'; -export * from './hooks'; diff --git a/packages/dapp-kit-react-privy/src/index.ts b/packages/dapp-kit-react-privy/src/index.ts index e69de29b..a553082a 100644 --- a/packages/dapp-kit-react-privy/src/index.ts +++ b/packages/dapp-kit-react-privy/src/index.ts @@ -0,0 +1 @@ +export * from './DAppKitPrivyProvider'; diff --git a/packages/dapp-kit-react-privy/vite.config.ts b/packages/dapp-kit-react-privy/vite.config.ts new file mode 100644 index 00000000..16231182 --- /dev/null +++ b/packages/dapp-kit-react-privy/vite.config.ts @@ -0,0 +1,33 @@ +/// +import { resolve } from 'node:path'; +import { defineConfig } from 'vitest/config'; + +export default defineConfig({ + test: { + include: [ + 'src/**/*.test.ts', + 'src/**/*.test.tsx', + 'test/**/*.test.ts', + 'test/**/*.test.tsx', + ], + environment: 'happy-dom', + reporters: 'dot', + setupFiles: [resolve(__dirname, 'test/setup/setup.ts')], + coverage: { + reporter: [ + 'text', + 'json', + 'html', + 'lcov', + 'json-summary', + 'text-summary', + 'text', + ], + statements: 99, + branches: 100, + functions: 100, + lines: 99, + }, + globals: true, + }, +}); From c0f9ad90da69131b8daaec6a686845afeb962a49 Mon Sep 17 00:00:00 2001 From: Fabio Rigamonti <73019897+fabiorigam@users.noreply.github.com> Date: Thu, 21 Nov 2024 17:54:44 +0100 Subject: [PATCH 03/16] fix: fix build issue --- packages/dapp-kit-react-privy/package.json | 1 + .../DAppKitPrivyProvider/DAppKitPrivyProvider.tsx | 12 +++++++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/packages/dapp-kit-react-privy/package.json b/packages/dapp-kit-react-privy/package.json index 52c0d4e9..67cffde1 100644 --- a/packages/dapp-kit-react-privy/package.json +++ b/packages/dapp-kit-react-privy/package.json @@ -22,6 +22,7 @@ "purge": "yarn clean && rm -rf node_modules" }, "dependencies": { + "@vechain/dapp-kit-react": "*", "@privy-io/react-auth": "1.83.1" }, "devDependencies": { diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/DAppKitPrivyProvider.tsx b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/DAppKitPrivyProvider.tsx index ad65bdb4..603f709a 100644 --- a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/DAppKitPrivyProvider.tsx +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/DAppKitPrivyProvider.tsx @@ -1,5 +1,6 @@ import { ReactNode } from "react"; import { PrivyProvider as BasePrivyProvider } from "@privy-io/react-auth"; +import { DAppKitProvider } from "@vechain/dapp-kit-react"; type Props = { children: ReactNode; @@ -59,6 +60,7 @@ export const DAppKitPrivyProvider = ({ loginMethods, appearance, embeddedWallets, + dappKitConfig }: Props) => { return ( - {children} + + {children} + ); }; \ No newline at end of file From a89d4e84f2949b0fae7dfefc18cecc9b04715bb3 Mon Sep 17 00:00:00 2001 From: Fabio Rigamonti <73019897+fabiorigam@users.noreply.github.com> Date: Fri, 22 Nov 2024 11:54:21 +0100 Subject: [PATCH 04/16] fix: add sample privy next app --- examples/sample-privy-next-app/.eslintrc.js | 6 + examples/sample-privy-next-app/.gitignore | 37 + examples/sample-privy-next-app/next.config.js | 18 + examples/sample-privy-next-app/package.json | 29 + .../src/app/components/SocialLoginWrapper.tsx | 80 ++ .../src/app/fonts/GeistMonoVF.woff | Bin 0 -> 67864 bytes .../src/app/fonts/GeistVF.woff | Bin 0 -> 66268 bytes .../sample-privy-next-app/src/app/globals.css | 39 + .../sample-privy-next-app/src/app/layout.tsx | 38 + .../sample-privy-next-app/src/app/page.tsx | 14 + .../src/app/pages/homepage.tsx | 40 + examples/sample-privy-next-app/tsconfig.json | 34 + packages/dapp-kit-react-privy/package.json | 5 +- .../DAppKitPrivyProvider.tsx | 34 +- .../src/DAppKitPrivyProvider/assets/abi.ts | 926 ++++++++++++++ .../src/DAppKitPrivyProvider/assets/index.ts | 1 + .../src/DAppKitPrivyProvider/hooks/index.ts | 4 + .../useSendAccountAbstractedTransaction.ts | 260 ++++ .../hooks/useSmartAccount.tsx | 322 +++++ .../hooks/useTxReceipt.ts | 59 + .../hooks/useWalletAdapter.ts | 80 ++ .../src/DAppKitPrivyProvider/index.ts | 2 + .../utils/FormattingUtils.tsx | 18 + .../src/DAppKitPrivyProvider/utils/index.ts | 1 + yarn.lock | 1107 ++++++++++++++++- 25 files changed, 3126 insertions(+), 28 deletions(-) create mode 100644 examples/sample-privy-next-app/.eslintrc.js create mode 100644 examples/sample-privy-next-app/.gitignore create mode 100644 examples/sample-privy-next-app/next.config.js create mode 100644 examples/sample-privy-next-app/package.json create mode 100644 examples/sample-privy-next-app/src/app/components/SocialLoginWrapper.tsx create mode 100644 examples/sample-privy-next-app/src/app/fonts/GeistMonoVF.woff create mode 100644 examples/sample-privy-next-app/src/app/fonts/GeistVF.woff create mode 100644 examples/sample-privy-next-app/src/app/globals.css create mode 100644 examples/sample-privy-next-app/src/app/layout.tsx create mode 100644 examples/sample-privy-next-app/src/app/page.tsx create mode 100644 examples/sample-privy-next-app/src/app/pages/homepage.tsx create mode 100644 examples/sample-privy-next-app/tsconfig.json create mode 100644 packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/assets/abi.ts create mode 100644 packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/assets/index.ts create mode 100644 packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useSendAccountAbstractedTransaction.ts create mode 100644 packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useSmartAccount.tsx create mode 100644 packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useTxReceipt.ts create mode 100644 packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useWalletAdapter.ts create mode 100644 packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/utils/FormattingUtils.tsx create mode 100644 packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/utils/index.ts diff --git a/examples/sample-privy-next-app/.eslintrc.js b/examples/sample-privy-next-app/.eslintrc.js new file mode 100644 index 00000000..0a3bb5f9 --- /dev/null +++ b/examples/sample-privy-next-app/.eslintrc.js @@ -0,0 +1,6 @@ +module.exports = { + extends: ['next'], + rules: { + '@typescript-eslint/unbound-method': 'off', + }, +}; diff --git a/examples/sample-privy-next-app/.gitignore b/examples/sample-privy-next-app/.gitignore new file mode 100644 index 00000000..a84107af --- /dev/null +++ b/examples/sample-privy-next-app/.gitignore @@ -0,0 +1,37 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.js +.yarn/install-state.gz + +# testing +/coverage + +# next.js +/.next/ +/out/ + +# production +/build + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# local env files +.env +.env*.local + +# vercel +.vercel + +# typescript +*.tsbuildinfo +next-env.d.ts diff --git a/examples/sample-privy-next-app/next.config.js b/examples/sample-privy-next-app/next.config.js new file mode 100644 index 00000000..de5ae83c --- /dev/null +++ b/examples/sample-privy-next-app/next.config.js @@ -0,0 +1,18 @@ +const basePath = process.env.BASE_PATH ?? ''; + +/** @type {import('next').NextConfig} */ +const nextConfig = { + basePath, + output: 'export', + distDir: 'dist', + env: { + basePath, + }, + eslint: { + // Warning: This allows production builds to successfully complete even if + // your project has ESLint errors. + ignoreDuringBuilds: true, + }, +}; + +module.exports = nextConfig; diff --git a/examples/sample-privy-next-app/package.json b/examples/sample-privy-next-app/package.json new file mode 100644 index 00000000..e12d8106 --- /dev/null +++ b/examples/sample-privy-next-app/package.json @@ -0,0 +1,29 @@ +{ + "name": "sample-privy-next-app", + "version": "0.1.0", + "private": true, + "scripts": { + "build": "next build", + "clean": "rm -rf .next dist .turbo", + "dev": "next dev" + }, + "dependencies": { + "@chakra-ui/react": "^3.2.0", + "@emotion/react": "^11.13.5", + "@vechain/dapp-kit": "*", + "@vechain/dapp-kit-react": "*", + "@vechain/dapp-kit-react-privy": "*", + "next": "14.2.10", + "react": "^18", + "react-dom": "^18" + }, + "devDependencies": { + "@next/eslint-plugin-next": "^14.1.4", + "@types/node": "^20", + "@types/react": "^18", + "@types/react-dom": "^18", + "eslint": "^9.12.0", + "eslint-config-next": "14.1.4", + "typescript": "5.3.3" + } +} diff --git a/examples/sample-privy-next-app/src/app/components/SocialLoginWrapper.tsx b/examples/sample-privy-next-app/src/app/components/SocialLoginWrapper.tsx new file mode 100644 index 00000000..6f85721c --- /dev/null +++ b/examples/sample-privy-next-app/src/app/components/SocialLoginWrapper.tsx @@ -0,0 +1,80 @@ + + +import dynamic from 'next/dynamic'; + +const PrivyProvider = dynamic( + async () => (await import('@vechain/dapp-kit-react-privy')).DAppKitPrivyProvider, + { + ssr: false + } +); + +interface Props { + children: React.ReactNode; +} + +export function SocialLoginWrapper({ children }: Props) { + return ( + + {children} + + ); +} diff --git a/examples/sample-privy-next-app/src/app/fonts/GeistMonoVF.woff b/examples/sample-privy-next-app/src/app/fonts/GeistMonoVF.woff new file mode 100644 index 0000000000000000000000000000000000000000..f2ae185cbfd16946a534d819e9eb03924abbcc49 GIT binary patch literal 67864 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ϣ%UY8`RWp~V-U_7 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 CLkb=M literal 0 HcmV?d00001 diff --git a/examples/sample-privy-next-app/src/app/fonts/GeistVF.woff b/examples/sample-privy-next-app/src/app/fonts/GeistVF.woff new file mode 100644 index 0000000000000000000000000000000000000000..1b62daacff96dad6584e71cd962051b82957c313 GIT binary patch literal 66268 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 >-Aun5A4Gp>4U0IQJ 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 G)cz05(PHWV literal 0 HcmV?d00001 diff --git a/examples/sample-privy-next-app/src/app/globals.css b/examples/sample-privy-next-app/src/app/globals.css new file mode 100644 index 00000000..9147fcd3 --- /dev/null +++ b/examples/sample-privy-next-app/src/app/globals.css @@ -0,0 +1,39 @@ +:root { + --background: #ffffff; + --foreground: #171717; +} + +@media (prefers-color-scheme: dark) { + :root { + --background: #0a0a0a; + --foreground: #ededed; + } +} + +html, +body { + max-width: 100vw; + overflow-x: hidden; +} + +body { + color: var(--foreground); + background: var(--background); +} + +* { + box-sizing: border-box; + padding: 0; + margin: 0; +} + +a { + color: inherit; + text-decoration: none; +} + +@media (prefers-color-scheme: dark) { + html { + color-scheme: dark; + } +} diff --git a/examples/sample-privy-next-app/src/app/layout.tsx b/examples/sample-privy-next-app/src/app/layout.tsx new file mode 100644 index 00000000..7e8c5f65 --- /dev/null +++ b/examples/sample-privy-next-app/src/app/layout.tsx @@ -0,0 +1,38 @@ +'use client'; + +import localFont from "next/font/local"; +import "./globals.css"; +import dynamic from "next/dynamic"; + +const SocialLoginWrapper = dynamic(async () => (await import('./components/SocialLoginWrapper')).SocialLoginWrapper, { + ssr: false +}); + +const geistSans = localFont({ + src: "./fonts/GeistVF.woff", + variable: "--font-geist-sans", + }); + + const geistMono = localFont({ + src: "./fonts/GeistMonoVF.woff", + variable: "--font-geist-mono", + }); + +export default function RootLayout({ + children, + }: Readonly<{ + children: React.ReactNode; + }>) { + return ( + + + Privy Next JS + + + + {children} + + + + ); +} diff --git a/examples/sample-privy-next-app/src/app/page.tsx b/examples/sample-privy-next-app/src/app/page.tsx new file mode 100644 index 00000000..7da50d8e --- /dev/null +++ b/examples/sample-privy-next-app/src/app/page.tsx @@ -0,0 +1,14 @@ +"use client"; + +import dynamic from "next/dynamic"; +import React from "react"; + +const Homepage = dynamic(() => import('./pages/homepage'), { + ssr: false, +}); + +export default function Page() { + return ( + + ); +} diff --git a/examples/sample-privy-next-app/src/app/pages/homepage.tsx b/examples/sample-privy-next-app/src/app/pages/homepage.tsx new file mode 100644 index 00000000..a327f1e9 --- /dev/null +++ b/examples/sample-privy-next-app/src/app/pages/homepage.tsx @@ -0,0 +1,40 @@ +'use client'; + +import { type ReactElement } from 'react'; +import { useDisclosure, Button } from "@chakra-ui/react"; +import { + useWalletAdapter, + // dappKitModal, + // ConnectModal, +} from "@vechain/dapp-kit-react-privy"; + +const HomePage = (): ReactElement => { + const { isConnected, connectedAddress, isPrivyLoading, logout } = + useWalletAdapter(); + + const { + //isOpen: isLoginOpen, + onOpen: onLoginOpen, + onClose: onLoginClose, + } = useDisclosure(); + //const isInAppBrowser = window.vechain && window.vechain.isInAppBrowser; + + return ( +
+ {isConnected ? ( + + ) : ( + + )} + + {/**/} +
+ ); +}; + +// eslint-disable-next-line import/no-default-export +export default HomePage; diff --git a/examples/sample-privy-next-app/tsconfig.json b/examples/sample-privy-next-app/tsconfig.json new file mode 100644 index 00000000..c41d5ff9 --- /dev/null +++ b/examples/sample-privy-next-app/tsconfig.json @@ -0,0 +1,34 @@ +{ + "compilerOptions": { + "target": "es5", + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": true, + "skipLibCheck": true, + "strict": true, + "noEmit": true, + "esModuleInterop": true, + "module": "ESNext", + "moduleResolution": "bundler", + "resolveJsonModule": true, + "allowImportingTsExtensions": true, + "isolatedModules": true, + "jsx": "preserve", + "incremental": true, + "plugins": [ + { + "name": "next" + } + ], + "paths": { + "@/*": ["./src/*"] + } + }, + "include": [ + "next-env.d.ts", + "**/*.ts", + "**/*.tsx", + ".next/types/**/*.ts", + "dist/types/**/*.ts" + ], + "exclude": ["node_modules"] +} diff --git a/packages/dapp-kit-react-privy/package.json b/packages/dapp-kit-react-privy/package.json index 67cffde1..84d285ff 100644 --- a/packages/dapp-kit-react-privy/package.json +++ b/packages/dapp-kit-react-privy/package.json @@ -22,8 +22,11 @@ "purge": "yarn clean && rm -rf node_modules" }, "dependencies": { + "@privy-io/react-auth": "1.83.1", + "@tanstack/react-query": "^5.61.0", "@vechain/dapp-kit-react": "*", - "@privy-io/react-auth": "1.83.1" + "@vechain/sdk-core": "^1.0.0-rc.3", + "@vechain/sdk-network": "^1.0.0-rc.3" }, "devDependencies": { "@types/react": "^18.2.28", diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/DAppKitPrivyProvider.tsx b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/DAppKitPrivyProvider.tsx index 603f709a..b32a25be 100644 --- a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/DAppKitPrivyProvider.tsx +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/DAppKitPrivyProvider.tsx @@ -1,6 +1,7 @@ import { ReactNode } from "react"; import { PrivyProvider as BasePrivyProvider } from "@privy-io/react-auth"; import { DAppKitProvider } from "@vechain/dapp-kit-react"; +import { SmartAccountProvider } from "./hooks"; type Props = { children: ReactNode; @@ -60,19 +61,25 @@ export const DAppKitPrivyProvider = ({ loginMethods, appearance, embeddedWallets, + smartAccountConfig, dappKitConfig }: Props) => { - return ( - + {children} - - ); + + + ); }; \ No newline at end of file diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/assets/abi.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/assets/abi.ts new file mode 100644 index 00000000..75dbe9b2 --- /dev/null +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/assets/abi.ts @@ -0,0 +1,926 @@ +export const SimpleAccountABI = [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [], + "name": "ECDSAInvalidSignature", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "length", + "type": "uint256" + } + ], + "name": "ECDSAInvalidSignatureLength", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "s", + "type": "bytes32" + } + ], + "name": "ECDSAInvalidSignatureS", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "ERC1967InvalidImplementation", + "type": "error" + }, + { + "inputs": [], + "name": "ERC1967NonPayable", + "type": "error" + }, + { + "inputs": [], + "name": "FailedCall", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidInitialization", + "type": "error" + }, + { + "inputs": [], + "name": "NotInitializing", + "type": "error" + }, + { + "inputs": [], + "name": "UUPSUnauthorizedCallContext", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "slot", + "type": "bytes32" + } + ], + "name": "UUPSUnsupportedProxiableUUID", + "type": "error" + }, + { + "anonymous": false, + "inputs": [], + "name": "EIP712DomainChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint64", + "name": "version", + "type": "uint64" + } + ], + "name": "Initialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "SimpleAccountInitialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "Upgraded", + "type": "event" + }, + { + "inputs": [], + "name": "UPGRADE_INTERFACE_VERSION", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "eip712Domain", + "outputs": [ + { + "internalType": "bytes1", + "name": "fields", + "type": "bytes1" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "version", + "type": "string" + }, + { + "internalType": "uint256", + "name": "chainId", + "type": "uint256" + }, + { + "internalType": "address", + "name": "verifyingContract", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "salt", + "type": "bytes32" + }, + { + "internalType": "uint256[]", + "name": "extensions", + "type": "uint256[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "dest", + "type": "address" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "func", + "type": "bytes" + } + ], + "name": "execute", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address[]", + "name": "dest", + "type": "address[]" + }, + { + "internalType": "uint256[]", + "name": "value", + "type": "uint256[]" + }, + { + "internalType": "bytes[]", + "name": "func", + "type": "bytes[]" + } + ], + "name": "executeBatch", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + }, + { + "internalType": "uint256", + "name": "validAfter", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "validBefore", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "signature", + "type": "bytes" + } + ], + "name": "executeWithAuthorization", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "anOwner", + "type": "address" + } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint256[]", + "name": "", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "", + "type": "uint256[]" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "onERC1155BatchReceived", + "outputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "onERC1155Received", + "outputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "address", + "name": "", + "type": "address" + }, + { + "internalType": "uint256", + "name": "", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "name": "onERC721Received", + "outputs": [ + { + "internalType": "bytes4", + "name": "", + "type": "bytes4" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "proxiableUUID", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newImplementation", + "type": "address" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "upgradeToAndCall", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } +] as const; + +export const SimpleAccountFactoryABI = [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "AccessControlBadConfirmation", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "neededRole", + "type": "bytes32" + } + ], + "name": "AccessControlUnauthorizedAccount", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "target", + "type": "address" + } + ], + "name": "AddressEmptyCode", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "ERC1967InvalidImplementation", + "type": "error" + }, + { + "inputs": [], + "name": "ERC1967NonPayable", + "type": "error" + }, + { + "inputs": [], + "name": "FailedCall", + "type": "error" + }, + { + "inputs": [], + "name": "InvalidInitialization", + "type": "error" + }, + { + "inputs": [], + "name": "NotInitializing", + "type": "error" + }, + { + "inputs": [], + "name": "UUPSUnauthorizedCallContext", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "slot", + "type": "bytes32" + } + ], + "name": "UUPSUnsupportedProxiableUUID", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "contract SimpleAccount", + "name": "account", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "owner", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "salt", + "type": "uint256" + } + ], + "name": "AccountCreated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint64", + "name": "version", + "type": "uint64" + } + ], + "name": "Initialized", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "role", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "previousAdminRole", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "bytes32", + "name": "newAdminRole", + "type": "bytes32" + } + ], + "name": "RoleAdminChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "role", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "sender", + "type": "address" + } + ], + "name": "RoleGranted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "bytes32", + "name": "role", + "type": "bytes32" + }, + { + "indexed": true, + "internalType": "address", + "name": "account", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "sender", + "type": "address" + } + ], + "name": "RoleRevoked", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "implementation", + "type": "address" + } + ], + "name": "Upgraded", + "type": "event" + }, + { + "inputs": [], + "name": "DEFAULT_ADMIN_ROLE", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "UPGRADE_INTERFACE_VERSION", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "accountImplementation", + "outputs": [ + { + "internalType": "contract SimpleAccount", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "createAccount", + "outputs": [ + { + "internalType": "contract SimpleAccount", + "name": "ret", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "owner", + "type": "address" + } + ], + "name": "getAccountAddress", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "role", + "type": "bytes32" + } + ], + "name": "getRoleAdmin", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "role", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "grantRole", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "role", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "hasRole", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "proxiableUUID", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "role", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "callerConfirmation", + "type": "address" + } + ], + "name": "renounceRole", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "role", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "account", + "type": "address" + } + ], + "name": "revokeRole", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newImplementation", + "type": "address" + }, + { + "internalType": "bytes", + "name": "data", + "type": "bytes" + } + ], + "name": "upgradeToAndCall", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [], + "name": "version", + "outputs": [ + { + "internalType": "string", + "name": "", + "type": "string" + } + ], + "stateMutability": "pure", + "type": "function" + } +] as const; diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/assets/index.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/assets/index.ts new file mode 100644 index 00000000..14cd28d7 --- /dev/null +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/assets/index.ts @@ -0,0 +1 @@ +export * from "./abi"; diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/index.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/index.ts index e69de29b..efdcfb24 100644 --- a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/index.ts +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/index.ts @@ -0,0 +1,4 @@ +export * from "./useWalletAdapter"; +export * from "./useTxReceipt"; +export * from "./useSendAccountAbstractedTransaction"; +export * from "./useSmartAccount"; diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useSendAccountAbstractedTransaction.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useSendAccountAbstractedTransaction.ts new file mode 100644 index 00000000..ad933fce --- /dev/null +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useSendAccountAbstractedTransaction.ts @@ -0,0 +1,260 @@ +"use client"; + +import { useTxReceipt } from "./useTxReceipt"; +import { UseMutateFunction, useMutation } from "@tanstack/react-query"; +import { useConnex } from "@vechain/dapp-kit-react"; +import { useCallback, useEffect, useMemo, useState } from "react"; +import type { Abi } from "viem"; +import { useSmartAccount } from "./useSmartAccount"; + +/** + * ready: the user has not clicked on the button yet + * pending: the user has clicked on the button and we're waiting for the transaction to be sent + * waitingConfirmation: the transaction has been sent and we're waiting for the transaction to be confirmed by the chain + * success: the transaction has been confirmed by the chain + * error: the transaction has failed + */ +export type TransactionStatus = + | "ready" + | "pending" + | "waitingConfirmation" + | "success" + | "error"; + +export type TransactionStatusErrorType = { + type: "SendTransactionError" | "TxReceiptError" | "RevertReasonError"; + reason?: string; +}; + +/** + * An enhanced clause with a comment and an abi + * @param comment a comment to add to the clause + * @param abi the abi of the contract to call + */ +export type EnhancedClause = Connex.VM.Clause & { + comment?: string; + abi?: object; +}; + +export type TransactionData = { + to: string; + value: string | number | bigint; + data: + | string + | { + abi: Abi[] | readonly unknown[]; + functionName: string; + // eslint-disable-next-line @typescript-eslint/no-explicit-any + args: any[]; + }; +}; + +type UseSendAbstractedTransactionProps = { + onTxConfirmed?: () => void | Promise; + showErrorToast?: boolean; +}; + +/** + * Return value of the {@link useSendTransaction} hook + * @param sendTransaction function to trigger the transaction + * @param sendTransactionPending boolean indicating if the transaction is waiting for the wallet to sign it + * @param sendTransactionError error that occurred while signing the transaction + * @param isTxReceiptLoading boolean indicating if the transaction receipt is loading from the chain + * @param txReceiptError error that occurred while fetching the transaction receipt + * @param txReceipt the transaction receipt + * @param status the status of the transaction (see {@link TransactionStatus}) + * @param resetStatus function to reset the status to "ready" + * @param error general error that is set when + */ +export type UseSendTransactionReturnValue = { + sendTransaction: UseMutateFunction; + sendTransactionTx: string | undefined; + sendTransactionPending: boolean; + sendTransactionError: Error | null; + isTxReceiptLoading: boolean; + txReceiptError: Error | null; + txReceipt: Connex.Thor.Transaction.Receipt | null | undefined; + status: TransactionStatus; + resetStatus: () => void; + error?: TransactionStatusErrorType; +}; + +/** + * Generic hook to send a transaction and wait for the txReceipt + * @param clauses clauses to send in the transaction + * @param onTxConfirmed callback to run when the tx is confirmed + * @returns see {@link UseSendTransactionReturnValue} + */ +export const useSendAccountAbstractedTransaction = ({ + onTxConfirmed, + showErrorToast = true, +}: UseSendAbstractedTransactionProps): UseSendTransactionReturnValue => { + const { thor } = useConnex(); + const account = useSmartAccount(); + + const sendTransaction = useCallback( + async (data: TransactionData[]) => { + return account.sendTransaction({ + txClauses: data, + }); + }, + [account] + ); + + const sendTransactionAdapter = useCallback( + async (data: TransactionData[]) => { + return sendTransaction(data); + }, + [sendTransaction] + ); + const { + mutate: runSendTransaction, + data: sendTransactionTx, + isPending: sendTransactionPending, + error: sendTransactionError, + reset: resetSendTransaction, + } = useMutation({ + mutationFn: sendTransactionAdapter, + onError: (error) => { + setError({ + type: "SendTransactionError", + reason: error.message, + }); + /*showErrorToast && + toast({ + title: "Error while signing the transaction.", + description: `${error.message}`, + status: "error", + position: "bottom-left", + duration: 5000, + isClosable: true, + });*/ + }, + }); + + const { + data: txReceipt, + isFetching: isTxReceiptLoading, + error: txReceiptError, + } = useTxReceipt(sendTransactionTx); + + const explainTxRevertReason = useCallback( + async (txReceipt: Connex.Thor.Transaction.Receipt) => { + if (!txReceipt.reverted) return; + const transactionData = await thor.transaction(txReceipt.meta.txID).get(); + if (!transactionData) return; + + const explained = await thor + .explain(transactionData.clauses) + .caller(transactionData.origin) + .execute(); + return explained; + }, + [thor] + ); + + /** + * General error that is set when + * - unable to send the tx + * - unable to fetch the receipt + * - the transaction is reverted + */ + const [error, setError] = useState(); + + /** + * TODO: In case of errors, call the callback + */ + + const status = useMemo(() => { + if (sendTransactionPending) return "pending"; + + if (sendTransactionError) { + return "error"; + } + + if (sendTransactionTx) { + if (isTxReceiptLoading) return "waitingConfirmation"; + if (txReceiptError) { + return "error"; + } + if (txReceipt) { + if (txReceipt.reverted) { + return "error"; + } + return "success"; + } + } + + return "ready"; + }, [ + isTxReceiptLoading, + sendTransactionError, + sendTransactionPending, + sendTransactionTx, + txReceipt, + txReceiptError, + ]); + + useEffect(() => { + if (sendTransactionError) { + setError({ + type: "SendTransactionError", + reason: sendTransactionError.message, + }); + } + + if (sendTransactionTx) { + if (txReceiptError) { + setError({ + type: "TxReceiptError", + reason: txReceiptError.message, + }); + return; + } + + if (txReceipt) { + if (txReceipt.reverted) { + // TODO: move this code to a separated query + (async () => { + const revertReason = await explainTxRevertReason(txReceipt); + setError({ + type: "RevertReasonError", + reason: revertReason?.[0]?.revertReason ?? "Transaction reverted", + }); + })(); + + return; + } + onTxConfirmed?.(); + return; + } + } + }, [ + sendTransactionPending, + isTxReceiptLoading, + sendTransactionError, + txReceiptError, + txReceipt, + onTxConfirmed, + explainTxRevertReason, + sendTransactionTx, + ]); + + const resetStatus = useCallback(() => { + resetSendTransaction(); + setError(undefined); + }, [resetSendTransaction]); + + return { + sendTransaction: runSendTransaction, + sendTransactionPending, + sendTransactionError, + isTxReceiptLoading, + sendTransactionTx, + txReceiptError, + txReceipt, + status, + resetStatus, + error, + }; +}; diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useSmartAccount.tsx b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useSmartAccount.tsx new file mode 100644 index 00000000..ee847357 --- /dev/null +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useSmartAccount.tsx @@ -0,0 +1,322 @@ +"use client"; + +import React, { createContext, useContext, useState, useEffect } from "react"; +import { + usePrivy, + useWallets, + type ConnectedWallet, +} from "@privy-io/react-auth"; +import { generatePrivateKey, privateKeyToAccount } from "viem/accounts"; +import { encodeFunctionData } from "viem"; +import { ABIContract, Address, Clause } from "@vechain/sdk-core"; +import { + ThorClient, + VeChainProvider, + ProviderInternalBaseWallet, + signerUtils, +} from "@vechain/sdk-network"; +import { TransactionData } from "./useSendAccountAbstractedTransaction"; +import { SimpleAccountABI, SimpleAccountFactoryABI } from "../assets/abi"; + +export interface SmartAccountContextType { + address: string | undefined; + embeddedWallet: ConnectedWallet | undefined; + sendTransaction: (tx: { + txClauses: TransactionData[]; + title?: string; + description?: string; + buttonText?: string; + }) => Promise; + exportWallet: () => Promise; + thor: ThorClient; + nodeUrl: string; + delegatorUrl: string; + accountFactory: string; +} + +type SignData = { + domain: { + name: string; + version: string; + chainId: number; + verifyingContract: string; + }; + types: { + ExecuteWithAuthorization: { + name: string; + type: string; + }[]; + }; + primaryType: string; + message: { + validAfter: number; + validBefore: number; + to: string | undefined; + value: string; + data: string; + }; +}; + +const randomTransactionUser = (() => { + const privateKey = generatePrivateKey(); + const account = privateKeyToAccount(privateKey); + return { + privateKey, + account, + address: account.address, + }; +})(); + +const VechainAccountContext = createContext( + null +); + +export const SmartAccountProvider = ({ + children, + nodeUrl, + delegatorUrl, + accountFactory, +}: { + children: React.ReactNode; + nodeUrl: string; + delegatorUrl: string; + accountFactory: string; +}) => { + const { signTypedData, exportWallet } = usePrivy(); + const { wallets } = useWallets(); + const embeddedWallet = wallets.find( + (wallet) => wallet.walletClientType === "privy" + ); + const [address, setAddress] = useState(); + const [chainId, setChainId] = useState(""); + const thor = ThorClient.fromUrl(nodeUrl); + + /** + * load the address of the account abstraction wallet identified by the embedded wallets address + * it is the origin for on-chain-interaction with other parties + * */ + useEffect(() => { + if (!embeddedWallet) { + return; + } + + thor.contracts + .executeCall( + accountFactory, + ABIContract.ofAbi(SimpleAccountFactoryABI).getFunction("getAccountAddress"), + [embeddedWallet.address] + ) + .then((accountAddress) => setAddress(String(accountAddress.result.plain))) + .catch(() => { + /* ignore */ + }); + }, [embeddedWallet, thor, accountFactory]); + + /** + * identify the current chain from its genesis block + */ + useEffect(() => { + thor.blocks + .getGenesisBlock() + .then( + (genesis) => genesis?.id && setChainId(BigInt(genesis.id).toString()) + ) + .catch(() => { + /* ignore */ + }); + }, [thor]); + + // reset address when embedded wallet vanishes + useEffect(() => { + if (!embeddedWallet) { + setAddress(undefined); + } + }, [embeddedWallet]); + + const sendTransaction = async ({ + txClauses = [], + title = "Sign Transaction", + description, + buttonText = "Sign", + }: { + txClauses: TransactionData[]; + title?: string; + description?: string; + buttonText?: string; + }): Promise => { + if (!address || !embeddedWallet) { + throw new Error("Address or embedded wallet is missing"); + } + + // build the object to be signed, containing all information & instructions + const dataToSign: SignData[] = txClauses.map((txData) => ({ + domain: { + name: "Wallet", + version: "1", + chainId: chainId as unknown as number, // work around the viem limitation that chainId must be a number but its too big to be handled as such + verifyingContract: address, + }, + types: { + ExecuteWithAuthorization: [ + { name: "to", type: "address" }, + { name: "value", type: "uint256" }, + { name: "data", type: "bytes" }, + { name: "validAfter", type: "uint256" }, + { name: "validBefore", type: "uint256" }, + ], + }, + primaryType: "ExecuteWithAuthorization", + message: { + validAfter: 0, + validBefore: Math.floor(Date.now() / 1000) + 3600, + to: txData.to, + value: String(txData.value), + data: + typeof txData.data === "object" && "abi" in txData.data + ? encodeFunctionData(txData.data) + : txData.data, + }, + })); + + // request signatures using privy + const signatures: string[] = await Promise.all( + dataToSign.map((data, index) => { + const txClause = txClauses[index]; + if (!txClause) { + throw new Error(`Transaction clause at index ${index} is undefined`); + } + + const funcData = txClause.data; + return signTypedData(data, { + title, + description: + description ?? + (typeof funcData === "object" && "functionName" in funcData + ? funcData.functionName + : "Transaction"), + buttonText, + }); + }) + ); + + // start building the clauses for the transaction + const clauses = []; + + // if the account address has no code yet, it's not been deployed/created yet + const { hasCode: isDeployed } = await thor.accounts.getAccount(Address.of(address)); + if (!isDeployed) { + clauses.push( + Clause.callFunction( + Address.of(accountFactory), + ABIContract.ofAbi(SimpleAccountFactoryABI).getFunction("createAccount"), //inser ABI + [embeddedWallet.address] + ) + /*clauseBuilder.functionInteraction( + accountFactory, + "function createAccount(address owner)" as unknown as FunctionFragment, + [embeddedWallet.address] + ) OLD */ + ); + } + + dataToSign.forEach((data, index) => { + clauses.push( + Clause.callFunction( + Address.of(address), + ABIContract.ofAbi(SimpleAccountABI).getFunction("executeWithAuthorization"), + [ + data.message.to as `0x${string}`, + BigInt(data.message.value), + data.message.data as `0x${string}`, + BigInt(data.message.validAfter), + BigInt(data.message.validBefore), + signatures[index] as `0x${string}`, + ] + ) + ); + }); + + // estimate the gas fees for the transaction + const gasResult = await thor.gas.estimateGas( + clauses, + embeddedWallet.address, + { + gasPadding: 1, + } + ); + + // build the transaction in VeChain format, with delegation enabled + const txBody = await thor.transactions.buildTransactionBody( + clauses, + gasResult.totalGas, + { isDelegated: true } + ); + + // sign the transaction and request the fee delegator to pay the gas fees in the process + const wallet = new ProviderInternalBaseWallet( + [ + { + privateKey: Buffer.from( + randomTransactionUser.privateKey.slice(2), + "hex" + ), + address: randomTransactionUser.address, + }, + ], + { delegator: { delegatorUrl } } + ); + const providerWithDelegationEnabled = new VeChainProvider( + thor, + wallet, + true + ); + const signer = await providerWithDelegationEnabled.getSigner( + randomTransactionUser.address + ); + const txInput = signerUtils.transactionBodyToTransactionRequestInput( + txBody, + randomTransactionUser.address + ); + const rawDelegateSigned = await signer!.signTransaction(txInput); + + // publish the hexlified signed transaction directly on the node api + const { id } = (await fetch(`${nodeUrl}/transactions`, { + method: "POST", + headers: { + "content-type": "application/json", + }, + body: JSON.stringify({ + raw: rawDelegateSigned, + }), + }).then((res) => res.json())) as { id: string }; + + return id; + }; + + return ( + + {children} + + ); +}; + +export const useSmartAccount = () => { + const context = useContext(VechainAccountContext); + if (!context) { + throw new Error( + "useSmartAccount must be used within a SmartAccountProvider" + ); + } + return context; +}; diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useTxReceipt.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useTxReceipt.ts new file mode 100644 index 00000000..4609455c --- /dev/null +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useTxReceipt.ts @@ -0,0 +1,59 @@ +"use client"; + +import { useQuery } from "@tanstack/react-query"; +import { useConnex } from "@vechain/dapp-kit-react"; + +/** + * Poll the chain for a transaction receipt until it is found (or timeout after 3 blocks) + * @param id Transaction id + * @param blocksTimeout Number of blocks to wait before timeout + * @returns Transaction receipt + */ +export const pollForReceipt = async ( + thor: Connex.Thor, + id?: string, + blocksTimeout = 5 +): Promise => { + if (!id) throw new Error("No transaction id provided"); + + const transaction = thor.transaction(id); + let receipt; + + //Query the transaction until it has a receipt + //Timeout after 3 blocks + for (let i = 0; i < blocksTimeout; i++) { + receipt = await transaction.getReceipt(); + if (receipt) { + break; + } + await thor.ticker().next(); + } + + if (!receipt) { + throw new Error("Transaction receipt not found"); + } + + const transactionData = await transaction.get(); + + if (!transactionData) throw Error("Failed to get TX data"); + + return receipt; +}; +export const txReceiptQueryKey = (txId?: string) => ["TX_RECEIPT", txId]; + +/** + * Get the tx receipt of a tx id with a block timeout to wait for the receipt + * @param txId the tx id to get the receipt + * @param blocksTimeout the blocks to wait for the receipt + * @returns the tx receipt + */ +export const useTxReceipt = (txId?: string, blockTimeout?: number) => { + const { thor } = useConnex(); + return useQuery({ + queryKey: txReceiptQueryKey(txId), + queryFn: () => + txId ? pollForReceipt(thor, txId, blockTimeout) : undefined, + enabled: !!txId, + staleTime: 1000 * 60 * 60 * 24, + }); +}; diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useWalletAdapter.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useWalletAdapter.ts new file mode 100644 index 00000000..8f9d473e --- /dev/null +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useWalletAdapter.ts @@ -0,0 +1,80 @@ +"use client"; + +import { humanAddress } from "../utils"; +import { usePrivy } from "@privy-io/react-auth"; +import { useWallet/*, useWalletModal*/ } from "@vechain/dapp-kit-react"; +import { useMemo } from "react"; +import { useSmartAccount } from "./useSmartAccount"; +// import { useSelectedUserStore } from "@/store"; +//import { useWalletName } from "@vechain.energy/dapp-kit-hooks"; + +// Hook we use to understand if user connected with Privy or DappKit. +export const useWalletAdapter = () => { + const { + user, + authenticated, + exportWallet, + logout, + linkGoogle, + linkTwitter, + ready, + unlinkGoogle, + unlinkTwitter, + } = usePrivy(); + + const { account, disconnect } = useWallet(); + //const { name: vetDomain } = useWalletName(account); + const vetDomain = "VeChain"; + // const { setUser } = useSelectedUserStore(); + const abstractedAccount = useSmartAccount(); + + // const dappKitModal = useWalletModal(); + + const isConenctedWithDappKit = !!account; + const isConnectedWithPrivy = authenticated && !!user; + const isConnected = isConenctedWithDappKit || isConnectedWithPrivy; + + // a wallet is in this array if it is connected to Privy + const amountOfSocialsConnectedToPrivy = + (user?.linkedAccounts?.length || 1) - 1; + + const connectedAddress = account ?? abstractedAccount.address; + + const username = useMemo(() => { + return ( + user?.google?.name || + user?.twitter?.name || + vetDomain || + humanAddress(account || "") + ); + }, [user, account, vetDomain]); + + const logoutAndDisconnect = async () => { + // setUser(undefined); + + if (isConenctedWithDappKit) { + disconnect(); + } else { + logout(); + } + }; + + return { + isConnected, + isConnectedWithPrivy, + isConenctedWithDappKit, + username, + connectedAddress, // This is the connected address. + abstractedAccount, + privyUser: user, + isPrivyLoading: !ready, + exportPrivyWallet: exportWallet, + logout: logoutAndDisconnect, + linkGoogle, + linkTwitter, + unlinkGoogle, + unlinkTwitter, + amountOfSocialsConnectedToPrivy, + vetDomain, + }; +}; diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/index.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/index.ts index a553082a..40143b09 100644 --- a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/index.ts +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/index.ts @@ -1 +1,3 @@ +export * from "./assets"; +export * from "./hooks"; export * from './DAppKitPrivyProvider'; diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/utils/FormattingUtils.tsx b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/utils/FormattingUtils.tsx new file mode 100644 index 00000000..b23212a8 --- /dev/null +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/utils/FormattingUtils.tsx @@ -0,0 +1,18 @@ +export const humanAddress = ( + address: string, + charAtStart = 6, + charAtEnd = 4 +): string => `${address.slice(0, charAtStart)}...${address.slice(-charAtEnd)}`; + +export const humanDomain = ( + domain: string, + lengthBefore = 8, + lengthAfter = 6 +) => { + // if domain is smaller than lengthBefore + lengthAfter, return the domain + if (domain.length <= lengthBefore + lengthAfter) return domain; + + const before = domain.substring(0, lengthBefore); + const after = domain.substring(domain.length - lengthAfter); + return `${before}…${after}`; +}; diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/utils/index.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/utils/index.ts new file mode 100644 index 00000000..1c26545b --- /dev/null +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/utils/index.ts @@ -0,0 +1 @@ +export * from "./FormattingUtils"; \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index f658d24e..ac64b971 100644 --- a/yarn.lock +++ b/yarn.lock @@ -247,6 +247,62 @@ dependencies: tslib "^2.3.0" +"@ark-ui/react@4.4.3": + version "4.4.3" + resolved "https://registry.yarnpkg.com/@ark-ui/react/-/react-4.4.3.tgz#5835bfa1ec02dad761ae74b68be53552d80215aa" + integrity sha512-Prd5EWcyL5PIigl8H70acVacL+Abl0l9gFw0sRNAZ9+3cGaXPhL4ol3s3AW9MU811ZAESU1xifsrwMyhpmcgmg== + dependencies: + "@internationalized/date" "3.5.6" + "@zag-js/accordion" "0.77.1" + "@zag-js/anatomy" "0.77.1" + "@zag-js/auto-resize" "0.77.1" + "@zag-js/avatar" "0.77.1" + "@zag-js/carousel" "0.77.1" + "@zag-js/checkbox" "0.77.1" + "@zag-js/clipboard" "0.77.1" + "@zag-js/collapsible" "0.77.1" + "@zag-js/collection" "0.77.1" + "@zag-js/color-picker" "0.77.1" + "@zag-js/color-utils" "0.77.1" + "@zag-js/combobox" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/date-picker" "0.77.1" + "@zag-js/date-utils" "0.77.1" + "@zag-js/dialog" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/editable" "0.77.1" + "@zag-js/file-upload" "0.77.1" + "@zag-js/file-utils" "0.77.1" + "@zag-js/highlight-word" "0.77.1" + "@zag-js/hover-card" "0.77.1" + "@zag-js/i18n-utils" "0.77.1" + "@zag-js/menu" "0.77.1" + "@zag-js/number-input" "0.77.1" + "@zag-js/pagination" "0.77.1" + "@zag-js/pin-input" "0.77.1" + "@zag-js/popover" "0.77.1" + "@zag-js/presence" "0.77.1" + "@zag-js/progress" "0.77.1" + "@zag-js/qr-code" "0.77.1" + "@zag-js/radio-group" "0.77.1" + "@zag-js/rating-group" "0.77.1" + "@zag-js/react" "0.77.1" + "@zag-js/select" "0.77.1" + "@zag-js/signature-pad" "0.77.1" + "@zag-js/slider" "0.77.1" + "@zag-js/splitter" "0.77.1" + "@zag-js/steps" "0.77.1" + "@zag-js/switch" "0.77.1" + "@zag-js/tabs" "0.77.1" + "@zag-js/tags-input" "0.77.1" + "@zag-js/time-picker" "0.77.1" + "@zag-js/timer" "0.77.1" + "@zag-js/toast" "0.77.1" + "@zag-js/toggle-group" "0.77.1" + "@zag-js/tooltip" "0.77.1" + "@zag-js/tree-view" "0.77.1" + "@zag-js/types" "0.77.1" + "@assemblyscript/loader@^0.10.1": version "0.10.1" resolved "https://registry.yarnpkg.com/@assemblyscript/loader/-/loader-0.10.1.tgz#70e45678f06c72fa2e350e8553ec4a4d72b92e06" @@ -478,7 +534,7 @@ "@babel/traverse" "^7.24.8" "@babel/types" "^7.24.8" -"@babel/helper-module-imports@^7.0.0": +"@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.16.7": version "7.25.9" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz#e7f8d20602ebdbf9ebbea0a0751fb0f2a4141715" integrity sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw== @@ -1388,6 +1444,13 @@ dependencies: regenerator-runtime "^0.14.0" +"@babel/runtime@^7.18.3": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.26.0.tgz#8600c2f595f277c60815256418b85356a65173c1" + integrity sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw== + dependencies: + regenerator-runtime "^0.14.0" + "@babel/template@7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.22.5.tgz#0c8c4d944509875849bd0344ff0050756eefc6ec" @@ -1473,6 +1536,19 @@ resolved "https://registry.yarnpkg.com/@caliatys/array-typer/-/array-typer-1.0.0.tgz#5ddf7d26834d227c9c49d23f500d7c59bbd2ddb6" integrity sha512-TPOM2iJLpxbzpZCeGyQRJiM7dCxntK2jD/vMYJsBbIlrgSUoXh7IXotOKFfE64u7L0fpE5c99vP3nFH5kCP7gQ== +"@chakra-ui/react@^3.2.0": + version "3.2.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react/-/react-3.2.0.tgz#0ee8d0d3969fe70c79ec6868aa94261ab3b744c5" + integrity sha512-j87BakG4UYECd5B7FEjHLkSXJmr0vyffp7Noc2/3voHBb+YF94SFIB7CIKLTPQgKuIf+fKZM6MapPDmsMHk3Kg== + dependencies: + "@ark-ui/react" "4.4.3" + "@emotion/is-prop-valid" "1.3.1" + "@emotion/serialize" "1.3.2" + "@emotion/use-insertion-effect-with-fallbacks" "1.1.0" + "@emotion/utils" "1.4.1" + "@pandacss/is-valid-prop" "0.41.0" + csstype "3.1.3" + "@changesets/apply-release-plan@^7.0.4": version "7.0.4" resolved "https://registry.yarnpkg.com/@changesets/apply-release-plan/-/apply-release-plan-7.0.4.tgz#f963e11848efa24c53abd10713662f2012b6082b" @@ -1995,12 +2071,40 @@ resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz#1d572bfbbe14b7704e0ba0f39b74815b84870d70" integrity sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw== -"@emotion/hash@^0.9.0": +"@emotion/babel-plugin@^11.13.5": + version "11.13.5" + resolved "https://registry.yarnpkg.com/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz#eab8d65dbded74e0ecfd28dc218e75607c4e7bc0" + integrity sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ== + dependencies: + "@babel/helper-module-imports" "^7.16.7" + "@babel/runtime" "^7.18.3" + "@emotion/hash" "^0.9.2" + "@emotion/memoize" "^0.9.0" + "@emotion/serialize" "^1.3.3" + babel-plugin-macros "^3.1.0" + convert-source-map "^1.5.0" + escape-string-regexp "^4.0.0" + find-root "^1.1.0" + source-map "^0.5.7" + stylis "4.2.0" + +"@emotion/cache@^11.13.5": + version "11.13.5" + resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-11.13.5.tgz#e78dad0489e1ed7572507ba8ed9d2130529e4266" + integrity sha512-Z3xbtJ+UcK76eWkagZ1onvn/wAVb1GOMuR15s30Fm2wrMgC7jzpnO2JZXr4eujTTqoQFUrZIw/rT0c6Zzjca1g== + dependencies: + "@emotion/memoize" "^0.9.0" + "@emotion/sheet" "^1.4.0" + "@emotion/utils" "^1.4.2" + "@emotion/weak-memoize" "^0.4.0" + stylis "4.2.0" + +"@emotion/hash@^0.9.0", "@emotion/hash@^0.9.2": version "0.9.2" resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.9.2.tgz#ff9221b9f58b4dfe61e619a7788734bd63f6898b" integrity sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g== -"@emotion/is-prop-valid@^1.1.0": +"@emotion/is-prop-valid@1.3.1", "@emotion/is-prop-valid@^1.1.0": version "1.3.1" resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-1.3.1.tgz#8d5cf1132f836d7adbe42cf0b49df7816fc88240" integrity sha512-/ACwoqx7XQi9knQs/G0qKvv5teDMhD7bXYns9N/wM8ah8iNb8jZ2uNO0YOgiq2o2poIvVtJS2YALasQuMSQ7Kw== @@ -2012,16 +2116,82 @@ resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.9.0.tgz#745969d649977776b43fc7648c556aaa462b4102" integrity sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ== +"@emotion/react@^11.13.5": + version "11.13.5" + resolved "https://registry.yarnpkg.com/@emotion/react/-/react-11.13.5.tgz#fc818ff5b13424f86501ba4d0740f343ae20b8d9" + integrity sha512-6zeCUxUH+EPF1s+YF/2hPVODeV/7V07YU5x+2tfuRL8MdW6rv5vb2+CBEGTGwBdux0OIERcOS+RzxeK80k2DsQ== + dependencies: + "@babel/runtime" "^7.18.3" + "@emotion/babel-plugin" "^11.13.5" + "@emotion/cache" "^11.13.5" + "@emotion/serialize" "^1.3.3" + "@emotion/use-insertion-effect-with-fallbacks" "^1.1.0" + "@emotion/utils" "^1.4.2" + "@emotion/weak-memoize" "^0.4.0" + hoist-non-react-statics "^3.3.1" + +"@emotion/serialize@1.3.2": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.3.2.tgz#e1c1a2e90708d5d85d81ccaee2dfeb3cc0cccf7a" + integrity sha512-grVnMvVPK9yUVE6rkKfAJlYZgo0cu3l9iMC77V7DW6E1DUIrU68pSEXRmFZFOFB1QFo57TncmOcvcbMDWsL4yA== + dependencies: + "@emotion/hash" "^0.9.2" + "@emotion/memoize" "^0.9.0" + "@emotion/unitless" "^0.10.0" + "@emotion/utils" "^1.4.1" + csstype "^3.0.2" + +"@emotion/serialize@^1.3.3": + version "1.3.3" + resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.3.3.tgz#d291531005f17d704d0463a032fe679f376509e8" + integrity sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA== + dependencies: + "@emotion/hash" "^0.9.2" + "@emotion/memoize" "^0.9.0" + "@emotion/unitless" "^0.10.0" + "@emotion/utils" "^1.4.2" + csstype "^3.0.2" + +"@emotion/sheet@^1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.4.0.tgz#c9299c34d248bc26e82563735f78953d2efca83c" + integrity sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg== + "@emotion/stylis@^0.8.4": version "0.8.5" resolved "https://registry.yarnpkg.com/@emotion/stylis/-/stylis-0.8.5.tgz#deacb389bd6ee77d1e7fcaccce9e16c5c7e78e04" integrity sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ== +"@emotion/unitless@^0.10.0": + version "0.10.0" + resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.10.0.tgz#2af2f7c7e5150f497bdabd848ce7b218a27cf745" + integrity sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg== + "@emotion/unitless@^0.7.4": version "0.7.5" resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.5.tgz#77211291c1900a700b8a78cfafda3160d76949ed" integrity sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg== +"@emotion/use-insertion-effect-with-fallbacks@1.1.0", "@emotion/use-insertion-effect-with-fallbacks@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.1.0.tgz#1a818a0b2c481efba0cf34e5ab1e0cb2dcb9dfaf" + integrity sha512-+wBOcIV5snwGgI2ya3u99D7/FJquOIniQT1IKyDsBmEgwvpxMNeS65Oib7OnE2d2aY+3BU4OiH+0Wchf8yk3Hw== + +"@emotion/utils@1.4.1": + version "1.4.1" + resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.4.1.tgz#b3adbb43de12ee2149541c4f1337d2eb7774f0ad" + integrity sha512-BymCXzCG3r72VKJxaYVwOXATqXIZ85cuvg0YOUDxMGNrKc1DJRZk8MgV5wyXRyEayIMd4FuXJIUgTBXvDNW5cA== + +"@emotion/utils@^1.4.1", "@emotion/utils@^1.4.2": + version "1.4.2" + resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.4.2.tgz#6df6c45881fcb1c412d6688a311a98b7f59c1b52" + integrity sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA== + +"@emotion/weak-memoize@^0.4.0": + version "0.4.0" + resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.4.0.tgz#5e13fac887f08c44f76b0ccaf3370eb00fec9bb6" + integrity sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg== + "@esbuild-plugins/node-globals-polyfill@^0.2.3": version "0.2.3" resolved "https://registry.yarnpkg.com/@esbuild-plugins/node-globals-polyfill/-/node-globals-polyfill-0.2.3.tgz#0e4497a2b53c9e9485e149bc92ddb228438d6bcf" @@ -3174,7 +3344,7 @@ dependencies: "@floating-ui/utils" "^0.2.8" -"@floating-ui/dom@^1.0.0": +"@floating-ui/dom@1.6.12", "@floating-ui/dom@^1.0.0": version "1.6.12" resolved "https://registry.yarnpkg.com/@floating-ui/dom/-/dom-1.6.12.tgz#6333dcb5a8ead3b2bf82f33d6bc410e95f54e556" integrity sha512-NP83c0HjokcGVEMeoStg317VD9W7eDlGK7457dMBANbKA6GJZdc7rjujdgqzTaz93jkGgc5P/jeWbaCHnMNc+w== @@ -3244,6 +3414,20 @@ resolved "https://registry.yarnpkg.com/@humanwhocodes/retry/-/retry-0.3.1.tgz#c72a5c76a9fbaf3488e231b13dc52c0da7bab42a" integrity sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA== +"@internationalized/date@3.5.6": + version "3.5.6" + resolved "https://registry.yarnpkg.com/@internationalized/date/-/date-3.5.6.tgz#0833c2fa75efb3573f4e3bf10e3895f1019e87dd" + integrity sha512-jLxQjefH9VI5P9UQuqB6qNKnvFt1Ky1TPIzHGsIlCi7sZZoMR8SdYbBGRvM0y+Jtb+ez4ieBzmiAUcpmPYpyOw== + dependencies: + "@swc/helpers" "^0.5.0" + +"@internationalized/number@3.5.4": + version "3.5.4" + resolved "https://registry.yarnpkg.com/@internationalized/number/-/number-3.5.4.tgz#db1c648fa191b28062c2f4fd81fac89777ad3e91" + integrity sha512-h9huwWjNqYyE2FXZZewWqmCdkw1HeFds5q4Siuoms3hUQC5iPJK3aBmkFZoDSLN4UD0Bl8G22L/NdHpeOr+/7A== + dependencies: + "@swc/helpers" "^0.5.0" + "@isaacs/cliui@^8.0.2": version "8.0.2" resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550" @@ -3934,6 +4118,16 @@ read-package-json-fast "^3.0.0" which "^3.0.0" +"@openzeppelin/contracts-upgradeable@^5.0.2": + version "5.1.0" + resolved "https://registry.yarnpkg.com/@openzeppelin/contracts-upgradeable/-/contracts-upgradeable-5.1.0.tgz#4d37648b7402929c53e2ff6e45749ecff91eb2b6" + integrity sha512-AIElwP5Ck+cslNE+Hkemf5SxjJoF4wBvvjxc27Rp+9jaPs/CLIaUBMYe1FNzhdiN0cYuwGRmYaRHmmntuiju4Q== + +"@openzeppelin/contracts@^5.0.2": + version "5.1.0" + resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-5.1.0.tgz#4e61162f2a2bf414c4e10c45eca98ce5f1aadbd4" + integrity sha512-p1ULhl7BXzjjbha5aqst+QMLY+4/LCWADXOCsmLHRM77AqiPjnd9vvUN9sosUfhL9JGKpZ0TjEGxgvnizmWGSA== + "@originjs/vite-plugin-commonjs@^1.0.3": version "1.0.3" resolved "https://registry.yarnpkg.com/@originjs/vite-plugin-commonjs/-/vite-plugin-commonjs-1.0.3.tgz#2e3fb11ec78847da9422b79c103953f94d667f09" @@ -3941,6 +4135,11 @@ dependencies: esbuild "^0.14.14" +"@pandacss/is-valid-prop@0.41.0": + version "0.41.0" + resolved "https://registry.yarnpkg.com/@pandacss/is-valid-prop/-/is-valid-prop-0.41.0.tgz#4b82222639a096711d0601fb15f491ae5e084ff8" + integrity sha512-BE6h6CsJk14ugIRrsazJtN3fcg+KDFRat1Bs93YFKH6jd4DOb1yUyVvC70jKqPVvg70zEcV8acZ7VdcU5TLu+w== + "@paralleldrive/cuid2@2.2.2": version "2.2.2" resolved "https://registry.yarnpkg.com/@paralleldrive/cuid2/-/cuid2-2.2.2.tgz#7f91364d53b89e2c9cb9e02e8dd0f129e834455f" @@ -5039,7 +5238,7 @@ resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.1.7.tgz#fe973311a5c6267846aa131bc72e96c5d40d2b30" integrity sha512-PPNYBslrLNNUQ/Yad37MHYsNQtK67EhWb6WtSvNLLPo7SdVZgkUjD6Dg+5On7zNwmskf8OX7I7Nx5oN+MIWE0g== -"@scure/base@~1.1.7", "@scure/base@~1.1.8": +"@scure/base@^1.1.9", "@scure/base@~1.1.7", "@scure/base@~1.1.8": version "1.1.9" resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.1.9.tgz#e5e142fbbfe251091f9c5f1dd4c834ac04c3dbd1" integrity sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg== @@ -5503,6 +5702,18 @@ dependencies: "@swc/counter" "^0.1.3" +"@tanstack/query-core@5.60.6": + version "5.60.6" + resolved "https://registry.yarnpkg.com/@tanstack/query-core/-/query-core-5.60.6.tgz#0dd33fe231b0d18bf66d0c615b29899738300658" + integrity sha512-tI+k0KyCo1EBJ54vxK1kY24LWj673ujTydCZmzEZKAew4NqZzTaVQJEuaG1qKj2M03kUHN46rchLRd+TxVq/zQ== + +"@tanstack/react-query@^5.61.0": + version "5.61.0" + resolved "https://registry.yarnpkg.com/@tanstack/react-query/-/react-query-5.61.0.tgz#73473feb37aa28ceb410e297ee060e18f06f88e0" + integrity sha512-SBzV27XAeCRBOQ8QcC94w2H1Md0+LI0gTWwc3qRJoaGuewKn5FNW4LSqwPFJZVEItfhMfGT7RpZuSFXjTi12pQ== + dependencies: + "@tanstack/query-core" "5.60.6" + "@tanstack/react-virtual@^3.0.0-beta.60": version "3.10.9" resolved "https://registry.yarnpkg.com/@tanstack/react-virtual/-/react-virtual-3.10.9.tgz#40606b6dd8aba8e977f576d8f7df07f69ca63eea" @@ -5944,6 +6155,13 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-18.15.13.tgz#f64277c341150c979e42b00e4ac289290c9df469" integrity sha512-N+0kuo9KgrUQ1Sn/ifDXsvg0TTleP7rIy4zOBGECxAljqvqfqpTfzx0Q1NUedOixRMBfe2Whhb056a42cWs26Q== +"@types/node@22.7.5": + version "22.7.5" + resolved "https://registry.yarnpkg.com/@types/node/-/node-22.7.5.tgz#cfde981727a7ab3611a481510b473ae54442b92b" + integrity sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ== + dependencies: + undici-types "~6.19.2" + "@types/node@^10.3.2": version "10.17.60" resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.60.tgz#35f3d6213daed95da7f0f73e75bcc6980e90597b" @@ -5973,6 +6191,11 @@ resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz#56e2cc26c397c038fab0e3a917a12d5c5909e901" integrity sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA== +"@types/parse-json@^4.0.0": + version "4.0.2" + resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.2.tgz#5950e50960793055845e956c427fc2b0d70c5239" + integrity sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw== + "@types/prettier@^2.1.1": version "2.7.3" resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.3.tgz#3e51a17e291d01d17d3fc61422015a933af7a08f" @@ -6508,11 +6731,35 @@ fast-json-stable-stringify "^2.1.0" viem "^2.21.14" +"@vechain/sdk-core@1.0.0-rc.3", "@vechain/sdk-core@^1.0.0-rc.3": + version "1.0.0-rc.3" + resolved "https://registry.yarnpkg.com/@vechain/sdk-core/-/sdk-core-1.0.0-rc.3.tgz#dacf57eb04e587678bdcff1db3180c2db8e2e23c" + integrity sha512-StFYygpnJziQcXInv6rv7Tnml0uuWTcd/fc99MEV0GDr9O5pEa7yvkIAPdh+VyddkmG6mi+3JmhtpRaEesKZNQ== + dependencies: + "@ethereumjs/rlp" "^5.0.2" + "@noble/ciphers" "^1.0.0" + "@noble/curves" "^1.6.0" + "@noble/hashes" "^1.5.0" + "@scure/base" "^1.1.9" + "@scure/bip32" "^1.4.0" + "@scure/bip39" "^1.4.0" + "@vechain/sdk-errors" "1.0.0-rc.3" + "@vechain/sdk-logging" "1.0.0-rc.3" + abitype "^1.0.6" + ethers "6.13.4" + fast-json-stable-stringify "^2.1.0" + viem "^2.21.45" + "@vechain/sdk-errors@1.0.0-beta.32": version "1.0.0-beta.32" resolved "https://registry.yarnpkg.com/@vechain/sdk-errors/-/sdk-errors-1.0.0-beta.32.tgz#54aca2fc525dd34e2f9e4abde63b92777a29fab5" integrity sha512-5Q/TTD3giEpMRlXQcgTcW7gYpSThdlKy+kPv8pJ7BSIG6UTyniG+5CKiw3rB2GdUdWRS8iwttr7UZ36hWlamRw== +"@vechain/sdk-errors@1.0.0-rc.3": + version "1.0.0-rc.3" + resolved "https://registry.yarnpkg.com/@vechain/sdk-errors/-/sdk-errors-1.0.0-rc.3.tgz#88003f84ea53db86eaa9e932d275b65fdc5d1073" + integrity sha512-bkiMgWyQ5WsAH6+9hefuHh5kRJi+DIamMjxWLjKuRHwbais0tNMK1ZruIT11jlBLGSHZBjkEnwxVm3lVd7vkVQ== + "@vechain/sdk-logging@1.0.0-beta.32": version "1.0.0-beta.32" resolved "https://registry.yarnpkg.com/@vechain/sdk-logging/-/sdk-logging-1.0.0-beta.32.tgz#557cf581a1712787d1333f4d1fdee8d8d088d316" @@ -6520,6 +6767,38 @@ dependencies: "@vechain/sdk-errors" "1.0.0-beta.32" +"@vechain/sdk-logging@1.0.0-rc.3": + version "1.0.0-rc.3" + resolved "https://registry.yarnpkg.com/@vechain/sdk-logging/-/sdk-logging-1.0.0-rc.3.tgz#2089675d2d1f72baba470c4c7b497adce6d9282f" + integrity sha512-fG2vNV2V/BWfnZzD6+fJRhmv8xiJxAZQw8bTkEBEQ4h/jROBakcsxWFFOc7Drt2wOXvTUT0Q50z53eOo1JRHNA== + dependencies: + "@vechain/sdk-errors" "1.0.0-rc.3" + +"@vechain/sdk-network@^1.0.0-rc.3": + version "1.0.0-rc.3" + resolved "https://registry.yarnpkg.com/@vechain/sdk-network/-/sdk-network-1.0.0-rc.3.tgz#1241a42c5bf5f97370d035759b44c91edf4fd6b5" + integrity sha512-787B2/OXN/LR0lyd8Upb6IJ98sUuccNBrgNWBxWVGV9vhqh2BwBQRi77xpvXW+vXiXemRZRuoSOhNM/mE/VvOA== + dependencies: + "@noble/curves" "^1.6.0" + "@vechain/sdk-core" "1.0.0-rc.3" + "@vechain/sdk-errors" "1.0.0-rc.3" + "@vechain/sdk-logging" "1.0.0-rc.3" + "@vechain/vebetterdao-contracts" "^4.0.0" + abitype "^1.0.6" + ethers "6.13.4" + isomorphic-ws "^5.0.0" + viem "^2.21.45" + ws "^8.18.0" + +"@vechain/vebetterdao-contracts@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@vechain/vebetterdao-contracts/-/vebetterdao-contracts-4.0.0.tgz#a4ddd8de1b232002810bcee40b9617a5379d40d0" + integrity sha512-tC4Q1r8v0K1MMpiVc+p0zOL7Me/yW+FEeDh2RXYWrXOEuMZBGk9D7KhTX06XGaKdMCwBPIRb3UtELHCvWfT6tQ== + dependencies: + "@openzeppelin/contracts" "^5.0.2" + "@openzeppelin/contracts-upgradeable" "^5.0.2" + ethers "^6.9.0" + "@vitejs/plugin-basic-ssl@1.0.1": version "1.0.1" resolved "https://registry.yarnpkg.com/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-1.0.1.tgz#48c46eab21e0730921986ce742563ae83fe7fe34" @@ -7565,6 +7844,692 @@ resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31" integrity sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ== +"@zag-js/accordion@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/accordion/-/accordion-0.77.1.tgz#6e51bf48bb138c8847202b8ad422c7de61858090" + integrity sha512-KEXFPZB+Z2NfdQLNDOZ5fbRzv++mIDmZdpOPjP0kur7asVhLEyhLtpBEfXKMdF1fZoYOeXT4R6loZ5fRXPfK+Q== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/anatomy@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/anatomy/-/anatomy-0.77.1.tgz#24394dacaa76e6dfcd08422018c7eef7bf886233" + integrity sha512-VMj+z4kco9zVKDEsabQDy8IYCqXdMqdZ2Z+n4IeEOV93oX7iG86vNHgZ7NXykN2jSR/Bka+LcGtAstaUvVw2dA== + +"@zag-js/aria-hidden@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/aria-hidden/-/aria-hidden-0.77.1.tgz#eb47da4395e37767166ecee97477d847582d0954" + integrity sha512-Nx8hYDXMsOfGxxLQcfL2pAo4UutE7IGdbYbacsnqbfJhg/vDyTkf4Uhy7HXvZAccGxtj5kb2WeCbtzh9lklwsQ== + dependencies: + aria-hidden "1.2.4" + +"@zag-js/auto-resize@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/auto-resize/-/auto-resize-0.77.1.tgz#8799a1984bee6b387d2da598ae11232991099b78" + integrity sha512-CIvUaxhwuqkpS/+Q816C531deN+RT8SRzDy3YfuvKRfGtEfRRTNuwk9P2dlo6MoinfORcjvX1y4EAaBjA/lsxw== + dependencies: + "@zag-js/dom-query" "0.77.1" + +"@zag-js/avatar@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/avatar/-/avatar-0.77.1.tgz#38d49785bbcbbb0a68c3eb568ad32d114cad2485" + integrity sha512-wERKUzjLCElAKk6CNsBe6U4tKZNQTr9AZKOQqbONWJr6wISy7Ftu5el0Yp0SbUxmwacfB9ghdHslTbaThz190g== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/carousel@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/carousel/-/carousel-0.77.1.tgz#3b6f1a33b8caa2092b7049be1688a0c1ff72d922" + integrity sha512-sSVzQ/ZUAmJrArvkwCz1z/er9zLg3HDsyFDPvIJIqDAqZNatmKAth0Gia8wuWnz5YV1YGsLS8OeHr1lXYWvLQQ== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/checkbox@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/checkbox/-/checkbox-0.77.1.tgz#2c1caf55185f20a0c9ba70c7c84d518a9dd145e9" + integrity sha512-PbG/IU80tN1F5V+tGzyAN54p37kS4cQ8U/MUrtBxFOGMy3kGVeVMQCX/xo9fz6H49L+2+4XVzfkTHBDyNVuSxg== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/focus-visible" "0.77.1" + "@zag-js/form-utils" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/clipboard@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/clipboard/-/clipboard-0.77.1.tgz#d0113c272d86a498fdb321af35eb341b7031a1ca" + integrity sha512-1eLgL3dxEIMTZhe+0fkv05PX8i2LZprLf71hLqHPcjt/DDa/g4tDpoDG9HBgEM68s8mFLB3niwbfbpVgepcR6g== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/collapsible@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/collapsible/-/collapsible-0.77.1.tgz#c16b568a81ce8e87579cfafc2aedded3042607c2" + integrity sha512-Wh/PJCEHdt0nzpo/HqwLXHN/nC6aYZXKlV7tztTPYzUOOF5/g1QiGE0ecQEX1tpKEHME+Ro3lwwI0vAh3L6Evg== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/collection@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/collection/-/collection-0.77.1.tgz#738d31135e58f613339b5c04e84e60d95df50534" + integrity sha512-YwdpSRy3yqFRLqOqNpkQJ6cVH3JS9MLhW+f4FKypfvz1tLLTpt/uMnKAOwoIVy+EjCuzeMwUtR7MQF/kK5y56A== + dependencies: + "@zag-js/utils" "0.77.1" + +"@zag-js/color-picker@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/color-picker/-/color-picker-0.77.1.tgz#77a8364bf23a6e8230169bdf070755fff6ec4e39" + integrity sha512-NV3g5J2zQmnv4jMMkKFlzhX8vvX7W6etQX0ZfaxUGKBFaGf/Vfdow0EEyurf+QqGkxGTWRI4rZncy5/K02n9Cg== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/color-utils" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dismissable" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/form-utils" "0.77.1" + "@zag-js/popper" "0.77.1" + "@zag-js/text-selection" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/color-utils@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/color-utils/-/color-utils-0.77.1.tgz#4843755dedf4e5bffd5e595f5c45cea3c9a4f122" + integrity sha512-6Z7zoAOQr3LprL6POV1gzA9tzzz4FHLtfo9ZqgN3SxbhFXj0xw1hhEB6COwJxqsNL9jqN2yhXBj3RBY89WsWzQ== + dependencies: + "@zag-js/numeric-range" "0.77.1" + +"@zag-js/combobox@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/combobox/-/combobox-0.77.1.tgz#5ee864274fe23d59a6991435d5d60cb2626ffe8b" + integrity sha512-uAT/ByipNCm0eNdPZJzBqqbSjtSeSHSAdSyki2puyLtl779G6vRZv44aKey+0LKxmTZYKD1neMl06dWwtdnA9w== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/aria-hidden" "0.77.1" + "@zag-js/collection" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dismissable" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/popper" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/core@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/core/-/core-0.77.1.tgz#9cc6c949c74578141c7efc8e3b4ebd28a8126510" + integrity sha512-tY5A/XayGdtiSutjQl4jBzoj2xdka8JD4JuzffsAT7aWJklbfiuIKc0R7dbAviRQ1vFe0Jvmrd3FZz85aJJfdg== + dependencies: + "@zag-js/store" "0.77.1" + "@zag-js/utils" "0.77.1" + klona "2.0.6" + +"@zag-js/date-picker@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/date-picker/-/date-picker-0.77.1.tgz#c64ef29fd682dfca7315badadfc485c5717845ea" + integrity sha512-Rci3u5YvpObAVbYKp5lUmWyvS0VFambjhZYc0avFp7MTHhRZErXKviq/q1wqvWWtfrAZKRuQrG5Rex7+E9zDMg== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/date-utils" "0.77.1" + "@zag-js/dismissable" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/form-utils" "0.77.1" + "@zag-js/live-region" "0.77.1" + "@zag-js/popper" "0.77.1" + "@zag-js/text-selection" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/date-utils@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/date-utils/-/date-utils-0.77.1.tgz#5dbf4ac182cef031d528d01a36db8daed71fe31c" + integrity sha512-lPYI76n/PO2LZ+PVqgKqLZfYvpNTwOdGdbBFSkwBS7eUvleEd2/oi7AE1jJaKMZ3+Bf/zy1lM5e4dlY09xRFQw== + +"@zag-js/dialog@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/dialog/-/dialog-0.77.1.tgz#5718e7527922d296d4d1c70a822769ec2028156b" + integrity sha512-RaJInIhlihpPUpWheweZPfcHgDv35xvsAG75JLQgGI9NU7seTrxL6I8ADugASPr4l77dBmdu6nhC5o9AeJNEYw== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/aria-hidden" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dismissable" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/remove-scroll" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + focus-trap "7.6.0" + +"@zag-js/dismissable@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/dismissable/-/dismissable-0.77.1.tgz#d426e5067db17e8a930ef9b56e84af17fb4e9c6e" + integrity sha512-S0u3NAyVuO2DQH+B1v+e/35BHw2jgnQ+2X+RfzpunNd5Iu1mZA3dekbxPbP8U24jguRuqQiI2WFvw3YMbno9vg== + dependencies: + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/interact-outside" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/dom-event@0.77.1", "@zag-js/dom-event@^0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/dom-event/-/dom-event-0.77.1.tgz#6deaa746b1b36ef8aa5c4b561e159ccb4a76e096" + integrity sha512-W5LYu/arBgHCGh3UYkkPclEYlDlZXbST+QPvma5pXv4pzkrFS0P189sLNEedE4hkIgkbIRwdaL6YJITbKD03cA== + dependencies: + "@zag-js/dom-query" "0.77.1" + "@zag-js/text-selection" "0.77.1" + "@zag-js/types" "0.77.1" + +"@zag-js/dom-query@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/dom-query/-/dom-query-0.77.1.tgz#e925151d312727ab7e02bb6249e24ec6c171da0f" + integrity sha512-hr+4lzx4wHqhunjMzAmNp7sma5K58o0ti1h5gXpei1puoeGs8epZfzjW/ZTsKyuVgH3+0f80YOC+oTK6rDAhcw== + +"@zag-js/editable@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/editable/-/editable-0.77.1.tgz#1f97d8b035091108a2eebe7afc58a794c7849aed" + integrity sha512-iSnamhmODF5LdcGkgnqQBkRP7AyfYL7mCjRY/69kQFcXtsK8psWJxQQZLDJTzylMxMHRM1EwS452NDIG0P3/6w== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/form-utils" "0.77.1" + "@zag-js/interact-outside" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/element-rect@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/element-rect/-/element-rect-0.77.1.tgz#f0400d2aae998079846505ae3d1bc433c9f22073" + integrity sha512-cHCzdtp30wrM+trYdv0kN9wqUqYc743/muob0gHanDvvbQv8TVZ/tABA6bksL/bWCXk50bm6jiAKV/7dPYdtCQ== + +"@zag-js/element-size@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/element-size/-/element-size-0.77.1.tgz#f7fda36c1fe51eb0de9ff32329bad182d668cfc0" + integrity sha512-USzS/Q10TW02vHmWKUQ1Fizy8cQ6Aco0IWVHaKkEdzmyCJPL+XZnm5Xe9B8nDpsLt9qgR5TblB0zqqr2EqmQkw== + +"@zag-js/file-upload@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/file-upload/-/file-upload-0.77.1.tgz#c1d621692a487e818da3a310bc1b92007197e76b" + integrity sha512-0MaVDnAuzsL4NO1gssRutuCacFqLql76uF4qaXt6GWygmGpLP24gVfcBeXaBD2HHRB3IZ70MQx8oBq91sNaYMQ== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/file-utils" "0.77.1" + "@zag-js/i18n-utils" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/file-utils@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/file-utils/-/file-utils-0.77.1.tgz#af57af398cb2fa90d661ef9515ff3d12a589afb0" + integrity sha512-lBGdjIdoETUdDlL5NxFtKdl5aSd9JvkokuNHTj1VJjBaW1KHQjzDNMJMgPabDyekQWcIOxNok33MhtiW3y3rNA== + dependencies: + "@zag-js/i18n-utils" "0.77.1" + +"@zag-js/focus-visible@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/focus-visible/-/focus-visible-0.77.1.tgz#01fccacf58e4a81d1d406af9091b6d7a33931f5d" + integrity sha512-hQgkYDxbFuiHvV/bFQGQ278s/WXX/M+7qwr9o4If3lSsIz1U5tfUl7vg7K8cNgr9l5tWpWlb7SeGZ0bqrZWNwA== + dependencies: + "@zag-js/dom-query" "0.77.1" + +"@zag-js/form-utils@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/form-utils/-/form-utils-0.77.1.tgz#fa918316b9e359dd2c5af31b3b88e1252aefd7de" + integrity sha512-1AVpIBtAelR4i6V8yJuhVGGAT9MeTbC86ckOH23GsH73QlvK+U55G2PckF0ClWeJ1AHw/vfy4OwibAULvv6cIg== + +"@zag-js/highlight-word@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/highlight-word/-/highlight-word-0.77.1.tgz#2df4f9ce2d1a8030d1f4f4c4a83ddecfee4ab6ea" + integrity sha512-71Ykri3NHAXUE689pPpAoQOxYhHGZAx0eGjpMH3ZAlmXlG5QXCAeGG3EiDY+REPY5egIkGz6woCWj0E4iKta9Q== + +"@zag-js/hover-card@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/hover-card/-/hover-card-0.77.1.tgz#dfe6384d5a4bfd31b8a8866407a76e4298ab8c06" + integrity sha512-3/pA79VSF4Z+57FD4hQt6UiSMNPL9OO1I0LryM7FhgHqgQ5HA+ICFYdgpoEwQXdYKkyhZ/LetfpXS5gw038+QQ== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dismissable" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/popper" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/i18n-utils@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/i18n-utils/-/i18n-utils-0.77.1.tgz#a4e65250d369f3ea8d5867af88fbdeafe47b690a" + integrity sha512-HJAaCXf6r8b72JajIEQmnekRX/7Dz2sBMrAqpvIV6dpMDjCVcyow8WgfDqE46ipdNLi2XL1lgwaW3h5ckYEL+Q== + dependencies: + "@zag-js/dom-query" "0.77.1" + +"@zag-js/interact-outside@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/interact-outside/-/interact-outside-0.77.1.tgz#69b4f4044dc948afa1a23f7a6b1ce4dc24c3836f" + integrity sha512-q5GhN4CPtYy/YXh8Fv8VCofuYpQ0D2X6r+/gscf4C/5QhXka8q4RwhJXjXnv+7b3jvTTjtXovZ9RqWdNw5rEcg== + dependencies: + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/live-region@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/live-region/-/live-region-0.77.1.tgz#452155a6e8d365927e8c9e95b7b4e5e1f4c249e1" + integrity sha512-NqTJWRfolf343X7NeDbaFDeC96lSlAAI1BO3ALV8cRIcEO+XF7iW1/8Cdyi2mEXaCvENv7OoBR8pRxD72RqN1g== + +"@zag-js/menu@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/menu/-/menu-0.77.1.tgz#84e5e188cd6a7765b8c7666790201538ac34d4f6" + integrity sha512-NZ4YfiBWpByF98IaSOwASRZHCRIyj/Xbut3F2bTtoIsG+qQYEbQ4g3qXbmkjJC1GM7AmyiI54ZlKqoNn9wGZ7w== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dismissable" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/popper" "0.77.1" + "@zag-js/rect-utils" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/number-input@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/number-input/-/number-input-0.77.1.tgz#ef87a284598566e12868d59fc3ca6d6acb663e11" + integrity sha512-/1fUh0Jrg/Lzc5ilRIsNo2/k7LUm8nXfxogef6yVADPxROUImrRfS1wQaf79L+8vibDyKGRxyPBgEcVjHX1Gaw== + dependencies: + "@internationalized/number" "3.5.4" + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/form-utils" "0.77.1" + "@zag-js/number-utils" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/number-utils@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/number-utils/-/number-utils-0.77.1.tgz#481870cb3399ab55c88b8508f2ce0b2fd5aed2e4" + integrity sha512-liP+TsEWP4GtjaaNihYe4MmLkFfI8I2TpDDnPlyo0tnCZLd1/+rNvcuU7lwVck7OOL4NX8uuRnSBP58toRKv6A== + +"@zag-js/numeric-range@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/numeric-range/-/numeric-range-0.77.1.tgz#f111171b222783d1f2f9999b01d8bc60a901014d" + integrity sha512-ny75qTNaebomkeWUI7X86MSE7c77/Ek8Oi6wNY6Til6YugaLCm2I5P9BO25sGcYj1w3FeUz2uCxRkPMtnxamrg== + +"@zag-js/pagination@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/pagination/-/pagination-0.77.1.tgz#363b8cbf90ef79e4b935ffb8fa7b05ae630db09b" + integrity sha512-/Ud7kzamnp1F0w2ImerFjH3N9JOSS1JzPfd9BgvyfqkYXQCaUGMNBjiRidOFMTOBUW/ftwuPLZfW6f5FGLEjkQ== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/pin-input@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/pin-input/-/pin-input-0.77.1.tgz#73010f3613e00440a1f2a64617248948f083761f" + integrity sha512-PhSfQg72lx0dzIWwqcCNZ0nHJ0QgknzE2qL/wDcOQ/J/MYReRx2lX1+RzOmFheNLV+LrAIenXOTL4xCF+8Gfig== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/form-utils" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/popover@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/popover/-/popover-0.77.1.tgz#343daea5444268b74aaa9539315ebcc2e6567c21" + integrity sha512-9LVuyY8LjZf6v26Uvc3+uINy740cPgkcRWaiBiW8SunsyaLzcZIA6PSOIbE14XE2lEENIeBIOYbafuahM45gBQ== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/aria-hidden" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dismissable" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/popper" "0.77.1" + "@zag-js/remove-scroll" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + focus-trap "7.6.0" + +"@zag-js/popper@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/popper/-/popper-0.77.1.tgz#74b6c4e6e245e457b58e8dcdd3798d14e78f0b85" + integrity sha512-+DlFlRwuLyUiKl8i+efBYzC6UutcSt1ROHRgmGeB9zwSPvtn1pKlaUqSkxAY2lUDHU56RX8entF5RAeZ8mGwOg== + dependencies: + "@floating-ui/dom" "1.6.12" + "@zag-js/dom-query" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/presence@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/presence/-/presence-0.77.1.tgz#c51b891d0af711db04a887cb93379c2c7fd4535f" + integrity sha512-bVgkleWPZxO3FZCBeXHSL2lTJN8ZaIwRbH2MAwdk70VxNYVtWvo3KsbiNNGR/R5PwAPf45T0x99S+sOrByqMgA== + dependencies: + "@zag-js/core" "0.77.1" + "@zag-js/types" "0.77.1" + +"@zag-js/progress@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/progress/-/progress-0.77.1.tgz#e2aae1f25d61a8ea9aa5ebaed32172e9886b1782" + integrity sha512-wX7isF+6ExNm/ci9gMowtZa7cVMW7ss6VAqnwIpzTu8KBCo6fArD/e1EOpeUilrs1qiiDCLhDbZ07OKG0tRVSQ== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/qr-code@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/qr-code/-/qr-code-0.77.1.tgz#0810640d916e9a7c8b742c4d4f51702b848e2a8f" + integrity sha512-LY5GwSprGhB6wfY/3XFeENiSj+AKUmzSqR3k2KixAeE0H7amPFr27kbeEX33nCvzBE1ZAXFHPtTa3/rvneXk4A== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + proxy-memoize "3.0.1" + uqr "0.1.2" + +"@zag-js/radio-group@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/radio-group/-/radio-group-0.77.1.tgz#0958c848a6967164f2360e3337b4f193e16b46ac" + integrity sha512-d4KF4qaVSWO+OqdnZ4DWTNywdgRSaRENTE02nBIGwSwOVPFIP8kQCtd0W+0nVFcXR9e7BIncj1ckOzxZM/+BUA== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/element-rect" "0.77.1" + "@zag-js/focus-visible" "0.77.1" + "@zag-js/form-utils" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/rating-group@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/rating-group/-/rating-group-0.77.1.tgz#a0c1a9b442332997874f9879870f41ea23107ed8" + integrity sha512-cBkwCHxOJyCVHDUmKqKRcwDsoYL3kGtZ0WEviUAOVFHR2ZUm24lm7+1geuPrQcEXpSBmIXNbke/jyM0+haxSDQ== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/form-utils" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/react@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/react/-/react-0.77.1.tgz#70ef2099fabc7d0cf24668db9df691a4a838f1d3" + integrity sha512-clP04/bKty4FUh5oTCoQydEiMQt1TO1W7tZ+rq+H9eqstzpaHYbl/FScsioHXecl43jROdd3EPquI8TK3snlZw== + dependencies: + "@zag-js/core" "0.77.1" + "@zag-js/store" "0.77.1" + "@zag-js/types" "0.77.1" + proxy-compare "3.0.0" + +"@zag-js/rect-utils@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/rect-utils/-/rect-utils-0.77.1.tgz#e62859da0bd9a386a345a9749ba7856044d87c3b" + integrity sha512-AIT90ALk7yrpWu4dJTDOfWOxQNLeGDqbINt+3wz50nwVLMmF3KFG34RMPFwt1mwAYEhON4QD1JjedbL+dXfd7g== + +"@zag-js/remove-scroll@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/remove-scroll/-/remove-scroll-0.77.1.tgz#e07522c9d6f73ef4c20a67e6845414fc9cdf3d96" + integrity sha512-dqRl2sbghzyjQY/xngrllcq4/KvhDYKpP3OV13rFjHEJJnQNYfyRrRF5b2n6W6qZmsNr+xTL+OHk2qWl+BCMvA== + dependencies: + "@zag-js/dom-query" "0.77.1" + +"@zag-js/select@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/select/-/select-0.77.1.tgz#7aadf2c25f656323bdf647bfc669b988f579072e" + integrity sha512-aE+g4xDegGrsdlqDLALh84stwRJwQakNXSw2Rk+gP7BtFvrZ6cHizYvaZVHoVwSn/oNAozYk/eUQMYK1HOdNuw== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/collection" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dismissable" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/form-utils" "0.77.1" + "@zag-js/popper" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/signature-pad@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/signature-pad/-/signature-pad-0.77.1.tgz#fd00ce0be870b20214bd647a1defa7a15b5cfc55" + integrity sha512-B2muP6rhevuV27Y4A5hZt/5GR7WpaUSq7B7a/jAiYZmp8Tutmz1zRFsS9Zc9husESAhJyrtA1AkNDGQiYVau8g== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + perfect-freehand "^1.2.2" + +"@zag-js/slider@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/slider/-/slider-0.77.1.tgz#6e0ad726112430b74c441c75962d394a9f0a8615" + integrity sha512-AYcWiQquLyxOKsHreuw+KVf6MEOmBGYuq9qlXm62ZoI5OZIgxKUEw69P8IhP3afowXnrrhq8gnqgEj7W//dDSQ== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/element-size" "0.77.1" + "@zag-js/form-utils" "0.77.1" + "@zag-js/numeric-range" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/splitter@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/splitter/-/splitter-0.77.1.tgz#0c3f13815d03796e763be9b034f66519b2621aad" + integrity sha512-KaNM/3vHAdl2otVzu2G+Y24tqvAy0r3n1yLvU5lNIkDwlr+gwNWJy0cMOXf3DFokhI5ijMbtuux8dFT7Wmib+g== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/number-utils" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/steps@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/steps/-/steps-0.77.1.tgz#3b6d6db72c0a0cb3c62e587e7d3472e82f5b2ebd" + integrity sha512-CbVlWNQkHy+SRzTWTKd0sWvKXfg112ped6/I6ei/tSC4vqJdFSm9/QRXGvFiSy06wOoN3Oqlw93KlwbdpEhH+g== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/store@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/store/-/store-0.77.1.tgz#35af53b6142a6977205d76ffe0148fc93194e95a" + integrity sha512-qk9uuXehAiq9BG0Rhd6nGwYI1WiXa3KcFydxbiMnlGiET8/zAeNTw5biYW5riptAmZ6xiwVUNtzg0T58+3YIag== + dependencies: + proxy-compare "3.0.0" + +"@zag-js/switch@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/switch/-/switch-0.77.1.tgz#d2834f1a628875b02913c9ef9fac3fa6630d34f6" + integrity sha512-GbIdY+Ph3XZWISOCQ3/MM+tbq/EnyEGGs1falAlVmuaVfS1gGsa9p8NKjy2mlrE+Ho8aScZgSYZfzoZfFVcWDw== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/focus-visible" "0.77.1" + "@zag-js/form-utils" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/tabs@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/tabs/-/tabs-0.77.1.tgz#0c125e49f97528ce7ac7212e38f69ae7042c5bcc" + integrity sha512-YEL+Vyx2c6sp3qj3rgb9X81gBPOrCGke1OshZMkv6nUhmzVvajfAwKdwbTKSZ4PwLTPAkfyjd8t1MFdWdutCKg== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/element-rect" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/tags-input@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/tags-input/-/tags-input-0.77.1.tgz#b41d0ccb2547dd07e847263d6288c2c14c882c37" + integrity sha512-+N+vtfRDNzAngqT+zk5PwoXJafaIQWioEAEMvIJYn77DNZU+Vi0Du9T1O9/hDcI75/cPtdXCIE0oor+fWDHneA== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/auto-resize" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/form-utils" "0.77.1" + "@zag-js/interact-outside" "0.77.1" + "@zag-js/live-region" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/text-selection@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/text-selection/-/text-selection-0.77.1.tgz#b553d860f87627f113adc443053536bbcf61daf7" + integrity sha512-5bg4qvEQCQBTW7Ow4yuzumgt0fWWRSqRXaOr/27xDuyTgq7pCQzH5Yfg0pWoQGBMop9djrxN3Z1XrESbXJyZEA== + dependencies: + "@zag-js/dom-query" "0.77.1" + +"@zag-js/time-picker@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/time-picker/-/time-picker-0.77.1.tgz#78b4e874b4822267ee2c21bc4f1be7f4dbeba5fc" + integrity sha512-Dq7SD/CBv5qrknxx3t5b/cotmS6eZx5BCPkXQfKIC8jajdpSSLsWq891RSrEk7zTAGjx5iY1q3VSGT5EyPEIOQ== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dismissable" "0.77.1" + "@zag-js/dom-event" "^0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/popper" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/timer@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/timer/-/timer-0.77.1.tgz#d1a8c4ab6ae84045ba54b4f1fa16708c5f802a33" + integrity sha512-INSMVQYJCkvEgy4bvr0g+PUPvtetm0Zrh9wC29UqgbQKpdcsvFKI8yDu3Sm4Mk9dp0AkMhS2GhT92r+TeHLomg== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/toast@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/toast/-/toast-0.77.1.tgz#2ba8ae54b05ecbaf99c8ddda569d9b9e9d039f6b" + integrity sha512-ohaoox2TXf0NpC4W3mNKgjyZGg+Zz/+QeQBtglcIBLyr39o/pkrK3wHc27+twKciu4ZcWC5jucsR6lo9A12wbQ== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dismissable" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/toggle-group@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/toggle-group/-/toggle-group-0.77.1.tgz#0cf41229cd4e8a76d7e86a20053d44d3e451a20d" + integrity sha512-wQXUBClzBmPHL0jqTOXD78mmlIABObxgqHG3jMgutl/7TqPMk65jatR0piWxkAF8dn+Oav5HLIOaHFKR/m+RCw== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/tooltip@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/tooltip/-/tooltip-0.77.1.tgz#bf9cb075301a9c1ae756d609e1a5658a61c7743c" + integrity sha512-0Vu9rC9StV+QrXMsGiOOvGY3NIVqKQt1oh5AaFyIo/SglnJ2UvYB7c/ERMSyW/YoTi/Pv7+7kaZzitR2JGQ+Cw== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/focus-visible" "0.77.1" + "@zag-js/popper" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/tree-view@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/tree-view/-/tree-view-0.77.1.tgz#aa5f3701aedfb14de7d50ff2d7fa854b8ee6458a" + integrity sha512-3Otb+pVB7KFbCs4Xi4w6mU0sYz3z/+CaTQp3jN6VRNzUMSCVKRar/NuZbnmCExj+4iLUEvANrOlkneBr6stFpA== + dependencies: + "@zag-js/anatomy" "0.77.1" + "@zag-js/collection" "0.77.1" + "@zag-js/core" "0.77.1" + "@zag-js/dom-event" "0.77.1" + "@zag-js/dom-query" "0.77.1" + "@zag-js/types" "0.77.1" + "@zag-js/utils" "0.77.1" + +"@zag-js/types@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/types/-/types-0.77.1.tgz#c2c9a0747c49abcb26d73f2dd5c1bad2967a7c04" + integrity sha512-GtZKdiltPDxp19qmXa/L+a1ffL67bmSxAPlT/wVv2G7uLtL82GKKT86m2yaUqKq+VUE47kXjarj9pTcTrwTSVQ== + dependencies: + csstype "3.1.3" + +"@zag-js/utils@0.77.1": + version "0.77.1" + resolved "https://registry.yarnpkg.com/@zag-js/utils/-/utils-0.77.1.tgz#3c889da232703bd94bea527fd1c15775c6cefdfa" + integrity sha512-sYCRwWQlQeYuRUvuDX0ji6Dnt/Ld6bIbVXV7NtbHCpz/G0sOnVaHJLTOoIFt1KEIrm9QvDtj/JFJGNi9Jc1Bew== + "@zxing/text-encoding@0.9.0": version "0.9.0" resolved "https://registry.yarnpkg.com/@zxing/text-encoding/-/text-encoding-0.9.0.tgz#fb50ffabc6c7c66a0c96b4c03e3d9be74864b70b" @@ -7923,6 +8888,13 @@ argparse@^2.0.1: resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== +aria-hidden@1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/aria-hidden/-/aria-hidden-1.2.4.tgz#b78e383fdbc04d05762c78b4a25a501e736c4522" + integrity sha512-y+CcFFwelSXpLZk/7fMB2mUbGtX9lKycf1MWJ7CaTIERyitVlyQx6C+sxcROU2BAJ24OiZyK+8wj2i8AlBoS3A== + dependencies: + tslib "^2.0.0" + aria-query@5.1.3, aria-query@~5.1.3: version "5.1.3" resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.1.3.tgz#19db27cd101152773631396f7a95a3b58c22c35e" @@ -8210,6 +9182,15 @@ babel-plugin-istanbul@6.1.1: istanbul-lib-instrument "^5.0.4" test-exclude "^6.0.0" +babel-plugin-macros@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz#9ef6dc74deb934b4db344dc973ee851d148c50c1" + integrity sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg== + dependencies: + "@babel/runtime" "^7.12.5" + cosmiconfig "^7.0.0" + resolve "^1.19.0" + babel-plugin-polyfill-corejs2@^0.4.4: version "0.4.11" resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz#30320dfe3ffe1a336c15afdcdafd6fd615b25e33" @@ -9274,7 +10255,7 @@ conventional-commits-parser@^5.0.0: meow "^12.0.1" split2 "^4.0.0" -convert-source-map@^1.5.1, convert-source-map@^1.7.0: +convert-source-map@^1.5.0, convert-source-map@^1.5.1, convert-source-map@^1.7.0: version "1.9.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== @@ -9367,6 +10348,17 @@ cosmiconfig-typescript-loader@^5.0.0: dependencies: jiti "^1.19.1" +cosmiconfig@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6" + integrity sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA== + dependencies: + "@types/parse-json" "^4.0.0" + import-fresh "^3.2.1" + parse-json "^5.0.0" + path-type "^4.0.0" + yaml "^1.10.0" + cosmiconfig@^8.2.0, cosmiconfig@^8.3.6: version "8.3.6" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-8.3.6.tgz#060a2b871d66dba6c8538ea1118ba1ac16f5fae3" @@ -9616,7 +10608,7 @@ cssstyle@^2.3.0: dependencies: cssom "~0.3.6" -csstype@^3.0.2, csstype@^3.0.7, csstype@^3.1.3: +csstype@3.1.3, csstype@^3.0.2, csstype@^3.0.7, csstype@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== @@ -11285,6 +12277,19 @@ ethers@6.13.2: tslib "2.4.0" ws "8.17.1" +ethers@6.13.4, ethers@^6.9.0: + version "6.13.4" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-6.13.4.tgz#bd3e1c3dc1e7dc8ce10f9ffb4ee40967a651b53c" + integrity sha512-21YtnZVg4/zKkCQPjrDj38B1r4nQvTZLopUGMLQ1ePU2zV/joCfDC3t3iKQjWRzjjjbzR+mdAIoikeBRNkdllA== + dependencies: + "@adraffy/ens-normalize" "1.10.1" + "@noble/curves" "1.2.0" + "@noble/hashes" "1.3.2" + "@types/node" "22.7.5" + aes-js "4.0.0-beta.5" + tslib "2.7.0" + ws "8.17.1" + ethers@^5.7.2: version "5.7.2" resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.7.2.tgz#3a7deeabbb8c030d4126b24f84e525466145872e" @@ -11698,6 +12703,11 @@ find-replace@^3.0.0: dependencies: array-back "^3.0.1" +find-root@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" + integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== + find-up@^4.0.0, find-up@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" @@ -11743,6 +12753,13 @@ flatted@^3.2.7, flatted@^3.2.9: resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.1.tgz#21db470729a6734d4997002f439cb308987f567a" integrity sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw== +focus-trap@7.6.0: + version "7.6.0" + resolved "https://registry.yarnpkg.com/focus-trap/-/focus-trap-7.6.0.tgz#7f3edab8135eaca92ab59b6e963eb5cc42ded715" + integrity sha512-1td0l3pMkWJLFipobUcGaf+5DTY4PLDDrcqoSaKP8ediO/CoWCCYk/fT/Y2A4e6TNB+Sh6clRJCjOPPnKoNHnQ== + dependencies: + tabbable "^6.2.0" + follow-redirects@^1.0.0, follow-redirects@^1.14.0, follow-redirects@^1.15.6: version "1.15.6" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.6.tgz#7f815c0cda4249c74ff09e95ef97c23b5fd0399b" @@ -12371,7 +13388,7 @@ hmac-drbg@^1.0.1: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.1" -hoist-non-react-statics@^3.0.0: +hoist-non-react-statics@^3.0.0, hoist-non-react-statics@^3.3.1: version "3.3.2" resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== @@ -13233,6 +14250,11 @@ isomorphic-ws@^4.0.1: resolved "https://registry.yarnpkg.com/isomorphic-ws/-/isomorphic-ws-4.0.1.tgz#55fd4cd6c5e6491e76dc125938dd863f5cd4f2dc" integrity sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w== +isomorphic-ws@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/isomorphic-ws/-/isomorphic-ws-5.0.0.tgz#e5529148912ecb9b451b46ed44d53dae1ce04bbf" + integrity sha512-muId7Zzn9ywDsyXgTIafTry2sV3nySZeUDe6YedVd1Hvuuep5AsIlqK+XefWpYTyJG5e503F2xIuT2lcU6rCSw== + isows@1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/isows/-/isows-1.0.3.tgz#93c1cf0575daf56e7120bab5c8c448b0809d0d74" @@ -13713,7 +14735,7 @@ kleur@^4.0.3, kleur@^4.1.5: resolved "https://registry.yarnpkg.com/kleur/-/kleur-4.1.5.tgz#95106101795f7050c6c650f350c683febddb1780" integrity sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ== -klona@^2.0.4: +klona@2.0.6, klona@^2.0.4: version "2.0.6" resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.6.tgz#85bffbf819c03b2f53270412420a4555ef882e22" integrity sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA== @@ -16174,6 +17196,11 @@ peek-stream@^1.1.0: duplexify "^3.5.0" through2 "^2.0.3" +perfect-freehand@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/perfect-freehand/-/perfect-freehand-1.2.2.tgz#292f65b72df0c7f57a89c4b346b50d7139014172" + integrity sha512-eh31l019WICQ03pkF3FSzHxB8n07ItqIQ++G5UV8JX0zVOXzgTGCqnRR0jJ2h9U8/2uW4W4mtGJELt9kEV0CFQ== + periscopic@^3.0.0, periscopic@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/periscopic/-/periscopic-3.1.0.tgz#7e9037bf51c5855bd33b48928828db4afa79d97a" @@ -16637,11 +17664,28 @@ proxy-compare@2.5.1: resolved "https://registry.yarnpkg.com/proxy-compare/-/proxy-compare-2.5.1.tgz#17818e33d1653fbac8c2ec31406bce8a2966f600" integrity sha512-oyfc0Tx87Cpwva5ZXezSp5V9vht1c7dZBhvuV/y3ctkgMVUmiAGDVeeB0dKhGSyT0v1ZTEQYpe/RXlBVBNuCLA== +proxy-compare@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/proxy-compare/-/proxy-compare-3.0.0.tgz#d99d719393c2fa1f1f29e4ba9e120b46bbcbc1fc" + integrity sha512-y44MCkgtZUCT9tZGuE278fB7PWVf7fRYy0vbRXAts2o5F0EfC4fIQrvQQGBJo1WJbFcVLXzApOscyJuZqHQc1w== + +proxy-compare@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/proxy-compare/-/proxy-compare-3.0.1.tgz#3262cff3a25a6dedeaa299f6cf2369d6f7588a94" + integrity sha512-V9plBAt3qjMlS1+nC8771KNf6oJ12gExvaxnNzN/9yVRLdTv/lc+oJlnSzrdYDAvBfTStPCoiaCOTmTs0adv7Q== + proxy-from-env@1.1.0, proxy-from-env@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== +proxy-memoize@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/proxy-memoize/-/proxy-memoize-3.0.1.tgz#75eed518778b282abb0bc55e748995214b7f74a9" + integrity sha512-VDdG/VYtOgdGkWJx7y0o7p+zArSf2383Isci8C+BP3YXgMYDoPd3cCBjw0JdWb6YBb9sFiOPbAADDVTPJnh+9g== + dependencies: + proxy-compare "^3.0.0" + prr@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" @@ -17257,7 +18301,7 @@ resolve@1.22.2: path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" -resolve@^1.10.0, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.22.4: +resolve@^1.10.0, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.19.0, resolve@^1.22.4: version "1.22.8" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== @@ -17956,6 +19000,11 @@ source-map@0.8.0-beta.0: dependencies: whatwg-url "^7.0.0" +source-map@^0.5.7: + version "0.5.7" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== + sourcemap-codec@^1.4.8: version "1.4.8" resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" @@ -18441,6 +19490,11 @@ styled-jsx@5.1.1: dependencies: client-only "0.0.1" +stylis@4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.2.0.tgz#79daee0208964c8fe695a42fcffcac633a211a51" + integrity sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw== + sucrase@^3.20.3, sucrase@^3.35.0: version "3.35.0" resolved "https://registry.yarnpkg.com/sucrase/-/sucrase-3.35.0.tgz#57f17a3d7e19b36d8995f06679d121be914ae263" @@ -18572,7 +19626,7 @@ system-architecture@^0.1.0: resolved "https://registry.yarnpkg.com/system-architecture/-/system-architecture-0.1.0.tgz#71012b3ac141427d97c67c56bc7921af6bff122d" integrity sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA== -tabbable@^6.0.0: +tabbable@^6.0.0, tabbable@^6.2.0: version "6.2.0" resolved "https://registry.yarnpkg.com/tabbable/-/tabbable-6.2.0.tgz#732fb62bc0175cfcec257330be187dcfba1f3b97" integrity sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew== @@ -19040,6 +20094,11 @@ tslib@2.6.1: resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.1.tgz#fd8c9a0ff42590b25703c0acb3de3d3f4ede0410" integrity sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig== +tslib@2.7.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.7.0.tgz#d9b40c5c40ab59e8738f297df3087bf1a2690c01" + integrity sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA== + tslib@^2.0.0, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.3.0, tslib@^2.3.1, tslib@^2.4.0, tslib@^2.4.1: version "2.6.3" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.3.tgz#0438f810ad7a9edcde7a241c3d80db693c8cbfe0" @@ -19400,6 +20459,11 @@ undici-types@~6.11.1: resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.11.1.tgz#432ea6e8efd54a48569705a699e62d8f4981b197" integrity sha512-mIDEX2ek50x0OlRgxryxsenE5XaQD4on5U2inY7RApK3SOJpofyw7uW2AyfMKkhAxXIceo2DeWGVGwyvng1GNQ== +undici-types@~6.19.2: + version "6.19.8" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.19.8.tgz#35111c9d1437ab83a7cdc0abae2f26d88eda0a02" + integrity sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw== + undici@^5.28.3, undici@^5.28.4: version "5.28.4" resolved "https://registry.yarnpkg.com/undici/-/undici-5.28.4.tgz#6b280408edb6a1a604a9b20340f45b422e373068" @@ -19615,7 +20679,7 @@ upper-case-first@^2.0.2: dependencies: tslib "^2.0.3" -uqr@^0.1.2: +uqr@0.1.2, uqr@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/uqr/-/uqr-0.1.2.tgz#5c6cd5dcff9581f9bb35b982cb89e2c483a41d7d" integrity sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA== @@ -19854,6 +20918,21 @@ viem@^2.21.14: webauthn-p256 "0.0.10" ws "8.18.0" +viem@^2.21.45: + version "2.21.49" + resolved "https://registry.yarnpkg.com/viem/-/viem-2.21.49.tgz#528d5e54747ba3125041cd753459a4ce673aaaa6" + integrity sha512-NNItYfTv4+yGE5DDKc+S/g2S7KeJn047GwgEYG60FAJlK0FzwuP6lQKSeQ8k7Y4VasfuKPqiT+XiilcCtTRiDQ== + dependencies: + "@noble/curves" "1.6.0" + "@noble/hashes" "1.5.0" + "@scure/bip32" "1.5.0" + "@scure/bip39" "1.4.0" + abitype "1.0.6" + isows "1.0.6" + ox "0.1.2" + webauthn-p256 "0.0.10" + ws "8.18.0" + vite-node@0.34.6: version "0.34.6" resolved "https://registry.yarnpkg.com/vite-node/-/vite-node-0.34.6.tgz#34d19795de1498562bf21541a58edcd106328a17" @@ -20652,7 +21731,7 @@ ws@8.17.1, ws@~8.17.1: resolved "https://registry.yarnpkg.com/ws/-/ws-8.17.1.tgz#9293da530bb548febc95371d90f9c878727d919b" integrity sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ== -ws@8.18.0, ws@>=8.11.0, ws@^8.13.0: +ws@8.18.0, ws@>=8.11.0, ws@^8.13.0, ws@^8.18.0: version "8.18.0" resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.0.tgz#0d7505a6eafe2b0e712d232b42279f53bc289bbc" integrity sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw== @@ -20717,7 +21796,7 @@ yallist@^4.0.0: resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== -yaml@^1.10.2: +yaml@^1.10.0, yaml@^1.10.2: version "1.10.2" resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== From f60cdc9d22b4e97645cfc2c8a97dbed70fb42b6a Mon Sep 17 00:00:00 2001 From: Fabio Rigamonti <73019897+fabiorigam@users.noreply.github.com> Date: Fri, 22 Nov 2024 12:01:48 +0100 Subject: [PATCH 05/16] fix: fix issue --- examples/sample-privy-next-app/package.json | 4 +- .../src/app/components/SocialLoginWrapper.tsx | 123 +- yarn.lock | 1823 +++++++++-------- 3 files changed, 1055 insertions(+), 895 deletions(-) diff --git a/examples/sample-privy-next-app/package.json b/examples/sample-privy-next-app/package.json index e12d8106..0c7286c0 100644 --- a/examples/sample-privy-next-app/package.json +++ b/examples/sample-privy-next-app/package.json @@ -8,11 +8,13 @@ "dev": "next dev" }, "dependencies": { - "@chakra-ui/react": "^3.2.0", + "@chakra-ui/react": "2.8.2", "@emotion/react": "^11.13.5", + "@emotion/styled": "^11.13.5", "@vechain/dapp-kit": "*", "@vechain/dapp-kit-react": "*", "@vechain/dapp-kit-react-privy": "*", + "framer-motion": "^11.11.17", "next": "14.2.10", "react": "^18", "react-dom": "^18" diff --git a/examples/sample-privy-next-app/src/app/components/SocialLoginWrapper.tsx b/examples/sample-privy-next-app/src/app/components/SocialLoginWrapper.tsx index 6f85721c..37fd9189 100644 --- a/examples/sample-privy-next-app/src/app/components/SocialLoginWrapper.tsx +++ b/examples/sample-privy-next-app/src/app/components/SocialLoginWrapper.tsx @@ -1,6 +1,7 @@ - +"use client"; import dynamic from 'next/dynamic'; +import { ChakraProvider } from "@chakra-ui/react"; const PrivyProvider = dynamic( async () => (await import('@vechain/dapp-kit-react-privy')).DAppKitPrivyProvider, @@ -15,66 +16,68 @@ interface Props { export function SocialLoginWrapper({ children }: Props) { return ( - + - {children} - + }} + > + {children} + + ); } diff --git a/yarn.lock b/yarn.lock index ac64b971..8ee0bb0c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -247,62 +247,6 @@ dependencies: tslib "^2.3.0" -"@ark-ui/react@4.4.3": - version "4.4.3" - resolved "https://registry.yarnpkg.com/@ark-ui/react/-/react-4.4.3.tgz#5835bfa1ec02dad761ae74b68be53552d80215aa" - integrity sha512-Prd5EWcyL5PIigl8H70acVacL+Abl0l9gFw0sRNAZ9+3cGaXPhL4ol3s3AW9MU811ZAESU1xifsrwMyhpmcgmg== - dependencies: - "@internationalized/date" "3.5.6" - "@zag-js/accordion" "0.77.1" - "@zag-js/anatomy" "0.77.1" - "@zag-js/auto-resize" "0.77.1" - "@zag-js/avatar" "0.77.1" - "@zag-js/carousel" "0.77.1" - "@zag-js/checkbox" "0.77.1" - "@zag-js/clipboard" "0.77.1" - "@zag-js/collapsible" "0.77.1" - "@zag-js/collection" "0.77.1" - "@zag-js/color-picker" "0.77.1" - "@zag-js/color-utils" "0.77.1" - "@zag-js/combobox" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/date-picker" "0.77.1" - "@zag-js/date-utils" "0.77.1" - "@zag-js/dialog" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/editable" "0.77.1" - "@zag-js/file-upload" "0.77.1" - "@zag-js/file-utils" "0.77.1" - "@zag-js/highlight-word" "0.77.1" - "@zag-js/hover-card" "0.77.1" - "@zag-js/i18n-utils" "0.77.1" - "@zag-js/menu" "0.77.1" - "@zag-js/number-input" "0.77.1" - "@zag-js/pagination" "0.77.1" - "@zag-js/pin-input" "0.77.1" - "@zag-js/popover" "0.77.1" - "@zag-js/presence" "0.77.1" - "@zag-js/progress" "0.77.1" - "@zag-js/qr-code" "0.77.1" - "@zag-js/radio-group" "0.77.1" - "@zag-js/rating-group" "0.77.1" - "@zag-js/react" "0.77.1" - "@zag-js/select" "0.77.1" - "@zag-js/signature-pad" "0.77.1" - "@zag-js/slider" "0.77.1" - "@zag-js/splitter" "0.77.1" - "@zag-js/steps" "0.77.1" - "@zag-js/switch" "0.77.1" - "@zag-js/tabs" "0.77.1" - "@zag-js/tags-input" "0.77.1" - "@zag-js/time-picker" "0.77.1" - "@zag-js/timer" "0.77.1" - "@zag-js/toast" "0.77.1" - "@zag-js/toggle-group" "0.77.1" - "@zag-js/tooltip" "0.77.1" - "@zag-js/tree-view" "0.77.1" - "@zag-js/types" "0.77.1" - "@assemblyscript/loader@^0.10.1": version "0.10.1" resolved "https://registry.yarnpkg.com/@assemblyscript/loader/-/loader-0.10.1.tgz#70e45678f06c72fa2e350e8553ec4a4d72b92e06" @@ -1437,6 +1381,13 @@ dependencies: regenerator-runtime "^0.13.11" +"@babel/runtime@^7.0.0", "@babel/runtime@^7.12.13", "@babel/runtime@^7.18.3": + version "7.26.0" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.26.0.tgz#8600c2f595f277c60815256418b85356a65173c1" + integrity sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw== + dependencies: + regenerator-runtime "^0.14.0" + "@babel/runtime@^7.12.5", "@babel/runtime@^7.20.1", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.4": version "7.25.0" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.25.0.tgz#3af9a91c1b739c569d5d80cc917280919c544ecb" @@ -1444,13 +1395,6 @@ dependencies: regenerator-runtime "^0.14.0" -"@babel/runtime@^7.18.3": - version "7.26.0" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.26.0.tgz#8600c2f595f277c60815256418b85356a65173c1" - integrity sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw== - dependencies: - regenerator-runtime "^0.14.0" - "@babel/template@7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.22.5.tgz#0c8c4d944509875849bd0344ff0050756eefc6ec" @@ -1536,18 +1480,811 @@ resolved "https://registry.yarnpkg.com/@caliatys/array-typer/-/array-typer-1.0.0.tgz#5ddf7d26834d227c9c49d23f500d7c59bbd2ddb6" integrity sha512-TPOM2iJLpxbzpZCeGyQRJiM7dCxntK2jD/vMYJsBbIlrgSUoXh7IXotOKFfE64u7L0fpE5c99vP3nFH5kCP7gQ== -"@chakra-ui/react@^3.2.0": +"@chakra-ui/accordion@2.3.1": + version "2.3.1" + resolved "https://registry.yarnpkg.com/@chakra-ui/accordion/-/accordion-2.3.1.tgz#a326509e286a5c4e8478de9bc2b4b05017039e6b" + integrity sha512-FSXRm8iClFyU+gVaXisOSEw0/4Q+qZbFRiuhIAkVU6Boj0FxAMrlo9a8AV5TuF77rgaHytCdHk0Ng+cyUijrag== + dependencies: + "@chakra-ui/descendant" "3.1.0" + "@chakra-ui/icon" "3.2.0" + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/react-use-controllable-state" "2.1.0" + "@chakra-ui/react-use-merge-refs" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + "@chakra-ui/transition" "2.1.0" + +"@chakra-ui/alert@2.2.2": + version "2.2.2" + resolved "https://registry.yarnpkg.com/@chakra-ui/alert/-/alert-2.2.2.tgz#aeba951d120c7c6e69d5f515a695ad6e4db43ffe" + integrity sha512-jHg4LYMRNOJH830ViLuicjb3F+v6iriE/2G5T+Sd0Hna04nukNJ1MxUmBPE+vI22me2dIflfelu2v9wdB6Pojw== + dependencies: + "@chakra-ui/icon" "3.2.0" + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + "@chakra-ui/spinner" "2.1.0" + +"@chakra-ui/anatomy@2.2.2": + version "2.2.2" + resolved "https://registry.yarnpkg.com/@chakra-ui/anatomy/-/anatomy-2.2.2.tgz#2d0e14cba2534d92077ca28abf8c183b6e27897b" + integrity sha512-MV6D4VLRIHr4PkW4zMyqfrNS1mPlCTiCXwvYGtDFQYr+xHFfonhAuf9WjsSc0nyp2m0OdkSLnzmVKkZFLo25Tg== + +"@chakra-ui/avatar@2.3.0": + version "2.3.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/avatar/-/avatar-2.3.0.tgz#f018a2714d1e3ba5970bcf66558887925fdfccf4" + integrity sha512-8gKSyLfygnaotbJbDMHDiJoF38OHXUYVme4gGxZ1fLnQEdPVEaIWfH+NndIjOM0z8S+YEFnT9KyGMUtvPrBk3g== + dependencies: + "@chakra-ui/image" "2.1.0" + "@chakra-ui/react-children-utils" "2.0.6" + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/breadcrumb@2.2.0": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/breadcrumb/-/breadcrumb-2.2.0.tgz#751bc48498f3c403f97b5d9aae528ebfd405ef48" + integrity sha512-4cWCG24flYBxjruRi4RJREWTGF74L/KzI2CognAW/d/zWR0CjiScuJhf37Am3LFbCySP6WSoyBOtTIoTA4yLEA== + dependencies: + "@chakra-ui/react-children-utils" "2.0.6" + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/breakpoint-utils@2.0.8": + version "2.0.8" + resolved "https://registry.yarnpkg.com/@chakra-ui/breakpoint-utils/-/breakpoint-utils-2.0.8.tgz#750d3712668b69f6e8917b45915cee0e08688eed" + integrity sha512-Pq32MlEX9fwb5j5xx8s18zJMARNHlQZH2VH1RZgfgRDpp7DcEgtRW5AInfN5CfqdHLO1dGxA7I3MqEuL5JnIsA== + dependencies: + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/button@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/button/-/button-2.1.0.tgz#623ed32cc92fc8e52492923e9924791fc6f25447" + integrity sha512-95CplwlRKmmUXkdEp/21VkEWgnwcx2TOBG6NfYlsuLBDHSLlo5FKIiE2oSi4zXc4TLcopGcWPNcm/NDaSC5pvA== + dependencies: + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/react-use-merge-refs" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + "@chakra-ui/spinner" "2.1.0" + +"@chakra-ui/card@2.2.0": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/card/-/card-2.2.0.tgz#b5e59dc51c171fced76ea76bf26088803b8bc184" + integrity sha512-xUB/k5MURj4CtPAhdSoXZidUbm8j3hci9vnc+eZJVDqhDOShNlD6QeniQNRPRys4lWAQLCbFcrwL29C8naDi6g== + dependencies: + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/checkbox@2.3.2": + version "2.3.2" + resolved "https://registry.yarnpkg.com/@chakra-ui/checkbox/-/checkbox-2.3.2.tgz#4ecb14a2f57b7470d1a58542ca4691c3b105bfa1" + integrity sha512-85g38JIXMEv6M+AcyIGLh7igNtfpAN6KGQFYxY9tBj0eWvWk4NKQxvqqyVta0bSAyIl1rixNIIezNpNWk2iO4g== + dependencies: + "@chakra-ui/form-control" "2.2.0" + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/react-types" "2.0.7" + "@chakra-ui/react-use-callback-ref" "2.1.0" + "@chakra-ui/react-use-controllable-state" "2.1.0" + "@chakra-ui/react-use-merge-refs" "2.1.0" + "@chakra-ui/react-use-safe-layout-effect" "2.1.0" + "@chakra-ui/react-use-update-effect" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + "@chakra-ui/visually-hidden" "2.2.0" + "@zag-js/focus-visible" "0.16.0" + +"@chakra-ui/clickable@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/clickable/-/clickable-2.1.0.tgz#800fa8d10cf45a41fc50a3df32c679a3ce1921c3" + integrity sha512-flRA/ClPUGPYabu+/GLREZVZr9j2uyyazCAUHAdrTUEdDYCr31SVGhgh7dgKdtq23bOvAQJpIJjw/0Bs0WvbXw== + dependencies: + "@chakra-ui/react-use-merge-refs" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/close-button@2.1.1": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@chakra-ui/close-button/-/close-button-2.1.1.tgz#995b245c56eb41465a71d8667840c238618a7b66" + integrity sha512-gnpENKOanKexswSVpVz7ojZEALl2x5qjLYNqSQGbxz+aP9sOXPfUS56ebyBrre7T7exuWGiFeRwnM0oVeGPaiw== + dependencies: + "@chakra-ui/icon" "3.2.0" + +"@chakra-ui/color-mode@2.2.0": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/color-mode/-/color-mode-2.2.0.tgz#828d47234c74ba2fb4c5dd63a63331aead20b9f6" + integrity sha512-niTEA8PALtMWRI9wJ4LL0CSBDo8NBfLNp4GD6/0hstcm3IlbBHTVKxN6HwSaoNYfphDQLxCjT4yG+0BJA5tFpg== + dependencies: + "@chakra-ui/react-use-safe-layout-effect" "2.1.0" + +"@chakra-ui/control-box@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/control-box/-/control-box-2.1.0.tgz#0f4586797b3154c02463bc5c106782e70c88f04f" + integrity sha512-gVrRDyXFdMd8E7rulL0SKeoljkLQiPITFnsyMO8EFHNZ+AHt5wK4LIguYVEq88APqAGZGfHFWXr79RYrNiE3Mg== + +"@chakra-ui/counter@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/counter/-/counter-2.1.0.tgz#e413a2f1093a18f847bb7aa240117fde788a59e6" + integrity sha512-s6hZAEcWT5zzjNz2JIWUBzRubo9la/oof1W7EKZVVfPYHERnl5e16FmBC79Yfq8p09LQ+aqFKm/etYoJMMgghw== + dependencies: + "@chakra-ui/number-utils" "2.0.7" + "@chakra-ui/react-use-callback-ref" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/css-reset@2.3.0": + version "2.3.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/css-reset/-/css-reset-2.3.0.tgz#83e3160a9c2a12431cad0ee27ebfbf3aedc5c9c7" + integrity sha512-cQwwBy5O0jzvl0K7PLTLgp8ijqLPKyuEMiDXwYzl95seD3AoeuoCLyzZcJtVqaUZ573PiBdAbY/IlZcwDOItWg== + +"@chakra-ui/descendant@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/descendant/-/descendant-3.1.0.tgz#f3b80ed13ffc4bf1d615b3ed5541bd0905375cca" + integrity sha512-VxCIAir08g5w27klLyi7PVo8BxhW4tgU/lxQyujkmi4zx7hT9ZdrcQLAted/dAa+aSIZ14S1oV0Q9lGjsAdxUQ== + dependencies: + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/react-use-merge-refs" "2.1.0" + +"@chakra-ui/dom-utils@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/dom-utils/-/dom-utils-2.1.0.tgz#d15df89e458ef19756db04c7cfd084eb552454f0" + integrity sha512-ZmF2qRa1QZ0CMLU8M1zCfmw29DmPNtfjR9iTo74U5FPr3i1aoAh7fbJ4qAlZ197Xw9eAW28tvzQuoVWeL5C7fQ== + +"@chakra-ui/editable@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/editable/-/editable-3.1.0.tgz#065783c2e3389c3bb9ab0582cb50d38e1dc00fa1" + integrity sha512-j2JLrUL9wgg4YA6jLlbU88370eCRyor7DZQD9lzpY95tSOXpTljeg3uF9eOmDnCs6fxp3zDWIfkgMm/ExhcGTg== + dependencies: + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/react-types" "2.0.7" + "@chakra-ui/react-use-callback-ref" "2.1.0" + "@chakra-ui/react-use-controllable-state" "2.1.0" + "@chakra-ui/react-use-focus-on-pointer-down" "2.1.0" + "@chakra-ui/react-use-merge-refs" "2.1.0" + "@chakra-ui/react-use-safe-layout-effect" "2.1.0" + "@chakra-ui/react-use-update-effect" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/event-utils@2.0.8": + version "2.0.8" + resolved "https://registry.yarnpkg.com/@chakra-ui/event-utils/-/event-utils-2.0.8.tgz#e6439ba200825a2f15d8f1973d267d1c00a6d1b4" + integrity sha512-IGM/yGUHS+8TOQrZGpAKOJl/xGBrmRYJrmbHfUE7zrG3PpQyXvbLDP1M+RggkCFVgHlJi2wpYIf0QtQlU0XZfw== + +"@chakra-ui/focus-lock@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/focus-lock/-/focus-lock-2.1.0.tgz#580e5450fe85356987b9a246abaff8333369c667" + integrity sha512-EmGx4PhWGjm4dpjRqM4Aa+rCWBxP+Rq8Uc/nAVnD4YVqkEhBkrPTpui2lnjsuxqNaZ24fIAZ10cF1hlpemte/w== + dependencies: + "@chakra-ui/dom-utils" "2.1.0" + react-focus-lock "^2.9.4" + +"@chakra-ui/form-control@2.2.0": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/form-control/-/form-control-2.2.0.tgz#69c771d6406ddac8ab357ae88446cc11827656a4" + integrity sha512-wehLC1t4fafCVJ2RvJQT2jyqsAwX7KymmiGqBu7nQoQz8ApTkGABWpo/QwDh3F/dBLrouHDoOvGmYTqft3Mirw== + dependencies: + "@chakra-ui/icon" "3.2.0" + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/react-types" "2.0.7" + "@chakra-ui/react-use-merge-refs" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/hooks@2.2.1": + version "2.2.1" + resolved "https://registry.yarnpkg.com/@chakra-ui/hooks/-/hooks-2.2.1.tgz#b86ce5eeaaab877ddcb11a50842d1227306ace28" + integrity sha512-RQbTnzl6b1tBjbDPf9zGRo9rf/pQMholsOudTxjy4i9GfTfz6kgp5ValGjQm2z7ng6Z31N1cnjZ1AlSzQ//ZfQ== + dependencies: + "@chakra-ui/react-utils" "2.0.12" + "@chakra-ui/utils" "2.0.15" + compute-scroll-into-view "3.0.3" + copy-to-clipboard "3.3.3" + +"@chakra-ui/icon@3.2.0": version "3.2.0" - resolved "https://registry.yarnpkg.com/@chakra-ui/react/-/react-3.2.0.tgz#0ee8d0d3969fe70c79ec6868aa94261ab3b744c5" - integrity sha512-j87BakG4UYECd5B7FEjHLkSXJmr0vyffp7Noc2/3voHBb+YF94SFIB7CIKLTPQgKuIf+fKZM6MapPDmsMHk3Kg== + resolved "https://registry.yarnpkg.com/@chakra-ui/icon/-/icon-3.2.0.tgz#92b9454aa0d561b4994bcd6a1b3bb1fdd5c67bef" + integrity sha512-xxjGLvlX2Ys4H0iHrI16t74rG9EBcpFvJ3Y3B7KMQTrnW34Kf7Da/UC8J67Gtx85mTHW020ml85SVPKORWNNKQ== + dependencies: + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/image@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/image/-/image-2.1.0.tgz#6c205f1ca148e3bf58345b0b5d4eb3d959eb9f87" + integrity sha512-bskumBYKLiLMySIWDGcz0+D9Th0jPvmX6xnRMs4o92tT3Od/bW26lahmV2a2Op2ItXeCmRMY+XxJH5Gy1i46VA== + dependencies: + "@chakra-ui/react-use-safe-layout-effect" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/input@2.1.2": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@chakra-ui/input/-/input-2.1.2.tgz#0cad49ec372f8f21f2f4f1db365f34b9a708ff9d" + integrity sha512-GiBbb3EqAA8Ph43yGa6Mc+kUPjh4Spmxp1Pkelr8qtudpc3p2PJOOebLpd90mcqw8UePPa+l6YhhPtp6o0irhw== + dependencies: + "@chakra-ui/form-control" "2.2.0" + "@chakra-ui/object-utils" "2.1.0" + "@chakra-ui/react-children-utils" "2.0.6" + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/layout@2.3.1": + version "2.3.1" + resolved "https://registry.yarnpkg.com/@chakra-ui/layout/-/layout-2.3.1.tgz#0601c5eb91555d24a7015a7c9d4e01fed2698557" + integrity sha512-nXuZ6WRbq0WdgnRgLw+QuxWAHuhDtVX8ElWqcTK+cSMFg/52eVP47czYBE5F35YhnoW2XBwfNoNgZ7+e8Z01Rg== + dependencies: + "@chakra-ui/breakpoint-utils" "2.0.8" + "@chakra-ui/icon" "3.2.0" + "@chakra-ui/object-utils" "2.1.0" + "@chakra-ui/react-children-utils" "2.0.6" + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/lazy-utils@2.0.5": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@chakra-ui/lazy-utils/-/lazy-utils-2.0.5.tgz#363c3fa1d421362790b416ffa595acb835e1ae5b" + integrity sha512-UULqw7FBvcckQk2n3iPO56TMJvDsNv0FKZI6PlUNJVaGsPbsYxK/8IQ60vZgaTVPtVcjY6BE+y6zg8u9HOqpyg== + +"@chakra-ui/live-region@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/live-region/-/live-region-2.1.0.tgz#02b4b1d997075f19a7a9a87187e08c72e82ef0dd" + integrity sha512-ZOxFXwtaLIsXjqnszYYrVuswBhnIHHP+XIgK1vC6DePKtyK590Wg+0J0slDwThUAd4MSSIUa/nNX84x1GMphWw== + +"@chakra-ui/media-query@3.3.0": + version "3.3.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/media-query/-/media-query-3.3.0.tgz#40f9151dedb6a7af9df3be0474b59a799c92c619" + integrity sha512-IsTGgFLoICVoPRp9ykOgqmdMotJG0CnPsKvGQeSFOB/dZfIujdVb14TYxDU4+MURXry1MhJ7LzZhv+Ml7cr8/g== + dependencies: + "@chakra-ui/breakpoint-utils" "2.0.8" + "@chakra-ui/react-env" "3.1.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/menu@2.2.1": + version "2.2.1" + resolved "https://registry.yarnpkg.com/@chakra-ui/menu/-/menu-2.2.1.tgz#7d9810d435f6b40fa72ed867a33b88a1ef75073f" + integrity sha512-lJS7XEObzJxsOwWQh7yfG4H8FzFPRP5hVPN/CL+JzytEINCSBvsCDHrYPQGp7jzpCi8vnTqQQGQe0f8dwnXd2g== + dependencies: + "@chakra-ui/clickable" "2.1.0" + "@chakra-ui/descendant" "3.1.0" + "@chakra-ui/lazy-utils" "2.0.5" + "@chakra-ui/popper" "3.1.0" + "@chakra-ui/react-children-utils" "2.0.6" + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/react-use-animation-state" "2.1.0" + "@chakra-ui/react-use-controllable-state" "2.1.0" + "@chakra-ui/react-use-disclosure" "2.1.0" + "@chakra-ui/react-use-focus-effect" "2.1.0" + "@chakra-ui/react-use-merge-refs" "2.1.0" + "@chakra-ui/react-use-outside-click" "2.2.0" + "@chakra-ui/react-use-update-effect" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + "@chakra-ui/transition" "2.1.0" + +"@chakra-ui/modal@2.3.1": + version "2.3.1" + resolved "https://registry.yarnpkg.com/@chakra-ui/modal/-/modal-2.3.1.tgz#524dc32b6b4f545b54ae531dbf6c74e1052ee794" + integrity sha512-TQv1ZaiJMZN+rR9DK0snx/OPwmtaGH1HbZtlYt4W4s6CzyK541fxLRTjIXfEzIGpvNW+b6VFuFjbcR78p4DEoQ== + dependencies: + "@chakra-ui/close-button" "2.1.1" + "@chakra-ui/focus-lock" "2.1.0" + "@chakra-ui/portal" "2.1.0" + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/react-types" "2.0.7" + "@chakra-ui/react-use-merge-refs" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + "@chakra-ui/transition" "2.1.0" + aria-hidden "^1.2.3" + react-remove-scroll "^2.5.6" + +"@chakra-ui/number-input@2.1.2": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@chakra-ui/number-input/-/number-input-2.1.2.tgz#dda9095fba6a4b89212332db02831b94120da163" + integrity sha512-pfOdX02sqUN0qC2ysuvgVDiws7xZ20XDIlcNhva55Jgm095xjm8eVdIBfNm3SFbSUNxyXvLTW/YQanX74tKmuA== + dependencies: + "@chakra-ui/counter" "2.1.0" + "@chakra-ui/form-control" "2.2.0" + "@chakra-ui/icon" "3.2.0" + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/react-types" "2.0.7" + "@chakra-ui/react-use-callback-ref" "2.1.0" + "@chakra-ui/react-use-event-listener" "2.1.0" + "@chakra-ui/react-use-interval" "2.1.0" + "@chakra-ui/react-use-merge-refs" "2.1.0" + "@chakra-ui/react-use-safe-layout-effect" "2.1.0" + "@chakra-ui/react-use-update-effect" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/number-utils@2.0.7": + version "2.0.7" + resolved "https://registry.yarnpkg.com/@chakra-ui/number-utils/-/number-utils-2.0.7.tgz#aaee979ca2fb1923a0373a91619473811315db11" + integrity sha512-yOGxBjXNvLTBvQyhMDqGU0Oj26s91mbAlqKHiuw737AXHt0aPllOthVUqQMeaYLwLCjGMg0jtI7JReRzyi94Dg== + +"@chakra-ui/object-utils@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/object-utils/-/object-utils-2.1.0.tgz#a4ecf9cea92f1de09f5531f53ffdc41e0b19b6c3" + integrity sha512-tgIZOgLHaoti5PYGPTwK3t/cqtcycW0owaiOXoZOcpwwX/vlVb+H1jFsQyWiiwQVPt9RkoSLtxzXamx+aHH+bQ== + +"@chakra-ui/pin-input@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/pin-input/-/pin-input-2.1.0.tgz#61e6bbf909ec510634307b2861c4f1891a9f8d81" + integrity sha512-x4vBqLStDxJFMt+jdAHHS8jbh294O53CPQJoL4g228P513rHylV/uPscYUHrVJXRxsHfRztQO9k45jjTYaPRMw== + dependencies: + "@chakra-ui/descendant" "3.1.0" + "@chakra-ui/react-children-utils" "2.0.6" + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/react-use-controllable-state" "2.1.0" + "@chakra-ui/react-use-merge-refs" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/popover@2.2.1": + version "2.2.1" + resolved "https://registry.yarnpkg.com/@chakra-ui/popover/-/popover-2.2.1.tgz#89cfd29817abcd204da570073c0f2b4d8072c3a3" + integrity sha512-K+2ai2dD0ljvJnlrzesCDT9mNzLifE3noGKZ3QwLqd/K34Ym1W/0aL1ERSynrcG78NKoXS54SdEzkhCZ4Gn/Zg== + dependencies: + "@chakra-ui/close-button" "2.1.1" + "@chakra-ui/lazy-utils" "2.0.5" + "@chakra-ui/popper" "3.1.0" + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/react-types" "2.0.7" + "@chakra-ui/react-use-animation-state" "2.1.0" + "@chakra-ui/react-use-disclosure" "2.1.0" + "@chakra-ui/react-use-focus-effect" "2.1.0" + "@chakra-ui/react-use-focus-on-pointer-down" "2.1.0" + "@chakra-ui/react-use-merge-refs" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/popper@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/popper/-/popper-3.1.0.tgz#92a9180c6894763af3b22a6003f9a9d958fe2659" + integrity sha512-ciDdpdYbeFG7og6/6J8lkTFxsSvwTdMLFkpVylAF6VNC22jssiWfquj2eyD4rJnzkRFPvIWJq8hvbfhsm+AjSg== + dependencies: + "@chakra-ui/react-types" "2.0.7" + "@chakra-ui/react-use-merge-refs" "2.1.0" + "@popperjs/core" "^2.9.3" + +"@chakra-ui/portal@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/portal/-/portal-2.1.0.tgz#9e7f57424d7041738b6563cac80134561080bd27" + integrity sha512-9q9KWf6SArEcIq1gGofNcFPSWEyl+MfJjEUg/un1SMlQjaROOh3zYr+6JAwvcORiX7tyHosnmWC3d3wI2aPSQg== + dependencies: + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/react-use-safe-layout-effect" "2.1.0" + +"@chakra-ui/progress@2.2.0": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/progress/-/progress-2.2.0.tgz#67444ea9779631d7c8395b2c9c78e5634f994999" + integrity sha512-qUXuKbuhN60EzDD9mHR7B67D7p/ZqNS2Aze4Pbl1qGGZfulPW0PY8Rof32qDtttDQBkzQIzFGE8d9QpAemToIQ== + dependencies: + "@chakra-ui/react-context" "2.1.0" + +"@chakra-ui/provider@2.4.2": + version "2.4.2" + resolved "https://registry.yarnpkg.com/@chakra-ui/provider/-/provider-2.4.2.tgz#92cb10b6a7df0720e3fa62716dc7cd872ae3ea3d" + integrity sha512-w0Tef5ZCJK1mlJorcSjItCSbyvVuqpvyWdxZiVQmE6fvSJR83wZof42ux0+sfWD+I7rHSfj+f9nzhNaEWClysw== + dependencies: + "@chakra-ui/css-reset" "2.3.0" + "@chakra-ui/portal" "2.1.0" + "@chakra-ui/react-env" "3.1.0" + "@chakra-ui/system" "2.6.2" + "@chakra-ui/utils" "2.0.15" + +"@chakra-ui/radio@2.1.2": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@chakra-ui/radio/-/radio-2.1.2.tgz#66db19c61a2e628aaf5e727027f7c3b4006ea898" + integrity sha512-n10M46wJrMGbonaghvSRnZ9ToTv/q76Szz284gv4QUWvyljQACcGrXIONUnQ3BIwbOfkRqSk7Xl/JgZtVfll+w== + dependencies: + "@chakra-ui/form-control" "2.2.0" + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/react-types" "2.0.7" + "@chakra-ui/react-use-merge-refs" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + "@zag-js/focus-visible" "0.16.0" + +"@chakra-ui/react-children-utils@2.0.6": + version "2.0.6" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-children-utils/-/react-children-utils-2.0.6.tgz#6c480c6a60678fcb75cb7d57107c7a79e5179b92" + integrity sha512-QVR2RC7QsOsbWwEnq9YduhpqSFnZGvjjGREV8ygKi8ADhXh93C8azLECCUVgRJF2Wc+So1fgxmjLcbZfY2VmBA== + +"@chakra-ui/react-context@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-context/-/react-context-2.1.0.tgz#4858be1d5ff1c8ac0a0ec088d93a3b7f1cbbff99" + integrity sha512-iahyStvzQ4AOwKwdPReLGfDesGG+vWJfEsn0X/NoGph/SkN+HXtv2sCfYFFR9k7bb+Kvc6YfpLlSuLvKMHi2+w== + +"@chakra-ui/react-env@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-env/-/react-env-3.1.0.tgz#7d3c1c05a501bb369524d9f3d38c9325eb16ab50" + integrity sha512-Vr96GV2LNBth3+IKzr/rq1IcnkXv+MLmwjQH6C8BRtn3sNskgDFD5vLkVXcEhagzZMCh8FR3V/bzZPojBOyNhw== + dependencies: + "@chakra-ui/react-use-safe-layout-effect" "2.1.0" + +"@chakra-ui/react-types@2.0.7": + version "2.0.7" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-types/-/react-types-2.0.7.tgz#799c166a44882b23059c8f510eac9bd5d0869ac4" + integrity sha512-12zv2qIZ8EHwiytggtGvo4iLT0APris7T0qaAWqzpUGS0cdUtR8W+V1BJ5Ocq+7tA6dzQ/7+w5hmXih61TuhWQ== + +"@chakra-ui/react-use-animation-state@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-use-animation-state/-/react-use-animation-state-2.1.0.tgz#eab661fbafd96804fe867b0df0c27e78feefe6e2" + integrity sha512-CFZkQU3gmDBwhqy0vC1ryf90BVHxVN8cTLpSyCpdmExUEtSEInSCGMydj2fvn7QXsz/za8JNdO2xxgJwxpLMtg== + dependencies: + "@chakra-ui/dom-utils" "2.1.0" + "@chakra-ui/react-use-event-listener" "2.1.0" + +"@chakra-ui/react-use-callback-ref@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-use-callback-ref/-/react-use-callback-ref-2.1.0.tgz#a508085f4d9e7d84d4ceffdf5f41745c9ac451d7" + integrity sha512-efnJrBtGDa4YaxDzDE90EnKD3Vkh5a1t3w7PhnRQmsphLy3g2UieasoKTlT2Hn118TwDjIv5ZjHJW6HbzXA9wQ== + +"@chakra-ui/react-use-controllable-state@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-use-controllable-state/-/react-use-controllable-state-2.1.0.tgz#8fb6fa2f45d0c04173582ae8297e604ffdb9c7d9" + integrity sha512-QR/8fKNokxZUs4PfxjXuwl0fj/d71WPrmLJvEpCTkHjnzu7LnYvzoe2wB867IdooQJL0G1zBxl0Dq+6W1P3jpg== + dependencies: + "@chakra-ui/react-use-callback-ref" "2.1.0" + +"@chakra-ui/react-use-disclosure@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-use-disclosure/-/react-use-disclosure-2.1.0.tgz#90093eaf45db1bea7a6851dd0ce5cdb3eb66f90a" + integrity sha512-Ax4pmxA9LBGMyEZJhhUZobg9C0t3qFE4jVF1tGBsrLDcdBeLR9fwOogIPY9Hf0/wqSlAryAimICbr5hkpa5GSw== + dependencies: + "@chakra-ui/react-use-callback-ref" "2.1.0" + +"@chakra-ui/react-use-event-listener@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-use-event-listener/-/react-use-event-listener-2.1.0.tgz#afea2645bd9b38f754fc2b8eb858f9bb22385ded" + integrity sha512-U5greryDLS8ISP69DKDsYcsXRtAdnTQT+jjIlRYZ49K/XhUR/AqVZCK5BkR1spTDmO9H8SPhgeNKI70ODuDU/Q== + dependencies: + "@chakra-ui/react-use-callback-ref" "2.1.0" + +"@chakra-ui/react-use-focus-effect@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-use-focus-effect/-/react-use-focus-effect-2.1.0.tgz#963fb790370dfadd51d12666ff2da60706f53a2a" + integrity sha512-xzVboNy7J64xveLcxTIJ3jv+lUJKDwRM7Szwn9tNzUIPD94O3qwjV7DDCUzN2490nSYDF4OBMt/wuDBtaR3kUQ== + dependencies: + "@chakra-ui/dom-utils" "2.1.0" + "@chakra-ui/react-use-event-listener" "2.1.0" + "@chakra-ui/react-use-safe-layout-effect" "2.1.0" + "@chakra-ui/react-use-update-effect" "2.1.0" + +"@chakra-ui/react-use-focus-on-pointer-down@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-use-focus-on-pointer-down/-/react-use-focus-on-pointer-down-2.1.0.tgz#2fbcf6bc7d06d97606747e231a908d5c387ca0cc" + integrity sha512-2jzrUZ+aiCG/cfanrolsnSMDykCAbv9EK/4iUyZno6BYb3vziucmvgKuoXbMPAzWNtwUwtuMhkby8rc61Ue+Lg== + dependencies: + "@chakra-ui/react-use-event-listener" "2.1.0" + +"@chakra-ui/react-use-interval@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-use-interval/-/react-use-interval-2.1.0.tgz#2602c097b3ab74b6644812e4f5efaad621218d98" + integrity sha512-8iWj+I/+A0J08pgEXP1J1flcvhLBHkk0ln7ZvGIyXiEyM6XagOTJpwNhiu+Bmk59t3HoV/VyvyJTa+44sEApuw== + dependencies: + "@chakra-ui/react-use-callback-ref" "2.1.0" + +"@chakra-ui/react-use-latest-ref@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-use-latest-ref/-/react-use-latest-ref-2.1.0.tgz#d1e926130102566ece1d39f8a48ed125e0c8441a" + integrity sha512-m0kxuIYqoYB0va9Z2aW4xP/5b7BzlDeWwyXCH6QpT2PpW3/281L3hLCm1G0eOUcdVlayqrQqOeD6Mglq+5/xoQ== + +"@chakra-ui/react-use-merge-refs@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-use-merge-refs/-/react-use-merge-refs-2.1.0.tgz#c0c233527abdbea9a1348269c192012205762314" + integrity sha512-lERa6AWF1cjEtWSGjxWTaSMvneccnAVH4V4ozh8SYiN9fSPZLlSG3kNxfNzdFvMEhM7dnP60vynF7WjGdTgQbQ== + +"@chakra-ui/react-use-outside-click@2.2.0": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-use-outside-click/-/react-use-outside-click-2.2.0.tgz#5570b772a255f6f02b69e967127397c1b5fa3d3c" + integrity sha512-PNX+s/JEaMneijbgAM4iFL+f3m1ga9+6QK0E5Yh4s8KZJQ/bLwZzdhMz8J/+mL+XEXQ5J0N8ivZN28B82N1kNw== + dependencies: + "@chakra-ui/react-use-callback-ref" "2.1.0" + +"@chakra-ui/react-use-pan-event@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-use-pan-event/-/react-use-pan-event-2.1.0.tgz#51c21bc3c0e9e73d1faef5ea4f7e3c3d071a2758" + integrity sha512-xmL2qOHiXqfcj0q7ZK5s9UjTh4Gz0/gL9jcWPA6GVf+A0Od5imEDa/Vz+533yQKWiNSm1QGrIj0eJAokc7O4fg== + dependencies: + "@chakra-ui/event-utils" "2.0.8" + "@chakra-ui/react-use-latest-ref" "2.1.0" + framesync "6.1.2" + +"@chakra-ui/react-use-previous@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-use-previous/-/react-use-previous-2.1.0.tgz#f6046e6f7398b1e8d7e66ff7ebb8d61c92a2d3d0" + integrity sha512-pjxGwue1hX8AFcmjZ2XfrQtIJgqbTF3Qs1Dy3d1krC77dEsiCUbQ9GzOBfDc8pfd60DrB5N2tg5JyHbypqh0Sg== + +"@chakra-ui/react-use-safe-layout-effect@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-use-safe-layout-effect/-/react-use-safe-layout-effect-2.1.0.tgz#3a95f0ba6fd5d2d0aa14919160f2c825f13e686f" + integrity sha512-Knbrrx/bcPwVS1TorFdzrK/zWA8yuU/eaXDkNj24IrKoRlQrSBFarcgAEzlCHtzuhufP3OULPkELTzz91b0tCw== + +"@chakra-ui/react-use-size@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-use-size/-/react-use-size-2.1.0.tgz#fcf3070eaade8b4a84af8ce5341c4d5ca0a42bec" + integrity sha512-tbLqrQhbnqOjzTaMlYytp7wY8BW1JpL78iG7Ru1DlV4EWGiAmXFGvtnEt9HftU0NJ0aJyjgymkxfVGI55/1Z4A== dependencies: - "@ark-ui/react" "4.4.3" - "@emotion/is-prop-valid" "1.3.1" - "@emotion/serialize" "1.3.2" - "@emotion/use-insertion-effect-with-fallbacks" "1.1.0" - "@emotion/utils" "1.4.1" - "@pandacss/is-valid-prop" "0.41.0" - csstype "3.1.3" + "@zag-js/element-size" "0.10.5" + +"@chakra-ui/react-use-timeout@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-use-timeout/-/react-use-timeout-2.1.0.tgz#24415f54267d7241a3c1d36a5cae4d472834cef7" + integrity sha512-cFN0sobKMM9hXUhyCofx3/Mjlzah6ADaEl/AXl5Y+GawB5rgedgAcu2ErAgarEkwvsKdP6c68CKjQ9dmTQlJxQ== + dependencies: + "@chakra-ui/react-use-callback-ref" "2.1.0" + +"@chakra-ui/react-use-update-effect@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-use-update-effect/-/react-use-update-effect-2.1.0.tgz#5c57cd1f50c2a6a8119e0f57f69510723d69884b" + integrity sha512-ND4Q23tETaR2Qd3zwCKYOOS1dfssojPLJMLvUtUbW5M9uW1ejYWgGUobeAiOVfSplownG8QYMmHTP86p/v0lbA== + +"@chakra-ui/react-utils@2.0.12": + version "2.0.12" + resolved "https://registry.yarnpkg.com/@chakra-ui/react-utils/-/react-utils-2.0.12.tgz#d6b773b9a5b2e51dce61f51ac8a0e9a0f534f479" + integrity sha512-GbSfVb283+YA3kA8w8xWmzbjNWk14uhNpntnipHCftBibl0lxtQ9YqMFQLwuFOO0U2gYVocszqqDWX+XNKq9hw== + dependencies: + "@chakra-ui/utils" "2.0.15" + +"@chakra-ui/react@2.8.2": + version "2.8.2" + resolved "https://registry.yarnpkg.com/@chakra-ui/react/-/react-2.8.2.tgz#94d692fb35e4447748c5bfd73d8d38a746193c7d" + integrity sha512-Hn0moyxxyCDKuR9ywYpqgX8dvjqwu9ArwpIb9wHNYjnODETjLwazgNIliCVBRcJvysGRiV51U2/JtJVrpeCjUQ== + dependencies: + "@chakra-ui/accordion" "2.3.1" + "@chakra-ui/alert" "2.2.2" + "@chakra-ui/avatar" "2.3.0" + "@chakra-ui/breadcrumb" "2.2.0" + "@chakra-ui/button" "2.1.0" + "@chakra-ui/card" "2.2.0" + "@chakra-ui/checkbox" "2.3.2" + "@chakra-ui/close-button" "2.1.1" + "@chakra-ui/control-box" "2.1.0" + "@chakra-ui/counter" "2.1.0" + "@chakra-ui/css-reset" "2.3.0" + "@chakra-ui/editable" "3.1.0" + "@chakra-ui/focus-lock" "2.1.0" + "@chakra-ui/form-control" "2.2.0" + "@chakra-ui/hooks" "2.2.1" + "@chakra-ui/icon" "3.2.0" + "@chakra-ui/image" "2.1.0" + "@chakra-ui/input" "2.1.2" + "@chakra-ui/layout" "2.3.1" + "@chakra-ui/live-region" "2.1.0" + "@chakra-ui/media-query" "3.3.0" + "@chakra-ui/menu" "2.2.1" + "@chakra-ui/modal" "2.3.1" + "@chakra-ui/number-input" "2.1.2" + "@chakra-ui/pin-input" "2.1.0" + "@chakra-ui/popover" "2.2.1" + "@chakra-ui/popper" "3.1.0" + "@chakra-ui/portal" "2.1.0" + "@chakra-ui/progress" "2.2.0" + "@chakra-ui/provider" "2.4.2" + "@chakra-ui/radio" "2.1.2" + "@chakra-ui/react-env" "3.1.0" + "@chakra-ui/select" "2.1.2" + "@chakra-ui/skeleton" "2.1.0" + "@chakra-ui/skip-nav" "2.1.0" + "@chakra-ui/slider" "2.1.0" + "@chakra-ui/spinner" "2.1.0" + "@chakra-ui/stat" "2.1.1" + "@chakra-ui/stepper" "2.3.1" + "@chakra-ui/styled-system" "2.9.2" + "@chakra-ui/switch" "2.1.2" + "@chakra-ui/system" "2.6.2" + "@chakra-ui/table" "2.1.0" + "@chakra-ui/tabs" "3.0.0" + "@chakra-ui/tag" "3.1.1" + "@chakra-ui/textarea" "2.1.2" + "@chakra-ui/theme" "3.3.1" + "@chakra-ui/theme-utils" "2.0.21" + "@chakra-ui/toast" "7.0.2" + "@chakra-ui/tooltip" "2.3.1" + "@chakra-ui/transition" "2.1.0" + "@chakra-ui/utils" "2.0.15" + "@chakra-ui/visually-hidden" "2.2.0" + +"@chakra-ui/select@2.1.2": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@chakra-ui/select/-/select-2.1.2.tgz#f57d6cec0559373c32094fd4a5abd32855829264" + integrity sha512-ZwCb7LqKCVLJhru3DXvKXpZ7Pbu1TDZ7N0PdQ0Zj1oyVLJyrpef1u9HR5u0amOpqcH++Ugt0f5JSmirjNlctjA== + dependencies: + "@chakra-ui/form-control" "2.2.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/shared-utils@2.0.5": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@chakra-ui/shared-utils/-/shared-utils-2.0.5.tgz#cb2b49705e113853647f1822142619570feba081" + integrity sha512-4/Wur0FqDov7Y0nCXl7HbHzCg4aq86h+SXdoUeuCMD3dSj7dpsVnStLYhng1vxvlbUnLpdF4oz5Myt3i/a7N3Q== + +"@chakra-ui/skeleton@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/skeleton/-/skeleton-2.1.0.tgz#e3b25dd3afa330029d6d63be0f7cb8d44ad25531" + integrity sha512-JNRuMPpdZGd6zFVKjVQ0iusu3tXAdI29n4ZENYwAJEMf/fN0l12sVeirOxkJ7oEL0yOx2AgEYFSKdbcAgfUsAQ== + dependencies: + "@chakra-ui/media-query" "3.3.0" + "@chakra-ui/react-use-previous" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/skip-nav@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/skip-nav/-/skip-nav-2.1.0.tgz#cac27eecc6eded1e83c8f0cf7445d727739cb325" + integrity sha512-Hk+FG+vadBSH0/7hwp9LJnLjkO0RPGnx7gBJWI4/SpoJf3e4tZlWYtwGj0toYY4aGKl93jVghuwGbDBEMoHDug== + +"@chakra-ui/slider@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/slider/-/slider-2.1.0.tgz#1caeed18761ba2a390777418cc9389ba25e39bce" + integrity sha512-lUOBcLMCnFZiA/s2NONXhELJh6sY5WtbRykPtclGfynqqOo47lwWJx+VP7xaeuhDOPcWSSecWc9Y1BfPOCz9cQ== + dependencies: + "@chakra-ui/number-utils" "2.0.7" + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/react-types" "2.0.7" + "@chakra-ui/react-use-callback-ref" "2.1.0" + "@chakra-ui/react-use-controllable-state" "2.1.0" + "@chakra-ui/react-use-latest-ref" "2.1.0" + "@chakra-ui/react-use-merge-refs" "2.1.0" + "@chakra-ui/react-use-pan-event" "2.1.0" + "@chakra-ui/react-use-size" "2.1.0" + "@chakra-ui/react-use-update-effect" "2.1.0" + +"@chakra-ui/spinner@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/spinner/-/spinner-2.1.0.tgz#aa24a3d692c6ac90714e0f0f82c76c12c78c8e60" + integrity sha512-hczbnoXt+MMv/d3gE+hjQhmkzLiKuoTo42YhUG7Bs9OSv2lg1fZHW1fGNRFP3wTi6OIbD044U1P9HK+AOgFH3g== + dependencies: + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/stat@2.1.1": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@chakra-ui/stat/-/stat-2.1.1.tgz#a204ba915795345996a16c79794d84826d7dcc2d" + integrity sha512-LDn0d/LXQNbAn2KaR3F1zivsZCewY4Jsy1qShmfBMKwn6rI8yVlbvu6SiA3OpHS0FhxbsZxQI6HefEoIgtqY6Q== + dependencies: + "@chakra-ui/icon" "3.2.0" + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/stepper@2.3.1": + version "2.3.1" + resolved "https://registry.yarnpkg.com/@chakra-ui/stepper/-/stepper-2.3.1.tgz#a0a0b73e147f202ab4e51cae55dad45489cc89fd" + integrity sha512-ky77lZbW60zYkSXhYz7kbItUpAQfEdycT0Q4bkHLxfqbuiGMf8OmgZOQkOB9uM4v0zPwy2HXhe0vq4Dd0xa55Q== + dependencies: + "@chakra-ui/icon" "3.2.0" + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/styled-system@2.9.2": + version "2.9.2" + resolved "https://registry.yarnpkg.com/@chakra-ui/styled-system/-/styled-system-2.9.2.tgz#898ab63da560a4a014f7b05fa7767e8c76da6d2f" + integrity sha512-To/Z92oHpIE+4nk11uVMWqo2GGRS86coeMmjxtpnErmWRdLcp1WVCVRAvn+ZwpLiNR+reWFr2FFqJRsREuZdAg== + dependencies: + "@chakra-ui/shared-utils" "2.0.5" + csstype "^3.1.2" + lodash.mergewith "4.6.2" + +"@chakra-ui/switch@2.1.2": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@chakra-ui/switch/-/switch-2.1.2.tgz#f7c6878d8126bfac8fa3b939079f1017c21b7479" + integrity sha512-pgmi/CC+E1v31FcnQhsSGjJnOE2OcND4cKPyTE+0F+bmGm48Q/b5UmKD9Y+CmZsrt/7V3h8KNczowupfuBfIHA== + dependencies: + "@chakra-ui/checkbox" "2.3.2" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/system@2.6.2": + version "2.6.2" + resolved "https://registry.yarnpkg.com/@chakra-ui/system/-/system-2.6.2.tgz#528ec955bd6a7f74da46470ee8225b1e2c80a78b" + integrity sha512-EGtpoEjLrUu4W1fHD+a62XR+hzC5YfsWm+6lO0Kybcga3yYEij9beegO0jZgug27V+Rf7vns95VPVP6mFd/DEQ== + dependencies: + "@chakra-ui/color-mode" "2.2.0" + "@chakra-ui/object-utils" "2.1.0" + "@chakra-ui/react-utils" "2.0.12" + "@chakra-ui/styled-system" "2.9.2" + "@chakra-ui/theme-utils" "2.0.21" + "@chakra-ui/utils" "2.0.15" + react-fast-compare "3.2.2" + +"@chakra-ui/table@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/table/-/table-2.1.0.tgz#20dce14c5e4d70dc7c6c0e87cce9b05907ff8c50" + integrity sha512-o5OrjoHCh5uCLdiUb0Oc0vq9rIAeHSIRScc2ExTC9Qg/uVZl2ygLrjToCaKfaaKl1oQexIeAcZDKvPG8tVkHyQ== + dependencies: + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/tabs@3.0.0": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/tabs/-/tabs-3.0.0.tgz#854c06880af26158d7c72881c4b5e0453f6c485d" + integrity sha512-6Mlclp8L9lqXmsGWF5q5gmemZXOiOYuh0SGT/7PgJVNPz3LXREXlXg2an4MBUD8W5oTkduCX+3KTMCwRrVrDYw== + dependencies: + "@chakra-ui/clickable" "2.1.0" + "@chakra-ui/descendant" "3.1.0" + "@chakra-ui/lazy-utils" "2.0.5" + "@chakra-ui/react-children-utils" "2.0.6" + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/react-use-controllable-state" "2.1.0" + "@chakra-ui/react-use-merge-refs" "2.1.0" + "@chakra-ui/react-use-safe-layout-effect" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/tag@3.1.1": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@chakra-ui/tag/-/tag-3.1.1.tgz#d05284b6549a84d3a08e57eec57df3ad0eebd882" + integrity sha512-Bdel79Dv86Hnge2PKOU+t8H28nm/7Y3cKd4Kfk9k3lOpUh4+nkSGe58dhRzht59lEqa4N9waCgQiBdkydjvBXQ== + dependencies: + "@chakra-ui/icon" "3.2.0" + "@chakra-ui/react-context" "2.1.0" + +"@chakra-ui/textarea@2.1.2": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@chakra-ui/textarea/-/textarea-2.1.2.tgz#30f8af0e233cec2dee79d527450c6586e7122eff" + integrity sha512-ip7tvklVCZUb2fOHDb23qPy/Fr2mzDOGdkrpbNi50hDCiV4hFX02jdQJdi3ydHZUyVgZVBKPOJ+lT9i7sKA2wA== + dependencies: + "@chakra-ui/form-control" "2.2.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/theme-tools@2.1.2": + version "2.1.2" + resolved "https://registry.yarnpkg.com/@chakra-ui/theme-tools/-/theme-tools-2.1.2.tgz#913be05879cd816c546993ccb9ff7615f85ff69f" + integrity sha512-Qdj8ajF9kxY4gLrq7gA+Azp8CtFHGO9tWMN2wfF9aQNgG9AuMhPrUzMq9AMQ0MXiYcgNq/FD3eegB43nHVmXVA== + dependencies: + "@chakra-ui/anatomy" "2.2.2" + "@chakra-ui/shared-utils" "2.0.5" + color2k "^2.0.2" + +"@chakra-ui/theme-utils@2.0.21": + version "2.0.21" + resolved "https://registry.yarnpkg.com/@chakra-ui/theme-utils/-/theme-utils-2.0.21.tgz#da7ed541a5241a8ed0384eb14f37fa9b998382cf" + integrity sha512-FjH5LJbT794r0+VSCXB3lT4aubI24bLLRWB+CuRKHijRvsOg717bRdUN/N1fEmEpFnRVrbewttWh/OQs0EWpWw== + dependencies: + "@chakra-ui/shared-utils" "2.0.5" + "@chakra-ui/styled-system" "2.9.2" + "@chakra-ui/theme" "3.3.1" + lodash.mergewith "4.6.2" + +"@chakra-ui/theme@3.3.1": + version "3.3.1" + resolved "https://registry.yarnpkg.com/@chakra-ui/theme/-/theme-3.3.1.tgz#75c6cd0b5c70c0aa955068274ee4780f299bd8a4" + integrity sha512-Hft/VaT8GYnItGCBbgWd75ICrIrIFrR7lVOhV/dQnqtfGqsVDlrztbSErvMkoPKt0UgAkd9/o44jmZ6X4U2nZQ== + dependencies: + "@chakra-ui/anatomy" "2.2.2" + "@chakra-ui/shared-utils" "2.0.5" + "@chakra-ui/theme-tools" "2.1.2" + +"@chakra-ui/toast@7.0.2": + version "7.0.2" + resolved "https://registry.yarnpkg.com/@chakra-ui/toast/-/toast-7.0.2.tgz#d1c396bbfced12e22b010899731fd8cc294d53ec" + integrity sha512-yvRP8jFKRs/YnkuE41BVTq9nB2v/KDRmje9u6dgDmE5+1bFt3bwjdf9gVbif4u5Ve7F7BGk5E093ARRVtvLvXA== + dependencies: + "@chakra-ui/alert" "2.2.2" + "@chakra-ui/close-button" "2.1.1" + "@chakra-ui/portal" "2.1.0" + "@chakra-ui/react-context" "2.1.0" + "@chakra-ui/react-use-timeout" "2.1.0" + "@chakra-ui/react-use-update-effect" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + "@chakra-ui/styled-system" "2.9.2" + "@chakra-ui/theme" "3.3.1" + +"@chakra-ui/tooltip@2.3.1": + version "2.3.1" + resolved "https://registry.yarnpkg.com/@chakra-ui/tooltip/-/tooltip-2.3.1.tgz#29fb8508a37bb6b20ab8dbb32bca6cd59b098796" + integrity sha512-Rh39GBn/bL4kZpuEMPPRwYNnccRCL+w9OqamWHIB3Qboxs6h8cOyXfIdGxjo72lvhu1QI/a4KFqkM3St+WfC0A== + dependencies: + "@chakra-ui/dom-utils" "2.1.0" + "@chakra-ui/popper" "3.1.0" + "@chakra-ui/portal" "2.1.0" + "@chakra-ui/react-types" "2.0.7" + "@chakra-ui/react-use-disclosure" "2.1.0" + "@chakra-ui/react-use-event-listener" "2.1.0" + "@chakra-ui/react-use-merge-refs" "2.1.0" + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/transition@2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/transition/-/transition-2.1.0.tgz#c8e95564f7ab356e78119780037bae5ad150c7b3" + integrity sha512-orkT6T/Dt+/+kVwJNy7zwJ+U2xAZ3EU7M3XCs45RBvUnZDr/u9vdmaM/3D/rOpmQJWgQBwKPJleUXrYWUagEDQ== + dependencies: + "@chakra-ui/shared-utils" "2.0.5" + +"@chakra-ui/utils@2.0.15": + version "2.0.15" + resolved "https://registry.yarnpkg.com/@chakra-ui/utils/-/utils-2.0.15.tgz#bd800b1cff30eb5a5e8c36fa039f49984b4c5e4a" + integrity sha512-El4+jL0WSaYYs+rJbuYFDbjmfCcfGDmRY95GO4xwzit6YAPZBLcR65rOEwLps+XWluZTy1xdMrusg/hW0c1aAA== + dependencies: + "@types/lodash.mergewith" "4.6.7" + css-box-model "1.2.1" + framesync "6.1.2" + lodash.mergewith "4.6.2" + +"@chakra-ui/visually-hidden@2.2.0": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@chakra-ui/visually-hidden/-/visually-hidden-2.2.0.tgz#9b0ecef8f01263ab808ba3bda7b36a0d91b4d5c1" + integrity sha512-KmKDg01SrQ7VbTD3+cPWf/UfpF5MSwm3v7MWi0n5t8HnnadT13MF0MJCDSXbBWnzLv1ZKJ6zlyAOeARWX+DpjQ== "@changesets/apply-release-plan@^7.0.4": version "7.0.4" @@ -2104,7 +2841,7 @@ resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.9.2.tgz#ff9221b9f58b4dfe61e619a7788734bd63f6898b" integrity sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g== -"@emotion/is-prop-valid@1.3.1", "@emotion/is-prop-valid@^1.1.0": +"@emotion/is-prop-valid@^1.1.0", "@emotion/is-prop-valid@^1.3.0": version "1.3.1" resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-1.3.1.tgz#8d5cf1132f836d7adbe42cf0b49df7816fc88240" integrity sha512-/ACwoqx7XQi9knQs/G0qKvv5teDMhD7bXYns9N/wM8ah8iNb8jZ2uNO0YOgiq2o2poIvVtJS2YALasQuMSQ7Kw== @@ -2130,17 +2867,6 @@ "@emotion/weak-memoize" "^0.4.0" hoist-non-react-statics "^3.3.1" -"@emotion/serialize@1.3.2": - version "1.3.2" - resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.3.2.tgz#e1c1a2e90708d5d85d81ccaee2dfeb3cc0cccf7a" - integrity sha512-grVnMvVPK9yUVE6rkKfAJlYZgo0cu3l9iMC77V7DW6E1DUIrU68pSEXRmFZFOFB1QFo57TncmOcvcbMDWsL4yA== - dependencies: - "@emotion/hash" "^0.9.2" - "@emotion/memoize" "^0.9.0" - "@emotion/unitless" "^0.10.0" - "@emotion/utils" "^1.4.1" - csstype "^3.0.2" - "@emotion/serialize@^1.3.3": version "1.3.3" resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-1.3.3.tgz#d291531005f17d704d0463a032fe679f376509e8" @@ -2157,6 +2883,18 @@ resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-1.4.0.tgz#c9299c34d248bc26e82563735f78953d2efca83c" integrity sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg== +"@emotion/styled@^11.13.5": + version "11.13.5" + resolved "https://registry.yarnpkg.com/@emotion/styled/-/styled-11.13.5.tgz#0fa6602227414c5e42cf267506e3c35bae655df9" + integrity sha512-gnOQ+nGLPvDXgIx119JqGalys64lhMdnNQA9TMxhDA4K0Hq5+++OE20Zs5GxiCV9r814xQ2K5WmtofSpHVW6BQ== + dependencies: + "@babel/runtime" "^7.18.3" + "@emotion/babel-plugin" "^11.13.5" + "@emotion/is-prop-valid" "^1.3.0" + "@emotion/serialize" "^1.3.3" + "@emotion/use-insertion-effect-with-fallbacks" "^1.1.0" + "@emotion/utils" "^1.4.2" + "@emotion/stylis@^0.8.4": version "0.8.5" resolved "https://registry.yarnpkg.com/@emotion/stylis/-/stylis-0.8.5.tgz#deacb389bd6ee77d1e7fcaccce9e16c5c7e78e04" @@ -2172,17 +2910,12 @@ resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.5.tgz#77211291c1900a700b8a78cfafda3160d76949ed" integrity sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg== -"@emotion/use-insertion-effect-with-fallbacks@1.1.0", "@emotion/use-insertion-effect-with-fallbacks@^1.1.0": +"@emotion/use-insertion-effect-with-fallbacks@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.1.0.tgz#1a818a0b2c481efba0cf34e5ab1e0cb2dcb9dfaf" integrity sha512-+wBOcIV5snwGgI2ya3u99D7/FJquOIniQT1IKyDsBmEgwvpxMNeS65Oib7OnE2d2aY+3BU4OiH+0Wchf8yk3Hw== -"@emotion/utils@1.4.1": - version "1.4.1" - resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.4.1.tgz#b3adbb43de12ee2149541c4f1337d2eb7774f0ad" - integrity sha512-BymCXzCG3r72VKJxaYVwOXATqXIZ85cuvg0YOUDxMGNrKc1DJRZk8MgV5wyXRyEayIMd4FuXJIUgTBXvDNW5cA== - -"@emotion/utils@^1.4.1", "@emotion/utils@^1.4.2": +"@emotion/utils@^1.4.2": version "1.4.2" resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-1.4.2.tgz#6df6c45881fcb1c412d6688a311a98b7f59c1b52" integrity sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA== @@ -3344,7 +4077,7 @@ dependencies: "@floating-ui/utils" "^0.2.8" -"@floating-ui/dom@1.6.12", "@floating-ui/dom@^1.0.0": +"@floating-ui/dom@^1.0.0": version "1.6.12" resolved "https://registry.yarnpkg.com/@floating-ui/dom/-/dom-1.6.12.tgz#6333dcb5a8ead3b2bf82f33d6bc410e95f54e556" integrity sha512-NP83c0HjokcGVEMeoStg317VD9W7eDlGK7457dMBANbKA6GJZdc7rjujdgqzTaz93jkGgc5P/jeWbaCHnMNc+w== @@ -3414,20 +4147,6 @@ resolved "https://registry.yarnpkg.com/@humanwhocodes/retry/-/retry-0.3.1.tgz#c72a5c76a9fbaf3488e231b13dc52c0da7bab42a" integrity sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA== -"@internationalized/date@3.5.6": - version "3.5.6" - resolved "https://registry.yarnpkg.com/@internationalized/date/-/date-3.5.6.tgz#0833c2fa75efb3573f4e3bf10e3895f1019e87dd" - integrity sha512-jLxQjefH9VI5P9UQuqB6qNKnvFt1Ky1TPIzHGsIlCi7sZZoMR8SdYbBGRvM0y+Jtb+ez4ieBzmiAUcpmPYpyOw== - dependencies: - "@swc/helpers" "^0.5.0" - -"@internationalized/number@3.5.4": - version "3.5.4" - resolved "https://registry.yarnpkg.com/@internationalized/number/-/number-3.5.4.tgz#db1c648fa191b28062c2f4fd81fac89777ad3e91" - integrity sha512-h9huwWjNqYyE2FXZZewWqmCdkw1HeFds5q4Siuoms3hUQC5iPJK3aBmkFZoDSLN4UD0Bl8G22L/NdHpeOr+/7A== - dependencies: - "@swc/helpers" "^0.5.0" - "@isaacs/cliui@^8.0.2": version "8.0.2" resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550" @@ -4135,11 +4854,6 @@ dependencies: esbuild "^0.14.14" -"@pandacss/is-valid-prop@0.41.0": - version "0.41.0" - resolved "https://registry.yarnpkg.com/@pandacss/is-valid-prop/-/is-valid-prop-0.41.0.tgz#4b82222639a096711d0601fb15f491ae5e084ff8" - integrity sha512-BE6h6CsJk14ugIRrsazJtN3fcg+KDFRat1Bs93YFKH6jd4DOb1yUyVvC70jKqPVvg70zEcV8acZ7VdcU5TLu+w== - "@paralleldrive/cuid2@2.2.2": version "2.2.2" resolved "https://registry.yarnpkg.com/@paralleldrive/cuid2/-/cuid2-2.2.2.tgz#7f91364d53b89e2c9cb9e02e8dd0f129e834455f" @@ -4829,7 +5543,7 @@ resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.25.tgz#f077fdc0b5d0078d30893396ff4827a13f99e817" integrity sha512-j7P6Rgr3mmtdkeDGTe0E/aYyWEWVtc5yFXtHCRHs28/jptDEWfaVOc5T7cblqy1XKPPfCxJc/8DwQ5YgLOZOVQ== -"@popperjs/core@^2.11.8": +"@popperjs/core@^2.11.8", "@popperjs/core@^2.9.3": version "2.11.8" resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.8.tgz#6b79032e760a0899cd4204710beede972a3a185f" integrity sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A== @@ -6109,6 +6823,18 @@ resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee" integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ== +"@types/lodash.mergewith@4.6.7": + version "4.6.7" + resolved "https://registry.yarnpkg.com/@types/lodash.mergewith/-/lodash.mergewith-4.6.7.tgz#eaa65aa5872abdd282f271eae447b115b2757212" + integrity sha512-3m+lkO5CLRRYU0fhGRp7zbsGi6+BZj0uTVSwvcKU+nSlhjA9/QRNfuSGnD2mX6hQA7ZbmcCkzk5h4ZYGOtk14A== + dependencies: + "@types/lodash" "*" + +"@types/lodash@*": + version "4.17.13" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.17.13.tgz#786e2d67cfd95e32862143abe7463a7f90c300eb" + integrity sha512-lfx+dftrEZcdBPczf9d0Qv0x+j/rfNCMuC6OcfXmO8gkfeNAY88PgKUbvG56whcN23gc27yenwF6oJZXGFpYxg== + "@types/mdast@^3.0.0": version "3.0.15" resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.15.tgz#49c524a263f30ffa28b71ae282f813ed000ab9f5" @@ -7844,691 +8570,22 @@ resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31" integrity sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ== -"@zag-js/accordion@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/accordion/-/accordion-0.77.1.tgz#6e51bf48bb138c8847202b8ad422c7de61858090" - integrity sha512-KEXFPZB+Z2NfdQLNDOZ5fbRzv++mIDmZdpOPjP0kur7asVhLEyhLtpBEfXKMdF1fZoYOeXT4R6loZ5fRXPfK+Q== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/anatomy@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/anatomy/-/anatomy-0.77.1.tgz#24394dacaa76e6dfcd08422018c7eef7bf886233" - integrity sha512-VMj+z4kco9zVKDEsabQDy8IYCqXdMqdZ2Z+n4IeEOV93oX7iG86vNHgZ7NXykN2jSR/Bka+LcGtAstaUvVw2dA== - -"@zag-js/aria-hidden@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/aria-hidden/-/aria-hidden-0.77.1.tgz#eb47da4395e37767166ecee97477d847582d0954" - integrity sha512-Nx8hYDXMsOfGxxLQcfL2pAo4UutE7IGdbYbacsnqbfJhg/vDyTkf4Uhy7HXvZAccGxtj5kb2WeCbtzh9lklwsQ== - dependencies: - aria-hidden "1.2.4" - -"@zag-js/auto-resize@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/auto-resize/-/auto-resize-0.77.1.tgz#8799a1984bee6b387d2da598ae11232991099b78" - integrity sha512-CIvUaxhwuqkpS/+Q816C531deN+RT8SRzDy3YfuvKRfGtEfRRTNuwk9P2dlo6MoinfORcjvX1y4EAaBjA/lsxw== - dependencies: - "@zag-js/dom-query" "0.77.1" - -"@zag-js/avatar@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/avatar/-/avatar-0.77.1.tgz#38d49785bbcbbb0a68c3eb568ad32d114cad2485" - integrity sha512-wERKUzjLCElAKk6CNsBe6U4tKZNQTr9AZKOQqbONWJr6wISy7Ftu5el0Yp0SbUxmwacfB9ghdHslTbaThz190g== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/carousel@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/carousel/-/carousel-0.77.1.tgz#3b6f1a33b8caa2092b7049be1688a0c1ff72d922" - integrity sha512-sSVzQ/ZUAmJrArvkwCz1z/er9zLg3HDsyFDPvIJIqDAqZNatmKAth0Gia8wuWnz5YV1YGsLS8OeHr1lXYWvLQQ== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/checkbox@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/checkbox/-/checkbox-0.77.1.tgz#2c1caf55185f20a0c9ba70c7c84d518a9dd145e9" - integrity sha512-PbG/IU80tN1F5V+tGzyAN54p37kS4cQ8U/MUrtBxFOGMy3kGVeVMQCX/xo9fz6H49L+2+4XVzfkTHBDyNVuSxg== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/focus-visible" "0.77.1" - "@zag-js/form-utils" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/clipboard@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/clipboard/-/clipboard-0.77.1.tgz#d0113c272d86a498fdb321af35eb341b7031a1ca" - integrity sha512-1eLgL3dxEIMTZhe+0fkv05PX8i2LZprLf71hLqHPcjt/DDa/g4tDpoDG9HBgEM68s8mFLB3niwbfbpVgepcR6g== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/collapsible@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/collapsible/-/collapsible-0.77.1.tgz#c16b568a81ce8e87579cfafc2aedded3042607c2" - integrity sha512-Wh/PJCEHdt0nzpo/HqwLXHN/nC6aYZXKlV7tztTPYzUOOF5/g1QiGE0ecQEX1tpKEHME+Ro3lwwI0vAh3L6Evg== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/collection@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/collection/-/collection-0.77.1.tgz#738d31135e58f613339b5c04e84e60d95df50534" - integrity sha512-YwdpSRy3yqFRLqOqNpkQJ6cVH3JS9MLhW+f4FKypfvz1tLLTpt/uMnKAOwoIVy+EjCuzeMwUtR7MQF/kK5y56A== - dependencies: - "@zag-js/utils" "0.77.1" - -"@zag-js/color-picker@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/color-picker/-/color-picker-0.77.1.tgz#77a8364bf23a6e8230169bdf070755fff6ec4e39" - integrity sha512-NV3g5J2zQmnv4jMMkKFlzhX8vvX7W6etQX0ZfaxUGKBFaGf/Vfdow0EEyurf+QqGkxGTWRI4rZncy5/K02n9Cg== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/color-utils" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dismissable" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/form-utils" "0.77.1" - "@zag-js/popper" "0.77.1" - "@zag-js/text-selection" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/color-utils@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/color-utils/-/color-utils-0.77.1.tgz#4843755dedf4e5bffd5e595f5c45cea3c9a4f122" - integrity sha512-6Z7zoAOQr3LprL6POV1gzA9tzzz4FHLtfo9ZqgN3SxbhFXj0xw1hhEB6COwJxqsNL9jqN2yhXBj3RBY89WsWzQ== - dependencies: - "@zag-js/numeric-range" "0.77.1" - -"@zag-js/combobox@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/combobox/-/combobox-0.77.1.tgz#5ee864274fe23d59a6991435d5d60cb2626ffe8b" - integrity sha512-uAT/ByipNCm0eNdPZJzBqqbSjtSeSHSAdSyki2puyLtl779G6vRZv44aKey+0LKxmTZYKD1neMl06dWwtdnA9w== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/aria-hidden" "0.77.1" - "@zag-js/collection" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dismissable" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/popper" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/core@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/core/-/core-0.77.1.tgz#9cc6c949c74578141c7efc8e3b4ebd28a8126510" - integrity sha512-tY5A/XayGdtiSutjQl4jBzoj2xdka8JD4JuzffsAT7aWJklbfiuIKc0R7dbAviRQ1vFe0Jvmrd3FZz85aJJfdg== - dependencies: - "@zag-js/store" "0.77.1" - "@zag-js/utils" "0.77.1" - klona "2.0.6" - -"@zag-js/date-picker@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/date-picker/-/date-picker-0.77.1.tgz#c64ef29fd682dfca7315badadfc485c5717845ea" - integrity sha512-Rci3u5YvpObAVbYKp5lUmWyvS0VFambjhZYc0avFp7MTHhRZErXKviq/q1wqvWWtfrAZKRuQrG5Rex7+E9zDMg== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/date-utils" "0.77.1" - "@zag-js/dismissable" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/form-utils" "0.77.1" - "@zag-js/live-region" "0.77.1" - "@zag-js/popper" "0.77.1" - "@zag-js/text-selection" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/date-utils@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/date-utils/-/date-utils-0.77.1.tgz#5dbf4ac182cef031d528d01a36db8daed71fe31c" - integrity sha512-lPYI76n/PO2LZ+PVqgKqLZfYvpNTwOdGdbBFSkwBS7eUvleEd2/oi7AE1jJaKMZ3+Bf/zy1lM5e4dlY09xRFQw== - -"@zag-js/dialog@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/dialog/-/dialog-0.77.1.tgz#5718e7527922d296d4d1c70a822769ec2028156b" - integrity sha512-RaJInIhlihpPUpWheweZPfcHgDv35xvsAG75JLQgGI9NU7seTrxL6I8ADugASPr4l77dBmdu6nhC5o9AeJNEYw== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/aria-hidden" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dismissable" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/remove-scroll" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - focus-trap "7.6.0" - -"@zag-js/dismissable@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/dismissable/-/dismissable-0.77.1.tgz#d426e5067db17e8a930ef9b56e84af17fb4e9c6e" - integrity sha512-S0u3NAyVuO2DQH+B1v+e/35BHw2jgnQ+2X+RfzpunNd5Iu1mZA3dekbxPbP8U24jguRuqQiI2WFvw3YMbno9vg== - dependencies: - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/interact-outside" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/dom-event@0.77.1", "@zag-js/dom-event@^0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/dom-event/-/dom-event-0.77.1.tgz#6deaa746b1b36ef8aa5c4b561e159ccb4a76e096" - integrity sha512-W5LYu/arBgHCGh3UYkkPclEYlDlZXbST+QPvma5pXv4pzkrFS0P189sLNEedE4hkIgkbIRwdaL6YJITbKD03cA== - dependencies: - "@zag-js/dom-query" "0.77.1" - "@zag-js/text-selection" "0.77.1" - "@zag-js/types" "0.77.1" - -"@zag-js/dom-query@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/dom-query/-/dom-query-0.77.1.tgz#e925151d312727ab7e02bb6249e24ec6c171da0f" - integrity sha512-hr+4lzx4wHqhunjMzAmNp7sma5K58o0ti1h5gXpei1puoeGs8epZfzjW/ZTsKyuVgH3+0f80YOC+oTK6rDAhcw== - -"@zag-js/editable@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/editable/-/editable-0.77.1.tgz#1f97d8b035091108a2eebe7afc58a794c7849aed" - integrity sha512-iSnamhmODF5LdcGkgnqQBkRP7AyfYL7mCjRY/69kQFcXtsK8psWJxQQZLDJTzylMxMHRM1EwS452NDIG0P3/6w== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/form-utils" "0.77.1" - "@zag-js/interact-outside" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/element-rect@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/element-rect/-/element-rect-0.77.1.tgz#f0400d2aae998079846505ae3d1bc433c9f22073" - integrity sha512-cHCzdtp30wrM+trYdv0kN9wqUqYc743/muob0gHanDvvbQv8TVZ/tABA6bksL/bWCXk50bm6jiAKV/7dPYdtCQ== - -"@zag-js/element-size@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/element-size/-/element-size-0.77.1.tgz#f7fda36c1fe51eb0de9ff32329bad182d668cfc0" - integrity sha512-USzS/Q10TW02vHmWKUQ1Fizy8cQ6Aco0IWVHaKkEdzmyCJPL+XZnm5Xe9B8nDpsLt9qgR5TblB0zqqr2EqmQkw== - -"@zag-js/file-upload@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/file-upload/-/file-upload-0.77.1.tgz#c1d621692a487e818da3a310bc1b92007197e76b" - integrity sha512-0MaVDnAuzsL4NO1gssRutuCacFqLql76uF4qaXt6GWygmGpLP24gVfcBeXaBD2HHRB3IZ70MQx8oBq91sNaYMQ== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/file-utils" "0.77.1" - "@zag-js/i18n-utils" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/file-utils@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/file-utils/-/file-utils-0.77.1.tgz#af57af398cb2fa90d661ef9515ff3d12a589afb0" - integrity sha512-lBGdjIdoETUdDlL5NxFtKdl5aSd9JvkokuNHTj1VJjBaW1KHQjzDNMJMgPabDyekQWcIOxNok33MhtiW3y3rNA== - dependencies: - "@zag-js/i18n-utils" "0.77.1" - -"@zag-js/focus-visible@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/focus-visible/-/focus-visible-0.77.1.tgz#01fccacf58e4a81d1d406af9091b6d7a33931f5d" - integrity sha512-hQgkYDxbFuiHvV/bFQGQ278s/WXX/M+7qwr9o4If3lSsIz1U5tfUl7vg7K8cNgr9l5tWpWlb7SeGZ0bqrZWNwA== - dependencies: - "@zag-js/dom-query" "0.77.1" - -"@zag-js/form-utils@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/form-utils/-/form-utils-0.77.1.tgz#fa918316b9e359dd2c5af31b3b88e1252aefd7de" - integrity sha512-1AVpIBtAelR4i6V8yJuhVGGAT9MeTbC86ckOH23GsH73QlvK+U55G2PckF0ClWeJ1AHw/vfy4OwibAULvv6cIg== - -"@zag-js/highlight-word@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/highlight-word/-/highlight-word-0.77.1.tgz#2df4f9ce2d1a8030d1f4f4c4a83ddecfee4ab6ea" - integrity sha512-71Ykri3NHAXUE689pPpAoQOxYhHGZAx0eGjpMH3ZAlmXlG5QXCAeGG3EiDY+REPY5egIkGz6woCWj0E4iKta9Q== - -"@zag-js/hover-card@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/hover-card/-/hover-card-0.77.1.tgz#dfe6384d5a4bfd31b8a8866407a76e4298ab8c06" - integrity sha512-3/pA79VSF4Z+57FD4hQt6UiSMNPL9OO1I0LryM7FhgHqgQ5HA+ICFYdgpoEwQXdYKkyhZ/LetfpXS5gw038+QQ== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dismissable" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/popper" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/i18n-utils@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/i18n-utils/-/i18n-utils-0.77.1.tgz#a4e65250d369f3ea8d5867af88fbdeafe47b690a" - integrity sha512-HJAaCXf6r8b72JajIEQmnekRX/7Dz2sBMrAqpvIV6dpMDjCVcyow8WgfDqE46ipdNLi2XL1lgwaW3h5ckYEL+Q== - dependencies: - "@zag-js/dom-query" "0.77.1" - -"@zag-js/interact-outside@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/interact-outside/-/interact-outside-0.77.1.tgz#69b4f4044dc948afa1a23f7a6b1ce4dc24c3836f" - integrity sha512-q5GhN4CPtYy/YXh8Fv8VCofuYpQ0D2X6r+/gscf4C/5QhXka8q4RwhJXjXnv+7b3jvTTjtXovZ9RqWdNw5rEcg== - dependencies: - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/live-region@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/live-region/-/live-region-0.77.1.tgz#452155a6e8d365927e8c9e95b7b4e5e1f4c249e1" - integrity sha512-NqTJWRfolf343X7NeDbaFDeC96lSlAAI1BO3ALV8cRIcEO+XF7iW1/8Cdyi2mEXaCvENv7OoBR8pRxD72RqN1g== - -"@zag-js/menu@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/menu/-/menu-0.77.1.tgz#84e5e188cd6a7765b8c7666790201538ac34d4f6" - integrity sha512-NZ4YfiBWpByF98IaSOwASRZHCRIyj/Xbut3F2bTtoIsG+qQYEbQ4g3qXbmkjJC1GM7AmyiI54ZlKqoNn9wGZ7w== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dismissable" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/popper" "0.77.1" - "@zag-js/rect-utils" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/number-input@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/number-input/-/number-input-0.77.1.tgz#ef87a284598566e12868d59fc3ca6d6acb663e11" - integrity sha512-/1fUh0Jrg/Lzc5ilRIsNo2/k7LUm8nXfxogef6yVADPxROUImrRfS1wQaf79L+8vibDyKGRxyPBgEcVjHX1Gaw== - dependencies: - "@internationalized/number" "3.5.4" - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/form-utils" "0.77.1" - "@zag-js/number-utils" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/number-utils@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/number-utils/-/number-utils-0.77.1.tgz#481870cb3399ab55c88b8508f2ce0b2fd5aed2e4" - integrity sha512-liP+TsEWP4GtjaaNihYe4MmLkFfI8I2TpDDnPlyo0tnCZLd1/+rNvcuU7lwVck7OOL4NX8uuRnSBP58toRKv6A== - -"@zag-js/numeric-range@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/numeric-range/-/numeric-range-0.77.1.tgz#f111171b222783d1f2f9999b01d8bc60a901014d" - integrity sha512-ny75qTNaebomkeWUI7X86MSE7c77/Ek8Oi6wNY6Til6YugaLCm2I5P9BO25sGcYj1w3FeUz2uCxRkPMtnxamrg== - -"@zag-js/pagination@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/pagination/-/pagination-0.77.1.tgz#363b8cbf90ef79e4b935ffb8fa7b05ae630db09b" - integrity sha512-/Ud7kzamnp1F0w2ImerFjH3N9JOSS1JzPfd9BgvyfqkYXQCaUGMNBjiRidOFMTOBUW/ftwuPLZfW6f5FGLEjkQ== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/pin-input@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/pin-input/-/pin-input-0.77.1.tgz#73010f3613e00440a1f2a64617248948f083761f" - integrity sha512-PhSfQg72lx0dzIWwqcCNZ0nHJ0QgknzE2qL/wDcOQ/J/MYReRx2lX1+RzOmFheNLV+LrAIenXOTL4xCF+8Gfig== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/form-utils" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/popover@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/popover/-/popover-0.77.1.tgz#343daea5444268b74aaa9539315ebcc2e6567c21" - integrity sha512-9LVuyY8LjZf6v26Uvc3+uINy740cPgkcRWaiBiW8SunsyaLzcZIA6PSOIbE14XE2lEENIeBIOYbafuahM45gBQ== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/aria-hidden" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dismissable" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/popper" "0.77.1" - "@zag-js/remove-scroll" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - focus-trap "7.6.0" - -"@zag-js/popper@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/popper/-/popper-0.77.1.tgz#74b6c4e6e245e457b58e8dcdd3798d14e78f0b85" - integrity sha512-+DlFlRwuLyUiKl8i+efBYzC6UutcSt1ROHRgmGeB9zwSPvtn1pKlaUqSkxAY2lUDHU56RX8entF5RAeZ8mGwOg== - dependencies: - "@floating-ui/dom" "1.6.12" - "@zag-js/dom-query" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/presence@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/presence/-/presence-0.77.1.tgz#c51b891d0af711db04a887cb93379c2c7fd4535f" - integrity sha512-bVgkleWPZxO3FZCBeXHSL2lTJN8ZaIwRbH2MAwdk70VxNYVtWvo3KsbiNNGR/R5PwAPf45T0x99S+sOrByqMgA== - dependencies: - "@zag-js/core" "0.77.1" - "@zag-js/types" "0.77.1" - -"@zag-js/progress@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/progress/-/progress-0.77.1.tgz#e2aae1f25d61a8ea9aa5ebaed32172e9886b1782" - integrity sha512-wX7isF+6ExNm/ci9gMowtZa7cVMW7ss6VAqnwIpzTu8KBCo6fArD/e1EOpeUilrs1qiiDCLhDbZ07OKG0tRVSQ== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/qr-code@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/qr-code/-/qr-code-0.77.1.tgz#0810640d916e9a7c8b742c4d4f51702b848e2a8f" - integrity sha512-LY5GwSprGhB6wfY/3XFeENiSj+AKUmzSqR3k2KixAeE0H7amPFr27kbeEX33nCvzBE1ZAXFHPtTa3/rvneXk4A== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - proxy-memoize "3.0.1" - uqr "0.1.2" - -"@zag-js/radio-group@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/radio-group/-/radio-group-0.77.1.tgz#0958c848a6967164f2360e3337b4f193e16b46ac" - integrity sha512-d4KF4qaVSWO+OqdnZ4DWTNywdgRSaRENTE02nBIGwSwOVPFIP8kQCtd0W+0nVFcXR9e7BIncj1ckOzxZM/+BUA== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/element-rect" "0.77.1" - "@zag-js/focus-visible" "0.77.1" - "@zag-js/form-utils" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/rating-group@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/rating-group/-/rating-group-0.77.1.tgz#a0c1a9b442332997874f9879870f41ea23107ed8" - integrity sha512-cBkwCHxOJyCVHDUmKqKRcwDsoYL3kGtZ0WEviUAOVFHR2ZUm24lm7+1geuPrQcEXpSBmIXNbke/jyM0+haxSDQ== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/form-utils" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/react@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/react/-/react-0.77.1.tgz#70ef2099fabc7d0cf24668db9df691a4a838f1d3" - integrity sha512-clP04/bKty4FUh5oTCoQydEiMQt1TO1W7tZ+rq+H9eqstzpaHYbl/FScsioHXecl43jROdd3EPquI8TK3snlZw== - dependencies: - "@zag-js/core" "0.77.1" - "@zag-js/store" "0.77.1" - "@zag-js/types" "0.77.1" - proxy-compare "3.0.0" - -"@zag-js/rect-utils@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/rect-utils/-/rect-utils-0.77.1.tgz#e62859da0bd9a386a345a9749ba7856044d87c3b" - integrity sha512-AIT90ALk7yrpWu4dJTDOfWOxQNLeGDqbINt+3wz50nwVLMmF3KFG34RMPFwt1mwAYEhON4QD1JjedbL+dXfd7g== - -"@zag-js/remove-scroll@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/remove-scroll/-/remove-scroll-0.77.1.tgz#e07522c9d6f73ef4c20a67e6845414fc9cdf3d96" - integrity sha512-dqRl2sbghzyjQY/xngrllcq4/KvhDYKpP3OV13rFjHEJJnQNYfyRrRF5b2n6W6qZmsNr+xTL+OHk2qWl+BCMvA== - dependencies: - "@zag-js/dom-query" "0.77.1" - -"@zag-js/select@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/select/-/select-0.77.1.tgz#7aadf2c25f656323bdf647bfc669b988f579072e" - integrity sha512-aE+g4xDegGrsdlqDLALh84stwRJwQakNXSw2Rk+gP7BtFvrZ6cHizYvaZVHoVwSn/oNAozYk/eUQMYK1HOdNuw== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/collection" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dismissable" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/form-utils" "0.77.1" - "@zag-js/popper" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/signature-pad@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/signature-pad/-/signature-pad-0.77.1.tgz#fd00ce0be870b20214bd647a1defa7a15b5cfc55" - integrity sha512-B2muP6rhevuV27Y4A5hZt/5GR7WpaUSq7B7a/jAiYZmp8Tutmz1zRFsS9Zc9husESAhJyrtA1AkNDGQiYVau8g== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - perfect-freehand "^1.2.2" - -"@zag-js/slider@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/slider/-/slider-0.77.1.tgz#6e0ad726112430b74c441c75962d394a9f0a8615" - integrity sha512-AYcWiQquLyxOKsHreuw+KVf6MEOmBGYuq9qlXm62ZoI5OZIgxKUEw69P8IhP3afowXnrrhq8gnqgEj7W//dDSQ== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/element-size" "0.77.1" - "@zag-js/form-utils" "0.77.1" - "@zag-js/numeric-range" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/splitter@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/splitter/-/splitter-0.77.1.tgz#0c3f13815d03796e763be9b034f66519b2621aad" - integrity sha512-KaNM/3vHAdl2otVzu2G+Y24tqvAy0r3n1yLvU5lNIkDwlr+gwNWJy0cMOXf3DFokhI5ijMbtuux8dFT7Wmib+g== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/number-utils" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/steps@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/steps/-/steps-0.77.1.tgz#3b6d6db72c0a0cb3c62e587e7d3472e82f5b2ebd" - integrity sha512-CbVlWNQkHy+SRzTWTKd0sWvKXfg112ped6/I6ei/tSC4vqJdFSm9/QRXGvFiSy06wOoN3Oqlw93KlwbdpEhH+g== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/store@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/store/-/store-0.77.1.tgz#35af53b6142a6977205d76ffe0148fc93194e95a" - integrity sha512-qk9uuXehAiq9BG0Rhd6nGwYI1WiXa3KcFydxbiMnlGiET8/zAeNTw5biYW5riptAmZ6xiwVUNtzg0T58+3YIag== - dependencies: - proxy-compare "3.0.0" - -"@zag-js/switch@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/switch/-/switch-0.77.1.tgz#d2834f1a628875b02913c9ef9fac3fa6630d34f6" - integrity sha512-GbIdY+Ph3XZWISOCQ3/MM+tbq/EnyEGGs1falAlVmuaVfS1gGsa9p8NKjy2mlrE+Ho8aScZgSYZfzoZfFVcWDw== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/focus-visible" "0.77.1" - "@zag-js/form-utils" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/tabs@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/tabs/-/tabs-0.77.1.tgz#0c125e49f97528ce7ac7212e38f69ae7042c5bcc" - integrity sha512-YEL+Vyx2c6sp3qj3rgb9X81gBPOrCGke1OshZMkv6nUhmzVvajfAwKdwbTKSZ4PwLTPAkfyjd8t1MFdWdutCKg== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/element-rect" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/tags-input@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/tags-input/-/tags-input-0.77.1.tgz#b41d0ccb2547dd07e847263d6288c2c14c882c37" - integrity sha512-+N+vtfRDNzAngqT+zk5PwoXJafaIQWioEAEMvIJYn77DNZU+Vi0Du9T1O9/hDcI75/cPtdXCIE0oor+fWDHneA== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/auto-resize" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/form-utils" "0.77.1" - "@zag-js/interact-outside" "0.77.1" - "@zag-js/live-region" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/text-selection@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/text-selection/-/text-selection-0.77.1.tgz#b553d860f87627f113adc443053536bbcf61daf7" - integrity sha512-5bg4qvEQCQBTW7Ow4yuzumgt0fWWRSqRXaOr/27xDuyTgq7pCQzH5Yfg0pWoQGBMop9djrxN3Z1XrESbXJyZEA== - dependencies: - "@zag-js/dom-query" "0.77.1" - -"@zag-js/time-picker@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/time-picker/-/time-picker-0.77.1.tgz#78b4e874b4822267ee2c21bc4f1be7f4dbeba5fc" - integrity sha512-Dq7SD/CBv5qrknxx3t5b/cotmS6eZx5BCPkXQfKIC8jajdpSSLsWq891RSrEk7zTAGjx5iY1q3VSGT5EyPEIOQ== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dismissable" "0.77.1" - "@zag-js/dom-event" "^0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/popper" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/timer@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/timer/-/timer-0.77.1.tgz#d1a8c4ab6ae84045ba54b4f1fa16708c5f802a33" - integrity sha512-INSMVQYJCkvEgy4bvr0g+PUPvtetm0Zrh9wC29UqgbQKpdcsvFKI8yDu3Sm4Mk9dp0AkMhS2GhT92r+TeHLomg== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/toast@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/toast/-/toast-0.77.1.tgz#2ba8ae54b05ecbaf99c8ddda569d9b9e9d039f6b" - integrity sha512-ohaoox2TXf0NpC4W3mNKgjyZGg+Zz/+QeQBtglcIBLyr39o/pkrK3wHc27+twKciu4ZcWC5jucsR6lo9A12wbQ== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dismissable" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/toggle-group@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/toggle-group/-/toggle-group-0.77.1.tgz#0cf41229cd4e8a76d7e86a20053d44d3e451a20d" - integrity sha512-wQXUBClzBmPHL0jqTOXD78mmlIABObxgqHG3jMgutl/7TqPMk65jatR0piWxkAF8dn+Oav5HLIOaHFKR/m+RCw== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/tooltip@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/tooltip/-/tooltip-0.77.1.tgz#bf9cb075301a9c1ae756d609e1a5658a61c7743c" - integrity sha512-0Vu9rC9StV+QrXMsGiOOvGY3NIVqKQt1oh5AaFyIo/SglnJ2UvYB7c/ERMSyW/YoTi/Pv7+7kaZzitR2JGQ+Cw== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/focus-visible" "0.77.1" - "@zag-js/popper" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/tree-view@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/tree-view/-/tree-view-0.77.1.tgz#aa5f3701aedfb14de7d50ff2d7fa854b8ee6458a" - integrity sha512-3Otb+pVB7KFbCs4Xi4w6mU0sYz3z/+CaTQp3jN6VRNzUMSCVKRar/NuZbnmCExj+4iLUEvANrOlkneBr6stFpA== - dependencies: - "@zag-js/anatomy" "0.77.1" - "@zag-js/collection" "0.77.1" - "@zag-js/core" "0.77.1" - "@zag-js/dom-event" "0.77.1" - "@zag-js/dom-query" "0.77.1" - "@zag-js/types" "0.77.1" - "@zag-js/utils" "0.77.1" - -"@zag-js/types@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/types/-/types-0.77.1.tgz#c2c9a0747c49abcb26d73f2dd5c1bad2967a7c04" - integrity sha512-GtZKdiltPDxp19qmXa/L+a1ffL67bmSxAPlT/wVv2G7uLtL82GKKT86m2yaUqKq+VUE47kXjarj9pTcTrwTSVQ== - dependencies: - csstype "3.1.3" - -"@zag-js/utils@0.77.1": - version "0.77.1" - resolved "https://registry.yarnpkg.com/@zag-js/utils/-/utils-0.77.1.tgz#3c889da232703bd94bea527fd1c15775c6cefdfa" - integrity sha512-sYCRwWQlQeYuRUvuDX0ji6Dnt/Ld6bIbVXV7NtbHCpz/G0sOnVaHJLTOoIFt1KEIrm9QvDtj/JFJGNi9Jc1Bew== +"@zag-js/dom-query@0.16.0": + version "0.16.0" + resolved "https://registry.yarnpkg.com/@zag-js/dom-query/-/dom-query-0.16.0.tgz#bca46bcd78f78c900064478646d95f9781ed098e" + integrity sha512-Oqhd6+biWyKnhKwFFuZrrf6lxBz2tX2pRQe6grUnYwO6HJ8BcbqZomy2lpOdr+3itlaUqx+Ywj5E5ZZDr/LBfQ== + +"@zag-js/element-size@0.10.5": + version "0.10.5" + resolved "https://registry.yarnpkg.com/@zag-js/element-size/-/element-size-0.10.5.tgz#a24bad2eeb7e2c8709e32be5336e158e1a1a174f" + integrity sha512-uQre5IidULANvVkNOBQ1tfgwTQcGl4hliPSe69Fct1VfYb2Fd0jdAcGzqQgPhfrXFpR62MxLPB7erxJ/ngtL8w== + +"@zag-js/focus-visible@0.16.0": + version "0.16.0" + resolved "https://registry.yarnpkg.com/@zag-js/focus-visible/-/focus-visible-0.16.0.tgz#c9e53e3dbab0f2649d04a489bb379f5800f4f069" + integrity sha512-a7U/HSopvQbrDU4GLerpqiMcHKEkQkNPeDZJWz38cw/6Upunh41GjHetq5TB84hxyCaDzJ6q2nEdNoBQfC0FKA== + dependencies: + "@zag-js/dom-query" "0.16.0" "@zxing/text-encoding@0.9.0": version "0.9.0" @@ -8888,7 +8945,7 @@ argparse@^2.0.1: resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== -aria-hidden@1.2.4: +aria-hidden@^1.2.3: version "1.2.4" resolved "https://registry.yarnpkg.com/aria-hidden/-/aria-hidden-1.2.4.tgz#b78e383fdbc04d05762c78b4a25a501e736c4522" integrity sha512-y+CcFFwelSXpLZk/7fMB2mUbGtX9lKycf1MWJ7CaTIERyitVlyQx6C+sxcROU2BAJ24OiZyK+8wj2i8AlBoS3A== @@ -10045,6 +10102,11 @@ color-support@^1.1.3: resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== +color2k@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/color2k/-/color2k-2.0.3.tgz#a771244f6b6285541c82aa65ff0a0c624046e533" + integrity sha512-zW190nQTIoXcGCaU08DvVNFTmQhUpnJfVuAKfWqUQkflXKpaDdpaYoM0iluLS9lgJNHyBF58KKA2FBEwkD7wog== + colorette@^2.0.10, colorette@^2.0.20, colorette@^2.0.7: version "2.0.20" resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a" @@ -10169,6 +10231,11 @@ compression@^1.7.4: safe-buffer "5.1.2" vary "~1.1.2" +compute-scroll-into-view@3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/compute-scroll-into-view/-/compute-scroll-into-view-3.0.3.tgz#c418900a5c56e2b04b885b54995df164535962b1" + integrity sha512-nadqwNxghAGTamwIqQSG433W6OADZx2vCo3UXHNrzTRHK/htu+7+L0zhjEoaeaQVNAi3YgqWDv8+tzf0hRfR+A== + computeds@^0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/computeds/-/computeds-0.0.1.tgz#215b08a4ba3e08a11ff6eee5d6d8d7166a97ce2e" @@ -10302,7 +10369,7 @@ copy-anything@^2.0.1: dependencies: is-what "^3.14.1" -copy-to-clipboard@^3.3.3: +copy-to-clipboard@3.3.3, copy-to-clipboard@^3.3.3: version "3.3.3" resolved "https://registry.yarnpkg.com/copy-to-clipboard/-/copy-to-clipboard-3.3.3.tgz#55ac43a1db8ae639a4bd99511c148cdd1b83a1b0" integrity sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA== @@ -10508,6 +10575,13 @@ crypto-browserify@3.12.0, crypto-browserify@^3.11.0: randombytes "^2.0.0" randomfill "^1.0.3" +css-box-model@1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/css-box-model/-/css-box-model-1.2.1.tgz#59951d3b81fd6b2074a62d49444415b0d2b4d7c1" + integrity sha512-a7Vr4Q/kd/aw96bnJG332W9V9LkJO69JRcaCYDUqjp6/z0w6VcZjgAcTbgFxEPfBgdnAwlh3iwu+hLopa+flJw== + dependencies: + tiny-invariant "^1.0.6" + css-color-keywords@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/css-color-keywords/-/css-color-keywords-1.0.0.tgz#fea2616dc676b2962686b3af8dbdbe180b244e05" @@ -10608,7 +10682,7 @@ cssstyle@^2.3.0: dependencies: cssom "~0.3.6" -csstype@3.1.3, csstype@^3.0.2, csstype@^3.0.7, csstype@^3.1.3: +csstype@^3.0.2, csstype@^3.0.7, csstype@^3.1.2, csstype@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== @@ -10904,6 +10978,11 @@ detect-libc@^2.0.1: resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.3.tgz#f0cd503b40f9939b894697d19ad50895e30cf700" integrity sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw== +detect-node-es@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/detect-node-es/-/detect-node-es-1.1.0.tgz#163acdf643330caa0b4cd7c21e7ee7755d6fa493" + integrity sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ== + detect-node@^2.0.4: version "2.1.0" resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz#c9c70775a49c3d03bc2c06d9a73be550f978f8b1" @@ -12753,12 +12832,12 @@ flatted@^3.2.7, flatted@^3.2.9: resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.1.tgz#21db470729a6734d4997002f439cb308987f567a" integrity sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw== -focus-trap@7.6.0: - version "7.6.0" - resolved "https://registry.yarnpkg.com/focus-trap/-/focus-trap-7.6.0.tgz#7f3edab8135eaca92ab59b6e963eb5cc42ded715" - integrity sha512-1td0l3pMkWJLFipobUcGaf+5DTY4PLDDrcqoSaKP8ediO/CoWCCYk/fT/Y2A4e6TNB+Sh6clRJCjOPPnKoNHnQ== +focus-lock@^1.3.5: + version "1.3.5" + resolved "https://registry.yarnpkg.com/focus-lock/-/focus-lock-1.3.5.tgz#aa644576e5ec47d227b57eb14e1efb2abf33914c" + integrity sha512-QFaHbhv9WPUeLYBDe/PAuLKJ4Dd9OPvKs9xZBr3yLXnUrDNaVXKu2baDBXe3naPY30hgHYSsf2JW4jzas2mDEQ== dependencies: - tabbable "^6.2.0" + tslib "^2.0.3" follow-redirects@^1.0.0, follow-redirects@^1.14.0, follow-redirects@^1.15.6: version "1.15.6" @@ -12813,6 +12892,20 @@ fraction.js@^4.2.0: resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.3.7.tgz#06ca0085157e42fda7f9e726e79fefc4068840f7" integrity sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew== +framer-motion@^11.11.17: + version "11.11.17" + resolved "https://registry.yarnpkg.com/framer-motion/-/framer-motion-11.11.17.tgz#fff0fd26b9b5c16dc0cc7e450f9af7db13fb35d0" + integrity sha512-O8QzvoKiuzI5HSAHbcYuL6xU+ZLXbrH7C8Akaato4JzQbX2ULNeniqC2Vo5eiCtFktX9XsJ+7nUhxcl2E2IjpA== + dependencies: + tslib "^2.4.0" + +framesync@6.1.2: + version "6.1.2" + resolved "https://registry.yarnpkg.com/framesync/-/framesync-6.1.2.tgz#755eff2fb5b8f3b4d2b266dd18121b300aefea27" + integrity sha512-jBTqhX6KaQVDyus8muwZbBeGGP0XgujBRbQ7gM7BRdS3CadCZIHiawyzYLnafYcvZIh5j8WE7cxZKFn7dXhu9g== + dependencies: + tslib "2.4.0" + fresh@0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" @@ -12951,6 +13044,11 @@ get-intrinsic@^1.1.3, get-intrinsic@^1.2.1, get-intrinsic@^1.2.2, get-intrinsic@ has-symbols "^1.0.3" hasown "^2.0.0" +get-nonce@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/get-nonce/-/get-nonce-1.0.1.tgz#fdf3f0278073820d2ce9426c18f07481b1e0cdf3" + integrity sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q== + get-package-type@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" @@ -13767,6 +13865,13 @@ internal-slot@^1.0.4, internal-slot@^1.0.7: hasown "^2.0.0" side-channel "^1.0.4" +invariant@^2.2.4: + version "2.2.4" + resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" + integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== + dependencies: + loose-envify "^1.0.0" + ip-address@^9.0.5: version "9.0.5" resolved "https://registry.yarnpkg.com/ip-address/-/ip-address-9.0.5.tgz#117a960819b08780c3bd1f14ef3c1cc1d3f3ea5a" @@ -14735,7 +14840,7 @@ kleur@^4.0.3, kleur@^4.1.5: resolved "https://registry.yarnpkg.com/kleur/-/kleur-4.1.5.tgz#95106101795f7050c6c650f350c683febddb1780" integrity sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ== -klona@2.0.6, klona@^2.0.4: +klona@^2.0.4: version "2.0.6" resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.6.tgz#85bffbf819c03b2f53270412420a4555ef882e22" integrity sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA== @@ -15149,7 +15254,7 @@ lodash.merge@^4.6.2: resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== -lodash.mergewith@^4.6.2: +lodash.mergewith@4.6.2, lodash.mergewith@^4.6.2: version "4.6.2" resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.2.tgz#617121f89ac55f59047c7aec1ccd6654c6590f55" integrity sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ== @@ -15224,7 +15329,7 @@ longest-streak@^3.0.0: resolved "https://registry.yarnpkg.com/longest-streak/-/longest-streak-3.1.0.tgz#62fa67cd958742a1574af9f39866364102d90cd4" integrity sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g== -loose-envify@^1.1.0, loose-envify@^1.4.0: +loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== @@ -17196,11 +17301,6 @@ peek-stream@^1.1.0: duplexify "^3.5.0" through2 "^2.0.3" -perfect-freehand@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/perfect-freehand/-/perfect-freehand-1.2.2.tgz#292f65b72df0c7f57a89c4b346b50d7139014172" - integrity sha512-eh31l019WICQ03pkF3FSzHxB8n07ItqIQ++G5UV8JX0zVOXzgTGCqnRR0jJ2h9U8/2uW4W4mtGJELt9kEV0CFQ== - periscopic@^3.0.0, periscopic@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/periscopic/-/periscopic-3.1.0.tgz#7e9037bf51c5855bd33b48928828db4afa79d97a" @@ -17616,7 +17716,7 @@ promise-retry@^2.0.1: err-code "^2.0.2" retry "^0.12.0" -prop-types@^15.8.1: +prop-types@^15.6.2, prop-types@^15.8.1: version "15.8.1" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== @@ -17664,28 +17764,11 @@ proxy-compare@2.5.1: resolved "https://registry.yarnpkg.com/proxy-compare/-/proxy-compare-2.5.1.tgz#17818e33d1653fbac8c2ec31406bce8a2966f600" integrity sha512-oyfc0Tx87Cpwva5ZXezSp5V9vht1c7dZBhvuV/y3ctkgMVUmiAGDVeeB0dKhGSyT0v1ZTEQYpe/RXlBVBNuCLA== -proxy-compare@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/proxy-compare/-/proxy-compare-3.0.0.tgz#d99d719393c2fa1f1f29e4ba9e120b46bbcbc1fc" - integrity sha512-y44MCkgtZUCT9tZGuE278fB7PWVf7fRYy0vbRXAts2o5F0EfC4fIQrvQQGBJo1WJbFcVLXzApOscyJuZqHQc1w== - -proxy-compare@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/proxy-compare/-/proxy-compare-3.0.1.tgz#3262cff3a25a6dedeaa299f6cf2369d6f7588a94" - integrity sha512-V9plBAt3qjMlS1+nC8771KNf6oJ12gExvaxnNzN/9yVRLdTv/lc+oJlnSzrdYDAvBfTStPCoiaCOTmTs0adv7Q== - proxy-from-env@1.1.0, proxy-from-env@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== -proxy-memoize@3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/proxy-memoize/-/proxy-memoize-3.0.1.tgz#75eed518778b282abb0bc55e748995214b7f74a9" - integrity sha512-VDdG/VYtOgdGkWJx7y0o7p+zArSf2383Isci8C+BP3YXgMYDoPd3cCBjw0JdWb6YBb9sFiOPbAADDVTPJnh+9g== - dependencies: - proxy-compare "^3.0.0" - prr@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" @@ -17869,6 +17952,13 @@ raw-body@2.5.2: iconv-lite "0.4.24" unpipe "1.0.0" +react-clientside-effect@^1.2.6: + version "1.2.6" + resolved "https://registry.yarnpkg.com/react-clientside-effect/-/react-clientside-effect-1.2.6.tgz#29f9b14e944a376b03fb650eed2a754dd128ea3a" + integrity sha512-XGGGRQAKY+q25Lz9a/4EPqom7WRjz3z9R2k4jhVKA/puQFH/5Nt27vFZYql4m4NVNdUvX8PS3O7r/Zzm7cjUlg== + dependencies: + "@babel/runtime" "^7.12.13" + react-device-detect@^2.2.2: version "2.2.3" resolved "https://registry.yarnpkg.com/react-device-detect/-/react-device-detect-2.2.3.tgz#97a7ae767cdd004e7c3578260f48cf70c036e7ca" @@ -17889,6 +17979,23 @@ react-error-overlay@6.0.9: resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.9.tgz#3c743010c9359608c375ecd6bc76f35d93995b0a" integrity sha512-nQTTcUu+ATDbrSD1BZHr5kgSD4oF8OFjxun8uAaL8RwPBacGBNPf/yAuVVdx17N8XNzRDMrZ9XcKZHCjPW+9ew== +react-fast-compare@3.2.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-3.2.2.tgz#929a97a532304ce9fee4bcae44234f1ce2c21d49" + integrity sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ== + +react-focus-lock@^2.9.4: + version "2.13.2" + resolved "https://registry.yarnpkg.com/react-focus-lock/-/react-focus-lock-2.13.2.tgz#e1addac2f8b9550bc0581f3c416755ba0f81f5ef" + integrity sha512-T/7bsofxYqnod2xadvuwjGKHOoL5GH7/EIPI5UyEvaU/c2CcphvGI371opFtuY/SYdbMsNiuF4HsHQ50nA/TKQ== + dependencies: + "@babel/runtime" "^7.0.0" + focus-lock "^1.3.5" + prop-types "^15.6.2" + react-clientside-effect "^1.2.6" + use-callback-ref "^1.3.2" + use-sidecar "^1.1.2" + "react-is@^16.12.0 || ^17.0.0 || ^18.0.0", react-is@^18.0.0, react-is@^18.3.1: version "18.3.1" resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.3.1.tgz#e83557dc12eae63a99e003a46388b1dcbb44db7e" @@ -17914,6 +18021,25 @@ react-refresh@^0.9.0: resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.9.0.tgz#71863337adc3e5c2f8a6bfddd12ae3bfe32aafbf" integrity sha512-Gvzk7OZpiqKSkxsQvO/mbTN1poglhmAV7gR/DdIrRrSMXraRQQlfikRJOr3Nb9GTMPC5kof948Zy6jJZIFtDvQ== +react-remove-scroll-bar@^2.3.6: + version "2.3.6" + resolved "https://registry.yarnpkg.com/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.6.tgz#3e585e9d163be84a010180b18721e851ac81a29c" + integrity sha512-DtSYaao4mBmX+HDo5YWYdBWQwYIQQshUV/dVxFxK+KM26Wjwp1gZ6rv6OC3oujI6Bfu6Xyg3TwK533AQutsn/g== + dependencies: + react-style-singleton "^2.2.1" + tslib "^2.0.0" + +react-remove-scroll@^2.5.6: + version "2.6.0" + resolved "https://registry.yarnpkg.com/react-remove-scroll/-/react-remove-scroll-2.6.0.tgz#fb03a0845d7768a4f1519a99fdb84983b793dc07" + integrity sha512-I2U4JVEsQenxDAKaVa3VZ/JeJZe0/2DxPWL8Tj8yLKctQJQiZM52pn/GWFpSp8dftjM3pSAHVJZscAnC/y+ySQ== + dependencies: + react-remove-scroll-bar "^2.3.6" + react-style-singleton "^2.2.1" + tslib "^2.1.0" + use-callback-ref "^1.3.0" + use-sidecar "^1.1.2" + react-router-dom@6.25.0: version "6.25.0" resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-6.25.0.tgz#f46f98553e1b4b3bcd2e4bb1021e9144b02671bf" @@ -17937,6 +18063,15 @@ react-shallow-renderer@^16.15.0: object-assign "^4.1.1" react-is "^16.12.0 || ^17.0.0 || ^18.0.0" +react-style-singleton@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/react-style-singleton/-/react-style-singleton-2.2.1.tgz#f99e420492b2d8f34d38308ff660b60d0b1205b4" + integrity sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g== + dependencies: + get-nonce "^1.0.0" + invariant "^2.2.4" + tslib "^2.0.0" + react-test-renderer@^18.2.0: version "18.3.1" resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-18.3.1.tgz#e693608a1f96283400d4a3afead6893f958b80b4" @@ -19626,7 +19761,7 @@ system-architecture@^0.1.0: resolved "https://registry.yarnpkg.com/system-architecture/-/system-architecture-0.1.0.tgz#71012b3ac141427d97c67c56bc7921af6bff122d" integrity sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA== -tabbable@^6.0.0, tabbable@^6.2.0: +tabbable@^6.0.0: version "6.2.0" resolved "https://registry.yarnpkg.com/tabbable/-/tabbable-6.2.0.tgz#732fb62bc0175cfcec257330be187dcfba1f3b97" integrity sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew== @@ -19876,6 +20011,11 @@ tiny-glob@^0.2.9: globalyzer "0.1.0" globrex "^0.1.2" +tiny-invariant@^1.0.6: + version "1.3.3" + resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.3.3.tgz#46680b7a873a0d5d10005995eb90a70d74d60127" + integrity sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg== + tiny-types@1.22.0: version "1.22.0" resolved "https://registry.yarnpkg.com/tiny-types/-/tiny-types-1.22.0.tgz#8c6ed7b0333fda511d6022ab281ab740b82ea5f6" @@ -20679,7 +20819,7 @@ upper-case-first@^2.0.2: dependencies: tslib "^2.0.3" -uqr@0.1.2, uqr@^0.1.2: +uqr@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/uqr/-/uqr-0.1.2.tgz#5c6cd5dcff9581f9bb35b982cb89e2c483a41d7d" integrity sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA== @@ -20715,6 +20855,21 @@ url@^0.11.0: punycode "^1.4.1" qs "^6.12.3" +use-callback-ref@^1.3.0, use-callback-ref@^1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/use-callback-ref/-/use-callback-ref-1.3.2.tgz#6134c7f6ff76e2be0b56c809b17a650c942b1693" + integrity sha512-elOQwe6Q8gqZgDA8mrh44qRTQqpIHDcZ3hXTLjBe1i4ph8XpNJnO+aQf3NaG+lriLopI4HMx9VjQLfPQ6vhnoA== + dependencies: + tslib "^2.0.0" + +use-sidecar@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/use-sidecar/-/use-sidecar-1.1.2.tgz#2f43126ba2d7d7e117aa5855e5d8f0276dfe73c2" + integrity sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw== + dependencies: + detect-node-es "^1.1.0" + tslib "^2.0.0" + use-sync-external-store@1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz#7dbefd6ef3fe4e767a0cf5d7287aacfb5846928a" From e75f5ec1d963110ee146df47b899227ef9d430c1 Mon Sep 17 00:00:00 2001 From: Fabio Rigamonti <73019897+fabiorigam@users.noreply.github.com> Date: Fri, 22 Nov 2024 15:31:38 +0100 Subject: [PATCH 06/16] feat: add ConnectModal --- .../src/app/pages/homepage.tsx | 8 +- packages/dapp-kit-react-privy/package.json | 1 + .../src/DAppKitPrivyProvider/assets/index.ts | 1 + .../src/DAppKitPrivyProvider/assets/svg.ts | 15 +++ .../components/ConnectModal/ConnectModal.tsx | 108 ++++++++++++++++++ .../components/ConnectModal/index.ts | 1 + .../components/GoogleLogo/GoogleLogo.tsx | 22 ++++ .../components/GoogleLogo/index.ts | 1 + .../components/TwitterLogo/TwitterLogo.tsx | 27 +++++ .../components/TwitterLogo/index.ts | 1 + .../DAppKitPrivyProvider/components/index.ts | 3 + .../src/DAppKitPrivyProvider/index.ts | 1 + packages/dapp-kit-react-privy/tsup.config.ts | 2 +- yarn.lock | 70 +++++++++++- 14 files changed, 254 insertions(+), 7 deletions(-) create mode 100644 packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/assets/svg.ts create mode 100644 packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/ConnectModal/ConnectModal.tsx create mode 100644 packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/ConnectModal/index.ts create mode 100644 packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/GoogleLogo/GoogleLogo.tsx create mode 100644 packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/GoogleLogo/index.ts create mode 100644 packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/TwitterLogo/TwitterLogo.tsx create mode 100644 packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/TwitterLogo/index.ts create mode 100644 packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/index.ts diff --git a/examples/sample-privy-next-app/src/app/pages/homepage.tsx b/examples/sample-privy-next-app/src/app/pages/homepage.tsx index a327f1e9..a05afa98 100644 --- a/examples/sample-privy-next-app/src/app/pages/homepage.tsx +++ b/examples/sample-privy-next-app/src/app/pages/homepage.tsx @@ -5,7 +5,7 @@ import { useDisclosure, Button } from "@chakra-ui/react"; import { useWalletAdapter, // dappKitModal, - // ConnectModal, + ConnectModal, } from "@vechain/dapp-kit-react-privy"; const HomePage = (): ReactElement => { @@ -13,7 +13,7 @@ const HomePage = (): ReactElement => { useWalletAdapter(); const { - //isOpen: isLoginOpen, + isOpen: isLoginOpen, onOpen: onLoginOpen, onClose: onLoginClose, } = useDisclosure(); @@ -27,11 +27,11 @@ const HomePage = (): ReactElement => { )} - {/**/} + /> ); }; diff --git a/packages/dapp-kit-react-privy/package.json b/packages/dapp-kit-react-privy/package.json index 84d285ff..c3485efb 100644 --- a/packages/dapp-kit-react-privy/package.json +++ b/packages/dapp-kit-react-privy/package.json @@ -22,6 +22,7 @@ "purge": "yarn clean && rm -rf node_modules" }, "dependencies": { + "@headlessui/react": "^2.2.0", "@privy-io/react-auth": "1.83.1", "@tanstack/react-query": "^5.61.0", "@vechain/dapp-kit-react": "*", diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/assets/index.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/assets/index.ts index 14cd28d7..15534457 100644 --- a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/assets/index.ts +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/assets/index.ts @@ -1 +1,2 @@ export * from "./abi"; +export * from "./svg"; diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/assets/svg.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/assets/svg.ts new file mode 100644 index 00000000..3fb3d890 --- /dev/null +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/assets/svg.ts @@ -0,0 +1,15 @@ +export const twitterSvg = { + dark: ` + + `, + light: ` + + `, +}; + +export const googleSvg = ` + + + + +`; diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/ConnectModal/ConnectModal.tsx b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/ConnectModal/ConnectModal.tsx new file mode 100644 index 00000000..e5cdb63e --- /dev/null +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/ConnectModal/ConnectModal.tsx @@ -0,0 +1,108 @@ +"use client"; + +import { Dialog, Transition } from "@headlessui/react"; +import { Fragment } from "react"; +import { usePrivy } from "@privy-io/react-auth"; +import { useWalletModal } from "@vechain/dapp-kit-react"; +import { TwitterLogo } from "../TwitterLogo"; +import { GoogleLogo } from "../GoogleLogo"; + +type Props = { + isOpen: boolean; + onClose: () => void; + logo?: string; +}; + +export const ConnectModal = ({ isOpen, onClose, logo }: Props) => { + const { login } = usePrivy(); + const { open } = useWalletModal(); + + return ( + + + +
+ + +
+
+ + + + Log in or sign up + + +
+ logo +
+ + + +
+

+ Select a login method +

+ +
+ + +
+
+
+
+
+
+
+
+ ); +}; diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/ConnectModal/index.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/ConnectModal/index.ts new file mode 100644 index 00000000..4d1202a0 --- /dev/null +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/ConnectModal/index.ts @@ -0,0 +1 @@ +export * from "./ConnectModal"; diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/GoogleLogo/GoogleLogo.tsx b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/GoogleLogo/GoogleLogo.tsx new file mode 100644 index 00000000..f9a146b1 --- /dev/null +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/GoogleLogo/GoogleLogo.tsx @@ -0,0 +1,22 @@ +import { Box, BoxProps } from "@chakra-ui/react"; +import React from "react"; +import { googleSvg } from "../../assets/svg"; + +type Props = { + boxSize?: string | number; +} & Omit; + +export const GoogleLogo: React.FC = ({ boxSize = "20px", ...props }) => { + return ( + + ); +}; diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/GoogleLogo/index.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/GoogleLogo/index.ts new file mode 100644 index 00000000..824d9757 --- /dev/null +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/GoogleLogo/index.ts @@ -0,0 +1 @@ +export * from "./GoogleLogo"; diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/TwitterLogo/TwitterLogo.tsx b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/TwitterLogo/TwitterLogo.tsx new file mode 100644 index 00000000..7b7e6488 --- /dev/null +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/TwitterLogo/TwitterLogo.tsx @@ -0,0 +1,27 @@ +import { Box, BoxProps } from "@chakra-ui/react"; +import React from "react"; +import { twitterSvg } from "../../assets/svg"; + +type Props = { + isDark?: boolean; + boxSize?: string | number; +} & Omit; + +export const TwitterLogo: React.FC = ({ + isDark, + boxSize = "20px", + ...props +}) => { + return ( + + ); +}; diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/TwitterLogo/index.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/TwitterLogo/index.ts new file mode 100644 index 00000000..bf490a26 --- /dev/null +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/TwitterLogo/index.ts @@ -0,0 +1 @@ +export * from "./TwitterLogo"; diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/index.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/index.ts new file mode 100644 index 00000000..701d3073 --- /dev/null +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/index.ts @@ -0,0 +1,3 @@ +export * from "./ConnectModal"; +export * from "./TwitterLogo"; +export * from "./GoogleLogo"; diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/index.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/index.ts index 40143b09..f48aee8f 100644 --- a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/index.ts +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/index.ts @@ -1,3 +1,4 @@ export * from "./assets"; +export * from "./components"; export * from "./hooks"; export * from './DAppKitPrivyProvider'; diff --git a/packages/dapp-kit-react-privy/tsup.config.ts b/packages/dapp-kit-react-privy/tsup.config.ts index 38224b1d..4761f545 100644 --- a/packages/dapp-kit-react-privy/tsup.config.ts +++ b/packages/dapp-kit-react-privy/tsup.config.ts @@ -9,5 +9,5 @@ export default defineConfig({ sourcemap: true, dts: true, clean: true, - external: ['react'], + external: ['react'] }); diff --git a/yarn.lock b/yarn.lock index 8ee0bb0c..5776d175 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4092,7 +4092,7 @@ dependencies: "@floating-ui/dom" "^1.0.0" -"@floating-ui/react@^0.26.22": +"@floating-ui/react@^0.26.16", "@floating-ui/react@^0.26.22": version "0.26.28" resolved "https://registry.yarnpkg.com/@floating-ui/react/-/react-0.26.28.tgz#93f44ebaeb02409312e9df9507e83aab4a8c0dc7" integrity sha512-yORQuuAtVpiRjpMhdc0wJj06b9JFjrYF4qp96j++v2NBpbi6SEGF7donUJ3TMieerQ6qVkAv1tgr7L4r5roTqw== @@ -4119,6 +4119,16 @@ "@tanstack/react-virtual" "^3.0.0-beta.60" client-only "^0.0.1" +"@headlessui/react@^2.2.0": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@headlessui/react/-/react-2.2.0.tgz#a8e32f0899862849a1ce1615fa280e7891431ab7" + integrity sha512-RzCEg+LXsuI7mHiSomsu/gBJSjpupm6A1qIZ5sWjd7JhARNlMiSA4kKfJpCKwU9tE+zMRterhhrP74PvfJrpXQ== + dependencies: + "@floating-ui/react" "^0.26.16" + "@react-aria/focus" "^3.17.1" + "@react-aria/interactions" "^3.21.3" + "@tanstack/react-virtual" "^3.8.1" + "@heroicons/react@^2.1.1": version "2.2.0" resolved "https://registry.yarnpkg.com/@heroicons/react/-/react-2.2.0.tgz#0c05124af50434a800773abec8d3af6a297d904b" @@ -5641,6 +5651,57 @@ web3-core "^1.8.0" web3-core-helpers "^1.8.0" +"@react-aria/focus@^3.17.1": + version "3.19.0" + resolved "https://registry.yarnpkg.com/@react-aria/focus/-/focus-3.19.0.tgz#82b9a5b83f023b943a7970df3d059f49d61df05d" + integrity sha512-hPF9EXoUQeQl1Y21/rbV2H4FdUR2v+4/I0/vB+8U3bT1CJ+1AFj1hc/rqx2DqEwDlEwOHN+E4+mRahQmlybq0A== + dependencies: + "@react-aria/interactions" "^3.22.5" + "@react-aria/utils" "^3.26.0" + "@react-types/shared" "^3.26.0" + "@swc/helpers" "^0.5.0" + clsx "^2.0.0" + +"@react-aria/interactions@^3.21.3", "@react-aria/interactions@^3.22.5": + version "3.22.5" + resolved "https://registry.yarnpkg.com/@react-aria/interactions/-/interactions-3.22.5.tgz#9cd8c93b8b6988f1d315d3efb450119d1432bbb8" + integrity sha512-kMwiAD9E0TQp+XNnOs13yVJghiy8ET8L0cbkeuTgNI96sOAp/63EJ1FSrDf17iD8sdjt41LafwX/dKXW9nCcLQ== + dependencies: + "@react-aria/ssr" "^3.9.7" + "@react-aria/utils" "^3.26.0" + "@react-types/shared" "^3.26.0" + "@swc/helpers" "^0.5.0" + +"@react-aria/ssr@^3.9.7": + version "3.9.7" + resolved "https://registry.yarnpkg.com/@react-aria/ssr/-/ssr-3.9.7.tgz#d89d129f7bbc5148657e6c952ac31c9353183770" + integrity sha512-GQygZaGlmYjmYM+tiNBA5C6acmiDWF52Nqd40bBp0Znk4M4hP+LTmI0lpI1BuKMw45T8RIhrAsICIfKwZvi2Gg== + dependencies: + "@swc/helpers" "^0.5.0" + +"@react-aria/utils@^3.26.0": + version "3.26.0" + resolved "https://registry.yarnpkg.com/@react-aria/utils/-/utils-3.26.0.tgz#833cbfa33e75d15835b757791b3f754432d2f948" + integrity sha512-LkZouGSjjQ0rEqo4XJosS4L3YC/zzQkfRM3KoqK6fUOmUJ9t0jQ09WjiF+uOoG9u+p30AVg3TrZRUWmoTS+koQ== + dependencies: + "@react-aria/ssr" "^3.9.7" + "@react-stately/utils" "^3.10.5" + "@react-types/shared" "^3.26.0" + "@swc/helpers" "^0.5.0" + clsx "^2.0.0" + +"@react-stately/utils@^3.10.5": + version "3.10.5" + resolved "https://registry.yarnpkg.com/@react-stately/utils/-/utils-3.10.5.tgz#47bb91cd5afd1bafe39353614e5e281b818ebccc" + integrity sha512-iMQSGcpaecghDIh3mZEpZfoFH3ExBwTtuBEcvZ2XnGzCgQjeYXcMdIUwAfVQLXFTdHUHGF6Gu6/dFrYsCzySBQ== + dependencies: + "@swc/helpers" "^0.5.0" + +"@react-types/shared@^3.26.0": + version "3.26.0" + resolved "https://registry.yarnpkg.com/@react-types/shared/-/shared-3.26.0.tgz#21a8b579f0097ee78de18e3e580421ced89e4c8c" + integrity sha512-6FuPqvhmjjlpEDLTiYx29IJCbCNWPlsyO+ZUmCUXzhUv2ttShOXfw8CmeHWHftT/b2KweAWuzqSlfeXPR76jpw== + "@remix-run/dev@^2.8.1": version "2.10.3" resolved "https://registry.yarnpkg.com/@remix-run/dev/-/dev-2.10.3.tgz#d98d18ec859099bad8552e69f6c01bf4d3faa03b" @@ -6428,7 +6489,7 @@ dependencies: "@tanstack/query-core" "5.60.6" -"@tanstack/react-virtual@^3.0.0-beta.60": +"@tanstack/react-virtual@^3.0.0-beta.60", "@tanstack/react-virtual@^3.8.1": version "3.10.9" resolved "https://registry.yarnpkg.com/@tanstack/react-virtual/-/react-virtual-3.10.9.tgz#40606b6dd8aba8e977f576d8f7df07f69ca63eea" integrity sha512-OXO2uBjFqA4Ibr2O3y0YMnkrRWGVNqcvHQXmGvMu6IK8chZl3PrDxFXdGZ2iZkSrKh3/qUYoFqYe+Rx23RoU0g== @@ -10062,6 +10123,11 @@ clsx@^1.2.1: resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.2.1.tgz#0ddc4a20a549b59c93a4116bb26f5294ca17dc12" integrity sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg== +clsx@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.1.1.tgz#eed397c9fd8bd882bfb18deab7102049a2f32999" + integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA== + code-red@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/code-red/-/code-red-1.0.4.tgz#59ba5c9d1d320a4ef795bc10a28bd42bfebe3e35" From c23330989ec83cc2ba28236ac9aed643a21f374c Mon Sep 17 00:00:00 2001 From: Fabio Rigamonti <73019897+fabiorigam@users.noreply.github.com> Date: Fri, 22 Nov 2024 16:51:30 +0100 Subject: [PATCH 07/16] fix: fix linter issue --- .../hooks/useSendAccountAbstractedTransaction.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useSendAccountAbstractedTransaction.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useSendAccountAbstractedTransaction.ts index ad933fce..4b82aa21 100644 --- a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useSendAccountAbstractedTransaction.ts +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useSendAccountAbstractedTransaction.ts @@ -51,7 +51,7 @@ export type TransactionData = { type UseSendAbstractedTransactionProps = { onTxConfirmed?: () => void | Promise; - showErrorToast?: boolean; + // showErrorToast?: boolean; }; /** @@ -87,7 +87,7 @@ export type UseSendTransactionReturnValue = { */ export const useSendAccountAbstractedTransaction = ({ onTxConfirmed, - showErrorToast = true, + // showErrorToast = true, }: UseSendAbstractedTransactionProps): UseSendTransactionReturnValue => { const { thor } = useConnex(); const account = useSmartAccount(); From 06c49d8de0418a6c1c125f77ae8076564aa90b78 Mon Sep 17 00:00:00 2001 From: Fabio Rigamonti <73019897+fabiorigam@users.noreply.github.com> Date: Mon, 25 Nov 2024 12:40:21 +0100 Subject: [PATCH 08/16] fix: improve modal --- .../components/ConnectModal/ConnectModal.tsx | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/ConnectModal/ConnectModal.tsx b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/ConnectModal/ConnectModal.tsx index e5cdb63e..29c6030d 100644 --- a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/ConnectModal/ConnectModal.tsx +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/ConnectModal/ConnectModal.tsx @@ -1,6 +1,6 @@ "use client"; -import { Dialog, Transition } from "@headlessui/react"; +import { Dialog, DialogPanel, DialogTitle, Transition, TransitionChild } from "@headlessui/react"; import { Fragment } from "react"; import { usePrivy } from "@privy-io/react-auth"; import { useWalletModal } from "@vechain/dapp-kit-react"; @@ -20,7 +20,7 @@ export const ConnectModal = ({ isOpen, onClose, logo }: Props) => { return ( - { leaveTo="opacity-0" >
- +
- { leaveFrom="opacity-100 scale-100" leaveTo="opacity-0 scale-95" > - - + Log in or sign up - +
{
- - + +
From 7f8a30278848f0f5d5fa7183ff431325e3a55900 Mon Sep 17 00:00:00 2001 From: Fabio Rigamonti <73019897+fabiorigam@users.noreply.github.com> Date: Mon, 25 Nov 2024 14:23:08 +0100 Subject: [PATCH 09/16] fix: refactor --- .../src/DAppKitPrivyProvider/hooks/useWalletAdapter.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useWalletAdapter.ts b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useWalletAdapter.ts index 8f9d473e..b2e459f1 100644 --- a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useWalletAdapter.ts +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/hooks/useWalletAdapter.ts @@ -30,9 +30,9 @@ export const useWalletAdapter = () => { // const dappKitModal = useWalletModal(); - const isConenctedWithDappKit = !!account; + const isConnectedWithDappKit = !!account; const isConnectedWithPrivy = authenticated && !!user; - const isConnected = isConenctedWithDappKit || isConnectedWithPrivy; + const isConnected = isConnectedWithDappKit || isConnectedWithPrivy; // a wallet is in this array if it is connected to Privy const amountOfSocialsConnectedToPrivy = @@ -52,7 +52,7 @@ export const useWalletAdapter = () => { const logoutAndDisconnect = async () => { // setUser(undefined); - if (isConenctedWithDappKit) { + if (isConnectedWithDappKit) { disconnect(); } else { logout(); @@ -62,7 +62,7 @@ export const useWalletAdapter = () => { return { isConnected, isConnectedWithPrivy, - isConenctedWithDappKit, + isConnectedWithDappKit, username, connectedAddress, // This is the connected address. abstractedAccount, From 8c1234babda3274a04ef5e021fe26f35acb95e0b Mon Sep 17 00:00:00 2001 From: Fabio Rigamonti <73019897+fabiorigam@users.noreply.github.com> Date: Mon, 25 Nov 2024 14:23:28 +0100 Subject: [PATCH 10/16] fix: refactor --- examples/sample-privy-next-app/src/app/pages/homepage.tsx | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/examples/sample-privy-next-app/src/app/pages/homepage.tsx b/examples/sample-privy-next-app/src/app/pages/homepage.tsx index a05afa98..d0483d57 100644 --- a/examples/sample-privy-next-app/src/app/pages/homepage.tsx +++ b/examples/sample-privy-next-app/src/app/pages/homepage.tsx @@ -9,7 +9,7 @@ import { } from "@vechain/dapp-kit-react-privy"; const HomePage = (): ReactElement => { - const { isConnected, connectedAddress, isPrivyLoading, logout } = + const { isConnected, connectedAddress, logout } = useWalletAdapter(); const { @@ -27,6 +27,12 @@ const HomePage = (): ReactElement => { )} + {isConnected && ( +
+

Connected Address: {connectedAddress}

+
+ )} + Date: Mon, 25 Nov 2024 15:17:41 +0100 Subject: [PATCH 11/16] fix: improve example UI --- .../sample-privy-next-app/src/app/globals.css | 50 +++++++------------ .../src/app/pages/homepage.tsx | 7 ++- 2 files changed, 22 insertions(+), 35 deletions(-) diff --git a/examples/sample-privy-next-app/src/app/globals.css b/examples/sample-privy-next-app/src/app/globals.css index 9147fcd3..371f0b6c 100644 --- a/examples/sample-privy-next-app/src/app/globals.css +++ b/examples/sample-privy-next-app/src/app/globals.css @@ -1,39 +1,23 @@ -:root { - --background: #ffffff; - --foreground: #171717; -} - -@media (prefers-color-scheme: dark) { - :root { - --background: #0a0a0a; - --foreground: #ededed; - } -} - -html, body { - max-width: 100vw; - overflow-x: hidden; -} - -body { - color: var(--foreground); - background: var(--background); + margin: 0; + display: flex; + height: 100vh; + align-items: center; + justify-content: center; } - -* { - box-sizing: border-box; - padding: 0; +h2 { margin: 0; } - -a { - color: inherit; - text-decoration: none; +.container { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + border: 1px solid #000; + border-radius: 20px; + padding: 20px; } - -@media (prefers-color-scheme: dark) { - html { - color-scheme: dark; - } +.label { + margin-top: 20px; + margin-bottom: 10px; } diff --git a/examples/sample-privy-next-app/src/app/pages/homepage.tsx b/examples/sample-privy-next-app/src/app/pages/homepage.tsx index d0483d57..e3985a24 100644 --- a/examples/sample-privy-next-app/src/app/pages/homepage.tsx +++ b/examples/sample-privy-next-app/src/app/pages/homepage.tsx @@ -9,7 +9,7 @@ import { } from "@vechain/dapp-kit-react-privy"; const HomePage = (): ReactElement => { - const { isConnected, connectedAddress, logout } = + const { isConnected, isConnectedWithPrivy, isConnectedWithDappKit, connectedAddress, abstractedAccount, logout } = useWalletAdapter(); const { @@ -20,7 +20,7 @@ const HomePage = (): ReactElement => { //const isInAppBrowser = window.vechain && window.vechain.isInAppBrowser; return ( -
+
{isConnected ? ( ) : ( @@ -29,6 +29,9 @@ const HomePage = (): ReactElement => { {isConnected && (
+

Connected with Privy: {isConnectedWithPrivy.toString()}

+

Connected with DappKit: {isConnectedWithDappKit.toString()}

+

Abstracted Account: {abstractedAccount.embeddedWallet?.address}

Connected Address: {connectedAddress}

)} From 64c3711778a826d77b65f0c3177b884361fbf490 Mon Sep 17 00:00:00 2001 From: Fabio Rigamonti <73019897+fabiorigam@users.noreply.github.com> Date: Tue, 26 Nov 2024 14:26:59 +0100 Subject: [PATCH 12/16] fix: improve modal --- packages/dapp-kit-react-privy/package.json | 1 - .../components/ConnectModal/ConnectModal.tsx | 213 ++++++++++-------- .../vechain-dapp-kit-react-privy-v1.1.1.tgz | Bin 0 -> 428809 bytes yarn.lock | 70 +----- 4 files changed, 127 insertions(+), 157 deletions(-) create mode 100644 packages/dapp-kit-react-privy/vechain-dapp-kit-react-privy-v1.1.1.tgz diff --git a/packages/dapp-kit-react-privy/package.json b/packages/dapp-kit-react-privy/package.json index c3485efb..84d285ff 100644 --- a/packages/dapp-kit-react-privy/package.json +++ b/packages/dapp-kit-react-privy/package.json @@ -22,7 +22,6 @@ "purge": "yarn clean && rm -rf node_modules" }, "dependencies": { - "@headlessui/react": "^2.2.0", "@privy-io/react-auth": "1.83.1", "@tanstack/react-query": "^5.61.0", "@vechain/dapp-kit-react": "*", diff --git a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/ConnectModal/ConnectModal.tsx b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/ConnectModal/ConnectModal.tsx index 29c6030d..4281b4ed 100644 --- a/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/ConnectModal/ConnectModal.tsx +++ b/packages/dapp-kit-react-privy/src/DAppKitPrivyProvider/components/ConnectModal/ConnectModal.tsx @@ -1,7 +1,5 @@ "use client"; -import { Dialog, DialogPanel, DialogTitle, Transition, TransitionChild } from "@headlessui/react"; -import { Fragment } from "react"; import { usePrivy } from "@privy-io/react-auth"; import { useWalletModal } from "@vechain/dapp-kit-react"; import { TwitterLogo } from "../TwitterLogo"; @@ -17,92 +15,131 @@ export const ConnectModal = ({ isOpen, onClose, logo }: Props) => { const { login } = usePrivy(); const { open } = useWalletModal(); - return ( - - - +
e.stopPropagation()} + > + - -
-

- Select a login method -

- -
- - -
-
- - -
+ ✕ + +

+ Log in or sign up +

+
+ logo +
+

+ Select a login method +

+
+ +
-
-
- ); +
+
+ ) : null; }; diff --git a/packages/dapp-kit-react-privy/vechain-dapp-kit-react-privy-v1.1.1.tgz b/packages/dapp-kit-react-privy/vechain-dapp-kit-react-privy-v1.1.1.tgz new file mode 100644 index 0000000000000000000000000000000000000000..739de19a453847e1e30f13b6478ab2ea26ec61e8 GIT binary patch literal 428809 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�Wpegs%et1I;XJ#?wzu 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

RLOUiO{ov{Y~Ic}wZ{j9o54Ziur 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