@lifi/widget 3.10.0 → 3.10.1-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
1
  export declare const name = "@lifi/widget";
2
- export declare const version = "3.10.0";
2
+ export declare const version = "3.10.1-alpha.0";
@@ -1,3 +1,3 @@
1
1
  export const name = '@lifi/widget';
2
- export const version = '3.10.0';
2
+ export const version = '3.10.1-alpha.0';
3
3
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../../src/config/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,IAAI,GAAG,cAAc,CAAA;AAClC,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAA"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../../src/config/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,IAAI,GAAG,cAAc,CAAA;AAClC,MAAM,CAAC,MAAM,OAAO,GAAG,gBAAgB,CAAA"}
@@ -2,28 +2,35 @@ import { getConnectorClient as getBigmiConnectorClient } from '@bigmi/client';
2
2
  import { useConfig as useBigmiConfig } from '@bigmi/react';
3
3
  import { ChainType, EVM, Solana, UTXO, config } from '@lifi/sdk';
4
4
  import { useWallet } from '@solana/wallet-adapter-react';
5
- import { useEffect } from 'react';
5
+ import { useContext, useEffect } from 'react';
6
6
  import { useConfig as useWagmiConfig } from 'wagmi';
7
7
  import { getConnectorClient as getWagmiConnectorClient, switchChain, } from 'wagmi/actions';
8
8
  import { useWidgetConfig } from '../WidgetProvider/WidgetProvider.js';
9
+ import { EVMExternalContext } from './EVMExternalContext.js';
9
10
  export const SDKProviders = () => {
10
11
  const { sdkConfig } = useWidgetConfig();
11
12
  const { wallet } = useWallet();
12
13
  const wagmiConfig = useWagmiConfig();
13
14
  const bigmiConfig = useBigmiConfig();
15
+ const hasExternalEVMContext = useContext(EVMExternalContext);
14
16
  useEffect(() => {
15
17
  // Configure SDK Providers
16
18
  const providers = [];
17
- const hasConfiguredEVMProvider = sdkConfig?.providers?.some((provider) => provider.type === ChainType.EVM);
19
+ const configuredEVMProvider = sdkConfig?.providers?.find((provider) => provider.type === ChainType.EVM);
18
20
  const hasConfiguredSVMProvider = sdkConfig?.providers?.some((provider) => provider.type === ChainType.SVM);
19
21
  const hasConfiguredUTXOProvider = sdkConfig?.providers?.some((provider) => provider.type === ChainType.UTXO);
20
- if (!hasConfiguredEVMProvider) {
22
+ // TODO: refactor this in favor of EIP-5792: Wallet Call API
23
+ const multisig = !hasExternalEVMContext && configuredEVMProvider
24
+ ? configuredEVMProvider.multisig
25
+ : undefined;
26
+ if (!configuredEVMProvider || multisig) {
21
27
  providers.push(EVM({
22
28
  getWalletClient: () => getWagmiConnectorClient(wagmiConfig),
23
29
  switchChain: async (chainId) => {
24
30
  const chain = await switchChain(wagmiConfig, { chainId });
25
31
  return getWagmiConnectorClient(wagmiConfig, { chainId: chain.id });
26
32
  },
33
+ multisig,
27
34
  }));
28
35
  }
29
36
  if (!hasConfiguredSVMProvider) {
@@ -42,7 +49,13 @@ export const SDKProviders = () => {
42
49
  providers.push(...sdkConfig.providers);
43
50
  }
44
51
  config.setProviders(providers);
45
- }, [bigmiConfig, sdkConfig?.providers, wagmiConfig, wallet?.adapter]);
52
+ }, [
53
+ bigmiConfig,
54
+ hasExternalEVMContext,
55
+ sdkConfig?.providers,
56
+ wagmiConfig,
57
+ wallet?.adapter,
58
+ ]);
46
59
  return null;
47
60
  };
48
61
  //# sourceMappingURL=SDKProviders.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SDKProviders.js","sourceRoot":"","sources":["../../../../src/providers/WalletProvider/SDKProviders.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,IAAI,uBAAuB,EAAE,MAAM,eAAe,CAAA;AAC7E,OAAO,EAAE,SAAS,IAAI,cAAc,EAAE,MAAM,cAAc,CAAA;AAE1D,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAEhE,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACjC,OAAO,EAAE,SAAS,IAAI,cAAc,EAAE,MAAM,OAAO,CAAA;AACnD,OAAO,EACL,kBAAkB,IAAI,uBAAuB,EAC7C,WAAW,GACZ,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AAErE,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE;IAC/B,MAAM,EAAE,SAAS,EAAE,GAAG,eAAe,EAAE,CAAA;IACvC,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,CAAA;IAC9B,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IACpC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAA;IAEpC,SAAS,CAAC,GAAG,EAAE;QACb,0BAA0B;QAC1B,MAAM,SAAS,GAAkB,EAAE,CAAA;QACnC,MAAM,wBAAwB,GAAG,SAAS,EAAE,SAAS,EAAE,IAAI,CACzD,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,GAAG,CAC9C,CAAA;QACD,MAAM,wBAAwB,GAAG,SAAS,EAAE,SAAS,EAAE,IAAI,CACzD,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,GAAG,CAC9C,CAAA;QACD,MAAM,yBAAyB,GAAG,SAAS,EAAE,SAAS,EAAE,IAAI,CAC1D,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,CAC/C,CAAA;QACD,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAC9B,SAAS,CAAC,IAAI,CACZ,GAAG,CAAC;gBACF,eAAe,EAAE,GAAG,EAAE,CAAC,uBAAuB,CAAC,WAAW,CAAC;gBAC3D,WAAW,EAAE,KAAK,EAAE,OAAe,EAAE,EAAE;oBACrC,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;oBACzD,OAAO,uBAAuB,CAAC,WAAW,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAA;gBACpE,CAAC;aACF,CAAC,CACH,CAAA;QACH,CAAC;QACD,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAC9B,SAAS,CAAC,IAAI,CACZ,MAAM,CAAC;gBACL,KAAK,CAAC,gBAAgB;oBACpB,OAAO,MAAM,EAAE,OAA8B,CAAA;gBAC/C,CAAC;aACF,CAAC,CACH,CAAA;QACH,CAAC;QACD,IAAI,CAAC,yBAAyB,EAAE,CAAC;YAC/B,SAAS,CAAC,IAAI,CACZ,IAAI,CAAC;gBACH,eAAe,EAAE,GAAG,EAAE,CAAC,uBAAuB,CAAC,WAAW,CAAC;aAC5D,CAAC,CACH,CAAA;QACH,CAAC;QACD,IAAI,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;YACjC,SAAS,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,SAAS,CAAC,CAAA;QACxC,CAAC;QACD,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;IAChC,CAAC,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IAErE,OAAO,IAAI,CAAA;AACb,CAAC,CAAA"}
1
+ {"version":3,"file":"SDKProviders.js","sourceRoot":"","sources":["../../../../src/providers/WalletProvider/SDKProviders.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lifi/widget",
3
- "version": "3.10.0",
3
+ "version": "3.10.1-alpha.0",
4
4
  "description": "LI.FI Widget for cross-chain bridging and swapping. It will drive your multi-chain strategy and attract new users from everywhere.",
5
5
  "type": "module",
6
6
  "main": "./dist/esm/index.js",
@@ -35,7 +35,7 @@
35
35
  "@bigmi/react": "^0.0.4",
36
36
  "@emotion/react": "^11.13.3",
37
37
  "@emotion/styled": "^11.13.0",
38
- "@lifi/sdk": "^3.4.0",
38
+ "@lifi/sdk": "^3.4.1",
39
39
  "@mui/icons-material": "^5.16.7",
40
40
  "@mui/lab": "^5.0.0-alpha.173",
41
41
  "@mui/material": "^5.16.7",
@@ -53,10 +53,10 @@
53
53
  "react-i18next": "^15.1.0",
54
54
  "react-intersection-observer": "^9.13.1",
55
55
  "react-router-dom": "^6.27.0",
56
- "viem": "^2.21.35",
56
+ "viem": "^2.21.37",
57
57
  "wagmi": "^2.12.25",
58
58
  "zustand": "^4.5.5",
59
- "@lifi/wallet-management": "^3.4.1"
59
+ "@lifi/wallet-management": "^3.4.2-alpha.0"
60
60
  },
61
61
  "peerDependencies": {
62
62
  "react": ">=18",
@@ -1,2 +1,2 @@
1
1
  export const name = '@lifi/widget'
2
- export const version = '3.10.0'
2
+ export const version = '3.10.1-alpha.0'
@@ -1,36 +1,43 @@
1
1
  import { getConnectorClient as getBigmiConnectorClient } from '@bigmi/client'
2
2
  import { useConfig as useBigmiConfig } from '@bigmi/react'
3
- import type { SDKProvider } from '@lifi/sdk'
3
+ import type { EVMProvider, SDKProvider } from '@lifi/sdk'
4
4
  import { ChainType, EVM, Solana, UTXO, config } from '@lifi/sdk'
5
5
  import type { SignerWalletAdapter } from '@solana/wallet-adapter-base'
6
6
  import { useWallet } from '@solana/wallet-adapter-react'
7
- import { useEffect } from 'react'
7
+ import { useContext, useEffect } from 'react'
8
8
  import { useConfig as useWagmiConfig } from 'wagmi'
9
9
  import {
10
10
  getConnectorClient as getWagmiConnectorClient,
11
11
  switchChain,
12
12
  } from 'wagmi/actions'
13
13
  import { useWidgetConfig } from '../WidgetProvider/WidgetProvider.js'
14
+ import { EVMExternalContext } from './EVMExternalContext.js'
14
15
 
15
16
  export const SDKProviders = () => {
16
17
  const { sdkConfig } = useWidgetConfig()
17
18
  const { wallet } = useWallet()
18
19
  const wagmiConfig = useWagmiConfig()
19
20
  const bigmiConfig = useBigmiConfig()
21
+ const hasExternalEVMContext = useContext(EVMExternalContext)
20
22
 
21
23
  useEffect(() => {
22
24
  // Configure SDK Providers
23
25
  const providers: SDKProvider[] = []
24
- const hasConfiguredEVMProvider = sdkConfig?.providers?.some(
26
+ const configuredEVMProvider = sdkConfig?.providers?.find(
25
27
  (provider) => provider.type === ChainType.EVM
26
- )
28
+ ) as EVMProvider | undefined
27
29
  const hasConfiguredSVMProvider = sdkConfig?.providers?.some(
28
30
  (provider) => provider.type === ChainType.SVM
29
31
  )
30
32
  const hasConfiguredUTXOProvider = sdkConfig?.providers?.some(
31
33
  (provider) => provider.type === ChainType.UTXO
32
34
  )
33
- if (!hasConfiguredEVMProvider) {
35
+ // TODO: refactor this in favor of EIP-5792: Wallet Call API
36
+ const multisig =
37
+ !hasExternalEVMContext && configuredEVMProvider
38
+ ? configuredEVMProvider.multisig
39
+ : undefined
40
+ if (!configuredEVMProvider || multisig) {
34
41
  providers.push(
35
42
  EVM({
36
43
  getWalletClient: () => getWagmiConnectorClient(wagmiConfig),
@@ -38,6 +45,7 @@ export const SDKProviders = () => {
38
45
  const chain = await switchChain(wagmiConfig, { chainId })
39
46
  return getWagmiConnectorClient(wagmiConfig, { chainId: chain.id })
40
47
  },
48
+ multisig,
41
49
  })
42
50
  )
43
51
  }
@@ -61,7 +69,13 @@ export const SDKProviders = () => {
61
69
  providers.push(...sdkConfig.providers)
62
70
  }
63
71
  config.setProviders(providers)
64
- }, [bigmiConfig, sdkConfig?.providers, wagmiConfig, wallet?.adapter])
72
+ }, [
73
+ bigmiConfig,
74
+ hasExternalEVMContext,
75
+ sdkConfig?.providers,
76
+ wagmiConfig,
77
+ wallet?.adapter,
78
+ ])
65
79
 
66
80
  return null
67
81
  }