From b0ebaf6736e808a06cf964d1f5c25d6b3919676d Mon Sep 17 00:00:00 2001 From: Chaitanya Potti Date: Fri, 20 Sep 2024 11:48:54 +0800 Subject: [PATCH] show registry at all times --- demo/vue-app-new/package-lock.json | 125 +++++++++--------- packages/base/src/utils.ts | 1 + packages/modal/package.json | 4 +- packages/modal/src/modalManager.ts | 5 +- .../ExternalWallet/ExternalWalletInstall.tsx | 4 +- .../ui/src/components/ExternalWallets.tsx | 8 +- 6 files changed, 76 insertions(+), 71 deletions(-) diff --git a/demo/vue-app-new/package-lock.json b/demo/vue-app-new/package-lock.json index 5ab2813b0..c574c5bdf 100644 --- a/demo/vue-app-new/package-lock.json +++ b/demo/vue-app-new/package-lock.json @@ -53,12 +53,12 @@ }, "../../packages/adapters/auth-adapter": { "name": "@web3auth/auth-adapter", - "version": "9.0.0-alpha.9", + "version": "9.0.1", "license": "ISC", "dependencies": { "@web3auth/auth": "^9.3.3", - "@web3auth/base": "^9.0.0-alpha.9", - "@web3auth/base-provider": "^9.0.0-alpha.9", + "@web3auth/base": "^9.0.1", + "@web3auth/base-provider": "^9.0.1", "deepmerge": "^4.3.1" }, "engines": { @@ -71,11 +71,11 @@ }, "../../packages/adapters/base-evm-adapter": { "name": "@web3auth/base-evm-adapter", - "version": "9.0.0-alpha.9", + "version": "9.0.1", "license": "ISC", "dependencies": { "@toruslabs/base-controllers": "^6.1.2", - "@web3auth/base": "^9.0.0-alpha.9" + "@web3auth/base": "^9.0.1" }, "engines": { "node": ">=18.x", @@ -87,11 +87,11 @@ }, "../../packages/adapters/base-solana-adapter": { "name": "@web3auth/base-solana-adapter", - "version": "9.0.0-alpha.9", + "version": "9.0.1", "license": "ISC", "dependencies": { "@toruslabs/base-controllers": "^6.1.2", - "@web3auth/base": "^9.0.0-alpha.9", + "@web3auth/base": "^9.0.1", "bs58": "^5.0.0" }, "devDependencies": { @@ -107,11 +107,11 @@ }, "../../packages/adapters/coinbase-adapter": { "name": "@web3auth/coinbase-adapter", - "version": "9.0.0-alpha.9", + "version": "9.0.1", "license": "ISC", "dependencies": { - "@web3auth/base": "^9.0.0-alpha.9", - "@web3auth/base-evm-adapter": "^9.0.0-alpha.9" + "@web3auth/base": "^9.0.1", + "@web3auth/base-evm-adapter": "^9.0.1" }, "devDependencies": { "@coinbase/wallet-sdk": "^4.0.4" @@ -127,12 +127,12 @@ }, "../../packages/adapters/default-evm-adapter": { "name": "@web3auth/default-evm-adapter", - "version": "9.0.0-alpha.9", + "version": "9.0.1", "license": "ISC", "dependencies": { - "@web3auth/base": "^9.0.0-alpha.9", - "@web3auth/base-evm-adapter": "^9.0.0-alpha.9", - "@web3auth/wallet-connect-v2-adapter": "^9.0.0-alpha.9", + "@web3auth/base": "^9.0.1", + "@web3auth/base-evm-adapter": "^9.0.1", + "@web3auth/wallet-connect-v2-adapter": "^9.0.1", "mipd": "^0.0.7" }, "engines": { @@ -145,7 +145,7 @@ }, "../../packages/adapters/default-solana-adapter": { "name": "@web3auth/default-solana-adapter", - "version": "9.0.0-alpha.9", + "version": "9.0.1", "license": "ISC", "dependencies": { "@solana/wallet-standard-features": "^1.2.0", @@ -154,9 +154,9 @@ "@wallet-standard/base": "^1.0.1", "@wallet-standard/features": "^1.0.3", "@web3auth/auth": "^9.3.3", - "@web3auth/base": "^9.0.0-alpha.9", - "@web3auth/base-solana-adapter": "^9.0.0-alpha.9", - "@web3auth/solana-provider": "^9.0.0-alpha.9", + "@web3auth/base": "^9.0.1", + "@web3auth/base-solana-adapter": "^9.0.1", + "@web3auth/solana-provider": "^9.0.1", "bn.js": "^5.2.1" }, "engines": { @@ -169,12 +169,12 @@ }, "../../packages/adapters/torus-evm-adapter": { "name": "@web3auth/torus-evm-adapter", - "version": "9.0.0-alpha.9", + "version": "9.0.1", "license": "ISC", "dependencies": { "@toruslabs/torus-embed": "^5.0.0", - "@web3auth/base": "^9.0.0-alpha.9", - "@web3auth/base-evm-adapter": "^9.0.0-alpha.9" + "@web3auth/base": "^9.0.1", + "@web3auth/base-evm-adapter": "^9.0.1" }, "engines": { "node": ">=18.x", @@ -186,14 +186,14 @@ }, "../../packages/adapters/torus-solana-adapter": { "name": "@web3auth/torus-solana-adapter", - "version": "9.0.0-alpha.9", + "version": "9.0.1", "license": "ISC", "dependencies": { "@toruslabs/solana-embed": "^2.1.0", - "@web3auth/base": "^9.0.0-alpha.9", - "@web3auth/base-provider": "^9.0.0-alpha.9", - "@web3auth/base-solana-adapter": "^9.0.0-alpha.9", - "@web3auth/solana-provider": "^9.0.0-alpha.9" + "@web3auth/base": "^9.0.1", + "@web3auth/base-provider": "^9.0.1", + "@web3auth/base-solana-adapter": "^9.0.1", + "@web3auth/solana-provider": "^9.0.1" }, "engines": { "node": ">=18.x", @@ -206,17 +206,17 @@ }, "../../packages/adapters/wallet-connect-v2-adapter": { "name": "@web3auth/wallet-connect-v2-adapter", - "version": "9.0.0-alpha.9", + "version": "9.0.1", "license": "ISC", "dependencies": { "@walletconnect/sign-client": "^2.16.1", "@walletconnect/types": "^2.16.1", "@walletconnect/utils": "^2.16.1", "@web3auth/auth": "^9.3.3", - "@web3auth/base": "^9.0.0-alpha.9", - "@web3auth/base-evm-adapter": "^9.0.0-alpha.9", - "@web3auth/base-provider": "^9.0.0-alpha.9", - "@web3auth/ethereum-provider": "^9.0.0-alpha.9", + "@web3auth/base": "^9.0.1", + "@web3auth/base-evm-adapter": "^9.0.1", + "@web3auth/base-provider": "^9.0.1", + "@web3auth/ethereum-provider": "^9.0.1", "deepmerge": "^4.3.1" }, "engines": { @@ -229,7 +229,7 @@ }, "../../packages/base": { "name": "@web3auth/base", - "version": "9.0.0-alpha.9", + "version": "9.0.1", "license": "ISC", "dependencies": { "@toruslabs/base-controllers": "^6.1.2", @@ -250,15 +250,15 @@ }, "../../packages/composables/modal-vue-composables": { "name": "@web3auth/modal-vue-composables", - "version": "9.0.0-alpha.9", + "version": "9.0.1", "license": "ISC", "dependencies": { - "@web3auth/base": "^9.0.0-alpha.9", - "@web3auth/modal": "^9.0.0-alpha.9" + "@web3auth/base": "^9.0.1", + "@web3auth/modal": "^9.0.1" }, "devDependencies": { "@web3auth/auth": "^9.3.3", - "@web3auth/auth-adapter": "^9.0.0-alpha.9" + "@web3auth/auth-adapter": "^9.0.1" }, "engines": { "node": ">=18.x", @@ -271,21 +271,21 @@ }, "../../packages/modal": { "name": "@web3auth/modal", - "version": "9.0.0-alpha.9", + "version": "9.0.1", "license": "ISC", "dependencies": { - "@web3auth/auth-adapter": "^9.0.0-alpha.9", - "@web3auth/base": "^9.0.0-alpha.9", - "@web3auth/base-provider": "^9.0.0-alpha.9", - "@web3auth/no-modal": "^9.0.0-alpha.9", - "@web3auth/ui": "^9.0.0-alpha.9", + "@web3auth/auth-adapter": "^9.0.1", + "@web3auth/base": "^9.0.1", + "@web3auth/base-provider": "^9.0.1", + "@web3auth/no-modal": "^9.0.1", + "@web3auth/ui": "^9.0.1", "deepmerge": "^4.3.1" }, "devDependencies": { "@svgr/webpack": "^8.1.0", "@toruslabs/isomorphic-style-loader": "^5.3.3", "@web3auth/auth": "^9.3.3", - "@web3auth/wallet-connect-v2-adapter": "^9.0.0-alpha.9", + "@web3auth/wallet-connect-v2-adapter": "^9.0.1", "css-loader": "^7.1.2", "postcss-prefix-selector": "^1.16.1", "style-loader": "^4.0.0", @@ -307,17 +307,17 @@ }, "../../packages/no-modal": { "name": "@web3auth/no-modal", - "version": "9.0.0-alpha.9", + "version": "9.0.1", "license": "ISC", "dependencies": { "@web3auth/auth": "^9.3.3", - "@web3auth/base": "^9.0.0-alpha.9", - "@web3auth/base-provider": "^9.0.0-alpha.9", + "@web3auth/base": "^9.0.1", + "@web3auth/base-provider": "^9.0.1", "deepmerge": "^4.3.1" }, "devDependencies": { - "@web3auth/auth-adapter": "^9.0.0-alpha.9", - "@web3auth/wallet-connect-v2-adapter": "^9.0.0-alpha.9" + "@web3auth/auth-adapter": "^9.0.1", + "@web3auth/wallet-connect-v2-adapter": "^9.0.1" }, "engines": { "node": ">=18.x", @@ -339,13 +339,13 @@ }, "../../packages/plugins/solana-wallet-connector-plugin": { "name": "@web3auth/solana-wallet-connector-plugin", - "version": "9.0.0-alpha.9", + "version": "9.0.1", "license": "ISC", "dependencies": { "@toruslabs/solana-embed": "^2.1.0", "@web3auth/auth": "^9.3.3", - "@web3auth/base": "^9.0.0-alpha.9", - "@web3auth/no-modal": "^9.0.0-alpha.9", + "@web3auth/base": "^9.0.1", + "@web3auth/no-modal": "^9.0.1", "loglevel": "^1.9.2" }, "engines": { @@ -358,12 +358,12 @@ }, "../../packages/plugins/wallet-services-plugin": { "name": "@web3auth/wallet-services-plugin", - "version": "9.0.0-alpha.9", + "version": "9.0.1", "license": "ISC", "dependencies": { "@web3auth/auth": "^9.3.3", - "@web3auth/base": "^9.0.0-alpha.9", - "@web3auth/no-modal": "^9.0.0-alpha.9", + "@web3auth/base": "^9.0.1", + "@web3auth/no-modal": "^9.0.1", "@web3auth/ws-embed": "^3.0.0", "loglevel": "^1.9.2" }, @@ -380,12 +380,12 @@ }, "../../packages/providers/base-provider": { "name": "@web3auth/base-provider", - "version": "9.0.0-alpha.9", + "version": "9.0.1", "license": "ISC", "dependencies": { "@toruslabs/base-controllers": "^6.1.2", "@web3auth/auth": "^9.3.3", - "@web3auth/base": "^9.0.0-alpha.9", + "@web3auth/base": "^9.0.1", "json-rpc-random-id": "^1.0.1" }, "devDependencies": { @@ -401,15 +401,16 @@ }, "../../packages/providers/ethereum-provider": { "name": "@web3auth/ethereum-provider", - "version": "9.0.0-alpha.9", + "version": "9.0.1", "license": "ISC", "dependencies": { "@ethereumjs/util": "^9.1.0", "@toruslabs/base-controllers": "^6.1.2", + "@toruslabs/eccrypto": "^5.0.4", "@toruslabs/http-helpers": "^7.0.0", "@web3auth/auth": "^9.3.3", - "@web3auth/base": "^9.0.0-alpha.9", - "@web3auth/base-provider": "^9.0.0-alpha.9", + "@web3auth/base": "^9.0.1", + "@web3auth/base-provider": "^9.0.1", "assert": "^2.1.0", "bignumber.js": "^9.1.2", "bn.js": "^5.2.1", @@ -431,14 +432,14 @@ }, "../../packages/providers/solana-provider": { "name": "@web3auth/solana-provider", - "version": "9.0.0-alpha.9", + "version": "9.0.1", "license": "ISC", "dependencies": { "@toruslabs/base-controllers": "^6.1.2", "@toruslabs/tweetnacl-js": "^1.0.4", "@web3auth/auth": "^9.3.3", - "@web3auth/base": "^9.0.0-alpha.9", - "@web3auth/base-provider": "^9.0.0-alpha.9", + "@web3auth/base": "^9.0.1", + "@web3auth/base-provider": "^9.0.1", "bn.js": "^5.2.1", "bs58": "^5.0.0", "json-rpc-random-id": "^1.0.1" diff --git a/packages/base/src/utils.ts b/packages/base/src/utils.ts index 49c3bddf8..9b50571ec 100644 --- a/packages/base/src/utils.ts +++ b/packages/base/src/utils.ts @@ -27,6 +27,7 @@ export interface WalletRegistryItem { sdks: string[]; }; app?: { + browser?: string; android?: string; ios?: string; chrome?: string; diff --git a/packages/modal/package.json b/packages/modal/package.json index deda55f43..e4192eb9d 100644 --- a/packages/modal/package.json +++ b/packages/modal/package.json @@ -38,8 +38,8 @@ "prettier --write" ] }, - "main": "dist/modal.cjs.js", - "module": "dist/modal.esm.js", + "main": "dist/lib.cjs/index.js", + "module": "dist/lib.esm/index.js", "name": "@web3auth/modal", "peerDependencies": { "@babel/runtime": "^7.x", diff --git a/packages/modal/src/modalManager.ts b/packages/modal/src/modalManager.ts index df263fa50..73e6459ad 100644 --- a/packages/modal/src/modalManager.ts +++ b/packages/modal/src/modalManager.ts @@ -380,7 +380,7 @@ export class Web3Auth extends Web3AuthNoModal implements IWeb3AuthModal { Object.keys(this.walletAdapters).forEach(async (adapterName) => { const adapter = this.walletAdapters[adapterName]; if (adapter?.type === ADAPTER_CATEGORY.EXTERNAL) { - log.debug("init external wallet", this.cachedAdapter, adapterName); + log.debug("init external wallet", this.cachedAdapter, adapterName, adapter.status); this.subscribeToAdapterEvents(adapter); // we are not initializing cached adapter here as it is already being initialized in initModal before. if (this.cachedAdapter === adapterName) { @@ -396,7 +396,8 @@ export class Web3Auth extends Web3AuthNoModal implements IWeb3AuthModal { return undefined; }) .catch((error) => log.error(error, "error while initializing adapter", adapterName)); - } else if (adapter.status === ADAPTER_STATUS.READY) { + } else if (adapter.status === ADAPTER_STATUS.READY || adapter.status === ADAPTER_STATUS.CONNECTING) { + // we use connecting status for wallet connect const adapterModalConfig = (this.modalConfig.adapters as Record)[adapterName]; adaptersConfig[adapterName] = { ...adapterModalConfig, isInjected: adapter.isInjected }; this.loginModal.addWalletLogins(adaptersConfig, { showExternalWalletsOnly: !!options?.showExternalWalletsOnly }); diff --git a/packages/ui/src/components/ExternalWallet/ExternalWalletInstall.tsx b/packages/ui/src/components/ExternalWallet/ExternalWalletInstall.tsx index 9f7517925..3d7e593ad 100644 --- a/packages/ui/src/components/ExternalWallet/ExternalWalletInstall.tsx +++ b/packages/ui/src/components/ExternalWallet/ExternalWalletInstall.tsx @@ -111,7 +111,9 @@ export default function ExternalWalletInstall(props: ExternalWalletInstallProps) // if browser is brave, use chrome extension const browserType = deviceDetails.browser === "brave" ? "chrome" : deviceDetails.browser; const browserExtensionConfig = connectButton.walletRegistryItem.app || {}; - const browserExtensionId = browserExtensionConfig[browserType]; + const extensionForCurrentBrowser = + browserExtensionConfig.browser && browserExtensionConfig.browser.includes(browserType) ? browserExtensionConfig.browser : undefined; + const browserExtensionId = browserExtensionConfig[browserType] || extensionForCurrentBrowser; const browserExtensionUrl = browserExtensionId ? getBrowserExtensionUrl(browserType, browserExtensionId) : null; const installLink = browserExtensionUrl ? (
  • diff --git a/packages/ui/src/components/ExternalWallets.tsx b/packages/ui/src/components/ExternalWallets.tsx index d0db96734..1e24135bf 100644 --- a/packages/ui/src/components/ExternalWallets.tsx +++ b/packages/ui/src/components/ExternalWallets.tsx @@ -52,10 +52,10 @@ export default function ExternalWallet(props: ExternalWalletsProps) { const [t] = useTranslation(undefined, { i18n }); const walletDiscoverySupported = useMemo(() => { - const walletConnectSupported = Object.keys(config || {}).some((adapter) => adapter === WALLET_ADAPTERS.WALLET_CONNECT_V2); - const supported = walletRegistry && Object.keys(walletRegistry).length > 0 && walletConnectSupported; + // console.log("config", config); + const supported = walletRegistry && Object.keys(walletRegistry).length > 0; return supported; - }, [config, walletRegistry]); + }, [walletRegistry]); const deviceDetails = useMemo<{ platform: platform; os: os; browser: browser }>(() => { const browser = bowser.getParser(window.navigator.userAgent); @@ -127,7 +127,7 @@ export default function ExternalWallet(props: ExternalWalletsProps) { walletRegistryItem, imgExtension: walletRegistryItem.imgExtension || "svg", }; - + // const isBrowserExtensionAvailable = walletRegistryItem.app?.chrome || walletRegistryItem.app?.firefox || walletRegistryItem.app?.edge; if (!button.hasInjectedWallet && !button.hasWalletConnect && !button.hasInstallLinks) return acc; const chainNamespaces = new Set(walletRegistryItem.chains?.map((chain) => chain.split(":")[0]));