@imtbl/sdk 0.0.1-alpha → 0.0.1-alpha.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.
@@ -1,471 +0,0 @@
1
- import { utils, Contract } from 'ethers';
2
- import $7v2Z6$metamaskdetectprovider from '@metamask/detect-provider';
3
- import { Web3Provider } from '@ethersproject/providers';
4
-
5
- function $parcel$interopDefault(a) {
6
- return a && a.__esModule ? a.default : a;
7
- }
8
-
9
- const $762782b6c862d954$export$db5daa1b5156ccfe = [
10
- {
11
- constant: true,
12
- inputs: [],
13
- name: "name",
14
- outputs: [
15
- {
16
- name: "",
17
- type: "string"
18
- }
19
- ],
20
- payable: false,
21
- type: "function"
22
- },
23
- {
24
- constant: true,
25
- inputs: [],
26
- name: "decimals",
27
- outputs: [
28
- {
29
- name: "",
30
- type: "uint8"
31
- }
32
- ],
33
- payable: false,
34
- type: "function"
35
- },
36
- {
37
- constant: true,
38
- inputs: [
39
- {
40
- name: "_owner",
41
- type: "address"
42
- }
43
- ],
44
- name: "balanceOf",
45
- outputs: [
46
- {
47
- name: "balance",
48
- type: "uint256"
49
- }
50
- ],
51
- payable: false,
52
- type: "function"
53
- },
54
- {
55
- constant: true,
56
- inputs: [],
57
- name: "symbol",
58
- outputs: [
59
- {
60
- name: "",
61
- type: "string"
62
- }
63
- ],
64
- payable: false,
65
- type: "function"
66
- }
67
- ];
68
-
69
-
70
- let $d176a05e966364ba$export$3bfad4d03ada24c4;
71
- (function(ConnectionProviders) {
72
- ConnectionProviders["METAMASK"] = "metamask";
73
- })($d176a05e966364ba$export$3bfad4d03ada24c4 || ($d176a05e966364ba$export$3bfad4d03ada24c4 = {}));
74
-
75
-
76
- let $a47e48dd2c04791b$export$c06e1e7429de6283;
77
- (function(ChainId) {
78
- ChainId[ChainId["ETHEREUM"] = 1] = "ETHEREUM";
79
- ChainId[ChainId["GOERLI"] = 5] = "GOERLI";
80
- ChainId[ChainId["POLYGON"] = 137] = "POLYGON";
81
- })($a47e48dd2c04791b$export$c06e1e7429de6283 || ($a47e48dd2c04791b$export$c06e1e7429de6283 = {}));
82
- const $a47e48dd2c04791b$export$f61f4aaec62f6be9 = {
83
- [$a47e48dd2c04791b$export$c06e1e7429de6283.ETHEREUM]: {
84
- chainIdHex: "0x1",
85
- chainName: "Ethereum",
86
- rpcUrls: [
87
- "https://mainnet.infura.io/v3/"
88
- ],
89
- nativeCurrency: {
90
- name: "Ethereum",
91
- symbol: "ETH",
92
- decimals: 18
93
- },
94
- blockExplorerUrls: [
95
- "https://etherscan.io/"
96
- ]
97
- },
98
- [$a47e48dd2c04791b$export$c06e1e7429de6283.GOERLI]: {
99
- chainIdHex: "0x5",
100
- chainName: "Goerli",
101
- rpcUrls: [
102
- "https://goerli.infura.io/v3/"
103
- ],
104
- nativeCurrency: {
105
- name: "Goerli Eth",
106
- symbol: "ETH",
107
- decimals: 18
108
- },
109
- blockExplorerUrls: [
110
- "https://goerli.etherscan.io/"
111
- ]
112
- },
113
- [$a47e48dd2c04791b$export$c06e1e7429de6283.POLYGON]: {
114
- chainIdHex: "0x89",
115
- chainName: "Polygon",
116
- rpcUrls: [
117
- "https://polygon-rpc.com"
118
- ],
119
- nativeCurrency: {
120
- name: "MATIC",
121
- symbol: "MATIC",
122
- decimals: 18
123
- },
124
- blockExplorerUrls: [
125
- "https://polygonscan.com/"
126
- ]
127
- }
128
- };
129
-
130
-
131
- let $08d5ddc39acd6833$export$fd9b17d87f4121d2;
132
- (function(TokenFilterTypes) {
133
- TokenFilterTypes["SWAP"] = "swap";
134
- TokenFilterTypes["BRIDGE"] = "bridge";
135
- TokenFilterTypes["ALL"] = "all";
136
- })($08d5ddc39acd6833$export$fd9b17d87f4121d2 || ($08d5ddc39acd6833$export$fd9b17d87f4121d2 = {}));
137
-
138
-
139
-
140
-
141
- const $4f91c5f280efe242$export$a130407f3423b97d = {
142
- CHECK_CONNECTION: "eth_accounts",
143
- CONNECT: "eth_requestAccounts",
144
- ADD_NETWORK: "wallet_addEthereumChain",
145
- SWITCH_NETWORK: "wallet_switchEthereumChain"
146
- };
147
- let $4f91c5f280efe242$export$a75605c67ea83a5a;
148
- (function(WalletFilterTypes) {
149
- WalletFilterTypes["ALL"] = "all";
150
- WalletFilterTypes["DESKTOP"] = "desktop";
151
- WalletFilterTypes["MOBILE"] = "mobile";
152
- })($4f91c5f280efe242$export$a75605c67ea83a5a || ($4f91c5f280efe242$export$a75605c67ea83a5a = {}));
153
-
154
-
155
-
156
-
157
- let $a8bc256d81a5e2c1$export$e3dc0620abde7f5a;
158
- (function(CheckoutErrorType) {
159
- CheckoutErrorType["CONNECT_PROVIDER_ERROR"] = "CONNECT_PROVIDER_ERROR";
160
- CheckoutErrorType["GET_BALANCE_ERROR"] = "GET_BALANCE_ERROR";
161
- CheckoutErrorType["GET_ERC20_BALANCE_ERROR"] = "GET_ERC20_BALANCE_ERROR";
162
- CheckoutErrorType["METAMASK_PROVIDER_ERROR"] = "METAMASK_PROVIDER_ERROR";
163
- CheckoutErrorType["CHAIN_NOT_SUPPORTED_ERROR"] = "CHAIN_NOT_SUPPORTED_ERROR";
164
- CheckoutErrorType["PROVIDER_REQUEST_MISSING_ERROR"] = "PROVIDER_REQUEST_MISSING_ERROR";
165
- CheckoutErrorType["USER_REJECTED_REQUEST_ERROR"] = "USER_REJECTED_REQUEST_ERROR";
166
- CheckoutErrorType["TRANSACTION_ERROR"] = "TRANSACTION_ERROR";
167
- })($a8bc256d81a5e2c1$export$e3dc0620abde7f5a || ($a8bc256d81a5e2c1$export$e3dc0620abde7f5a = {}));
168
- class $a8bc256d81a5e2c1$export$b722478a3cbfa3bc extends Error {
169
- constructor(message, type){
170
- super(message);
171
- this.type = type;
172
- }
173
- }
174
- const $a8bc256d81a5e2c1$export$bacc563de539c6c3 = async (fn, customError)=>{
175
- try {
176
- return await fn();
177
- } catch (error) {
178
- const errorMessage = customError.message || `${error.message}` || "UnknownError";
179
- throw new $a8bc256d81a5e2c1$export$b722478a3cbfa3bc(errorMessage, customError.type);
180
- }
181
- };
182
-
183
-
184
-
185
-
186
-
187
-
188
-
189
- async function $de192de6ef100f9f$export$79f13b4cfaaf0d09(provider) {
190
- const network = await provider.getNetwork();
191
- if (!Object.values(($a47e48dd2c04791b$export$c06e1e7429de6283)).includes(network.chainId)) // return empty details
192
- return {};
193
- const chainIdNetworkInfo = ($a47e48dd2c04791b$export$f61f4aaec62f6be9)[network.chainId];
194
- const networkInfo = {
195
- name: chainIdNetworkInfo.chainName,
196
- chainId: parseInt(chainIdNetworkInfo.chainIdHex, 16),
197
- nativeCurrency: chainIdNetworkInfo.nativeCurrency
198
- };
199
- return networkInfo;
200
- }
201
- async function $de192de6ef100f9f$export$b827d9418aeb5dbd(provider, chainId) {
202
- if (!Object.values(($a47e48dd2c04791b$export$c06e1e7429de6283)).includes(chainId)) throw new ($a8bc256d81a5e2c1$export$b722478a3cbfa3bc)(`${chainId} is not a supported chain`, ($a8bc256d81a5e2c1$export$e3dc0620abde7f5a).CHAIN_NOT_SUPPORTED_ERROR);
203
- if (!provider.provider?.request) throw new ($a8bc256d81a5e2c1$export$b722478a3cbfa3bc)("provider object is missing request function", ($a8bc256d81a5e2c1$export$e3dc0620abde7f5a).PROVIDER_REQUEST_MISSING_ERROR);
204
- // WT-1146 - Refer to the README in this folder for explantion on the switch network flow
205
- try {
206
- await $de192de6ef100f9f$var$switchNetworkInWallet(provider, chainId);
207
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
208
- } catch (err) {
209
- if (err.message.includes("Unrecognized chain ID")) try {
210
- await $de192de6ef100f9f$var$addNetworkToWallet(provider, chainId);
211
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
212
- } catch (err) {
213
- throw new ($a8bc256d81a5e2c1$export$b722478a3cbfa3bc)("user cancelled the add network request", ($a8bc256d81a5e2c1$export$e3dc0620abde7f5a).USER_REJECTED_REQUEST_ERROR);
214
- }
215
- else throw new ($a8bc256d81a5e2c1$export$b722478a3cbfa3bc)("user cancelled the switch network request", ($a8bc256d81a5e2c1$export$e3dc0620abde7f5a).USER_REJECTED_REQUEST_ERROR);
216
- }
217
- // we can assume that if the above succeeds then user has successfully
218
- // switched to the network specified
219
- const newNetwork = ($a47e48dd2c04791b$export$f61f4aaec62f6be9)[chainId];
220
- return {
221
- network: {
222
- name: newNetwork.chainName,
223
- chainId: parseInt(newNetwork.chainIdHex, 16),
224
- nativeCurrency: newNetwork.nativeCurrency
225
- }
226
- };
227
- }
228
- // these functions should not be exported. These functions should be used as part of an exported function e.g switchWalletNetwork() above.
229
- // make sure to check if(provider.provider?.request) in the exported function and throw an error
230
- async function $de192de6ef100f9f$var$switchNetworkInWallet(provider, chainId) {
231
- if (provider.provider?.request) return await provider.provider.request({
232
- method: ($4f91c5f280efe242$export$a130407f3423b97d).SWITCH_NETWORK,
233
- params: [
234
- {
235
- chainId: ($a47e48dd2c04791b$export$f61f4aaec62f6be9)[chainId].chainIdHex
236
- }
237
- ]
238
- });
239
- }
240
- async function $de192de6ef100f9f$var$addNetworkToWallet(provider, chainId) {
241
- if (provider.provider?.request) {
242
- const addNetwork = {
243
- chainId: ($a47e48dd2c04791b$export$f61f4aaec62f6be9)[chainId].chainIdHex,
244
- chainName: ($a47e48dd2c04791b$export$f61f4aaec62f6be9)[chainId].chainName,
245
- rpcUrls: ($a47e48dd2c04791b$export$f61f4aaec62f6be9)[chainId].rpcUrls,
246
- nativeCurrency: ($a47e48dd2c04791b$export$f61f4aaec62f6be9)[chainId].nativeCurrency,
247
- blockExplorerUrls: ($a47e48dd2c04791b$export$f61f4aaec62f6be9)[chainId].blockExplorerUrls
248
- };
249
- return await provider.provider.request({
250
- method: ($4f91c5f280efe242$export$a130407f3423b97d).ADD_NETWORK,
251
- params: [
252
- addNetwork
253
- ]
254
- });
255
- }
256
- }
257
-
258
-
259
-
260
-
261
-
262
- var $cda6003506e4182e$exports = {};
263
- $cda6003506e4182e$exports = JSON.parse("[{\"address\":\"0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0\",\"chainId\":137,\"name\":\"Matic\",\"symbol\":\"MATIC\",\"decimals\":18,\"icon\":\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38.4 33.5' style='enable-background:new 0 0 38.4 33.5;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%238247E5;%7D%0A%3C/style%3E%3Cg%3E%3Cpath class='st0' d='M29,10.2c-0.7-0.4-1.6-0.4-2.4,0L21,13.5l-3.8,2.1l-5.5,3.3c-0.7,0.4-1.6,0.4-2.4,0L5,16.3 c-0.7-0.4-1.2-1.2-1.2-2.1v-5c0-0.8,0.4-1.6,1.2-2.1l4.3-2.5c0.7-0.4,1.6-0.4,2.4,0L16,7.2c0.7,0.4,1.2,1.2,1.2,2.1v3.3l3.8-2.2V7 c0-0.8-0.4-1.6-1.2-2.1l-8-4.7c-0.7-0.4-1.6-0.4-2.4,0L1.2,5C0.4,5.4,0,6.2,0,7v9.4c0,0.8,0.4,1.6,1.2,2.1l8.1,4.7 c0.7,0.4,1.6,0.4,2.4,0l5.5-3.2l3.8-2.2l5.5-3.2c0.7-0.4,1.6-0.4,2.4,0l4.3,2.5c0.7,0.4,1.2,1.2,1.2,2.1v5c0,0.8-0.4,1.6-1.2,2.1 L29,28.8c-0.7,0.4-1.6,0.4-2.4,0l-4.3-2.5c-0.7-0.4-1.2-1.2-1.2-2.1V21l-3.8,2.2v3.3c0,0.8,0.4,1.6,1.2,2.1l8.1,4.7 c0.7,0.4,1.6,0.4,2.4,0l8.1-4.7c0.7-0.4,1.2-1.2,1.2-2.1V17c0-0.8-0.4-1.6-1.2-2.1L29,10.2z'/%3E%3C/g%3E%3C/svg%3E%0A\",\"tokenFeatures\":[\"swap\",\"bridge\"]},{\"name\":\"Ethereum\",\"symbol\":\"ETH\",\"decimals\":18,\"icon\":\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3C!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.1//EN' 'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3E%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' width='100%25' height='100%25' version='1.1' shape-rendering='geometricPrecision' text-rendering='geometricPrecision' image-rendering='optimizeQuality' fill-rule='evenodd' clip-rule='evenodd'%0AviewBox='0 0 784.37 1277.39' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:xodm='http://www.corel.com/coreldraw/odm/2003'%3E%3Cg id='Layer_x0020_1'%3E%3Cmetadata id='CorelCorpID_0Corel-Layer'/%3E%3Cg id='_1421394342400'%3E%3Cg%3E%3Cpolygon fill='%23343434' fill-rule='nonzero' points='392.07,0 383.5,29.11 383.5,873.74 392.07,882.29 784.13,650.54 '/%3E%3Cpolygon fill='%238C8C8C' fill-rule='nonzero' points='392.07,0 -0,650.54 392.07,882.29 392.07,472.33 '/%3E%3Cpolygon fill='%233C3C3B' fill-rule='nonzero' points='392.07,956.52 387.24,962.41 387.24,1263.28 392.07,1277.38 784.37,724.89 '/%3E%3Cpolygon fill='%238C8C8C' fill-rule='nonzero' points='392.07,1277.38 392.07,956.52 -0,724.89 '/%3E%3Cpolygon fill='%23141414' fill-rule='nonzero' points='392.07,882.29 784.13,650.54 392.07,472.33 '/%3E%3Cpolygon fill='%23393939' fill-rule='nonzero' points='0,650.54 392.07,882.29 392.07,472.33 '/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A\",\"chainId\":1,\"tokenFeatures\":[\"swap\",\"bridge\"]},{\"address\":\"0xF57e7e7C23978C3cAEC3C3548E3D615c346e79fF\",\"chainId\":1,\"name\":\"Immutable X\",\"symbol\":\"IMX\",\"decimals\":18,\"icon\":\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 139 113' style='enable-background:new 0 0 139 113;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bclip-path:url(%23SVGID_00000053504646934646330740000009134454895836103350_);%7D .st1%7Bfill:%2317B5CB;%7D%0A%3C/style%3E%3Cg%3E%3Cdefs%3E%3Crect id='SVGID_1_' width='139' height='113'/%3E%3C/defs%3E%3CclipPath id='SVGID_00000035518931339590433170000002358037249938198420_'%3E%3Cuse xlink:href='%23SVGID_1_' style='overflow:visible;'/%3E%3C/clipPath%3E%3Cg style='clip-path:url(%23SVGID_00000035518931339590433170000002358037249938198420_);'%3E%3Cpath class='st1' d='M124.1,0h14.6L79.5,67.6c-1.5,1.7-1.6,4.3-0.1,6.1l34.1,39.7H98.3L66.8,76.6l-1.6-2c-1.5-1.7-1.4-4.4,0.1-6.1 L124.1,0z'/%3E%3Cpath class='st1' d='M91.2,73.7c-1-1.1-1.3-2.7-1-4.1c0.3-0.8,0.8-1.6,1.4-2.2l3.9-4.3l43.5,50.3h-13.8 C125.2,113.4,99.7,83.6,91.2,73.7z'/%3E%3Cpath class='st1' d='M15.2,113.4H0l46.6-53.9c1.5-1.7,1.5-4.3,0-6L0.4,0H15l46.5,53.9c1.2,1.6,1.4,3.9,0.1,5.4 C49.4,73.4,15.2,113.4,15.2,113.4z'/%3E%3Cpath class='st1' d='M40.6,0h-14l43.1,49.9c0,0,0.1-0.1,4.9-5.8c1.3-1.5,1.6-3.4,0.1-4.9C65.7,30,40.6,0,40.6,0z'/%3E%3Cpath class='st1' d='M82.6,34.8L112.5,0H98.3L82.7,18.2l-4.5,5.3c-1.5,1.7-1.6,4.3-0.1,6.1C79.2,30.9,82.6,34.8,82.6,34.8z'/%3E%3Cpath class='st1' d='M56.6,78.6l-29.9,34.8h14.1l15.6-18.2l4.5-5.3c1.5-1.7,1.6-4.3,0.1-6.1C59.9,82.5,56.6,78.6,56.6,78.6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A\",\"tokenFeatures\":[\"swap\",\"bridge\"]},{\"address\":\"0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0\",\"chainId\":1,\"name\":\"Matic\",\"symbol\":\"MATIC\",\"decimals\":18,\"icon\":\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 38.4 33.5' style='enable-background:new 0 0 38.4 33.5;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bfill:%238247E5;%7D%0A%3C/style%3E%3Cg%3E%3Cpath class='st0' d='M29,10.2c-0.7-0.4-1.6-0.4-2.4,0L21,13.5l-3.8,2.1l-5.5,3.3c-0.7,0.4-1.6,0.4-2.4,0L5,16.3 c-0.7-0.4-1.2-1.2-1.2-2.1v-5c0-0.8,0.4-1.6,1.2-2.1l4.3-2.5c0.7-0.4,1.6-0.4,2.4,0L16,7.2c0.7,0.4,1.2,1.2,1.2,2.1v3.3l3.8-2.2V7 c0-0.8-0.4-1.6-1.2-2.1l-8-4.7c-0.7-0.4-1.6-0.4-2.4,0L1.2,5C0.4,5.4,0,6.2,0,7v9.4c0,0.8,0.4,1.6,1.2,2.1l8.1,4.7 c0.7,0.4,1.6,0.4,2.4,0l5.5-3.2l3.8-2.2l5.5-3.2c0.7-0.4,1.6-0.4,2.4,0l4.3,2.5c0.7,0.4,1.2,1.2,1.2,2.1v5c0,0.8-0.4,1.6-1.2,2.1 L29,28.8c-0.7,0.4-1.6,0.4-2.4,0l-4.3-2.5c-0.7-0.4-1.2-1.2-1.2-2.1V21l-3.8,2.2v3.3c0,0.8,0.4,1.6,1.2,2.1l8.1,4.7 c0.7,0.4,1.6,0.4,2.4,0l8.1-4.7c0.7-0.4,1.2-1.2,1.2-2.1V17c0-0.8-0.4-1.6-1.2-2.1L29,10.2z'/%3E%3C/g%3E%3C/svg%3E%0A\",\"tokenFeatures\":[\"swap\",\"bridge\"]},{\"name\":\"Ethereum\",\"symbol\":\"ETH\",\"decimals\":18,\"icon\":\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3C!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.1//EN' 'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3E%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' width='100%25' height='100%25' version='1.1' shape-rendering='geometricPrecision' text-rendering='geometricPrecision' image-rendering='optimizeQuality' fill-rule='evenodd' clip-rule='evenodd'%0AviewBox='0 0 784.37 1277.39' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:xodm='http://www.corel.com/coreldraw/odm/2003'%3E%3Cg id='Layer_x0020_1'%3E%3Cmetadata id='CorelCorpID_0Corel-Layer'/%3E%3Cg id='_1421394342400'%3E%3Cg%3E%3Cpolygon fill='%23343434' fill-rule='nonzero' points='392.07,0 383.5,29.11 383.5,873.74 392.07,882.29 784.13,650.54 '/%3E%3Cpolygon fill='%238C8C8C' fill-rule='nonzero' points='392.07,0 -0,650.54 392.07,882.29 392.07,472.33 '/%3E%3Cpolygon fill='%233C3C3B' fill-rule='nonzero' points='392.07,956.52 387.24,962.41 387.24,1263.28 392.07,1277.38 784.37,724.89 '/%3E%3Cpolygon fill='%238C8C8C' fill-rule='nonzero' points='392.07,1277.38 392.07,956.52 -0,724.89 '/%3E%3Cpolygon fill='%23141414' fill-rule='nonzero' points='392.07,882.29 784.13,650.54 392.07,472.33 '/%3E%3Cpolygon fill='%23393939' fill-rule='nonzero' points='0,650.54 392.07,882.29 392.07,472.33 '/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A\",\"chainId\":5,\"tokenFeatures\":[\"swap\",\"bridge\"]},{\"address\":\"0x1facdd0165489f373255a90304650e15481b2c85\",\"chainId\":5,\"name\":\"Immutable X\",\"symbol\":\"IMX\",\"decimals\":18,\"icon\":\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3Csvg version='1.1' id='Layer_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 139 113' style='enable-background:new 0 0 139 113;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0%7Bclip-path:url(%23SVGID_00000053504646934646330740000009134454895836103350_);%7D .st1%7Bfill:%2317B5CB;%7D%0A%3C/style%3E%3Cg%3E%3Cdefs%3E%3Crect id='SVGID_1_' width='139' height='113'/%3E%3C/defs%3E%3CclipPath id='SVGID_00000035518931339590433170000002358037249938198420_'%3E%3Cuse xlink:href='%23SVGID_1_' style='overflow:visible;'/%3E%3C/clipPath%3E%3Cg style='clip-path:url(%23SVGID_00000035518931339590433170000002358037249938198420_);'%3E%3Cpath class='st1' d='M124.1,0h14.6L79.5,67.6c-1.5,1.7-1.6,4.3-0.1,6.1l34.1,39.7H98.3L66.8,76.6l-1.6-2c-1.5-1.7-1.4-4.4,0.1-6.1 L124.1,0z'/%3E%3Cpath class='st1' d='M91.2,73.7c-1-1.1-1.3-2.7-1-4.1c0.3-0.8,0.8-1.6,1.4-2.2l3.9-4.3l43.5,50.3h-13.8 C125.2,113.4,99.7,83.6,91.2,73.7z'/%3E%3Cpath class='st1' d='M15.2,113.4H0l46.6-53.9c1.5-1.7,1.5-4.3,0-6L0.4,0H15l46.5,53.9c1.2,1.6,1.4,3.9,0.1,5.4 C49.4,73.4,15.2,113.4,15.2,113.4z'/%3E%3Cpath class='st1' d='M40.6,0h-14l43.1,49.9c0,0,0.1-0.1,4.9-5.8c1.3-1.5,1.6-3.4,0.1-4.9C65.7,30,40.6,0,40.6,0z'/%3E%3Cpath class='st1' d='M82.6,34.8L112.5,0H98.3L82.7,18.2l-4.5,5.3c-1.5,1.7-1.6,4.3-0.1,6.1C79.2,30.9,82.6,34.8,82.6,34.8z'/%3E%3Cpath class='st1' d='M56.6,78.6l-29.9,34.8h14.1l15.6-18.2l4.5-5.3c1.5-1.7,1.6-4.3,0.1-6.1C59.9,82.5,56.6,78.6,56.6,78.6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A\",\"tokenFeatures\":[\"swap\",\"bridge\"]},{\"address\":\"0x123456789\",\"chainId\":5,\"name\":\"Swap Coin\",\"symbol\":\"SWC\",\"decimals\":18,\"tokenFeatures\":[\"swap\",\"fakeFeature\"]},{\"address\":\"0x123456789\",\"chainId\":5,\"name\":\"Bridge Coin\",\"symbol\":\"BDC\",\"decimals\":18,\"tokenFeatures\":[\"bridge\",\"fakeFeature\"]}]");
264
-
265
-
266
- const $efe60cea83bfc4e8$export$473cec51305fdae8 = function({ type: type = ($08d5ddc39acd6833$export$fd9b17d87f4121d2).ALL , chainId: chainId , exclude: exclude }) {
267
- // todo:For API call, use the CheckoutError with errorType:API_CALL_ERROR?? or any other
268
- const filteredTokenList = ((/*@__PURE__*/$parcel$interopDefault($cda6003506e4182e$exports))).filter((token)=>{
269
- const chainIdMatches = token.chainId == chainId;
270
- const tokenNotExcluded = !exclude?.map((excludeToken)=>excludeToken.address).includes(token.address || "");
271
- const allowAllTokens = type === ($08d5ddc39acd6833$export$fd9b17d87f4121d2).ALL;
272
- const tokenAllowedForType = token.tokenFeatures.includes(type);
273
- return chainIdMatches && tokenNotExcluded && (allowAllTokens || tokenAllowedForType);
274
- }).map((token)=>{
275
- const { chainId: chainId , tokenFeatures: tokenFeatures , ...tokenInfo } = token;
276
- return tokenInfo;
277
- });
278
- return {
279
- tokens: filteredTokenList
280
- };
281
- };
282
-
283
-
284
-
285
-
286
- const $1564e43dde50bb61$export$df96cd8d56be0ab1 = async (provider, walletAddress)=>{
287
- return await ($a8bc256d81a5e2c1$export$bacc563de539c6c3)(async ()=>{
288
- const networkInfo = await ($de192de6ef100f9f$export$79f13b4cfaaf0d09)(provider);
289
- const balance = await provider.getBalance(walletAddress);
290
- return {
291
- balance: balance,
292
- formattedBalance: (utils).formatUnits(balance, networkInfo.nativeCurrency.decimals),
293
- token: networkInfo.nativeCurrency
294
- };
295
- }, {
296
- type: ($a8bc256d81a5e2c1$export$e3dc0620abde7f5a).GET_BALANCE_ERROR
297
- });
298
- };
299
- async function $1564e43dde50bb61$export$60e0fe116a0e6ed0(provider, walletAddress, contractAddress) {
300
- return await ($a8bc256d81a5e2c1$export$bacc563de539c6c3)(async ()=>{
301
- const contract = new (Contract)(contractAddress, JSON.stringify(($762782b6c862d954$export$db5daa1b5156ccfe)), provider);
302
- const name = await contract.name();
303
- const symbol = await contract.symbol();
304
- const balance = await contract.balanceOf(walletAddress);
305
- const decimals = await contract.decimals();
306
- const formattedBalance = (utils).formatUnits(balance, decimals);
307
- return {
308
- balance: balance,
309
- formattedBalance: formattedBalance,
310
- token: {
311
- name: name,
312
- symbol: symbol,
313
- decimals: decimals,
314
- address: contractAddress
315
- }
316
- };
317
- }, {
318
- type: ($a8bc256d81a5e2c1$export$e3dc0620abde7f5a).GET_ERC20_BALANCE_ERROR
319
- });
320
- }
321
- const $1564e43dde50bb61$export$fee49741664a4d7e = async (provider, walletAddress, chainId)=>{
322
- if (!Object.values(($a47e48dd2c04791b$export$c06e1e7429de6283)).includes(chainId)) throw new ($a8bc256d81a5e2c1$export$b722478a3cbfa3bc)(`ChainId ${chainId} is not supported`, ($a8bc256d81a5e2c1$export$e3dc0620abde7f5a).CHAIN_NOT_SUPPORTED_ERROR);
323
- if (!provider.provider?.request) throw new ($a8bc256d81a5e2c1$export$b722478a3cbfa3bc)("provider object is missing request function", ($a8bc256d81a5e2c1$export$e3dc0620abde7f5a).PROVIDER_REQUEST_MISSING_ERROR);
324
- const tokenList = ($efe60cea83bfc4e8$export$473cec51305fdae8)({
325
- type: ($08d5ddc39acd6833$export$fd9b17d87f4121d2).ALL,
326
- chainId: chainId
327
- });
328
- const allBalancePromises = [];
329
- allBalancePromises.push($1564e43dde50bb61$export$df96cd8d56be0ab1(provider, walletAddress));
330
- tokenList.tokens.filter((token)=>token.address).forEach((token)=>allBalancePromises.push($1564e43dde50bb61$export$60e0fe116a0e6ed0(provider, walletAddress, token.address ?? "")));
331
- const balanceResults = await Promise.allSettled(allBalancePromises);
332
- const getBalanceResults = balanceResults.filter((result)=>result.status === "fulfilled").map((fulfilledResult)=>fulfilledResult.value);
333
- return {
334
- balances: getBalanceResults
335
- };
336
- };
337
-
338
-
339
-
340
-
341
-
342
- /* eslint-disable @typescript-eslint/no-explicit-any */
343
-
344
-
345
-
346
- async function $c99672cf2294e839$export$2d040992269b4717(providerPreference) {
347
- const provider = await $c99672cf2294e839$var$getWalletProviderForPreference(providerPreference);
348
- if (!provider.provider?.request) throw new ($a8bc256d81a5e2c1$export$b722478a3cbfa3bc)("Incompatible provider", ($a8bc256d81a5e2c1$export$e3dc0620abde7f5a).PROVIDER_REQUEST_MISSING_ERROR);
349
- const accounts = await provider.provider.request({
350
- method: ($4f91c5f280efe242$export$a130407f3423b97d).CHECK_CONNECTION,
351
- params: []
352
- });
353
- // accounts[0] will have the active account if connected.
354
- return {
355
- isConnected: accounts && accounts.length > 0,
356
- walletAddress: accounts[0] ?? ""
357
- };
358
- }
359
- async function $c99672cf2294e839$export$fba2f6c3656e07c1(params) {
360
- const web3Provider = await $c99672cf2294e839$var$getWalletProviderForPreference(params.providerPreference);
361
- await ($a8bc256d81a5e2c1$export$bacc563de539c6c3)(async ()=>{
362
- if (!web3Provider || !web3Provider?.provider?.request) throw new ($a8bc256d81a5e2c1$export$b722478a3cbfa3bc)("No MetaMask provider installed.", ($a8bc256d81a5e2c1$export$e3dc0620abde7f5a).METAMASK_PROVIDER_ERROR);
363
- // this makes the request to the wallet to connect i.e request eth accounts ('eth_requestAccounts')
364
- await web3Provider.provider.request({
365
- method: ($4f91c5f280efe242$export$a130407f3423b97d).CONNECT,
366
- params: []
367
- });
368
- }, {
369
- type: ($a8bc256d81a5e2c1$export$e3dc0620abde7f5a).USER_REJECTED_REQUEST_ERROR
370
- });
371
- return web3Provider;
372
- }
373
- async function $c99672cf2294e839$var$getWalletProviderForPreference(providerPreference) {
374
- let web3Provider = null;
375
- switch(providerPreference){
376
- case ($d176a05e966364ba$export$3bfad4d03ada24c4).METAMASK:
377
- web3Provider = await $c99672cf2294e839$var$getMetaMaskProvider();
378
- break;
379
- default:
380
- throw new ($a8bc256d81a5e2c1$export$b722478a3cbfa3bc)("Provider preference was not detected", ($a8bc256d81a5e2c1$export$e3dc0620abde7f5a).CONNECT_PROVIDER_ERROR);
381
- }
382
- return web3Provider;
383
- }
384
- async function $c99672cf2294e839$var$getMetaMaskProvider() {
385
- const provider = await ($a8bc256d81a5e2c1$export$bacc563de539c6c3)(async ()=>{
386
- return await ($7v2Z6$metamaskdetectprovider)();
387
- }, {
388
- type: ($a8bc256d81a5e2c1$export$e3dc0620abde7f5a).METAMASK_PROVIDER_ERROR
389
- });
390
- if (!provider || !provider.request) throw new ($a8bc256d81a5e2c1$export$b722478a3cbfa3bc)("No MetaMask provider installed.", ($a8bc256d81a5e2c1$export$e3dc0620abde7f5a).METAMASK_PROVIDER_ERROR);
391
- return new (Web3Provider)(provider);
392
- }
393
-
394
-
395
-
396
-
397
-
398
- var $6f3c55a615003cbf$exports = {};
399
- $6f3c55a615003cbf$exports = JSON.parse('[{"connectionProvider":"metamask","icon":"some-icon-url","name":"MetaMask","description":"complete web3 wallet solution","platform":["mobile","desktop"]},{"connectionProvider":"passport","icon":"pp-icon","name":"Passport","description":"Web3 with your email!","platform":["mobile"]},{"connectionProvider":"gamestop","icon":"gme-icon","name":"GameStop","description":"Never stopping the game!","platform":["desktop"]}]');
400
-
401
-
402
- async function $5cdde2ffe6360fec$export$a822caa90d7eef09({ type: type = ($4f91c5f280efe242$export$a75605c67ea83a5a).ALL , exclude: exclude }) {
403
- // todo:For async API call, use the CheckoutError with errorType:API_CALL_ERROR?? or any other
404
- const filteredWalletsList = ((/*@__PURE__*/$parcel$interopDefault($6f3c55a615003cbf$exports))).filter((wallet)=>{
405
- const walletNotExcluded = !exclude?.map((excludeWallet)=>excludeWallet.connectionProvider).includes(wallet.connectionProvider);
406
- const allowAllWallets = type === ($4f91c5f280efe242$export$a75605c67ea83a5a).ALL;
407
- const walletsAllowedForType = wallet.platform.includes(type);
408
- return walletNotExcluded && (allowAllWallets || walletsAllowedForType);
409
- }).map((wallet)=>{
410
- const { platform: platform , ...walletInfo } = wallet;
411
- return walletInfo;
412
- });
413
- return {
414
- allowedWallets: filteredWalletsList
415
- };
416
- }
417
-
418
-
419
-
420
-
421
-
422
-
423
- const $dbe95599a4661140$export$8e0e7ffc78696d30 = async (params)=>{
424
- const { provider: provider , transaction: transaction } = params;
425
- return await ($a8bc256d81a5e2c1$export$bacc563de539c6c3)(async ()=>{
426
- const transactionResponse = await provider.getSigner().sendTransaction(transaction);
427
- return {
428
- transactionResponse: transactionResponse
429
- };
430
- }, {
431
- type: ($a8bc256d81a5e2c1$export$e3dc0620abde7f5a).TRANSACTION_ERROR
432
- });
433
- };
434
-
435
-
436
-
437
-
438
- class $a8cb37a3fc8eb863$export$1f60ba4ec72508a0 {
439
- async checkIsWalletConnected(params) {
440
- return $c99672cf2294e839$export$2d040992269b4717(params.providerPreference);
441
- }
442
- async connect(params) {
443
- const provider = await $c99672cf2294e839$export$fba2f6c3656e07c1(params);
444
- const network = await ($de192de6ef100f9f$export$79f13b4cfaaf0d09)(provider);
445
- return {
446
- provider: provider,
447
- network: network
448
- };
449
- }
450
- async switchNetwork(params) {
451
- return await ($de192de6ef100f9f$export$b827d9418aeb5dbd)(params.provider, params.chainId);
452
- }
453
- async getBalance(params) {
454
- if (!params.contractAddress || params.contractAddress === "") return await $1564e43dde50bb61$export$df96cd8d56be0ab1(params.provider, params.walletAddress);
455
- return await $1564e43dde50bb61$export$60e0fe116a0e6ed0(params.provider, params.walletAddress, params.contractAddress);
456
- }
457
- async getAllBalances(params) {
458
- return $1564e43dde50bb61$export$fee49741664a4d7e(params.provider, params.walletAddress, params.chainId);
459
- }
460
- getTokenAllowList(params) {
461
- return $efe60cea83bfc4e8$export$473cec51305fdae8(params);
462
- }
463
- async getWalletsAllowList(params) {
464
- return await $5cdde2ffe6360fec$export$a822caa90d7eef09(params);
465
- }
466
- async sendTransaction(params) {
467
- return await $dbe95599a4661140$export$8e0e7ffc78696d30(params);
468
- }
469
- }
470
-
471
- export { $a47e48dd2c04791b$export$c06e1e7429de6283 as ChainId, $a8cb37a3fc8eb863$export$1f60ba4ec72508a0 as Checkout, $d176a05e966364ba$export$3bfad4d03ada24c4 as ConnectionProviders, $08d5ddc39acd6833$export$fd9b17d87f4121d2 as TokenFilterTypes, $4f91c5f280efe242$export$a75605c67ea83a5a as WalletFilterTypes };