@tomo-inc/wallet-adaptor-base 0.0.2 → 0.0.3

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.
Files changed (46) hide show
  1. package/dist/index.cjs +331 -48
  2. package/dist/index.d.cts +23 -3
  3. package/dist/index.d.ts +23 -3
  4. package/dist/index.js +331 -50
  5. package/package.json +2 -1
  6. package/src/index.ts +3 -0
  7. package/src/type.ts +5 -0
  8. package/src/utils/browsers.ts +13 -0
  9. package/src/utils/chainId.ts +1 -1
  10. package/src/wallet-api/chain.ts +9 -2
  11. package/src/wallet-api/connect.ts +83 -20
  12. package/src/wallet-api/sign-in.ts +4 -1
  13. package/src/wallet-api/sign-message.ts +38 -5
  14. package/src/wallets/Wallet.ts +4 -0
  15. package/src/wallets/default/binanceWallet/binanceWallet.ts +27 -0
  16. package/src/wallets/default/bitgetWallet/bitgetWallet.ts +10 -0
  17. package/src/wallets/default/bitverseWallet/bitverseWallet.ts +3 -0
  18. package/src/wallets/default/bybitWallet/bybitWallet.ts +5 -0
  19. package/src/wallets/default/coinbaseWallet/coinbaseWallet.ts +7 -0
  20. package/src/wallets/default/foxWallet/foxWallet.ts +5 -0
  21. package/src/wallets/default/gateWallet/gateWallet.ts +6 -0
  22. package/src/wallets/default/imTokenWallet/imTokenWallet.ts +9 -0
  23. package/src/wallets/default/iopayWallet/iopayWallet.ts +6 -0
  24. package/src/wallets/default/kaiaWallet/kaiaWallet.ts +5 -0
  25. package/src/wallets/default/kaikasWallet/kaikasWallet.ts +5 -0
  26. package/src/wallets/default/krakenWallet/krakenWallet.ts +5 -0
  27. package/src/wallets/default/kresusWallet/kresusWallet.ts +3 -0
  28. package/src/wallets/default/ledgerWallet/ledgerWallet.ts +6 -0
  29. package/src/wallets/default/metaMaskWallet/metaMaskWallet.ts +17 -0
  30. package/src/wallets/default/oktoWallet/oktoWallet.ts +6 -0
  31. package/src/wallets/default/okxWallet/okxWallet.ts +11 -0
  32. package/src/wallets/default/omniWallet/omniWallet.ts +6 -0
  33. package/src/wallets/default/oneInchWallet/oneInchWallet.ts +3 -0
  34. package/src/wallets/default/paraSwapWallet/paraswapWallet.ts +5 -0
  35. package/src/wallets/default/phantomWallet/phantomWallet.ts +7 -0
  36. package/src/wallets/default/rainbowWallet/rainbowWallet.ts +10 -0
  37. package/src/wallets/default/solflareWallet/solflareWallet.ts +7 -0
  38. package/src/wallets/default/tokenPocketWallet/tokenPocketWallet.ts +6 -0
  39. package/src/wallets/default/trustWallet/trustWallet.ts +6 -0
  40. package/src/wallets/default/uniswapWallet/uniswapWallet.ts +5 -0
  41. package/src/wallets/default/valoraWallet/valoraWallet.ts +4 -0
  42. package/src/wallets/default/zealWallet/zealWallet.ts +5 -0
  43. package/src/wallets/default/zerionWallet/zerionWallet.ts +6 -0
  44. package/src/wallets/detector.ts +32 -16
  45. package/src/wallets/providers/WalletConnectProvider.ts +3 -2
  46. package/src/wallets/wallet-walletconnect.ts +1 -1
package/dist/index.d.cts CHANGED
@@ -23,6 +23,10 @@ interface WalletInfo {
23
23
  rdns?: string;
24
24
  isWalletConnect?: boolean;
25
25
  deeplink?: string;
26
+ mobile?: {
27
+ getUri?: (uri: string) => string;
28
+ getDeeplink?: (dappUrl?: string, chainId?: number) => string | Promise<string>;
29
+ };
26
30
  links: {
27
31
  homepage?: string;
28
32
  ios_install?: string;
@@ -56,6 +60,7 @@ interface Connector {
56
60
  }
57
61
  interface ConnectParams {
58
62
  dappLink: string;
63
+ useWalletConnect?: boolean;
59
64
  }
60
65
  interface SignInParams {
61
66
  scheme?: "https" | "http";
@@ -92,6 +97,8 @@ interface ChainInfo {
92
97
  blockExplorerUrls: string[];
93
98
  }
94
99
 
100
+ declare function isMobile(): boolean;
101
+
95
102
  type WalletConfig = {
96
103
  id: string;
97
104
  name: string;
@@ -127,6 +134,10 @@ type WalletConfig = {
127
134
  linux?: string;
128
135
  desktop?: string;
129
136
  };
137
+ mobile?: {
138
+ getUri?: (uri: string) => string;
139
+ getDeeplink?: (dappUrl?: string, chainId?: number) => string | Promise<string>;
140
+ };
130
141
  };
131
142
  type WagmiWalletConfig = any;
132
143
 
@@ -148,10 +159,17 @@ declare const connect: (connectParams: ConnectParams, walletOptions: Omit<Wallet
148
159
  address: string;
149
160
  chainId?: string;
150
161
  network?: string;
162
+ provider?: any;
151
163
  }>;
152
164
  declare const disconnect: (walletOptions: WalletOptions) => Promise<boolean>;
165
+ declare const connectMobile: ({ connectParams, walletOptions, }: {
166
+ connectParams: ConnectParams;
167
+ walletOptions: Omit<WalletOptions, "account">;
168
+ }) => Promise<unknown>;
153
169
 
154
- declare const signInWithWallet: (signInData: SignInParams, walletOptions: WalletOptions) => Promise<string>;
170
+ declare const signInWithWallet: (signInData: SignInParams, walletOptions: WalletOptions & {
171
+ isInstalled?: boolean;
172
+ }) => Promise<string>;
155
173
 
156
174
  declare const switchChain: (chainId: string | number, walletOptions: WalletOptions) => Promise<boolean>;
157
175
  declare const addChain: (chainInfo: ChainInfo, walletOptions: WalletOptions) => Promise<boolean>;
@@ -177,7 +195,9 @@ declare const getBalance: (token: BalanceParams, walletOptions: WalletOptions) =
177
195
  declare const signMessage: (data: {
178
196
  message: string;
179
197
  nonce: string;
180
- }, walletOptions: WalletOptions) => Promise<string>;
198
+ }, walletOptions: WalletOptions & {
199
+ isInstalled?: boolean;
200
+ }) => Promise<string>;
181
201
 
182
202
  declare const backpackWallet: () => WalletConfig;
183
203
 
@@ -327,4 +347,4 @@ declare function loadConnectors({ chainType, recommonedConnectors, connectorType
327
347
  recommoned: Connector[];
328
348
  }>;
329
349
 
330
- export { type AdaptorChainType, type BalanceParams, type ChainInfo, type ConnectParams, type Connector, type ConnectorProvider, type ITokenInfo, ProviderChainType, ProviderProtocol, type SignInParams, SupportedChainTypes, TomoDefaultConnectors, type WalletConfig, type WalletConnectorType, type WalletInfo, type WalletOptions, type WalletProvider, addChain, backpackWallet, berasigWallet, binanceWallet, bitgetWallet, bitskiWallet, bitverseWallet, bloomWallet, braveWallet, bybitWallet, clvWallet, coin98Wallet, coinbaseWallet, compassWallet, connect, coreWallet, ctrlWallet, dawnWallet, desigWallet, disconnect, enkryptWallet, foxWallet, frameWallet, gateWallet, getBalance, imTokenWallet, injectedWallet, iopayWallet, kaiaWallet, kaikasWallet, krakenWallet, kresusWallet, ledgerWallet, loadConnectors, magicEdenWallet, mathWallet, metaMaskWallet, mydogeWallet, nestWallet, novaWallet, oktoWallet, okxWallet, omniWallet, oneInchWallet, oneKeyWallet, paraSwapWallet, petraWallet, phantomWallet, rabbyWallet, rainbowWallet, ramperWallet, readyWallet, roninWallet, safeWallet, safeheronWallet, safepalWallet, seifWallet, setWalletConnectConfig, signInWithWallet, signMessage, solflareWallet, subWallet, switchChain, tahoWallet, talismanWallet, tokenPocketWallet, tokenaryWallet, trezorWallet, trustWallet, uniswapWallet, universalProfilesWallet, valoraWallet, walletConnectWallet, wigwamWallet, xPortalWallet, zealWallet, zerionWallet, zilPayWallet };
350
+ export { type AdaptorChainType, type BalanceParams, type ChainInfo, type ConnectParams, type Connector, type ConnectorProvider, type ITokenInfo, ProviderChainType, ProviderProtocol, type SignInParams, SupportedChainTypes, TomoDefaultConnectors, type WalletConfig, type WalletConnectorType, type WalletInfo, type WalletOptions, type WalletProvider, addChain, backpackWallet, berasigWallet, binanceWallet, bitgetWallet, bitskiWallet, bitverseWallet, bloomWallet, braveWallet, bybitWallet, clvWallet, coin98Wallet, coinbaseWallet, compassWallet, connect, connectMobile, coreWallet, ctrlWallet, dawnWallet, desigWallet, disconnect, enkryptWallet, foxWallet, frameWallet, gateWallet, getBalance, imTokenWallet, injectedWallet, iopayWallet, isMobile, kaiaWallet, kaikasWallet, krakenWallet, kresusWallet, ledgerWallet, loadConnectors, magicEdenWallet, mathWallet, metaMaskWallet, mydogeWallet, nestWallet, novaWallet, oktoWallet, okxWallet, omniWallet, oneInchWallet, oneKeyWallet, paraSwapWallet, petraWallet, phantomWallet, rabbyWallet, rainbowWallet, ramperWallet, readyWallet, roninWallet, safeWallet, safeheronWallet, safepalWallet, seifWallet, setWalletConnectConfig, signInWithWallet, signMessage, solflareWallet, subWallet, switchChain, tahoWallet, talismanWallet, tokenPocketWallet, tokenaryWallet, trezorWallet, trustWallet, uniswapWallet, universalProfilesWallet, valoraWallet, walletConnectWallet, wigwamWallet, xPortalWallet, zealWallet, zerionWallet, zilPayWallet };
package/dist/index.d.ts CHANGED
@@ -23,6 +23,10 @@ interface WalletInfo {
23
23
  rdns?: string;
24
24
  isWalletConnect?: boolean;
25
25
  deeplink?: string;
26
+ mobile?: {
27
+ getUri?: (uri: string) => string;
28
+ getDeeplink?: (dappUrl?: string, chainId?: number) => string | Promise<string>;
29
+ };
26
30
  links: {
27
31
  homepage?: string;
28
32
  ios_install?: string;
@@ -56,6 +60,7 @@ interface Connector {
56
60
  }
57
61
  interface ConnectParams {
58
62
  dappLink: string;
63
+ useWalletConnect?: boolean;
59
64
  }
60
65
  interface SignInParams {
61
66
  scheme?: "https" | "http";
@@ -92,6 +97,8 @@ interface ChainInfo {
92
97
  blockExplorerUrls: string[];
93
98
  }
94
99
 
100
+ declare function isMobile(): boolean;
101
+
95
102
  type WalletConfig = {
96
103
  id: string;
97
104
  name: string;
@@ -127,6 +134,10 @@ type WalletConfig = {
127
134
  linux?: string;
128
135
  desktop?: string;
129
136
  };
137
+ mobile?: {
138
+ getUri?: (uri: string) => string;
139
+ getDeeplink?: (dappUrl?: string, chainId?: number) => string | Promise<string>;
140
+ };
130
141
  };
131
142
  type WagmiWalletConfig = any;
132
143
 
@@ -148,10 +159,17 @@ declare const connect: (connectParams: ConnectParams, walletOptions: Omit<Wallet
148
159
  address: string;
149
160
  chainId?: string;
150
161
  network?: string;
162
+ provider?: any;
151
163
  }>;
152
164
  declare const disconnect: (walletOptions: WalletOptions) => Promise<boolean>;
165
+ declare const connectMobile: ({ connectParams, walletOptions, }: {
166
+ connectParams: ConnectParams;
167
+ walletOptions: Omit<WalletOptions, "account">;
168
+ }) => Promise<unknown>;
153
169
 
154
- declare const signInWithWallet: (signInData: SignInParams, walletOptions: WalletOptions) => Promise<string>;
170
+ declare const signInWithWallet: (signInData: SignInParams, walletOptions: WalletOptions & {
171
+ isInstalled?: boolean;
172
+ }) => Promise<string>;
155
173
 
156
174
  declare const switchChain: (chainId: string | number, walletOptions: WalletOptions) => Promise<boolean>;
157
175
  declare const addChain: (chainInfo: ChainInfo, walletOptions: WalletOptions) => Promise<boolean>;
@@ -177,7 +195,9 @@ declare const getBalance: (token: BalanceParams, walletOptions: WalletOptions) =
177
195
  declare const signMessage: (data: {
178
196
  message: string;
179
197
  nonce: string;
180
- }, walletOptions: WalletOptions) => Promise<string>;
198
+ }, walletOptions: WalletOptions & {
199
+ isInstalled?: boolean;
200
+ }) => Promise<string>;
181
201
 
182
202
  declare const backpackWallet: () => WalletConfig;
183
203
 
@@ -327,4 +347,4 @@ declare function loadConnectors({ chainType, recommonedConnectors, connectorType
327
347
  recommoned: Connector[];
328
348
  }>;
329
349
 
330
- export { type AdaptorChainType, type BalanceParams, type ChainInfo, type ConnectParams, type Connector, type ConnectorProvider, type ITokenInfo, ProviderChainType, ProviderProtocol, type SignInParams, SupportedChainTypes, TomoDefaultConnectors, type WalletConfig, type WalletConnectorType, type WalletInfo, type WalletOptions, type WalletProvider, addChain, backpackWallet, berasigWallet, binanceWallet, bitgetWallet, bitskiWallet, bitverseWallet, bloomWallet, braveWallet, bybitWallet, clvWallet, coin98Wallet, coinbaseWallet, compassWallet, connect, coreWallet, ctrlWallet, dawnWallet, desigWallet, disconnect, enkryptWallet, foxWallet, frameWallet, gateWallet, getBalance, imTokenWallet, injectedWallet, iopayWallet, kaiaWallet, kaikasWallet, krakenWallet, kresusWallet, ledgerWallet, loadConnectors, magicEdenWallet, mathWallet, metaMaskWallet, mydogeWallet, nestWallet, novaWallet, oktoWallet, okxWallet, omniWallet, oneInchWallet, oneKeyWallet, paraSwapWallet, petraWallet, phantomWallet, rabbyWallet, rainbowWallet, ramperWallet, readyWallet, roninWallet, safeWallet, safeheronWallet, safepalWallet, seifWallet, setWalletConnectConfig, signInWithWallet, signMessage, solflareWallet, subWallet, switchChain, tahoWallet, talismanWallet, tokenPocketWallet, tokenaryWallet, trezorWallet, trustWallet, uniswapWallet, universalProfilesWallet, valoraWallet, walletConnectWallet, wigwamWallet, xPortalWallet, zealWallet, zerionWallet, zilPayWallet };
350
+ export { type AdaptorChainType, type BalanceParams, type ChainInfo, type ConnectParams, type Connector, type ConnectorProvider, type ITokenInfo, ProviderChainType, ProviderProtocol, type SignInParams, SupportedChainTypes, TomoDefaultConnectors, type WalletConfig, type WalletConnectorType, type WalletInfo, type WalletOptions, type WalletProvider, addChain, backpackWallet, berasigWallet, binanceWallet, bitgetWallet, bitskiWallet, bitverseWallet, bloomWallet, braveWallet, bybitWallet, clvWallet, coin98Wallet, coinbaseWallet, compassWallet, connect, connectMobile, coreWallet, ctrlWallet, dawnWallet, desigWallet, disconnect, enkryptWallet, foxWallet, frameWallet, gateWallet, getBalance, imTokenWallet, injectedWallet, iopayWallet, isMobile, kaiaWallet, kaikasWallet, krakenWallet, kresusWallet, ledgerWallet, loadConnectors, magicEdenWallet, mathWallet, metaMaskWallet, mydogeWallet, nestWallet, novaWallet, oktoWallet, okxWallet, omniWallet, oneInchWallet, oneKeyWallet, paraSwapWallet, petraWallet, phantomWallet, rabbyWallet, rainbowWallet, ramperWallet, readyWallet, roninWallet, safeWallet, safeheronWallet, safepalWallet, seifWallet, setWalletConnectConfig, signInWithWallet, signMessage, solflareWallet, subWallet, switchChain, tahoWallet, talismanWallet, tokenPocketWallet, tokenaryWallet, trezorWallet, trustWallet, uniswapWallet, universalProfilesWallet, valoraWallet, walletConnectWallet, wigwamWallet, xPortalWallet, zealWallet, zerionWallet, zilPayWallet };