@spicenet-io/spiceflow-core 0.4.0 → 0.5.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.
package/dist/index.cjs CHANGED
@@ -121,11 +121,19 @@ function hashChainBatches(chainCalls) {
121
121
  function getIntentHash(signatureType, nbf, exp, chainBatches) {
122
122
  const hashes = chainBatches.map(({ hash }) => hash);
123
123
  return (0, import_viem.keccak256)(
124
- (0, import_viem.encodeAbiParameters)(IntentHashAbi, [signatureType, nbf, exp, hashes])
124
+ (0, import_viem.encodeAbiParameters)(IntentHashAbi, [
125
+ signatureType,
126
+ nbf,
127
+ exp,
128
+ hashes
129
+ ])
125
130
  );
126
131
  }
127
132
  async function getAccountNonce(address, publicClient) {
128
- return await publicClient.getTransactionCount({ address, blockTag: "pending" });
133
+ return await publicClient.getTransactionCount({
134
+ address,
135
+ blockTag: "pending"
136
+ });
129
137
  }
130
138
  async function getRecentBlock(publicClient) {
131
139
  return await publicClient.getBlockNumber();
@@ -175,7 +183,12 @@ async function fetchWithRetry(url, init = {}, opts = {}) {
175
183
  } catch {
176
184
  body = await res.text();
177
185
  }
178
- throw new HttpError(`HTTP ${res.status}`, res.status, body && body.code || void 0, body);
186
+ throw new HttpError(
187
+ `HTTP ${res.status}`,
188
+ res.status,
189
+ body && body.code || void 0,
190
+ body
191
+ );
179
192
  }
180
193
  return res;
181
194
  } catch (e) {
@@ -192,13 +205,23 @@ async function fetchWithRetry(url, init = {}, opts = {}) {
192
205
 
193
206
  // src/relayer.ts
194
207
  async function submitTransaction(baseUrl, request, retry) {
195
- const res = await fetchWithRetry(`${baseUrl}/transaction/submit`, {
196
- method: "POST",
197
- headers: { "Content-Type": "application/json" },
198
- body: JSON.stringify(request, (k, v) => typeof v === "bigint" ? v.toString() : v)
199
- }, retry);
208
+ const res = await fetchWithRetry(
209
+ `${baseUrl}/transaction/submit`,
210
+ {
211
+ method: "POST",
212
+ headers: { "Content-Type": "application/json" },
213
+ body: JSON.stringify(
214
+ request,
215
+ (k, v) => typeof v === "bigint" ? v.toString() : v
216
+ )
217
+ },
218
+ retry
219
+ );
200
220
  const result = await res.json();
201
- return { hash: result.hash, intentId: result.intentId || request.intentAuthorization.signature };
221
+ return {
222
+ hash: result.hash,
223
+ intentId: result.intentId || request.intentAuthorization.signature
224
+ };
202
225
  }
203
226
 
204
227
  // src/core.ts
@@ -218,7 +241,12 @@ var SpiceFlowCore = class {
218
241
  for (const d of params.delegations) {
219
242
  const client = this.getClient(d.chainId);
220
243
  const nonce = typeof d.nonce === "number" ? d.nonce : await getAccountNonce(params.user, client);
221
- const auth = await this.signers.authorizationSigner({ contractAddress: d.contractAddress, chainId: d.chainId, nonce, address: params.user });
244
+ const auth = await this.signers.authorizationSigner({
245
+ contractAddress: d.contractAddress,
246
+ chainId: d.chainId,
247
+ nonce,
248
+ address: params.user
249
+ });
222
250
  delete auth.v;
223
251
  out.push(auth);
224
252
  }
@@ -228,7 +256,12 @@ var SpiceFlowCore = class {
228
256
  const chainBatches = hashChainBatches(
229
257
  callsByChain.map((c) => ({ chainId: c.chainId, calls: c.calls }))
230
258
  );
231
- const digest = getIntentHash(signatureType, nbf, exp, chainBatches);
259
+ const digest = getIntentHash(
260
+ signatureType,
261
+ nbf,
262
+ exp,
263
+ chainBatches
264
+ );
232
265
  return { chainBatches, digest };
233
266
  }
234
267
  async signIntent(digest) {
@@ -236,7 +269,14 @@ var SpiceFlowCore = class {
236
269
  }
237
270
  async submitIntent(req) {
238
271
  const signatureType = req.signatureType ?? "ecdsa";
239
- const signature = req.signature ?? await this.signIntent(getIntentHash(signatureType, req.nbf, req.exp, req.chainBatches));
272
+ const signature = req.signature ?? await this.signIntent(
273
+ getIntentHash(
274
+ signatureType,
275
+ req.nbf,
276
+ req.exp,
277
+ req.chainBatches
278
+ )
279
+ );
240
280
  const resp = await submitTransaction(this.cfg.txApiUrl, {
241
281
  tokenAddress: req.tokenAddress,
242
282
  tokenAmount: req.tokenAmount,
@@ -250,27 +290,38 @@ var SpiceFlowCore = class {
250
290
 
251
291
  // src/status.ts
252
292
  async function getIntentStepStatus(txApiUrl, intentId, stepId, retry) {
253
- const res = await fetchWithRetry(`${txApiUrl}/intent/${intentId}/step/${stepId}/status`, {}, retry);
293
+ const res = await fetchWithRetry(
294
+ `${txApiUrl}/intent/${intentId}/step/${stepId}/status`,
295
+ {},
296
+ retry
297
+ );
254
298
  return res.json();
255
299
  }
256
300
 
257
301
  // src/rfqt.ts
258
302
  async function prepareRFQT(txApiUrl, request, retry) {
259
- const res = await fetchWithRetry(`${txApiUrl}/rfqt`, {
260
- method: "POST",
261
- headers: { "Content-Type": "application/json" },
262
- body: JSON.stringify(request)
263
- }, retry);
303
+ const res = await fetchWithRetry(
304
+ `${txApiUrl}/rfqt`,
305
+ {
306
+ method: "POST",
307
+ headers: { "Content-Type": "application/json" },
308
+ body: JSON.stringify(request)
309
+ },
310
+ retry
311
+ );
264
312
  return res.json();
265
313
  }
266
314
 
267
315
  // src/logos.ts
268
316
  var logo_arb = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAjVBMVEVMaXEgMkwgMk0fMUogMkwgMkwgMkwgMUsNOE0gMUwhMk0fMk0fMUsgM00gMkz///8hM04iNVESqf78/P0RIz8hKkEYKkURsv8Rrv8yQ1vq7O7W2d4fQGBXZHhrdohFVGoVjtMbWIOeprETm+XEyM8YdK0SpfQaZZYdS3AWgb+mrbh5hJSKlKG0usOUnakhSCyqAAAADnRSTlMAj2cY0Oqw/QP6KkyHd87n3EEAAAAJcEhZcwAACxMAAAsTAQCanBgAAAPZSURBVHjarZfbeqowEIVBQUBsmEBArHiuVu3h/R9vz4QQIMHD/mwuWmrJuNbkz2TiONYIQ/oxjWcTz48Yi3xvMounYfOfR4NeCmPXizjnAAwHAD5GnhuHz4TAF8ZvHk6BIIoCJkcQRAF94r2N5Qv3v37s+gBBoOa2Az8B8GfjuyJCJxz5+N3W7CYGcH8U3hYROlMPp7M7A0N40xsRUNoo4sHd+aSCR6NBG2EYujx6MF2JcEM7Ajqb8Ig9NSI+GUjE8/NVBFOAOZ/owbXvPPQj9CWEjmvOLwSNApoHU4PbjYD554Exf33d7/fXdVGs5MOXmUo+aiPg+vv95Ydi8Z4kSZb8Cr7EX1lyLcBYC7/DAyawL4CLrySjsREr+ZCsjAAoQSeSDBgLAMWH/N6PorjKhyUwsJZCmxgbBnD+JpMOvoS2EuSmBPDHSsDMFMDFd0IR3hdiLR+SjTjvzAgRn9USUIBJCtSZ+ykaKyy/HCzMawmh8wZWBlaJFL4W2go/lGfbxBtJCD1zB4OoM4cOGiv5riyPdgCPLMSmAWAqc3uhreSXsjxwa1NAjAFcbglQmVsJbaU6pWlppTFAoIccFD/12nPx2zj4nKfp/DLoYWpuYo3xd4PxXgTbEhWcKpumqRObDiTGFGFTOyAr5AAlfNoeYpuiIYwZKUjL7RBLE/4IY7Qic5CmpyqwC4uZQwvjbIMb8YYHzKJjcWxhXDAO+WUuPdg0O09gXG2rfCc92DhHDnsCY5SOe4E8WDgzZwDjrI9xcJlvmfJg42xYuIXxGXeT9GDiHBlJ1BiD2HcwRunKg4EzJrG3jIhxptZeWyGMUXp+lB76ONMy9kDqYKytnJV0+dtAgUDqodzBuLFSfzNKH8KZUO5upiGMlfRDpXBOq04E2kzd7dwWAG2laKTv8upU2h6m/YICzTmmrWDDtVXpt3Gui2Jb0jTGq041Br0TGxRanGVJ6xRVaApAuyNJgd6JNs6yqHY8kINMnmMNxtRg5FslXS3Itu8AD5Z2HRb7TDrQGMsA9U5EnM9lOj8duXGwdI427EY2P8kykBjTjiTqqJo00g/zS5UbR1vvcAVeiPVatAeL/FDvxPxzl+cA5uHaO96xJyoIY8qhaipApR9RCNrp7fFuNhj4yuLaVGMFGKZ/nh4rBjDYYOBC9EozpeIjoWqs/sb0l9tz3jtWsMVxbjZZmIpivdw0bRHk5wOZv9Nk2W0eiK5cYDnA7TZvqNFk3CyW9xrNoVb3UbNsddsvNtt/0e5THuDJC8eNK8trV57XL11/cO2rL56zFy6eKsQLV98/uHz/9/X/H1O71f+Xu2swAAAAAElFTkSuQmCC";
269
317
  var logo_base = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAATlBMVEVMaXEAUPQAT+wAT+0AT+8AUPUASdgAUf4ASN8AUPcAUPUASf8AUv////8BVf8ASv/9/v8sbf/0+P9fkf9Efv/U4f+80f8aYf92of+Xt//AWxqQAAAADHRSTlMAklRFcb8d/ATgpvy0jdC4AAAACXBIWXMAAAsTAAALEwEAmpwYAAACQElEQVR42q1X27KDIAy0CgKOKN7b///REzwKQVHppPvQaa275AYkWXaGtB9lwV6cKwDnL1aU7o9H2LdKxlUTQHFWJknAGzLnAigigH3Ac/koITPJYO1aiPoAeAJ2MHmrAP/lyq5dR2HtUHkm5TW/rK7pu0RVXhkhs0Ld0jcJVcQVZMZg+eDtPQWhRCNYXOEVLA+01qHGImDE64KP6MCul3GwGLvF/sISZwUZ8IFej5+p1xv6+d0FElZBHv1H67fNMK1Ms2L9Ng/wGCkEcYD4e37TtkA3emPuOlpPIzJCNEEuSuUEmnaZtUFsp6H1p3FGQDZL5EKF+GOvj+xdQ08dUqi8AzniD2C8voDR/YgU8t0J6RwA/sXyZwVwQh4zAPbfrL8pdF5hy4Q3oF36e75VmFAc5SEC9fzEtw5+vAn/UeCbwBoA/Qij9zCIhq814EtoShOYW1dOthaYM+Cdwg9NYMiDRAOwCasPexVDCm9L4JBKX8+F8+CTZoBVeDsfClRFU7qA94G5g6Tt+m37XwL5sPiDhaMQ6FQLjAsC9wKD7h9wTqQVcBth6e6x+I1m9LALKC+ATvEYIEg0gfZR4MmFbogLoCCaxDSGQSSnMSikVAFcSORSJm8m8nYmHyj0I418qFKP9S8vFh25WIhX2w8uV+r1/oMGg9rixJss/U2TBW2euGnzTKTNq0URNorRRtOkNpr0Vvey2X4DhjHWbMvztHPd7tdJ7T7EQdAGDurIQx+66GMfffD8wehLH76/Hv//AJLWpkq0aQz+AAAAAElFTkSuQmCC";
318
+ var logo_bnb = "data:image/png;base64,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";
270
319
  var logo_cbtc = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAATlBMVEX////jcS/eXCrpkDfhaC3kezLnhTTfYSvwqj7upD3tnjvxsT/dVynbVCjsmDj9/PfytUHxrj7tt4rwxZ7lkGDtr2Dz1brpo2v58OT35NHn8bXSAAAACXBIWXMAAAsTAAALEwEAmpwYAAAC2UlEQVR42rWWi5ajIAyGQxFs7VQ6oALv/6LLRS4Bes7sOvuDlEvyGSE6A++Lgufz+X5ivZup99vXMocW4XlR1wHfFwX3i3KA70v1FyJ43P+xxh94/Fj34SyUpftns/vn4V9E8PgUweLK2S6x7zu9kkuyjz3wK3E9XKfrPlAGVcxlgeG9dgWiEah9GNcIsEqzG2jkptQ6BKxV8XVZHwakBFG7Cz9jHsGiNL7C6gaZ4Ou6KuewWxyA9TGpsF5drsLaaKG7v/exY4DbFY9dO3WAlR4h+v2o/Y9AhYMOABSVle4p5moTRMJJ2thToK7xNV1renipCkClPbXJL1cog/gj87lpU3fPeBQNKk5AsRbT3VbUwZilcWgAXJXzF9rGgdVlDg4+BsRpruv0ObQHCND1gYgdE4DTUihHpqBD6ErjlAq3ywUBuMbpe3BlreIHTmvpDIP1CfC9cLm2zV/uo+IWAwytfNwjZFGG3yAfQdDRTCtWnHgF4Jto3uDtnG/ebbGNAUwrJElzbBKv6A8RaImkf7LCgfFcdPMIloaHZe3eCu3mk1cNIKreLRF2y5uqdhMJZ9kJXD+LGpwHNk53x+jdk8A3CUhkk0hMHockbSKR6HNGwJAsTuUAlBoBLPbAAKJRAC4x3E6IDX3dNOkAJFXXVOF6R5FAhRr9sw+ULvGlysbyFmpVZaG3rHyAIPmjzImcN8Ru5ZM2MewBwatqmCl/inI0Mh2PYSQbR/MmAkImXe4KXTR6au07ACFxz7f66whqi9TeugdMYR/DERYAhKMU2zQATE0hk4L27CMQDr/aFJhOkVCDuPHZ18hlpeHINJpnQKVZGmZbgGVGzp0pGQPYJvt/ceTGBrZDgNM20NjyA2C+zb3GgHkoz+jLSB8AP9d/BNyqdrglJ+B2u82pRs31z9xNzdXlBLeLug74uqjfALxeofcK18vXVxm90tJXGMS12IT5F7wu6jLgDxzHd9wqQIUtAAAAAElFTkSuQmCC";
271
320
  var logo_citrea = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAATlBMVEX////jcS/eXCrpkDfhaC3kezLnhTTfYSvwqj7upD3tnjvxsT/dVynbVCjsmDj9/PfytUHxrj7tt4rwxZ7lkGDtr2Dz1brpo2v58OT35NHn8bXSAAAACXBIWXMAAAsTAAALEwEAmpwYAAAC2UlEQVR42rWWi5ajIAyGQxFs7VQ6oALv/6LLRS4Bes7sOvuDlEvyGSE6A++Lgufz+X5ivZup99vXMocW4XlR1wHfFwX3i3KA70v1FyJ43P+xxh94/Fj34SyUpftns/vn4V9E8PgUweLK2S6x7zu9kkuyjz3wK3E9XKfrPlAGVcxlgeG9dgWiEah9GNcIsEqzG2jkptQ6BKxV8XVZHwakBFG7Cz9jHsGiNL7C6gaZ4Ou6KuewWxyA9TGpsF5drsLaaKG7v/exY4DbFY9dO3WAlR4h+v2o/Y9AhYMOABSVle4p5moTRMJJ2thToK7xNV1renipCkClPbXJL1cog/gj87lpU3fPeBQNKk5AsRbT3VbUwZilcWgAXJXzF9rGgdVlDg4+BsRpruv0ObQHCND1gYgdE4DTUihHpqBD6ErjlAq3ywUBuMbpe3BlreIHTmvpDIP1CfC9cLm2zV/uo+IWAwytfNwjZFGG3yAfQdDRTCtWnHgF4Jto3uDtnG/ebbGNAUwrJElzbBKv6A8RaImkf7LCgfFcdPMIloaHZe3eCu3mk1cNIKreLRF2y5uqdhMJZ9kJXD+LGpwHNk53x+jdk8A3CUhkk0hMHockbSKR6HNGwJAsTuUAlBoBLPbAAKJRAC4x3E6IDX3dNOkAJFXXVOF6R5FAhRr9sw+ULvGlysbyFmpVZaG3rHyAIPmjzImcN8Ru5ZM2MewBwatqmCl/inI0Mh2PYSQbR/MmAkImXe4KXTR6au07ACFxz7f66whqi9TeugdMYR/DERYAhKMU2zQATE0hk4L27CMQDr/aFJhOkVCDuPHZ18hlpeHINJpnQKVZGmZbgGVGzp0pGQPYJvt/ceTGBrZDgNM20NjyA2C+zb3GgHkoz+jLSB8AP9d/BNyqdrglJ+B2u82pRs31z9xNzdXlBLeLug74uqjfALxeofcK18vXVxm90tJXGMS12IT5F7wu6jLgDxzHd9wqQIUtAAAAAElFTkSuQmCC";
272
321
  var logo_eth = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAATlBMVEVMaXFIo/VMrO1MqvNKpvNJpfNIpPRGoPRRoe5Io/RHoPT////8/v+k0fpLqv9KovVKpfw8m/R4uvdirva02fvq9P6Oxfna7P32+v/F4fwkLp0eAAAACnRSTlMA6BMrVn2o/APPAqKYHQAAAAlwSFlzAAALEwAACxMBAJqcGAAAAuJJREFUeNqtl+vWqiAQhj3kAVAhwMz7v9E9QIbJi/attj+slc3rwzDMoSiSq+/dvb41LWNl15WMtc2tjk+uLvpTXzesm6ZJKcm5VIq+dqype//wyrwvqoapScnOX5yHT0k/saa6gvDm5aSC6f5yv6ipvJCgR7dykkfjKCKn8nayjr6oW/d2nr0cRVvnFHr3+jPzIOEgemzfkOeOBlImElI1SKEvWvB6qbUEEG2qAO3l/TGOj7v8QoH4J7D6+zLa5Y4YDqvw9in/XYtxFPpagfyvOAJYncCaCtCf1cdeVKVK7R2AExgMUlBl9elADgRWLwAR+M6RtABsr8XgCSACKbwX0TOVAQgCwkIBxfpzADNsAoTATxByAJbgwxJOEc4ANgLxPEHIboEVcQkZhLARdcdRDJiniASEgAh453Jtkwd4C9BnbicLvALuASJBBoHWkIviYPcWwAg+nmuJjmEA2BGIWSEnyBpu4gawE8ggkBOgD9UsjgRihl5skA/fAHuBQTxAYiEvMrSEF8AHAULoJlakB4FS6Wa0F0AIdByAQAQ4CKQIUGAH8LkEgIAJ5IIFhFggwcGJe4CDQIrgnJhu4+JSCFrCkCC4bUwCSepV4F0Q67FQukBKQ1lrvYhAEQ8T3RZ6AEK5lsd8YubVeIl9PiBzs84GHKb0OFM2HKx5zCImVTE/tE3rQyhPiRfdPojBapJ4EXhzAcLAJRRwHEM+e1o9zk5gHp05SqwhpaGkGmKJJOw40u3pvLBInFRRWg8ZyUsYY19fDQBofV24oYzgwzE6MZMNQm1DpS1J66CybNU1U9tcRMfKtJwV1wxCcEMgmE0eIIfg+4vNBxoWhdhgwOoUUqsnwBl93yvC8uTc8OqR+HmTlWnzJB0rH4mKy6s279dGM9fqUjSMdvzGPtesw279L+16buZo8cCABg5gnxk4fh95nEL1zdBVnY1tv419cfDkaPDk14Pn76Pvfxi+/zz+/wNRN43Lkt3u4wAAAABJRU5ErkJggg==";
322
+ var logo_monad = "data:image/png;base64,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";
273
323
  var logo_pharos = "data:image/jpeg;base64,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";
324
+ var logo_polygon = "data:image/png;base64,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";
274
325
  var logo_robinhood = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAIAAAAlC+aJAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAQKADAAQAAAABAAAAQAAAAABGUUKwAAAFnElEQVRoBe1ZDUyUZRz/HRxfHV/iLDliIFguokGkskVAscAIx7BlOjDXxJhBqCvnTJgadpFza462EmTqmtIswhhRm4aZNgPTPtRFOVgsqpEfIXBMBO6u/+Odd9y9L8j7vM9BbPef0+fe93n+z+/3/3r+z6vmnAUzWrxmNHoC7yEw3R70eMDjAZUW8ISQSgOqXu7xgGoTqlSgVbmeY7lmzPFJfYz1D4ce65KpI+AN+ACjgHEQg/24NQSNBgE6BM/CPVqMACYuElNEwA/o6UHzIbQdR3cnBnoxcos5wj8Ac/RISsOLm6CPZPSUimYKutEAoPUUtq/Bn53jwkt4HNUt8PFnEaVI3F6F/IEvG7AhdyL0hPjnMzj7NYsxpeJeAoT+04PYmg9j392BnTsByhOl4sYcIPRHalFZjFHK0ElIdwdPHruLgLcZh/eismQSwO9M6e/93xCgSOjuwulmJGeyWjlW6JfZhPYfQHBdxGJRnMGkQbwHCL0vEBODfc1O9z0qL8OE/vbbo3UoK3DBD10QywGaoEgEE6Ay8kcXTjQwM8PZ9qPDyC5ARBQr9hGxMiD10YzA5PLFsVwkAdr+Ri82P4/2844N7KO0pSgotXmc0ZNIchZPCAkro2RuiwmGV+TRL3oKuz5CcBCON6Lf6JoYxCU9F2nZLMaUijAC1CzUGHDsiAyAmDgYDiEsEE0f4+11GDW7Erg/Flvfh9Zn+jxAzcIX9di3Uwb9rDmorEO0Hq1tMLzMzgQvZ6P5BWBbLfQRPI0Q7eesTAbA3R9Rzbn4EwzrYJL0YlotyqqRmIDObpQXwNgPb0nSlRiQ8iSoteMTtQQIz7WrKF+NvusyAArL8Owy9A1hxxrWhErlmXys3ogh6YtJP1FFgBKXimNFETouymyYmoOiMlbXq8rQ9pXMhPnx2FIFi4Yn9O3qVBGg4KmvxcnP7Nocg/si8cYH0Png809Qt8fx3DqiYNMFY8cBhM3maR/GquMnQOYfNqP5w7HabGNK081ViI3Ebx3YXQqz8+lKLYOvHzbtQeJCnrrpsp8kp1zej/+TCAwYcfVvmRnPFWFJHgZG8E4Jrv/jOoGiLm4h4hepCn27Un4PkAqKBJPkTI2cj5K3WFNw+D18d8y+kW3AOjYLOwck61xnTvK3KgLSPTRe2LAb+tm4cAk1b0rfs+DxpdQRJ4IJZC5HVh6Mo3h3I/v0IJXlxQgNVtxySvXYn4gkEBIGOpWop2jYj7YW+xaOwYJE5Jcq7jcd6+VGIgmseg0LYvH7X6jeLrOVtzfW70KgTqT5aRthBKIexMpXWWrWVOBajwyBJflIzeJvGWQ03n6kigClrP3GWFiOuSH4vhVNB2X2opauuEKw7a3b8BOglb1XMHCD6YlPRvYKGM3Yuw0jck392nLMi+bsN61Ax/ub/yCjlaebcHOQOeGlLQj1ReNRmZ6HbL+sECuKxRxbUhqcBOgYHjKhpZ4pTEhBxlL8O4TaneyQsoo+Co+l44kcPJqKueGs8tx5Y5sg6h9OArTsl0vs6wjJqtcRpMX+Wvz6Ix54BMlPIyUbcYsRFsKu9QRdLqZE4ef9rEIEvmlk4R6/GOk5MAL36nHgDB5KQqAfS1a623DfURSR4/EA2XVwxNZFr1yPAB8W3xm5bF/CreZ2ogi6dTIPAVrTfgGXL4Bqf0aeLUKUfs/hwCq7hKeMEoFvm9mnK2qbQ0SfrLIoJ3iomADFz00TTjUhKBR0o3Vrgk6A2/5KMQFq9Lsus4KT+QIiwoW19XZASgeKCVD8nG1h8ZO3dvrRE1vFBKhEnj/JjqeHk9zSGij1AM9/8l3phr8OoWFuac6UEuApo+GRrC9w/tSgdF9h83kIiLqPCyGhOAeE7CpQiYeAQGNyqfJ4gMtsAhd5PCDQmFyqPB7gMpvARTPeA/8BfiVslWdivNgAAAAASUVORK5CYII=";
275
326
  var logo_usdc = "data:image/png;base64,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";
276
327
  var logo_usdg = "data:image/png;base64,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";
@@ -313,6 +364,27 @@ var TOKENS = [
313
364
  network: "mainnet",
314
365
  swapContracts: []
315
366
  },
367
+ {
368
+ chainId: 56,
369
+ address: "0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d",
370
+ decimals: 18,
371
+ network: "mainnet",
372
+ swapContracts: []
373
+ },
374
+ {
375
+ chainId: 137,
376
+ address: "0x3c499c542cef5e3811e1192ce70d8cc03d5c3359",
377
+ decimals: 6,
378
+ network: "mainnet",
379
+ swapContracts: []
380
+ },
381
+ {
382
+ chainId: 143,
383
+ address: "0x754704bc059f8c67012fed69bc8a327a5aafb603",
384
+ decimals: 6,
385
+ network: "mainnet",
386
+ swapContracts: []
387
+ },
316
388
  {
317
389
  chainId: 11155111,
318
390
  address: "0x1c7d4b196cb0c7b01d743fbc6116a902379c7238",
@@ -421,6 +493,27 @@ var TOKENS = [
421
493
  decimals: 6,
422
494
  network: "mainnet",
423
495
  swapContracts: []
496
+ },
497
+ {
498
+ chainId: 56,
499
+ address: "0x55d398326f99059fF775485246999027B3197955",
500
+ decimals: 18,
501
+ network: "mainnet",
502
+ swapContracts: []
503
+ },
504
+ {
505
+ chainId: 137,
506
+ address: "0xc2132D05D31c914a87C6611C10748AEb04B58e8F",
507
+ decimals: 6,
508
+ network: "mainnet",
509
+ swapContracts: []
510
+ },
511
+ {
512
+ chainId: 143,
513
+ address: "0xe7cd86e13AC4309349F30B3435a9d337750fC82D",
514
+ decimals: 6,
515
+ network: "mainnet",
516
+ swapContracts: []
424
517
  }
425
518
  ]
426
519
  },
@@ -466,6 +559,27 @@ var TOKENS = [
466
559
  network: "mainnet",
467
560
  swapContracts: []
468
561
  },
562
+ {
563
+ chainId: 56,
564
+ address: "0x0555e30da8f98308edb960aa94c0db47230d2b9c",
565
+ decimals: 8,
566
+ network: "mainnet",
567
+ swapContracts: []
568
+ },
569
+ {
570
+ chainId: 137,
571
+ address: "0x1bfd67037b42cf73acf2047067bd4f2c47d9bfd6",
572
+ decimals: 8,
573
+ network: "mainnet",
574
+ swapContracts: []
575
+ },
576
+ {
577
+ chainId: 143,
578
+ address: "0x0555e30da8f98308edb960aa94c0db47230d2b9c",
579
+ decimals: 8,
580
+ network: "mainnet",
581
+ swapContracts: []
582
+ },
469
583
  {
470
584
  chainId: 11155111,
471
585
  address: "0x4fc381b6cc6df8cf1c1bd46d184475be5b7a3c62",
@@ -636,10 +750,7 @@ var _deploymentIndex = /* @__PURE__ */ new Map();
636
750
  var _chainIndex = /* @__PURE__ */ new Map();
637
751
  var _equivalenceIndex = /* @__PURE__ */ new Map();
638
752
  var NATIVE_SENTINEL = "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
639
- var NATIVE_ALIASES = [
640
- "0x0000000000000000000000000000000000000000",
641
- "0x0"
642
- ];
753
+ var NATIVE_ALIASES = ["0x0000000000000000000000000000000000000000", "0x0"];
643
754
  function _buildIndexes() {
644
755
  for (const token of TOKENS) {
645
756
  const groupAddrs = _equivalenceIndex.get(token.equivalenceGroup) ?? [];
@@ -657,7 +768,10 @@ function _buildIndexes() {
657
768
  if (addr === NATIVE_SENTINEL) {
658
769
  for (const alias of NATIVE_ALIASES) {
659
770
  _addressIndex.set(alias, token);
660
- _deploymentIndex.set(`${d.chainId}:${alias}`, { token, deployment: d });
771
+ _deploymentIndex.set(`${d.chainId}:${alias}`, {
772
+ token,
773
+ deployment: d
774
+ });
661
775
  if (!groupAddrs.includes(alias)) {
662
776
  groupAddrs.push(alias);
663
777
  }
@@ -712,7 +826,9 @@ function getDeployment(address, chainId) {
712
826
  function getEquivalentAddresses(tokenAddress) {
713
827
  const token = _addressIndex.get(tokenAddress.toLowerCase());
714
828
  if (!token) return [tokenAddress.toLowerCase()];
715
- return _equivalenceIndex.get(token.equivalenceGroup) ?? [tokenAddress.toLowerCase()];
829
+ return _equivalenceIndex.get(token.equivalenceGroup) ?? [
830
+ tokenAddress.toLowerCase()
831
+ ];
716
832
  }
717
833
  function getEquivalenceGroup(tokenAddress) {
718
834
  return _addressIndex.get(tokenAddress.toLowerCase())?.equivalenceGroup;
@@ -812,6 +928,45 @@ var CHAINS = {
812
928
  logo: logo_robinhood,
813
929
  wrappedNativeTokenAddress: "0x0bd7d308f8e1639fab988df18a8011f41eacad73"
814
930
  },
931
+ 56: {
932
+ id: 56,
933
+ name: "Binance Smart Chain",
934
+ displayName: "BSC",
935
+ network: "mainnet",
936
+ nativeCurrency: { name: "BNB", symbol: "BNB", decimals: 18 },
937
+ delegateContract: "0x5884Bff4876C979271E65D2feA8D0CF3bF6E6CcC",
938
+ escrowContract: "0x93ee466f920e1b4961f85749001f03aAd868eF0E",
939
+ blockExplorer: "https://bscscan.com",
940
+ rpcUrl: "https://bsc-dataseed.bnbchain.org",
941
+ logo: logo_bnb,
942
+ wrappedNativeTokenAddress: "0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c"
943
+ },
944
+ 137: {
945
+ id: 137,
946
+ name: "Polygon",
947
+ displayName: "Polygon",
948
+ network: "mainnet",
949
+ nativeCurrency: { name: "POL", symbol: "POL", decimals: 18 },
950
+ delegateContract: "0x5884Bff4876C979271E65D2feA8D0CF3bF6E6CcC",
951
+ escrowContract: "0x93ee466f920e1b4961f85749001f03aAd868eF0E",
952
+ blockExplorer: "https://polygonscan.com",
953
+ rpcUrl: "https://polygon-bor-rpc.publicnode.com",
954
+ logo: logo_polygon,
955
+ wrappedNativeTokenAddress: "0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270"
956
+ },
957
+ 143: {
958
+ id: 143,
959
+ name: "Monad",
960
+ displayName: "Monad",
961
+ network: "mainnet",
962
+ nativeCurrency: { name: "MON", symbol: "MON", decimals: 18 },
963
+ delegateContract: "0x5884Bff4876C979271E65D2feA8D0CF3bF6E6CcC",
964
+ escrowContract: "0x93ee466f920e1b4961f85749001f03aAd868eF0E",
965
+ blockExplorer: "https://monadexplorer.com",
966
+ rpcUrl: "https://rpc.monad.xyz",
967
+ logo: logo_monad,
968
+ wrappedNativeTokenAddress: "0x3bd359c1119da7da1d913d1c4d2b7c461115433a"
969
+ },
815
970
  11155111: {
816
971
  id: 11155111,
817
972
  name: "Ethereum Sepolia",
@@ -1222,7 +1377,12 @@ var DELEGATE_ABI = [
1222
1377
  type: "event",
1223
1378
  name: "BatchExecuted",
1224
1379
  inputs: [
1225
- { name: "block", type: "uint256", indexed: true, internalType: "uint256" },
1380
+ {
1381
+ name: "block",
1382
+ type: "uint256",
1383
+ indexed: true,
1384
+ internalType: "uint256"
1385
+ },
1226
1386
  {
1227
1387
  name: "calls",
1228
1388
  type: "tuple[]",
@@ -1241,12 +1401,32 @@ var DELEGATE_ABI = [
1241
1401
  type: "event",
1242
1402
  name: "CallExecuted",
1243
1403
  inputs: [
1244
- { name: "executor", type: "address", indexed: true, internalType: "address" },
1245
- { name: "sender", type: "address", indexed: true, internalType: "address" },
1404
+ {
1405
+ name: "executor",
1406
+ type: "address",
1407
+ indexed: true,
1408
+ internalType: "address"
1409
+ },
1410
+ {
1411
+ name: "sender",
1412
+ type: "address",
1413
+ indexed: true,
1414
+ internalType: "address"
1415
+ },
1246
1416
  { name: "to", type: "address", indexed: true, internalType: "address" },
1247
- { name: "value", type: "uint256", indexed: false, internalType: "uint256" },
1417
+ {
1418
+ name: "value",
1419
+ type: "uint256",
1420
+ indexed: false,
1421
+ internalType: "uint256"
1422
+ },
1248
1423
  { name: "data", type: "bytes", indexed: false, internalType: "bytes" },
1249
- { name: "returnData", type: "bytes", indexed: false, internalType: "bytes" }
1424
+ {
1425
+ name: "returnData",
1426
+ type: "bytes",
1427
+ indexed: false,
1428
+ internalType: "bytes"
1429
+ }
1250
1430
  ],
1251
1431
  anonymous: false
1252
1432
  },
@@ -1254,7 +1434,12 @@ var DELEGATE_ABI = [
1254
1434
  type: "event",
1255
1435
  name: "IntentSubmitted",
1256
1436
  inputs: [
1257
- { name: "signature", type: "bytes", indexed: true, internalType: "bytes" }
1437
+ {
1438
+ name: "signature",
1439
+ type: "bytes",
1440
+ indexed: true,
1441
+ internalType: "bytes"
1442
+ }
1258
1443
  ],
1259
1444
  anonymous: false
1260
1445
  },
@@ -1339,26 +1524,141 @@ var DELEGATE_ABI = [
1339
1524
 
1340
1525
  // src/abis/erc20.ts
1341
1526
  var ERC20_ABI = [
1342
- { inputs: [], name: "name", outputs: [{ type: "string" }], stateMutability: "view", type: "function" },
1343
- { inputs: [], name: "symbol", outputs: [{ type: "string" }], stateMutability: "view", type: "function" },
1344
- { inputs: [], name: "decimals", outputs: [{ type: "uint8" }], stateMutability: "view", type: "function" },
1345
- { inputs: [{ name: "account", type: "address" }], name: "balanceOf", outputs: [{ type: "uint256" }], stateMutability: "view", type: "function" },
1346
- { inputs: [{ name: "to", type: "address" }, { name: "amount", type: "uint256" }], name: "transfer", outputs: [{ type: "bool" }], stateMutability: "nonpayable", type: "function" },
1347
- { inputs: [{ name: "from", type: "address" }, { name: "to", type: "address" }, { name: "amount", type: "uint256" }], name: "transferFrom", outputs: [{ type: "bool" }], stateMutability: "nonpayable", type: "function" },
1348
- { inputs: [{ name: "spender", type: "address" }, { name: "amount", type: "uint256" }], name: "approve", outputs: [{ type: "bool" }], stateMutability: "nonpayable", type: "function" },
1349
- { inputs: [{ name: "owner", type: "address" }, { name: "spender", type: "address" }], name: "allowance", outputs: [{ type: "uint256" }], stateMutability: "view", type: "function" },
1350
- { anonymous: false, inputs: [{ indexed: true, name: "from", type: "address" }, { indexed: true, name: "to", type: "address" }, { indexed: false, name: "value", type: "uint256" }], name: "Transfer", type: "event" },
1351
- { anonymous: false, inputs: [{ indexed: true, name: "owner", type: "address" }, { indexed: true, name: "spender", type: "address" }, { indexed: false, name: "value", type: "uint256" }], name: "Approval", type: "event" }
1527
+ {
1528
+ inputs: [],
1529
+ name: "name",
1530
+ outputs: [{ type: "string" }],
1531
+ stateMutability: "view",
1532
+ type: "function"
1533
+ },
1534
+ {
1535
+ inputs: [],
1536
+ name: "symbol",
1537
+ outputs: [{ type: "string" }],
1538
+ stateMutability: "view",
1539
+ type: "function"
1540
+ },
1541
+ {
1542
+ inputs: [],
1543
+ name: "decimals",
1544
+ outputs: [{ type: "uint8" }],
1545
+ stateMutability: "view",
1546
+ type: "function"
1547
+ },
1548
+ {
1549
+ inputs: [{ name: "account", type: "address" }],
1550
+ name: "balanceOf",
1551
+ outputs: [{ type: "uint256" }],
1552
+ stateMutability: "view",
1553
+ type: "function"
1554
+ },
1555
+ {
1556
+ inputs: [
1557
+ { name: "to", type: "address" },
1558
+ { name: "amount", type: "uint256" }
1559
+ ],
1560
+ name: "transfer",
1561
+ outputs: [{ type: "bool" }],
1562
+ stateMutability: "nonpayable",
1563
+ type: "function"
1564
+ },
1565
+ {
1566
+ inputs: [
1567
+ { name: "from", type: "address" },
1568
+ { name: "to", type: "address" },
1569
+ { name: "amount", type: "uint256" }
1570
+ ],
1571
+ name: "transferFrom",
1572
+ outputs: [{ type: "bool" }],
1573
+ stateMutability: "nonpayable",
1574
+ type: "function"
1575
+ },
1576
+ {
1577
+ inputs: [
1578
+ { name: "spender", type: "address" },
1579
+ { name: "amount", type: "uint256" }
1580
+ ],
1581
+ name: "approve",
1582
+ outputs: [{ type: "bool" }],
1583
+ stateMutability: "nonpayable",
1584
+ type: "function"
1585
+ },
1586
+ {
1587
+ inputs: [
1588
+ { name: "owner", type: "address" },
1589
+ { name: "spender", type: "address" }
1590
+ ],
1591
+ name: "allowance",
1592
+ outputs: [{ type: "uint256" }],
1593
+ stateMutability: "view",
1594
+ type: "function"
1595
+ },
1596
+ {
1597
+ anonymous: false,
1598
+ inputs: [
1599
+ { indexed: true, name: "from", type: "address" },
1600
+ { indexed: true, name: "to", type: "address" },
1601
+ { indexed: false, name: "value", type: "uint256" }
1602
+ ],
1603
+ name: "Transfer",
1604
+ type: "event"
1605
+ },
1606
+ {
1607
+ anonymous: false,
1608
+ inputs: [
1609
+ { indexed: true, name: "owner", type: "address" },
1610
+ { indexed: true, name: "spender", type: "address" },
1611
+ { indexed: false, name: "value", type: "uint256" }
1612
+ ],
1613
+ name: "Approval",
1614
+ type: "event"
1615
+ }
1352
1616
  ];
1353
1617
 
1354
1618
  // src/abis/wcbtc.ts
1355
1619
  var WCBTC_ABI = [
1356
- { inputs: [], name: "name", outputs: [{ type: "string" }], stateMutability: "view", type: "function" },
1357
- { inputs: [], name: "symbol", outputs: [{ type: "string" }], stateMutability: "view", type: "function" },
1358
- { inputs: [], name: "decimals", outputs: [{ type: "uint8" }], stateMutability: "view", type: "function" },
1359
- { inputs: [{ name: "account", type: "address" }], name: "balanceOf", outputs: [{ type: "uint256" }], stateMutability: "view", type: "function" },
1360
- { inputs: [], name: "deposit", outputs: [], stateMutability: "payable", type: "function" },
1361
- { inputs: [{ name: "amount", type: "uint256" }], name: "withdraw", outputs: [], stateMutability: "nonpayable", type: "function" },
1620
+ {
1621
+ inputs: [],
1622
+ name: "name",
1623
+ outputs: [{ type: "string" }],
1624
+ stateMutability: "view",
1625
+ type: "function"
1626
+ },
1627
+ {
1628
+ inputs: [],
1629
+ name: "symbol",
1630
+ outputs: [{ type: "string" }],
1631
+ stateMutability: "view",
1632
+ type: "function"
1633
+ },
1634
+ {
1635
+ inputs: [],
1636
+ name: "decimals",
1637
+ outputs: [{ type: "uint8" }],
1638
+ stateMutability: "view",
1639
+ type: "function"
1640
+ },
1641
+ {
1642
+ inputs: [{ name: "account", type: "address" }],
1643
+ name: "balanceOf",
1644
+ outputs: [{ type: "uint256" }],
1645
+ stateMutability: "view",
1646
+ type: "function"
1647
+ },
1648
+ {
1649
+ inputs: [],
1650
+ name: "deposit",
1651
+ outputs: [],
1652
+ stateMutability: "payable",
1653
+ type: "function"
1654
+ },
1655
+ {
1656
+ inputs: [{ name: "amount", type: "uint256" }],
1657
+ name: "withdraw",
1658
+ outputs: [],
1659
+ stateMutability: "nonpayable",
1660
+ type: "function"
1661
+ },
1362
1662
  { stateMutability: "payable", type: "receive" },
1363
1663
  { stateMutability: "payable", type: "fallback" }
1364
1664
  ];
@@ -1430,9 +1730,7 @@ var uniV3SwapRouterAbi = [
1430
1730
  }
1431
1731
  ],
1432
1732
  name: "exactInputSingle",
1433
- outputs: [
1434
- { internalType: "uint256", name: "amountOut", type: "uint256" }
1435
- ],
1733
+ outputs: [{ internalType: "uint256", name: "amountOut", type: "uint256" }],
1436
1734
  stateMutability: "payable",
1437
1735
  type: "function"
1438
1736
  }