@atomiqlabs/sdk 5.0.0-dev.1 → 5.0.0-dev.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/dist/SwapperFactory.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ChainData, BitcoinNetwork, BitcoinRpc, BaseTokenType, ChainType, StorageObject, IStorageManager } from "@atomiqlabs/base";
|
|
1
|
+
import { ChainData, BitcoinNetwork, BitcoinRpc, BaseTokenType, ChainType, StorageObject, IStorageManager, Messenger } from "@atomiqlabs/base";
|
|
2
2
|
import { BtcToken, CustomPriceFunction, MempoolApi, MempoolBitcoinRpc, SCToken, Swapper, SwapperOptions } from "@atomiqlabs/sdk-lib";
|
|
3
3
|
type ChainInitializer<O, C extends ChainType, T extends BaseTokenType> = {
|
|
4
4
|
chainId: ChainType["ChainId"];
|
|
@@ -33,6 +33,7 @@ export type MultichainSwapperOptions<T extends readonly ChainInitializer<any, an
|
|
|
33
33
|
chainStorageCtor?: <T extends StorageObject>(name: string) => IStorageManager<T>;
|
|
34
34
|
pricingFeeDifferencePPM?: bigint;
|
|
35
35
|
mempoolApi?: MempoolApi | MempoolBitcoinRpc | string | string[];
|
|
36
|
+
messenger?: Messenger;
|
|
36
37
|
getPriceFn?: CustomPriceFunction;
|
|
37
38
|
};
|
|
38
39
|
export declare class SwapperFactory<T extends readonly ChainInitializer<any, any, any>[]> {
|
package/dist/SwapperFactory.js
CHANGED
|
@@ -5,6 +5,7 @@ const base_1 = require("@atomiqlabs/base");
|
|
|
5
5
|
const sdk_lib_1 = require("@atomiqlabs/sdk-lib");
|
|
6
6
|
const SmartChainAssets_1 = require("./SmartChainAssets");
|
|
7
7
|
const LocalStorageManager_1 = require("./storage/LocalStorageManager");
|
|
8
|
+
const messenger_nostr_1 = require("@atomiqlabs/messenger-nostr");
|
|
8
9
|
const registries = {
|
|
9
10
|
[base_1.BitcoinNetwork.MAINNET]: "https://api.github.com/repos/adambor/SolLightning-registry/contents/registry-mainnet.json?ref=main",
|
|
10
11
|
[base_1.BitcoinNetwork.TESTNET]: "https://api.github.com/repos/adambor/SolLightning-registry/contents/registry.json?ref=main",
|
|
@@ -34,6 +35,9 @@ const mempoolUrls = {
|
|
|
34
35
|
"https://mempool.tk7.mempool.space/testnet4/api/"
|
|
35
36
|
]
|
|
36
37
|
};
|
|
38
|
+
const nostrUrls = [
|
|
39
|
+
"wss://relay.damus.io", "wss://nostr.einundzwanzig.space", "wss://nostr.mutinywallet.com"
|
|
40
|
+
];
|
|
37
41
|
class SwapperFactory {
|
|
38
42
|
constructor(initializers) {
|
|
39
43
|
this.initializers = initializers;
|
|
@@ -65,6 +69,7 @@ class SwapperFactory {
|
|
|
65
69
|
newSwapper(options) {
|
|
66
70
|
options.bitcoinNetwork ?? (options.bitcoinNetwork = base_1.BitcoinNetwork.MAINNET);
|
|
67
71
|
options.storagePrefix ?? (options.storagePrefix = "atomiqsdk-" + options.bitcoinNetwork + "-");
|
|
72
|
+
options.messenger ?? (options.messenger = new messenger_nostr_1.NostrMessenger(nostrUrls));
|
|
68
73
|
options.defaultTrustedIntermediaryUrl ?? (options.defaultTrustedIntermediaryUrl = trustedIntermediaries[options.bitcoinNetwork]);
|
|
69
74
|
options.registryUrl ?? (options.registryUrl = registries[options.bitcoinNetwork]);
|
|
70
75
|
const mempoolApi = options.mempoolApi ?? new sdk_lib_1.MempoolBitcoinRpc(mempoolUrls[options.bitcoinNetwork]);
|
|
@@ -99,7 +104,7 @@ class SwapperFactory {
|
|
|
99
104
|
};
|
|
100
105
|
}), options.getPriceFn)) :
|
|
101
106
|
sdk_lib_1.RedundantSwapPrice.createFromTokenMap(options.pricingFeeDifferencePPM ?? 10000n, pricingAssets);
|
|
102
|
-
return new sdk_lib_1.Swapper(bitcoinRpc, chains, swapPricing, pricingAssets, options);
|
|
107
|
+
return new sdk_lib_1.Swapper(bitcoinRpc, chains, swapPricing, pricingAssets, options.messenger, options);
|
|
103
108
|
}
|
|
104
109
|
}
|
|
105
110
|
exports.SwapperFactory = SwapperFactory;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atomiqlabs/sdk",
|
|
3
|
-
"version": "5.0.0-dev.
|
|
3
|
+
"version": "5.0.0-dev.2",
|
|
4
4
|
"description": "atomiq labs SDK for cross-chain swaps between smart chains and bitcoin",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types:": "./dist/index.d.ts",
|
|
@@ -21,8 +21,9 @@
|
|
|
21
21
|
"author": "adambor",
|
|
22
22
|
"license": "ISC",
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@atomiqlabs/base": "^10.0.0-dev.
|
|
25
|
-
"@atomiqlabs/
|
|
24
|
+
"@atomiqlabs/base": "^10.0.0-dev.7",
|
|
25
|
+
"@atomiqlabs/messenger-nostr": "^1.0.0-dev.2",
|
|
26
|
+
"@atomiqlabs/sdk-lib": "^14.0.0-dev.8"
|
|
26
27
|
},
|
|
27
28
|
"devDependencies": {
|
|
28
29
|
"@types/node": "22.13.5",
|
package/src/SwapperFactory.ts
CHANGED
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
BaseTokenType,
|
|
6
6
|
ChainType,
|
|
7
7
|
StorageObject,
|
|
8
|
-
IStorageManager
|
|
8
|
+
IStorageManager, Messenger
|
|
9
9
|
} from "@atomiqlabs/base";
|
|
10
10
|
import {
|
|
11
11
|
BitcoinTokens,
|
|
@@ -17,6 +17,7 @@ import {
|
|
|
17
17
|
} from "@atomiqlabs/sdk-lib";
|
|
18
18
|
import {SmartChainAssets} from "./SmartChainAssets";
|
|
19
19
|
import {LocalStorageManager} from "./storage/LocalStorageManager";
|
|
20
|
+
import {NostrMessenger} from "@atomiqlabs/messenger-nostr";
|
|
20
21
|
|
|
21
22
|
type ChainInitializer<O, C extends ChainType, T extends BaseTokenType> = {
|
|
22
23
|
chainId: ChainType["ChainId"],
|
|
@@ -67,6 +68,7 @@ export type MultichainSwapperOptions<T extends readonly ChainInitializer<any, an
|
|
|
67
68
|
chainStorageCtor?: <T extends StorageObject>(name: string) => IStorageManager<T>,
|
|
68
69
|
pricingFeeDifferencePPM?: bigint,
|
|
69
70
|
mempoolApi?: MempoolApi | MempoolBitcoinRpc | string | string[],
|
|
71
|
+
messenger?: Messenger,
|
|
70
72
|
getPriceFn?: CustomPriceFunction
|
|
71
73
|
};
|
|
72
74
|
|
|
@@ -102,6 +104,10 @@ const mempoolUrls = {
|
|
|
102
104
|
]
|
|
103
105
|
}
|
|
104
106
|
|
|
107
|
+
const nostrUrls: string[] = [
|
|
108
|
+
"wss://relay.damus.io", "wss://nostr.einundzwanzig.space", "wss://nostr.mutinywallet.com"
|
|
109
|
+
];
|
|
110
|
+
|
|
105
111
|
export class SwapperFactory<T extends readonly ChainInitializer<any, any, any>[]> {
|
|
106
112
|
|
|
107
113
|
Tokens: GetAllTokens<T> & {
|
|
@@ -143,6 +149,7 @@ export class SwapperFactory<T extends readonly ChainInitializer<any, any, any>[]
|
|
|
143
149
|
newSwapper(options: MultichainSwapperOptions<T>) {
|
|
144
150
|
options.bitcoinNetwork ??= BitcoinNetwork.MAINNET as any;
|
|
145
151
|
options.storagePrefix ??= "atomiqsdk-"+options.bitcoinNetwork+"-";
|
|
152
|
+
options.messenger ??= new NostrMessenger(nostrUrls);
|
|
146
153
|
|
|
147
154
|
options.defaultTrustedIntermediaryUrl ??= trustedIntermediaries[options.bitcoinNetwork];
|
|
148
155
|
|
|
@@ -188,6 +195,7 @@ export class SwapperFactory<T extends readonly ChainInitializer<any, any, any>[]
|
|
|
188
195
|
chains as any,
|
|
189
196
|
swapPricing,
|
|
190
197
|
pricingAssets,
|
|
198
|
+
options.messenger,
|
|
191
199
|
options
|
|
192
200
|
);
|
|
193
201
|
}
|