diff --git a/.husky/pre-commit b/.husky/pre-commit index 1b4699229..d2902b1c9 100755 --- a/.husky/pre-commit +++ b/.husky/pre-commit @@ -1,4 +1,4 @@ #!/usr/bin/env sh . "$(dirname -- "$0")/_/husky.sh" -pnpm prettier && pnpm lint +pnpm pre-commit diff --git a/next.config.js b/next.config.js index 07d8386c7..6a3e02c0f 100644 --- a/next.config.js +++ b/next.config.js @@ -13,8 +13,7 @@ const nextConfig = { }, { source: '/stakewars', - destination: - 'https://github.com/near/stakewars-iv', + destination: 'https://github.com/near/stakewars-iv', permanent: false, }, { @@ -27,6 +26,11 @@ const nextConfig = { destination: 'https://near.org/blog/:path*', permanent: false, }, + { + source: '/ecosystem/get-funding', + destination: 'https://near.org/ecosystem/get-funding', + permanent: false, + }, { source: '/consensus', destination: 'https://nearconsensus2023.splashthat.com/', @@ -62,10 +66,11 @@ const nextConfig = { destination: '/data-availability', permanent: true, }, - { //TODO - remove in Q2 2024 + { + //TODO - remove in Q2 2024 source: '/files/:slug', destination: 'https://discovery-domain.org/papers/:slug.pdf', - permanent: false, + permanent: false, }, { source: '/papers/:slug', @@ -86,8 +91,7 @@ const nextConfig = { source: '/signin', destination: '/applications?requestAuth=1', permanent: false, - } - , + }, { source: '/signup', destination: '/applications?requestAuth=1&createAccount=1', @@ -101,8 +105,8 @@ const nextConfig = { { source: '/blog/getting-started-with-the-near-wallet', destination: 'https://wallet.near.org', - permanent: true - } + permanent: true, + }, ]; }, rewrites: async () => [ @@ -113,17 +117,19 @@ const nextConfig = { { source: '/blog/:path*', destination: '/blog/:path*/index.html', - } + }, ], headers: async () => [ { - source: '/:path*', - headers: [{ + source: '/:path*', + headers: [ + { key: 'Referrer-Policy', - value: 'strict-origin-when-cross-origin' - }] - } - ] + value: 'strict-origin-when-cross-origin', + }, + ], + }, + ], }; const withPWA = require('next-pwa')({ @@ -133,10 +139,10 @@ const withPWA = require('next-pwa')({ importScripts: ['/pwa.js'], cacheStartUrl: false, cacheOnFrontEndNav: true, - skipWaiting: false -}) + skipWaiting: false, +}); const { loadEnvConfig } = require('@next/env'); -loadEnvConfig(".") +loadEnvConfig('.'); module.exports = withPWA(nextConfig); // Injected content via Sentry wizard below diff --git a/package.json b/package.json index 2e25de197..f1a3f784d 100644 --- a/package.json +++ b/package.json @@ -14,14 +14,17 @@ "prettier": "prettier --check 'src/**/*.{js,jsx,ts,tsx,json}'", "prettier:write": "prettier --write 'src/**/*.{js,jsx,ts,tsx,json}'", "prepare": "is-ci || husky install && npm install commitizen -g", + "pre-commit": "pnpm prettier && pnpm lint --max-warnings 0 && pnpm ts:check", "commit": "cz", - "sync-submodules": "git submodule init && git submodule update --remote" + "sync-submodules": "git submodule init && git submodule update --remote", + "ts:check": "tsc --noEmit --incremental" }, "dependencies": { "@idos-network/idos-sdk": "^0.0.30", "@keypom/selector": "1.2.3", "@monaco-editor/react": "^4.6.0", "@near-js/biometric-ed25519": "0.3.0", + "@near-pagoda/ui": "^0.2.6", "@near-wallet-selector/core": "8.9.7", "@near-wallet-selector/here-wallet": "8.9.7", "@near-wallet-selector/ledger": "^8.9.7", @@ -34,12 +37,11 @@ "@near-wallet-selector/nightly": "8.9.7", "@near-wallet-selector/sender": "8.9.7", "@near-wallet-selector/welldone-wallet": "8.9.7", + "@phosphor-icons/react": "^2.1.7", "@radix-ui/react-accordion": "^1.1.2", "@radix-ui/react-dropdown-menu": "^2.0.6", "@radix-ui/react-hover-card": "^1.1.1", "@radix-ui/react-navigation-menu": "^1.1.4", - "@radix-ui/react-toast": "^1.1.5", - "@radix-ui/react-tooltip": "^1.0.7", "@sentry/nextjs": "^7.112.2", "@web3-onboard/core": "^2.21.6", "@web3-onboard/injected-wallets": "^2.10.16", @@ -57,6 +59,7 @@ "local-storage": "^2.0.0", "lodash": "^4.17.21", "moment": "^2.30.1", + "near-api-js": "^4.0.3", "near-fastauth-wallet": "2.0.1", "near-social-vm": "github:calebjacob/VM#dev", "next": "^13.5.6", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e71114cd9..d23cd90bf 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -10,52 +10,58 @@ importers: dependencies: '@idos-network/idos-sdk': specifier: ^0.0.30 - version: 0.0.30(ethers@6.13.1)(near-api-js@2.1.4)(web-streams-polyfill@3.3.3) + version: 0.0.30(ethers@6.13.1)(near-api-js@4.0.3)(web-streams-polyfill@3.3.3) '@keypom/selector': specifier: 1.2.3 - version: 1.2.3(@near-js/accounts@1.0.4)(@near-js/crypto@1.2.1)(@near-js/keystores-browser@0.0.9)(@near-js/keystores-node@0.0.9)(@near-js/keystores@0.0.9)(@near-js/transactions@1.1.2)(@near-js/types@0.0.4)(@near-js/utils@0.1.0)(@near-js/wallet-account@1.1.1)(@near-wallet-selector/core@8.9.7(near-api-js@2.1.4))(@types/react@18.3.3)(near-api-js@2.1.4)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 1.2.3(@near-js/accounts@1.2.1)(@near-js/crypto@1.2.4)(@near-js/keystores-browser@0.0.12)(@near-js/keystores-node@0.0.12)(@near-js/keystores@0.0.12)(@near-js/transactions@1.2.2)(@near-js/types@0.2.1)(@near-js/utils@0.2.2)(@near-js/wallet-account@1.2.2)(@near-wallet-selector/core@8.9.7(near-api-js@4.0.3))(@types/react@18.3.3)(near-api-js@4.0.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@monaco-editor/react': specifier: ^4.6.0 version: 4.6.0(monaco-editor@0.50.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@near-js/biometric-ed25519': specifier: 0.3.0 version: 0.3.0 + '@near-pagoda/ui': + specifier: ^0.2.6 + version: 0.2.6(@types/react-dom@18.3.0)(@types/react@18.3.3)(next@13.5.6(@babel/core@7.24.9)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zustand@4.5.4(@types/react@18.3.3)(react@18.3.1)) '@near-wallet-selector/core': specifier: 8.9.7 - version: 8.9.7(near-api-js@2.1.4) + version: 8.9.7(near-api-js@4.0.3) '@near-wallet-selector/here-wallet': specifier: 8.9.7 - version: 8.9.7(borsh@1.0.0)(near-api-js@2.1.4) + version: 8.9.7(borsh@1.0.0)(near-api-js@4.0.3) '@near-wallet-selector/ledger': specifier: ^8.9.7 - version: 8.9.10(near-api-js@2.1.4)(typescript@5.5.4) + version: 8.9.10(near-api-js@4.0.3)(typescript@5.5.4) '@near-wallet-selector/meteor-wallet': specifier: 8.9.7 - version: 8.9.7(near-api-js@2.1.4) + version: 8.9.7(near-api-js@4.0.3) '@near-wallet-selector/mintbase-wallet': specifier: ^8.9.7 - version: 8.9.10(near-api-js@2.1.4) + version: 8.9.10(near-api-js@4.0.3) '@near-wallet-selector/modal-ui': specifier: 8.9.7 - version: 8.9.7(near-api-js@2.1.4) + version: 8.9.7(near-api-js@4.0.3) '@near-wallet-selector/my-near-wallet': specifier: 8.9.7 - version: 8.9.7(near-api-js@2.1.4) + version: 8.9.7(near-api-js@4.0.3) '@near-wallet-selector/near-mobile-wallet': specifier: ^8.9.7 - version: 8.9.10(@swc/helpers@0.5.12)(near-api-js@2.1.4)(postcss@8.4.39)(terser@5.31.3)(typescript@5.5.4) + version: 8.9.10(@swc/helpers@0.5.12)(near-api-js@4.0.3)(postcss@8.4.39)(srcset@4.0.0)(terser@5.31.3)(typescript@5.5.4) '@near-wallet-selector/neth': specifier: 8.9.7 - version: 8.9.7(near-api-js@2.1.4) + version: 8.9.7(near-api-js@4.0.3) '@near-wallet-selector/nightly': specifier: 8.9.7 - version: 8.9.7(near-api-js@2.1.4) + version: 8.9.7(near-api-js@4.0.3) '@near-wallet-selector/sender': specifier: 8.9.7 - version: 8.9.7(near-api-js@2.1.4) + version: 8.9.7(near-api-js@4.0.3) '@near-wallet-selector/welldone-wallet': specifier: 8.9.7 - version: 8.9.7(near-api-js@2.1.4) + version: 8.9.7(near-api-js@4.0.3) + '@phosphor-icons/react': + specifier: ^2.1.7 + version: 2.1.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-accordion': specifier: ^1.1.2 version: 1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -68,12 +74,6 @@ importers: '@radix-ui/react-navigation-menu': specifier: ^1.1.4 version: 1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-toast': - specifier: ^1.1.5 - version: 1.2.1(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-tooltip': - specifier: ^1.0.7 - version: 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@sentry/nextjs': specifier: ^7.112.2 version: 7.118.0(next@13.5.6(@babel/core@7.24.9)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(webpack@5.93.0) @@ -125,12 +125,15 @@ importers: moment: specifier: ^2.30.1 version: 2.30.1 + near-api-js: + specifier: ^4.0.3 + version: 4.0.3 near-fastauth-wallet: specifier: 2.0.1 version: 2.0.1(moment@2.30.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(vite@5.3.4(@types/node@18.19.42)(lightningcss@1.25.1)(terser@5.31.3)) near-social-vm: specifier: github:calebjacob/VM#dev - version: https://codeload.github.com/calebjacob/VM/tar.gz/9ae4f62b37349d7dc9927f53b77f80bcceed1ecc(@babel/core@7.24.9)(@popperjs/core@2.11.8)(@types/react-dom@18.3.0)(@types/react@18.3.3)(near-api-js@2.1.4)(prop-types@15.8.1)(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1) + version: https://codeload.github.com/calebjacob/VM/tar.gz/9ae4f62b37349d7dc9927f53b77f80bcceed1ecc(@babel/core@7.24.9)(@popperjs/core@2.11.8)(@types/react-dom@18.3.0)(@types/react@18.3.3)(near-api-js@4.0.3)(prop-types@15.8.1)(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1) next: specifier: ^13.5.6 version: 13.5.6(@babel/core@7.24.9)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -1877,6 +1880,9 @@ packages: '@near-js/accounts@1.0.4': resolution: {integrity: sha512-6zgSwq/rQ9ggPOIkGUx9RoEurbJiojqA/axeh6o1G+46GqUBI7SUcDooyVvZjeiOvUPObnTQptDYpbV+XZji8g==} + '@near-js/accounts@1.2.1': + resolution: {integrity: sha512-j6+9n/p0vVLAahmN3YRFve+j0ammOALC9ZUfFhdE3kqtJESbSWMviC5qF/s2m0JQjpJGDtEv/dTADosIJoanWw==} + '@near-js/biometric-ed25519@0.3.0': resolution: {integrity: sha512-9I/xjDJIA79VMGujMNaMZnvohrvnvHPa3Rz0GvMF/Qfu4dbC62mivGCBDhkEkDT1xAVJn/7ZbBX/CGZNODMIPg==} @@ -1886,18 +1892,30 @@ packages: '@near-js/crypto@1.2.1': resolution: {integrity: sha512-iJOHaGKvdudYfR8nEtRhGlgcTEHeVmxMoT0JVXmuP3peG96v/sSnA03CE6MZBeCC8txKAQOffagxE7oU6hJp9g==} + '@near-js/crypto@1.2.4': + resolution: {integrity: sha512-hcSj0ygvTcXlW9ftwEd9dbvQUWBCHNWNDLou9NLfmZERW9dr0gH8kUJPZUWfpJFlUPicb+jTiMpNwDTvP7VW4A==} + + '@near-js/keystores-browser@0.0.12': + resolution: {integrity: sha512-ptoVfJhMsktYcvY02wD2a8kDDH/E4d+kBfhwKF0H/Qt/w4JVJqEVgCLDBYUespuISTSqLSznNBjTSse+E7pJDQ==} + '@near-js/keystores-browser@0.0.5': resolution: {integrity: sha512-mHF3Vcvsr7xnkaM/reOyxtykbE3OWKV6vQzqyTH2tZYT2OTEnj0KhRT9BCFC0Ra67K1zQLbg49Yc/kDCc5qupA==} '@near-js/keystores-browser@0.0.9': resolution: {integrity: sha512-JzPj+RHJN2G3CEm/LyfbtZDQy/wxgOlqfh52voqPGijUHg93b27KBqtZShazAgJNkhzRbWcoluWQnd2jL8vF7A==} + '@near-js/keystores-node@0.0.12': + resolution: {integrity: sha512-LUz1HPXBYoZUaLyS/bEj4yZ4pqD9Hb7XURikh22VYL8mbLcR5VmWYwS7Tmi9aO1vW8M9bPnQs5SROAyA79qQgQ==} + '@near-js/keystores-node@0.0.5': resolution: {integrity: sha512-BYmWyGNydfAqi7eYA1Jo8zULL13cxejD2VBr0BBIXx5bJ+BO4TLecsY1xdTBEq06jyWXHa7kV4h8BJzAjvpTLg==} '@near-js/keystores-node@0.0.9': resolution: {integrity: sha512-2B9MYz6uIhysG1fhQSjvaPYCM7gM+UAeDchX0J8QRauXIeN8TGzpcdgkdkMUnWNTIdt3Iblh0ZuCs+FY02dTXg==} + '@near-js/keystores@0.0.12': + resolution: {integrity: sha512-7dqq7XLUSlo26QbaGrS6bmqVL4IfhxJgfIhgKUDfv8FuswrpErBVCAUY6wIbW+mLw0NBoddzPrb5LuLIMfud5Q==} + '@near-js/keystores@0.0.5': resolution: {integrity: sha512-kxqV+gw/3L8/axe9prhlU+M0hfybkxX54xfI0EEpWP2QiUV+qw+jkKolYIbdk5tdEZrGf9jHawh1yFtwP7APPQ==} @@ -1910,33 +1928,60 @@ packages: '@near-js/providers@0.1.1': resolution: {integrity: sha512-0M/Vz2Ac34ShKVoe2ftVJ5Qg4eSbEqNXDbCDOdVj/2qbLWZa7Wpe+me5ei4TMY2ZhGdawhgJUPrYwdJzOCyf8w==} + '@near-js/providers@0.2.2': + resolution: {integrity: sha512-1V3NhqxfkBvdvq8zhKqbKxsySpIr6PpmlDzkHjDr8uSu6MMvqBgy+1dBvWflEFlN7OlDGx35mVsq/4Xy0wu+KA==} + '@near-js/signers@0.0.5': resolution: {integrity: sha512-XJjYYatehxHakHa7WAoiQ8uIBSWBR2EnO4GzlIe8qpWL+LoH4t68MSezC1HwT546y9YHIvePjwDrBeYk8mg20w==} '@near-js/signers@0.1.1': resolution: {integrity: sha512-focJgs04dBUfawMnyGg3yIjaMawuVz2OeLRKC4t5IQDmO4PLfdIraEuwgS7tckMq3GdrJ7nqkwkpSNYpdt7I5Q==} + '@near-js/signers@0.1.4': + resolution: {integrity: sha512-YgH5X5fDOT/GsEAcyNM3heQWjIIL1MW3P8NtqilMa69HnsvtES9RCwjAXP8d8DZq/dBlI9od+pQ5XhxSFuXKCg==} + '@near-js/transactions@0.2.1': resolution: {integrity: sha512-V9tXzkICDPruSxihKXkBhUgsI4uvW7TwXlnZS2GZpPsFFiIUeGrso0wo4uiQwB6miFA5q6fKaAtQa4F2v1s+zg==} '@near-js/transactions@1.1.2': resolution: {integrity: sha512-AqYA56ncwgrWjIu+bNaWjTPRZb0O+SfpWIP7U+1FKNKxNYMCtkt6zp7SlQeZn743shKVq9qMzA9+ous/KCb0QQ==} + '@near-js/transactions@1.2.2': + resolution: {integrity: sha512-WZ/Mk0hFvBIYcD6VBwYw4S2mmiKBKz6PT0YEwNzMzbgPZSs2wRVk4r9Tf+ueCJCPUXo5XINkjThCcRqMHQvPtg==} + '@near-js/types@0.0.4': resolution: {integrity: sha512-8TTMbLMnmyG06R5YKWuS/qFG1tOA3/9lX4NgBqQPsvaWmDsa+D+QwOkrEHDegped0ZHQwcjAXjKML1S1TyGYKg==} + '@near-js/types@0.2.1': + resolution: {integrity: sha512-YygQEGMdFe6d2e/6dtNZer9paH396XeAdIKEhY/RPXDUnjDdfiDQ5DK4mM130sEeID2bAH9X1LQ+7vXGRjvyWw==} + '@near-js/utils@0.0.4': resolution: {integrity: sha512-mPUEPJbTCMicGitjEGvQqOe8AS7O4KkRCxqd0xuE/X6gXF1jz1pYMZn4lNUeUz2C84YnVSGLAM0o9zcN6Y4hiA==} '@near-js/utils@0.1.0': resolution: {integrity: sha512-kOVAXmJzaC8ElJD3RLEoBuqOK+d5s7jc0JkvhyEtbuEmXYHHAy9Q17/YkDcX9tyr01L85iOt66z0cODqzgtQwA==} + '@near-js/utils@0.2.2': + resolution: {integrity: sha512-ZAJo/cN6AHY7/gckf8DLHwjAn0z4UwG6rhLxs+QDyNYMMSx9SBg2pOQtBBv7ORWJaPhWD2q7wFhUz4SdTZi43A==} + '@near-js/wallet-account@0.0.7': resolution: {integrity: sha512-tmRyieG/wHmuNkg/WGFyKD6iH6atHPbY0rZ5OjOIiteuhZEPgp+z8OBpiQ4qumTa63q46aj/QVSQL0J3+JmBfw==} '@near-js/wallet-account@1.1.1': resolution: {integrity: sha512-NnoJKtogBQ7Qz+AP+LdF70BP8Az6UXQori7OjPqJLMo73bn6lh5Ywvegwd1EB7ZEVe4BRt9+f9QkbU5M8ANfAw==} + '@near-js/wallet-account@1.2.2': + resolution: {integrity: sha512-LaWzqaz2tP1hcToDlmiQnFMGZ1W9dM9i4nFSILe5PLIFLBQmYXdLWc80skGDiTUeihVu6wwtQr6Z2CcG231rWw==} + + '@near-pagoda/ui@0.2.6': + resolution: {integrity: sha512-/sT10QZAtiMHfY4LG/YQMSh+sTCildD8ZtY2L4iGFfOZ0AU/hm7Jfh5tR5jS1//Js9eOd7t7nMSGdirw0l2pMw==} + engines: {node: '>=20', pnpm: 9.1.1} + peerDependencies: + next: '>=13' + react: ^18 + react-dom: ^18 + zustand: ^4 + '@near-wallet-selector/core@8.9.10': resolution: {integrity: sha512-do+DDahRHPzr5VKiFS7NWKyNbspXu64/w7CuSBi8IUDsDsclmV7Os6Hp5HcVAq+X3Whi//NxKGX6mPMb+SRPqw==} peerDependencies: @@ -2423,6 +2468,13 @@ packages: '@peersyst/near-mobile-signer@1.0.11': resolution: {integrity: sha512-9jU7rjMa9rEo0CYEeYNcu5Zzpe78ctgfxXuIRylpWK4MHuZ/N0ZmxRyUtGgqGQS9zW0aI6PHVURLSCAB5qsYlg==} + '@phosphor-icons/react@2.1.7': + resolution: {integrity: sha512-g2e2eVAn1XG2a+LI09QU3IORLhnFNAFkNbo2iwbX6NOKSLOwvEMmTa7CgOzEbgNWR47z8i8kwjdvYZ5fkGx1mQ==} + engines: {node: '>=10'} + peerDependencies: + react: '>= 16.8' + react-dom: '>= 16.8' + '@popperjs/core@2.11.8': resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==} @@ -5101,6 +5153,11 @@ packages: resolution: {integrity: sha512-M3NhsLbV1i6HuGzBUH8vXrtxOk+tWmzWKDMbAVSUp3Zsjm7ywFeuwrUXhmhQyRK1q5B5GGy7hcXPbj3bnfZg2g==} engines: {node: '>=6'} + downshift@9.0.7: + resolution: {integrity: sha512-B6JY4sJGEl9xBEJEvC/C+QYYYtPWN5RL+TlROJQfue9+ZFgrD/p1ZgGw73I0WSTNH9/h5q3LIKQA4FLd/N10vg==} + peerDependencies: + react: '>=16.12.0' + duplexify@4.1.3: resolution: {integrity: sha512-M3BmBhwJRZsSx38lZyhE53Csddgzl5R7xGJNk7CVddZD6CcmwMCH8J+7AprIrQKH7TonKxaCjcv27Qmf+sQ+oA==} @@ -5547,6 +5604,12 @@ packages: functions-have-names@1.2.3: resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} + generate-function@2.3.1: + resolution: {integrity: sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==} + + generate-object-property@1.2.0: + resolution: {integrity: sha512-TuOwZWgJ2VAMEGJvAyPWvpqxSANF0LDpmyHauMjFYzaACvn+QTT/AZomvPCzVBV7yDN3OmwHQ5OvHaeLKre3JQ==} + gensync@1.0.0-beta.2: resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} engines: {node: '>=6.9.0'} @@ -5986,6 +6049,12 @@ packages: is-module@1.0.0: resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==} + is-my-ip-valid@1.0.1: + resolution: {integrity: sha512-jxc8cBcOWbNK2i2aTkCZP6i7wkHF1bqKFrwEHuN5Jtg5BSaZHUZQ/JTOJwoV41YvHnOaRyWWh72T/KvfNz9DJg==} + + is-my-json-valid@2.20.6: + resolution: {integrity: sha512-1JQwulVNjx8UqkPE/bqDaxtH4PXCe/2VRh/y3p99heOV87HG4Id5/VfDswd+YiAfHcRTfDlWgISycnHuhZq1aw==} + is-negative-zero@2.0.3: resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} engines: {node: '>= 0.4'} @@ -6029,6 +6098,9 @@ packages: is-promise@2.2.2: resolution: {integrity: sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==} + is-property@1.0.2: + resolution: {integrity: sha512-Ks/IoX00TtClbGQr4TWXemAnktAQvYB7HzcCxDGqEZU6oCmb2INHuOoKxbtR+HFkmYWBKv/dOZtGRiAjDhj92g==} + is-reference@1.2.1: resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==} @@ -6391,6 +6463,9 @@ packages: resolution: {integrity: sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + lodash-es@4.17.21: + resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} + lodash.camelcase@4.3.0: resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==} @@ -6781,6 +6856,9 @@ packages: near-api-js@3.0.4: resolution: {integrity: sha512-qKWjnugoB7kSFhzZ5GXyH/eABspCQYWBmWnM4hpV5ctnQBt89LqgEu9yD1z4sa89MvUu8BuCxwb1m00BE8iofg==} + near-api-js@4.0.3: + resolution: {integrity: sha512-NNxIUOGjTafDp65WKRmRqjOTdn4gukse5zFzo2YS/1YJMac++WR05mEsiAB2Aj54rDb/PL8TObQZgHtSs/Pjvg==} + near-fastauth-wallet@2.0.1: resolution: {integrity: sha512-bVtTzfI1p50lFjh25tpWLDJXbz8a1uKhKpk/5FOGXyg1tLUE5tGB8JchNxubKPnioMTojUhRfK3H5UHWlnCoOA==} @@ -7537,6 +7615,9 @@ packages: react-is@17.0.2: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} + react-is@18.2.0: + resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} + react-is@18.3.1: resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} @@ -10788,7 +10869,7 @@ snapshots: '@humanwhocodes/object-schema@2.0.3': {} - '@idos-network/idos-sdk@0.0.30(ethers@6.13.1)(near-api-js@2.1.4)(web-streams-polyfill@3.3.3)': + '@idos-network/idos-sdk@0.0.30(ethers@6.13.1)(near-api-js@4.0.3)(web-streams-polyfill@3.3.3)': dependencies: '@digitalbazaar/ed25519-signature-2020': 5.3.0(web-streams-polyfill@3.3.3) '@digitalbazaar/ed25519-verification-key-2020': 4.1.0 @@ -10802,7 +10883,7 @@ snapshots: ethers: 6.13.1 jsonld: 8.3.2(web-streams-polyfill@3.3.3) jsonld-document-loader: 2.1.0 - near-api-js: 2.1.4 + near-api-js: 4.0.3 transitivePeerDependencies: - bufferutil - debug @@ -10831,17 +10912,17 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.0 - '@keypom/core@1.0.2(@near-js/accounts@1.0.4)(@near-js/crypto@1.2.1)(@near-js/keystores-browser@0.0.9)(@near-js/keystores@0.0.9)(@near-js/transactions@1.1.2)(@near-js/types@0.0.4)(@near-js/utils@0.1.0)(@near-js/wallet-account@1.1.1)(near-api-js@2.1.4)': - dependencies: - '@near-js/accounts': 1.0.4 - '@near-js/crypto': 1.2.1 - '@near-js/keystores': 0.0.9 - '@near-js/keystores-browser': 0.0.9 - '@near-js/transactions': 1.1.2 - '@near-js/types': 0.0.4 - '@near-js/utils': 0.1.0 - '@near-js/wallet-account': 1.1.1 - '@near-wallet-selector/core': 8.9.7(near-api-js@2.1.4) + '@keypom/core@1.0.2(@near-js/accounts@1.2.1)(@near-js/crypto@1.2.4)(@near-js/keystores-browser@0.0.12)(@near-js/keystores@0.0.12)(@near-js/transactions@1.2.2)(@near-js/types@0.2.1)(@near-js/utils@0.2.2)(@near-js/wallet-account@1.2.2)(near-api-js@4.0.3)': + dependencies: + '@near-js/accounts': 1.2.1 + '@near-js/crypto': 1.2.4 + '@near-js/keystores': 0.0.12 + '@near-js/keystores-browser': 0.0.12 + '@near-js/transactions': 1.2.2 + '@near-js/types': 0.2.1 + '@near-js/utils': 0.2.2 + '@near-js/wallet-account': 1.2.2 + '@near-wallet-selector/core': 8.9.7(near-api-js@4.0.3) bn.js: 5.2.1 borsh: 0.7.0 near-seed-phrase: 0.2.0 @@ -10849,18 +10930,18 @@ snapshots: transitivePeerDependencies: - near-api-js - '@keypom/selector@1.2.3(@near-js/accounts@1.0.4)(@near-js/crypto@1.2.1)(@near-js/keystores-browser@0.0.9)(@near-js/keystores-node@0.0.9)(@near-js/keystores@0.0.9)(@near-js/transactions@1.1.2)(@near-js/types@0.0.4)(@near-js/utils@0.1.0)(@near-js/wallet-account@1.1.1)(@near-wallet-selector/core@8.9.7(near-api-js@2.1.4))(@types/react@18.3.3)(near-api-js@2.1.4)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': - dependencies: - '@keypom/core': 1.0.2(@near-js/accounts@1.0.4)(@near-js/crypto@1.2.1)(@near-js/keystores-browser@0.0.9)(@near-js/keystores@0.0.9)(@near-js/transactions@1.1.2)(@near-js/types@0.0.4)(@near-js/utils@0.1.0)(@near-js/wallet-account@1.1.1)(near-api-js@2.1.4) - '@near-js/accounts': 1.0.4 - '@near-js/crypto': 1.2.1 - '@near-js/keystores-browser': 0.0.9 - '@near-js/keystores-node': 0.0.9 - '@near-js/transactions': 1.1.2 - '@near-js/types': 0.0.4 - '@near-js/utils': 0.1.0 - '@near-js/wallet-account': 1.1.1 - '@near-wallet-selector/core': 8.9.7(near-api-js@2.1.4) + '@keypom/selector@1.2.3(@near-js/accounts@1.2.1)(@near-js/crypto@1.2.4)(@near-js/keystores-browser@0.0.12)(@near-js/keystores-node@0.0.12)(@near-js/keystores@0.0.12)(@near-js/transactions@1.2.2)(@near-js/types@0.2.1)(@near-js/utils@0.2.2)(@near-js/wallet-account@1.2.2)(@near-wallet-selector/core@8.9.7(near-api-js@4.0.3))(@types/react@18.3.3)(near-api-js@4.0.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@keypom/core': 1.0.2(@near-js/accounts@1.2.1)(@near-js/crypto@1.2.4)(@near-js/keystores-browser@0.0.12)(@near-js/keystores@0.0.12)(@near-js/transactions@1.2.2)(@near-js/types@0.2.1)(@near-js/utils@0.2.2)(@near-js/wallet-account@1.2.2)(near-api-js@4.0.3) + '@near-js/accounts': 1.2.1 + '@near-js/crypto': 1.2.4 + '@near-js/keystores-browser': 0.0.12 + '@near-js/keystores-node': 0.0.12 + '@near-js/transactions': 1.2.2 + '@near-js/types': 0.2.1 + '@near-js/utils': 0.2.2 + '@near-js/wallet-account': 1.2.2 + '@near-wallet-selector/core': 8.9.7(near-api-js@4.0.3) '@types/react': 18.3.3 bn.js: 5.2.1 borsh: 0.7.0 @@ -10947,19 +11028,19 @@ snapshots: '@metamask/detect-provider@2.0.0': {} - '@meteorwallet/sdk@1.0.9(near-api-js@2.1.4)': + '@meteorwallet/sdk@1.0.9(near-api-js@4.0.3)': dependencies: borsh: 0.7.0 nanoid: 3.3.6 - near-api-js: 2.1.4 + near-api-js: 4.0.3 query-string: 7.1.3 - '@mintbase-js/wallet@0.6.0-beta.3(near-api-js@2.1.4)': + '@mintbase-js/wallet@0.6.0-beta.3(near-api-js@4.0.3)': dependencies: - '@near-wallet-selector/core': 8.9.5(near-api-js@2.1.4) - '@near-wallet-selector/wallet-utils': 8.9.10(near-api-js@2.1.4) + '@near-wallet-selector/core': 8.9.5(near-api-js@4.0.3) + '@near-wallet-selector/wallet-utils': 8.9.10(near-api-js@4.0.3) bn.js: 5.2.1 - near-api-js: 2.1.4 + near-api-js: 4.0.3 '@mischnic/json-sourcemap@0.1.1': dependencies: @@ -11077,6 +11158,22 @@ snapshots: transitivePeerDependencies: - encoding + '@near-js/accounts@1.2.1': + dependencies: + '@near-js/crypto': 1.2.4 + '@near-js/providers': 0.2.2 + '@near-js/signers': 0.1.4 + '@near-js/transactions': 1.2.2 + '@near-js/types': 0.2.1 + '@near-js/utils': 0.2.2 + borsh: 1.0.0 + depd: 2.0.0 + is-my-json-valid: 2.20.6 + lru_map: 0.4.1 + near-abi: 0.1.1 + transitivePeerDependencies: + - encoding + '@near-js/biometric-ed25519@0.3.0': dependencies: '@aws-crypto/sha256-js': 4.0.0 @@ -11105,6 +11202,19 @@ snapshots: borsh: 1.0.0 randombytes: 2.1.0 + '@near-js/crypto@1.2.4': + dependencies: + '@near-js/types': 0.2.1 + '@near-js/utils': 0.2.2 + '@noble/curves': 1.2.0 + borsh: 1.0.0 + randombytes: 2.1.0 + + '@near-js/keystores-browser@0.0.12': + dependencies: + '@near-js/crypto': 1.2.4 + '@near-js/keystores': 0.0.12 + '@near-js/keystores-browser@0.0.5': dependencies: '@near-js/crypto': 0.0.5 @@ -11115,6 +11225,11 @@ snapshots: '@near-js/crypto': 1.2.1 '@near-js/keystores': 0.0.9 + '@near-js/keystores-node@0.0.12': + dependencies: + '@near-js/crypto': 1.2.4 + '@near-js/keystores': 0.0.12 + '@near-js/keystores-node@0.0.5': dependencies: '@near-js/crypto': 0.0.5 @@ -11125,6 +11240,11 @@ snapshots: '@near-js/crypto': 1.2.1 '@near-js/keystores': 0.0.9 + '@near-js/keystores@0.0.12': + dependencies: + '@near-js/crypto': 1.2.4 + '@near-js/types': 0.2.1 + '@near-js/keystores@0.0.5': dependencies: '@near-js/crypto': 0.0.5 @@ -11161,6 +11281,18 @@ snapshots: transitivePeerDependencies: - encoding + '@near-js/providers@0.2.2': + dependencies: + '@near-js/transactions': 1.2.2 + '@near-js/types': 0.2.1 + '@near-js/utils': 0.2.2 + borsh: 1.0.0 + http-errors: 1.7.2 + optionalDependencies: + node-fetch: 2.6.7 + transitivePeerDependencies: + - encoding + '@near-js/signers@0.0.5': dependencies: '@near-js/crypto': 0.0.5 @@ -11173,6 +11305,12 @@ snapshots: '@near-js/keystores': 0.0.9 '@noble/hashes': 1.3.3 + '@near-js/signers@0.1.4': + dependencies: + '@near-js/crypto': 1.2.4 + '@near-js/keystores': 0.0.12 + '@noble/hashes': 1.3.3 + '@near-js/transactions@0.2.1': dependencies: '@near-js/crypto': 0.0.5 @@ -11193,10 +11331,21 @@ snapshots: bn.js: 5.2.1 borsh: 1.0.0 + '@near-js/transactions@1.2.2': + dependencies: + '@near-js/crypto': 1.2.4 + '@near-js/signers': 0.1.4 + '@near-js/types': 0.2.1 + '@near-js/utils': 0.2.2 + '@noble/hashes': 1.3.3 + borsh: 1.0.0 + '@near-js/types@0.0.4': dependencies: bn.js: 5.2.1 + '@near-js/types@0.2.1': {} + '@near-js/utils@0.0.4': dependencies: '@near-js/types': 0.0.4 @@ -11212,6 +11361,13 @@ snapshots: depd: 2.0.0 mustache: 4.0.0 + '@near-js/utils@0.2.2': + dependencies: + '@near-js/types': 0.2.1 + bs58: 4.0.0 + depd: 2.0.0 + mustache: 4.0.0 + '@near-js/wallet-account@0.0.7': dependencies: '@near-js/accounts': 0.1.4 @@ -11240,6 +11396,40 @@ snapshots: transitivePeerDependencies: - encoding + '@near-js/wallet-account@1.2.2': + dependencies: + '@near-js/accounts': 1.2.1 + '@near-js/crypto': 1.2.4 + '@near-js/keystores': 0.0.12 + '@near-js/providers': 0.2.2 + '@near-js/signers': 0.1.4 + '@near-js/transactions': 1.2.2 + '@near-js/types': 0.2.1 + '@near-js/utils': 0.2.2 + borsh: 1.0.0 + transitivePeerDependencies: + - encoding + + '@near-pagoda/ui@0.2.6(@types/react-dom@18.3.0)(@types/react@18.3.3)(next@13.5.6(@babel/core@7.24.9)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(zustand@4.5.4(@types/react@18.3.3)(react@18.3.1))': + dependencies: + '@phosphor-icons/react': 2.1.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-accordion': 1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-dialog': 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-dropdown-menu': 2.1.1(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-switch': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-tabs': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-toast': 1.2.1(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-tooltip': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + downshift: 9.0.7(react@18.3.1) + lodash-es: 4.17.21 + next: 13.5.6(@babel/core@7.24.9)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + zustand: 4.5.4(@types/react@18.3.3)(react@18.3.1) + transitivePeerDependencies: + - '@types/react' + - '@types/react-dom' + '@near-wallet-selector/core@8.9.10(near-api-js@2.1.4)': dependencies: borsh: 0.7.0 @@ -11248,12 +11438,20 @@ snapshots: near-api-js: 2.1.4 rxjs: 7.8.1 - '@near-wallet-selector/core@8.9.5(near-api-js@2.1.4)': + '@near-wallet-selector/core@8.9.10(near-api-js@4.0.3)': dependencies: borsh: 0.7.0 events: 3.3.0 js-sha256: 0.9.0 - near-api-js: 2.1.4 + near-api-js: 4.0.3 + rxjs: 7.8.1 + + '@near-wallet-selector/core@8.9.5(near-api-js@4.0.3)': + dependencies: + borsh: 0.7.0 + events: 3.3.0 + js-sha256: 0.9.0 + near-api-js: 4.0.3 rxjs: 7.8.1 '@near-wallet-selector/core@8.9.7(near-api-js@2.1.4)': @@ -11264,43 +11462,51 @@ snapshots: near-api-js: 2.1.4 rxjs: 7.8.1 - '@near-wallet-selector/here-wallet@8.9.7(borsh@1.0.0)(near-api-js@2.1.4)': + '@near-wallet-selector/core@8.9.7(near-api-js@4.0.3)': + dependencies: + borsh: 0.7.0 + events: 3.3.0 + js-sha256: 0.9.0 + near-api-js: 4.0.3 + rxjs: 7.8.1 + + '@near-wallet-selector/here-wallet@8.9.7(borsh@1.0.0)(near-api-js@4.0.3)': dependencies: '@here-wallet/core': 1.6.6(bn.js@5.2.1)(borsh@1.0.0) - '@near-wallet-selector/core': 8.9.7(near-api-js@2.1.4) + '@near-wallet-selector/core': 8.9.7(near-api-js@4.0.3) bn.js: 5.2.1 - near-api-js: 2.1.4 + near-api-js: 4.0.3 transitivePeerDependencies: - borsh - encoding - '@near-wallet-selector/ledger@8.9.10(near-api-js@2.1.4)(typescript@5.5.4)': + '@near-wallet-selector/ledger@8.9.10(near-api-js@4.0.3)(typescript@5.5.4)': dependencies: '@ledgerhq/hw-transport': 6.30.3 '@ledgerhq/hw-transport-webhid': 6.28.3 - '@near-wallet-selector/core': 8.9.10(near-api-js@2.1.4) - '@near-wallet-selector/wallet-utils': 8.9.10(near-api-js@2.1.4) + '@near-wallet-selector/core': 8.9.10(near-api-js@4.0.3) + '@near-wallet-selector/wallet-utils': 8.9.10(near-api-js@4.0.3) bn.js: 5.2.1 is-mobile: 4.0.0 - near-api-js: 2.1.4 + near-api-js: 4.0.3 ts-essentials: 7.0.3(typescript@5.5.4) transitivePeerDependencies: - typescript - '@near-wallet-selector/meteor-wallet@8.9.7(near-api-js@2.1.4)': + '@near-wallet-selector/meteor-wallet@8.9.7(near-api-js@4.0.3)': dependencies: - '@meteorwallet/sdk': 1.0.9(near-api-js@2.1.4) - '@near-wallet-selector/core': 8.9.7(near-api-js@2.1.4) - near-api-js: 2.1.4 + '@meteorwallet/sdk': 1.0.9(near-api-js@4.0.3) + '@near-wallet-selector/core': 8.9.7(near-api-js@4.0.3) + near-api-js: 4.0.3 - '@near-wallet-selector/mintbase-wallet@8.9.10(near-api-js@2.1.4)': + '@near-wallet-selector/mintbase-wallet@8.9.10(near-api-js@4.0.3)': dependencies: - '@mintbase-js/wallet': 0.6.0-beta.3(near-api-js@2.1.4) - near-api-js: 2.1.4 + '@mintbase-js/wallet': 0.6.0-beta.3(near-api-js@4.0.3) + near-api-js: 4.0.3 - '@near-wallet-selector/modal-ui@8.9.7(near-api-js@2.1.4)': + '@near-wallet-selector/modal-ui@8.9.7(near-api-js@4.0.3)': dependencies: - '@near-wallet-selector/core': 8.9.7(near-api-js@2.1.4) + '@near-wallet-selector/core': 8.9.7(near-api-js@4.0.3) copy-to-clipboard: 3.3.3 qrcode: 1.5.3 react: 18.2.0 @@ -11308,17 +11514,17 @@ snapshots: transitivePeerDependencies: - near-api-js - '@near-wallet-selector/my-near-wallet@8.9.7(near-api-js@2.1.4)': + '@near-wallet-selector/my-near-wallet@8.9.7(near-api-js@4.0.3)': dependencies: - '@near-wallet-selector/core': 8.9.7(near-api-js@2.1.4) - '@near-wallet-selector/wallet-utils': 8.9.7(near-api-js@2.1.4) - near-api-js: 2.1.4 + '@near-wallet-selector/core': 8.9.7(near-api-js@4.0.3) + '@near-wallet-selector/wallet-utils': 8.9.7(near-api-js@4.0.3) + near-api-js: 4.0.3 - '@near-wallet-selector/near-mobile-wallet@8.9.10(@swc/helpers@0.5.12)(near-api-js@2.1.4)(postcss@8.4.39)(terser@5.31.3)(typescript@5.5.4)': + '@near-wallet-selector/near-mobile-wallet@8.9.10(@swc/helpers@0.5.12)(near-api-js@4.0.3)(postcss@8.4.39)(srcset@4.0.0)(terser@5.31.3)(typescript@5.5.4)': dependencies: - '@near-wallet-selector/core': 8.9.10(near-api-js@2.1.4) - '@peersyst/near-mobile-signer': 1.0.11(@swc/helpers@0.5.12)(postcss@8.4.39)(terser@5.31.3)(typescript@5.5.4) - near-api-js: 2.1.4 + '@near-wallet-selector/core': 8.9.10(near-api-js@4.0.3) + '@peersyst/near-mobile-signer': 1.0.11(@swc/helpers@0.5.12)(postcss@8.4.39)(srcset@4.0.0)(terser@5.31.3)(typescript@5.5.4) + near-api-js: 4.0.3 transitivePeerDependencies: - '@swc/helpers' - cssnano @@ -11331,31 +11537,31 @@ snapshots: - typescript - uncss - '@near-wallet-selector/neth@8.9.7(near-api-js@2.1.4)': + '@near-wallet-selector/neth@8.9.7(near-api-js@4.0.3)': dependencies: '@metamask/detect-provider': 2.0.0 - '@near-wallet-selector/core': 8.9.7(near-api-js@2.1.4) + '@near-wallet-selector/core': 8.9.7(near-api-js@4.0.3) bn.js: 5.2.1 ethers: 5.7.2 is-mobile: 4.0.0 - near-api-js: 2.1.4 + near-api-js: 4.0.3 near-seed-phrase: 0.2.0 transitivePeerDependencies: - bufferutil - utf-8-validate - '@near-wallet-selector/nightly@8.9.7(near-api-js@2.1.4)': + '@near-wallet-selector/nightly@8.9.7(near-api-js@4.0.3)': dependencies: - '@near-wallet-selector/core': 8.9.7(near-api-js@2.1.4) - '@near-wallet-selector/wallet-utils': 8.9.7(near-api-js@2.1.4) + '@near-wallet-selector/core': 8.9.7(near-api-js@4.0.3) + '@near-wallet-selector/wallet-utils': 8.9.7(near-api-js@4.0.3) is-mobile: 4.0.0 - near-api-js: 2.1.4 + near-api-js: 4.0.3 - '@near-wallet-selector/sender@8.9.7(near-api-js@2.1.4)': + '@near-wallet-selector/sender@8.9.7(near-api-js@4.0.3)': dependencies: - '@near-wallet-selector/core': 8.9.7(near-api-js@2.1.4) + '@near-wallet-selector/core': 8.9.7(near-api-js@4.0.3) is-mobile: 4.0.0 - near-api-js: 2.1.4 + near-api-js: 4.0.3 '@near-wallet-selector/wallet-utils@8.9.10(near-api-js@2.1.4)': dependencies: @@ -11363,18 +11569,24 @@ snapshots: bn.js: 5.2.1 near-api-js: 2.1.4 - '@near-wallet-selector/wallet-utils@8.9.7(near-api-js@2.1.4)': + '@near-wallet-selector/wallet-utils@8.9.10(near-api-js@4.0.3)': dependencies: - '@near-wallet-selector/core': 8.9.7(near-api-js@2.1.4) + '@near-wallet-selector/core': 8.9.10(near-api-js@4.0.3) bn.js: 5.2.1 - near-api-js: 2.1.4 + near-api-js: 4.0.3 - '@near-wallet-selector/welldone-wallet@8.9.7(near-api-js@2.1.4)': + '@near-wallet-selector/wallet-utils@8.9.7(near-api-js@4.0.3)': dependencies: - '@near-wallet-selector/core': 8.9.7(near-api-js@2.1.4) - '@near-wallet-selector/wallet-utils': 8.9.7(near-api-js@2.1.4) + '@near-wallet-selector/core': 8.9.7(near-api-js@4.0.3) + bn.js: 5.2.1 + near-api-js: 4.0.3 + + '@near-wallet-selector/welldone-wallet@8.9.7(near-api-js@4.0.3)': + dependencies: + '@near-wallet-selector/core': 8.9.7(near-api-js@4.0.3) + '@near-wallet-selector/wallet-utils': 8.9.7(near-api-js@4.0.3) is-mobile: 4.0.0 - near-api-js: 2.1.4 + near-api-js: 4.0.3 '@next/env@13.5.6': {} @@ -11433,69 +11645,73 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.17.1 - '@parcel/bundler-default@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/bundler-default@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: '@parcel/diagnostic': 2.12.0 '@parcel/graph': 3.2.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/rust': 2.12.0 '@parcel/utils': 2.12.0 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/cache@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/cache@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: '@parcel/core': 2.12.0(@swc/helpers@0.5.12) '@parcel/fs': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/logger': 2.12.0 '@parcel/utils': 2.12.0 lmdb: 2.8.5 + transitivePeerDependencies: + - '@swc/helpers' '@parcel/codeframe@2.12.0': dependencies: chalk: 4.1.2 - '@parcel/compressor-raw@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/compressor-raw@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/config-default@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)(postcss@8.4.39)(terser@5.31.3)(typescript@5.5.4)': + '@parcel/config-default@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)(postcss@8.4.39)(srcset@4.0.0)(terser@5.31.3)(typescript@5.5.4)': dependencies: - '@parcel/bundler-default': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/compressor-raw': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/bundler-default': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/compressor-raw': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/core': 2.12.0(@swc/helpers@0.5.12) - '@parcel/namer-default': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/optimizer-css': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/optimizer-htmlnano': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(postcss@8.4.39)(terser@5.31.3)(typescript@5.5.4) - '@parcel/optimizer-image': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/optimizer-svgo': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/namer-default': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/optimizer-css': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/optimizer-htmlnano': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)(postcss@8.4.39)(srcset@4.0.0)(terser@5.31.3)(typescript@5.5.4) + '@parcel/optimizer-image': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/optimizer-svgo': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/optimizer-swc': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) - '@parcel/packager-css': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/packager-html': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/packager-js': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/packager-raw': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/packager-svg': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/packager-wasm': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/reporter-dev-server': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/resolver-default': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/runtime-browser-hmr': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/runtime-js': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/runtime-react-refresh': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/runtime-service-worker': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/transformer-babel': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/transformer-css': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/transformer-html': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/transformer-image': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/packager-css': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/packager-html': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/packager-js': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/packager-raw': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/packager-svg': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/packager-wasm': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/reporter-dev-server': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/resolver-default': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/runtime-browser-hmr': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/runtime-js': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/runtime-react-refresh': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/runtime-service-worker': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/transformer-babel': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/transformer-css': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/transformer-html': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/transformer-image': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/transformer-js': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/transformer-json': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/transformer-postcss': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/transformer-posthtml': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/transformer-raw': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/transformer-react-refresh-wrap': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/transformer-svg': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/transformer-json': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/transformer-postcss': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/transformer-posthtml': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/transformer-raw': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/transformer-react-refresh-wrap': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/transformer-svg': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) transitivePeerDependencies: - '@swc/helpers' - cssnano @@ -11510,14 +11726,14 @@ snapshots: '@parcel/core@2.12.0(@swc/helpers@0.5.12)': dependencies: '@mischnic/json-sourcemap': 0.1.1 - '@parcel/cache': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/cache': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/diagnostic': 2.12.0 '@parcel/events': 2.12.0 '@parcel/fs': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/graph': 3.2.0 '@parcel/logger': 2.12.0 '@parcel/package-manager': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/profiler': 2.12.0 '@parcel/rust': 2.12.0 '@parcel/source-map': 2.1.1 @@ -11568,13 +11784,14 @@ snapshots: dependencies: chalk: 4.1.2 - '@parcel/namer-default@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/namer-default@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' '@parcel/node-resolver-core@3.3.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': dependencies: @@ -11588,10 +11805,10 @@ snapshots: transitivePeerDependencies: - '@parcel/core' - '@parcel/optimizer-css@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/optimizer-css@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/source-map': 2.1.1 '@parcel/utils': 2.12.0 browserslist: 4.23.2 @@ -11599,16 +11816,18 @@ snapshots: nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/optimizer-htmlnano@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(postcss@8.4.39)(terser@5.31.3)(typescript@5.5.4)': + '@parcel/optimizer-htmlnano@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)(postcss@8.4.39)(srcset@4.0.0)(terser@5.31.3)(typescript@5.5.4)': dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - htmlnano: 2.1.1(postcss@8.4.39)(svgo@2.8.0)(terser@5.31.3)(typescript@5.5.4) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + htmlnano: 2.1.1(postcss@8.4.39)(srcset@4.0.0)(svgo@2.8.0)(terser@5.31.3)(typescript@5.5.4) nullthrows: 1.1.1 posthtml: 0.16.6 svgo: 2.8.0 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - cssnano - postcss - purgecss @@ -11618,28 +11837,31 @@ snapshots: - typescript - uncss - '@parcel/optimizer-image@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/optimizer-image@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: '@parcel/core': 2.12.0(@swc/helpers@0.5.12) '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/rust': 2.12.0 '@parcel/utils': 2.12.0 '@parcel/workers': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + transitivePeerDependencies: + - '@swc/helpers' - '@parcel/optimizer-svgo@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/optimizer-svgo@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/utils': 2.12.0 svgo: 2.8.0 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' '@parcel/optimizer-swc@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/source-map': 2.1.1 '@parcel/utils': 2.12.0 '@swc/core': 1.7.1(@swc/helpers@0.5.12) @@ -11663,31 +11885,33 @@ snapshots: transitivePeerDependencies: - '@swc/helpers' - '@parcel/packager-css@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/packager-css@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/source-map': 2.1.1 '@parcel/utils': 2.12.0 lightningcss: 1.25.1 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/packager-html@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/packager-html@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/types': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/utils': 2.12.0 nullthrows: 1.1.1 posthtml: 0.16.6 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/packager-js@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/packager-js@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/rust': 2.12.0 '@parcel/source-map': 2.1.1 '@parcel/types': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) @@ -11696,33 +11920,38 @@ snapshots: nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/packager-raw@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/packager-raw@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/packager-svg@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/packager-svg@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/types': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/utils': 2.12.0 posthtml: 0.16.6 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/packager-wasm@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/packager-wasm@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/plugin@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/plugin@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: '@parcel/types': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' '@parcel/profiler@2.12.0': dependencies: @@ -11730,71 +11959,79 @@ snapshots: '@parcel/events': 2.12.0 chrome-trace-event: 1.0.4 - '@parcel/reporter-cli@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/reporter-cli@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/types': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/utils': 2.12.0 chalk: 4.1.2 term-size: 2.2.1 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/reporter-dev-server@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/reporter-dev-server@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/utils': 2.12.0 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/reporter-tracer@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/reporter-tracer@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/utils': 2.12.0 chrome-trace-event: 1.0.4 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/resolver-default@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/resolver-default@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: '@parcel/node-resolver-core': 3.3.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/runtime-browser-hmr@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/runtime-browser-hmr@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/utils': 2.12.0 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/runtime-js@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/runtime-js@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/utils': 2.12.0 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/runtime-react-refresh@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/runtime-react-refresh@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/utils': 2.12.0 react-error-overlay: 6.0.9 react-refresh: 0.9.0 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/runtime-service-worker@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/runtime-service-worker@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/utils': 2.12.0 nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' '@parcel/rust@2.12.0': {} @@ -11802,10 +12039,10 @@ snapshots: dependencies: detect-libc: 1.0.3 - '@parcel/transformer-babel@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/transformer-babel@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/source-map': 2.1.1 '@parcel/utils': 2.12.0 browserslist: 4.23.2 @@ -11814,11 +12051,12 @@ snapshots: semver: 7.6.3 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/transformer-css@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/transformer-css@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/source-map': 2.1.1 '@parcel/utils': 2.12.0 browserslist: 4.23.2 @@ -11826,11 +12064,12 @@ snapshots: nullthrows: 1.1.1 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/transformer-html@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/transformer-html@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/rust': 2.12.0 nullthrows: 1.1.1 posthtml: 0.16.6 @@ -11840,20 +12079,23 @@ snapshots: srcset: 4.0.0 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/transformer-image@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/transformer-image@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: '@parcel/core': 2.12.0(@swc/helpers@0.5.12) - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/utils': 2.12.0 '@parcel/workers': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) nullthrows: 1.1.1 + transitivePeerDependencies: + - '@swc/helpers' '@parcel/transformer-js@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': dependencies: '@parcel/core': 2.12.0(@swc/helpers@0.5.12) '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/rust': 2.12.0 '@parcel/source-map': 2.1.1 '@parcel/utils': 2.12.0 @@ -11864,17 +12106,18 @@ snapshots: regenerator-runtime: 0.13.11 semver: 7.6.3 - '@parcel/transformer-json@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/transformer-json@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) json5: 2.2.3 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/transformer-postcss@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/transformer-postcss@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/rust': 2.12.0 '@parcel/utils': 2.12.0 clone: 2.1.2 @@ -11883,10 +12126,11 @@ snapshots: semver: 7.6.3 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/transformer-posthtml@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/transformer-posthtml@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/utils': 2.12.0 nullthrows: 1.1.1 posthtml: 0.16.6 @@ -11895,25 +12139,28 @@ snapshots: semver: 7.6.3 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/transformer-raw@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/transformer-raw@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/transformer-react-refresh-wrap@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/transformer-react-refresh-wrap@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/utils': 2.12.0 react-refresh: 0.9.0 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' - '@parcel/transformer-svg@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))': + '@parcel/transformer-svg@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: '@parcel/diagnostic': 2.12.0 - '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/plugin': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/rust': 2.12.0 nullthrows: 1.1.1 posthtml: 0.16.6 @@ -11922,10 +12169,11 @@ snapshots: semver: 7.6.3 transitivePeerDependencies: - '@parcel/core' + - '@swc/helpers' '@parcel/types@2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)': dependencies: - '@parcel/cache': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/cache': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/diagnostic': 2.12.0 '@parcel/fs': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/package-manager': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) @@ -12036,12 +12284,12 @@ snapshots: tslib: 2.6.3 webcrypto-core: 1.8.0 - '@peersyst/near-mobile-signer@1.0.11(@swc/helpers@0.5.12)(postcss@8.4.39)(terser@5.31.3)(typescript@5.5.4)': + '@peersyst/near-mobile-signer@1.0.11(@swc/helpers@0.5.12)(postcss@8.4.39)(srcset@4.0.0)(terser@5.31.3)(typescript@5.5.4)': dependencies: bn.js: 5.2.1 js-sha256: 0.9.0 near-api-js: 2.1.4 - parcel: 2.12.0(@swc/helpers@0.5.12)(postcss@8.4.39)(terser@5.31.3)(typescript@5.5.4) + parcel: 2.12.0(@swc/helpers@0.5.12)(postcss@8.4.39)(srcset@4.0.0)(terser@5.31.3)(typescript@5.5.4) transitivePeerDependencies: - '@swc/helpers' - cssnano @@ -12054,6 +12302,11 @@ snapshots: - typescript - uncss + '@phosphor-icons/react@2.1.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + '@popperjs/core@2.11.8': {} '@protobufjs/aspromise@1.1.2': {} @@ -13175,12 +13428,12 @@ snapshots: '@scure/bip32@1.3.2': dependencies: '@noble/curves': 1.2.0 - '@noble/hashes': 1.3.2 + '@noble/hashes': 1.3.3 '@scure/base': 1.1.7 '@scure/bip39@1.2.1': dependencies: - '@noble/hashes': 1.3.2 + '@noble/hashes': 1.3.3 '@scure/base': 1.1.7 '@sentry-internal/feedback@7.118.0': @@ -15582,6 +15835,15 @@ snapshots: dotenv@7.0.0: {} + downshift@9.0.7(react@18.3.1): + dependencies: + '@babel/runtime': 7.24.8 + compute-scroll-into-view: 3.1.0 + prop-types: 15.8.1 + react: 18.3.1 + react-is: 18.2.0 + tslib: 2.6.3 + duplexify@4.1.3: dependencies: end-of-stream: 1.4.4 @@ -16333,6 +16595,14 @@ snapshots: functions-have-names@1.2.3: {} + generate-function@2.3.1: + dependencies: + is-property: 1.0.2 + + generate-object-property@1.2.0: + dependencies: + is-property: 1.0.2 + gensync@1.0.0-beta.2: {} get-caller-file@2.0.5: {} @@ -16562,13 +16832,14 @@ snapshots: hosted-git-info@2.8.9: {} - htmlnano@2.1.1(postcss@8.4.39)(svgo@2.8.0)(terser@5.31.3)(typescript@5.5.4): + htmlnano@2.1.1(postcss@8.4.39)(srcset@4.0.0)(svgo@2.8.0)(terser@5.31.3)(typescript@5.5.4): dependencies: cosmiconfig: 9.0.0(typescript@5.5.4) posthtml: 0.16.6 timsort: 0.3.0 optionalDependencies: postcss: 8.4.39 + srcset: 4.0.0 svgo: 2.8.0 terser: 5.31.3 transitivePeerDependencies: @@ -16795,6 +17066,16 @@ snapshots: is-module@1.0.0: {} + is-my-ip-valid@1.0.1: {} + + is-my-json-valid@2.20.6: + dependencies: + generate-function: 2.3.1 + generate-object-property: 1.2.0 + is-my-ip-valid: 1.0.1 + jsonpointer: 5.0.1 + xtend: 4.0.2 + is-negative-zero@2.0.3: {} is-number-object@1.0.7: @@ -16823,6 +17104,8 @@ snapshots: is-promise@2.2.2: {} + is-property@1.0.2: {} + is-reference@1.2.1: dependencies: '@types/estree': 1.0.5 @@ -17194,6 +17477,8 @@ snapshots: dependencies: p-locate: 6.0.0 + lodash-es@4.17.21: {} + lodash.camelcase@4.3.0: {} lodash.clonedeep@4.5.0: {} @@ -17783,6 +18068,28 @@ snapshots: transitivePeerDependencies: - encoding + near-api-js@4.0.3: + dependencies: + '@near-js/accounts': 1.2.1 + '@near-js/crypto': 1.2.4 + '@near-js/keystores': 0.0.12 + '@near-js/keystores-browser': 0.0.12 + '@near-js/keystores-node': 0.0.12 + '@near-js/providers': 0.2.2 + '@near-js/signers': 0.1.4 + '@near-js/transactions': 1.2.2 + '@near-js/types': 0.2.1 + '@near-js/utils': 0.2.2 + '@near-js/wallet-account': 1.2.2 + '@noble/curves': 1.2.0 + borsh: 1.0.0 + depd: 2.0.0 + http-errors: 1.7.2 + near-abi: 0.1.1 + node-fetch: 2.6.7 + transitivePeerDependencies: + - encoding + near-fastauth-wallet@2.0.1(moment@2.30.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(vite@5.3.4(@types/node@18.19.42)(lightningcss@1.25.1)(terser@5.31.3)): dependencies: '@ant-design/icons': 5.4.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -17823,7 +18130,7 @@ snapshots: near-hd-key: 1.2.1 tweetnacl: 1.0.3 - near-social-vm@https://codeload.github.com/calebjacob/VM/tar.gz/9ae4f62b37349d7dc9927f53b77f80bcceed1ecc(@babel/core@7.24.9)(@popperjs/core@2.11.8)(@types/react-dom@18.3.0)(@types/react@18.3.3)(near-api-js@2.1.4)(prop-types@15.8.1)(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1): + near-social-vm@https://codeload.github.com/calebjacob/VM/tar.gz/9ae4f62b37349d7dc9927f53b77f80bcceed1ecc(@babel/core@7.24.9)(@popperjs/core@2.11.8)(@types/react-dom@18.3.0)(@types/react@18.3.3)(near-api-js@4.0.3)(prop-types@15.8.1)(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1): dependencies: '@radix-ui/react-accordion': 1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@radix-ui/react-alert-dialog': 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -17869,7 +18176,7 @@ snapshots: lodash.clonedeep: 4.5.0 mdast-util-find-and-replace: 2.2.2 nanoid: 4.0.2 - near-api-js: 2.1.4 + near-api-js: 4.0.3 prettier: 2.8.8 react: 18.3.1 react-bootstrap: 2.10.4(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -18126,18 +18433,18 @@ snapshots: p-try@2.2.0: {} - parcel@2.12.0(@swc/helpers@0.5.12)(postcss@8.4.39)(terser@5.31.3)(typescript@5.5.4): + parcel@2.12.0(@swc/helpers@0.5.12)(postcss@8.4.39)(srcset@4.0.0)(terser@5.31.3)(typescript@5.5.4): dependencies: - '@parcel/config-default': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)(postcss@8.4.39)(terser@5.31.3)(typescript@5.5.4) + '@parcel/config-default': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12)(postcss@8.4.39)(srcset@4.0.0)(terser@5.31.3)(typescript@5.5.4) '@parcel/core': 2.12.0(@swc/helpers@0.5.12) '@parcel/diagnostic': 2.12.0 '@parcel/events': 2.12.0 '@parcel/fs': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/logger': 2.12.0 '@parcel/package-manager': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) - '@parcel/reporter-cli': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/reporter-dev-server': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) - '@parcel/reporter-tracer': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12)) + '@parcel/reporter-cli': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/reporter-dev-server': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) + '@parcel/reporter-tracer': 2.12.0(@parcel/core@2.12.0(@swc/helpers@0.5.12))(@swc/helpers@0.5.12) '@parcel/utils': 2.12.0 chalk: 4.1.2 commander: 7.2.0 @@ -18801,6 +19108,8 @@ snapshots: react-is@17.0.2: {} + react-is@18.2.0: {} + react-is@18.3.1: {} react-lifecycles-compat@3.0.4: {} diff --git a/src/components/CookiePrompt.tsx b/src/components/CookiePrompt.tsx index 2146a0b0a..1e008a3ce 100644 --- a/src/components/CookiePrompt.tsx +++ b/src/components/CookiePrompt.tsx @@ -17,11 +17,7 @@ export const CookiePrompt = () => { const components = useBosComponents(); return ( - + ); }; diff --git a/src/components/lib/Container/Container.tsx b/src/components/RootContentContainer.tsx similarity index 100% rename from src/components/lib/Container/Container.tsx rename to src/components/RootContentContainer.tsx diff --git a/src/components/banner/Horizon.tsx b/src/components/banner/Horizon.tsx index 0aae0084a..8441bbb9d 100644 --- a/src/components/banner/Horizon.tsx +++ b/src/components/banner/Horizon.tsx @@ -1,7 +1,8 @@ +import { Button } from '@near-pagoda/ui'; +import { Text } from '@near-pagoda/ui'; +import { ArrowUpRight, XCircle } from '@phosphor-icons/react'; import styled from 'styled-components'; -import { Button } from '@/components/lib/Button'; -import { Text } from '@/components/lib/Text'; import { useBanner } from '@/hooks/useBanner'; type Props = { @@ -100,7 +101,7 @@ export const HorizonBanner = (props: Props) => { href="https://airtable.com/appFoIqAoY0ikoVIb/shrst8Tt4PUtYTSvD" target="_blank" label="Apply Now" - iconRight="ph-bold ph-arrow-up-right" + iconRight={} variant="primary" fill="outline" size="small" @@ -111,7 +112,7 @@ export const HorizonBanner = (props: Props) => { href="https://airtable.com/appFoIqAoY0ikoVIb/shrst8Tt4PUtYTSvD" target="_blank" label="Apply" - iconRight="ph-bold ph-arrow-up-right" + iconRight={} variant="primary" fill="outline" size="small" @@ -122,7 +123,7 @@ export const HorizonBanner = (props: Props) => { type="button" onClick={closeBanner} label="Close" - icon="ph-fill ph-x-circle" + iconRight={} size="small" className="close-button" fill="ghost" diff --git a/src/components/banner/MigrationBanner.tsx b/src/components/banner/MigrationBanner.tsx index e0eee2f1d..f018bfc22 100644 --- a/src/components/banner/MigrationBanner.tsx +++ b/src/components/banner/MigrationBanner.tsx @@ -1,6 +1,6 @@ +import { Text } from '@near-pagoda/ui'; import styled from 'styled-components'; -import { Text } from '@/components/lib/Text'; import { useAuthStore } from '@/stores/auth'; type Props = { diff --git a/src/components/lib/Button/Button.tsx b/src/components/lib/Button/Button.tsx deleted file mode 100644 index 3ca742169..000000000 --- a/src/components/lib/Button/Button.tsx +++ /dev/null @@ -1,380 +0,0 @@ -import type { ButtonHTMLAttributes } from 'react'; -import { forwardRef } from 'react'; -import styled from 'styled-components'; - -type Fill = 'solid' | 'outline' | 'ghost'; -type Size = 'small' | 'default' | 'large'; -type Variant = 'primary' | 'secondary' | 'affirmative' | 'destructive'; - -type Props = Omit, 'size'> & { - disabled?: boolean; - fill?: Fill; - href?: string; - target?: string; - icon?: string; - iconLeft?: string; - iconRight?: string; - label: string; - loading?: boolean; - size?: Size; - type?: 'button' | 'submit'; - variant?: Variant; -}; - -type StyledProps = { - disabled?: boolean; - fill: Fill; - icon?: string; - loading?: boolean; - size: Size; - variant: Variant; -}; - -const variants: Record = { - primary: { - outline: { - background: 'var(--sand1)', - border: 'var(--sand6)', - color: 'var(--violet8)', - iconColor: 'var(--violet9)', - hover: { - border: 'var(--violet6)', - }, - focus: { - border: 'var(--violet9)', - }, - active: { - background: 'var(--violet2)', - border: 'var(--violet7)', - }, - }, - solid: { - background: 'var(--sand12) !important', //Important is necessary as long as [[...pages]].tsx fetches static html blog content - border: 'var(--sand12)', - color: 'var(--sand1)', - iconColor: 'var(--sand9)', - hover: { - background: 'var(--sand11)', - border: 'var(--sand11)', - }, - focus: {}, - active: {}, - }, - }, - secondary: { - outline: { - background: 'var(--sand1)', - border: 'var(--sand6)', - color: 'var(--sand12)', - iconColor: 'var(--sand10)', - hover: { - border: 'var(--sand8)', - }, - focus: { - border: 'var(--violet8)', - }, - active: { - background: 'var(--sand3)', - border: 'var(--sand8)', - }, - }, - solid: { - background: 'var(--sand3)', - border: 'var(--sand6)', - color: 'var(--sand12)', - iconColor: 'var(--sand11)', - hover: { - background: 'var(--sand4)', - }, - focus: { - border: 'var(--violet8)', - }, - active: { - background: 'var(--sand5)', - }, - }, - }, - destructive: { - outline: { - background: 'var(--sand1)', - border: 'var(--sand6)', - color: 'var(--red8)', - iconColor: 'var(--red9)', - hover: { - border: 'var(--red6)', - }, - focus: { - border: 'var(--violet8)', - }, - active: { - background: 'var(--red2)', - border: 'var(--red7)', - }, - }, - solid: { - background: 'var(--red9)', - border: 'var(--red8)', - color: 'var(--red12)', - iconColor: 'var(--red11)', - hover: { - background: 'var(--red10)', - }, - focus: { - border: 'var(--red11)', - }, - active: { - background: 'var(--red8)', - }, - }, - }, - affirmative: { - outline: { - background: 'var(--sand1)', - border: 'var(--sand6)', - color: 'var(--green11)', - iconColor: 'var(--green10)', - hover: { - border: 'var(--green9)', - }, - focus: { - border: 'var(--violet8)', - }, - active: { - background: 'var(--green2)', - border: 'var(--green8)', - }, - }, - solid: { - background: 'var(--green9)', - border: 'var(--green8)', - color: 'var(--green12)', - iconColor: 'var(--green11)', - hover: { - background: 'var(--green10)', - }, - focus: { - border: 'var(--green11)', - }, - active: { - background: 'var(--green8)', - }, - }, - }, -}; -variants.primary.ghost = { - ...variants.primary.outline, - border: 'hsla(0, 0%, 100%, 0)', - background: 'hsla(0, 0%, 100%, 0)', -}; -variants.secondary.ghost = { - ...variants.secondary.outline, - border: 'hsla(0, 0%, 100%, 0)', - background: 'hsla(0, 0%, 100%, 0)', -}; -variants.destructive.ghost = { - ...variants.destructive.outline, - border: 'hsla(0, 0%, 100%, 0)', - background: 'hsla(0, 0%, 100%, 0)', -}; -variants.affirmative.ghost = { - ...variants.affirmative.outline, - border: 'hsla(0, 0%, 100%, 0)', - background: 'hsla(0, 0%, 100%, 0)', -}; - -const sizes: Record = { - small: { - font: 'var(--text-xs)', - gap: '6px', - height: '32px', - icon: '14px', - paddingX: '16px', - }, - default: { - font: 'var(--text-s)', - gap: '8px', - height: '40px', - icon: '18px', - paddingX: '20px', - }, - large: { - font: 'var(--text-base)', - gap: '8px', - height: '48px', - icon: '18px', - paddingX: '24px', - }, -}; - -function returnColor(variant: Variant, fill: string, state: string, key: string) { - if (state === 'default') return variants[variant][fill][key]; - return variants[variant][fill][state][key] || variants[variant][fill][key]; -} - -const StyledButton = styled.button` - all: unset; - box-sizing: border-box; - position: relative; - display: inline-flex; - align-items: center; - justify-content: center; - flex-shrink: 0; - width: ${(p) => (p.icon ? sizes[p.size].height : undefined)}; - height: ${(p) => sizes[p.size].height}; - padding: ${(p) => (p.icon ? '0' : `0 ${sizes[p.size].paddingX}`)}; - font: ${(p) => sizes[p.size].font}; - font-weight: 600; - line-height: 1; - border-radius: 100px; - background: ${(p) => returnColor(p.variant, p.fill, 'default', 'background')}; - color: ${(p) => returnColor(p.variant, p.fill, 'default', 'color')}; - border: 1px solid ${(p) => returnColor(p.variant, p.fill, 'default', 'border')}; - box-shadow: 0 0 0 0px var(--violet4); - cursor: pointer; - transition: all 200ms; - text-decoration: none !important; - - &:hover { - background: ${(p) => returnColor(p.variant, p.fill, 'hover', 'background')}; - color: ${(p) => returnColor(p.variant, p.fill, 'hover', 'color')}; - border: 1px solid ${(p) => returnColor(p.variant, p.fill, 'hover', 'border')}; - } - &:focus { - background: ${(p) => returnColor(p.variant, p.fill, 'focus', 'background')}; - color: ${(p) => returnColor(p.variant, p.fill, 'focus', 'color')}; - border: 1px solid ${(p) => returnColor(p.variant, p.fill, 'focus', 'border')}; - box-shadow: 0 0 0 4px var(--violet4); - } - &:active { - background: ${(p) => returnColor(p.variant, p.fill, 'active', 'background')}; - color: ${(p) => returnColor(p.variant, p.fill, 'active', 'color')}; - border: 1px solid ${(p) => returnColor(p.variant, p.fill, 'active', 'border')}; - } - - ${(p) => - p.loading && - ` - pointer-events: none; - `} - - ${(p) => - p.disabled && - ` - opacity: 1; - background: ${p.fill === 'ghost' ? 'hsla(0, 0%, 100%, 0)' : 'var(--sand3)'}; - border-color: var(--sand3); - color: var(--sand8); - pointer-events: none; - - i { - color: var(--sand8) !important; - } - `} -`; - -const Inner = styled.span` - display: inline-flex; - align-items: center; - justify-content: center; - gap: ${(p) => sizes[p.size].gap}; - - i { - font-size: ${(p) => sizes[p.size].icon}; - line-height: ${(p) => sizes[p.size].icon}; - color: ${(p) => (p.icon ? undefined : returnColor(p.variant, p.fill, 'default', 'iconColor'))}; - } - - ${(p) => - p.loading && - ` - opacity: 0; - `} -`; - -const Label = styled.span``; - -const Spinner = styled.i` - position: absolute; - top: 50%; - left: 0; - right: 0; - margin: calc(${(p) => sizes[p.size].icon} * -0.5) auto 0; - width: ${(p) => sizes[p.size].icon}; - height: ${(p) => sizes[p.size].icon}; - font-size: ${(p) => sizes[p.size].icon}; - line-height: ${(p) => sizes[p.size].icon}; - animation: spin 800ms infinite linear; - - @keyframes spin { - from { - transform: rotate(0deg); - } - to { - transform: rotate(360deg); - } - } -`; - -export const Button = forwardRef( - ( - { - disabled, - fill = 'solid', - href, - icon, - iconLeft, - iconRight, - label, - loading, - size = 'default', - type = 'button', - variant = 'primary', - ...forwardedProps - }, - ref, - ) => { - const conditionalAttributes: Record = href - ? { - as: 'a', - href, - } - : { - type, - disabled: disabled || loading, - }; - - if (icon) { - conditionalAttributes['aria-label'] = label; - } - - const styledProps: StyledProps = { - disabled, - fill, - icon, - loading, - size, - variant, - }; - - return ( - - <> - {loading && } - - {icon ? ( - - ) : ( - <> - {iconLeft && } - - {iconRight && } - - )} - - - - ); - }, -); - -Button.displayName = 'Button'; diff --git a/src/components/lib/Button/index.tsx b/src/components/lib/Button/index.tsx deleted file mode 100644 index 8b166a86e..000000000 --- a/src/components/lib/Button/index.tsx +++ /dev/null @@ -1 +0,0 @@ -export * from './Button'; diff --git a/src/components/lib/Container/index.ts b/src/components/lib/Container/index.ts deleted file mode 100644 index 8a1103ffa..000000000 --- a/src/components/lib/Container/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './Container'; diff --git a/src/components/lib/Input/Input.tsx b/src/components/lib/Input/Input.tsx deleted file mode 100644 index 5343b1525..000000000 --- a/src/components/lib/Input/Input.tsx +++ /dev/null @@ -1,94 +0,0 @@ -// originally copied from https://github.com/near/pagoda-experiments/blob/main/packages/ui/src/components/Input.tsx -import type { ComponentPropsWithRef, FormEventHandler, ReactElement } from 'react'; -import { forwardRef } from 'react'; - -import * as S from './styles'; - -type Props = ComponentPropsWithRef<'input'> & { - assistive?: string; - error?: string; - iconLeft?: string; // meaning the className of ph-icon or bootstrap icon - iconRight?: string; // meaning the className of ph-icon or bootstrap icon - label?: string; - left?: ReactElement; - name: string; - right?: ReactElement; - success?: string; -}; - -export const Input = forwardRef( - ( - { - // assistive, - autoComplete, - error, - iconLeft, - iconRight, - inputMode, - label, - left, - name, - right, - style, - success, - type = 'text', - ...props - }, - ref, - ) => { - // const assistiveTextId = `${name}-assistive-text`; - const variant: 'default' | 'success' | 'error' = error ? 'error' : success ? 'success' : 'default'; - - if (type === 'search' && !iconLeft) { - iconLeft = 'ph-bold ph-magnifying-glass'; - } - - const onInput: FormEventHandler = (event) => { - props.onInput && props.onInput(event); - }; - - return ( - - - {label && {label}} - - - {iconLeft && - - {/* I'm going to leave this as an idea to implement such in future */} - {/* */} - - - ); - }, -); -Input.displayName = 'Input'; diff --git a/src/components/lib/Input/index.ts b/src/components/lib/Input/index.ts deleted file mode 100644 index ba9fe7ebc..000000000 --- a/src/components/lib/Input/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './Input'; diff --git a/src/components/lib/Input/styles.ts b/src/components/lib/Input/styles.ts deleted file mode 100644 index a48328e5c..000000000 --- a/src/components/lib/Input/styles.ts +++ /dev/null @@ -1,195 +0,0 @@ -// originally copied from https://github.com/near/pagoda-experiments/blob/main/packages/ui/src/components/Input.module.scss -import styled from 'styled-components'; - -export const Wrapper = styled.div` - --input-icon-size: 1rem; - --input-color-background: var(--sand1); - --input-color-border: var(--sand6); - --input-color-text: var(--sand12); - --input-color-icon: var(--sand10); - --transition-speed: 200ms; - - position: relative; - flex-shrink: 0; - - &[data-grow='true'] { - width: 100%; - flex-grow: 1; - flex-basis: 0; - } -`; - -export const LabelWrapper = styled.label` - display: flex; - width: 100%; - flex-direction: column; - gap: 5px; -`; - -export const Label = styled.span` - display: block; - font: var(--text-xs); - font-weight: 600; - color: var(--sand12); -`; - -export const Icon = styled.i` - display: block; - width: var(--input-icon-size); - height: var(--input-icon-size); - pointer-events: none; - transition: all var(--transition-speed); - color: var(--input-color-icon); -`; - -export const Input = styled.input` - display: block; - flex-grow: 1; - border: none; - background: none; - margin: 0; - min-width: 0; - width: 100%; - height: 40px; - line-height: 40px; - padding: 0; - color: var(--sand12); - font: var(--text-base); - font-size: 16px; // Make sure we always use 16px to prevent iOS auto-zoom - outline: none !important; - text-align: left; - transition: color var(--transition-speed), opacity var(--transition-speed); - - &::placeholder { - color: var(--sand10); - font: var(--text-base); - font-size: 16px; // Make sure we always use 16px to prevent iOS auto-zoom - opacity: 1; - } - - [data-disabled='true'] & { - opacity: 1; - color: var(--sand9); - - &::placeholder { - color: var(--sand9); - } - } - - [data-textarea='true'] & { - line-height: 1.5; - padding: 8px 12px; - height: unset; - min-height: 4rem; - field-sizing: content; // Progressive enhancement for browsers that support it: https://caniuse.com/?search=field-sizing - } - - &::-webkit-inner-spin-button, - &::-webkit-outer-spin-button { - -webkit-appearance: 'none'; - margin: 0; - } -`; - -export const InputWrapper = styled.div` - display: flex; - align-items: center; - padding: 0 12px; - column-gap: 10px; - position: relative; - border-radius: 6px; - color: var(--input-color-text); - border: 1px solid var(--input-color-border); - background-color: var(--input-color-background); - transition: background-color var(--transition-speed), border-color var(--transition-speed), - color var(--transition-speed), box-shadow var(--transition-speed); - - &:hover { - --input-color-border: var(--sand7); - --input-color-background: var(--sand2); - } - - [data-type='search'] & { - border-radius: 100px; - - input::-webkit-search-cancel-button { - -webkit-appearance: none; - height: 1.25rem; - width: 1.25rem; - border-radius: 100px; - background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgZmlsbD0iIzAwMDAwMCIgdmlld0JveD0iMCAwIDI1NiAyNTYiPjxwYXRoIGQ9Ik0xMjgsMjRBMTA0LDEwNCwwLDEsMCwyMzIsMTI4LDEwNC4xMSwxMDQuMTEsMCwwLDAsMTI4LDI0Wm0zNy42NiwxMzAuMzRhOCw4LDAsMCwxLTExLjMyLDExLjMyTDEyOCwxMzkuMzFsLTI2LjM0LDI2LjM1YTgsOCwwLDAsMS0xMS4zMi0xMS4zMkwxMTYuNjksMTI4LDkwLjM0LDEwMS42NmE4LDgsMCwwLDEsMTEuMzItMTEuMzJMMTI4LDExNi42OWwyNi4zNC0yNi4zNWE4LDgsMCwwLDEsMTEuMzIsMTEuMzJMMTM5LjMxLDEyOFoiPjwvcGF0aD48L3N2Zz4=) - no-repeat 50% 50%; - background-size: contain; - opacity: 0.35; - position: relative; - right: -5px; - cursor: pointer; - transition: var(--transition-speed); - - &:hover { - opacity: 0.5; - } - } - } - - [data-variant='error'] & { - --input-color-background: var(--red1); - --input-color-border: var(--red9); - ${Icon} { - --input-color-icon: var(--red9); - } - ${Input} { - --input-color-icon: var(--red12); - } - &:hover { - --input-color-background: var(--red2); - --input-color-border: var(--red8); - } - } - - [data-variant='success'] & { - --input-color-background: var(--green1); - --input-color-border: var(--green9); - ${Icon} { - --input-color-icon: var(--green8); - } - ${Input} { - --input-color-icon: var(--green12); - } - &:hover { - --input-color-background: var(--green2); - --input-color-border: var(--green8); - } - } - - [data-disabled='true'] & { - pointer-events: none; - --input-color-background: var(--sand3); - --input-color-border: var(--sand3); - ${Icon} { - --input-color-icon: var(--sand8); - } - } - - [data-textarea='true'] & { - padding: 0; - } - - [data-open='true'] & { - border-bottom-left-radius: 0; - border-bottom-right-radius: 0; - } - - &:focus-within { - --input-color-border: var(--violet8) !important; - --input-color-background: var(--white) !important; - outline: none; - box-shadow: 0 0 0 4px var(--violet4); - ${Icon} { - --input-color-icon: var(--violet7); - } - ${Input} { - --input-color-icon: var(--violet12); - } - } -`; diff --git a/src/components/lib/Spinner/Spinner.tsx b/src/components/lib/Spinner/Spinner.tsx deleted file mode 100644 index 6f9ef921e..000000000 --- a/src/components/lib/Spinner/Spinner.tsx +++ /dev/null @@ -1,33 +0,0 @@ -import styled from 'styled-components'; - -const Wrapper = styled.span` - display: inline-flex; - width: 100%; - align-items: center; - justify-content: center; - padding: 12px; - animation: spin 1200ms infinite linear; - - i { - color: currentColor; - font-size: 16px; - line-height: 16px; - } - - @keyframes spin { - from { - transform: rotate(0deg); - } - to { - transform: rotate(360deg); - } - } -`; - -export function Spinner() { - return ( - - - - ); -} diff --git a/src/components/lib/Spinner/index.ts b/src/components/lib/Spinner/index.ts deleted file mode 100644 index b259397be..000000000 --- a/src/components/lib/Spinner/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './Spinner'; diff --git a/src/components/lib/Text/Text.tsx b/src/components/lib/Text/Text.tsx deleted file mode 100644 index f7381fa97..000000000 --- a/src/components/lib/Text/Text.tsx +++ /dev/null @@ -1,14 +0,0 @@ -import styled from 'styled-components'; - -type Props = { - color?: string; - font?: 'text-xs' | 'text-s' | 'text-base' | 'text-l' | 'text-xl' | 'text-2xl' | 'text-3xl' | 'text-hero'; - weight?: string; -}; - -export const Text = styled.p` - font: ${(p) => (p.font ? `var(--${p.font})` : `var(--text-base)`)}; - font-weight: ${(p) => p.weight ?? '400'}; - color: ${(p) => (p.color ? `var(--${p.color})` : `currentColor`)}; - margin: 0; -`; diff --git a/src/components/lib/Text/index.tsx b/src/components/lib/Text/index.tsx deleted file mode 100644 index b0c76af0b..000000000 --- a/src/components/lib/Text/index.tsx +++ /dev/null @@ -1 +0,0 @@ -export * from './Text'; diff --git a/src/components/lib/Toast/README.md b/src/components/lib/Toast/README.md deleted file mode 100644 index d8dabeb73..000000000 --- a/src/components/lib/Toast/README.md +++ /dev/null @@ -1,83 +0,0 @@ -# Toast - -Implemented via Radix primitives: https://www.radix-ui.com/docs/primitives/components/toast - -_If the current props and Stitches style overrides aren't enough to cover your use case, feel free to implement your own component using the Radix primitives directly._ - -## Example - -Using the `openToast` API allows you to easily open a toast from any context: - -```tsx -import { openToast } from '@/components/lib/Toast'; - -... - - -``` - -You can pass other options too: - -```tsx - -``` - -## Deduplicate - -If you need to ensure only a single instance of a toast is ever displayed at once, you can deduplicate by passing a unique `id` key. If a toast with the passed `id` is currently open, a new toast will not be opened: - -```tsx - -``` - -## Custom Toast - -If you need something more custom, you can render a custom toast using `lib/Toast/Toaster.tsx` as an example like so: - -```tsx -import * as Toast from '@/components/lib/Toast'; - -... - - - - My Title - My Description - - - - - -``` diff --git a/src/components/lib/Toast/Toast.tsx b/src/components/lib/Toast/Toast.tsx deleted file mode 100644 index a65a25cb6..000000000 --- a/src/components/lib/Toast/Toast.tsx +++ /dev/null @@ -1,25 +0,0 @@ -import * as ToastPrimitive from '@radix-ui/react-toast'; -import type { ComponentProps } from 'react'; -import { forwardRef } from 'react'; - -import * as S from './styles'; - -type CloseButtonProps = ComponentProps; - -export const Root = S.Root; -export const Title = S.Title; -export const Description = S.Description; -export const Content = S.Content; -export const Viewport = S.Viewport; -export const Action = ToastPrimitive.Action; -export const Provider = ToastPrimitive.Provider; -export const Close = ToastPrimitive.Close; - -export const CloseButton = forwardRef((props, ref) => { - return ( - - - - ); -}); -CloseButton.displayName = 'CloseButton'; diff --git a/src/components/lib/Toast/Toaster.tsx b/src/components/lib/Toast/Toaster.tsx deleted file mode 100644 index c3365a1d5..000000000 --- a/src/components/lib/Toast/Toaster.tsx +++ /dev/null @@ -1,48 +0,0 @@ -import type { Toast, ToastType } from './store'; -import { useToasterStore } from './store'; -import * as T from './Toast'; - -export function Toaster() { - const toaster = useToasterStore(); - - const iconsByType: Record = { - INFO: 'ph ph-info', - WARNING: 'ph ph-warning', - ERROR: 'ph ph-warning-circle', - SUCCESS: 'ph ph-check-circle', - }; - - function onOpenChange(open: boolean, toast: Toast) { - if (!open) toaster.close(toast); - } - - return ( - - {toaster.toasts.map((toast) => { - const type = toast.type || 'INFO'; - const icon = toast.icon || iconsByType[type]; - - return ( - onOpenChange(open, toast)} - key={toast.id} - > - - - - {toast.title} - {toast.description && {toast.description}} - - - - - ); - })} - - - - ); -} diff --git a/src/components/lib/Toast/api.ts b/src/components/lib/Toast/api.ts deleted file mode 100644 index 334dcbe8c..000000000 --- a/src/components/lib/Toast/api.ts +++ /dev/null @@ -1,6 +0,0 @@ -import type { OpenToastOptions } from './store'; -import { useToasterStore } from './store'; - -export function openToast(options: OpenToastOptions) { - useToasterStore.getState().open(options); -} diff --git a/src/components/lib/Toast/index.ts b/src/components/lib/Toast/index.ts deleted file mode 100644 index 17c87006d..000000000 --- a/src/components/lib/Toast/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from './api'; -export * from './Toast'; -export * from './Toaster'; diff --git a/src/components/lib/Toast/store.ts b/src/components/lib/Toast/store.ts deleted file mode 100644 index 30faaaf9f..000000000 --- a/src/components/lib/Toast/store.ts +++ /dev/null @@ -1,84 +0,0 @@ -import type { ReactElement } from 'react'; -import { create } from 'zustand'; - -export type ToastType = 'INFO' | 'ERROR' | 'SUCCESS' | 'WARNING'; - -export interface Toast { - description?: string | ReactElement; - duration?: number; - icon?: string; - id: string; - isOpen: boolean; - title: string; - type?: ToastType; -} - -export interface OpenToastOptions { - description?: string | ReactElement; - duration?: number; - icon?: string; - id?: string; - title: string; - type?: ToastType; -} - -interface ToasterStore { - toasts: Toast[]; - close: (toast: Toast) => void; - destroy: (toast: Toast) => void; - open: (options: OpenToastOptions) => void; -} - -export const useToasterStore = create((set) => ({ - toasts: [], - - close: (toast) => { - set((state) => { - const toasts = state.toasts.map((t) => { - if (t.id === toast.id) { - return { - ...t, - isOpen: false, - }; - } - - return t; - }); - - setTimeout(() => { - state.destroy(toast); - }, 5000); - - return { - toasts, - }; - }); - }, - - destroy: (toast) => { - set((state) => { - const toasts = state.toasts.filter((t) => t.id !== toast.id); - - return { - toasts, - }; - }); - }, - - open: (options) => { - const newToast = { - ...options, - isOpen: true, - id: options.id || Date.now().toString(), - type: options.type || 'INFO', - }; - - set((state) => { - const toasts = state.toasts.filter((t) => t.id !== newToast.id); - - return { - toasts: [...toasts, newToast], - }; - }); - }, -})); diff --git a/src/components/lib/Toast/styles.ts b/src/components/lib/Toast/styles.ts deleted file mode 100644 index db957642d..000000000 --- a/src/components/lib/Toast/styles.ts +++ /dev/null @@ -1,126 +0,0 @@ -import * as ToastPrimitive from '@radix-ui/react-toast'; -import styled, { keyframes } from 'styled-components'; - -const hideAnimation = keyframes` - from { opacity: 1; } - to { opacity: 0; } -`; - -const slideInAnimation = keyframes` - from { transform: translateX(calc(100% + 1rem)) } - to { transform: translateX(0) } -`; - -const swipeOutAnimation = keyframes` - from { transform: translateX(var(--radix-toast-swipe-end-x)) } - to { transform: translateX(calc(100% + 1rem)) } -`; - -export const Viewport = styled(ToastPrimitive.Viewport)` - position: fixed; - bottom: 0; - right: 0; - display: flex; - flex-direction: column; - gap: 1rem; - padding: 1rem; - width: 100%; - max-height: 100vh; - max-width: 20rem; - z-index: 2147483632; -`; - -export const Root = styled(ToastPrimitive.Root)` - display: flex; - gap: 1rem; - align-items: center; - background: #000; - color: #fff; - border-radius: 1rem; - box-shadow: 0 0 20px rgba(0, 0, 0, 0.2); - padding: 1rem; - - i { - font-size: 1.4rem; - } - - &[data-state='open'] { - animation: ${slideInAnimation} 200ms cubic-bezier(0.16, 1, 0.3, 1); - } - &[data-state='closed'] { - animation: ${hideAnimation} 200ms ease-in forwards; - } - &[data-swipe='move'] { - transform: translateX(var(--radix-toast-swipe-move-x)); - } - &[data-swipe='cancel'] { - transform: translateX(0); - transition: transform 200ms ease-out; - } - &[data-swipe='end'] { - animation: ${swipeOutAnimation} 100ms ease-out forwards; - } - - &[data-type='ERROR'] { - background: var(--red11); - } - &[data-type='SUCCESS'] { - background: var(--green11); - } - &[data-type='INFO'] { - background: var(--sand12); - } - &[data-type='WARNING'] { - background: var(--amber4); - color: var(--amber12); - } -`; - -export const Content = styled.div` - display: flex; - flex-direction: column; - width: 100%; - gap: 0rem; -`; - -export const Title = styled(ToastPrimitive.Title)` - font: 450 16px/1.5 'Mona Sans', sans-serif; - color: currentColor; -`; - -export const Description = styled(ToastPrimitive.Description)` - font: 450 14px/1.5 'Mona Sans', sans-serif; - color: currentColor; - opacity: 0.8; -`; - -export const CloseButton = styled(ToastPrimitive.Close)` - display: flex; - align-items: center; - justify-content: center; - width: 1.5rem; - height: 1.5rem; - flex-shrink: 0; - border-radius: 100%; - cursor: pointer; - color: #fff; - border: 2px solid rgba(255, 255, 255, 0.25); - background: none; - transition: all 200ms; - - &:hover { - border-color: rgba(255, 255, 255, 0.5); - } - - &:focus { - border-color: rgba(255, 255, 255, 1); - } - - i { - font-size: 0.8rem; - } - - &[data-type='WARNING'] { - color: var(--amber12); - } -`; diff --git a/src/components/lib/Tooltip/README.md b/src/components/lib/Tooltip/README.md deleted file mode 100644 index 90a6dc4c9..000000000 --- a/src/components/lib/Tooltip/README.md +++ /dev/null @@ -1,84 +0,0 @@ -# Tooltip - -Implemented via Radix primitives: https://www.radix-ui.com/docs/primitives/components/tooltip - -_If the current props and Stitches style overrides aren't enough to cover your use case, feel free to implement your own component using the Radix primitives directly._ - -## Example - -Simply wrap the element you desire to have a tooltip with the `` component: - -```tsx -import { Tooltip } from '@/components/lib/Tooltip'; - -... - - - - -``` - -## Props - -To simplify usage of the Radix tooltip primitives, the component abstracts away the need for using `Root`, `Trigger`, and `Content` - all you need to do is use the single `` component as shown above. - -To pass a [Root](https://www.radix-ui.com/docs/primitives/components/tooltip#root) option, use the `root={{}}` property like so: - -```tsx - - ... - -``` - -To pass a [Content](https://www.radix-ui.com/docs/primitives/components/tooltip#content) option, pass it as you normally would like so: - -```tsx - - ... - -``` - -## Content - -The `content` prop can be passed a string to render a default message: - -```tsx -... -``` - -A `ReactNode` can also be passed if you want to use a custom set of elements for the message. - -```tsx - - I have an icon. - - } -> - ... - -``` - -## Disabled - -Sometimes you might need to temporarily disable the tooltip from appearing. You can use the `disabled` prop to prevent the tooltip from showing while still letting the child element be interacted with: - -```tsx - - - -``` - -You can also disable the tooltip for touch screens: - -```tsx - - - -``` diff --git a/src/components/lib/Tooltip/Tooltip.tsx b/src/components/lib/Tooltip/Tooltip.tsx deleted file mode 100644 index c4636a2ee..000000000 --- a/src/components/lib/Tooltip/Tooltip.tsx +++ /dev/null @@ -1,42 +0,0 @@ -import * as Primitive from '@radix-ui/react-tooltip'; -import type { ComponentProps, ReactElement, ReactNode } from 'react'; - -import * as S from './styles'; - -type RootProps = Omit, 'children'>; -type ContentProps = ComponentProps; - -type Props = ContentProps & { - children: ReactElement; - content: ReactNode; - disabled?: boolean; - root?: RootProps; -}; - -export const Tooltip = ({ - children, - content, - disabled, - root = { disableHoverableContent: true }, - side = 'top', - sideOffset = 3, - ...props -}: Props) => { - const delayDuration = root?.delayDuration || 300; - - return ( - - - {children} - - - - {content} - - - - - - - ); -}; diff --git a/src/components/lib/Tooltip/index.ts b/src/components/lib/Tooltip/index.ts deleted file mode 100644 index 7594a8f06..000000000 --- a/src/components/lib/Tooltip/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './Tooltip'; diff --git a/src/components/lib/Tooltip/styles.ts b/src/components/lib/Tooltip/styles.ts deleted file mode 100644 index c765c2849..000000000 --- a/src/components/lib/Tooltip/styles.ts +++ /dev/null @@ -1,36 +0,0 @@ -import * as Primitive from '@radix-ui/react-tooltip'; -import styled from 'styled-components'; - -export const Content = styled(Primitive.Content)` - border-radius: 0.25rem; - padding: 0.3rem 0.5rem; - display: flex; - align-items: center; - gap: 0.5rem; - color: var(--sand12); - background-color: var(--white); - z-index: 2000; - max-width: 20rem; - font-size: 0.8rem; - line-height: 1.5; - word-break: break-word; - font-family: sans-serif; - box-shadow: 0 0 0 1px var(--sand6), 0 1px 2px 0 rgba(0, 0, 0, 0.06); -`; - -export const ArrowBorder = styled(Primitive.Arrow)` - fill: var(--sand6); - stroke: var(--sand6); - stroke-width: 2px; - margin-top: 1px; - margin-right: 1px; - - [data-side='bottom'] &, - [data-side='left'] & { - margin-right: -1px; - } -`; - -export const ArrowFill = styled(Primitive.Arrow)` - fill: var(--white); -`; diff --git a/src/components/marketing-navigation/UserDropdownMenu.tsx b/src/components/marketing-navigation/UserDropdownMenu.tsx index 999f6ed04..f5a69e381 100644 --- a/src/components/marketing-navigation/UserDropdownMenu.tsx +++ b/src/components/marketing-navigation/UserDropdownMenu.tsx @@ -1,4 +1,5 @@ -import * as DropdownMenu from '@radix-ui/react-dropdown-menu'; +import { Dropdown, SvgIcon } from '@near-pagoda/ui'; +import { Bank, Gear, SignOut, User, Wallet } from '@phosphor-icons/react'; import { useRouter } from 'next/router'; import { useCallback } from 'react'; import styled from 'styled-components'; @@ -9,14 +10,28 @@ import { useAuthStore } from '@/stores/auth'; import { useVmStore } from '@/stores/vm'; const Wrapper = styled.div` + flex-grow: 1; + + .user-icon-trigger { + border-radius: 4px; + height: 36px; + height: 36px; + > * { + margin: auto; + } + } + > button { all: unset; + box-sizing: border-box; display: flex; + width: 100%; align-items: center; border-radius: 50px; background-color: var(--sand12); padding: 4px; transition: all 200ms; + overflow: hidden; &:hover { background-color: var(--black); @@ -26,6 +41,7 @@ const Wrapper = styled.div` box-shadow: 0 0 0 4px var(--violet4); } } + .d-inline-block { width: unset !important; height: unset !important; @@ -38,7 +54,8 @@ const Wrapper = styled.div` i { color: #a1a09a; - margin: 0 5px 0 0; + margin-left: auto; + padding-right: 0.5rem; } .profile-info { @@ -61,98 +78,6 @@ const Wrapper = styled.div` } } - .DropdownMenuContent { - background-color: #161615; - border-radius: 6px; - margin-top: 11px; - padding: 12px; - box-shadow: 0px 10px 38px -10px rgba(22, 23, 24, 0.35), 0px 10px 20px -15px rgba(22, 23, 24, 0.2); - animation-duration: 600ms; - animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1); - will-change: transform, opacity; - z-index: 10000000; - } - .DropdownMenuContent[data-side='top'] { - animation-name: slideDownAndFade; - } - .DropdownMenuContent[data-side='right'] { - animation-name: slideLeftAndFade; - } - .DropdownMenuContent[data-side='bottom'] { - animation-name: slideUpAndFade; - } - .DropdownMenuContent[data-side='left'] { - animation-name: slideRightAndFade; - } - - .DropdownMenuItem { - all: unset; - font-size: 13px; - line-height: 1; - color: #9ba1a6; - border-radius: 3px; - display: flex; - align-items: center; - padding: 12px; - position: relative; - user-select: none; - outline: none; - } - - .DropdownMenuItem:hover { - color: white; - cursor: pointer; - } - - .DropdownMenuItem i { - font-size: 20px; - margin-right: 10px; - } - - @keyframes slideUpAndFade { - from { - opacity: 0; - transform: translateY(2px); - } - to { - opacity: 1; - transform: translateY(0); - } - } - - @keyframes slideRightAndFade { - from { - opacity: 0; - transform: translateX(-2px); - } - to { - opacity: 1; - transform: translateX(0); - } - } - - @keyframes slideDownAndFade { - from { - opacity: 0; - transform: translateY(-2px); - } - to { - opacity: 1; - transform: translateY(0); - } - } - - @keyframes slideLeftAndFade { - from { - opacity: 0; - transform: translateX(2px); - } - to { - opacity: 1; - transform: translateX(0); - } - } - @media (max-width: 800px) { .profile-info, .ph { @@ -173,7 +98,11 @@ const Wrapper = styled.div` } `; -export const UserDropdownMenu = () => { +type Props = { + collapsed?: boolean; +}; + +export const UserDropdownMenu = ({ collapsed }: Props) => { const accountId = useAuthStore((store) => store.accountId); const availableStorage = useAuthStore((store) => store.availableStorage); const logOut = useAuthStore((store) => store.logOut); @@ -188,48 +117,53 @@ export const UserDropdownMenu = () => { return ( - - - -
-
- + + {collapsed ? ( + + } color="sand1" /> + + ) : ( + + +
+
+ +
+
{accountId}
-
{accountId}
-
- - - - - router.push(`/${components.profilePage}?accountId=${accountId}`)} - > - + + + )} + + + router.push(`/${components.profilePage}?accountId=${accountId}`)}> + } /> Profile - - router.push(`/settings`)}> - + + router.push(`/settings`)}> + } /> Settings - - withdrawStorage()}> - + + router.push(`/wallet-utilities`)}> + } /> + Wallet Utilities + + withdrawStorage()}> + } /> {availableStorage && `Withdraw ${availableStorage.div(1000).toFixed(2)}kb`} - - logOut()}> - + + logOut()}> + } /> Sign out - - - - - + + + ); }; diff --git a/src/components/marketing-navigation/desktop/DesktopNavigation.tsx b/src/components/marketing-navigation/desktop/DesktopNavigation.tsx index a2e13fa7b..57c361cde 100644 --- a/src/components/marketing-navigation/desktop/DesktopNavigation.tsx +++ b/src/components/marketing-navigation/desktop/DesktopNavigation.tsx @@ -1,3 +1,4 @@ +import { Button } from '@near-pagoda/ui'; import Image from 'next/image'; import Link from 'next/link'; import { useRouter } from 'next/router'; @@ -6,7 +7,6 @@ import { useEffect, useRef, useState } from 'react'; import styled from 'styled-components'; import { MigrationBanner } from '@/components/banner/MigrationBanner'; -import { Button } from '@/components/lib/Button'; import { useBosComponents } from '@/hooks/useBosComponents'; import { useSignInRedirect } from '@/hooks/useSignInRedirect'; import { useAuthStore } from '@/stores/auth'; diff --git a/src/components/marketing-navigation/mobile/Menu.tsx b/src/components/marketing-navigation/mobile/Menu.tsx index f63c24b07..e01b3bc2d 100644 --- a/src/components/marketing-navigation/mobile/Menu.tsx +++ b/src/components/marketing-navigation/mobile/Menu.tsx @@ -1,8 +1,8 @@ +import { Button } from '@near-pagoda/ui'; import { useRouter } from 'next/router'; import React from 'react'; import styled from 'styled-components'; -import { Button } from '@/components/lib/Button'; import { useBosComponents } from '@/hooks/useBosComponents'; import { useSignInRedirect } from '@/hooks/useSignInRedirect'; import { useAuthStore } from '@/stores/auth'; diff --git a/src/components/marketing-navigation/mobile/MobileNavigation.tsx b/src/components/marketing-navigation/mobile/MobileNavigation.tsx index 102593683..661226a58 100644 --- a/src/components/marketing-navigation/mobile/MobileNavigation.tsx +++ b/src/components/marketing-navigation/mobile/MobileNavigation.tsx @@ -1,10 +1,10 @@ +import { Button } from '@near-pagoda/ui'; import Image from 'next/image'; import Link from 'next/link'; import { useState } from 'react'; import styled from 'styled-components'; import { MigrationBanner } from '@/components/banner/MigrationBanner'; -import { Button } from '@/components/lib/Button'; import { useSignInRedirect } from '@/hooks/useSignInRedirect'; import { useAuthStore } from '@/stores/auth'; diff --git a/src/components/sandbox/Sandbox.js b/src/components/sandbox/Sandbox.js index 09c6384e0..c5ea84ad0 100644 --- a/src/components/sandbox/Sandbox.js +++ b/src/components/sandbox/Sandbox.js @@ -1,3 +1,4 @@ +import { PlaceholderCard } from '@near-pagoda/ui'; import ls from 'local-storage'; import { useRouter } from 'next/router'; import prettier from 'prettier'; @@ -10,7 +11,6 @@ import { useCurrentComponentStore } from '@/stores/current-component'; import { useVmStore } from '@/stores/vm'; import { recordHandledError } from '@/utils/analytics'; -import { Spinner } from '../lib/Spinner'; import BannerOboarding from './Banners/BannerOboarding'; import VsCodeBanner from './Banners/VsCodeBanner'; import MainWrapper from './css/MainWrapper'; @@ -505,7 +505,7 @@ export const Sandbox = ({ onboarding = false }) => { firstLoad(); }, [cache, firstLoad, near]); - if (!shouldRender) return ; + if (!shouldRender) return ; return ( diff --git a/src/components/sidebar-navigation/LargeScreenHeader.tsx b/src/components/sidebar-navigation/LargeScreenHeader.tsx index bb70c070c..7d46fb28d 100644 --- a/src/components/sidebar-navigation/LargeScreenHeader.tsx +++ b/src/components/sidebar-navigation/LargeScreenHeader.tsx @@ -1,12 +1,12 @@ +import { Button } from '@near-pagoda/ui'; import { useEffect, useState } from 'react'; import { useBosComponents } from '@/hooks/useBosComponents'; import { useSignInRedirect } from '@/hooks/useSignInRedirect'; import { useAuthStore } from '@/stores/auth'; -import { Button } from '../lib/Button'; +import { UserDropdownMenu } from '../marketing-navigation/UserDropdownMenu'; import { VmComponent } from '../vm/VmComponent'; -import { LargeScreenProfileDropdown } from './LargeScreenProfileDropdown'; import { useNavigationStore } from './store'; import * as S from './styles'; @@ -40,13 +40,12 @@ export const LargeScreenHeader = () => { return ( - + ) : ( <> diff --git a/src/components/sidebar-navigation/LargeScreenProfileDropdown.tsx b/src/components/sidebar-navigation/LargeScreenProfileDropdown.tsx deleted file mode 100644 index 1f3718ad1..000000000 --- a/src/components/sidebar-navigation/LargeScreenProfileDropdown.tsx +++ /dev/null @@ -1,34 +0,0 @@ -import { useCallback } from 'react'; - -import { useBosComponents } from '@/hooks/useBosComponents'; -import { useAuthStore } from '@/stores/auth'; -import { useVmStore } from '@/stores/vm'; - -import { VmComponent } from '../vm/VmComponent'; -import * as S from './styles'; - -export const LargeScreenProfileDropdown = () => { - const components = useBosComponents(); - const near = useVmStore((store) => store.near); - const availableStorage = useAuthStore((store) => store.availableStorage); - const availableStorageDisplay = availableStorage?.gte(10) ? availableStorage.div(1000).toFixed(2) : '0'; - const logOut = useAuthStore((store) => store.logOut); - - const withdrawTokens = useCallback(async () => { - if (!near) return; - await near.contract.storage_withdraw({}, undefined, '1'); - }, [near]); - - return ( - - - - ); -}; diff --git a/src/components/sidebar-navigation/PinnedApps.tsx b/src/components/sidebar-navigation/PinnedApps.tsx index d7ce3d721..36012747b 100644 --- a/src/components/sidebar-navigation/PinnedApps.tsx +++ b/src/components/sidebar-navigation/PinnedApps.tsx @@ -1,14 +1,14 @@ /* eslint-disable @next/next/no-img-element */ +import { Tooltip } from '@near-pagoda/ui'; +import { Button } from '@near-pagoda/ui'; +import { Text } from '@near-pagoda/ui'; import { useRouter } from 'next/router'; import { useEffect } from 'react'; import { useBosComponents } from '@/hooks/useBosComponents'; import { useAuthStore } from '@/stores/auth'; -import { Button } from '../lib/Button'; -import { Text } from '../lib/Text'; -import { Tooltip } from '../lib/Tooltip'; import { useNavigationStore } from './store'; import * as S from './styles'; import { currentPathMatchesRoute } from './utils'; @@ -75,7 +75,7 @@ export const PinnedApps = () => { <> {isSidebarExpanded ? ( - + Discover apps from the NEAR developer community to pin. diff --git a/src/components/sidebar-navigation/Search.tsx b/src/components/sidebar-navigation/Search.tsx index 40fbc3268..b5f3a8ed2 100644 --- a/src/components/sidebar-navigation/Search.tsx +++ b/src/components/sidebar-navigation/Search.tsx @@ -1,8 +1,8 @@ +import { Input } from '@near-pagoda/ui'; import * as HoverCard from '@radix-ui/react-hover-card'; import Link from 'next/link'; import React, { useCallback, useEffect, useRef, useState } from 'react'; -import { Input } from '@/components/lib/Input'; import useDebounce from '@/hooks/useDebounce'; import { fetchSearchHits } from '@/utils/algoliaSearchApi'; import { fetchCatalog } from '@/utils/catalogSearchApi'; diff --git a/src/components/sidebar-navigation/Sidebar.tsx b/src/components/sidebar-navigation/Sidebar.tsx index ad42c4f5e..f01bd3f52 100644 --- a/src/components/sidebar-navigation/Sidebar.tsx +++ b/src/components/sidebar-navigation/Sidebar.tsx @@ -1,3 +1,4 @@ +import { Tooltip } from '@near-pagoda/ui'; import Image from 'next/image'; import { useRouter } from 'next/router'; import { useRef } from 'react'; @@ -5,9 +6,8 @@ import { useRef } from 'react'; import { useSignInRedirect } from '@/hooks/useSignInRedirect'; import { useAuthStore } from '@/stores/auth'; -import { Tooltip } from '../lib/Tooltip'; +import { UserDropdownMenu } from '../marketing-navigation/UserDropdownMenu'; import NearIconSvg from './icons/near-icon.svg'; -import { LargeScreenProfileDropdown } from './LargeScreenProfileDropdown'; import { Search } from './Search'; import { useNavigationStore } from './store'; import * as S from './styles'; @@ -168,12 +168,14 @@ export const Sidebar = () => { Get Funding + @@ -181,9 +183,9 @@ export const Sidebar = () => { {signedIn ? ( - + ) : ( - + Sign-up or Login diff --git a/src/components/sidebar-navigation/SmallScreenHeader.tsx b/src/components/sidebar-navigation/SmallScreenHeader.tsx index 88dedd025..c4f6a55ab 100644 --- a/src/components/sidebar-navigation/SmallScreenHeader.tsx +++ b/src/components/sidebar-navigation/SmallScreenHeader.tsx @@ -1,12 +1,13 @@ +import { Button } from '@near-pagoda/ui'; +import { MagnifyingGlass } from '@phosphor-icons/react/dist/ssr'; import Image from 'next/image'; import { useRouter } from 'next/router'; import { useSignInRedirect } from '@/hooks/useSignInRedirect'; import { useAuthStore } from '@/stores/auth'; -import { Button } from '../lib/Button'; +import { UserDropdownMenu } from '../marketing-navigation/UserDropdownMenu'; import NearIconSvg from './icons/near-icon.svg'; -import { LargeScreenProfileDropdown } from './LargeScreenProfileDropdown'; import { useNavigationStore } from './store'; import * as S from './styles'; @@ -51,8 +52,8 @@ export const SmallScreenHeader = () => { {signedIn ? ( -