@miradexio/client 0.1.1 → 0.1.2
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/README.md +57 -292
- package/dist/address/base58.d.ts.map +1 -1
- package/dist/address/base58.js +1 -2
- package/dist/address/base58.js.map +1 -1
- package/dist/address/bech32.d.ts +0 -8
- package/dist/address/bech32.d.ts.map +1 -1
- package/dist/address/bech32.js +3 -9
- package/dist/address/bech32.js.map +1 -1
- package/dist/address/evm.d.ts.map +1 -1
- package/dist/address/evm.js +1 -2
- package/dist/address/evm.js.map +1 -1
- package/dist/address/index.d.ts +0 -6
- package/dist/address/index.d.ts.map +1 -1
- package/dist/address/index.js +6 -9
- package/dist/address/index.js.map +1 -1
- package/dist/address/monero.d.ts +0 -10
- package/dist/address/monero.d.ts.map +1 -1
- package/dist/address/monero.js +4 -10
- package/dist/address/monero.js.map +1 -1
- package/dist/address/polkadot.d.ts +0 -5
- package/dist/address/polkadot.d.ts.map +1 -1
- package/dist/address/polkadot.js +2 -6
- package/dist/address/polkadot.js.map +1 -1
- package/dist/address/ton.d.ts +0 -6
- package/dist/address/ton.d.ts.map +1 -1
- package/dist/address/ton.js +3 -8
- package/dist/address/ton.js.map +1 -1
- package/dist/api/index.d.ts +0 -19
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +18 -37
- package/dist/api/index.js.map +1 -1
- package/dist/atomic-swap/drive.d.ts +0 -13
- package/dist/atomic-swap/drive.d.ts.map +1 -1
- package/dist/atomic-swap/drive.js +66 -111
- package/dist/atomic-swap/drive.js.map +1 -1
- package/dist/atomic-swap/extract.d.ts +0 -23
- package/dist/atomic-swap/extract.d.ts.map +1 -1
- package/dist/atomic-swap/extract.js +6 -16
- package/dist/atomic-swap/extract.js.map +1 -1
- package/dist/atomic-swap/index.d.ts +0 -7
- package/dist/atomic-swap/index.d.ts.map +1 -1
- package/dist/atomic-swap/index.js +1 -7
- package/dist/atomic-swap/index.js.map +1 -1
- package/dist/atomic-swap/monero-sweep/errors.d.ts.map +1 -1
- package/dist/atomic-swap/monero-sweep/errors.js +5 -20
- package/dist/atomic-swap/monero-sweep/errors.js.map +1 -1
- package/dist/atomic-swap/monero-sweep/index.d.ts +0 -13
- package/dist/atomic-swap/monero-sweep/index.d.ts.map +1 -1
- package/dist/atomic-swap/monero-sweep/index.js +30 -56
- package/dist/atomic-swap/monero-sweep/index.js.map +1 -1
- package/dist/atomic-swap/monero-sweep/ring-select.d.ts +0 -4
- package/dist/atomic-swap/monero-sweep/ring-select.d.ts.map +1 -1
- package/dist/atomic-swap/monero-sweep/ring-select.js +9 -21
- package/dist/atomic-swap/monero-sweep/ring-select.js.map +1 -1
- package/dist/atomic-swap/presign.d.ts +0 -63
- package/dist/atomic-swap/presign.d.ts.map +1 -1
- package/dist/atomic-swap/presign.js +30 -90
- package/dist/atomic-swap/presign.js.map +1 -1
- package/dist/atomic-swap/refund.d.ts +0 -18
- package/dist/atomic-swap/refund.d.ts.map +1 -1
- package/dist/atomic-swap/refund.js +16 -32
- package/dist/atomic-swap/refund.js.map +1 -1
- package/dist/atomic-swap/run.d.ts +0 -17
- package/dist/atomic-swap/run.d.ts.map +1 -1
- package/dist/atomic-swap/run.js +11 -25
- package/dist/atomic-swap/run.js.map +1 -1
- package/dist/atomic-swap/snapshot.d.ts +0 -30
- package/dist/atomic-swap/snapshot.d.ts.map +1 -1
- package/dist/atomic-swap/snapshot.js +8 -23
- package/dist/atomic-swap/snapshot.js.map +1 -1
- package/dist/atomic-swap/submit-encsig.d.ts +0 -7
- package/dist/atomic-swap/submit-encsig.d.ts.map +1 -1
- package/dist/atomic-swap/submit-encsig.js +2 -11
- package/dist/atomic-swap/submit-encsig.js.map +1 -1
- package/dist/atomic-swap/types.d.ts +2 -55
- package/dist/atomic-swap/types.d.ts.map +1 -1
- package/dist/atomic-swap/types.js +2 -3
- package/dist/atomic-swap/types.js.map +1 -1
- package/dist/blockchain/quorum-provider.d.ts +0 -15
- package/dist/blockchain/quorum-provider.d.ts.map +1 -1
- package/dist/blockchain/quorum-provider.js +7 -9
- package/dist/blockchain/quorum-provider.js.map +1 -1
- package/dist/cooperative-redeem.d.ts +5 -14
- package/dist/cooperative-redeem.d.ts.map +1 -1
- package/dist/cooperative-redeem.js +3 -20
- package/dist/cooperative-redeem.js.map +1 -1
- package/dist/engine/blockchain-querier.d.ts +0 -22
- package/dist/engine/blockchain-querier.d.ts.map +1 -1
- package/dist/engine/engine-state.d.ts +0 -8
- package/dist/engine/engine-state.d.ts.map +1 -1
- package/dist/engine/engine-state.js.map +1 -1
- package/dist/engine/flow-context.d.ts +0 -20
- package/dist/engine/flow-context.d.ts.map +1 -1
- package/dist/engine/flow-context.js +17 -41
- package/dist/engine/flow-context.js.map +1 -1
- package/dist/engine/flows/atomic-flow.d.ts +0 -28
- package/dist/engine/flows/atomic-flow.d.ts.map +1 -1
- package/dist/engine/flows/atomic-flow.js +64 -121
- package/dist/engine/flows/atomic-flow.js.map +1 -1
- package/dist/engine/flows/swap-flow.d.ts +0 -19
- package/dist/engine/flows/swap-flow.d.ts.map +1 -1
- package/dist/engine/flows/swap-flow.js +41 -83
- package/dist/engine/flows/swap-flow.js.map +1 -1
- package/dist/engine/miradex-engine.d.ts +1 -62
- package/dist/engine/miradex-engine.d.ts.map +1 -1
- package/dist/engine/miradex-engine.js +18 -50
- package/dist/engine/miradex-engine.js.map +1 -1
- package/dist/engine/pipeline.d.ts +0 -11
- package/dist/engine/pipeline.d.ts.map +1 -1
- package/dist/engine/pipeline.js +9 -21
- package/dist/engine/pipeline.js.map +1 -1
- package/dist/engine/platform.d.ts +0 -160
- package/dist/engine/platform.d.ts.map +1 -1
- package/dist/engine/platform.js +2 -0
- package/dist/engine/platform.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -11
- package/dist/index.js.map +1 -1
- package/dist/interfaces/blockchain.d.ts +1 -13
- package/dist/interfaces/blockchain.d.ts.map +1 -1
- package/dist/interfaces/blockchain.js +1 -0
- package/dist/interfaces/blockchain.js.map +1 -1
- package/dist/interfaces/logger.d.ts +0 -6
- package/dist/interfaces/logger.d.ts.map +1 -1
- package/dist/interfaces/logger.js.map +1 -1
- package/dist/lib/bitcoin/deposit-watcher.d.ts +0 -23
- package/dist/lib/bitcoin/deposit-watcher.d.ts.map +1 -1
- package/dist/lib/bitcoin/deposit-watcher.js +7 -31
- package/dist/lib/bitcoin/deposit-watcher.js.map +1 -1
- package/dist/lib/bitcoin/script-hash.d.ts.map +1 -1
- package/dist/lib/bitcoin/script-hash.js +2 -6
- package/dist/lib/bitcoin/script-hash.js.map +1 -1
- package/dist/lib/bitcoin/sweep.d.ts +0 -30
- package/dist/lib/bitcoin/sweep.d.ts.map +1 -1
- package/dist/lib/bitcoin/sweep.js +11 -40
- package/dist/lib/bitcoin/sweep.js.map +1 -1
- package/dist/lib/bitcoin/tx-verify.d.ts +0 -28
- package/dist/lib/bitcoin/tx-verify.d.ts.map +1 -1
- package/dist/lib/bitcoin/tx-verify.js +20 -61
- package/dist/lib/bitcoin/tx-verify.js.map +1 -1
- package/dist/lib/bitcoin/wallet.d.ts +0 -38
- package/dist/lib/bitcoin/wallet.d.ts.map +1 -1
- package/dist/lib/bitcoin/wallet.js +13 -38
- package/dist/lib/bitcoin/wallet.js.map +1 -1
- package/dist/lib/crypto/bytes.d.ts +0 -14
- package/dist/lib/crypto/bytes.d.ts.map +1 -1
- package/dist/lib/crypto/bytes.js +5 -14
- package/dist/lib/crypto/bytes.js.map +1 -1
- package/dist/lib/crypto/errors.d.ts +0 -5
- package/dist/lib/crypto/errors.d.ts.map +1 -1
- package/dist/lib/crypto/errors.js +2 -5
- package/dist/lib/crypto/errors.js.map +1 -1
- package/dist/lib/crypto/libp2p-identity.d.ts +0 -15
- package/dist/lib/crypto/libp2p-identity.d.ts.map +1 -1
- package/dist/lib/crypto/libp2p-identity.js +16 -28
- package/dist/lib/crypto/libp2p-identity.js.map +1 -1
- package/dist/lib/crypto/mnemonic.d.ts +0 -9
- package/dist/lib/crypto/mnemonic.d.ts.map +1 -1
- package/dist/lib/crypto/mnemonic.js +11 -27
- package/dist/lib/crypto/mnemonic.js.map +1 -1
- package/dist/lib/crypto/platform.d.ts +0 -6
- package/dist/lib/crypto/platform.d.ts.map +1 -1
- package/dist/lib/crypto/platform.js +2 -6
- package/dist/lib/crypto/platform.js.map +1 -1
- package/dist/lib/crypto/scalars.d.ts +0 -23
- package/dist/lib/crypto/scalars.d.ts.map +1 -1
- package/dist/lib/crypto/scalars.js +10 -23
- package/dist/lib/crypto/scalars.js.map +1 -1
- package/dist/lib/crypto/types.d.ts +0 -4
- package/dist/lib/crypto/types.d.ts.map +1 -1
- package/dist/lib/crypto/wasm.d.ts +0 -23
- package/dist/lib/crypto/wasm.d.ts.map +1 -1
- package/dist/lib/crypto/wasm.js +9 -16
- package/dist/lib/crypto/wasm.js.map +1 -1
- package/dist/lib/default-config.d.ts +1 -59
- package/dist/lib/default-config.d.ts.map +1 -1
- package/dist/lib/default-config.js +22 -61
- package/dist/lib/default-config.js.map +1 -1
- package/dist/lib/errors.d.ts +0 -54
- package/dist/lib/errors.d.ts.map +1 -1
- package/dist/lib/errors.js +12 -35
- package/dist/lib/errors.js.map +1 -1
- package/dist/lib/keystore.d.ts +0 -24
- package/dist/lib/keystore.d.ts.map +1 -1
- package/dist/lib/keystore.js +3 -10
- package/dist/lib/keystore.js.map +1 -1
- package/dist/lib/monero/output-scanner.d.ts +0 -18
- package/dist/lib/monero/output-scanner.d.ts.map +1 -1
- package/dist/lib/monero/output-scanner.js +17 -40
- package/dist/lib/monero/output-scanner.js.map +1 -1
- package/dist/lib/monero/rpc.d.ts +0 -64
- package/dist/lib/monero/rpc.d.ts.map +1 -1
- package/dist/lib/monero/rpc.js +17 -59
- package/dist/lib/monero/rpc.js.map +1 -1
- package/dist/lib/monero/verify-lock.d.ts +0 -12
- package/dist/lib/monero/verify-lock.d.ts.map +1 -1
- package/dist/lib/monero/verify-lock.js +9 -24
- package/dist/lib/monero/verify-lock.js.map +1 -1
- package/dist/lib/monero/verify-sweep.d.ts +0 -20
- package/dist/lib/monero/verify-sweep.d.ts.map +1 -1
- package/dist/lib/monero/verify-sweep.js +7 -25
- package/dist/lib/monero/verify-sweep.js.map +1 -1
- package/dist/lib/pow-solver.d.ts.map +1 -1
- package/dist/lib/pow-solver.js +3 -8
- package/dist/lib/pow-solver.js.map +1 -1
- package/dist/lib/retry.d.ts +7 -64
- package/dist/lib/retry.d.ts.map +1 -1
- package/dist/lib/retry.js +13 -13
- package/dist/lib/retry.js.map +1 -1
- package/dist/portable.d.ts.map +1 -1
- package/dist/portable.js +3 -4
- package/dist/portable.js.map +1 -1
- package/dist/quote-binding.d.ts +0 -13
- package/dist/quote-binding.d.ts.map +1 -1
- package/dist/quote-binding.js +3 -18
- package/dist/quote-binding.js.map +1 -1
- package/dist/swap-executor.d.ts +1 -5
- package/dist/swap-executor.d.ts.map +1 -1
- package/dist/swap-executor.js +1 -1
- package/dist/swap-executor.js.map +1 -1
- package/dist/types/api.d.ts +0 -6
- package/dist/types/api.d.ts.map +1 -1
- package/dist/types/api.js +6 -9
- package/dist/types/api.js.map +1 -1
- package/dist/types/errors.d.ts +0 -7
- package/dist/types/errors.d.ts.map +1 -1
- package/dist/types/errors.js +2 -7
- package/dist/types/errors.js.map +1 -1
- package/dist/types/index.js +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/keys.d.ts +0 -15
- package/dist/types/keys.d.ts.map +1 -1
- package/dist/types/protocol.d.ts +0 -51
- package/dist/types/protocol.d.ts.map +1 -1
- package/dist/types/protocol.js +3 -8
- package/dist/types/protocol.js.map +1 -1
- package/dist/types/status.d.ts.map +1 -1
- package/dist/types/status.js +9 -14
- package/dist/types/status.js.map +1 -1
- package/dist/types/verification.d.ts +0 -10
- package/dist/types/verification.d.ts.map +1 -1
- package/dist/types/verification.js +7 -15
- package/dist/types/verification.js.map +1 -1
- package/dist/verification/chainflip-networks.d.ts +2 -35
- package/dist/verification/chainflip-networks.d.ts.map +1 -1
- package/dist/verification/chainflip-networks.js +12 -4
- package/dist/verification/chainflip-networks.js.map +1 -1
- package/dist/verification/chainflip.d.ts +0 -40
- package/dist/verification/chainflip.d.ts.map +1 -1
- package/dist/verification/chainflip.js +49 -129
- package/dist/verification/chainflip.js.map +1 -1
- package/dist/verification/constants.d.ts +0 -40
- package/dist/verification/constants.d.ts.map +1 -1
- package/dist/verification/constants.js +14 -40
- package/dist/verification/constants.js.map +1 -1
- package/dist/verification/index.d.ts +0 -26
- package/dist/verification/index.d.ts.map +1 -1
- package/dist/verification/index.js +8 -12
- package/dist/verification/index.js.map +1 -1
- package/dist/verification/memo.d.ts +0 -15
- package/dist/verification/memo.d.ts.map +1 -1
- package/dist/verification/memo.js +9 -27
- package/dist/verification/memo.js.map +1 -1
- package/dist/verification/near-intents.d.ts +0 -63
- package/dist/verification/near-intents.d.ts.map +1 -1
- package/dist/verification/near-intents.js +25 -67
- package/dist/verification/near-intents.js.map +1 -1
- package/dist/verification/rate-oracle.d.ts +0 -22
- package/dist/verification/rate-oracle.d.ts.map +1 -1
- package/dist/verification/rate-oracle.js +6 -11
- package/dist/verification/rate-oracle.js.map +1 -1
- package/dist/verification/thorchain-networks.d.ts +0 -27
- package/dist/verification/thorchain-networks.d.ts.map +1 -1
- package/dist/verification/thorchain-networks.js +13 -15
- package/dist/verification/thorchain-networks.js.map +1 -1
- package/dist/verification/thorchain.d.ts +0 -30
- package/dist/verification/thorchain.d.ts.map +1 -1
- package/dist/verification/thorchain.js +24 -47
- package/dist/verification/thorchain.js.map +1 -1
- package/dist/wasm-pins.d.ts +3 -3
- package/dist/wasm-pins.js +1 -1
- package/dist/wire/near-intents.zod.d.ts +0 -27
- package/dist/wire/near-intents.zod.d.ts.map +1 -1
- package/dist/wire/near-intents.zod.js +15 -23
- package/dist/wire/near-intents.zod.js.map +1 -1
- package/dist/wire/server/action.zod.d.ts +0 -10
- package/dist/wire/server/action.zod.d.ts.map +1 -1
- package/dist/wire/server/action.zod.js +8 -14
- package/dist/wire/server/action.zod.js.map +1 -1
- package/dist/wire/server/common.zod.d.ts +0 -13
- package/dist/wire/server/common.zod.d.ts.map +1 -1
- package/dist/wire/server/common.zod.js +6 -14
- package/dist/wire/server/common.zod.js.map +1 -1
- package/dist/wire/server/swap.zod.d.ts +0 -42
- package/dist/wire/server/swap.zod.d.ts.map +1 -1
- package/dist/wire/server/swap.zod.js +12 -26
- package/dist/wire/server/swap.zod.js.map +1 -1
- package/dist/wire/thorchain.zod.d.ts +0 -8
- package/dist/wire/thorchain.zod.d.ts.map +1 -1
- package/dist/wire/thorchain.zod.js +3 -8
- package/dist/wire/thorchain.zod.js.map +1 -1
- package/package.json +4 -4
- package/wasm/miradex-rust/README.md +3 -4
- package/wasm/miradex-rust/miradex_rust.d.ts +4 -6
- package/wasm/miradex-rust/miradex_rust.js +4 -6
- package/wasm/miradex-rust/miradex_rust_bg.wasm +0 -0
package/dist/lib/retry.d.ts
CHANGED
|
@@ -1,65 +1,20 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Cross-platform retry helper.
|
|
3
|
-
*
|
|
4
|
-
* Wraps an async operation and retries it according to the {@link ErrorCategory}
|
|
5
|
-
* derived from each thrown value. Network and server errors retry indefinitely
|
|
6
|
-
* with exponential backoff capped at {@link RetryOptions.maxBackoffMs}; bounded
|
|
7
|
-
* categories retry at most {@link RetryOptions.maxBoundedRetries} times before
|
|
8
|
-
* surfacing the error; fatal categories propagate immediately.
|
|
9
|
-
*
|
|
10
|
-
* Cancellation is honoured via an optional {@link AbortSignal}. The signal is
|
|
11
|
-
* checked before every attempt and during every backoff sleep — a caller that
|
|
12
|
-
* aborts mid-retry sees a {@link SwapCancelledError} within ms, never the
|
|
13
|
-
* original failure that triggered the retry.
|
|
14
|
-
*
|
|
15
|
-
* Cross-platform: only `setTimeout` / `clearTimeout` and `AbortSignal` are
|
|
16
|
-
* used. Works in Node 20+ and modern browsers without polyfills.
|
|
17
|
-
*/
|
|
18
1
|
import type { Logger } from '../interfaces/logger.js';
|
|
19
2
|
import { type ErrorCategory } from './errors.js';
|
|
20
3
|
export interface RetryOptions {
|
|
21
|
-
/**
|
|
22
|
-
* Cap on retries for `client-bounded` and `unknown` categories.
|
|
23
|
-
* After this many failures the original error is rethrown.
|
|
24
|
-
* Default: 3.
|
|
25
|
-
*/
|
|
4
|
+
/** Cap on retries for client-bounded / unknown. Default 3. */
|
|
26
5
|
readonly maxBoundedRetries?: number;
|
|
27
|
-
/**
|
|
28
|
-
* Initial backoff in ms. Each subsequent attempt doubles the wait
|
|
29
|
-
* (capped at {@link maxBackoffMs}).
|
|
30
|
-
* Default: 500.
|
|
31
|
-
*/
|
|
6
|
+
/** Initial backoff in ms; doubles each attempt up to maxBackoffMs. Default 500. */
|
|
32
7
|
readonly baseMs?: number;
|
|
33
|
-
/**
|
|
34
|
-
* Upper bound for the per-retry backoff sleep, in ms. Network / server /
|
|
35
|
-
* rate-limit errors retry indefinitely; this caps how long each successive
|
|
36
|
-
* sleep can grow to before plateauing.
|
|
37
|
-
* Default: 60000 (one minute).
|
|
38
|
-
*/
|
|
8
|
+
/** Cap for per-retry sleep, in ms. Default 60_000. */
|
|
39
9
|
readonly maxBackoffMs?: number;
|
|
40
|
-
/**
|
|
41
|
-
* Optional cancellation signal. When aborted, the in-flight wait or the
|
|
42
|
-
* next attempt rejects with {@link SwapCancelledError}.
|
|
43
|
-
*/
|
|
10
|
+
/** When aborted, the next sleep / attempt rejects with SwapCancelledError. */
|
|
44
11
|
readonly signal?: AbortSignal;
|
|
45
|
-
/** Optional structured logger. Defaults to a no-op. */
|
|
46
12
|
readonly logger?: Logger;
|
|
47
|
-
/**
|
|
48
|
-
* Diagnostic label appended to log lines. Use the call site / endpoint
|
|
49
|
-
* (e.g. `"GET /api/v1/swap/SWP-…"`).
|
|
50
|
-
* Default: `"op"`.
|
|
51
|
-
*/
|
|
13
|
+
/** Label appended to log lines (call site / endpoint). Default 'op'. */
|
|
52
14
|
readonly label?: string;
|
|
53
|
-
/**
|
|
54
|
-
* Optional override for the classifier. Useful when a caller wants to
|
|
55
|
-
* promote a known transient string to `network`, or treat a 404 as
|
|
56
|
-
* `client-fatal` instead of `client-bounded`.
|
|
57
|
-
*/
|
|
15
|
+
/** Override the default classifier (e.g. promote a transient string to 'network'). */
|
|
58
16
|
readonly classify?: (err: unknown) => ErrorCategory;
|
|
59
|
-
/**
|
|
60
|
-
* Hook called once per retry, after classification, before backoff. Lets
|
|
61
|
-
* callers integrate with metrics / UI without re-implementing the loop.
|
|
62
|
-
*/
|
|
17
|
+
/** Hook fired once per retry after classification, before backoff. */
|
|
63
18
|
readonly onRetry?: (info: RetryInfo) => void;
|
|
64
19
|
}
|
|
65
20
|
export interface RetryInfo {
|
|
@@ -69,18 +24,6 @@ export interface RetryInfo {
|
|
|
69
24
|
readonly error: unknown;
|
|
70
25
|
readonly isUnbounded: boolean;
|
|
71
26
|
}
|
|
72
|
-
/**
|
|
73
|
-
* Run `fn` with retries until it succeeds, the signal aborts, or the policy
|
|
74
|
-
* rejects further attempts. Returns the resolved value of the first
|
|
75
|
-
* successful call.
|
|
76
|
-
*
|
|
77
|
-
* @example
|
|
78
|
-
* await withRetry(
|
|
79
|
-
* () => api.executeAction(swapId, { type: 'submit_encsig', tx_redeem_encsig }),
|
|
80
|
-
* { logger, label: 'submit_encsig', signal: engineSignal },
|
|
81
|
-
* );
|
|
82
|
-
*/
|
|
83
27
|
export declare function withRetry<T>(fn: (attempt: number) => Promise<T>, options?: RetryOptions): Promise<T>;
|
|
84
|
-
/** Public for tests / callers that want the same backoff schedule. */
|
|
85
28
|
export declare function computeBackoffMs(retryNumber: number, baseMs: number, maxMs: number): number;
|
|
86
29
|
//# sourceMappingURL=retry.d.ts.map
|
package/dist/lib/retry.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/lib/retry.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/lib/retry.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,EAIL,KAAK,aAAa,EACnB,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,YAAY;IAC3B,8DAA8D;IAC9D,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,mFAAmF;IACnF,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,sDAAsD;IACtD,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,8EAA8E;IAC9E,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,wEAAwE;IACxE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,sFAAsF;IACtF,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,aAAa,CAAC;IACpD,sEAAsE;IACtE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;CAC9C;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;CAC/B;AAcD,wBAAsB,SAAS,CAAC,CAAC,EAC/B,EAAE,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,EACnC,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,CAAC,CAAC,CA2EZ;AAGD,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAI3F"}
|
package/dist/lib/retry.js
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
+
// Retries by ErrorCategory. network/server retry forever with exponential
|
|
2
|
+
// backoff capped at maxBackoffMs; bounded categories retry up to
|
|
3
|
+
// maxBoundedRetries; fatal categories propagate. AbortSignal honoured before
|
|
4
|
+
// every attempt and during every sleep — abort surfaces SwapCancelledError
|
|
5
|
+
// within ms.
|
|
1
6
|
import { noopLogger } from '../interfaces/logger.js';
|
|
2
7
|
import { SwapCancelledError, classifyError, errorMessage, } from './errors.js';
|
|
3
8
|
const DEFAULT_MAX_BOUNDED = 3;
|
|
4
9
|
const DEFAULT_BASE_MS = 500;
|
|
5
10
|
const DEFAULT_MAX_BACKOFF_MS = 60_000;
|
|
6
|
-
|
|
11
|
+
// Cap the exponent so 2 ** n can't overflow Number on a long retry chain.
|
|
7
12
|
const MAX_EXPONENT = 30;
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
* await withRetry(
|
|
15
|
-
* () => api.executeAction(swapId, { type: 'submit_encsig', tx_redeem_encsig }),
|
|
16
|
-
* { logger, label: 'submit_encsig', signal: engineSignal },
|
|
17
|
-
* );
|
|
18
|
-
*/
|
|
13
|
+
// Returns the first successful resolution of fn, retrying per the policy.
|
|
14
|
+
// Example:
|
|
15
|
+
// await withRetry(
|
|
16
|
+
// () => api.executeAction(swapId, { type: 'submit_encsig', tx_redeem_encsig }),
|
|
17
|
+
// { logger, label: 'submit_encsig', signal: engineSignal },
|
|
18
|
+
// );
|
|
19
19
|
export async function withRetry(fn, options = {}) {
|
|
20
20
|
const maxBounded = options.maxBoundedRetries ?? DEFAULT_MAX_BOUNDED;
|
|
21
21
|
const baseMs = options.baseMs ?? DEFAULT_BASE_MS;
|
|
@@ -78,7 +78,7 @@ export async function withRetry(fn, options = {}) {
|
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
|
-
|
|
81
|
+
// Exposed for tests and callers that want the same schedule.
|
|
82
82
|
export function computeBackoffMs(retryNumber, baseMs, maxMs) {
|
|
83
83
|
if (retryNumber <= 0)
|
|
84
84
|
return 0;
|
package/dist/lib/retry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retry.js","sourceRoot":"","sources":["../../src/lib/retry.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"retry.js","sourceRoot":"","sources":["../../src/lib/retry.ts"],"names":[],"mappings":"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"}
|
package/dist/portable.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portable.d.ts","sourceRoot":"","sources":["../src/portable.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"portable.d.ts","sourceRoot":"","sources":["../src/portable.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAEzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,YAAY,EACV,UAAU,EACV,cAAc,EACd,YAAY,EACZ,SAAS,EACT,UAAU,EACV,OAAO,EACP,aAAa,EACb,YAAY,EACZ,QAAQ,EACR,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,cAAc,GACf,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACxE,YAAY,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,YAAY,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC7E,YAAY,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,YAAY,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACzF,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtF,OAAO,EACL,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,cAAc,GACf,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE1F,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,YAAY,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,YAAY,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,YAAY,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC"}
|
package/dist/portable.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
// Portable subset of
|
|
2
|
-
//
|
|
3
|
-
//
|
|
4
|
-
// the main barrel ('@miradex/client').
|
|
1
|
+
// Portable subset of @miradexio/client. Browser / Electron-renderer / RN /
|
|
2
|
+
// any runtime without Node built-ins. Pure-TS only (no fs/net deps); server
|
|
3
|
+
// and signing code live in the main barrel.
|
|
5
4
|
export { swapPipelineStage, atomicPipelineStage, computeDoneStages, mapServerStatus, PIPELINE_LABELS, PIPELINE_LABELS_CANCEL, PIPELINE_LABELS_REFUND, PIPELINE_LABELS_EXPIRED, } from './engine/pipeline.js';
|
|
6
5
|
export { TERMINAL_STATUSES } from './types/index.js';
|
|
7
6
|
export { createInitialEngineState } from './engine/engine-state.js';
|
package/dist/portable.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portable.js","sourceRoot":"","sources":["../src/portable.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"portable.js","sourceRoot":"","sources":["../src/portable.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,4EAA4E;AAC5E,4CAA4C;AAE5C,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,sBAAsB,EACtB,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAmCpE,OAAO,EACL,eAAe,EACf,YAAY,EACZ,kBAAkB,EAClB,cAAc,GACf,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC"}
|
package/dist/quote-binding.d.ts
CHANGED
|
@@ -12,20 +12,7 @@ export interface AcceptedQuote {
|
|
|
12
12
|
readonly quoteHash: string;
|
|
13
13
|
}
|
|
14
14
|
export declare const QUOTE_MAX_AGE_MS: number;
|
|
15
|
-
/**
|
|
16
|
-
* Compute the canonical SHA-256 hash over an accepted quote. The hash is
|
|
17
|
-
* deterministic under key-order normalisation; consumers may compare two
|
|
18
|
-
* quotes for strict equality via their hashes.
|
|
19
|
-
*/
|
|
20
15
|
export declare function hashQuote(q: Omit<AcceptedQuote, 'quoteHash'>): string;
|
|
21
|
-
/**
|
|
22
|
-
* Assert a quote hashes to the same value the consumer recorded at accept
|
|
23
|
-
* time. Throws `E_QUOTE_TAMPERED` on mismatch.
|
|
24
|
-
*/
|
|
25
16
|
export declare function requireQuoteHashMatches(accepted: AcceptedQuote, current: Omit<AcceptedQuote, 'quoteHash'>): void;
|
|
26
|
-
/**
|
|
27
|
-
* Assert the accepted quote is still within `QUOTE_MAX_AGE_MS` of now.
|
|
28
|
-
* Throws `E_QUOTE_STALE` when expired.
|
|
29
|
-
*/
|
|
30
17
|
export declare function requireQuoteFresh(accepted: AcceptedQuote, nowEpochMs?: number): void;
|
|
31
18
|
//# sourceMappingURL=quote-binding.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quote-binding.d.ts","sourceRoot":"","sources":["../src/quote-binding.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"quote-binding.d.ts","sourceRoot":"","sources":["../src/quote-binding.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAMrD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,eAAO,MAAM,gBAAgB,QAAgB,CAAC;AAG9C,wBAAgB,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,GAAG,MAAM,CAIrE;AAGD,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,aAAa,EACvB,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,GACxC,IAAI,CAQN;AAGD,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,aAAa,EACvB,UAAU,GAAE,MAAmB,GAC9B,IAAI,CAQN"}
|
package/dist/quote-binding.js
CHANGED
|
@@ -1,36 +1,21 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Quote binding: every AcceptedQuote is hashed canonically at accept time and
|
|
3
|
-
* re-hashed just before funding. Prevents the server from changing the
|
|
4
|
-
* expected output between accept and funding (AV-D.4 / Part VIII §8.4.1).
|
|
5
|
-
*/
|
|
6
1
|
import { sha256 } from '@noble/hashes/sha2.js';
|
|
7
2
|
import { bytesToHex } from '@noble/hashes/utils.js';
|
|
8
3
|
import { VerificationError } from './types/index.js';
|
|
9
4
|
export const QUOTE_MAX_AGE_MS = 5 * 60 * 1000;
|
|
10
|
-
|
|
11
|
-
* Compute the canonical SHA-256 hash over an accepted quote. The hash is
|
|
12
|
-
* deterministic under key-order normalisation; consumers may compare two
|
|
13
|
-
* quotes for strict equality via their hashes.
|
|
14
|
-
*/
|
|
5
|
+
// SHA-256 over the quote with sorted keys, so two equivalent quotes hash equal.
|
|
15
6
|
export function hashQuote(q) {
|
|
16
7
|
const keys = Object.keys(q).sort();
|
|
17
8
|
const canonical = JSON.stringify(q, keys);
|
|
18
9
|
return bytesToHex(sha256(new TextEncoder().encode(canonical)));
|
|
19
10
|
}
|
|
20
|
-
|
|
21
|
-
* Assert a quote hashes to the same value the consumer recorded at accept
|
|
22
|
-
* time. Throws `E_QUOTE_TAMPERED` on mismatch.
|
|
23
|
-
*/
|
|
11
|
+
// Throws E_QUOTE_TAMPERED on mismatch.
|
|
24
12
|
export function requireQuoteHashMatches(accepted, current) {
|
|
25
13
|
const currentHash = hashQuote(current);
|
|
26
14
|
if (currentHash !== accepted.quoteHash) {
|
|
27
15
|
throw new VerificationError('E_QUOTE_TAMPERED', `quote hash mismatch: accepted=${accepted.quoteHash.slice(0, 16)}..., current=${currentHash.slice(0, 16)}...`);
|
|
28
16
|
}
|
|
29
17
|
}
|
|
30
|
-
|
|
31
|
-
* Assert the accepted quote is still within `QUOTE_MAX_AGE_MS` of now.
|
|
32
|
-
* Throws `E_QUOTE_STALE` when expired.
|
|
33
|
-
*/
|
|
18
|
+
// Throws E_QUOTE_STALE if accepted more than QUOTE_MAX_AGE_MS ago.
|
|
34
19
|
export function requireQuoteFresh(accepted, nowEpochMs = Date.now()) {
|
|
35
20
|
const age = nowEpochMs - accepted.acceptedAtEpochMs;
|
|
36
21
|
if (age > QUOTE_MAX_AGE_MS) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quote-binding.js","sourceRoot":"","sources":["../src/quote-binding.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"quote-binding.js","sourceRoot":"","sources":["../src/quote-binding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAkBrD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAE9C,gFAAgF;AAChF,MAAM,UAAU,SAAS,CAAC,CAAmC;IAC3D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACnC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC1C,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AACjE,CAAC;AAED,uCAAuC;AACvC,MAAM,UAAU,uBAAuB,CACrC,QAAuB,EACvB,OAAyC;IAEzC,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IACvC,IAAI,WAAW,KAAK,QAAQ,CAAC,SAAS,EAAE,CAAC;QACvC,MAAM,IAAI,iBAAiB,CACzB,kBAAkB,EAClB,iCAAiC,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAC9G,CAAC;IACJ,CAAC;AACH,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,iBAAiB,CAC/B,QAAuB,EACvB,aAAqB,IAAI,CAAC,GAAG,EAAE;IAE/B,MAAM,GAAG,GAAG,UAAU,GAAG,QAAQ,CAAC,iBAAiB,CAAC;IACpD,IAAI,GAAG,GAAG,gBAAgB,EAAE,CAAC;QAC3B,MAAM,IAAI,iBAAiB,CACzB,eAAe,EACf,aAAa,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,iBAAiB,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAC3F,CAAC;IACJ,CAAC;AACH,CAAC"}
|
package/dist/swap-executor.d.ts
CHANGED
|
@@ -28,11 +28,7 @@ export declare class SwapExecutor {
|
|
|
28
28
|
fromChain?: string;
|
|
29
29
|
toChain?: string;
|
|
30
30
|
slippageBps?: number;
|
|
31
|
-
/**
|
|
32
|
-
* Opt-in escape hatch for providers that don't expose a refund-address
|
|
33
|
-
* binding. Setting this to `true` logs a security warning and lets the
|
|
34
|
-
* swap proceed without refund-address assertion.
|
|
35
|
-
*/
|
|
31
|
+
/** Opt-in: skip the refundAddress check for providers without refund binding. */
|
|
36
32
|
acknowledgedNoRefundAddress?: boolean;
|
|
37
33
|
}, powHeader?: string): Promise<SwapResult>;
|
|
38
34
|
executeAtomicSwap(params: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swap-executor.d.ts","sourceRoot":"","sources":["../src/swap-executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAEV,UAAU,EACV,kBAAkB,EAClB,UAAU,EACV,YAAY,EAEb,MAAM,kBAAkB,CAAC;AAM1B,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACjD,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;CACtC;AAED,qBAAa,YAAY;IAErB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAFP,GAAG,EAAE,SAAS,EACd,cAAc,SAAQ,EACtB,OAAO,GAAE,OAAO,UAAU,CAAC,KAAwB;IAGhE,WAAW,CACf,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB
|
|
1
|
+
{"version":3,"file":"swap-executor.d.ts","sourceRoot":"","sources":["../src/swap-executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAEV,UAAU,EACV,kBAAkB,EAClB,UAAU,EACV,YAAY,EAEb,MAAM,kBAAkB,CAAC;AAM1B,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,YAAY,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACjD,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;CACtC;AAED,qBAAa,YAAY;IAErB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAFP,GAAG,EAAE,SAAS,EACd,cAAc,SAAQ,EACtB,OAAO,GAAE,OAAO,UAAU,CAAC,KAAwB;IAGhE,WAAW,CACf,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,iFAAiF;QACjF,2BAA2B,CAAC,EAAE,OAAO,CAAC;KACvC,EACD,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,UAAU,CAAC;IA8BhB,iBAAiB,CAAC,MAAM,EAAE;QAC9B,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,MAAM,CAAC;QACpB,aAAa,EAAE,MAAM,CAAC;KACvB,GAAG,OAAO,CAAC,UAAU,CAAC;IAsDjB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI9D,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI7D,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIjD,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIvE,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIrE,SAAS,CACb,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,SAAS,UAAU,EAAE,EAC9B,SAAS,SAAU,EACnB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,EACrC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC;YAuBR,MAAM;CAuCrB"}
|
package/dist/swap-executor.js
CHANGED
|
@@ -102,7 +102,7 @@ export class SwapExecutor {
|
|
|
102
102
|
onPoll?.(detail);
|
|
103
103
|
if (targetSet.has(detail.status))
|
|
104
104
|
return detail;
|
|
105
|
-
//
|
|
105
|
+
// Stop early when the swap needs user action.
|
|
106
106
|
const actionType = detail.requiredAction?.type;
|
|
107
107
|
if (actionType === 'cancel' || actionType === 'refund' || actionType === 'sweep') {
|
|
108
108
|
return detail;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swap-executor.js","sourceRoot":"","sources":["../src/swap-executor.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAevC,MAAM,OAAO,YAAY;IAEJ;IACA;IACA;IAHnB,YACmB,GAAc,EACd,iBAAiB,KAAK,EACtB,UAAmC,UAAU,CAAC,KAAK;QAFnD,QAAG,GAAH,GAAG,CAAW;QACd,mBAAc,GAAd,cAAc,CAAQ;QACtB,YAAO,GAAP,OAAO,CAA4C;IACnE,CAAC;IAEJ,KAAK,CAAC,WAAW,CACf,
|
|
1
|
+
{"version":3,"file":"swap-executor.js","sourceRoot":"","sources":["../src/swap-executor.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC9F,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAevC,MAAM,OAAO,YAAY;IAEJ;IACA;IACA;IAHnB,YACmB,GAAc,EACd,iBAAiB,KAAK,EACtB,UAAmC,UAAU,CAAC,KAAK;QAFnD,QAAG,GAAH,GAAG,CAAW;QACd,mBAAc,GAAd,cAAc,CAAQ;QACtB,YAAO,GAAP,OAAO,CAA4C;IACnE,CAAC;IAEJ,KAAK,CAAC,WAAW,CACf,MAaC,EACD,SAAkB;QAElB,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,CAAC,MAAM,CAAC,2BAA2B,EAAE,CAAC;YACjE,MAAM,IAAI,iBAAiB,CACzB,+BAA+B,EAC/B,6EAA6E,CAC9E,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC1D,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,EAAE,CAAC;YACzD,MAAM,IAAI,iBAAiB,CACzB,wBAAwB,EACxB,4BAA4B,IAAI,CAAC,QAAQ,sBAAsB,MAAM,CAAC,QAAQ,EAAE,CACjF,CAAC;QACJ,CAAC;QACD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAE3C,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,UAAU;YACvB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,cAAc,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI;YACzD,YAAY,EAAE,EAAE;YAChB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,SAAS;SAC7C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,MAIvB;QACC,IAAI,CAAC,iBAAiB,EAAE,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,IAAI,GAAG,kBAAkB,EAAE,CAAC;QAClC,MAAM,IAAI,GAAmB;YAC3B,IAAI,EAAE,KAAK;YACX,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,QAAQ,EAAE,YAAY;YACtB,QAAQ,EAAE;gBACR,IAAI,EAAE,YAAY;gBAClB,UAAU,EAAE;oBACV,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,CAAC,EAAE,IAAI,CAAC,CAAC;iBACV;aACF;SACF,CAAC;QAEF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,IAAI,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;YACnC,MAAM,IAAI,iBAAiB,CACzB,wBAAwB,EACxB,4BAA4B,IAAI,CAAC,QAAQ,6BAA6B,CACvE,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GACX,IAAI,CAAC,MAAM,KAAK,cAAc;YAC5B,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,kBAAkB,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;YAClF,CAAC,CAAC,IAAI,CAAC;QAEX,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAE7E,OAAO;YACL,MAAM,EAAE,OAAO,CAAC,UAAU;YAC1B,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,QAAQ,EAAE,YAAY;YACtB,cAAc,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI;YAC5D,YAAY,EAAE,EAAE;YAChB,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;YAC5C,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,SAAS;SAChD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,MAAc,EAAE,UAAkB;QAC/C,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAc,EAAE,MAAe;QAC9C,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAAc;QAClC,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,OAAO,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAAc,EAAE,YAAoB;QACxD,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,YAAY,EAAE,EAAE,OAAO,CAAC,CAAC;IAC3F,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAAc,EAAE,WAAmB;QACtD,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,CAAC;IAC5F,CAAC;IAED,KAAK,CAAC,SAAS,CACb,MAAc,EACd,OAA8B,EAC9B,SAAS,GAAG,OAAO,EACnB,MAAqC,EACrC,MAAoB;QAEpB,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC;QAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QAExC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;YAC7B,IAAI,MAAM,EAAE,OAAO;gBAAE,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAE3D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YACpD,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC;YACjB,IAAI,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC;gBAAE,OAAO,MAAM,CAAC;YAEhD,8CAA8C;YAC9C,MAAM,UAAU,GAAG,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC;YAC/C,IAAI,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;gBACjF,OAAO,MAAM,CAAC;YAChB,CAAC;YAED,MAAM,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;QAC3C,CAAC;QAED,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IAEO,KAAK,CAAC,MAAM,CAClB,IAKC,EACD,MAOC;QAED,IAAI,IAAI,CAAC,cAAc,KAAK,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;YAC/D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,oBAAoB,CAAC;YAC1B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,OAAO,EAAE,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,OAAO,IAAI,EAAE;YAC1C,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;YAC3B,QAAQ,EAAE,oBAAoB,CAAC,IAAI,CAAC,YAAY,CAAC;gBAC/C,CAAC,CAAC;oBACE,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;oBAC5B,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC,YAAY;oBAC5C,eAAe,EAAE,IAAI,CAAC,YAAY,CAAC,eAAe;iBACnD;gBACH,CAAC,CAAC,SAAS;YACb,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,IAAI,SAAS;YACtD,mBAAmB,EAAE,MAAM,CAAC,WAAW;YACvC,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC,CAAC;IACL,CAAC;CACF"}
|
package/dist/types/api.d.ts
CHANGED
|
@@ -1,11 +1,5 @@
|
|
|
1
1
|
import type { SwapStatus, SwapDetailProtocolData } from '../wire/server/index.js';
|
|
2
|
-
/**
|
|
3
|
-
* Unified protocol data shape used by the engine during atomic-swap state
|
|
4
|
-
* tracking. Directly typed from the swapDetailProtocolDataSchema so shape
|
|
5
|
-
* drift from the server surfaces as a SCHEMA_MISMATCH at the API boundary.
|
|
6
|
-
*/
|
|
7
2
|
export type ProtocolData = SwapDetailProtocolData;
|
|
8
|
-
/** Type guard for the atomic-swap protocol shape (psbt + lock + timelock). */
|
|
9
3
|
export declare function isAtomicProtocolData(pd: unknown): pd is SwapDetailProtocolData & {
|
|
10
4
|
psbt: string;
|
|
11
5
|
lock_address: string;
|
package/dist/types/api.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/types/api.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/types/api.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAElF,MAAM,MAAM,YAAY,GAAG,sBAAsB,CAAC;AAGlD,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,OAAO,GACV,EAAE,IAAI,sBAAsB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;CACzB,CAQA;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC"}
|
package/dist/types/api.js
CHANGED
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
// Client-side types that
|
|
2
|
-
//
|
|
3
|
-
//
|
|
4
|
-
//
|
|
5
|
-
// -
|
|
6
|
-
//
|
|
7
|
-
// tracks during atomic-swap state transitions, sourced from the
|
|
8
|
-
// swapDetailProtocolDataSchema.
|
|
9
|
-
/** Type guard for the atomic-swap protocol shape (psbt + lock + timelock). */
|
|
1
|
+
// Client-side types that aren't server-response shapes.
|
|
2
|
+
// ProtocolData / isAtomicProtocolData - engine's view of swap protocol data,
|
|
3
|
+
// sourced from swapDetailProtocolDataSchema
|
|
4
|
+
// so shape drift surfaces as SCHEMA_MISMATCH
|
|
5
|
+
// HistoryEntry - client-side history-store row (vs. recents)
|
|
6
|
+
// psbt + lock_address + timelock_blocks present.
|
|
10
7
|
export function isAtomicProtocolData(pd) {
|
|
11
8
|
if (!pd || typeof pd !== 'object')
|
|
12
9
|
return false;
|
package/dist/types/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/types/api.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/types/api.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,+EAA+E;AAC/E,oFAAoF;AACpF,qFAAqF;AACrF,sFAAsF;AAMtF,iDAAiD;AACjD,MAAM,UAAU,oBAAoB,CAClC,EAAW;IAMX,IAAI,CAAC,EAAE,IAAI,OAAO,EAAE,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAChD,MAAM,GAAG,GAAG,EAA6B,CAAC;IAC1C,OAAO,CACL,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ;QAC5B,OAAO,GAAG,CAAC,YAAY,KAAK,QAAQ;QACpC,OAAO,GAAG,CAAC,eAAe,KAAK,QAAQ,CACxC,CAAC;AACJ,CAAC"}
|
package/dist/types/errors.d.ts
CHANGED
|
@@ -1,10 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Canonical error codes emitted by the client. Every `VerificationError` and
|
|
3
|
-
* `ProtocolError` constructs with one of these. Consumers switch on `code`
|
|
4
|
-
* to produce stable UI.
|
|
5
|
-
*
|
|
6
|
-
* @see docs/ERROR-CODES.md for the human-readable reference.
|
|
7
|
-
*/
|
|
8
1
|
export declare const ERROR_CODES: {
|
|
9
2
|
readonly E_REDEEM_DIGEST_MISMATCH: "Local redeem digest differs from sidecar claim";
|
|
10
3
|
readonly E_LOCK_ADDR_MISMATCH: "Derived P2WSH address differs from sidecar claim";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/types/errors.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/types/errors.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsFd,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,WAAW,CAAC"}
|
package/dist/types/errors.js
CHANGED
|
@@ -1,10 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
* `ProtocolError` constructs with one of these. Consumers switch on `code`
|
|
4
|
-
* to produce stable UI.
|
|
5
|
-
*
|
|
6
|
-
* @see docs/ERROR-CODES.md for the human-readable reference.
|
|
7
|
-
*/
|
|
1
|
+
// Canonical codes for VerificationError and ProtocolError. Consumers switch
|
|
2
|
+
// on `code` for stable UI. Human-readable reference: docs/ERROR-CODES.md.
|
|
8
3
|
export const ERROR_CODES = {
|
|
9
4
|
E_REDEEM_DIGEST_MISMATCH: 'Local redeem digest differs from sidecar claim',
|
|
10
5
|
E_LOCK_ADDR_MISMATCH: 'Derived P2WSH address differs from sidecar claim',
|
package/dist/types/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/types/errors.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/types/errors.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
// Re-exports so internal files can keep importing from '../types/index.js'.
|
|
1
2
|
// Server-response schemas + inferred types live in ../wire/server/.
|
|
2
|
-
// Re-exported here so internal files can still `import { X } from '../types/index.js'`.
|
|
3
3
|
export * from '../wire/server/index.js';
|
|
4
4
|
export * from './api.js';
|
|
5
5
|
export * from './errors.js';
|
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAC5E,oEAAoE;AACpE,cAAc,yBAAyB,CAAC;AACxC,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC"}
|
package/dist/types/keys.d.ts
CHANGED
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Keys generated by keygen-wasm for atomic swap. Lowercase matches the WASM
|
|
3
|
-
* module's output convention.
|
|
4
|
-
*/
|
|
5
1
|
export interface ClientKeys {
|
|
6
2
|
readonly s_b_bitcoin: string;
|
|
7
3
|
readonly s_b_monero: string;
|
|
@@ -11,23 +7,12 @@ export interface ClientKeys {
|
|
|
11
7
|
readonly b: string;
|
|
12
8
|
readonly B: string;
|
|
13
9
|
}
|
|
14
|
-
/**
|
|
15
|
-
* Server API expects uppercase S_b_* keys. This maps from WASM output to API
|
|
16
|
-
* format. Only the public key B is sent; the private key b never leaves the
|
|
17
|
-
* client.
|
|
18
|
-
*/
|
|
19
10
|
export interface ClientKeysApi {
|
|
20
11
|
readonly S_b_bitcoin: string;
|
|
21
12
|
readonly S_b_monero: string;
|
|
22
13
|
readonly dleq_proof: string;
|
|
23
14
|
readonly v_b: string;
|
|
24
15
|
readonly B: string;
|
|
25
|
-
/**
|
|
26
|
-
* 32-byte hex master seed for the per-swap libp2p identity. Forwarded by
|
|
27
|
-
* the server to the sidecar so a recovery binary (eigenwallet swap CLI)
|
|
28
|
-
* can re-derive the same peer-id from the keystore. Optional — older
|
|
29
|
-
* keystores or callers that don't care about cross-binary recovery omit it.
|
|
30
|
-
*/
|
|
31
16
|
readonly libp2p_seed_hex?: string;
|
|
32
17
|
}
|
|
33
18
|
//# sourceMappingURL=keys.d.ts.map
|
package/dist/types/keys.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../src/types/keys.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../src/types/keys.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;CACpB;AAGD,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IAGnB,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC"}
|
package/dist/types/protocol.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { ErrorCode } from './errors.js';
|
|
2
|
-
/** Alice's protocol parameters returned after negotiation (Messages 0-1). */
|
|
3
2
|
export interface ProtocolParams {
|
|
4
3
|
readonly A: string;
|
|
5
4
|
readonly S_a_bitcoin: string;
|
|
@@ -22,68 +21,18 @@ export interface ProtocolParams {
|
|
|
22
21
|
readonly v_a?: string | null;
|
|
23
22
|
readonly monero_lock_address?: string | null;
|
|
24
23
|
readonly xmr_amount_pico?: string | null;
|
|
25
|
-
/**
|
|
26
|
-
* Alice's adaptor-encrypted signature on the TxFullRefund BIP143 digest
|
|
27
|
-
* (bincode-serialised EncryptedSignature, hex). Present once Alice has
|
|
28
|
-
* sent her Message3 in the setup protocol. Consumed by client-side refund.
|
|
29
|
-
* `null` when the variant is `Partial` (amnesty-only) — that swap has no
|
|
30
|
-
* full-refund path; the escape hatch is `tx_partial_refund_encsig` instead.
|
|
31
|
-
*/
|
|
32
24
|
readonly tx_full_refund_encsig?: string | null;
|
|
33
|
-
/**
|
|
34
|
-
* Alice's adaptor-encrypted signature on the TxPartialRefund (amnesty
|
|
35
|
-
* variant) digest. Present only when the swap uses the amnesty path.
|
|
36
|
-
* `null` when the variant is `Legacy` (full-only).
|
|
37
|
-
*/
|
|
38
25
|
readonly tx_partial_refund_encsig?: string | null;
|
|
39
|
-
/**
|
|
40
|
-
* Alice's plain ECDSA pre-sig on TxCancel (delivered in Message3, mirrors
|
|
41
|
-
* the Rust core's `tx_cancel_sig_a`). Persisted in the recovery snapshot
|
|
42
|
-
* before /fund. Currently informational only; the sidecar still publishes
|
|
43
|
-
* TxCancel. V-16 enabling-work toward an autonomous client-side cancel
|
|
44
|
-
* path that does not depend on the sidecar's cooperation.
|
|
45
|
-
*/
|
|
46
26
|
readonly tx_cancel_sig?: string | null;
|
|
47
|
-
/**
|
|
48
|
-
* Unsigned lock PSBT (base64). Client signs once, returns via /fund action.
|
|
49
|
-
* Populated by the sidecar at prepare time; absent until then.
|
|
50
|
-
*/
|
|
51
27
|
readonly unsigned_lock_psbt?: string | null;
|
|
52
|
-
/**
|
|
53
|
-
* Monero lock verification data — populated once the scanner observes
|
|
54
|
-
* Alice's XMR lock transaction. Absent until then.
|
|
55
|
-
*/
|
|
56
28
|
readonly monero_tx_hash?: string | null;
|
|
57
29
|
readonly monero_tx_key?: string | null;
|
|
58
30
|
readonly monero_restore_height?: number | null;
|
|
59
|
-
/**
|
|
60
|
-
* Combined view key v_a + v_b. Server-computed convenience (client could
|
|
61
|
-
* derive via curve arithmetic). Absent until XMR lock is observed.
|
|
62
|
-
*/
|
|
63
31
|
readonly combined_view_key?: string | null;
|
|
64
|
-
/**
|
|
65
|
-
* BIP143 sighash for TxRedeem as the sidecar computes it. The driver
|
|
66
|
-
* recomputes the digest locally from the signed PSBT (or from the on-chain
|
|
67
|
-
* TxLock on the resume path) and compares byte-for-byte before releasing the
|
|
68
|
-
* encrypted signature. Absent until the sidecar surfaces it.
|
|
69
|
-
*/
|
|
70
32
|
readonly tx_redeem_digest?: string | null;
|
|
71
|
-
/**
|
|
72
|
-
* Maker (Alice) libp2p peer-id and multiaddrs. Persisted into the recovery
|
|
73
|
-
* snapshot so eigenwallet (or another runtime) can re-dial the maker after
|
|
74
|
-
* a crash without going through rendezvous discovery again.
|
|
75
|
-
*/
|
|
76
33
|
readonly maker_peer_id?: string | null;
|
|
77
34
|
readonly maker_multiaddrs?: ReadonlyArray<string> | null;
|
|
78
35
|
}
|
|
79
|
-
/**
|
|
80
|
-
* Thrown when the protocol-level state is inconsistent (missing required field,
|
|
81
|
-
* terminal state reached unexpectedly, driver timeout). Distinct from
|
|
82
|
-
* `VerificationError` which is thrown when a cryptographic check fails.
|
|
83
|
-
*
|
|
84
|
-
* Carries `category: 'protocol'` so {@link withRetry} fails immediately
|
|
85
|
-
* instead of retrying — protocol errors are not transient.
|
|
86
|
-
*/
|
|
87
36
|
import { MiradexError } from '../lib/errors.js';
|
|
88
37
|
export declare class ProtocolError extends MiradexError {
|
|
89
38
|
readonly name = "ProtocolError";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/types/protocol.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/types/protocol.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IAGpC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7C,QAAQ,CAAC,yBAAyB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnD,QAAQ,CAAC,0BAA0B,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7C,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9C,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7C,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAIzC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAG/C,QAAQ,CAAC,wBAAwB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAGlD,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEvC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5C,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/C,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAG3C,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAG1C,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;CAC1D;AAMD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,qBAAa,aAAc,SAAQ,YAAY;IAC7C,SAAkB,IAAI,mBAAmB;IACzC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;gBACb,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM;CAI7C"}
|
package/dist/types/protocol.js
CHANGED
|
@@ -1,11 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
* `VerificationError` which is thrown when a cryptographic check fails.
|
|
5
|
-
*
|
|
6
|
-
* Carries `category: 'protocol'` so {@link withRetry} fails immediately
|
|
7
|
-
* instead of retrying — protocol errors are not transient.
|
|
8
|
-
*/
|
|
1
|
+
// Protocol-level inconsistency (missing required field, unexpected terminal
|
|
2
|
+
// state, driver timeout). Distinct from VerificationError (failed crypto
|
|
3
|
+
// check). Category 'protocol' so withRetry fails immediately.
|
|
9
4
|
import { MiradexError } from '../lib/errors.js';
|
|
10
5
|
export class ProtocolError extends MiradexError {
|
|
11
6
|
name = 'ProtocolError';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/types/protocol.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/types/protocol.ts"],"names":[],"mappings":"AAsDA,4EAA4E;AAC5E,yEAAyE;AACzE,8DAA8D;AAE9D,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,MAAM,OAAO,aAAc,SAAQ,YAAY;IAC3B,IAAI,GAAG,eAAe,CAAC;IAChC,IAAI,CAAY;IACzB,YAAY,IAAe,EAAE,OAAe;QAC1C,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/types/status.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/types/status.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,cAAc,GACtB,WAAW,GACX,QAAQ,GACR,UAAU,GACV,UAAU,GACV,SAAS,CAAC;AASd,eAAO,MAAM,iBAAiB,EAAE,WAAW,CAAC,MAAM,CAMhD,CAAC"}
|