@hyperlane-xyz/widgets 31.0.1 → 31.2.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.
Files changed (140) hide show
  1. package/dist/chains/ChainAddMenu.d.ts +2 -1
  2. package/dist/chains/ChainAddMenu.d.ts.map +1 -1
  3. package/dist/chains/ChainAddMenu.js +3 -4
  4. package/dist/chains/ChainAddMenu.js.map +1 -1
  5. package/dist/chains/ChainDetailsMenu.d.ts +1 -1
  6. package/dist/chains/ChainDetailsMenu.d.ts.map +1 -1
  7. package/dist/chains/ChainDetailsMenu.js +1 -1
  8. package/dist/chains/ChainDetailsMenu.js.map +1 -1
  9. package/dist/chains/ChainSearchMenu.d.ts +2 -1
  10. package/dist/chains/ChainSearchMenu.d.ts.map +1 -1
  11. package/dist/chains/ChainSearchMenu.js +1 -1
  12. package/dist/chains/ChainSearchMenu.js.map +1 -1
  13. package/dist/index.d.ts +0 -15
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +0 -14
  16. package/dist/index.js.map +1 -1
  17. package/dist/messages/useMessageStage.d.ts +2 -2
  18. package/dist/messages/useMessageStage.d.ts.map +1 -1
  19. package/dist/messages/useMessageStage.js.map +1 -1
  20. package/dist/messages/useMessageTimeline.d.ts +2 -2
  21. package/dist/messages/useMessageTimeline.d.ts.map +1 -1
  22. package/dist/utils/explorers.d.ts +4 -4
  23. package/dist/utils/explorers.d.ts.map +1 -1
  24. package/dist/utils/explorers.js +6 -6
  25. package/dist/utils/explorers.js.map +1 -1
  26. package/dist/utils/useChainConnectionTest.d.ts +1 -1
  27. package/dist/utils/useChainConnectionTest.d.ts.map +1 -1
  28. package/dist/utils/useChainConnectionTest.js +2 -1
  29. package/dist/utils/useChainConnectionTest.js.map +1 -1
  30. package/dist/walletIntegrations/AccountList.d.ts +3 -2
  31. package/dist/walletIntegrations/AccountList.d.ts.map +1 -1
  32. package/dist/walletIntegrations/AccountList.js +4 -1
  33. package/dist/walletIntegrations/AccountList.js.map +1 -1
  34. package/dist/walletIntegrations/ConnectWalletButton.d.ts +3 -2
  35. package/dist/walletIntegrations/ConnectWalletButton.d.ts.map +1 -1
  36. package/dist/walletIntegrations/ConnectWalletButton.js +3 -1
  37. package/dist/walletIntegrations/ConnectWalletButton.js.map +1 -1
  38. package/dist/walletIntegrations/accountUtils.d.ts +11 -0
  39. package/dist/walletIntegrations/accountUtils.d.ts.map +1 -0
  40. package/dist/walletIntegrations/accountUtils.js +43 -0
  41. package/dist/walletIntegrations/accountUtils.js.map +1 -0
  42. package/dist/walletIntegrations/accounts.d.ts +11 -0
  43. package/dist/walletIntegrations/accounts.d.ts.map +1 -0
  44. package/dist/walletIntegrations/accounts.js +78 -0
  45. package/dist/walletIntegrations/accounts.js.map +1 -0
  46. package/dist/walletIntegrations/activeChains.d.ts +8 -0
  47. package/dist/walletIntegrations/activeChains.d.ts.map +1 -0
  48. package/dist/walletIntegrations/activeChains.js +58 -0
  49. package/dist/walletIntegrations/activeChains.js.map +1 -0
  50. package/dist/walletIntegrations/aleo.d.ts +6 -10
  51. package/dist/walletIntegrations/aleo.d.ts.map +1 -1
  52. package/dist/walletIntegrations/aleo.js +3 -75
  53. package/dist/walletIntegrations/aleo.js.map +1 -1
  54. package/dist/walletIntegrations/aleoWallet.d.ts +8 -0
  55. package/dist/walletIntegrations/aleoWallet.d.ts.map +1 -0
  56. package/dist/walletIntegrations/aleoWallet.js +72 -0
  57. package/dist/walletIntegrations/aleoWallet.js.map +1 -0
  58. package/dist/walletIntegrations/connectFns.d.ts +3 -0
  59. package/dist/walletIntegrations/connectFns.d.ts.map +1 -0
  60. package/dist/walletIntegrations/connectFns.js +37 -0
  61. package/dist/walletIntegrations/connectFns.js.map +1 -0
  62. package/dist/walletIntegrations/cosmos.d.ts +7 -11
  63. package/dist/walletIntegrations/cosmos.d.ts.map +1 -1
  64. package/dist/walletIntegrations/cosmos.js +8 -69
  65. package/dist/walletIntegrations/cosmos.js.map +1 -1
  66. package/dist/walletIntegrations/cosmosWallet.d.ts +12 -0
  67. package/dist/walletIntegrations/cosmosWallet.d.ts.map +1 -0
  68. package/dist/walletIntegrations/cosmosWallet.js +85 -0
  69. package/dist/walletIntegrations/cosmosWallet.js.map +1 -0
  70. package/dist/walletIntegrations/disconnectFns.d.ts +3 -0
  71. package/dist/walletIntegrations/disconnectFns.d.ts.map +1 -0
  72. package/dist/walletIntegrations/disconnectFns.js +51 -0
  73. package/dist/walletIntegrations/disconnectFns.js.map +1 -0
  74. package/dist/walletIntegrations/ethereum.d.ts +7 -11
  75. package/dist/walletIntegrations/ethereum.d.ts.map +1 -1
  76. package/dist/walletIntegrations/ethereum.js +12 -39
  77. package/dist/walletIntegrations/ethereum.js.map +1 -1
  78. package/dist/walletIntegrations/ethereumWallet.d.ts +8 -0
  79. package/dist/walletIntegrations/ethereumWallet.d.ts.map +1 -0
  80. package/dist/walletIntegrations/ethereumWallet.js +40 -0
  81. package/dist/walletIntegrations/ethereumWallet.js.map +1 -0
  82. package/dist/walletIntegrations/multiProtocol.d.ts +9 -24
  83. package/dist/walletIntegrations/multiProtocol.d.ts.map +1 -1
  84. package/dist/walletIntegrations/multiProtocol.js +9 -382
  85. package/dist/walletIntegrations/multiProtocol.js.map +1 -1
  86. package/dist/walletIntegrations/radix.d.ts +6 -10
  87. package/dist/walletIntegrations/radix.d.ts.map +1 -1
  88. package/dist/walletIntegrations/radix.js +3 -60
  89. package/dist/walletIntegrations/radix.js.map +1 -1
  90. package/dist/walletIntegrations/radixWallet.d.ts +8 -0
  91. package/dist/walletIntegrations/radixWallet.d.ts.map +1 -0
  92. package/dist/walletIntegrations/radixWallet.js +80 -0
  93. package/dist/walletIntegrations/radixWallet.js.map +1 -0
  94. package/dist/walletIntegrations/solana.d.ts +5 -9
  95. package/dist/walletIntegrations/solana.d.ts.map +1 -1
  96. package/dist/walletIntegrations/solana.js +50 -60
  97. package/dist/walletIntegrations/solana.js.map +1 -1
  98. package/dist/walletIntegrations/solanaWallet.d.ts +8 -0
  99. package/dist/walletIntegrations/solanaWallet.d.ts.map +1 -0
  100. package/dist/walletIntegrations/solanaWallet.js +56 -0
  101. package/dist/walletIntegrations/solanaWallet.js.map +1 -0
  102. package/dist/walletIntegrations/starknet.d.ts +7 -11
  103. package/dist/walletIntegrations/starknet.d.ts.map +1 -1
  104. package/dist/walletIntegrations/starknet.js +5 -50
  105. package/dist/walletIntegrations/starknet.js.map +1 -1
  106. package/dist/walletIntegrations/starknetWallet.d.ts +8 -0
  107. package/dist/walletIntegrations/starknetWallet.d.ts.map +1 -0
  108. package/dist/walletIntegrations/starknetWallet.js +73 -0
  109. package/dist/walletIntegrations/starknetWallet.js.map +1 -0
  110. package/dist/walletIntegrations/transactionFns.d.ts +5 -0
  111. package/dist/walletIntegrations/transactionFns.d.ts.map +1 -0
  112. package/dist/walletIntegrations/transactionFns.js +83 -0
  113. package/dist/walletIntegrations/transactionFns.js.map +1 -0
  114. package/dist/walletIntegrations/tron.d.ts +6 -10
  115. package/dist/walletIntegrations/tron.d.ts.map +1 -1
  116. package/dist/walletIntegrations/tron.js +4 -43
  117. package/dist/walletIntegrations/tron.js.map +1 -1
  118. package/dist/walletIntegrations/tronWallet.d.ts +8 -0
  119. package/dist/walletIntegrations/tronWallet.d.ts.map +1 -0
  120. package/dist/walletIntegrations/tronWallet.js +41 -0
  121. package/dist/walletIntegrations/tronWallet.js.map +1 -0
  122. package/dist/walletIntegrations/types.d.ts +6 -3
  123. package/dist/walletIntegrations/types.d.ts.map +1 -1
  124. package/dist/walletIntegrations/utils.d.ts +9 -8
  125. package/dist/walletIntegrations/utils.d.ts.map +1 -1
  126. package/dist/walletIntegrations/utils.js +4 -4
  127. package/dist/walletIntegrations/utils.js.map +1 -1
  128. package/dist/walletIntegrations/walletAddresses.d.ts +8 -0
  129. package/dist/walletIntegrations/walletAddresses.d.ts.map +1 -0
  130. package/dist/walletIntegrations/walletAddresses.js +46 -0
  131. package/dist/walletIntegrations/walletAddresses.js.map +1 -0
  132. package/dist/walletIntegrations/walletDetails.d.ts +4 -0
  133. package/dist/walletIntegrations/walletDetails.d.ts.map +1 -0
  134. package/dist/walletIntegrations/walletDetails.js +37 -0
  135. package/dist/walletIntegrations/walletDetails.js.map +1 -0
  136. package/dist/walletIntegrations/watchAsset.d.ts +5 -0
  137. package/dist/walletIntegrations/watchAsset.d.ts.map +1 -0
  138. package/dist/walletIntegrations/watchAsset.js +53 -0
  139. package/dist/walletIntegrations/watchAsset.js.map +1 -0
  140. package/package.json +50 -12
@@ -1,383 +1,10 @@
1
- import { useMemo } from 'react';
2
- import { cosmoshub } from '@hyperlane-xyz/registry';
3
- import { ProtocolType, } from '@hyperlane-xyz/utils';
4
- import { widgetLogger } from '../logger.js';
5
- import { useCosmosAccount, useCosmosActiveChain, useCosmosConnectFn, useCosmosDisconnectFn, useCosmosTransactionFns, useCosmosWalletDetails, useCosmosWatchAsset, } from './cosmos.js';
6
- import { useEthereumAccount, useEthereumActiveChain, useEthereumConnectFn, useEthereumDisconnectFn, useEthereumTransactionFns, useEthereumWalletDetails, useEthereumWatchAsset, } from './ethereum.js';
7
- import { useRadixAccount, useRadixActiveChain, useRadixConnectFn, useRadixDisconnectFn, useRadixTransactionFns, useRadixWalletDetails, useRadixWatchAsset, } from './radix.js';
8
- import { useSolanaAccount, useSolanaActiveChain, useSolanaConnectFn, useSolanaDisconnectFn, useSolanaTransactionFns, useSolanaWalletDetails, useSolanaWatchAsset, } from './solana.js';
9
- import { useStarknetAccount, useStarknetActiveChain, useStarknetConnectFn, useStarknetDisconnectFn, useStarknetTransactionFns, useStarknetWalletDetails, useStarknetWatchAsset, } from './starknet.js';
10
- import { useTronAccount, useTronActiveChain, useTronConnectFn, useTronDisconnectFn, useTronTransactionFns, useTronWalletDetails, useTronWatchAsset, } from './tron.js';
11
- import { useAleoAccount, useAleoActiveChain, useAleoConnectFn, useAleoDisconnectFn, useAleoTransactionFns, useAleoWalletDetails, useAleoWatchAsset, } from './aleo.js';
12
- const logger = widgetLogger.child({
13
- module: 'walletIntegrations/multiProtocol',
14
- });
15
- export function useAccounts(multiProvider, blacklistedAddresses = []) {
16
- const evmAccountInfo = useEthereumAccount(multiProvider);
17
- const solAccountInfo = useSolanaAccount(multiProvider);
18
- const cosmAccountInfo = useCosmosAccount(multiProvider);
19
- const starknetAccountInfo = useStarknetAccount(multiProvider);
20
- const radixAccountInfo = useRadixAccount(multiProvider);
21
- const aleoAccountInfo = useAleoAccount(multiProvider);
22
- const tronAccountInfo = useTronAccount(multiProvider);
23
- // Filtered ready accounts
24
- const readyAccounts = useMemo(() => [
25
- evmAccountInfo,
26
- solAccountInfo,
27
- cosmAccountInfo,
28
- starknetAccountInfo,
29
- radixAccountInfo,
30
- aleoAccountInfo,
31
- tronAccountInfo,
32
- ].filter((a) => a.isReady), [
33
- evmAccountInfo,
34
- solAccountInfo,
35
- cosmAccountInfo,
36
- starknetAccountInfo,
37
- radixAccountInfo,
38
- aleoAccountInfo,
39
- tronAccountInfo,
40
- ]);
41
- // Check if any of the ready accounts are blacklisted
42
- const readyAddresses = readyAccounts
43
- .map((a) => a.addresses)
44
- .flat()
45
- .map((a) => a.address.toLowerCase());
46
- if (readyAddresses.some((a) => blacklistedAddresses.includes(a))) {
47
- throw new Error('Wallet address is blacklisted');
48
- }
49
- return useMemo(() => ({
50
- accounts: {
51
- [ProtocolType.Ethereum]: evmAccountInfo,
52
- [ProtocolType.Sealevel]: solAccountInfo,
53
- [ProtocolType.Cosmos]: cosmAccountInfo,
54
- [ProtocolType.CosmosNative]: cosmAccountInfo,
55
- [ProtocolType.Starknet]: starknetAccountInfo,
56
- [ProtocolType.Radix]: radixAccountInfo,
57
- [ProtocolType.Aleo]: aleoAccountInfo,
58
- [ProtocolType.Tron]: tronAccountInfo,
59
- },
60
- readyAccounts,
61
- }), [
62
- evmAccountInfo,
63
- solAccountInfo,
64
- cosmAccountInfo,
65
- starknetAccountInfo,
66
- radixAccountInfo,
67
- aleoAccountInfo,
68
- tronAccountInfo,
69
- readyAccounts,
70
- ]);
71
- }
72
- export function useAccountForChain(multiProvider, chainName) {
73
- const { accounts } = useAccounts(multiProvider);
74
- const protocol = chainName ? multiProvider.getProtocol(chainName) : undefined;
75
- if (!chainName || !protocol)
76
- return undefined;
77
- return accounts?.[protocol];
78
- }
79
- export function useAccountAddressForChain(multiProvider, chainName) {
80
- const { accounts } = useAccounts(multiProvider);
81
- return getAccountAddressForChain(multiProvider, chainName, accounts);
82
- }
83
- export function getAccountAddressForChain(multiProvider, chainName, accounts) {
84
- if (!chainName || !accounts)
85
- return undefined;
86
- const protocol = multiProvider.getProtocol(chainName);
87
- const account = accounts[protocol];
88
- if (protocol === ProtocolType.Cosmos ||
89
- protocol === ProtocolType.CosmosNative) {
90
- return account?.addresses.find((a) => a.chainName === chainName)?.address;
91
- }
92
- else {
93
- // Use first because only cosmos has the notion of per-chain addresses
94
- return account?.addresses[0]?.address;
95
- }
96
- }
97
- export function getAddressFromAccountAndChain(account, chainName) {
98
- if (!account) {
99
- return 'Unknown';
100
- }
101
- // only in cosmos there are multiple addresses per account, in this
102
- // case we display the cosmos hub address by default. If the user
103
- // selects a cosmos based origin chain in the swap form that cosmos
104
- // address is displayed instead
105
- if (account.protocol === ProtocolType.Cosmos) {
106
- // chainName can be an EVM chain here, therefore if no
107
- // cosmos address was found we search for the cosmos hub
108
- // address below
109
- const cosmosAddress = account?.addresses?.find((a) => a.chainName === chainName)?.address;
110
- // if no cosmos address was found for the chain name we search
111
- // for the cosmos hub address as fallback
112
- return (cosmosAddress ??
113
- account?.addresses?.find((a) => a.chainName === cosmoshub.name)
114
- ?.address ??
115
- 'Unknown');
116
- }
117
- // by default display the first address of the account
118
- return account.addresses[0]?.address ?? 'Unknown';
119
- }
120
- export function getAccountAddressAndPubKey(multiProvider, chainName, accounts) {
121
- const address = getAccountAddressForChain(multiProvider, chainName, accounts);
122
- if (!accounts || !chainName || !address)
123
- return {};
124
- const protocol = multiProvider.getProtocol(chainName);
125
- const publicKey = accounts[protocol]?.publicKey;
126
- return { address, publicKey };
127
- }
128
- export function useWalletDetails() {
129
- const evmWallet = useEthereumWalletDetails();
130
- const solWallet = useSolanaWalletDetails();
131
- const cosmosWallet = useCosmosWalletDetails();
132
- const starknetWallet = useStarknetWalletDetails();
133
- const radixWallet = useRadixWalletDetails();
134
- const aleoWallet = useAleoWalletDetails();
135
- const tronWallet = useTronWalletDetails();
136
- return useMemo(() => ({
137
- [ProtocolType.Ethereum]: evmWallet,
138
- [ProtocolType.Sealevel]: solWallet,
139
- [ProtocolType.Cosmos]: cosmosWallet,
140
- [ProtocolType.CosmosNative]: cosmosWallet,
141
- [ProtocolType.Starknet]: starknetWallet,
142
- [ProtocolType.Radix]: radixWallet,
143
- [ProtocolType.Aleo]: aleoWallet,
144
- [ProtocolType.Tron]: tronWallet,
145
- }), [
146
- evmWallet,
147
- solWallet,
148
- cosmosWallet,
149
- starknetWallet,
150
- radixWallet,
151
- aleoWallet,
152
- tronWallet,
153
- ]);
154
- }
155
- export function useConnectFns() {
156
- const onConnectEthereum = useEthereumConnectFn();
157
- const onConnectSolana = useSolanaConnectFn();
158
- const onConnectCosmos = useCosmosConnectFn();
159
- const onConnectStarknet = useStarknetConnectFn();
160
- const onConnectRadix = useRadixConnectFn();
161
- const onConnectAleo = useAleoConnectFn();
162
- const onConnectTron = useTronConnectFn();
163
- return useMemo(() => ({
164
- [ProtocolType.Ethereum]: onConnectEthereum,
165
- [ProtocolType.Sealevel]: onConnectSolana,
166
- [ProtocolType.Cosmos]: onConnectCosmos,
167
- [ProtocolType.CosmosNative]: onConnectCosmos,
168
- [ProtocolType.Starknet]: onConnectStarknet,
169
- [ProtocolType.Radix]: onConnectRadix,
170
- [ProtocolType.Aleo]: onConnectAleo,
171
- [ProtocolType.Tron]: onConnectTron,
172
- }), [
173
- onConnectEthereum,
174
- onConnectSolana,
175
- onConnectCosmos,
176
- onConnectStarknet,
177
- onConnectRadix,
178
- onConnectAleo,
179
- onConnectTron,
180
- ]);
181
- }
182
- export function useDisconnectFns() {
183
- const disconnectEvm = useEthereumDisconnectFn();
184
- const disconnectSol = useSolanaDisconnectFn();
185
- const disconnectCosmos = useCosmosDisconnectFn();
186
- const disconnectStarknet = useStarknetDisconnectFn();
187
- const disconnectRadix = useRadixDisconnectFn();
188
- const disconnectAleo = useAleoDisconnectFn();
189
- const disconnectTron = useTronDisconnectFn();
190
- const onClickDisconnect = (env, disconnectFn) => async () => {
191
- try {
192
- if (!disconnectFn)
193
- throw new Error('Disconnect function is null');
194
- await disconnectFn();
195
- }
196
- catch (error) {
197
- logger.error(`Error disconnecting from ${env} wallet`, error);
198
- }
199
- };
200
- return useMemo(() => ({
201
- [ProtocolType.Ethereum]: onClickDisconnect(ProtocolType.Ethereum, disconnectEvm),
202
- [ProtocolType.Sealevel]: onClickDisconnect(ProtocolType.Sealevel, disconnectSol),
203
- [ProtocolType.Cosmos]: onClickDisconnect(ProtocolType.Cosmos, disconnectCosmos),
204
- [ProtocolType.CosmosNative]: onClickDisconnect(ProtocolType.CosmosNative, disconnectCosmos),
205
- [ProtocolType.Starknet]: onClickDisconnect(ProtocolType.Starknet, disconnectStarknet),
206
- [ProtocolType.Radix]: onClickDisconnect(ProtocolType.Radix, disconnectRadix),
207
- [ProtocolType.Aleo]: onClickDisconnect(ProtocolType.Aleo, disconnectAleo),
208
- [ProtocolType.Tron]: onClickDisconnect(ProtocolType.Tron, disconnectTron),
209
- }), [
210
- disconnectEvm,
211
- disconnectSol,
212
- disconnectCosmos,
213
- disconnectStarknet,
214
- disconnectRadix,
215
- disconnectAleo,
216
- disconnectTron,
217
- ]);
218
- }
219
- export function useActiveChains(multiProvider) {
220
- const evmChain = useEthereumActiveChain(multiProvider);
221
- const solChain = useSolanaActiveChain(multiProvider);
222
- const cosmChain = useCosmosActiveChain(multiProvider);
223
- const starknetChain = useStarknetActiveChain(multiProvider);
224
- const radixChain = useRadixActiveChain(multiProvider);
225
- const aleoChain = useAleoActiveChain(multiProvider);
226
- const tronChain = useTronActiveChain(multiProvider);
227
- const readyChains = useMemo(() => [
228
- evmChain,
229
- solChain,
230
- cosmChain,
231
- starknetChain,
232
- radixChain,
233
- aleoChain,
234
- tronChain,
235
- ].filter((c) => !!c.chainDisplayName), [
236
- evmChain,
237
- solChain,
238
- cosmChain,
239
- starknetChain,
240
- radixChain,
241
- aleoChain,
242
- tronChain,
243
- ]);
244
- return useMemo(() => ({
245
- chains: {
246
- [ProtocolType.Ethereum]: evmChain,
247
- [ProtocolType.Sealevel]: solChain,
248
- [ProtocolType.Cosmos]: cosmChain,
249
- [ProtocolType.CosmosNative]: cosmChain,
250
- [ProtocolType.Starknet]: starknetChain,
251
- [ProtocolType.Radix]: radixChain,
252
- [ProtocolType.Aleo]: aleoChain,
253
- [ProtocolType.Tron]: tronChain,
254
- },
255
- readyChains,
256
- }), [
257
- evmChain,
258
- solChain,
259
- cosmChain,
260
- readyChains,
261
- starknetChain,
262
- radixChain,
263
- aleoChain,
264
- tronChain,
265
- ]);
266
- }
267
- export function useTransactionFns(multiProvider) {
268
- const { switchNetwork: onSwitchEvmNetwork, sendTransaction: onSendEvmTx, sendMultiTransaction: onSendMultiEvmTx, } = useEthereumTransactionFns(multiProvider);
269
- const { switchNetwork: onSwitchSolNetwork, sendTransaction: onSendSolTx, sendMultiTransaction: onSendMultiSolTx, } = useSolanaTransactionFns(multiProvider);
270
- const { switchNetwork: onSwitchCosmNetwork, sendTransaction: onSendCosmTx, sendMultiTransaction: onSendMultiCosmTx, } = useCosmosTransactionFns(multiProvider);
271
- const { switchNetwork: onSwitchStarknetNetwork, sendTransaction: onSendStarknetTx, sendMultiTransaction: onSendMultiStarknetTx, } = useStarknetTransactionFns(multiProvider);
272
- const { switchNetwork: onSwitchRadixNetwork, sendTransaction: onSendRadixTx, sendMultiTransaction: onSendMultiRadixTx, } = useRadixTransactionFns(multiProvider);
273
- const { switchNetwork: onSwitchAleoNetwork, sendTransaction: onSendAleoTx, sendMultiTransaction: onSendMultiAleoTx, } = useAleoTransactionFns(multiProvider);
274
- const { switchNetwork: onSwitchTronNetwork, sendTransaction: onSendTronTx, sendMultiTransaction: onSendMultiTronTx, } = useTronTransactionFns(multiProvider);
275
- return useMemo(() => ({
276
- [ProtocolType.Ethereum]: {
277
- sendTransaction: onSendEvmTx,
278
- sendMultiTransaction: onSendMultiEvmTx,
279
- switchNetwork: onSwitchEvmNetwork,
280
- },
281
- [ProtocolType.Sealevel]: {
282
- sendTransaction: onSendSolTx,
283
- sendMultiTransaction: onSendMultiSolTx,
284
- switchNetwork: onSwitchSolNetwork,
285
- },
286
- [ProtocolType.Cosmos]: {
287
- sendTransaction: onSendCosmTx,
288
- sendMultiTransaction: onSendMultiCosmTx,
289
- switchNetwork: onSwitchCosmNetwork,
290
- },
291
- [ProtocolType.CosmosNative]: {
292
- sendTransaction: onSendCosmTx,
293
- sendMultiTransaction: onSendMultiCosmTx,
294
- switchNetwork: onSwitchCosmNetwork,
295
- },
296
- [ProtocolType.Starknet]: {
297
- sendTransaction: onSendStarknetTx,
298
- sendMultiTransaction: onSendMultiStarknetTx,
299
- switchNetwork: onSwitchStarknetNetwork,
300
- },
301
- [ProtocolType.Radix]: {
302
- sendTransaction: onSendRadixTx,
303
- sendMultiTransaction: onSendMultiRadixTx,
304
- switchNetwork: onSwitchRadixNetwork,
305
- },
306
- [ProtocolType.Aleo]: {
307
- sendTransaction: onSendAleoTx,
308
- sendMultiTransaction: onSendMultiAleoTx,
309
- switchNetwork: onSwitchAleoNetwork,
310
- },
311
- [ProtocolType.Tron]: {
312
- sendTransaction: onSendTronTx,
313
- sendMultiTransaction: onSendMultiTronTx,
314
- switchNetwork: onSwitchTronNetwork,
315
- },
316
- }), [
317
- onSendEvmTx,
318
- onSendMultiEvmTx,
319
- onSendSolTx,
320
- onSendMultiSolTx,
321
- onSwitchEvmNetwork,
322
- onSwitchSolNetwork,
323
- onSendCosmTx,
324
- onSendMultiCosmTx,
325
- onSwitchCosmNetwork,
326
- onSendStarknetTx,
327
- onSendMultiStarknetTx,
328
- onSwitchStarknetNetwork,
329
- onSendRadixTx,
330
- onSendMultiRadixTx,
331
- onSwitchRadixNetwork,
332
- onSendAleoTx,
333
- onSendMultiAleoTx,
334
- onSwitchAleoNetwork,
335
- onSendTronTx,
336
- onSendMultiTronTx,
337
- onSwitchTronNetwork,
338
- ]);
339
- }
340
- export function useWatchAsset(multiProvider) {
341
- const { addAsset: evmAddAsset } = useEthereumWatchAsset(multiProvider);
342
- const { addAsset: solanaAddAsset } = useSolanaWatchAsset(multiProvider);
343
- const { addAsset: cosmosAddAsset } = useCosmosWatchAsset(multiProvider);
344
- const { addAsset: starknetAddAsset } = useStarknetWatchAsset(multiProvider);
345
- const { addAsset: radixAddAsset } = useRadixWatchAsset(multiProvider);
346
- const { addAsset: aleoAddAsset } = useAleoWatchAsset(multiProvider);
347
- const { addAsset: tronAddAsset } = useTronWatchAsset(multiProvider);
348
- return useMemo(() => ({
349
- [ProtocolType.Ethereum]: {
350
- addAsset: evmAddAsset,
351
- },
352
- [ProtocolType.Sealevel]: {
353
- addAsset: solanaAddAsset,
354
- },
355
- [ProtocolType.Cosmos]: {
356
- addAsset: cosmosAddAsset,
357
- },
358
- [ProtocolType.CosmosNative]: {
359
- addAsset: cosmosAddAsset,
360
- },
361
- [ProtocolType.Starknet]: {
362
- addAsset: starknetAddAsset,
363
- },
364
- [ProtocolType.Radix]: {
365
- addAsset: radixAddAsset,
366
- },
367
- [ProtocolType.Aleo]: {
368
- addAsset: aleoAddAsset,
369
- },
370
- [ProtocolType.Tron]: {
371
- addAsset: tronAddAsset,
372
- },
373
- }), [
374
- evmAddAsset,
375
- solanaAddAsset,
376
- cosmosAddAsset,
377
- starknetAddAsset,
378
- radixAddAsset,
379
- aleoAddAsset,
380
- tronAddAsset,
381
- ]);
382
- }
1
+ export { useAccounts, useAccountForChain, useAccountAddressForChain, } from './accounts.js';
2
+ export { getAccountAddressAndPubKey, getAccountAddressForChain, getAddressFromAccountAndChain, } from './accountUtils.js';
3
+ export { getAddressForChain, useWalletAddressForChainAndProtocol, useWalletAddressesByProtocol, } from './walletAddresses.js';
4
+ export { useActiveChains } from './activeChains.js';
5
+ export { useConnectFns } from './connectFns.js';
6
+ export { useDisconnectFns } from './disconnectFns.js';
7
+ export { useTransactionFns } from './transactionFns.js';
8
+ export { useWalletDetails } from './walletDetails.js';
9
+ export { useWatchAsset } from './watchAsset.js';
383
10
  //# sourceMappingURL=multiProtocol.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"multiProtocol.js","sourceRoot":"","sources":["../../src/walletIntegrations/multiProtocol.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multiProtocol.js","sourceRoot":"","sources":["../../src/walletIntegrations/multiProtocol.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,6BAA6B,GAC9B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,kBAAkB,EAClB,mCAAmC,EACnC,4BAA4B,GAC7B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
@@ -1,11 +1,7 @@
1
- import { MultiProtocolProvider } from '@hyperlane-xyz/sdk';
2
- import { AccountInfo, ActiveChainInfo, ChainTransactionFns, SwitchNetworkFns, WalletDetails, WatchAssetFns } from './types.js';
3
- export declare function useRadixAccount(_multiProvider: MultiProtocolProvider): AccountInfo;
4
- export declare function useRadixWalletDetails(): WalletDetails;
5
- export declare function useRadixConnectFn(): () => void;
6
- export declare function useRadixDisconnectFn(): () => Promise<void>;
7
- export declare function useRadixActiveChain(_multiProvider: MultiProtocolProvider): ActiveChainInfo;
8
- export declare function useRadixSwitchNetwork(multiProvider: MultiProtocolProvider): SwitchNetworkFns;
9
- export declare function useRadixWatchAsset(_multiProvider: MultiProtocolProvider): WatchAssetFns;
10
- export declare function useRadixTransactionFns(multiProvider: MultiProtocolProvider): ChainTransactionFns;
1
+ import type { MultiProviderAdapter } from '@hyperlane-xyz/sdk/providers/MultiProviderAdapter';
2
+ import { ChainTransactionFns, SwitchNetworkFns, WatchAssetFns } from './types.js';
3
+ export { useRadixAccount, useRadixActiveChain, useRadixConnectFn, useRadixDisconnectFn, useRadixWalletDetails, } from './radixWallet.js';
4
+ export declare function useRadixSwitchNetwork(multiProvider: MultiProviderAdapter): SwitchNetworkFns;
5
+ export declare function useRadixWatchAsset(_multiProvider: MultiProviderAdapter): WatchAssetFns;
6
+ export declare function useRadixTransactionFns(multiProvider: MultiProviderAdapter): ChainTransactionFns;
11
7
  //# sourceMappingURL=radix.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"radix.d.ts","sourceRoot":"","sources":["../../src/walletIntegrations/radix.ts"],"names":[],"mappings":"AAOA,OAAO,EAGL,qBAAqB,EAItB,MAAM,oBAAoB,CAAC;AAO5B,OAAO,EACL,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,aAAa,EACd,MAAM,YAAY,CAAC;AAEpB,wBAAgB,eAAe,CAC7B,cAAc,EAAE,qBAAqB,GACpC,WAAW,CAWb;AAED,wBAAgB,qBAAqB,kBAYpC;AAED,wBAAgB,iBAAiB,IAAI,MAAM,IAAI,CA+B9C;AAED,wBAAgB,oBAAoB,IAAI,MAAM,OAAO,CAAC,IAAI,CAAC,CAY1D;AAED,wBAAgB,mBAAmB,CACjC,cAAc,EAAE,qBAAqB,GACpC,eAAe,CAGjB;AAED,wBAAgB,qBAAqB,CACnC,aAAa,EAAE,qBAAqB,GACnC,gBAAgB,CAclB;AAED,wBAAgB,kBAAkB,CAChC,cAAc,EAAE,qBAAqB,GACpC,aAAa,CASf;AAED,wBAAgB,sBAAsB,CACpC,aAAa,EAAE,qBAAqB,GACnC,mBAAmB,CAmFrB"}
1
+ {"version":3,"file":"radix.d.ts","sourceRoot":"","sources":["../../src/walletIntegrations/radix.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mDAAmD,CAAC;AAQ9F,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACd,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAE1B,wBAAgB,qBAAqB,CACnC,aAAa,EAAE,oBAAoB,GAClC,gBAAgB,CAclB;AAED,wBAAgB,kBAAkB,CAChC,cAAc,EAAE,oBAAoB,GACnC,aAAa,CASf;AAED,wBAAgB,sBAAsB,CACpC,aAAa,EAAE,oBAAoB,GAClC,mBAAmB,CAmFrB"}
@@ -1,65 +1,8 @@
1
- import { DataRequestBuilder, generateRolaChallenge, } from '@radixdlt/radix-dapp-toolkit';
2
- import { useCallback, useMemo } from 'react';
3
- import { ProtocolType, assert, retryAsync } from '@hyperlane-xyz/utils';
4
- import { useAccount } from './radix/AccountContext.js';
5
- import { usePopup } from './radix/RadixProviders.js';
1
+ import { useCallback } from 'react';
2
+ import { assert, retryAsync } from '@hyperlane-xyz/utils';
6
3
  import { useGatewayApi } from './radix/hooks/useGatewayApi.js';
7
4
  import { useRdt } from './radix/hooks/useRdt.js';
8
- export function useRadixAccount(_multiProvider) {
9
- const { accounts } = useAccount();
10
- return {
11
- protocol: ProtocolType.Radix,
12
- addresses: accounts.map((account) => ({
13
- address: account.address,
14
- })),
15
- publicKey: undefined, // we don't need the public key for radix
16
- isReady: !!accounts.length,
17
- };
18
- }
19
- export function useRadixWalletDetails() {
20
- const name = 'Radix Wallet';
21
- const logoUrl = 'https://raw.githubusercontent.com/radixdlt/radix-dapp-toolkit/refs/heads/main/docs/radix-logo.png';
22
- return useMemo(() => ({
23
- name,
24
- logoUrl,
25
- }), [name, logoUrl]);
26
- }
27
- export function useRadixConnectFn() {
28
- const rdt = useRdt();
29
- assert(rdt, `radix dapp toolkit not defined`);
30
- const popUp = usePopup();
31
- assert(popUp, `radix wallet popup not defined`);
32
- const { setAccounts } = useAccount();
33
- rdt.walletApi.provideChallengeGenerator(async () => {
34
- return generateRolaChallenge();
35
- });
36
- const connect = async () => {
37
- popUp.setShowPopUp(true);
38
- rdt.walletApi.setRequestData(DataRequestBuilder.accounts().exactly(1).reset());
39
- const result = await rdt.walletApi.sendRequest();
40
- if (result.isOk()) {
41
- setAccounts(result.value.accounts.map((p) => ({
42
- address: p.address,
43
- })));
44
- }
45
- popUp.setShowPopUp(false);
46
- };
47
- return connect;
48
- }
49
- export function useRadixDisconnectFn() {
50
- const rdt = useRdt();
51
- assert(rdt, `radix dapp toolkit not defined`);
52
- const { setAccounts } = useAccount();
53
- const safeDisconnect = async () => {
54
- rdt.disconnect();
55
- setAccounts([]);
56
- };
57
- return safeDisconnect;
58
- }
59
- export function useRadixActiveChain(_multiProvider) {
60
- // Radix doesn't has the concept of an active chain
61
- return useMemo(() => ({}), []);
62
- }
5
+ export { useRadixAccount, useRadixActiveChain, useRadixConnectFn, useRadixDisconnectFn, useRadixWalletDetails, } from './radixWallet.js';
63
6
  export function useRadixSwitchNetwork(multiProvider) {
64
7
  const onSwitchNetwork = useCallback(async (chainName) => {
65
8
  const displayName = multiProvider.getChainMetadata(chainName).displayName || chainName;
@@ -1 +1 @@
1
- {"version":3,"file":"radix.js","sourceRoot":"","sources":["../../src/walletIntegrations/radix.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"radix.js","sourceRoot":"","sources":["../../src/walletIntegrations/radix.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { MinimalProviderRegistry } from '@hyperlane-xyz/sdk/providers/MinimalProviderRegistry';
2
+ import type { AccountInfo, ActiveChainInfo, WalletDetails } from './types.js';
3
+ export declare function useRadixAccount(_multiProvider: MinimalProviderRegistry): AccountInfo;
4
+ export declare function useRadixWalletDetails(): WalletDetails;
5
+ export declare function useRadixConnectFn(): () => void;
6
+ export declare function useRadixDisconnectFn(): () => Promise<void>;
7
+ export declare function useRadixActiveChain(_multiProvider: MinimalProviderRegistry): ActiveChainInfo;
8
+ //# sourceMappingURL=radixWallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radixWallet.d.ts","sourceRoot":"","sources":["../../src/walletIntegrations/radixWallet.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sDAAsD,CAAC;AAQpG,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAW9E,wBAAgB,eAAe,CAC7B,cAAc,EAAE,uBAAuB,GACtC,WAAW,CAcb;AAED,wBAAgB,qBAAqB,IAAI,aAAa,CAErD;AAED,wBAAgB,iBAAiB,IAAI,MAAM,IAAI,CAyC9C;AAED,wBAAgB,oBAAoB,IAAI,MAAM,OAAO,CAAC,IAAI,CAAC,CAa1D;AAED,wBAAgB,mBAAmB,CACjC,cAAc,EAAE,uBAAuB,GACtC,eAAe,CAEjB"}
@@ -0,0 +1,80 @@
1
+ import { DataRequestBuilder, generateRolaChallenge, } from '@radixdlt/radix-dapp-toolkit';
2
+ import { useCallback, useEffect, useMemo } from 'react';
3
+ import { ProtocolType } from '@hyperlane-xyz/utils';
4
+ import { widgetLogger } from '../logger.js';
5
+ import { useAccount } from './radix/AccountContext.js';
6
+ import { usePopup } from './radix/RadixProviders.js';
7
+ import { useRdt } from './radix/hooks/useRdt.js';
8
+ const logger = widgetLogger.child({
9
+ module: 'walletIntegrations/radixWallet',
10
+ });
11
+ const radixWalletDetails = {
12
+ name: 'Radix Wallet',
13
+ logoUrl: 'https://raw.githubusercontent.com/radixdlt/radix-dapp-toolkit/refs/heads/main/docs/radix-logo.png',
14
+ };
15
+ export function useRadixAccount(_multiProvider) {
16
+ const { accounts } = useAccount();
17
+ return useMemo(() => ({
18
+ protocol: ProtocolType.Radix,
19
+ addresses: accounts.map((account) => ({
20
+ address: account.address,
21
+ })),
22
+ publicKey: undefined,
23
+ isReady: !!accounts.length,
24
+ }), [accounts]);
25
+ }
26
+ export function useRadixWalletDetails() {
27
+ return radixWalletDetails;
28
+ }
29
+ export function useRadixConnectFn() {
30
+ const rdt = useRdt();
31
+ const popUp = usePopup();
32
+ const { setAccounts } = useAccount();
33
+ useEffect(() => {
34
+ if (!rdt)
35
+ return;
36
+ rdt.walletApi.provideChallengeGenerator(async () => generateRolaChallenge());
37
+ }, [rdt]);
38
+ return useCallback(() => {
39
+ void (async () => {
40
+ if (!rdt) {
41
+ logger.warn('Radix dapp toolkit not defined');
42
+ return;
43
+ }
44
+ if (!popUp) {
45
+ logger.warn('Radix wallet popup not defined');
46
+ return;
47
+ }
48
+ popUp.setShowPopUp(true);
49
+ try {
50
+ rdt.walletApi.setRequestData(DataRequestBuilder.accounts().exactly(1).reset());
51
+ const result = await rdt.walletApi.sendRequest();
52
+ if (result.isOk()) {
53
+ setAccounts(result.value.accounts.map((p) => ({
54
+ address: p.address,
55
+ })));
56
+ }
57
+ }
58
+ finally {
59
+ popUp.setShowPopUp(false);
60
+ }
61
+ })();
62
+ }, [popUp, rdt, setAccounts]);
63
+ }
64
+ export function useRadixDisconnectFn() {
65
+ const rdt = useRdt();
66
+ const { setAccounts } = useAccount();
67
+ return useCallback(async () => {
68
+ if (!rdt) {
69
+ logger.warn('Radix dapp toolkit not defined');
70
+ setAccounts([]);
71
+ return;
72
+ }
73
+ rdt.disconnect();
74
+ setAccounts([]);
75
+ }, [rdt, setAccounts]);
76
+ }
77
+ export function useRadixActiveChain(_multiProvider) {
78
+ return useMemo(() => ({}), []);
79
+ }
80
+ //# sourceMappingURL=radixWallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radixWallet.js","sourceRoot":"","sources":["../../src/walletIntegrations/radixWallet.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,7 @@
1
- import { MultiProtocolProvider } from '@hyperlane-xyz/sdk';
2
- import { AccountInfo, ActiveChainInfo, ChainTransactionFns, SwitchNetworkFns, WalletDetails, WatchAssetFns } from './types.js';
3
- export declare function useSolanaAccount(_multiProvider: MultiProtocolProvider): AccountInfo;
4
- export declare function useSolanaWalletDetails(): WalletDetails;
5
- export declare function useSolanaConnectFn(): () => void;
6
- export declare function useSolanaDisconnectFn(): () => Promise<void>;
7
- export declare function useSolanaActiveChain(multiProvider: MultiProtocolProvider): ActiveChainInfo;
1
+ import type { MultiProviderAdapter } from '@hyperlane-xyz/sdk/providers/MultiProviderAdapter';
2
+ import { ChainTransactionFns, SwitchNetworkFns, WatchAssetFns } from './types.js';
3
+ export { useSolanaAccount, useSolanaActiveChain, useSolanaConnectFn, useSolanaDisconnectFn, useSolanaWalletDetails, } from './solanaWallet.js';
8
4
  export declare function useSolanaSwitchNetwork(): SwitchNetworkFns;
9
- export declare function useSolanaWatchAsset(_multiProvider: MultiProtocolProvider): WatchAssetFns;
10
- export declare function useSolanaTransactionFns(multiProvider: MultiProtocolProvider): ChainTransactionFns;
5
+ export declare function useSolanaWatchAsset(_multiProvider: MultiProviderAdapter): WatchAssetFns;
6
+ export declare function useSolanaTransactionFns(multiProvider: MultiProviderAdapter): ChainTransactionFns;
11
7
  //# sourceMappingURL=solana.d.ts.map