@atomiqlabs/lp-lib 10.3.11 → 11.0.0
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.d.ts +2 -1
- package/dist/index.js +2 -4
- package/dist/plugins/IPlugin.d.ts +3 -2
- package/dist/plugins/PluginManager.d.ts +3 -2
- package/dist/plugins/PluginManager.js +2 -2
- package/dist/swaps/FromBtcBaseSwap.d.ts +5 -1
- package/dist/swaps/FromBtcBaseSwap.js +20 -0
- package/dist/swaps/FromBtcBaseSwapHandler.d.ts +1 -0
- package/dist/swaps/FromBtcBaseSwapHandler.js +1 -1
- package/dist/swaps/FromBtcLnBaseSwapHandler.d.ts +8 -6
- package/dist/swaps/FromBtcLnBaseSwapHandler.js +7 -5
- package/dist/swaps/SwapHandler.d.ts +1 -4
- package/dist/swaps/SwapHandler.js +1 -2
- package/dist/swaps/SwapHandlerSwap.d.ts +4 -0
- package/dist/swaps/SwapHandlerSwap.js +9 -1
- package/dist/swaps/ToBtcBaseSwap.d.ts +3 -1
- package/dist/swaps/ToBtcBaseSwap.js +8 -2
- package/dist/swaps/ToBtcBaseSwapHandler.d.ts +1 -0
- package/dist/swaps/ToBtcBaseSwapHandler.js +1 -1
- package/dist/swaps/frombtc_abstract/FromBtcAbs.d.ts +3 -5
- package/dist/swaps/frombtc_abstract/FromBtcAbs.js +18 -25
- package/dist/swaps/frombtc_abstract/FromBtcSwapAbs.d.ts +1 -4
- package/dist/swaps/frombtc_abstract/FromBtcSwapAbs.js +3 -16
- package/dist/swaps/frombtc_trusted/FromBtcTrusted.d.ts +6 -9
- package/dist/swaps/frombtc_trusted/FromBtcTrusted.js +238 -137
- package/dist/swaps/frombtc_trusted/FromBtcTrustedSwap.d.ts +9 -6
- package/dist/swaps/frombtc_trusted/FromBtcTrustedSwap.js +15 -10
- package/dist/swaps/frombtcln_abstract/FromBtcLnAbs.d.ts +2 -2
- package/dist/swaps/frombtcln_abstract/FromBtcLnAbs.js +42 -62
- package/dist/swaps/frombtcln_abstract/FromBtcLnSwapAbs.d.ts +1 -6
- package/dist/swaps/frombtcln_abstract/FromBtcLnSwapAbs.js +2 -14
- package/dist/swaps/frombtcln_trusted/FromBtcLnTrusted.d.ts +3 -5
- package/dist/swaps/frombtcln_trusted/FromBtcLnTrusted.js +64 -80
- package/dist/swaps/frombtcln_trusted/FromBtcLnTrustedSwap.d.ts +1 -2
- package/dist/swaps/frombtcln_trusted/FromBtcLnTrustedSwap.js +5 -8
- package/dist/swaps/tobtc_abstract/ToBtcAbs.d.ts +5 -125
- package/dist/swaps/tobtc_abstract/ToBtcAbs.js +41 -334
- package/dist/swaps/tobtc_abstract/ToBtcSwapAbs.d.ts +1 -4
- package/dist/swaps/tobtc_abstract/ToBtcSwapAbs.js +2 -11
- package/dist/swaps/tobtcln_abstract/ToBtcLnAbs.d.ts +5 -55
- package/dist/swaps/tobtcln_abstract/ToBtcLnAbs.js +152 -398
- package/dist/swaps/tobtcln_abstract/ToBtcLnSwapAbs.d.ts +1 -6
- package/dist/swaps/tobtcln_abstract/ToBtcLnSwapAbs.js +2 -15
- package/dist/utils/Utils.d.ts +0 -10
- package/dist/utils/Utils.js +1 -34
- package/dist/wallets/IBitcoinWallet.d.ts +62 -0
- package/dist/wallets/IBitcoinWallet.js +2 -0
- package/dist/wallets/ILightningWallet.d.ts +118 -0
- package/dist/wallets/ILightningWallet.js +37 -0
- package/package.json +4 -9
- package/src/index.ts +3 -5
- package/src/plugins/IPlugin.ts +4 -2
- package/src/plugins/PluginManager.ts +6 -3
- package/src/swaps/FromBtcBaseSwap.ts +24 -1
- package/src/swaps/FromBtcBaseSwapHandler.ts +6 -2
- package/src/swaps/FromBtcLnBaseSwapHandler.ts +22 -6
- package/src/swaps/SwapHandler.ts +1 -8
- package/src/swaps/SwapHandlerSwap.ts +14 -1
- package/src/swaps/ToBtcBaseSwap.ts +12 -3
- package/src/swaps/ToBtcBaseSwapHandler.ts +6 -2
- package/src/swaps/frombtc_abstract/FromBtcAbs.ts +24 -28
- package/src/swaps/frombtc_abstract/FromBtcSwapAbs.ts +3 -18
- package/src/swaps/frombtc_trusted/FromBtcTrusted.ts +260 -159
- package/src/swaps/frombtc_trusted/FromBtcTrustedSwap.ts +22 -15
- package/src/swaps/frombtcln_abstract/FromBtcLnAbs.ts +69 -79
- package/src/swaps/frombtcln_abstract/FromBtcLnSwapAbs.ts +3 -20
- package/src/swaps/frombtcln_trusted/FromBtcLnTrusted.ts +80 -97
- package/src/swaps/frombtcln_trusted/FromBtcLnTrustedSwap.ts +6 -9
- package/src/swaps/tobtc_abstract/ToBtcAbs.ts +52 -410
- package/src/swaps/tobtc_abstract/ToBtcSwapAbs.ts +3 -18
- package/src/swaps/tobtcln_abstract/ToBtcLnAbs.ts +157 -434
- package/src/swaps/tobtcln_abstract/ToBtcLnSwapAbs.ts +3 -20
- package/src/utils/Utils.ts +0 -31
- package/src/wallets/IBitcoinWallet.ts +66 -0
- package/src/wallets/ILightningWallet.ts +179 -0
- package/dist/fees/OneDollarFeeEstimator.d.ts +0 -16
- package/dist/fees/OneDollarFeeEstimator.js +0 -71
- package/dist/utils/coinselect2/accumulative.d.ts +0 -6
- package/dist/utils/coinselect2/accumulative.js +0 -44
- package/dist/utils/coinselect2/blackjack.d.ts +0 -6
- package/dist/utils/coinselect2/blackjack.js +0 -41
- package/dist/utils/coinselect2/index.d.ts +0 -16
- package/dist/utils/coinselect2/index.js +0 -40
- package/dist/utils/coinselect2/utils.d.ts +0 -64
- package/dist/utils/coinselect2/utils.js +0 -121
- package/src/fees/OneDollarFeeEstimator.ts +0 -95
- package/src/utils/coinselect2/accumulative.js +0 -32
- package/src/utils/coinselect2/accumulative.ts +0 -58
- package/src/utils/coinselect2/blackjack.js +0 -29
- package/src/utils/coinselect2/blackjack.ts +0 -54
- package/src/utils/coinselect2/index.js +0 -16
- package/src/utils/coinselect2/index.ts +0 -50
- package/src/utils/coinselect2/utils.js +0 -110
- package/src/utils/coinselect2/utils.ts +0 -183
|
@@ -4,9 +4,9 @@ import { ToBtcLnSwapAbs, ToBtcLnSwapState } from "./ToBtcLnSwapAbs";
|
|
|
4
4
|
import { MultichainData, SwapHandlerType } from "../SwapHandler";
|
|
5
5
|
import { ISwapPrice } from "../ISwapPrice";
|
|
6
6
|
import { ClaimEvent, InitializeEvent, RefundEvent, SwapData } from "@atomiqlabs/base";
|
|
7
|
-
import { AuthenticatedLnd } from "lightning";
|
|
8
7
|
import { IIntermediaryStorage } from "../../storage/IIntermediaryStorage";
|
|
9
8
|
import { ToBtcBaseConfig, ToBtcBaseSwapHandler } from "../ToBtcBaseSwapHandler";
|
|
9
|
+
import { ILightningWallet, ParsedPaymentRequest } from "../../wallets/ILightningWallet";
|
|
10
10
|
export type ToBtcLnConfig = ToBtcBaseConfig & {
|
|
11
11
|
routingFeeMultiplier: BN;
|
|
12
12
|
minSendCltv: BN;
|
|
@@ -16,21 +16,12 @@ export type ToBtcLnConfig = ToBtcBaseConfig & {
|
|
|
16
16
|
minLnBaseFee?: BN;
|
|
17
17
|
exactInExpiry?: number;
|
|
18
18
|
};
|
|
19
|
-
type LNRoutes = {
|
|
20
|
-
public_key: string;
|
|
21
|
-
fee_rate?: number;
|
|
22
|
-
cltv_delta?: number;
|
|
23
|
-
channel?: string;
|
|
24
|
-
base_fee_mtokens?: string;
|
|
25
|
-
}[][];
|
|
26
19
|
type ExactInAuthorization = {
|
|
27
20
|
chainIdentifier: string;
|
|
28
21
|
reqId: string;
|
|
29
22
|
expiry: number;
|
|
30
23
|
amount: BN;
|
|
31
|
-
|
|
32
|
-
cltvDelta: number;
|
|
33
|
-
routes: LNRoutes;
|
|
24
|
+
initialInvoice: ParsedPaymentRequest;
|
|
34
25
|
quotedNetworkFeeInToken: BN;
|
|
35
26
|
swapFeeInToken: BN;
|
|
36
27
|
total: BN;
|
|
@@ -67,7 +58,7 @@ export declare class ToBtcLnAbs extends ToBtcBaseSwapHandler<ToBtcLnSwapAbs, ToB
|
|
|
67
58
|
protected readonly LIGHTNING_LIQUIDITY_CACHE_TIMEOUT: number;
|
|
68
59
|
activeSubscriptions: Set<string>;
|
|
69
60
|
lightningLiquidityCache: {
|
|
70
|
-
|
|
61
|
+
liquidity: BN;
|
|
71
62
|
timestamp: number;
|
|
72
63
|
};
|
|
73
64
|
readonly type = SwapHandlerType.TO_BTCLN;
|
|
@@ -77,14 +68,8 @@ export declare class ToBtcLnAbs extends ToBtcBaseSwapHandler<ToBtcLnSwapAbs, ToB
|
|
|
77
68
|
readonly exactInAuths: {
|
|
78
69
|
[reqId: string]: ExactInAuthorization;
|
|
79
70
|
};
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
* Fetches the payment info, returns null if payment not found
|
|
83
|
-
*
|
|
84
|
-
* @param paymentHash
|
|
85
|
-
* @private
|
|
86
|
-
*/
|
|
87
|
-
private getPayment;
|
|
71
|
+
readonly lightning: ILightningWallet;
|
|
72
|
+
constructor(storageDirectory: IIntermediaryStorage<ToBtcLnSwapAbs>, path: string, chainData: MultichainData, lightning: ILightningWallet, swapPricing: ISwapPrice, config: ToBtcLnConfig);
|
|
88
73
|
/**
|
|
89
74
|
* Cleans up exactIn authorization that are already past their expiry
|
|
90
75
|
*
|
|
@@ -174,41 +159,6 @@ export declare class ToBtcLnAbs extends ToBtcBaseSwapHandler<ToBtcLnSwapAbs, ToB
|
|
|
174
159
|
* @throws {DefinedRuntimeError} will throw an error if there isn't enough liquidity
|
|
175
160
|
*/
|
|
176
161
|
private checkLiquidity;
|
|
177
|
-
/**
|
|
178
|
-
* Computes the route paying to the specified bolt11 invoice, estimating the fee, uses bLIP-39 blinded paths
|
|
179
|
-
*
|
|
180
|
-
* @param amountSats
|
|
181
|
-
* @param maxFee
|
|
182
|
-
* @param parsedRequest
|
|
183
|
-
* @param maxTimeoutBlockheight
|
|
184
|
-
* @param metadata
|
|
185
|
-
* @param maxUsableCLTV
|
|
186
|
-
* @private
|
|
187
|
-
*/
|
|
188
|
-
private getRoutesInvoiceBLIP39;
|
|
189
|
-
/**
|
|
190
|
-
* Computes the route paying to the specified bolt11 invoice, estimating the fee
|
|
191
|
-
*
|
|
192
|
-
* @param amountSats
|
|
193
|
-
* @param maxFee
|
|
194
|
-
* @param parsedRequest
|
|
195
|
-
* @param maxTimeoutBlockheight
|
|
196
|
-
* @param metadata
|
|
197
|
-
* @param maxUsableCLTV
|
|
198
|
-
* @private
|
|
199
|
-
*/
|
|
200
|
-
private getRoutesInvoice;
|
|
201
|
-
/**
|
|
202
|
-
* Sends a probe payment to the specified bolt11 invoice to check if it is reachable
|
|
203
|
-
*
|
|
204
|
-
* @param amountSats
|
|
205
|
-
* @param maxFee
|
|
206
|
-
* @param parsedRequest
|
|
207
|
-
* @param maxTimeoutBlockheight
|
|
208
|
-
* @param metadata
|
|
209
|
-
* @private
|
|
210
|
-
*/
|
|
211
|
-
private probeInvoice;
|
|
212
162
|
/**
|
|
213
163
|
* Estimates the routing fee & confidence by either probing or routing (if probing fails), the fee is also adjusted
|
|
214
164
|
* according to routing fee multiplier, and subject to minimums set in config
|