From c98f6f065a2ef64f94a3fc449718060264ebe76f Mon Sep 17 00:00:00 2001 From: Tom Meagher Date: Mon, 1 Jul 2024 12:29:39 -0400 Subject: [PATCH] chore: revert vite imports --- packages/connectors/src/coinbaseWallet.ts | 20 ++++++++++++++++++-- packages/connectors/src/metaMask.ts | 10 +++++++++- 2 files changed, 27 insertions(+), 3 deletions(-) diff --git a/packages/connectors/src/coinbaseWallet.ts b/packages/connectors/src/coinbaseWallet.ts index 470dc1db09..f45c461c95 100644 --- a/packages/connectors/src/coinbaseWallet.ts +++ b/packages/connectors/src/coinbaseWallet.ts @@ -170,7 +170,15 @@ function version4(parameters: Version4Parameters) { }, async getProvider() { if (!walletProvider) { - const { CoinbaseWalletSDK } = await import('@coinbase/wallet-sdk') + // Unwrapping import for Vite compatibility. + // See: https://github.com/vitejs/vite/issues/9703 + const CoinbaseWalletSDK = await (async () => { + const { default: SDK } = await import('@coinbase/wallet-sdk') + if (typeof SDK !== 'function' && typeof SDK.default === 'function') + return SDK.default + return SDK as unknown as typeof SDK.default + })() + sdk = new CoinbaseWalletSDK({ ...parameters, appChainIds: config.chains.map((x) => x.id), @@ -396,7 +404,15 @@ function version3(parameters: Version3Parameters) { }, async getProvider() { if (!walletProvider) { - const { CoinbaseWalletSDK } = await import('cbw-sdk') + // Unwrapping import for Vite compatibility. + // See: https://github.com/vitejs/vite/issues/9703 + const CoinbaseWalletSDK = await (async () => { + const { default: SDK } = await import('cbw-sdk') + if (typeof SDK !== 'function' && typeof SDK.default === 'function') + return SDK.default + return SDK as unknown as typeof SDK.default + })() + sdk = new CoinbaseWalletSDK({ reloadOnDisconnect, ...parameters }) // Force types to retrieve private `walletExtension` method from the Coinbase Wallet SDK. diff --git a/packages/connectors/src/metaMask.ts b/packages/connectors/src/metaMask.ts index 29ef8ea4e1..cf572ad58b 100644 --- a/packages/connectors/src/metaMask.ts +++ b/packages/connectors/src/metaMask.ts @@ -157,7 +157,15 @@ export function metaMask(parameters: MetaMaskParameters = {}) { }, async getProvider() { async function initProvider() { - const { MetaMaskSDK } = await import('@metamask/sdk') + // Unwrapping import for Vite compatibility. + // See: https://github.com/vitejs/vite/issues/9703 + const MetaMaskSDK = await (async () => { + const { default: SDK } = await import('@metamask/sdk') + if (typeof SDK !== 'function' && typeof SDK.default === 'function') + return SDK.default + return SDK as unknown as typeof SDK.default + })() + sdk = new MetaMaskSDK({ dappMetadata: {}, ...parameters,