@trustware/sdk-staging 1.1.9-staging.7 → 1.1.11-staging.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/constants.cjs +1 -1
- package/dist/constants.mjs +1 -1
- package/dist/{core-DzqVEWwP.d.ts → core-BgYLe9Q7.d.ts} +15 -2
- package/dist/{core-gNyi5xsp.d.cts → core-fLSt4qD2.d.cts} +15 -2
- package/dist/core.cjs +318 -145
- package/dist/core.cjs.map +1 -1
- package/dist/core.d.cts +2 -2
- package/dist/core.d.ts +2 -2
- package/dist/core.mjs +318 -144
- package/dist/core.mjs.map +1 -1
- package/dist/index.cjs +407 -114
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +5 -5
- package/dist/index.d.ts +5 -5
- package/dist/index.mjs +433 -140
- package/dist/index.mjs.map +1 -1
- package/dist/{manager-Dn4muk74.d.ts → manager-BY3NHAks.d.ts} +138 -2
- package/dist/{manager-DWFNyouP.d.cts → manager-DT8enQbE.d.cts} +138 -2
- package/dist/{detect-Cprq6X9o.d.ts → metadata-BPvFYMlc.d.ts} +5 -2
- package/dist/{detect-DWL4uExV.d.cts → metadata-DyxUcKHk.d.cts} +5 -2
- package/dist/smart-account.cjs +1 -1
- package/dist/smart-account.cjs.map +1 -1
- package/dist/smart-account.d.cts +247 -234
- package/dist/smart-account.d.ts +247 -234
- package/dist/smart-account.mjs +1 -1
- package/dist/smart-account.mjs.map +1 -1
- package/dist/wallet.cjs +15 -1
- package/dist/wallet.cjs.map +1 -1
- package/dist/wallet.d.cts +4 -7
- package/dist/wallet.d.ts +4 -7
- package/dist/wallet.mjs +15 -1
- package/dist/wallet.mjs.map +1 -1
- package/dist/widget.cjs +381 -113
- package/dist/widget.cjs.map +1 -1
- package/dist/widget.mjs +409 -139
- package/dist/widget.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -187,6 +187,15 @@ type BuildRouteBody = {
|
|
|
187
187
|
slippageBps?: number;
|
|
188
188
|
linkId?: string;
|
|
189
189
|
memo?: string;
|
|
190
|
+
/**
|
|
191
|
+
* Optional bridge-and-call: execute a contract call on the destination
|
|
192
|
+
* chain right after funds land, instead of a plain wallet transfer (e.g.
|
|
193
|
+
* depositing into a vault in the same flow). Fully optional and backward
|
|
194
|
+
* compatible — omit `hooks` entirely and nothing changes.
|
|
195
|
+
*/
|
|
196
|
+
hooks?: {
|
|
197
|
+
postHook?: PostHookRequest;
|
|
198
|
+
};
|
|
190
199
|
};
|
|
191
200
|
type TxRequest = {
|
|
192
201
|
to?: string;
|
|
@@ -199,6 +208,18 @@ type TxRequest = {
|
|
|
199
208
|
chainId?: number | string;
|
|
200
209
|
gasPrice?: string;
|
|
201
210
|
};
|
|
211
|
+
type BuildRouteResponse = {
|
|
212
|
+
intentId?: string;
|
|
213
|
+
route?: RoutePlan;
|
|
214
|
+
sponsorship?: RouteSponsorship;
|
|
215
|
+
data?: {
|
|
216
|
+
intentId?: string;
|
|
217
|
+
route?: RoutePlan;
|
|
218
|
+
sponsorship?: RouteSponsorship;
|
|
219
|
+
};
|
|
220
|
+
error?: string;
|
|
221
|
+
message?: string;
|
|
222
|
+
};
|
|
202
223
|
declare function buildRoute(body: BuildRouteBody, signal?: AbortSignal): Promise<BuildRouteResult>;
|
|
203
224
|
declare function buildDepositAddress(body: BuildRouteBody, signal?: AbortSignal): Promise<{
|
|
204
225
|
intentId: string;
|
|
@@ -215,7 +236,36 @@ declare function submitReceipt(intentId: string, txHash: string, sponsorshipRequ
|
|
|
215
236
|
* executes from a smart account, so the backend records the tx against the
|
|
216
237
|
* address the user actually connects with. */
|
|
217
238
|
eoaAddress?: string): Promise<any>;
|
|
239
|
+
/**
|
|
240
|
+
* Reports the submitted tx hash for one execution step of a multi-step
|
|
241
|
+
* route — approve steps only; the main tx keeps going through
|
|
242
|
+
* `submitReceipt`. `stepIndex` is the step's position in
|
|
243
|
+
* `route.execution.approvals` (the backend seeds its step plan in the same
|
|
244
|
+
* order). Best-effort telemetry: callers fire-and-forget so a failed report
|
|
245
|
+
* never blocks the payment flow, but a successful one lets the backend tell
|
|
246
|
+
* "approve landed, main never followed" apart from an intent the user
|
|
247
|
+
* abandoned before signing anything.
|
|
248
|
+
*/
|
|
249
|
+
declare function submitStepReceipt(intentId: string, stepIndex: number, txHash: string): Promise<any>;
|
|
250
|
+
/**
|
|
251
|
+
* Fetches the current status for a route intent.
|
|
252
|
+
*
|
|
253
|
+
* Response contract:
|
|
254
|
+
* - 404 (throws) → intent doesn't exist. Stop polling.
|
|
255
|
+
* - 200 status: "pending" → intent exists, no receipt yet. Keep polling.
|
|
256
|
+
* - 200 status: "submitted" → receipt in, tx in flight. Keep polling.
|
|
257
|
+
* - 200 status: "bridging" → cross-chain leg in progress. Keep polling.
|
|
258
|
+
* - 200 status: "success"/"failed" → terminal. Stop polling.
|
|
259
|
+
*
|
|
260
|
+
* A "pending" payload is a stub ({intent_id, status, intent_status,
|
|
261
|
+
* create_date}) — the full Transaction fields appear once a receipt lands.
|
|
262
|
+
*/
|
|
218
263
|
declare function getStatus(intentId: string): Promise<Transaction>;
|
|
264
|
+
/**
|
|
265
|
+
* Polls intent status until terminal ("success"/"failed") or timeout.
|
|
266
|
+
* Non-terminal statuses ("pending", "submitted", "bridging") keep the loop
|
|
267
|
+
* going; a 404 (unknown intent) throws out of the loop — don't retry it.
|
|
268
|
+
*/
|
|
219
269
|
declare function pollStatus(intentId: string, { intervalMs, timeoutMs }?: {
|
|
220
270
|
intervalMs?: number | undefined;
|
|
221
271
|
timeoutMs?: number | undefined;
|
|
@@ -262,11 +312,30 @@ type Transaction = {
|
|
|
262
312
|
destTxHash: string;
|
|
263
313
|
requestId: string;
|
|
264
314
|
transactionRequest: unknown;
|
|
265
|
-
|
|
315
|
+
/**
|
|
316
|
+
* "pending" means the intent exists but no receipt has been submitted yet —
|
|
317
|
+
* the backend returns it (HTTP 200) instead of the old 404 so pollers can
|
|
318
|
+
* tell "not ready yet, keep polling" apart from "unknown intent" (a real
|
|
319
|
+
* 404, which means stop polling). A pending response carries only
|
|
320
|
+
* `intent_id`, `status`, `intent_status`, and `create_date`; the other
|
|
321
|
+
* Transaction fields are absent until a receipt lands.
|
|
322
|
+
*/
|
|
323
|
+
status: "pending" | "submitted" | "bridging" | "success" | "failed";
|
|
266
324
|
statusRaw?: unknown;
|
|
267
325
|
routePath?: unknown;
|
|
268
326
|
routeStatus?: unknown;
|
|
327
|
+
/**
|
|
328
|
+
* Exact once landed_amount_verified is true; otherwise a pre-trade quote
|
|
329
|
+
* estimate copied in when the transaction was submitted — neither Squid's
|
|
330
|
+
* nor LiFi's status API carries a real landed-amount field, so the
|
|
331
|
+
* backend confirms it by reading the destination chain directly instead
|
|
332
|
+
* (see BVT-246). Check `landed_amount_verified` before auto-continuing
|
|
333
|
+
* on this value.
|
|
334
|
+
*/
|
|
269
335
|
toAmountWei?: string | number;
|
|
336
|
+
/** True once toAmountWei has been confirmed on-chain rather than being the
|
|
337
|
+
* pre-trade quote estimate. Wire field: `landed_amount_verified`. */
|
|
338
|
+
landed_amount_verified?: boolean;
|
|
270
339
|
fromChainBlock: number;
|
|
271
340
|
toChainBlock: number;
|
|
272
341
|
fromChainTxUrl?: string;
|
|
@@ -305,6 +374,60 @@ type RouteSponsorship = {
|
|
|
305
374
|
typedDataHash: string;
|
|
306
375
|
approval: SponsorshipApproval;
|
|
307
376
|
};
|
|
377
|
+
/**
|
|
378
|
+
* A destination-chain contract call to execute automatically once bridged
|
|
379
|
+
* funds land — e.g. depositing straight into a vault instead of a plain
|
|
380
|
+
* wallet transfer. Entirely optional: omit `hooks` on `BuildRouteBody`
|
|
381
|
+
* altogether and nothing about existing `buildRoute`/`buildDepositAddress`
|
|
382
|
+
* behavior changes.
|
|
383
|
+
*
|
|
384
|
+
* There are two ways to tell the backend how much the call should act on:
|
|
385
|
+
* - `fundAmount` (recommended — works with every provider): a fixed amount
|
|
386
|
+
* you already know ahead of time, with `callData` ABI-encoded for that
|
|
387
|
+
* exact number.
|
|
388
|
+
* - `fullAmount: true` + `amountInputPos` (Squid only): lets the backend
|
|
389
|
+
* dynamically patch `callData` with the *actual* landed amount at
|
|
390
|
+
* execution time — useful when the exact bridged amount can't be known in
|
|
391
|
+
* advance. Requests using this mode are only ever routed to a provider
|
|
392
|
+
* that supports it.
|
|
393
|
+
*
|
|
394
|
+
* Pick one of the two amount modes; you don't need both.
|
|
395
|
+
*/
|
|
396
|
+
type PostHookRequest = {
|
|
397
|
+
/** Contract address to call on the destination chain. */
|
|
398
|
+
target: string;
|
|
399
|
+
/** ABI-encoded calldata for the call. */
|
|
400
|
+
callData: string;
|
|
401
|
+
/** msg.value to send with the call, in wei — only for native-value calls. */
|
|
402
|
+
value?: string;
|
|
403
|
+
/** Token the call acts on. Defaults to the route's `toToken`. */
|
|
404
|
+
fundToken?: string;
|
|
405
|
+
/** Fixed amount (wei). Required unless `fullAmount` is set. */
|
|
406
|
+
fundAmount?: string;
|
|
407
|
+
/** Squid-only: dynamically patch `callData` with the actual landed amount. */
|
|
408
|
+
fullAmount?: boolean;
|
|
409
|
+
/** Squid-only: required when `fullAmount` is true — the ABI arg index to patch. */
|
|
410
|
+
amountInputPos?: number;
|
|
411
|
+
/**
|
|
412
|
+
* Gas limit hint for the call. Optional for Squid, but required to keep
|
|
413
|
+
* this request eligible for LiFi — include it unless you're intentionally
|
|
414
|
+
* Squid-only.
|
|
415
|
+
*/
|
|
416
|
+
estimatedGas?: string;
|
|
417
|
+
/**
|
|
418
|
+
* Set this when `target` needs to pull `fundToken` via `transferFrom` (the
|
|
419
|
+
* common ERC20 vault-deposit case) — usually the same address as `target`
|
|
420
|
+
* itself. On Squid, an `approve()` call is automatically prepended before
|
|
421
|
+
* your call (patched with the landed amount too, when `fullAmount` is
|
|
422
|
+
* true). On LiFi, this is passed through as-is; LiFi's own execution
|
|
423
|
+
* engine handles the approval. Leave unset for native-asset calls, which
|
|
424
|
+
* never need an approval.
|
|
425
|
+
*/
|
|
426
|
+
toApprovalAddress?: string;
|
|
427
|
+
/** Where bridged funds go if the call fails (LiFi only). */
|
|
428
|
+
toFallbackAddress?: string;
|
|
429
|
+
description?: string;
|
|
430
|
+
};
|
|
308
431
|
type RouteEstimate = {
|
|
309
432
|
fromAmount?: string;
|
|
310
433
|
toAmount?: string;
|
|
@@ -315,10 +438,23 @@ type RouteEstimate = {
|
|
|
315
438
|
toAmountMinUsd?: string;
|
|
316
439
|
fees?: unknown[];
|
|
317
440
|
};
|
|
441
|
+
/**
|
|
442
|
+
* An ERC20 allowance that must be granted before `execution.transaction` can
|
|
443
|
+
* succeed — e.g. bridging from USDC instead of a native asset. `sendRouteTransaction`
|
|
444
|
+
* checks and grants these automatically; you only need this if you're
|
|
445
|
+
* building the transaction lifecycle yourself.
|
|
446
|
+
*/
|
|
447
|
+
type RouteApproval = {
|
|
448
|
+
chainId?: string;
|
|
449
|
+
tokenAddress?: string;
|
|
450
|
+
spender?: string;
|
|
451
|
+
amount?: string;
|
|
452
|
+
};
|
|
318
453
|
type RoutePlan = {
|
|
319
454
|
estimate?: RouteEstimate;
|
|
320
455
|
execution?: {
|
|
321
456
|
transaction?: TxRequest;
|
|
457
|
+
approvals?: RouteApproval[];
|
|
322
458
|
};
|
|
323
459
|
steps?: unknown[];
|
|
324
460
|
provider?: string;
|
|
@@ -705,4 +841,4 @@ declare function useWalletInfo(wagmi?: WagmiBridge): {
|
|
|
705
841
|
};
|
|
706
842
|
declare function useWalletExternalDisconnect(cb: () => void): void;
|
|
707
843
|
|
|
708
|
-
export {
|
|
844
|
+
export { type WalletConnectConfig as $, type ResolvedWalletConnectConfig as A, type BuildRouteBody as B, type RetryConfig as C, type DetectedWallet as D, type EIP1193 as E, type FeatureFlags as F, type RouteApproval as G, type RouteEstimate as H, IdentityStore as I, type RouteIntent as J, type RouteParams as K, type RoutePlan as L, type RouteSponsorship as M, type RoutesConfig as N, type SimpleWalletInterface as O, type PostHookRequest as P, type SponsorshipApproval as Q, type RateLimitInfo as R, type SolanaProviderLike as S, type TrustwareConfigOptions as T, type SwapTokenRef as U, type TrustwareTheme as V, type WalletMeta as W, type TrustwareWidgetMessages as X, type WalletAddressResolution as Y, type WalletAddressSource as Z, type WalletCategory as _, type WalletId as a, type WalletEcosystem as a0, type WalletIdentity as a1, type WalletIdentityAddress as a2, type WalletIdentityChainLike as a3, buildWalletIdentityAddress as a4, createWalletIdentity as a5, resolveWalletAddressForChain as a6, upsertWalletIdentityAddress as a7, buildRoute as a8, buildDepositAddress as a9, submitReceipt as aa, submitStepReceipt as ab, getStatus as ac, pollStatus as ad, type SolanaWalletInterface as b, type WagmiBridge as c, type WagmiConnector as d, type WalletSnapshot as e, useWalletExternalDisconnect as f, useWalletInfo as g, useWireDetectionIntoManager as h, type WalletInterFaceAPI as i, TrustwareError as j, type Transaction as k, type TrustwareEvent as l, type BuildRouteResponse as m, type BuildRouteResult as n, DEFAULT_AUTO_DETECT_PROVIDER as o, DEFAULT_FEATURE_FLAGS as p, DEFAULT_MESSAGES as q, DEFAULT_RETRY_CONFIG as r, DEFAULT_SLIPPAGE as s, type EIP6963ProviderDetail as t, useWalletConnectConnect as u, type EvmWalletInterface as v, walletManager as w, type ResolvedFeatureFlags as x, type ResolvedRetryConfig as y, type ResolvedTrustwareConfig as z };
|
|
@@ -187,6 +187,15 @@ type BuildRouteBody = {
|
|
|
187
187
|
slippageBps?: number;
|
|
188
188
|
linkId?: string;
|
|
189
189
|
memo?: string;
|
|
190
|
+
/**
|
|
191
|
+
* Optional bridge-and-call: execute a contract call on the destination
|
|
192
|
+
* chain right after funds land, instead of a plain wallet transfer (e.g.
|
|
193
|
+
* depositing into a vault in the same flow). Fully optional and backward
|
|
194
|
+
* compatible — omit `hooks` entirely and nothing changes.
|
|
195
|
+
*/
|
|
196
|
+
hooks?: {
|
|
197
|
+
postHook?: PostHookRequest;
|
|
198
|
+
};
|
|
190
199
|
};
|
|
191
200
|
type TxRequest = {
|
|
192
201
|
to?: string;
|
|
@@ -199,6 +208,18 @@ type TxRequest = {
|
|
|
199
208
|
chainId?: number | string;
|
|
200
209
|
gasPrice?: string;
|
|
201
210
|
};
|
|
211
|
+
type BuildRouteResponse = {
|
|
212
|
+
intentId?: string;
|
|
213
|
+
route?: RoutePlan;
|
|
214
|
+
sponsorship?: RouteSponsorship;
|
|
215
|
+
data?: {
|
|
216
|
+
intentId?: string;
|
|
217
|
+
route?: RoutePlan;
|
|
218
|
+
sponsorship?: RouteSponsorship;
|
|
219
|
+
};
|
|
220
|
+
error?: string;
|
|
221
|
+
message?: string;
|
|
222
|
+
};
|
|
202
223
|
declare function buildRoute(body: BuildRouteBody, signal?: AbortSignal): Promise<BuildRouteResult>;
|
|
203
224
|
declare function buildDepositAddress(body: BuildRouteBody, signal?: AbortSignal): Promise<{
|
|
204
225
|
intentId: string;
|
|
@@ -215,7 +236,36 @@ declare function submitReceipt(intentId: string, txHash: string, sponsorshipRequ
|
|
|
215
236
|
* executes from a smart account, so the backend records the tx against the
|
|
216
237
|
* address the user actually connects with. */
|
|
217
238
|
eoaAddress?: string): Promise<any>;
|
|
239
|
+
/**
|
|
240
|
+
* Reports the submitted tx hash for one execution step of a multi-step
|
|
241
|
+
* route — approve steps only; the main tx keeps going through
|
|
242
|
+
* `submitReceipt`. `stepIndex` is the step's position in
|
|
243
|
+
* `route.execution.approvals` (the backend seeds its step plan in the same
|
|
244
|
+
* order). Best-effort telemetry: callers fire-and-forget so a failed report
|
|
245
|
+
* never blocks the payment flow, but a successful one lets the backend tell
|
|
246
|
+
* "approve landed, main never followed" apart from an intent the user
|
|
247
|
+
* abandoned before signing anything.
|
|
248
|
+
*/
|
|
249
|
+
declare function submitStepReceipt(intentId: string, stepIndex: number, txHash: string): Promise<any>;
|
|
250
|
+
/**
|
|
251
|
+
* Fetches the current status for a route intent.
|
|
252
|
+
*
|
|
253
|
+
* Response contract:
|
|
254
|
+
* - 404 (throws) → intent doesn't exist. Stop polling.
|
|
255
|
+
* - 200 status: "pending" → intent exists, no receipt yet. Keep polling.
|
|
256
|
+
* - 200 status: "submitted" → receipt in, tx in flight. Keep polling.
|
|
257
|
+
* - 200 status: "bridging" → cross-chain leg in progress. Keep polling.
|
|
258
|
+
* - 200 status: "success"/"failed" → terminal. Stop polling.
|
|
259
|
+
*
|
|
260
|
+
* A "pending" payload is a stub ({intent_id, status, intent_status,
|
|
261
|
+
* create_date}) — the full Transaction fields appear once a receipt lands.
|
|
262
|
+
*/
|
|
218
263
|
declare function getStatus(intentId: string): Promise<Transaction>;
|
|
264
|
+
/**
|
|
265
|
+
* Polls intent status until terminal ("success"/"failed") or timeout.
|
|
266
|
+
* Non-terminal statuses ("pending", "submitted", "bridging") keep the loop
|
|
267
|
+
* going; a 404 (unknown intent) throws out of the loop — don't retry it.
|
|
268
|
+
*/
|
|
219
269
|
declare function pollStatus(intentId: string, { intervalMs, timeoutMs }?: {
|
|
220
270
|
intervalMs?: number | undefined;
|
|
221
271
|
timeoutMs?: number | undefined;
|
|
@@ -262,11 +312,30 @@ type Transaction = {
|
|
|
262
312
|
destTxHash: string;
|
|
263
313
|
requestId: string;
|
|
264
314
|
transactionRequest: unknown;
|
|
265
|
-
|
|
315
|
+
/**
|
|
316
|
+
* "pending" means the intent exists but no receipt has been submitted yet —
|
|
317
|
+
* the backend returns it (HTTP 200) instead of the old 404 so pollers can
|
|
318
|
+
* tell "not ready yet, keep polling" apart from "unknown intent" (a real
|
|
319
|
+
* 404, which means stop polling). A pending response carries only
|
|
320
|
+
* `intent_id`, `status`, `intent_status`, and `create_date`; the other
|
|
321
|
+
* Transaction fields are absent until a receipt lands.
|
|
322
|
+
*/
|
|
323
|
+
status: "pending" | "submitted" | "bridging" | "success" | "failed";
|
|
266
324
|
statusRaw?: unknown;
|
|
267
325
|
routePath?: unknown;
|
|
268
326
|
routeStatus?: unknown;
|
|
327
|
+
/**
|
|
328
|
+
* Exact once landed_amount_verified is true; otherwise a pre-trade quote
|
|
329
|
+
* estimate copied in when the transaction was submitted — neither Squid's
|
|
330
|
+
* nor LiFi's status API carries a real landed-amount field, so the
|
|
331
|
+
* backend confirms it by reading the destination chain directly instead
|
|
332
|
+
* (see BVT-246). Check `landed_amount_verified` before auto-continuing
|
|
333
|
+
* on this value.
|
|
334
|
+
*/
|
|
269
335
|
toAmountWei?: string | number;
|
|
336
|
+
/** True once toAmountWei has been confirmed on-chain rather than being the
|
|
337
|
+
* pre-trade quote estimate. Wire field: `landed_amount_verified`. */
|
|
338
|
+
landed_amount_verified?: boolean;
|
|
270
339
|
fromChainBlock: number;
|
|
271
340
|
toChainBlock: number;
|
|
272
341
|
fromChainTxUrl?: string;
|
|
@@ -305,6 +374,60 @@ type RouteSponsorship = {
|
|
|
305
374
|
typedDataHash: string;
|
|
306
375
|
approval: SponsorshipApproval;
|
|
307
376
|
};
|
|
377
|
+
/**
|
|
378
|
+
* A destination-chain contract call to execute automatically once bridged
|
|
379
|
+
* funds land — e.g. depositing straight into a vault instead of a plain
|
|
380
|
+
* wallet transfer. Entirely optional: omit `hooks` on `BuildRouteBody`
|
|
381
|
+
* altogether and nothing about existing `buildRoute`/`buildDepositAddress`
|
|
382
|
+
* behavior changes.
|
|
383
|
+
*
|
|
384
|
+
* There are two ways to tell the backend how much the call should act on:
|
|
385
|
+
* - `fundAmount` (recommended — works with every provider): a fixed amount
|
|
386
|
+
* you already know ahead of time, with `callData` ABI-encoded for that
|
|
387
|
+
* exact number.
|
|
388
|
+
* - `fullAmount: true` + `amountInputPos` (Squid only): lets the backend
|
|
389
|
+
* dynamically patch `callData` with the *actual* landed amount at
|
|
390
|
+
* execution time — useful when the exact bridged amount can't be known in
|
|
391
|
+
* advance. Requests using this mode are only ever routed to a provider
|
|
392
|
+
* that supports it.
|
|
393
|
+
*
|
|
394
|
+
* Pick one of the two amount modes; you don't need both.
|
|
395
|
+
*/
|
|
396
|
+
type PostHookRequest = {
|
|
397
|
+
/** Contract address to call on the destination chain. */
|
|
398
|
+
target: string;
|
|
399
|
+
/** ABI-encoded calldata for the call. */
|
|
400
|
+
callData: string;
|
|
401
|
+
/** msg.value to send with the call, in wei — only for native-value calls. */
|
|
402
|
+
value?: string;
|
|
403
|
+
/** Token the call acts on. Defaults to the route's `toToken`. */
|
|
404
|
+
fundToken?: string;
|
|
405
|
+
/** Fixed amount (wei). Required unless `fullAmount` is set. */
|
|
406
|
+
fundAmount?: string;
|
|
407
|
+
/** Squid-only: dynamically patch `callData` with the actual landed amount. */
|
|
408
|
+
fullAmount?: boolean;
|
|
409
|
+
/** Squid-only: required when `fullAmount` is true — the ABI arg index to patch. */
|
|
410
|
+
amountInputPos?: number;
|
|
411
|
+
/**
|
|
412
|
+
* Gas limit hint for the call. Optional for Squid, but required to keep
|
|
413
|
+
* this request eligible for LiFi — include it unless you're intentionally
|
|
414
|
+
* Squid-only.
|
|
415
|
+
*/
|
|
416
|
+
estimatedGas?: string;
|
|
417
|
+
/**
|
|
418
|
+
* Set this when `target` needs to pull `fundToken` via `transferFrom` (the
|
|
419
|
+
* common ERC20 vault-deposit case) — usually the same address as `target`
|
|
420
|
+
* itself. On Squid, an `approve()` call is automatically prepended before
|
|
421
|
+
* your call (patched with the landed amount too, when `fullAmount` is
|
|
422
|
+
* true). On LiFi, this is passed through as-is; LiFi's own execution
|
|
423
|
+
* engine handles the approval. Leave unset for native-asset calls, which
|
|
424
|
+
* never need an approval.
|
|
425
|
+
*/
|
|
426
|
+
toApprovalAddress?: string;
|
|
427
|
+
/** Where bridged funds go if the call fails (LiFi only). */
|
|
428
|
+
toFallbackAddress?: string;
|
|
429
|
+
description?: string;
|
|
430
|
+
};
|
|
308
431
|
type RouteEstimate = {
|
|
309
432
|
fromAmount?: string;
|
|
310
433
|
toAmount?: string;
|
|
@@ -315,10 +438,23 @@ type RouteEstimate = {
|
|
|
315
438
|
toAmountMinUsd?: string;
|
|
316
439
|
fees?: unknown[];
|
|
317
440
|
};
|
|
441
|
+
/**
|
|
442
|
+
* An ERC20 allowance that must be granted before `execution.transaction` can
|
|
443
|
+
* succeed — e.g. bridging from USDC instead of a native asset. `sendRouteTransaction`
|
|
444
|
+
* checks and grants these automatically; you only need this if you're
|
|
445
|
+
* building the transaction lifecycle yourself.
|
|
446
|
+
*/
|
|
447
|
+
type RouteApproval = {
|
|
448
|
+
chainId?: string;
|
|
449
|
+
tokenAddress?: string;
|
|
450
|
+
spender?: string;
|
|
451
|
+
amount?: string;
|
|
452
|
+
};
|
|
318
453
|
type RoutePlan = {
|
|
319
454
|
estimate?: RouteEstimate;
|
|
320
455
|
execution?: {
|
|
321
456
|
transaction?: TxRequest;
|
|
457
|
+
approvals?: RouteApproval[];
|
|
322
458
|
};
|
|
323
459
|
steps?: unknown[];
|
|
324
460
|
provider?: string;
|
|
@@ -705,4 +841,4 @@ declare function useWalletInfo(wagmi?: WagmiBridge): {
|
|
|
705
841
|
};
|
|
706
842
|
declare function useWalletExternalDisconnect(cb: () => void): void;
|
|
707
843
|
|
|
708
|
-
export {
|
|
844
|
+
export { type WalletConnectConfig as $, type ResolvedWalletConnectConfig as A, type BuildRouteBody as B, type RetryConfig as C, type DetectedWallet as D, type EIP1193 as E, type FeatureFlags as F, type RouteApproval as G, type RouteEstimate as H, IdentityStore as I, type RouteIntent as J, type RouteParams as K, type RoutePlan as L, type RouteSponsorship as M, type RoutesConfig as N, type SimpleWalletInterface as O, type PostHookRequest as P, type SponsorshipApproval as Q, type RateLimitInfo as R, type SolanaProviderLike as S, type TrustwareConfigOptions as T, type SwapTokenRef as U, type TrustwareTheme as V, type WalletMeta as W, type TrustwareWidgetMessages as X, type WalletAddressResolution as Y, type WalletAddressSource as Z, type WalletCategory as _, type WalletId as a, type WalletEcosystem as a0, type WalletIdentity as a1, type WalletIdentityAddress as a2, type WalletIdentityChainLike as a3, buildWalletIdentityAddress as a4, createWalletIdentity as a5, resolveWalletAddressForChain as a6, upsertWalletIdentityAddress as a7, buildRoute as a8, buildDepositAddress as a9, submitReceipt as aa, submitStepReceipt as ab, getStatus as ac, pollStatus as ad, type SolanaWalletInterface as b, type WagmiBridge as c, type WagmiConnector as d, type WalletSnapshot as e, useWalletExternalDisconnect as f, useWalletInfo as g, useWireDetectionIntoManager as h, type WalletInterFaceAPI as i, TrustwareError as j, type Transaction as k, type TrustwareEvent as l, type BuildRouteResponse as m, type BuildRouteResult as n, DEFAULT_AUTO_DETECT_PROVIDER as o, DEFAULT_FEATURE_FLAGS as p, DEFAULT_MESSAGES as q, DEFAULT_RETRY_CONFIG as r, DEFAULT_SLIPPAGE as s, type EIP6963ProviderDetail as t, useWalletConnectConnect as u, type EvmWalletInterface as v, walletManager as w, type ResolvedFeatureFlags as x, type ResolvedRetryConfig as y, type ResolvedTrustwareConfig as z };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { D as DetectedWallet, c as WagmiBridge, i as WalletInterFaceAPI, E as EIP1193, a as WalletId, t as EIP6963ProviderDetail, W as WalletMeta } from './manager-BY3NHAks.js';
|
|
2
2
|
|
|
3
3
|
/** Try wagmi bridge first (if provided), otherwise return EIP-1193 adapter. */
|
|
4
4
|
declare function connectDetectedWallet(dw: DetectedWallet, opts?: {
|
|
@@ -32,4 +32,7 @@ declare function useWalletDetection(timeoutMs?: number): {
|
|
|
32
32
|
};
|
|
33
33
|
declare function useIsMobile(): boolean;
|
|
34
34
|
|
|
35
|
-
|
|
35
|
+
declare const POPULAR_ORDER: WalletId[];
|
|
36
|
+
declare const WALLETS: WalletMeta[];
|
|
37
|
+
|
|
38
|
+
export { POPULAR_ORDER as P, WALLETS as W, autoDetectWallet as a, buildDetectedWalletFromProvider as b, connectDetectedWallet as c, createWalletConnectEntry as d, useIsMobile as e, useWagmi as f, useWalletDetection as g, toWalletInterfaceFromDetected as t, useEIP1193 as u };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { D as DetectedWallet, c as WagmiBridge, i as WalletInterFaceAPI, E as EIP1193, a as WalletId, t as EIP6963ProviderDetail, W as WalletMeta } from './manager-DT8enQbE.cjs';
|
|
2
2
|
|
|
3
3
|
/** Try wagmi bridge first (if provided), otherwise return EIP-1193 adapter. */
|
|
4
4
|
declare function connectDetectedWallet(dw: DetectedWallet, opts?: {
|
|
@@ -32,4 +32,7 @@ declare function useWalletDetection(timeoutMs?: number): {
|
|
|
32
32
|
};
|
|
33
33
|
declare function useIsMobile(): boolean;
|
|
34
34
|
|
|
35
|
-
|
|
35
|
+
declare const POPULAR_ORDER: WalletId[];
|
|
36
|
+
declare const WALLETS: WalletMeta[];
|
|
37
|
+
|
|
38
|
+
export { POPULAR_ORDER as P, WALLETS as W, autoDetectWallet as a, buildDetectedWalletFromProvider as b, connectDetectedWallet as c, createWalletConnectEntry as d, useIsMobile as e, useWagmi as f, useWalletDetection as g, toWalletInterfaceFromDetected as t, useEIP1193 as u };
|
package/dist/smart-account.cjs
CHANGED
|
@@ -12265,7 +12265,7 @@ var init_constants = __esm({
|
|
|
12265
12265
|
"src/constants.ts"() {
|
|
12266
12266
|
"use strict";
|
|
12267
12267
|
SDK_NAME = "@trustware/sdk";
|
|
12268
|
-
SDK_VERSION = "1.1.
|
|
12268
|
+
SDK_VERSION = "1.1.11-staging.1";
|
|
12269
12269
|
API_ROOT = "https://bv-staging-api.trustware.io";
|
|
12270
12270
|
API_PREFIX = "/api";
|
|
12271
12271
|
}
|