diff --git a/package.json b/package.json index 93966c4941b3d53597bf5f459c3b38bea053ed82..46f33e4fbb763dd468b00d56bf7a1d4fd9c50e76 100644 --- a/package.json +++ b/package.json @@ -22,10 +22,10 @@ "preview": "vite preview" }, "devDependencies": { - "@hiveio/wax": "1.27.6-rc7-250327130009", - "@hiveio/wax-signers-metamask": "1.27.6-rc7-250327130009", - "@hiveio/wax-signers-keychain": "1.27.6-rc7-250327130009", - "@hiveio/wax-signers-peakvault": "1.27.6-rc7-250327130009", + "@hiveio/wax": "1.27.6-rc7-250401111611", + "@hiveio/wax-signers-metamask": "1.27.6-rc7-250401111611", + "@hiveio/wax-signers-keychain": "1.27.6-rc7-250401111611", + "@hiveio/wax-signers-peakvault": "1.27.6-rc7-250401111611", "@mdi/js": "^7.4.47", "@metamask/providers": "^16.0.0", "@tanstack/vue-table": "^8.21.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ec3ee31cceb0825ef01a48c235de3ddb61f2e1b2..b89dd06bb869aa1fbc71b75a1a2bad123e74dce4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,17 +9,17 @@ importers: .: devDependencies: '@hiveio/wax': - specifier: 1.27.6-rc7-250327130009 - version: 1.27.6-rc7-250327130009 + specifier: 1.27.6-rc7-250401111611 + version: 1.27.6-rc7-250401111611 '@hiveio/wax-signers-keychain': - specifier: 1.27.6-rc7-250327130009 - version: 1.27.6-rc7-250327130009 + specifier: 1.27.6-rc7-250401111611 + version: 1.27.6-rc7-250401111611 '@hiveio/wax-signers-metamask': - specifier: 1.27.6-rc7-250327130009 - version: 1.27.6-rc7-250327130009(webextension-polyfill@0.12.0) + specifier: 1.27.6-rc7-250401111611 + version: 1.27.6-rc7-250401111611(webextension-polyfill@0.12.0) '@hiveio/wax-signers-peakvault': - specifier: 1.27.6-rc7-250327130009 - version: 1.27.6-rc7-250327130009 + specifier: 1.27.6-rc7-250401111611 + version: 1.27.6-rc7-250401111611 '@mdi/js': specifier: ^7.4.47 version: 7.4.47 @@ -110,21 +110,10 @@ packages: resolution: {integrity: sha512-Y3IR1cRnOxOCDvMmNiym7XpXQ93iGDDPHx+Zj+NM+rg0fBaShfQLkg+hKPaZCEvg5N/LeCo4+Rj/i3FuJsIQaw==} engines: {node: '>=6.9.0'} - '@colors/colors@1.6.0': - resolution: {integrity: sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==} - engines: {node: '>=0.1.90'} - '@cspotcode/source-map-support@0.8.1': resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} engines: {node: '>=12'} - '@dabh/diagnostics@2.0.3': - resolution: {integrity: sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==} - - '@ecency/bytebuffer@6.0.0': - resolution: {integrity: sha512-rGPjzD7a7cPtMHjpJEtLMt/RmqX8XK25tN5qjuu9iaDMK/Ril86CecU5DN/TXEMUQMY1p6b2cVvKBLTdFMr2DA==} - engines: {node: '>=6'} - '@esbuild/aix-ppc64@0.25.0': resolution: {integrity: sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ==} engines: {node: '>=18'} @@ -307,20 +296,17 @@ packages: resolution: {integrity: sha1-mPx0QrDh3NSPSOYGyR1SUyi3lyA=, tarball: https://gitlab.syncad.com/api/v4/projects/198/packages/npm/@hiveio/beekeeper/-/@hiveio/beekeeper-1.27.10-stable.250305202831.tgz} engines: {node: ^20.11 || >= 21.2} - '@hiveio/dhive@1.3.2': - resolution: {integrity: sha512-kJjp3TbpIlODxjJX4BWwvOf+cMxT8CFH/mNQ40RRjR2LP0a4baSWae1G+U/q/NtgjsIQz6Ja40tvnw6KF12I+g==, tarball: https://registry.npmjs.org/@hiveio/dhive/-/dhive-1.3.2.tgz} - - '@hiveio/wax-signers-keychain@1.27.6-rc7-250327130009': - resolution: {integrity: sha1-dPMWcEwkTHpkfw6CpLCgRWMQzqk=, tarball: https://gitlab.syncad.com/api/v4/projects/419/packages/npm/@hiveio/wax-signers-keychain/-/@hiveio/wax-signers-keychain-1.27.6-rc7-250327130009.tgz} + '@hiveio/wax-signers-keychain@1.27.6-rc7-250401111611': + resolution: {integrity: sha1-eAttZJIiCXWy98suv7ECzRpc4d0=, tarball: https://gitlab.syncad.com/api/v4/projects/419/packages/npm/@hiveio/wax-signers-keychain/-/@hiveio/wax-signers-keychain-1.27.6-rc7-250401111611.tgz} - '@hiveio/wax-signers-metamask@1.27.6-rc7-250327130009': - resolution: {integrity: sha1-q/h8ui797MbxdUdyH39/e6PmK5g=, tarball: https://gitlab.syncad.com/api/v4/projects/419/packages/npm/@hiveio/wax-signers-metamask/-/@hiveio/wax-signers-metamask-1.27.6-rc7-250327130009.tgz} + '@hiveio/wax-signers-metamask@1.27.6-rc7-250401111611': + resolution: {integrity: sha1-xTUHCoWou16CHit7a52zQQKM7QI=, tarball: https://gitlab.syncad.com/api/v4/projects/419/packages/npm/@hiveio/wax-signers-metamask/-/@hiveio/wax-signers-metamask-1.27.6-rc7-250401111611.tgz} - '@hiveio/wax-signers-peakvault@1.27.6-rc7-250327130009': - resolution: {integrity: sha1-EvUdZGnOxsszmQ2bZswDm6XABUk=, tarball: https://gitlab.syncad.com/api/v4/projects/419/packages/npm/@hiveio/wax-signers-peakvault/-/@hiveio/wax-signers-peakvault-1.27.6-rc7-250327130009.tgz} + '@hiveio/wax-signers-peakvault@1.27.6-rc7-250401111611': + resolution: {integrity: sha1-OwrgMr03keKZWmWA4YArkJeej0s=, tarball: https://gitlab.syncad.com/api/v4/projects/419/packages/npm/@hiveio/wax-signers-peakvault/-/@hiveio/wax-signers-peakvault-1.27.6-rc7-250401111611.tgz} - '@hiveio/wax@1.27.6-rc7-250327130009': - resolution: {integrity: sha1-p4VGRcxg8TiDmSAxogR3VMC/jsM=, tarball: https://gitlab.syncad.com/api/v4/projects/419/packages/npm/@hiveio/wax/-/@hiveio/wax-1.27.6-rc7-250327130009.tgz} + '@hiveio/wax@1.27.6-rc7-250401111611': + resolution: {integrity: sha1-/lMuAVk1XVwCam8FCCCccYrroYY=, tarball: https://gitlab.syncad.com/api/v4/projects/419/packages/npm/@hiveio/wax/-/@hiveio/wax-1.27.6-rc7-250401111611.tgz} engines: {node: ^20.11 || >= 21.2} '@internationalized/date@3.7.0': @@ -441,9 +427,6 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} - '@peakd/hive-wallet-sdk@0.2.3': - resolution: {integrity: sha512-vuhGhlEJKD4CLhE7tGtJH/52HjIj/2Ms5aH8MUB80G9kz9O/oPUQbISMTsycyvKIhBZ4I/bc4Y3My+FRkQg6nQ==} - '@pkgjs/parseargs@0.11.0': resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} @@ -666,15 +649,9 @@ packages: '@types/ms@2.1.0': resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==} - '@types/node@18.19.84': - resolution: {integrity: sha512-ACYy2HGcZPHxEeWTqowTF7dhXN+JU1o7Gr4b41klnn6pj2LD6rsiGqSZojMdk1Jh2ys3m76ap+ae1vvE4+5+vg==} - '@types/node@22.13.9': resolution: {integrity: sha512-acBjXdRJ3A6Pb3tqnw9HZmyR3Fiol3aGxRCK1x3d+6CDAMjl7I649wpSd+yNURCjbOUGu9tqtLKnTGxmK6CyGw==} - '@types/triple-beam@1.3.5': - resolution: {integrity: sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==} - '@types/web-bluetooth@0.0.21': resolution: {integrity: sha512-oIQLCGWtcFZy2JW77j9k8nHzAOpqMHLQejDA48XXMWH6tjCQHz5RCFz1bzsmROyL6PUm+LLnUiI4BCn221inxA==} @@ -815,16 +792,6 @@ packages: resolution: {integrity: sha512-y+CcFFwelSXpLZk/7fMB2mUbGtX9lKycf1MWJ7CaTIERyitVlyQx6C+sxcROU2BAJ24OiZyK+8wj2i8AlBoS3A==} engines: {node: '>=10'} - assert-plus@1.0.0: - resolution: {integrity: sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==} - engines: {node: '>=0.8'} - - async@3.2.6: - resolution: {integrity: sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==} - - asynckit@0.4.0: - resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} - autoprefixer@10.4.20: resolution: {integrity: sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==} engines: {node: ^10 || ^12 || >=14} @@ -832,43 +799,19 @@ packages: peerDependencies: postcss: ^8.1.0 - axios@0.27.2: - resolution: {integrity: sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==} - - axios@1.8.4: - resolution: {integrity: sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw==} - balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - base-x@3.0.11: - resolution: {integrity: sha512-xz7wQ8xDhdyP7tQxwdteLYeFfS68tSMNCZ/Y37WJ4bhGfKPpqEIlmIyueQHqOyoPhE6xNUqjzRr8ra0eF9VRvA==} - - base-x@4.0.1: - resolution: {integrity: sha512-uAZ8x6r6S3aUM9rbHGVOIsR15U/ZSc82b3ymnCPsT45Gk1DDvhDPdIgB5MrhirZWt+5K0EEPQH985kNqZgNPFw==} - base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} - bigi@1.4.2: - resolution: {integrity: sha512-ddkU+dFIuEIW8lE7ZwdIAf2UPoM90eaprg5m3YXAVVTmKlqV/9BX4A2M8BOK2yOq6/VgZFVhK6QAxJebhlbhzw==} - binary-extensions@2.3.0: resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} engines: {node: '>=8'} - bindings@1.5.0: - resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} - - bip66@1.1.5: - resolution: {integrity: sha512-nemMHz95EmS38a26XbbdxIYj5csHd3RMP3H5bwQknX0WYHF01qhpufP42mLOwVICuH2JmhIhXiWs89MfUGL7Xw==} - birpc@0.2.19: resolution: {integrity: sha512-5WeXXAvTmitV1RqJFppT5QtUiz2p1mRSYU000Jkft5ZUCLJIk4uQriYNO50HknxKwM6jd8utNc66K1qGIwwWBQ==} - bn.js@4.12.1: - resolution: {integrity: sha512-k8TVBiPkPJT9uHLdOKfFpqcfprwBFOAAXXozRubr7R7PfIuKvQlzcI4M0pALeqXN09vdaMbUdUj+pass+uULAg==} - brace-expansion@2.0.1: resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} @@ -876,40 +819,17 @@ packages: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} - brorand@1.1.0: - resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==} - - browserify-aes@1.2.0: - resolution: {integrity: sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==} - browserslist@4.24.4: resolution: {integrity: sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true - bs58@4.0.1: - resolution: {integrity: sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==} - - bs58@5.0.0: - resolution: {integrity: sha512-r+ihvQJvahgYT50JD05dyJNKlmmSlMoOGwn1lCcEzanPglg7TxYjioQUYehQ9mAR/+hOSd2jRc/Z2y5UxBymvQ==} - buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} - buffer-xor@1.0.3: - resolution: {integrity: sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==} - buffer@6.0.3: resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} - bytebuffer@5.0.1: - resolution: {integrity: sha512-IuzSdmADppkZ6DlpycMkm8l9zeEq16fWtLvunEwFiYciR/BHo4E8/xs5piFquG+Za8OWmMqHF8zuRviz2LHvRQ==} - engines: {node: '>=0.8'} - - call-bind-apply-helpers@1.0.2: - resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} - engines: {node: '>= 0.4'} - camelcase-css@2.0.1: resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} engines: {node: '>= 6'} @@ -921,10 +841,6 @@ packages: resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} engines: {node: '>= 8.10.0'} - cipher-base@1.0.6: - resolution: {integrity: sha512-3Ek9H3X6pj5TgenXYtNWdaBon1tgYCaebd+XPg0keyjEbEfkD4KkmAxkQ/i1vYvxdcT5nscLBfq9VJRmCBcFSw==} - engines: {node: '>= 0.10'} - class-variance-authority@0.7.1: resolution: {integrity: sha512-Ka+9Trutv7G8M6WT6SeiRWz792K5qEqIGEGzXKhAE6xOWAY6pPH8U+9IY3oCMv6kqTmLsv7Xh/2w2RigkePMsg==} @@ -932,32 +848,13 @@ packages: resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} engines: {node: '>=6'} - color-convert@1.9.3: - resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} - color-convert@2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} engines: {node: '>=7.0.0'} - color-name@1.1.3: - resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} - color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} - color-string@1.9.1: - resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} - - color@3.2.1: - resolution: {integrity: sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==} - - colorspace@1.1.4: - resolution: {integrity: sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==} - - combined-stream@1.0.8: - resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} - engines: {node: '>= 0.8'} - commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} @@ -969,39 +866,18 @@ packages: resolution: {integrity: sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==} engines: {node: '>=12.13'} - core-js@3.41.0: - resolution: {integrity: sha512-SJ4/EHwS36QMJd6h/Rg+GyR4A5xE0FSI3eZ+iBVpfqf1x0eTSg1smWLHrA+2jQThZSh97fmSgFSU8B61nxosxA==} - - core-util-is@1.0.2: - resolution: {integrity: sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==} - crc-32@1.2.2: resolution: {integrity: sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==} engines: {node: '>=0.8'} hasBin: true - create-hash@1.2.0: - resolution: {integrity: sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==} - - create-hmac@1.1.7: - resolution: {integrity: sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==} - create-require@1.1.1: resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} - cross-fetch@3.2.0: - resolution: {integrity: sha512-Q+xVJLoGOeIMXZmbUK4HYk+69cQH6LudR0Vu/pRm2YlU/hDV9CiS0gKUMaWY5f2NeUH9C1nV3bsTlCo0FsTV1Q==} - cross-spawn@7.0.6: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} - crypto-js@3.3.0: - resolution: {integrity: sha512-DIT51nX0dCfKltpRiXV+/TVZq+Qq2NgF4644+K7Ttnla7zEzqc+kjJyiB96BHNyUTBxyjzRcZYpUdZa+QAqi6Q==} - - crypto-js@4.2.0: - resolution: {integrity: sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==} - cssesc@3.0.0: resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} engines: {node: '>=4'} @@ -1025,10 +901,6 @@ packages: defu@6.1.4: resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==} - delayed-stream@1.0.0: - resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} - engines: {node: '>=0.4.0'} - detect-browser@5.3.0: resolution: {integrity: sha512-53rsFbGdwMwlF7qvCt0ypLM5V5/Mbl0szB7GPN8y9NCcbknYOeVVXdrXEq+90IwAfrrzt6Hd+u2E2ntakICU8w==} @@ -1042,55 +914,22 @@ packages: dlv@1.1.3: resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} - drbg.js@1.0.1: - resolution: {integrity: sha512-F4wZ06PvqxYLFEZKkFxTDcns9oFNk34hvmJSEwdzsxVQ8YI5YaxtACgQatkYgv2VI2CFkUd2Y+xosPQnHv809g==} - engines: {node: '>=0.10'} - - dunder-proto@1.0.1: - resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} - engines: {node: '>= 0.4'} - eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - ecurve@1.0.6: - resolution: {integrity: sha512-/BzEjNfiSuB7jIWKcS/z8FK9jNjmEWvUV2YZ4RLSmcDtP7Lq0m6FvDuSnJpBlDpGRpfRQeTLGLBI8H+kEv0r+w==} - electron-to-chromium@1.5.109: resolution: {integrity: sha512-AidaH9JETVRr9DIPGfp1kAarm/W6hRJTPuCnkF+2MqhF4KaAgRIcBc8nvjk+YMXZhwfISof/7WG29eS4iGxQLQ==} - elliptic@6.6.1: - resolution: {integrity: sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==} - emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} emoji-regex@9.2.2: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - enabled@2.0.0: - resolution: {integrity: sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==} - entities@4.5.0: resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} - es-define-property@1.0.1: - resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} - engines: {node: '>= 0.4'} - - es-errors@1.3.0: - resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} - engines: {node: '>= 0.4'} - - es-object-atoms@1.1.1: - resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} - engines: {node: '>= 0.4'} - - es-set-tostringtag@2.1.0: - resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} - engines: {node: '>= 0.4'} - esbuild@0.25.0: resolution: {integrity: sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw==} engines: {node: '>=18'} @@ -1114,9 +953,6 @@ packages: resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} engines: {node: '>=0.8.x'} - evp_bytestokey@1.0.3: - resolution: {integrity: sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==} - extension-port-stream@3.0.0: resolution: {integrity: sha512-an2S5quJMiy5bnZKEf6AkfH/7r8CzHvhchU40gxN+OM6HPhe7Z9T1FUychcf2M9PpPOO0Hf7BAEfJkw2TDIBDw==} engines: {node: '>=12.0.0'} @@ -1127,10 +963,6 @@ packages: peerDependencies: webextension-polyfill: ^0.10.0 || ^0.11.0 || ^0.12.0 - extsprintf@1.4.1: - resolution: {integrity: sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==} - engines: {'0': node >=0.6.0} - fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} @@ -1144,39 +976,14 @@ packages: fastq@1.19.1: resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} - fecha@4.2.3: - resolution: {integrity: sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==} - - file-stream-rotator@0.6.1: - resolution: {integrity: sha512-u+dBid4PvZw17PmDeRcNOtCP9CCK/9lRN2w+r1xIS7yOL9JFrIBKTvrYsxT4P0pGtThYTn++QS5ChHaUov3+zQ==} - - file-uri-to-path@1.0.0: - resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} - fill-range@7.1.1: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} - fn.name@1.1.0: - resolution: {integrity: sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==} - - follow-redirects@1.15.9: - resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==} - engines: {node: '>=4.0'} - peerDependencies: - debug: '*' - peerDependenciesMeta: - debug: - optional: true - foreground-child@3.3.1: resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} engines: {node: '>=14'} - form-data@4.0.2: - resolution: {integrity: sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w==} - engines: {node: '>= 6'} - fraction.js@4.3.7: resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} @@ -1188,14 +995,6 @@ packages: function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - get-intrinsic@1.3.0: - resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} - engines: {node: '>= 0.4'} - - get-proto@1.0.1: - resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} - engines: {node: '>= 0.4'} - get-tsconfig@4.10.0: resolution: {integrity: sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A==} @@ -1211,25 +1010,6 @@ packages: resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} hasBin: true - gopd@1.2.0: - resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} - engines: {node: '>= 0.4'} - - has-symbols@1.1.0: - resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} - engines: {node: '>= 0.4'} - - has-tostringtag@1.0.2: - resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} - engines: {node: '>= 0.4'} - - hash-base@3.1.0: - resolution: {integrity: sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==} - engines: {node: '>=4'} - - hash.js@1.1.7: - resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==} - hasown@2.0.2: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} @@ -1238,31 +1018,15 @@ packages: resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} hasBin: true - hive-keychain-commons@1.5.6: - resolution: {integrity: sha512-Bv8LqmHdGeB59AhCpkG/5k8C4Sg+GbrFPHwKEtXfuUHIVp23yMF8IabXfennECarCbUN5WE4dHWnTxaRRYE9VA==} - - hive-tx@https://codeload.github.com/hive-keychain/hive-tx-js/tar.gz/a12ac1ed54f1fa9f50a0f825e22f145a77a6a9c0: - resolution: {tarball: https://codeload.github.com/hive-keychain/hive-tx-js/tar.gz/a12ac1ed54f1fa9f50a0f825e22f145a77a6a9c0} - version: 4.2.2 - - hmac-drbg@1.0.1: - resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==} - hookable@5.5.3: resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==} - https@1.0.0: - resolution: {integrity: sha512-4EC57ddXrkaF0x83Oj8sM6SLQHAWXw90Skqu2M4AEWENZ3F02dFJE/GARA8igO79tcgYqGrD7ae4f5L3um2lgg==} - ieee754@1.2.1: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} inherits@2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} - is-arrayish@0.3.2: - resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} - is-binary-path@2.1.0: resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} engines: {node: '>=8'} @@ -1305,18 +1069,6 @@ packages: resolution: {integrity: sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==} hasBin: true - jsbi@3.2.5: - resolution: {integrity: sha512-aBE4n43IPvjaddScbvWRA2YlTzKEynHzu7MqOyTipdHucf/VxS63ViCjxYRg86M8Rxwbt/GfzHl1kKERkt45fQ==} - - jsbi@4.3.0: - resolution: {integrity: sha512-SnZNcinB4RIcnEyZqFPdGPVgrg2AcnykiBy0sHVJQKHYeaLUvi3Exj+iaPpLnFVkDPZIV4U0yvgC9/R4uEAZ9g==} - - keychain-sdk@0.8.5: - resolution: {integrity: sha512-8VLIgoCs1oBTmQ0EIPNV74oJIUF5xZ1EdTUADFxLPlYfdEXVj5f/JcZx2TZufR5v0FzNLaibcxqCg4DCaP6IIw==} - - kuler@2.0.0: - resolution: {integrity: sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==} - lilconfig@3.1.3: resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} engines: {node: '>=14'} @@ -1324,14 +1076,6 @@ packages: lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} - logform@2.7.0: - resolution: {integrity: sha512-TFYA4jnP7PVbmlBIfhlSe+WKxs9dklXMTEGcBCIvLhE/Tn3H6Gk1norupVW7m5Cnd4bLcr08AytbyV/xj7f/kQ==} - engines: {node: '>= 12.0.0'} - - long@3.2.0: - resolution: {integrity: sha512-ZYvPPOMqUwPoDsbJaR10iQJYnMuZhRTvHYl62ErLIEX7RgFlziSBUUvrt3OVfc47QlHHpzPZYP17g3Fv7oeJkg==} - engines: {node: '>=0.6'} - long@5.3.1: resolution: {integrity: sha512-ka87Jz3gcx/I7Hal94xaN2tZEOPoUOEVftkQqZx2EeQRN7LGdfLlI3FvZ+7WDplm+vK2Urx9ULrvSowtdCieng==} @@ -1349,13 +1093,6 @@ packages: make-error@1.3.6: resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} - math-intrinsics@1.1.0: - resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} - engines: {node: '>= 0.4'} - - md5.js@1.3.5: - resolution: {integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==} - merge2@1.4.1: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} @@ -1367,20 +1104,6 @@ packages: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} engines: {node: '>=8.6'} - mime-db@1.52.0: - resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} - engines: {node: '>= 0.6'} - - mime-types@2.1.35: - resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} - engines: {node: '>= 0.6'} - - minimalistic-assert@1.0.1: - resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} - - minimalistic-crypto-utils@1.0.1: - resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==} - minimatch@9.0.5: resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} engines: {node: '>=16 || 14 >=14.17'} @@ -1392,9 +1115,6 @@ packages: mitt@3.0.1: resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==} - moment@2.30.1: - resolution: {integrity: sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==} - ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} @@ -1404,30 +1124,11 @@ packages: mz@2.7.0: resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} - nan@2.22.2: - resolution: {integrity: sha512-DANghxFkS1plDdRsX0X9pm0Z6SJNN6gBdtXfanwoZ8hooC5gosGFSBGRYHUVPz1asKA/kMRqDRdHrluZ61SpBQ==} - nanoid@3.3.8: resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - node-addon-api@5.1.0: - resolution: {integrity: sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==} - - node-fetch@2.7.0: - resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} - engines: {node: 4.x || >=6.0.0} - peerDependencies: - encoding: ^0.1.0 - peerDependenciesMeta: - encoding: - optional: true - - node-gyp-build@4.8.4: - resolution: {integrity: sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==} - hasBin: true - node-releases@2.0.19: resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} @@ -1443,10 +1144,6 @@ packages: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} - object-hash@2.2.0: - resolution: {integrity: sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==} - engines: {node: '>= 6'} - object-hash@3.0.0: resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} engines: {node: '>= 6'} @@ -1457,9 +1154,6 @@ packages: once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} - one-time@1.0.0: - resolution: {integrity: sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==} - package-json-from-dist@1.0.1: resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} @@ -1553,9 +1247,6 @@ packages: resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} engines: {node: '>= 0.6.0'} - proxy-from-env@1.1.0: - resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} - queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} @@ -1594,9 +1285,6 @@ packages: rfdc@1.4.1: resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} - ripemd160@2.0.2: - resolution: {integrity: sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==} - rollup@4.34.9: resolution: {integrity: sha512-nF5XYqWWp9hx/LrpC8sZvvvmq0TeTjQgaZHYmAgwysT9nh8sWnZhBnM8ZyVbbJFIQBLwHDNoMqsBZBbUo4U8sQ==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} @@ -1608,27 +1296,11 @@ packages: safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - safe-stable-stringify@2.5.0: - resolution: {integrity: sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==} - engines: {node: '>=10'} - - secp256k1@3.8.1: - resolution: {integrity: sha512-tArjQw2P0RTdY7QmkNehgp6TVvQXq6ulIhxv8gaH6YubKG/wxxAoNKcbuXjDhybbc+b2Ihc7e0xxiGN744UIiQ==} - engines: {node: '>=4.0.0'} - - secp256k1@5.0.1: - resolution: {integrity: sha512-lDFs9AAIaWP9UCdtWrotXWWF9t8PWgQDcxqgAnpM9rMqxb3Oaq2J0thzPVSxBwdJgyQtkU/sYtFtbM1RSt/iYA==} - engines: {node: '>=18.0.0'} - semver@7.7.1: resolution: {integrity: sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==} engines: {node: '>=10'} hasBin: true - sha.js@2.4.11: - resolution: {integrity: sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==} - hasBin: true - shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} @@ -1641,9 +1313,6 @@ packages: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} - simple-swizzle@0.2.2: - resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} - source-map-js@1.2.1: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} @@ -1659,9 +1328,6 @@ packages: resolution: {integrity: sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==} engines: {node: '>=0.10.0'} - stack-trace@0.0.10: - resolution: {integrity: sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==} - string-width@4.2.3: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'} @@ -1712,9 +1378,6 @@ packages: engines: {node: '>=10'} hasBin: true - text-hex@1.0.0: - resolution: {integrity: sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==} - thenify-all@1.6.0: resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} engines: {node: '>=0.8'} @@ -1726,13 +1389,6 @@ packages: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} - tr46@0.0.3: - resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} - - triple-beam@1.4.1: - resolution: {integrity: sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==} - engines: {node: '>= 14.0.0'} - ts-interface-checker@0.1.13: resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} @@ -1763,9 +1419,6 @@ packages: engines: {node: '>=14.17'} hasBin: true - undici-types@5.26.5: - resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} - undici-types@6.20.0: resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==} @@ -1785,10 +1438,6 @@ packages: v8-compile-cache-lib@3.0.1: resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} - verror@1.10.1: - resolution: {integrity: sha512-veufcmxri4e3XSrT0xwfUR7kguIkaxBeosDg00yDWhk49wdwkSUrvvsm7nc75e1PUyvIeZj6nS8VQRYz2/S4Xg==} - engines: {node: '>=0.6.0'} - vite@6.2.0: resolution: {integrity: sha512-7dPxoo+WsT/64rDcwoOjk76XHj+TqNTIvHKcuMQ1k4/SeHDaQt5GFAeLYzrimZrMpn/O6DtdI03WUjdxuPM0oQ==} engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} @@ -1871,34 +1520,11 @@ packages: webextension-polyfill@0.12.0: resolution: {integrity: sha512-97TBmpoWJEE+3nFBQ4VocyCdLKfw54rFaJ6EVQYLBCXqCIpLSZkwGgASpv4oPt9gdKCJ80RJlcmNzNn008Ag6Q==} - webidl-conversions@3.0.1: - resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} - - whatwg-fetch@3.6.20: - resolution: {integrity: sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==} - - whatwg-url@5.0.0: - resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} - which@2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} engines: {node: '>= 8'} hasBin: true - winston-daily-rotate-file@4.7.1: - resolution: {integrity: sha512-7LGPiYGBPNyGHLn9z33i96zx/bd71pjBn9tqQzO3I4Tayv94WPmBNwKC7CO1wPHdP9uvu+Md/1nr6VSH9h0iaA==} - engines: {node: '>=8'} - peerDependencies: - winston: ^3 - - winston-transport@4.9.0: - resolution: {integrity: sha512-8drMJ4rkgaPo1Me4zD/3WLfI/zPdA9o2IipKODunnGDcuqbHwjsbB79ylv04LCGGzU0xQ6vTznOMpQGaLhhm6A==} - engines: {node: '>= 12.0.0'} - - winston@3.17.0: - resolution: {integrity: sha512-DLiFIXYC5fMPxaRg832S6F5mJYvePtmO5G9v9IgUFPhXm9/GkXarH/TUrBAVzhTCzAj9anE/+GjrgXp/54nOgw==} - engines: {node: '>= 12.0.0'} - wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} @@ -1936,23 +1562,11 @@ snapshots: '@babel/helper-string-parser': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 - '@colors/colors@1.6.0': {} - '@cspotcode/source-map-support@0.8.1': dependencies: '@jridgewell/trace-mapping': 0.3.9 optional: true - '@dabh/diagnostics@2.0.3': - dependencies: - colorspace: 1.1.4 - enabled: 2.0.0 - kuler: 2.0.0 - - '@ecency/bytebuffer@6.0.0': - dependencies: - long: 3.2.0 - '@esbuild/aix-ppc64@0.25.0': optional: true @@ -2070,46 +1684,23 @@ snapshots: '@hiveio/beekeeper@1.27.10-stable.250305202831': {} - '@hiveio/dhive@1.3.2': - dependencies: - '@ecency/bytebuffer': 6.0.0 - bigi: 1.4.2 - bs58: 4.0.1 - core-js: 3.41.0 - cross-fetch: 3.2.0 - ecurve: 1.0.6 - https: 1.0.0 - jsbi: 3.2.5 - node-fetch: 2.7.0 - ripemd160: 2.0.2 - secp256k1: 3.8.1 - verror: 1.10.1 - whatwg-fetch: 3.6.20 - transitivePeerDependencies: - - encoding - - '@hiveio/wax-signers-keychain@1.27.6-rc7-250327130009': + '@hiveio/wax-signers-keychain@1.27.6-rc7-250401111611': dependencies: - '@hiveio/wax': 1.27.6-rc7-250327130009 - keychain-sdk: 0.8.5 - transitivePeerDependencies: - - debug - - encoding + '@hiveio/wax': 1.27.6-rc7-250401111611 - '@hiveio/wax-signers-metamask@1.27.6-rc7-250327130009(webextension-polyfill@0.12.0)': + '@hiveio/wax-signers-metamask@1.27.6-rc7-250401111611(webextension-polyfill@0.12.0)': dependencies: - '@hiveio/wax': 1.27.6-rc7-250327130009 + '@hiveio/wax': 1.27.6-rc7-250401111611 '@metamask/providers': 21.0.0(webextension-polyfill@0.12.0) transitivePeerDependencies: - supports-color - webextension-polyfill - '@hiveio/wax-signers-peakvault@1.27.6-rc7-250327130009': + '@hiveio/wax-signers-peakvault@1.27.6-rc7-250401111611': dependencies: - '@hiveio/wax': 1.27.6-rc7-250327130009 - '@peakd/hive-wallet-sdk': 0.2.3 + '@hiveio/wax': 1.27.6-rc7-250401111611 - '@hiveio/wax@1.27.6-rc7-250327130009': + '@hiveio/wax@1.27.6-rc7-250401111611': dependencies: '@hiveio/beekeeper': 1.27.10-stable.250305202831 events: 3.3.0 @@ -2316,8 +1907,6 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.19.1 - '@peakd/hive-wallet-sdk@0.2.3': {} - '@pkgjs/parseargs@0.11.0': optional: true @@ -2476,16 +2065,10 @@ snapshots: '@types/ms@2.1.0': {} - '@types/node@18.19.84': - dependencies: - undici-types: 5.26.5 - '@types/node@22.13.9': dependencies: undici-types: 6.20.0 - '@types/triple-beam@1.3.5': {} - '@types/web-bluetooth@0.0.21': {} '@vitejs/plugin-vue@5.2.1(vite@6.2.0(@types/node@22.13.9)(jiti@1.21.7)(terser@5.39.0)(tsx@4.19.3)(yaml@2.7.0))(vue@3.5.13(typescript@5.7.3))': @@ -2659,12 +2242,6 @@ snapshots: dependencies: tslib: 2.8.1 - assert-plus@1.0.0: {} - - async@3.2.6: {} - - asynckit@0.4.0: {} - autoprefixer@10.4.20(postcss@8.5.3): dependencies: browserslist: 4.24.4 @@ -2675,47 +2252,14 @@ snapshots: postcss: 8.5.3 postcss-value-parser: 4.2.0 - axios@0.27.2: - dependencies: - follow-redirects: 1.15.9 - form-data: 4.0.2 - transitivePeerDependencies: - - debug - - axios@1.8.4: - dependencies: - follow-redirects: 1.15.9 - form-data: 4.0.2 - proxy-from-env: 1.1.0 - transitivePeerDependencies: - - debug - balanced-match@1.0.2: {} - base-x@3.0.11: - dependencies: - safe-buffer: 5.2.1 - - base-x@4.0.1: {} - base64-js@1.5.1: {} - bigi@1.4.2: {} - binary-extensions@2.3.0: {} - bindings@1.5.0: - dependencies: - file-uri-to-path: 1.0.0 - - bip66@1.1.5: - dependencies: - safe-buffer: 5.2.1 - birpc@0.2.19: {} - bn.js@4.12.1: {} - brace-expansion@2.0.1: dependencies: balanced-match: 1.0.2 @@ -2724,17 +2268,6 @@ snapshots: dependencies: fill-range: 7.1.1 - brorand@1.1.0: {} - - browserify-aes@1.2.0: - dependencies: - buffer-xor: 1.0.3 - cipher-base: 1.0.6 - create-hash: 1.2.0 - evp_bytestokey: 1.0.3 - inherits: 2.0.4 - safe-buffer: 5.2.1 - browserslist@4.24.4: dependencies: caniuse-lite: 1.0.30001701 @@ -2742,33 +2275,14 @@ snapshots: node-releases: 2.0.19 update-browserslist-db: 1.1.3(browserslist@4.24.4) - bs58@4.0.1: - dependencies: - base-x: 3.0.11 - - bs58@5.0.0: - dependencies: - base-x: 4.0.1 - buffer-from@1.1.2: optional: true - buffer-xor@1.0.3: {} - buffer@6.0.3: dependencies: base64-js: 1.5.1 ieee754: 1.2.1 - bytebuffer@5.0.1: - dependencies: - long: 3.2.0 - - call-bind-apply-helpers@1.0.2: - dependencies: - es-errors: 1.3.0 - function-bind: 1.1.2 - camelcase-css@2.0.1: {} caniuse-lite@1.0.30001701: {} @@ -2785,48 +2299,18 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - cipher-base@1.0.6: - dependencies: - inherits: 2.0.4 - safe-buffer: 5.2.1 - class-variance-authority@0.7.1: dependencies: clsx: 2.1.1 clsx@2.1.1: {} - color-convert@1.9.3: - dependencies: - color-name: 1.1.3 - color-convert@2.0.1: dependencies: color-name: 1.1.4 - color-name@1.1.3: {} - color-name@1.1.4: {} - color-string@1.9.1: - dependencies: - color-name: 1.1.4 - simple-swizzle: 0.2.2 - - color@3.2.1: - dependencies: - color-convert: 1.9.3 - color-string: 1.9.1 - - colorspace@1.1.4: - dependencies: - color: 3.2.1 - text-hex: 1.0.0 - - combined-stream@1.0.8: - dependencies: - delayed-stream: 1.0.0 - commander@2.20.3: optional: true @@ -2836,48 +2320,17 @@ snapshots: dependencies: is-what: 4.1.16 - core-js@3.41.0: {} - - core-util-is@1.0.2: {} - crc-32@1.2.2: {} - create-hash@1.2.0: - dependencies: - cipher-base: 1.0.6 - inherits: 2.0.4 - md5.js: 1.3.5 - ripemd160: 2.0.2 - sha.js: 2.4.11 - - create-hmac@1.1.7: - dependencies: - cipher-base: 1.0.6 - create-hash: 1.2.0 - inherits: 2.0.4 - ripemd160: 2.0.2 - safe-buffer: 5.2.1 - sha.js: 2.4.11 - create-require@1.1.1: optional: true - cross-fetch@3.2.0: - dependencies: - node-fetch: 2.7.0 - transitivePeerDependencies: - - encoding - cross-spawn@7.0.6: dependencies: path-key: 3.1.1 shebang-command: 2.0.0 which: 2.0.2 - crypto-js@3.3.0: {} - - crypto-js@4.2.0: {} - cssesc@3.0.0: {} csstype@3.1.3: {} @@ -2890,8 +2343,6 @@ snapshots: defu@6.1.4: {} - delayed-stream@1.0.0: {} - detect-browser@5.3.0: {} didyoumean@1.2.2: {} @@ -2901,60 +2352,16 @@ snapshots: dlv@1.1.3: {} - drbg.js@1.0.1: - dependencies: - browserify-aes: 1.2.0 - create-hash: 1.2.0 - create-hmac: 1.1.7 - - dunder-proto@1.0.1: - dependencies: - call-bind-apply-helpers: 1.0.2 - es-errors: 1.3.0 - gopd: 1.2.0 - eastasianwidth@0.2.0: {} - ecurve@1.0.6: - dependencies: - bigi: 1.4.2 - safe-buffer: 5.2.1 - electron-to-chromium@1.5.109: {} - elliptic@6.6.1: - dependencies: - bn.js: 4.12.1 - brorand: 1.1.0 - hash.js: 1.1.7 - hmac-drbg: 1.0.1 - inherits: 2.0.4 - minimalistic-assert: 1.0.1 - minimalistic-crypto-utils: 1.0.1 - emoji-regex@8.0.0: {} emoji-regex@9.2.2: {} - enabled@2.0.0: {} - entities@4.5.0: {} - es-define-property@1.0.1: {} - - es-errors@1.3.0: {} - - es-object-atoms@1.1.1: - dependencies: - es-errors: 1.3.0 - - es-set-tostringtag@2.1.0: - dependencies: - es-errors: 1.3.0 - get-intrinsic: 1.3.0 - has-tostringtag: 1.0.2 - hasown: 2.0.2 - esbuild@0.25.0: optionalDependencies: '@esbuild/aix-ppc64': 0.25.0 @@ -2998,11 +2405,6 @@ snapshots: events@3.3.0: {} - evp_bytestokey@1.0.3: - dependencies: - md5.js: 1.3.5 - safe-buffer: 5.2.1 - extension-port-stream@3.0.0: dependencies: readable-stream: 4.7.0 @@ -3013,8 +2415,6 @@ snapshots: readable-stream: 4.7.0 webextension-polyfill: 0.12.0 - extsprintf@1.4.1: {} - fast-deep-equal@3.1.3: {} fast-glob@3.3.3: @@ -3031,34 +2431,15 @@ snapshots: dependencies: reusify: 1.1.0 - fecha@4.2.3: {} - - file-stream-rotator@0.6.1: - dependencies: - moment: 2.30.1 - - file-uri-to-path@1.0.0: {} - fill-range@7.1.1: dependencies: to-regex-range: 5.0.1 - fn.name@1.1.0: {} - - follow-redirects@1.15.9: {} - foreground-child@3.3.1: dependencies: cross-spawn: 7.0.6 signal-exit: 4.1.0 - form-data@4.0.2: - dependencies: - asynckit: 0.4.0 - combined-stream: 1.0.8 - es-set-tostringtag: 2.1.0 - mime-types: 2.1.35 - fraction.js@4.3.7: {} fsevents@2.3.3: @@ -3066,24 +2447,6 @@ snapshots: function-bind@1.1.2: {} - get-intrinsic@1.3.0: - dependencies: - call-bind-apply-helpers: 1.0.2 - es-define-property: 1.0.1 - es-errors: 1.3.0 - es-object-atoms: 1.1.1 - function-bind: 1.1.2 - get-proto: 1.0.1 - gopd: 1.2.0 - has-symbols: 1.1.0 - hasown: 2.0.2 - math-intrinsics: 1.1.0 - - get-proto@1.0.1: - dependencies: - dunder-proto: 1.0.1 - es-object-atoms: 1.1.1 - get-tsconfig@4.10.0: dependencies: resolve-pkg-maps: 1.0.0 @@ -3106,72 +2469,18 @@ snapshots: package-json-from-dist: 1.0.1 path-scurry: 1.11.1 - gopd@1.2.0: {} - - has-symbols@1.1.0: {} - - has-tostringtag@1.0.2: - dependencies: - has-symbols: 1.1.0 - - hash-base@3.1.0: - dependencies: - inherits: 2.0.4 - readable-stream: 3.6.2 - safe-buffer: 5.2.1 - - hash.js@1.1.7: - dependencies: - inherits: 2.0.4 - minimalistic-assert: 1.0.1 - hasown@2.0.2: dependencies: function-bind: 1.1.2 he@1.2.0: {} - hive-keychain-commons@1.5.6: - dependencies: - '@hiveio/dhive': 1.3.2 - bs58: 4.0.1 - crypto-js: 4.2.0 - hive-tx: https://codeload.github.com/hive-keychain/hive-tx-js/tar.gz/a12ac1ed54f1fa9f50a0f825e22f145a77a6a9c0 - jsbi: 4.3.0 - moment: 2.30.1 - secp256k1: 5.0.1 - winston: 3.17.0 - winston-daily-rotate-file: 4.7.1(winston@3.17.0) - transitivePeerDependencies: - - debug - - encoding - - hive-tx@https://codeload.github.com/hive-keychain/hive-tx-js/tar.gz/a12ac1ed54f1fa9f50a0f825e22f145a77a6a9c0: - dependencies: - axios: 0.27.2 - bs58: 5.0.0 - bytebuffer: 5.0.1 - crypto-js: 3.3.0 - secp256k1: 3.8.1 - transitivePeerDependencies: - - debug - - hmac-drbg@1.0.1: - dependencies: - hash.js: 1.1.7 - minimalistic-assert: 1.0.1 - minimalistic-crypto-utils: 1.0.1 - hookable@5.5.3: {} - https@1.0.0: {} - ieee754@1.2.1: {} inherits@2.0.4: {} - is-arrayish@0.3.2: {} - is-binary-path@2.1.0: dependencies: binary-extensions: 2.3.0 @@ -3204,37 +2513,10 @@ snapshots: jiti@1.21.7: {} - jsbi@3.2.5: {} - - jsbi@4.3.0: {} - - keychain-sdk@0.8.5: - dependencies: - '@types/node': 18.19.84 - axios: 1.8.4 - hive-keychain-commons: 1.5.6 - uuid: 9.0.1 - transitivePeerDependencies: - - debug - - encoding - - kuler@2.0.0: {} - lilconfig@3.1.3: {} lines-and-columns@1.2.4: {} - logform@2.7.0: - dependencies: - '@colors/colors': 1.6.0 - '@types/triple-beam': 1.3.5 - fecha: 4.2.3 - ms: 2.1.3 - safe-stable-stringify: 2.5.0 - triple-beam: 1.4.1 - - long@3.2.0: {} - long@5.3.1: {} lru-cache@10.4.3: {} @@ -3250,14 +2532,6 @@ snapshots: make-error@1.3.6: optional: true - math-intrinsics@1.1.0: {} - - md5.js@1.3.5: - dependencies: - hash-base: 3.1.0 - inherits: 2.0.4 - safe-buffer: 5.2.1 - merge2@1.4.1: {} micro-ftch@0.3.1: {} @@ -3267,16 +2541,6 @@ snapshots: braces: 3.0.3 picomatch: 2.3.1 - mime-db@1.52.0: {} - - mime-types@2.1.35: - dependencies: - mime-db: 1.52.0 - - minimalistic-assert@1.0.1: {} - - minimalistic-crypto-utils@1.0.1: {} - minimatch@9.0.5: dependencies: brace-expansion: 2.0.1 @@ -3285,8 +2549,6 @@ snapshots: mitt@3.0.1: {} - moment@2.30.1: {} - ms@2.1.3: {} muggle-string@0.4.1: {} @@ -3297,18 +2559,8 @@ snapshots: object-assign: 4.1.1 thenify-all: 1.6.0 - nan@2.22.2: {} - nanoid@3.3.8: {} - node-addon-api@5.1.0: {} - - node-fetch@2.7.0: - dependencies: - whatwg-url: 5.0.0 - - node-gyp-build@4.8.4: {} - node-releases@2.0.19: {} normalize-path@3.0.0: {} @@ -3317,8 +2569,6 @@ snapshots: object-assign@4.1.1: {} - object-hash@2.2.0: {} - object-hash@3.0.0: {} ohash@1.1.6: {} @@ -3327,10 +2577,6 @@ snapshots: dependencies: wrappy: 1.0.2 - one-time@1.0.0: - dependencies: - fn.name: 1.1.0 - package-json-from-dist@1.0.1: {} path-browserify@1.0.1: {} @@ -3403,8 +2649,6 @@ snapshots: process@0.11.10: {} - proxy-from-env@1.1.0: {} - queue-microtask@1.2.3: {} read-cache@1.0.0: @@ -3459,11 +2703,6 @@ snapshots: rfdc@1.4.1: {} - ripemd160@2.0.2: - dependencies: - hash-base: 3.1.0 - inherits: 2.0.4 - rollup@4.34.9: dependencies: '@types/estree': 1.0.6 @@ -3495,32 +2734,8 @@ snapshots: safe-buffer@5.2.1: {} - safe-stable-stringify@2.5.0: {} - - secp256k1@3.8.1: - dependencies: - bindings: 1.5.0 - bip66: 1.1.5 - bn.js: 4.12.1 - create-hash: 1.2.0 - drbg.js: 1.0.1 - elliptic: 6.6.1 - nan: 2.22.2 - safe-buffer: 5.2.1 - - secp256k1@5.0.1: - dependencies: - elliptic: 6.6.1 - node-addon-api: 5.1.0 - node-gyp-build: 4.8.4 - semver@7.7.1: {} - sha.js@2.4.11: - dependencies: - inherits: 2.0.4 - safe-buffer: 5.2.1 - shebang-command@2.0.0: dependencies: shebang-regex: 3.0.0 @@ -3529,10 +2744,6 @@ snapshots: signal-exit@4.1.0: {} - simple-swizzle@0.2.2: - dependencies: - is-arrayish: 0.3.2 - source-map-js@1.2.1: {} source-map-support@0.5.21: @@ -3546,8 +2757,6 @@ snapshots: speakingurl@14.0.1: {} - stack-trace@0.0.10: {} - string-width@4.2.3: dependencies: emoji-regex: 8.0.0 @@ -3629,8 +2838,6 @@ snapshots: source-map-support: 0.5.21 optional: true - text-hex@1.0.0: {} - thenify-all@1.6.0: dependencies: thenify: 3.3.1 @@ -3643,10 +2850,6 @@ snapshots: dependencies: is-number: 7.0.0 - tr46@0.0.3: {} - - triple-beam@1.4.1: {} - ts-interface-checker@0.1.13: {} ts-node@10.9.2(@swc/core@1.3.78(@swc/helpers@0.5.15))(@types/node@22.13.9)(typescript@5.7.3): @@ -3682,8 +2885,6 @@ snapshots: typescript@5.7.3: {} - undici-types@5.26.5: {} - undici-types@6.20.0: {} update-browserslist-db@1.1.3(browserslist@4.24.4): @@ -3699,12 +2900,6 @@ snapshots: v8-compile-cache-lib@3.0.1: optional: true - verror@1.10.1: - dependencies: - assert-plus: 1.0.0 - core-util-is: 1.0.2 - extsprintf: 1.4.1 - vite@6.2.0(@types/node@22.13.9)(jiti@1.21.7)(terser@5.39.0)(tsx@4.19.3)(yaml@2.7.0): dependencies: esbuild: 0.25.0 @@ -3751,47 +2946,10 @@ snapshots: webextension-polyfill@0.12.0: {} - webidl-conversions@3.0.1: {} - - whatwg-fetch@3.6.20: {} - - whatwg-url@5.0.0: - dependencies: - tr46: 0.0.3 - webidl-conversions: 3.0.1 - which@2.0.2: dependencies: isexe: 2.0.0 - winston-daily-rotate-file@4.7.1(winston@3.17.0): - dependencies: - file-stream-rotator: 0.6.1 - object-hash: 2.2.0 - triple-beam: 1.4.1 - winston: 3.17.0 - winston-transport: 4.9.0 - - winston-transport@4.9.0: - dependencies: - logform: 2.7.0 - readable-stream: 3.6.2 - triple-beam: 1.4.1 - - winston@3.17.0: - dependencies: - '@colors/colors': 1.6.0 - '@dabh/diagnostics': 2.0.3 - async: 3.2.6 - is-stream: 2.0.1 - logform: 2.7.0 - one-time: 1.0.0 - readable-stream: 3.6.2 - safe-stable-stringify: 2.5.0 - stack-trace: 0.0.10 - triple-beam: 1.4.1 - winston-transport: 4.9.0 - wrap-ansi@7.0.0: dependencies: ansi-styles: 4.3.0 diff --git a/src/components/utilcards/ConfirmAccountUpdateCard.vue b/src/components/utilcards/ConfirmAccountUpdateCard.vue index 4edb948091290425d07ab41f6dc7361337e2ab23..a1e3f2d5be87bfdeb7067acf6bce73b089ca97ac 100644 --- a/src/components/utilcards/ConfirmAccountUpdateCard.vue +++ b/src/components/utilcards/ConfirmAccountUpdateCard.vue @@ -58,7 +58,7 @@ const updateAuthority = async() => { if (ownerKey.value) op.role("owner").add(ownerKey.value); tx.pushOperation(op); - await wallet.wallet!.signTransaction(tx, ownerKey.value ? "owner" : "active"); + await wallet.wallet!.signTransaction(tx); await wax.broadcast(tx); toast.success('Authority updated successfully!'); diff --git a/src/components/utilcards/ConfirmCreateAccountCard.vue b/src/components/utilcards/ConfirmCreateAccountCard.vue index 0760dda236a3b91dd8df7360b49cba1b85920b51..881850b6849dbec2c75f173c7a2b1402e35e7cf7 100644 --- a/src/components/utilcards/ConfirmCreateAccountCard.vue +++ b/src/components/utilcards/ConfirmCreateAccountCard.vue @@ -110,7 +110,7 @@ const createAccount = async() => { }); } } - await wallet.wallet!.signTransaction(tx, "active"); + await wallet.wallet!.signTransaction(tx); await wax.broadcast(tx); toast.success('Account created successfully!'); diff --git a/src/components/utilcards/MemoEncryptCard.vue b/src/components/utilcards/MemoEncryptCard.vue index d1a39555cf3cf2e8a80cb3989d2e845fb92a73ea..cea9b97d4ef2e680061de16511a4975230e980f8 100644 --- a/src/components/utilcards/MemoEncryptCard.vue +++ b/src/components/utilcards/MemoEncryptCard.vue @@ -69,9 +69,9 @@ const encryptOrDecrypt = async () => { if (!key) return; publicKey = key; } - outputData.value = await wallet.value!.encrypt(inputData.value, publicKey); + outputData.value = await wallet.value!.encryptData(inputData.value, publicKey); } else { - outputData.value = await wallet.value!.decrypt(inputData.value); + outputData.value = await wallet.value!.decryptData(inputData.value); } } catch (error) { toastError(`Error ${isEncrypt.value ? 'encrypting' : 'decrypting'} memo`, error); diff --git a/src/components/utilcards/SignTransactionCard.vue b/src/components/utilcards/SignTransactionCard.vue index 0c340a45f899ab516661ec255352f453877e55b0..268a926db0c8d5e9f185421e5364ad93d9c96aae 100644 --- a/src/components/utilcards/SignTransactionCard.vue +++ b/src/components/utilcards/SignTransactionCard.vue @@ -1,5 +1,6 @@ <script setup lang="ts"> import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card'; +import { Select, SelectContent, SelectGroup, SelectItem, SelectTrigger, SelectValue } from '@/components/ui/select'; import { mdiFileSign } from '@mdi/js'; import { computed, onMounted, ref } from 'vue'; import { Textarea } from '@/components/ui/textarea'; @@ -10,9 +11,13 @@ import type { ITransaction, TRole } from '@hiveio/wax/vite'; import { useRouter } from 'vue-router'; import { toastError } from '@/utils/parse-error'; import { toast } from 'vue-sonner'; +import { stringifyWalletName, useSettingsStore } from '@/stores/settings.store'; +const settingsStore = useSettingsStore(); const walletStore = useWalletStore(); +const selectedLevel = ref<TRole | null>('posting'); + const hasWallet = computed(() => walletStore.hasWallet); const wallet = computed(() => walletStore.wallet); @@ -49,16 +54,14 @@ const sign = async () => { return; } - const authorities = tx.requiredAuthorities; - let authorityLevel: TRole = 'posting'; - if (authorities.owner.size) - authorityLevel = 'owner'; - else if (authorities.active.size) - authorityLevel = 'active'; - - // TODO: Handle "other" authority + try { + await walletStore.createWalletFor(settingsStore.settings, selectedLevel.value as TRole); + } catch (error) { + toastError(`Could not create a wallet using ${stringifyWalletName(settingsStore.settings.wallet!)} - role ${selectedLevel.value}`, error); + return; + } - await wallet.value!.signTransaction(tx, authorityLevel); + await wallet.value!.signTransaction(tx); outputData.value = tx.toApi(); } catch (error) { @@ -68,6 +71,23 @@ const sign = async () => { } }; +const focusOutInputData = async () => { + try { + const wax = await getWax(); + + const tx = wax.createTransactionFromJson(inputData.value); + const auths = tx.requiredAuthorities; + for(const auth in auths) + if (auth === "other") + continue; + else + if (((auths as any)[auth] as Set<string>).size > 0) + selectedLevel.value = auth as TRole; + } catch { + return; + } +}; + const broadcast = async () => { try { isBroadcasting.value = true; @@ -101,7 +121,21 @@ onMounted(() => { <CardDescription class="mr-8">Use this module to sign the provided transaction</CardDescription> </CardHeader> <CardContent> - <Textarea v-model="inputData" placeholder="Transaction in API JSON form" class="my-4" height="200px"/> + <Textarea @focusout="focusOutInputData" v-model="inputData" placeholder="Transaction in API JSON form" class="my-4" height="200px"/> + <span class="text-foreground/70 my-4 text-sm">Sign using authority level:</span> + <Select class="my-4" v-model="selectedLevel"> + <SelectTrigger> + <SelectValue placeholder="Select authority level" /> + </SelectTrigger> + <SelectContent> + <SelectGroup> + <SelectItem value="memo">Memo</SelectItem> + <SelectItem value="posting">Posting</SelectItem> + <SelectItem value="active">Active</SelectItem> + <SelectItem value="owner">Owner</SelectItem> + </SelectGroup> + </SelectContent> + </Select> <div class="my-4 space-x-4"> <Button :disabled="!inputData || isBroadcasting" :loading="isLoading" @click="sign">Sign transaction</Button> </div> diff --git a/src/stores/metamask.store.ts b/src/stores/metamask.store.ts index 81bc758b554b102151c5f23e3c5252ed13bcbf10..b015fbdd1a9198116919cc0516ada8dc047f4d9d 100644 --- a/src/stores/metamask.store.ts +++ b/src/stores/metamask.store.ts @@ -1,15 +1,15 @@ import { defineStore } from "pinia" -import { connectMetamask, type MetamaskWallet } from "../utils/wallet/metamask" +import MetamaskProvider from "@hiveio/wax-signers-metamask"; export const useMetamaskStore = defineStore('metamask', { state: () => ({ - metamask: undefined as undefined | MetamaskWallet, + metamask: undefined as undefined | MetamaskProvider, performingOperation: false }), getters: { isConnected: state => !!state.metamask, isFlask: state => state.metamask?.isFlaskDetected, - isInstalled: state => state.metamask?.isInstalled + isInstalled: state => state.metamask?.isSnapInstalled }, actions: { async call(method: string, params: any) { @@ -29,7 +29,7 @@ export const useMetamaskStore = defineStore('metamask', { this.performingOperation = true; if (!this.metamask) - this.metamask = await connectMetamask(); + this.metamask = await MetamaskProvider.for(0); } finally { this.performingOperation = false; } diff --git a/src/stores/wallet.store.ts b/src/stores/wallet.store.ts index 72b87d658e093982f523e8292afc11de9db06867..fc281ca78cb296315bce18866782b6da726ec7a1 100644 --- a/src/stores/wallet.store.ts +++ b/src/stores/wallet.store.ts @@ -2,8 +2,9 @@ import { defineStore } from "pinia"; import type { Wallet } from "@/utils/wallet/abstraction"; import { type Settings, UsedWallet } from "./settings.store"; import { useMetamaskStore } from "./metamask.store"; -import { createKeychainWalletFor } from "@/utils/wallet/keychain"; -import { createPeakVaultWalletFor } from "@/utils/wallet/peakvault"; +import KeychainProvider from "@hiveio/wax-signers-keychain"; +import PeakVaultProvider from "@hiveio/wax-signers-peakvault"; +import type { TRole } from "@hiveio/wax/vite"; let walletRetrievalIntervalId: NodeJS.Timeout | undefined; @@ -57,7 +58,7 @@ export const useWalletStore = defineStore('wallet', { closeWalletSelectModal() { this.isWalletSelectModalOpen = false; }, - async createWalletFor(settings: Settings) { + async createWalletFor(settings: Settings, role: TRole = "posting") { switch(settings.wallet) { case UsedWallet.METAMASK: { const metamaskStore = useMetamaskStore(); @@ -69,12 +70,12 @@ export const useWalletStore = defineStore('wallet', { break; } case UsedWallet.KEYCHAIN: { - this.wallet = createKeychainWalletFor(settings.account!); + this.wallet = KeychainProvider.for(settings.account!, role); break; } case UsedWallet.PEAKVAULT: { - this.wallet = createPeakVaultWalletFor(settings.account!); + this.wallet = PeakVaultProvider.for(settings.account!, role); break; } diff --git a/src/utils/wallet/abstraction.ts b/src/utils/wallet/abstraction.ts index 3bc3841fcf64eded89f2654386c3ef03ae41fe46..db85d661871ef56ecbfdca029653b39bfeff34be 100644 --- a/src/utils/wallet/abstraction.ts +++ b/src/utils/wallet/abstraction.ts @@ -1,7 +1,3 @@ -import type { TPublicKey, TRole, ITransaction } from "@hiveio/wax/vite"; +import type { IOnlineSignatureProviderSignTransaction, IOnlineEncryptionProvider } from "@hiveio/wax/vite"; -export interface Wallet { - signTransaction(transaction: ITransaction, role: TRole): Promise<void>; - encrypt(buffer: string, recipient: TPublicKey): Promise<string>; - decrypt(buffer: string): Promise<string>; -} +export type Wallet = IOnlineEncryptionProvider & IOnlineSignatureProviderSignTransaction; diff --git a/src/utils/wallet/keychain/index.ts b/src/utils/wallet/keychain/index.ts deleted file mode 100644 index a025a684848c2d554f16a2e77b69a716fc619449..0000000000000000000000000000000000000000 --- a/src/utils/wallet/keychain/index.ts +++ /dev/null @@ -1,63 +0,0 @@ -import type { TRole, TPublicKey, TAccountName, ITransaction } from "@hiveio/wax/vite"; -import type { Wallet } from "../abstraction"; - -export const createKeychainWalletFor = (account: TAccountName) => { - return new KeychainWallet(account); -}; - -export class KeychainWallet implements Wallet { - public constructor( - private readonly account: TAccountName - ) {} - - public async signTransaction(transaction: ITransaction, role: TRole): Promise<void> { - const response = await new Promise((resolve, reject) => (window as any).hive_keychain.requestSignTx( - this.account, - JSON.parse(transaction.toLegacyApi()), - role, - (response: any) => { - if (response.error) - reject(response); - else - resolve(response); - } - )) as any; - - for(const signature of response.result.signatures) - transaction.sign(signature); - } - - public async encrypt(buffer: string, recipient: TPublicKey): Promise<string> { - const response = await new Promise((resolve, reject) => (window as any).hive_keychain.requestEncodeWithKeys( - this.account, - [recipient], - buffer.startsWith("#") ? buffer : `#${buffer}`, - "memo", - (response: any) => { - if (response.error) - reject(response); - else - resolve(response); - } - )) as any; - - return Object.values(response.result)[0] as string; - } - - public async decrypt(buffer: string): Promise<string> { - const response = await new Promise((resolve, reject) => (window as any).hive_keychain.requestVerifyKey( - this.account, - buffer, - "memo", - (response: any) => { - if (response.error) - reject(response); - else - resolve(response); - } - )) as any; - - - return response.result; - } -} diff --git a/src/utils/wallet/metamask/index.ts b/src/utils/wallet/metamask/index.ts deleted file mode 100644 index caca30c18163986601f12a6ca6389ed1be53bf74..0000000000000000000000000000000000000000 --- a/src/utils/wallet/metamask/index.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { getSnapsProvider } from "./provider"; -import { defaultSnapOrigin } from "./snap"; -import { MetamaskWallet, type MetamaskSnapsResponse } from "./metamask"; - -export type { MetamaskWallet }; - -/** - * Connects to the metamask provider and returns a {@link MetamaskWallet} instance. - */ -export const connectMetamask = async (): Promise<MetamaskWallet> => { - // Get the provider - this will be the MetaMask provider if it is installed - const provider = await getSnapsProvider(); - if (!provider) - throw new Error("Could not retrieve the provider. Make sure you have a wallet installed."); - - // Check for client version - detect if we are using metamask flask development version - const clientVersion = await provider.request({ method: 'web3_clientVersion' }); - const isFlaskDetected = (clientVersion as string[])?.includes('flask'); - - // Check if the snap is already installed - const snaps = await provider.request({ method: 'wallet_getSnaps' }) as MetamaskSnapsResponse; - const installedSnap = snaps[defaultSnapOrigin] ?? null; - - // Provide all of the data to our MetamaskWallet wrapper exposing the public API - return new MetamaskWallet(provider, isFlaskDetected, installedSnap); -}; diff --git a/src/utils/wallet/metamask/metamask.ts b/src/utils/wallet/metamask/metamask.ts deleted file mode 100644 index 76f1d05b7be73a07c9a8a71e1c3e3f94cab06f40..0000000000000000000000000000000000000000 --- a/src/utils/wallet/metamask/metamask.ts +++ /dev/null @@ -1,82 +0,0 @@ -import type { MetaMaskInpageProvider } from "@metamask/providers"; -import { defaultSnapOrigin, defaultSnapVersion, isLocalSnap } from "./snap"; -import type { Wallet } from "../abstraction"; -import type { TPublicKey, TRole, ITransaction } from "@hiveio/wax/vite"; - -export type MetamaskSnapData = { - permissionName: string; - id: string; - version: string; - initialPermissions: Record<string, unknown>; -}; -export type MetamaskSnapsResponse = Record<string, MetamaskSnapData>; - -export class MetamaskWallet implements Wallet { - /** - * Indicates either the snap is installed or not. - * If you want to install or reinstall the snap, use {@link installSnap} - */ - public get isInstalled() { - return !!this.currentSnap; - } - - /** - * Indicates either the snap is local or not. - */ - public readonly isLocalSnap = isLocalSnap(defaultSnapOrigin); - - public constructor( - private readonly provider: MetaMaskInpageProvider, - public readonly isFlaskDetected: boolean, - private currentSnap: MetamaskSnapData | null = null - ) {} - - private request(method: string, params?: any) { - return this.provider.request(params ? { method, params } : { method }); - } - - public async signTransaction(transaction: ITransaction, role: TRole): Promise<void> { - const response = await this.invokeSnap('hive_signTransaction', { transaction: transaction.toApi(), keys: [{ role }] }) as any; - - for(const signature of response.signatures) - transaction.sign(signature); - } - - public async encrypt(buffer: string, recipient: TPublicKey): Promise<string> { - const response = await this.invokeSnap('hive_encrypt', { buffer, firstKey: { role: "memo" as TRole }, secondKey: recipient }) as any; - - return response.buffer; - } - - public async decrypt(buffer: string): Promise<string> { - const response = await this.invokeSnap('hive_decrypt', { buffer, firstKey: { role: "memo" as TRole } }) as any; - - return response.buffer; - } - - /** - * Request the snap to be installed or reinstalled. - * You can check if snap is installed using {@link isInstalled} - */ - public async installSnap(version: string | undefined = defaultSnapVersion) { - const snaps = await this.request('wallet_requestSnaps', { - [defaultSnapOrigin]: (typeof version === "undefined" || version.length === 0) ? {} : { version } - }) as MetamaskSnapsResponse; - - this.currentSnap = snaps[defaultSnapOrigin]!; - } - - /** - * Invokes the snap method with the given parameters. - * In order to call this method, you should install the snap first, see {@link isInstalled} - */ - public async invokeSnap(method: string, params?: any) { - if (!this.isInstalled) - throw new Error('The snap is not installed'); - - return this.request('wallet_invokeSnap', { - snapId: defaultSnapOrigin, - request: params ? { method, params } : { method }, - }); - } -} diff --git a/src/utils/wallet/metamask/provider.ts b/src/utils/wallet/metamask/provider.ts deleted file mode 100644 index 6934ed26d8de4119ae88657f413fd6411cef35a2..0000000000000000000000000000000000000000 --- a/src/utils/wallet/metamask/provider.ts +++ /dev/null @@ -1,103 +0,0 @@ -import type { EIP6963AnnounceProviderEvent, MetaMaskInpageProvider } from '@metamask/providers'; - -/** - * Check if the current provider supports snaps by calling `wallet_getSnaps`. - * - * @param provider - The provider to use to check for snaps support. Defaults to - * `window.ethereum`. - * @returns True if the provider supports snaps, false otherwise. - */ -export const hasSnapsSupport = async(provider: MetaMaskInpageProvider) => { - try { - await provider.request({ - method: 'wallet_getSnaps', - }); - - return true; - } catch { - return false; - } -} - -/** - * Get a MetaMask provider using EIP6963. This will return the first provider - * reporting as MetaMask. If no provider is found after 500ms, this will - * return null instead. - * - * @returns A MetaMask provider if found, otherwise null. - */ -const getMetaMaskEIP6963Provider = () => { - return new Promise<MetaMaskInpageProvider | null>((rawResolve) => { - // Timeout looking for providers after 500ms - const timeout = setTimeout(() => { - resolve(null); - }, 500); - - /** - * Resolve the promise with a MetaMask provider and clean up. - * - * @param provider - A MetaMask provider if found, otherwise null. - */ - const resolve = (provider: MetaMaskInpageProvider | null) => { - window.removeEventListener( - 'eip6963:announceProvider', - onAnnounceProvider, - ); - clearTimeout(timeout); - rawResolve(provider); - } - - /** - * Listener for the EIP6963 announceProvider event. - * - * Resolves the promise if a MetaMask provider is found. - * - * @param event - The EIP6963 announceProvider event. - * @param event.detail - The details of the EIP6963 announceProvider event. - */ - function onAnnounceProvider({ detail }: EIP6963AnnounceProviderEvent) { - if (!detail) - return; - - const { info, provider } = detail; - - if (info.rdns.includes('io.metamask')) - resolve(provider); - } - - window.addEventListener('eip6963:announceProvider', onAnnounceProvider); - - window.dispatchEvent(new Event('eip6963:requestProvider')); - }); -} - -/** - * Get a provider that supports snaps. This will loop through all the detected - * providers and return the first one that supports snaps. - * - * @returns The provider, or `null` if no provider supports snaps. - */ -export const getSnapsProvider = async (): Promise<MetaMaskInpageProvider | null> => { - if (typeof window === 'undefined') - return null; - - if (window.ethereum && await hasSnapsSupport(window.ethereum)) - return window.ethereum; - - if (window.ethereum?.detected) - for (const provider of window.ethereum.detected) - if (await hasSnapsSupport(provider)) - return provider; - - if (window.ethereum?.providers) - for (const provider of window.ethereum.providers) - if (await hasSnapsSupport(provider)) - return provider; - - const eip6963Provider = await getMetaMaskEIP6963Provider(); - - if (eip6963Provider && (await hasSnapsSupport(eip6963Provider))) - return eip6963Provider; - - return null; -} diff --git a/src/utils/wallet/peakvault/index.ts b/src/utils/wallet/peakvault/index.ts deleted file mode 100644 index 6f885d84152d3e2082e4bd90d868713a4fc5ebff..0000000000000000000000000000000000000000 --- a/src/utils/wallet/peakvault/index.ts +++ /dev/null @@ -1,32 +0,0 @@ - -import type { TRole, TPublicKey, TAccountName, ITransaction } from "@hiveio/wax/vite"; -import type { Wallet } from "../abstraction"; - -export const createPeakVaultWalletFor = (account: TAccountName) => { - return new PeakVaultWallet(account); -}; - -export class PeakVaultWallet implements Wallet { - public constructor( - private readonly account: TAccountName - ) {} - - public async signTransaction(transaction: ITransaction, role: TRole): Promise<void> { - const response = await (window as any).peakvault.requestSignTx(this.account, JSON.parse(transaction.toLegacyApi()), role); - - for(const signature of response.result.signatures) - transaction.sign(signature); - } - - public async encrypt(buffer: string, recipient: TPublicKey): Promise<string> { - const response = await (window as any).peakvault.requestEncodeWithKeys(this.account, "memo", [recipient], buffer.startsWith("#") ? buffer : `#${buffer}`); - - return response.result[0]; - } - - public async decrypt(buffer: string): Promise<string> { - const response = await (window as any).peakvault.requestDecode(this.account, buffer, "memo"); - - return response.result; - } -}