@daimo/sdk 1.0.0-rc.1

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 (186) hide show
  1. package/dist/client/createDaimoClient.d.ts +33 -0
  2. package/dist/client/createDaimoClient.d.ts.map +1 -0
  3. package/dist/client/createDaimoClient.js +79 -0
  4. package/dist/client/createDaimoClient.js.map +1 -0
  5. package/dist/client/index.d.ts +4 -0
  6. package/dist/client/index.d.ts.map +1 -0
  7. package/dist/client/index.js +2 -0
  8. package/dist/client/index.js.map +1 -0
  9. package/dist/client/transport.d.ts +15 -0
  10. package/dist/client/transport.d.ts.map +1 -0
  11. package/dist/client/transport.js +95 -0
  12. package/dist/client/transport.js.map +1 -0
  13. package/dist/common/api.d.ts +184 -0
  14. package/dist/common/api.d.ts.map +1 -0
  15. package/dist/common/api.js +40 -0
  16. package/dist/common/api.js.map +1 -0
  17. package/dist/common/chain.d.ts +35 -0
  18. package/dist/common/chain.d.ts.map +1 -0
  19. package/dist/common/chain.js +198 -0
  20. package/dist/common/chain.js.map +1 -0
  21. package/dist/common/errors.d.ts +29 -0
  22. package/dist/common/errors.d.ts.map +1 -0
  23. package/dist/common/errors.js +41 -0
  24. package/dist/common/errors.js.map +1 -0
  25. package/dist/common/index.d.ts +7 -0
  26. package/dist/common/index.d.ts.map +1 -0
  27. package/dist/common/index.js +7 -0
  28. package/dist/common/index.js.map +1 -0
  29. package/dist/common/primitives.d.ts +13 -0
  30. package/dist/common/primitives.d.ts.map +1 -0
  31. package/dist/common/primitives.js +14 -0
  32. package/dist/common/primitives.js.map +1 -0
  33. package/dist/common/session.d.ts +140 -0
  34. package/dist/common/session.d.ts.map +1 -0
  35. package/dist/common/session.js +16 -0
  36. package/dist/common/session.js.map +1 -0
  37. package/dist/common/token.d.ts +130 -0
  38. package/dist/common/token.d.ts.map +1 -0
  39. package/dist/common/token.js +783 -0
  40. package/dist/common/token.js.map +1 -0
  41. package/dist/web/api/index.d.ts +3 -0
  42. package/dist/web/api/index.d.ts.map +1 -0
  43. package/dist/web/api/index.js +2 -0
  44. package/dist/web/api/index.js.map +1 -0
  45. package/dist/web/api/navTree.d.ts +52 -0
  46. package/dist/web/api/navTree.d.ts.map +1 -0
  47. package/dist/web/api/navTree.js +2 -0
  48. package/dist/web/api/navTree.js.map +1 -0
  49. package/dist/web/api/walletTypes.d.ts +25 -0
  50. package/dist/web/api/walletTypes.d.ts.map +1 -0
  51. package/dist/web/api/walletTypes.js +2 -0
  52. package/dist/web/api/walletTypes.js.map +1 -0
  53. package/dist/web/components/ChooseOptionPage.d.ts +9 -0
  54. package/dist/web/components/ChooseOptionPage.d.ts.map +1 -0
  55. package/dist/web/components/ChooseOptionPage.js +51 -0
  56. package/dist/web/components/ChooseOptionPage.js.map +1 -0
  57. package/dist/web/components/ConfirmationPage.d.ts +32 -0
  58. package/dist/web/components/ConfirmationPage.d.ts.map +1 -0
  59. package/dist/web/components/ConfirmationPage.js +72 -0
  60. package/dist/web/components/ConfirmationPage.js.map +1 -0
  61. package/dist/web/components/ConfirmationSpinner.d.ts +7 -0
  62. package/dist/web/components/ConfirmationSpinner.d.ts.map +1 -0
  63. package/dist/web/components/ConfirmationSpinner.js +20 -0
  64. package/dist/web/components/ConfirmationSpinner.js.map +1 -0
  65. package/dist/web/components/DaimoModal.d.ts +15 -0
  66. package/dist/web/components/DaimoModal.d.ts.map +1 -0
  67. package/dist/web/components/DaimoModal.js +314 -0
  68. package/dist/web/components/DaimoModal.js.map +1 -0
  69. package/dist/web/components/DeeplinkPage.d.ts +8 -0
  70. package/dist/web/components/DeeplinkPage.d.ts.map +1 -0
  71. package/dist/web/components/DeeplinkPage.js +13 -0
  72. package/dist/web/components/DeeplinkPage.js.map +1 -0
  73. package/dist/web/components/ErrorPage.d.ts +29 -0
  74. package/dist/web/components/ErrorPage.d.ts.map +1 -0
  75. package/dist/web/components/ErrorPage.js +47 -0
  76. package/dist/web/components/ErrorPage.js.map +1 -0
  77. package/dist/web/components/ExchangePage.d.ts +11 -0
  78. package/dist/web/components/ExchangePage.d.ts.map +1 -0
  79. package/dist/web/components/ExchangePage.js +13 -0
  80. package/dist/web/components/ExchangePage.js.map +1 -0
  81. package/dist/web/components/ExpiredPage.d.ts +9 -0
  82. package/dist/web/components/ExpiredPage.d.ts.map +1 -0
  83. package/dist/web/components/ExpiredPage.js +12 -0
  84. package/dist/web/components/ExpiredPage.js.map +1 -0
  85. package/dist/web/components/ModalSkeleton.d.ts +7 -0
  86. package/dist/web/components/ModalSkeleton.d.ts.map +1 -0
  87. package/dist/web/components/ModalSkeleton.js +13 -0
  88. package/dist/web/components/ModalSkeleton.js.map +1 -0
  89. package/dist/web/components/ProgressDots.d.ts +16 -0
  90. package/dist/web/components/ProgressDots.d.ts.map +1 -0
  91. package/dist/web/components/ProgressDots.js +55 -0
  92. package/dist/web/components/ProgressDots.js.map +1 -0
  93. package/dist/web/components/QRCode.d.ts +7 -0
  94. package/dist/web/components/QRCode.d.ts.map +1 -0
  95. package/dist/web/components/QRCode.js +69 -0
  96. package/dist/web/components/QRCode.js.map +1 -0
  97. package/dist/web/components/SelectAmountPage.d.ts +21 -0
  98. package/dist/web/components/SelectAmountPage.d.ts.map +1 -0
  99. package/dist/web/components/SelectAmountPage.js +27 -0
  100. package/dist/web/components/SelectAmountPage.js.map +1 -0
  101. package/dist/web/components/SelectTokenPage.d.ts +14 -0
  102. package/dist/web/components/SelectTokenPage.d.ts.map +1 -0
  103. package/dist/web/components/SelectTokenPage.js +71 -0
  104. package/dist/web/components/SelectTokenPage.js.map +1 -0
  105. package/dist/web/components/WaitingDepositAddressPage.d.ts +15 -0
  106. package/dist/web/components/WaitingDepositAddressPage.d.ts.map +1 -0
  107. package/dist/web/components/WaitingDepositAddressPage.js +126 -0
  108. package/dist/web/components/WaitingDepositAddressPage.js.map +1 -0
  109. package/dist/web/components/WalletAmountPage.d.ts +10 -0
  110. package/dist/web/components/WalletAmountPage.d.ts.map +1 -0
  111. package/dist/web/components/WalletAmountPage.js +158 -0
  112. package/dist/web/components/WalletAmountPage.js.map +1 -0
  113. package/dist/web/components/buttons.d.ts +15 -0
  114. package/dist/web/components/buttons.d.ts.map +1 -0
  115. package/dist/web/components/buttons.js +24 -0
  116. package/dist/web/components/buttons.js.map +1 -0
  117. package/dist/web/components/containers.d.ts +19 -0
  118. package/dist/web/components/containers.d.ts.map +1 -0
  119. package/dist/web/components/containers.js +77 -0
  120. package/dist/web/components/containers.js.map +1 -0
  121. package/dist/web/components/icons.d.ts +22 -0
  122. package/dist/web/components/icons.d.ts.map +1 -0
  123. package/dist/web/components/icons.js +33 -0
  124. package/dist/web/components/icons.js.map +1 -0
  125. package/dist/web/components/shared.d.ts +93 -0
  126. package/dist/web/components/shared.d.ts.map +1 -0
  127. package/dist/web/components/shared.js +202 -0
  128. package/dist/web/components/shared.js.map +1 -0
  129. package/dist/web/hooks/DaimoClientContext.d.ts +7 -0
  130. package/dist/web/hooks/DaimoClientContext.d.ts.map +1 -0
  131. package/dist/web/hooks/DaimoClientContext.js +15 -0
  132. package/dist/web/hooks/DaimoClientContext.js.map +1 -0
  133. package/dist/web/hooks/formatUserError.d.ts +3 -0
  134. package/dist/web/hooks/formatUserError.d.ts.map +1 -0
  135. package/dist/web/hooks/formatUserError.js +30 -0
  136. package/dist/web/hooks/formatUserError.js.map +1 -0
  137. package/dist/web/hooks/locale.d.ts +7 -0
  138. package/dist/web/hooks/locale.d.ts.map +1 -0
  139. package/dist/web/hooks/locale.js +15 -0
  140. package/dist/web/hooks/locale.js.map +1 -0
  141. package/dist/web/hooks/locales/en.d.ts +60 -0
  142. package/dist/web/hooks/locales/en.d.ts.map +1 -0
  143. package/dist/web/hooks/locales/en.js +76 -0
  144. package/dist/web/hooks/locales/en.js.map +1 -0
  145. package/dist/web/hooks/locales/es.d.ts +4 -0
  146. package/dist/web/hooks/locales/es.d.ts.map +1 -0
  147. package/dist/web/hooks/locales/es.js +60 -0
  148. package/dist/web/hooks/locales/es.js.map +1 -0
  149. package/dist/web/hooks/navEvent.d.ts +60 -0
  150. package/dist/web/hooks/navEvent.d.ts.map +1 -0
  151. package/dist/web/hooks/navEvent.js +12 -0
  152. package/dist/web/hooks/navEvent.js.map +1 -0
  153. package/dist/web/hooks/types.d.ts +72 -0
  154. package/dist/web/hooks/types.d.ts.map +1 -0
  155. package/dist/web/hooks/types.js +14 -0
  156. package/dist/web/hooks/types.js.map +1 -0
  157. package/dist/web/hooks/useCopyToClipboard.d.ts +6 -0
  158. package/dist/web/hooks/useCopyToClipboard.d.ts.map +1 -0
  159. package/dist/web/hooks/useCopyToClipboard.js +20 -0
  160. package/dist/web/hooks/useCopyToClipboard.js.map +1 -0
  161. package/dist/web/hooks/usePaymentCallbacks.d.ts +15 -0
  162. package/dist/web/hooks/usePaymentCallbacks.d.ts.map +1 -0
  163. package/dist/web/hooks/usePaymentCallbacks.js +27 -0
  164. package/dist/web/hooks/usePaymentCallbacks.js.map +1 -0
  165. package/dist/web/hooks/useSessionNav.d.ts +28 -0
  166. package/dist/web/hooks/useSessionNav.d.ts.map +1 -0
  167. package/dist/web/hooks/useSessionNav.js +422 -0
  168. package/dist/web/hooks/useSessionNav.js.map +1 -0
  169. package/dist/web/hooks/useSessionPolling.d.ts +10 -0
  170. package/dist/web/hooks/useSessionPolling.d.ts.map +1 -0
  171. package/dist/web/hooks/useSessionPolling.js +60 -0
  172. package/dist/web/hooks/useSessionPolling.js.map +1 -0
  173. package/dist/web/hooks/useWalletFlow.d.ts +22 -0
  174. package/dist/web/hooks/useWalletFlow.d.ts.map +1 -0
  175. package/dist/web/hooks/useWalletFlow.js +350 -0
  176. package/dist/web/hooks/useWalletFlow.js.map +1 -0
  177. package/dist/web/hooks/walletProvider.d.ts +34 -0
  178. package/dist/web/hooks/walletProvider.d.ts.map +1 -0
  179. package/dist/web/hooks/walletProvider.js +14 -0
  180. package/dist/web/hooks/walletProvider.js.map +1 -0
  181. package/dist/web/index.d.ts +33 -0
  182. package/dist/web/index.d.ts.map +1 -0
  183. package/dist/web/index.js +30 -0
  184. package/dist/web/index.js.map +1 -0
  185. package/dist/web/theme.css +183 -0
  186. package/package.json +64 -0
@@ -0,0 +1,783 @@
1
+ import { getAddress, zeroAddress } from "viem";
2
+ import { arbitrum, base, bsc, celo, ethereum, gnosis, hyperEvm, linea, monad, optimism, polygon, scroll, solana, tron, worldchain, } from "./chain.js";
3
+ export var TokenLogo;
4
+ (function (TokenLogo) {
5
+ TokenLogo["BNB"] = "https://daimo.com/coin-logos/bnb.png";
6
+ TokenLogo["CELO"] = "https://daimo.com/coin-logos/celo.png";
7
+ TokenLogo["cUSD"] = "https://daimo.com/coin-logos/cusd.png";
8
+ TokenLogo["DAI"] = "https://daimo.com/coin-logos/dai.png";
9
+ TokenLogo["ETH"] = "https://daimo.com/coin-logos/eth.png";
10
+ TokenLogo["EURC"] = "https://daimo.com/coin-logos/eurc.png";
11
+ TokenLogo["EURe"] = "https://daimo.com/coin-logos/eure.png";
12
+ TokenLogo["HYPE"] = "https://daimo.com/coin-logos/hype.png";
13
+ TokenLogo["MON"] = "https://daimo.com/coin-logos/mon.png";
14
+ TokenLogo["POL"] = "https://daimo.com/coin-logos/pol.png";
15
+ TokenLogo["SOL"] = "https://daimo.com/coin-logos/sol.png";
16
+ TokenLogo["USDBc"] = "https://daimo.com/coin-logos/usdbc.png";
17
+ TokenLogo["USDC"] = "https://daimo.com/coin-logos/usdc.png";
18
+ TokenLogo["USDT"] = "https://daimo.com/coin-logos/usdt.png";
19
+ TokenLogo["WBTC"] = "https://daimo.com/coin-logos/wbtc.png";
20
+ TokenLogo["WETH"] = "https://daimo.com/coin-logos/weth.png";
21
+ TokenLogo["WLD"] = "https://daimo.com/coin-logos/wld.jpeg";
22
+ TokenLogo["XDAI"] = "https://daimo.com/coin-logos/xdai.png";
23
+ })(TokenLogo || (TokenLogo = {}));
24
+ const NATIVE_TOKEN_ADDRESS = zeroAddress;
25
+ /* --------------------- Tokens Constants --------------------- */
26
+ //
27
+ // Arbitrum
28
+ //
29
+ export const arbitrumETH = nativeETH(arbitrum.chainId);
30
+ export const arbitrumWETH = token({
31
+ chainId: arbitrum.chainId,
32
+ token: getAddress("0x82aF49447D8a07e3bd95BD0d56f35241523fBab1"),
33
+ decimals: 18,
34
+ name: "Wrapped Ether",
35
+ symbol: "WETH",
36
+ logoURI: TokenLogo.WETH,
37
+ });
38
+ export const arbitrumUSDC = token({
39
+ chainId: arbitrum.chainId,
40
+ token: getAddress("0xaf88d065e77c8cC2239327C5EDb3A432268e5831"),
41
+ name: "USD Coin",
42
+ symbol: "USDC",
43
+ fiatISO: "USD",
44
+ decimals: 6,
45
+ logoURI: TokenLogo.USDC,
46
+ });
47
+ export const arbitrumDAI = token({
48
+ chainId: arbitrum.chainId,
49
+ token: getAddress("0xDA10009cBd5D07dd0CeCc66161FC93D7c9000da1"),
50
+ decimals: 18,
51
+ fiatISO: "USD",
52
+ name: "Dai Stablecoin",
53
+ symbol: "DAI",
54
+ logoURI: TokenLogo.DAI,
55
+ });
56
+ export const arbitrumUSDT = token({
57
+ chainId: arbitrum.chainId,
58
+ token: getAddress("0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9"),
59
+ decimals: 6,
60
+ fiatISO: "USD",
61
+ name: "Tether USD",
62
+ symbol: "USDT",
63
+ logoURI: TokenLogo.USDT,
64
+ });
65
+ export const arbitrumUSDCe = token({
66
+ chainId: arbitrum.chainId,
67
+ token: getAddress("0xFF970A61A04b1cA14834A43f5dE4533eBDDB5CC8"),
68
+ decimals: 6,
69
+ fiatISO: "USD",
70
+ name: "Bridged USD Coin",
71
+ symbol: "USDCe",
72
+ logoURI: TokenLogo.USDC,
73
+ });
74
+ const arbitrumTokens = [
75
+ arbitrumETH,
76
+ arbitrumWETH,
77
+ arbitrumUSDC,
78
+ arbitrumDAI,
79
+ arbitrumUSDT,
80
+ arbitrumUSDCe,
81
+ ];
82
+ //
83
+ // Base Mainnet
84
+ //
85
+ export const baseETH = nativeETH(base.chainId);
86
+ export const baseWETH = token({
87
+ chainId: base.chainId,
88
+ token: getAddress("0x4200000000000000000000000000000000000006"),
89
+ decimals: 18,
90
+ name: "Wrapped Ether",
91
+ symbol: "WETH",
92
+ logoURI: TokenLogo.WETH,
93
+ });
94
+ export const baseUSDC = token({
95
+ chainId: base.chainId,
96
+ token: getAddress("0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"),
97
+ name: "USD Coin",
98
+ symbol: "USDC",
99
+ fiatISO: "USD",
100
+ decimals: 6,
101
+ logoURI: TokenLogo.USDC,
102
+ });
103
+ export const baseEURC = token({
104
+ chainId: base.chainId,
105
+ token: getAddress("0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42"),
106
+ decimals: 6,
107
+ fiatISO: "EUR",
108
+ name: "EURC",
109
+ symbol: "EURC",
110
+ logoURI: TokenLogo.EURC,
111
+ });
112
+ export const baseUSDbC = token({
113
+ chainId: base.chainId,
114
+ token: getAddress("0xd9aAEc86B65D86f6A7B5B1b0c42FFA531710b6CA"),
115
+ name: "Bridged USD Coin",
116
+ symbol: "USDbC",
117
+ fiatISO: "USD",
118
+ decimals: 6,
119
+ logoURI: TokenLogo.USDBc,
120
+ });
121
+ export const baseDAI = token({
122
+ chainId: base.chainId,
123
+ token: getAddress("0x50c5725949A6F0c72E6C4a641F24049A917DB0Cb"),
124
+ name: "Dai Stablecoin",
125
+ symbol: "DAI",
126
+ fiatISO: "USD",
127
+ decimals: 18,
128
+ logoURI: TokenLogo.DAI,
129
+ });
130
+ export const baseUSDT = token({
131
+ chainId: base.chainId,
132
+ token: getAddress("0xfde4C96c8593536E31F229EA8f37b2ADa2699bb2"),
133
+ name: "Tether USD",
134
+ symbol: "USDT",
135
+ fiatISO: "USD",
136
+ decimals: 6,
137
+ logoURI: TokenLogo.USDT,
138
+ });
139
+ const baseTokens = [
140
+ baseETH,
141
+ baseWETH,
142
+ baseUSDC,
143
+ baseEURC,
144
+ baseUSDbC,
145
+ baseDAI,
146
+ baseUSDT,
147
+ ];
148
+ //
149
+ // BNB Smart Chain
150
+ //
151
+ export const bscBNB = nativeToken({
152
+ chainId: bsc.chainId,
153
+ name: "BNB",
154
+ symbol: "BNB",
155
+ logoURI: TokenLogo.BNB,
156
+ });
157
+ export const bscWBNB = token({
158
+ chainId: bsc.chainId,
159
+ token: getAddress("0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c"),
160
+ decimals: 18,
161
+ name: "Wrapped BNB",
162
+ symbol: "WBNB",
163
+ logoURI: TokenLogo.BNB,
164
+ });
165
+ export const bscUSDC = token({
166
+ chainId: bsc.chainId,
167
+ token: getAddress("0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d"),
168
+ decimals: 18,
169
+ fiatISO: "USD",
170
+ name: "USD Coin",
171
+ symbol: "USDC",
172
+ logoURI: TokenLogo.USDC,
173
+ });
174
+ export const bscUSDT = token({
175
+ chainId: bsc.chainId,
176
+ token: getAddress("0x55d398326f99059fF775485246999027B3197955"),
177
+ decimals: 18,
178
+ fiatISO: "USD",
179
+ name: "Tether USD",
180
+ symbol: "USDT",
181
+ logoURI: TokenLogo.USDT,
182
+ });
183
+ const bscTokens = [bscBNB, bscWBNB, bscUSDC, bscUSDT];
184
+ //
185
+ // Celo
186
+ //
187
+ export const celoCelo = token({
188
+ chainId: celo.chainId,
189
+ token: getAddress("0x471EcE3750Da237f93B8E339c536989b8978a438"),
190
+ decimals: 18,
191
+ name: "Celo",
192
+ symbol: "CELO",
193
+ logoURI: TokenLogo.CELO,
194
+ });
195
+ export const celoUSDC = token({
196
+ chainId: celo.chainId,
197
+ token: getAddress("0xcebA9300f2b948710d2653dD7B07f33A8B32118C"),
198
+ decimals: 6,
199
+ fiatISO: "USD",
200
+ name: "USD Coin",
201
+ symbol: "USDC",
202
+ logoURI: TokenLogo.USDC,
203
+ });
204
+ export const celoUSDT = token({
205
+ chainId: celo.chainId,
206
+ token: getAddress("0x48065fbBE25f71C9282ddf5e1cD6D6A887483D5e"),
207
+ decimals: 6,
208
+ fiatISO: "USD",
209
+ name: "Tether USD",
210
+ symbol: "USDT",
211
+ logoURI: TokenLogo.USDT,
212
+ });
213
+ export const celoCUSD = token({
214
+ chainId: celo.chainId,
215
+ token: getAddress("0x765DE816845861e75A25fCA122bb6898B8B1282a"),
216
+ decimals: 18,
217
+ fiatISO: "USD",
218
+ name: "Celo Dollar",
219
+ symbol: "cUSD",
220
+ logoURI: TokenLogo.cUSD,
221
+ });
222
+ const celoTokens = [celoCelo, celoUSDC, celoUSDT, celoCUSD];
223
+ //
224
+ // Ethereum
225
+ //
226
+ export const ethereumETH = nativeETH(ethereum.chainId);
227
+ export const ethereumWETH = token({
228
+ chainId: ethereum.chainId,
229
+ token: getAddress("0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2"),
230
+ decimals: 18,
231
+ name: "Wrapped Ether",
232
+ symbol: "WETH",
233
+ logoURI: TokenLogo.WETH,
234
+ });
235
+ export const ethereumUSDC = token({
236
+ chainId: ethereum.chainId,
237
+ token: getAddress("0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"),
238
+ decimals: 6,
239
+ fiatISO: "USD",
240
+ name: "USD Coin",
241
+ symbol: "USDC",
242
+ logoURI: TokenLogo.USDC,
243
+ });
244
+ export const ethereumDAI = token({
245
+ chainId: ethereum.chainId,
246
+ token: getAddress("0x6B175474E89094C44Da98b954EedeAC495271d0F"),
247
+ decimals: 18,
248
+ fiatISO: "USD",
249
+ name: "Dai Stablecoin",
250
+ symbol: "DAI",
251
+ logoURI: TokenLogo.DAI,
252
+ });
253
+ export const ethereumUSDT = token({
254
+ chainId: ethereum.chainId,
255
+ token: getAddress("0xdAC17F958D2ee523a2206206994597C13D831ec7"),
256
+ decimals: 6,
257
+ fiatISO: "USD",
258
+ name: "Tether USD",
259
+ symbol: "USDT",
260
+ logoURI: TokenLogo.USDT,
261
+ });
262
+ export const ethereumEURC = token({
263
+ chainId: ethereum.chainId,
264
+ token: getAddress("0x1aBaEA1f7C830bD89Acc67eC4af516284b1bC33c"),
265
+ decimals: 6,
266
+ fiatISO: "EUR",
267
+ name: "EURC",
268
+ symbol: "EURC",
269
+ logoURI: TokenLogo.EURC,
270
+ });
271
+ const ethereumTokens = [
272
+ ethereumETH,
273
+ ethereumWETH,
274
+ ethereumUSDC,
275
+ ethereumEURC,
276
+ ethereumDAI,
277
+ ethereumUSDT,
278
+ ];
279
+ //
280
+ // Gnosis
281
+ //
282
+ export const gnosisXDAI = nativeToken({
283
+ chainId: gnosis.chainId,
284
+ name: "XDAI",
285
+ symbol: "XDAI",
286
+ logoURI: TokenLogo.XDAI,
287
+ token: NATIVE_TOKEN_ADDRESS,
288
+ decimals: 18,
289
+ });
290
+ export const gnosisUSDCe = token({
291
+ chainId: gnosis.chainId,
292
+ token: getAddress("0x2a22f9c3b484c3629090FeED35F17Ff8F88f76F0"),
293
+ decimals: 6,
294
+ fiatISO: "USD",
295
+ name: "Bridged USD Coin",
296
+ symbol: "USDCe",
297
+ logoURI: TokenLogo.USDC,
298
+ });
299
+ export const gnosisEURe = token({
300
+ chainId: gnosis.chainId,
301
+ token: getAddress("0x420CA0f9B9b604cE0fd9C18EF134C705e5Fa3430"),
302
+ decimals: 18,
303
+ fiatISO: "EUR",
304
+ name: "Monerium EURe",
305
+ symbol: "EURe",
306
+ logoURI: TokenLogo.EURe,
307
+ });
308
+ const gnosisTokens = [gnosisXDAI, gnosisUSDCe, gnosisEURe];
309
+ //
310
+ // HyperEVM
311
+ //
312
+ export const hyperEvmHYPE = nativeToken({
313
+ chainId: hyperEvm.chainId,
314
+ name: "HYPE",
315
+ symbol: "HYPE",
316
+ logoURI: TokenLogo.HYPE,
317
+ });
318
+ export const hyperEvmWHYPE = token({
319
+ chainId: hyperEvm.chainId,
320
+ token: getAddress("0x5555555555555555555555555555555555555555"),
321
+ decimals: 18,
322
+ name: "Wrapped HYPE",
323
+ symbol: "WHYPE",
324
+ logoURI: TokenLogo.HYPE,
325
+ });
326
+ export const hyperEvmUSDC = token({
327
+ chainId: hyperEvm.chainId,
328
+ token: getAddress("0xb88339CB7199b77E23DB6E890353E22632Ba630f"),
329
+ decimals: 6,
330
+ fiatISO: "USD",
331
+ name: "USD Coin",
332
+ symbol: "USDC",
333
+ logoURI: TokenLogo.USDC,
334
+ });
335
+ const hyperEvmTokens = [hyperEvmHYPE, hyperEvmWHYPE, hyperEvmUSDC];
336
+ //
337
+ // Linea
338
+ //
339
+ export const lineaETH = nativeETH(linea.chainId);
340
+ export const lineaWETH = token({
341
+ chainId: linea.chainId,
342
+ token: getAddress("0xe5d7c2a44ffddf6b295a15c148167daaaf5cf34f"),
343
+ decimals: 18,
344
+ name: "Wrapped Ether",
345
+ symbol: "WETH",
346
+ logoURI: TokenLogo.WETH,
347
+ });
348
+ export const lineaUSDC = token({
349
+ chainId: linea.chainId,
350
+ token: getAddress("0x176211869cA2b568f2A7D4EE941E073a821EE1ff"),
351
+ decimals: 6,
352
+ fiatISO: "USD",
353
+ name: "USD Coin",
354
+ symbol: "USDC",
355
+ logoURI: TokenLogo.USDC,
356
+ });
357
+ export const lineaDAI = token({
358
+ chainId: linea.chainId,
359
+ token: getAddress("0x4AF15ec2A0BD43Db75dd04E62FAA3B8EF36b00d5"),
360
+ decimals: 18,
361
+ fiatISO: "USD",
362
+ name: "Dai Stablecoin",
363
+ symbol: "DAI",
364
+ logoURI: TokenLogo.DAI,
365
+ });
366
+ const lineaTokens = [lineaETH, lineaWETH, lineaUSDC, lineaDAI];
367
+ //
368
+ // Monad
369
+ //
370
+ export const monadMON = nativeToken({
371
+ chainId: monad.chainId,
372
+ name: "Monad",
373
+ symbol: "MON",
374
+ logoURI: TokenLogo.MON,
375
+ });
376
+ export const monadWMON = token({
377
+ chainId: monad.chainId,
378
+ token: getAddress("0x3bd359C1119dA7Da1D913D1C4D2B7c461115433A"),
379
+ decimals: 18,
380
+ name: "Wrapped Monad",
381
+ symbol: "WMON",
382
+ logoURI: TokenLogo.MON,
383
+ });
384
+ export const monadUSDC = token({
385
+ chainId: monad.chainId,
386
+ token: getAddress("0x754704Bc059F8C67012fEd69BC8A327a5aafb603"),
387
+ decimals: 6,
388
+ fiatISO: "USD",
389
+ name: "USD Coin",
390
+ symbol: "USDC",
391
+ logoURI: TokenLogo.USDC,
392
+ });
393
+ export const monadUSDT = token({
394
+ chainId: monad.chainId,
395
+ token: getAddress("0xe7cd86e13AC4309349F30B3435a9d337750fC82D"),
396
+ decimals: 6,
397
+ fiatISO: "USD",
398
+ name: "Tether USD",
399
+ symbol: "USDT",
400
+ logoURI: TokenLogo.USDT,
401
+ });
402
+ const monadTokens = [monadMON, monadWMON, monadUSDC, monadUSDT];
403
+ //
404
+ // Optimism
405
+ //
406
+ export const optimismETH = nativeETH(optimism.chainId);
407
+ export const optimismWETH = token({
408
+ chainId: optimism.chainId,
409
+ token: getAddress("0x4200000000000000000000000000000000000006"),
410
+ decimals: 18,
411
+ name: "Wrapped Ether",
412
+ symbol: "WETH",
413
+ logoURI: TokenLogo.WETH,
414
+ });
415
+ export const optimismUSDC = token({
416
+ chainId: optimism.chainId,
417
+ token: getAddress("0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85"),
418
+ decimals: 6,
419
+ fiatISO: "USD",
420
+ name: "USD Coin",
421
+ symbol: "USDC",
422
+ logoURI: TokenLogo.USDC,
423
+ });
424
+ export const optimismDAI = token({
425
+ chainId: optimism.chainId,
426
+ token: getAddress("0xDA10009cBd5D07dd0CeCc66161FC93D7c9000da1"),
427
+ decimals: 18,
428
+ fiatISO: "USD",
429
+ name: "Dai Stablecoin",
430
+ symbol: "DAI",
431
+ logoURI: TokenLogo.DAI,
432
+ });
433
+ export const optimismUSDT = token({
434
+ chainId: optimism.chainId,
435
+ token: getAddress("0x94b008aA00579c1307B0EF2c499aD98a8ce58e58"),
436
+ decimals: 6,
437
+ fiatISO: "USD",
438
+ name: "Tether USD",
439
+ symbol: "USDT",
440
+ logoURI: TokenLogo.USDT,
441
+ });
442
+ export const optimismUSDCe = token({
443
+ chainId: optimism.chainId,
444
+ token: getAddress("0x7F5c764cBc14f9669B88837ca1490cCa17c31607"),
445
+ decimals: 6,
446
+ fiatISO: "USD",
447
+ name: "Bridged USD Coin",
448
+ symbol: "USDCe",
449
+ logoURI: TokenLogo.USDC,
450
+ });
451
+ const optimismTokens = [
452
+ optimismETH,
453
+ optimismWETH,
454
+ optimismUSDC,
455
+ optimismDAI,
456
+ optimismUSDT,
457
+ optimismUSDCe,
458
+ ];
459
+ //
460
+ // Polygon
461
+ //
462
+ export const polygonPOL = nativeToken({
463
+ chainId: polygon.chainId,
464
+ name: "Polygon",
465
+ symbol: "POL",
466
+ logoURI: TokenLogo.POL,
467
+ });
468
+ export const polygonWPOL = token({
469
+ chainId: polygon.chainId,
470
+ token: getAddress("0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270"),
471
+ decimals: 18,
472
+ name: "Wrapped Polygon",
473
+ symbol: "WPOL",
474
+ logoURI: TokenLogo.POL,
475
+ });
476
+ export const polygonWETH = token({
477
+ chainId: polygon.chainId,
478
+ token: getAddress("0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619"),
479
+ decimals: 18,
480
+ name: "Wrapped Ether",
481
+ symbol: "WETH",
482
+ logoURI: TokenLogo.WETH,
483
+ });
484
+ export const polygonUSDC = token({
485
+ chainId: polygon.chainId,
486
+ token: getAddress("0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359"),
487
+ decimals: 6,
488
+ fiatISO: "USD",
489
+ name: "USD Coin",
490
+ symbol: "USDC",
491
+ logoURI: TokenLogo.USDC,
492
+ });
493
+ export const polygonDAI = token({
494
+ chainId: polygon.chainId,
495
+ token: getAddress("0x8f3Cf7ad23Cd3CaDbD9735AFf958023239c6A063"),
496
+ decimals: 18,
497
+ fiatISO: "USD",
498
+ name: "Dai Stablecoin",
499
+ symbol: "DAI",
500
+ logoURI: TokenLogo.DAI,
501
+ });
502
+ export const polygonUSDT = token({
503
+ chainId: polygon.chainId,
504
+ token: getAddress("0xc2132D05D31c914a87C6611C10748AEb04B58e8F"),
505
+ decimals: 6,
506
+ fiatISO: "USD",
507
+ name: "Tether USD",
508
+ symbol: "USDT",
509
+ logoURI: TokenLogo.USDT,
510
+ });
511
+ export const polygonUSDCe = token({
512
+ chainId: polygon.chainId,
513
+ token: getAddress("0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174"),
514
+ decimals: 6,
515
+ fiatISO: "USD",
516
+ name: "USD Coin (PoS)",
517
+ symbol: "USDCe",
518
+ logoURI: TokenLogo.USDC,
519
+ });
520
+ const polygonTokens = [
521
+ polygonPOL,
522
+ polygonWPOL,
523
+ polygonWETH,
524
+ polygonUSDC,
525
+ polygonDAI,
526
+ polygonUSDT,
527
+ polygonUSDCe,
528
+ ];
529
+ //
530
+ // Scroll
531
+ //
532
+ export const scrollETH = nativeETH(scroll.chainId);
533
+ export const scrollWETH = token({
534
+ chainId: scroll.chainId,
535
+ token: getAddress("0x5300000000000000000000000000000000000004"),
536
+ decimals: 18,
537
+ name: "Wrapped Ether",
538
+ symbol: "WETH",
539
+ logoURI: TokenLogo.WETH,
540
+ });
541
+ export const scrollUSDC = token({
542
+ chainId: scroll.chainId,
543
+ token: getAddress("0x06eFdBFf2a14a7c8E15944D1F4A48F9F95F663A4"),
544
+ decimals: 6,
545
+ fiatISO: "USD",
546
+ name: "USD Coin",
547
+ symbol: "USDC",
548
+ logoURI: TokenLogo.USDC,
549
+ });
550
+ export const scrollUSDT = token({
551
+ chainId: scroll.chainId,
552
+ token: getAddress("0xf55BEC9cafDbE8730f096Aa55dad6D22d44099Df"),
553
+ decimals: 6,
554
+ fiatISO: "USD",
555
+ name: "Tether USD",
556
+ symbol: "USDT",
557
+ logoURI: TokenLogo.USDT,
558
+ });
559
+ const scrollTokens = [scrollETH, scrollWETH, scrollUSDC, scrollUSDT];
560
+ //
561
+ // Solana
562
+ //
563
+ export const solanaSOL = nativeToken({
564
+ chainId: solana.chainId,
565
+ name: "Solana",
566
+ symbol: "SOL",
567
+ logoURI: TokenLogo.SOL,
568
+ token: "11111111111111111111111111111111",
569
+ decimals: 9,
570
+ });
571
+ export const solanaWSOL = token({
572
+ chainId: solana.chainId,
573
+ token: "So11111111111111111111111111111111111111112",
574
+ decimals: 9,
575
+ name: "Wrapped SOL",
576
+ symbol: "WSOL",
577
+ logoURI: TokenLogo.SOL,
578
+ });
579
+ export const solanaUSDC = token({
580
+ chainId: solana.chainId,
581
+ token: "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
582
+ decimals: 6,
583
+ fiatISO: "USD",
584
+ name: "USD Coin",
585
+ symbol: "USDC",
586
+ logoURI: TokenLogo.USDC,
587
+ });
588
+ export const solanaUSDT = token({
589
+ chainId: solana.chainId,
590
+ token: "Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB",
591
+ decimals: 6,
592
+ fiatISO: "USD",
593
+ name: "Tether USD",
594
+ symbol: "USDT",
595
+ logoURI: TokenLogo.USDT,
596
+ });
597
+ const solanaTokens = [solanaUSDC, solanaUSDT, solanaWSOL, solanaSOL];
598
+ //
599
+ // Tron
600
+ //
601
+ export const tronUSDT = token({
602
+ chainId: tron.chainId,
603
+ token: "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",
604
+ decimals: 6,
605
+ fiatISO: "USD",
606
+ name: "Tether USD",
607
+ symbol: "USDT",
608
+ logoURI: TokenLogo.USDT,
609
+ });
610
+ const tronTokens = [tronUSDT];
611
+ //
612
+ // Worldchain
613
+ //
614
+ export const worldchainETH = nativeETH(worldchain.chainId);
615
+ export const worldchainWETH = token({
616
+ chainId: worldchain.chainId,
617
+ token: getAddress("0x4200000000000000000000000000000000000006"),
618
+ decimals: 18,
619
+ name: "Wrapped Ether",
620
+ symbol: "WETH",
621
+ logoURI: TokenLogo.WETH,
622
+ });
623
+ export const worldchainWBTC = token({
624
+ chainId: worldchain.chainId,
625
+ token: getAddress("0x03c7054bcb39f7b2e5b2c7acb37583e32d70cfa3"),
626
+ decimals: 8,
627
+ name: "Wrapped Bitcoin",
628
+ symbol: "WBTC",
629
+ logoURI: TokenLogo.WBTC,
630
+ });
631
+ export const worldchainUSDC = token({
632
+ chainId: worldchain.chainId,
633
+ token: getAddress("0x79A02482A880bCE3F13e09Da970dC34db4CD24d1"),
634
+ decimals: 6,
635
+ fiatISO: "USD",
636
+ name: "USD Coin",
637
+ symbol: "USDC",
638
+ logoURI: TokenLogo.USDC,
639
+ });
640
+ export const worldchainWLD = token({
641
+ chainId: worldchain.chainId,
642
+ token: getAddress("0x2cFc85d8E48F8EAB294be644d9E25C3030863003"),
643
+ decimals: 18,
644
+ name: "Worldcoin",
645
+ symbol: "WLD",
646
+ logoURI: TokenLogo.WLD,
647
+ });
648
+ const worldchainTokens = [
649
+ worldchainETH,
650
+ worldchainWETH,
651
+ worldchainWBTC,
652
+ worldchainUSDC,
653
+ worldchainWLD,
654
+ ];
655
+ const knownTokensByChain = new Map([
656
+ [arbitrum.chainId, arbitrumTokens],
657
+ [base.chainId, baseTokens],
658
+ [bsc.chainId, bscTokens],
659
+ [celo.chainId, celoTokens],
660
+ [ethereum.chainId, ethereumTokens],
661
+ [gnosis.chainId, gnosisTokens],
662
+ [hyperEvm.chainId, hyperEvmTokens],
663
+ [linea.chainId, lineaTokens],
664
+ [monad.chainId, monadTokens],
665
+ [optimism.chainId, optimismTokens],
666
+ [polygon.chainId, polygonTokens],
667
+ [scroll.chainId, scrollTokens],
668
+ [solana.chainId, solanaTokens],
669
+ [tron.chainId, tronTokens],
670
+ [worldchain.chainId, worldchainTokens],
671
+ ]);
672
+ export const knownTokens = Array.from(knownTokensByChain.values()).flat();
673
+ /* --------------------- Tokens By Address --------------------- */
674
+ const tokensByChainAddr = new Map(knownTokens.map((t) => [`${t.chainId}-${t.token}`, t]));
675
+ export function getKnownToken(chainId, tokenAddress) {
676
+ return tokensByChainAddr.get(`${chainId}-${tokenAddress}`);
677
+ }
678
+ /* --------------------- Tokens By Type --------------------- */
679
+ var TokenType;
680
+ (function (TokenType) {
681
+ TokenType["NATIVE"] = "NATIVE";
682
+ TokenType["WRAPPED_NATIVE"] = "WRAPPED_NATIVE";
683
+ TokenType["NATIVE_USDC"] = "NATIVE_USDC";
684
+ TokenType["BRIDGED_USDC"] = "BRIDGED_USDC";
685
+ TokenType["DAI"] = "DAI";
686
+ })(TokenType || (TokenType = {}));
687
+ const tokensByChainAndType = new Map([
688
+ [arbitrum.chainId, { [TokenType.NATIVE]: arbitrumETH, [TokenType.WRAPPED_NATIVE]: arbitrumWETH, [TokenType.NATIVE_USDC]: arbitrumUSDC, [TokenType.BRIDGED_USDC]: arbitrumUSDCe, [TokenType.DAI]: arbitrumDAI }],
689
+ [base.chainId, { [TokenType.NATIVE]: baseETH, [TokenType.WRAPPED_NATIVE]: baseWETH, [TokenType.NATIVE_USDC]: baseUSDC, [TokenType.BRIDGED_USDC]: baseUSDbC, [TokenType.DAI]: baseDAI }],
690
+ [bsc.chainId, { [TokenType.NATIVE]: bscBNB, [TokenType.WRAPPED_NATIVE]: bscWBNB, [TokenType.BRIDGED_USDC]: bscUSDC }],
691
+ [celo.chainId, { [TokenType.NATIVE]: celoCelo, [TokenType.WRAPPED_NATIVE]: celoCelo, [TokenType.NATIVE_USDC]: celoUSDC }],
692
+ [ethereum.chainId, { [TokenType.NATIVE]: ethereumETH, [TokenType.WRAPPED_NATIVE]: ethereumWETH, [TokenType.NATIVE_USDC]: ethereumUSDC, [TokenType.DAI]: ethereumDAI }],
693
+ [gnosis.chainId, { [TokenType.NATIVE]: gnosisXDAI, [TokenType.NATIVE_USDC]: gnosisUSDCe }],
694
+ [hyperEvm.chainId, { [TokenType.NATIVE]: hyperEvmHYPE, [TokenType.WRAPPED_NATIVE]: hyperEvmWHYPE, [TokenType.NATIVE_USDC]: hyperEvmUSDC }],
695
+ [linea.chainId, { [TokenType.NATIVE]: lineaETH, [TokenType.WRAPPED_NATIVE]: lineaWETH, [TokenType.NATIVE_USDC]: lineaUSDC, [TokenType.DAI]: lineaDAI }],
696
+ [monad.chainId, { [TokenType.NATIVE]: monadMON, [TokenType.WRAPPED_NATIVE]: monadWMON, [TokenType.NATIVE_USDC]: monadUSDC }],
697
+ [optimism.chainId, { [TokenType.NATIVE]: optimismETH, [TokenType.WRAPPED_NATIVE]: optimismWETH, [TokenType.NATIVE_USDC]: optimismUSDC, [TokenType.BRIDGED_USDC]: optimismUSDCe, [TokenType.DAI]: optimismDAI }],
698
+ [polygon.chainId, { [TokenType.NATIVE]: polygonPOL, [TokenType.WRAPPED_NATIVE]: polygonWPOL, [TokenType.NATIVE_USDC]: polygonUSDC, [TokenType.BRIDGED_USDC]: polygonUSDCe, [TokenType.DAI]: polygonDAI }],
699
+ [scroll.chainId, { [TokenType.NATIVE]: scrollETH, [TokenType.WRAPPED_NATIVE]: scrollWETH, [TokenType.BRIDGED_USDC]: scrollUSDC }],
700
+ [solana.chainId, { [TokenType.NATIVE]: solanaSOL, [TokenType.WRAPPED_NATIVE]: solanaWSOL, [TokenType.NATIVE_USDC]: solanaUSDC }],
701
+ [worldchain.chainId, { [TokenType.NATIVE]: worldchainETH, [TokenType.WRAPPED_NATIVE]: worldchainWETH, [TokenType.NATIVE_USDC]: worldchainUSDC }],
702
+ ]);
703
+ export function isNativeToken(chainId, token) {
704
+ const nt = tokensByChainAndType.get(chainId)?.[TokenType.NATIVE];
705
+ if (nt == null)
706
+ return false;
707
+ return getAddress(nt.token) === getAddress(token);
708
+ }
709
+ export function getChainNativeToken(chainId) {
710
+ const token = tokensByChainAndType.get(chainId)?.[TokenType.NATIVE];
711
+ if (!token)
712
+ throw new Error(`missing native token for chainId ${chainId}`);
713
+ return token;
714
+ }
715
+ export function getChainWrappedNativeToken(chainId) {
716
+ const token = tokensByChainAndType.get(chainId)?.[TokenType.WRAPPED_NATIVE];
717
+ if (!token)
718
+ throw new Error(`missing wrapped native token for chainId ${chainId}`);
719
+ return token;
720
+ }
721
+ export function getChainNativeUSDC(chainId) {
722
+ return tokensByChainAndType.get(chainId)?.[TokenType.NATIVE_USDC];
723
+ }
724
+ /** Returns native USDC when available, otherwise bridged USDC. */
725
+ export function getChainBestUSDC(chainId) {
726
+ const t = tokensByChainAndType.get(chainId);
727
+ return t?.[TokenType.NATIVE_USDC] ?? t?.[TokenType.BRIDGED_USDC];
728
+ }
729
+ export function getChainDAI(chainId) {
730
+ return tokensByChainAndType.get(chainId)?.[TokenType.DAI];
731
+ }
732
+ /** Returns true if two tokens are equal (same chain and token address). */
733
+ export function tokensEqual(a, b) {
734
+ return a.chainId === b.chainId && a.token === b.token;
735
+ }
736
+ export function isNativeOrWrappedNative(chainId, tokenAddr) {
737
+ const tokens = tokensByChainAndType.get(chainId);
738
+ if (!tokens)
739
+ return false;
740
+ return (tokens[TokenType.NATIVE]?.token === tokenAddr ||
741
+ tokens[TokenType.WRAPPED_NATIVE]?.token === tokenAddr);
742
+ }
743
+ export function getWrappedAddressForLookup(chainId, tokenAddr) {
744
+ if (isNativeOrWrappedNative(chainId, tokenAddr)) {
745
+ const wrapped = tokensByChainAndType.get(chainId)?.[TokenType.WRAPPED_NATIVE];
746
+ if (wrapped)
747
+ return wrapped.token;
748
+ }
749
+ return tokenAddr;
750
+ }
751
+ /* --------------------- Native Token Utils --------------------- */
752
+ function nativeETH(chainId) {
753
+ return nativeToken({
754
+ chainId,
755
+ name: "Ether",
756
+ symbol: "ETH",
757
+ logoURI: TokenLogo.ETH,
758
+ });
759
+ }
760
+ function nativeToken({ chainId, name, symbol, logoURI, token = NATIVE_TOKEN_ADDRESS, decimals = 18, }) {
761
+ return {
762
+ chainId,
763
+ token,
764
+ name,
765
+ decimals,
766
+ symbol,
767
+ logoURI,
768
+ logoSourceURI: logoURI,
769
+ };
770
+ }
771
+ export function token({ chainId, token, name, symbol, decimals, fiatISO, logoURI, }) {
772
+ return {
773
+ chainId,
774
+ token,
775
+ name,
776
+ symbol,
777
+ decimals,
778
+ fiatISO,
779
+ logoURI,
780
+ logoSourceURI: logoURI,
781
+ };
782
+ }
783
+ //# sourceMappingURL=token.js.map