@lendasat/lendaswap-sdk-pure 0.2.21-preview.0 → 0.2.21

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.
Files changed (205) hide show
  1. package/dist/api/client.d.ts.map +1 -1
  2. package/dist/api/client.js +4 -1
  3. package/dist/api/client.js.map +1 -1
  4. package/dist/version.d.ts +4 -0
  5. package/dist/version.d.ts.map +1 -0
  6. package/dist/version.js +6 -0
  7. package/dist/version.js.map +1 -0
  8. package/package.json +4 -1
  9. package/dist/price-feed.d.ts +0 -124
  10. package/dist/price-feed.d.ts.map +0 -1
  11. package/dist/price-feed.js +0 -178
  12. package/dist/price-feed.js.map +0 -1
  13. package/dist/src/api/client.d.ts +0 -31
  14. package/dist/src/api/client.d.ts.map +0 -1
  15. package/dist/src/api/client.js +0 -12
  16. package/dist/src/api/client.js.map +0 -1
  17. package/dist/src/arkade.d.ts +0 -36
  18. package/dist/src/arkade.d.ts.map +0 -1
  19. package/dist/src/arkade.js +0 -68
  20. package/dist/src/arkade.js.map +0 -1
  21. package/dist/src/client.d.ts +0 -760
  22. package/dist/src/client.d.ts.map +0 -1
  23. package/dist/src/client.js +0 -2169
  24. package/dist/src/client.js.map +0 -1
  25. package/dist/src/create/arkade.d.ts +0 -34
  26. package/dist/src/create/arkade.d.ts.map +0 -1
  27. package/dist/src/create/arkade.js +0 -76
  28. package/dist/src/create/arkade.js.map +0 -1
  29. package/dist/src/create/bitcoin-to-arkade.d.ts +0 -36
  30. package/dist/src/create/bitcoin-to-arkade.d.ts.map +0 -1
  31. package/dist/src/create/bitcoin-to-arkade.js +0 -69
  32. package/dist/src/create/bitcoin-to-arkade.js.map +0 -1
  33. package/dist/src/create/bitcoin.d.ts +0 -31
  34. package/dist/src/create/bitcoin.d.ts.map +0 -1
  35. package/dist/src/create/bitcoin.js +0 -67
  36. package/dist/src/create/bitcoin.js.map +0 -1
  37. package/dist/src/create/evm-to-arkade.d.ts +0 -34
  38. package/dist/src/create/evm-to-arkade.d.ts.map +0 -1
  39. package/dist/src/create/evm-to-arkade.js +0 -69
  40. package/dist/src/create/evm-to-arkade.js.map +0 -1
  41. package/dist/src/create/evm-to-bitcoin.d.ts +0 -35
  42. package/dist/src/create/evm-to-bitcoin.d.ts.map +0 -1
  43. package/dist/src/create/evm-to-bitcoin.js +0 -71
  44. package/dist/src/create/evm-to-bitcoin.js.map +0 -1
  45. package/dist/src/create/evm-to-lightning.d.ts +0 -34
  46. package/dist/src/create/evm-to-lightning.d.ts.map +0 -1
  47. package/dist/src/create/evm-to-lightning.js +0 -66
  48. package/dist/src/create/evm-to-lightning.js.map +0 -1
  49. package/dist/src/create/index.d.ts +0 -19
  50. package/dist/src/create/index.d.ts.map +0 -1
  51. package/dist/src/create/index.js +0 -18
  52. package/dist/src/create/index.js.map +0 -1
  53. package/dist/src/create/lightning.d.ts +0 -31
  54. package/dist/src/create/lightning.d.ts.map +0 -1
  55. package/dist/src/create/lightning.js +0 -72
  56. package/dist/src/create/lightning.js.map +0 -1
  57. package/dist/src/create/types.d.ts +0 -247
  58. package/dist/src/create/types.d.ts.map +0 -1
  59. package/dist/src/create/types.js +0 -5
  60. package/dist/src/create/types.js.map +0 -1
  61. package/dist/src/delegate.d.ts +0 -62
  62. package/dist/src/delegate.d.ts.map +0 -1
  63. package/dist/src/delegate.js +0 -284
  64. package/dist/src/delegate.js.map +0 -1
  65. package/dist/src/esplora.d.ts +0 -41
  66. package/dist/src/esplora.d.ts.map +0 -1
  67. package/dist/src/esplora.js +0 -47
  68. package/dist/src/esplora.js.map +0 -1
  69. package/dist/src/evm/coordinator.d.ts +0 -247
  70. package/dist/src/evm/coordinator.d.ts.map +0 -1
  71. package/dist/src/evm/coordinator.js +0 -414
  72. package/dist/src/evm/coordinator.js.map +0 -1
  73. package/dist/src/evm/htlc.d.ts +0 -238
  74. package/dist/src/evm/htlc.d.ts.map +0 -1
  75. package/dist/src/evm/htlc.js +0 -278
  76. package/dist/src/evm/htlc.js.map +0 -1
  77. package/dist/src/evm/index.d.ts +0 -9
  78. package/dist/src/evm/index.d.ts.map +0 -1
  79. package/dist/src/evm/index.js +0 -9
  80. package/dist/src/evm/index.js.map +0 -1
  81. package/dist/src/evm/signing.d.ts +0 -30
  82. package/dist/src/evm/signing.d.ts.map +0 -1
  83. package/dist/src/evm/signing.js +0 -91
  84. package/dist/src/evm/signing.js.map +0 -1
  85. package/dist/src/generated/api.d.ts +0 -2736
  86. package/dist/src/generated/api.d.ts.map +0 -1
  87. package/dist/src/generated/api.js +0 -6
  88. package/dist/src/generated/api.js.map +0 -1
  89. package/dist/src/index.d.ts +0 -18
  90. package/dist/src/index.d.ts.map +0 -1
  91. package/dist/src/index.js +0 -24
  92. package/dist/src/index.js.map +0 -1
  93. package/dist/src/node.d.ts +0 -19
  94. package/dist/src/node.d.ts.map +0 -1
  95. package/dist/src/node.js +0 -19
  96. package/dist/src/node.js.map +0 -1
  97. package/dist/src/price-calculations.d.ts +0 -109
  98. package/dist/src/price-calculations.d.ts.map +0 -1
  99. package/dist/src/price-calculations.js +0 -135
  100. package/dist/src/price-calculations.js.map +0 -1
  101. package/dist/src/redeem/arkade.d.ts +0 -65
  102. package/dist/src/redeem/arkade.d.ts.map +0 -1
  103. package/dist/src/redeem/arkade.js +0 -217
  104. package/dist/src/redeem/arkade.js.map +0 -1
  105. package/dist/src/redeem/ethereum.d.ts +0 -52
  106. package/dist/src/redeem/ethereum.d.ts.map +0 -1
  107. package/dist/src/redeem/ethereum.js +0 -206
  108. package/dist/src/redeem/ethereum.js.map +0 -1
  109. package/dist/src/redeem/gasless.d.ts +0 -41
  110. package/dist/src/redeem/gasless.d.ts.map +0 -1
  111. package/dist/src/redeem/gasless.js +0 -71
  112. package/dist/src/redeem/gasless.js.map +0 -1
  113. package/dist/src/redeem/index.d.ts +0 -49
  114. package/dist/src/redeem/index.d.ts.map +0 -1
  115. package/dist/src/redeem/index.js +0 -189
  116. package/dist/src/redeem/index.js.map +0 -1
  117. package/dist/src/redeem/types.d.ts +0 -126
  118. package/dist/src/redeem/types.d.ts.map +0 -1
  119. package/dist/src/redeem/types.js +0 -36
  120. package/dist/src/redeem/types.js.map +0 -1
  121. package/dist/src/refund/arkade.d.ts +0 -62
  122. package/dist/src/refund/arkade.d.ts.map +0 -1
  123. package/dist/src/refund/arkade.js +0 -212
  124. package/dist/src/refund/arkade.js.map +0 -1
  125. package/dist/src/refund/index.d.ts +0 -10
  126. package/dist/src/refund/index.d.ts.map +0 -1
  127. package/dist/src/refund/index.js +0 -10
  128. package/dist/src/refund/index.js.map +0 -1
  129. package/dist/src/refund/onchain.d.ts +0 -137
  130. package/dist/src/refund/onchain.d.ts.map +0 -1
  131. package/dist/src/refund/onchain.js +0 -366
  132. package/dist/src/refund/onchain.js.map +0 -1
  133. package/dist/src/signer/index.d.ts +0 -106
  134. package/dist/src/signer/index.d.ts.map +0 -1
  135. package/dist/src/signer/index.js +0 -179
  136. package/dist/src/signer/index.js.map +0 -1
  137. package/dist/src/storage/idb.d.ts +0 -70
  138. package/dist/src/storage/idb.d.ts.map +0 -1
  139. package/dist/src/storage/idb.js +0 -236
  140. package/dist/src/storage/idb.js.map +0 -1
  141. package/dist/src/storage/index.d.ts +0 -152
  142. package/dist/src/storage/index.d.ts.map +0 -1
  143. package/dist/src/storage/index.js +0 -98
  144. package/dist/src/storage/index.js.map +0 -1
  145. package/dist/src/storage/sqlite.d.ts +0 -95
  146. package/dist/src/storage/sqlite.d.ts.map +0 -1
  147. package/dist/src/storage/sqlite.js +0 -206
  148. package/dist/src/storage/sqlite.js.map +0 -1
  149. package/dist/src/storage/types.d.ts +0 -57
  150. package/dist/src/storage/types.d.ts.map +0 -1
  151. package/dist/src/storage/types.js +0 -9
  152. package/dist/src/storage/types.js.map +0 -1
  153. package/dist/src/tokens.d.ts +0 -29
  154. package/dist/src/tokens.d.ts.map +0 -1
  155. package/dist/src/tokens.js +0 -89
  156. package/dist/src/tokens.js.map +0 -1
  157. package/dist/src/usd-price.d.ts +0 -34
  158. package/dist/src/usd-price.d.ts.map +0 -1
  159. package/dist/src/usd-price.js +0 -83
  160. package/dist/src/usd-price.js.map +0 -1
  161. package/dist/tests/api-client.test.d.ts +0 -2
  162. package/dist/tests/api-client.test.d.ts.map +0 -1
  163. package/dist/tests/api-client.test.js +0 -86
  164. package/dist/tests/api-client.test.js.map +0 -1
  165. package/dist/tests/client.test.d.ts +0 -2
  166. package/dist/tests/client.test.d.ts.map +0 -1
  167. package/dist/tests/client.test.js +0 -150
  168. package/dist/tests/client.test.js.map +0 -1
  169. package/dist/tests/index.test.d.ts +0 -2
  170. package/dist/tests/index.test.d.ts.map +0 -1
  171. package/dist/tests/index.test.js +0 -8
  172. package/dist/tests/index.test.js.map +0 -1
  173. package/dist/tests/onchain-refund.test.d.ts +0 -2
  174. package/dist/tests/onchain-refund.test.d.ts.map +0 -1
  175. package/dist/tests/onchain-refund.test.js +0 -279
  176. package/dist/tests/onchain-refund.test.js.map +0 -1
  177. package/dist/tests/signer.test.d.ts +0 -2
  178. package/dist/tests/signer.test.d.ts.map +0 -1
  179. package/dist/tests/signer.test.js +0 -92
  180. package/dist/tests/signer.test.js.map +0 -1
  181. package/dist/tests/sqlite-storage.test.d.ts +0 -2
  182. package/dist/tests/sqlite-storage.test.d.ts.map +0 -1
  183. package/dist/tests/sqlite-storage.test.js +0 -160
  184. package/dist/tests/sqlite-storage.test.js.map +0 -1
  185. package/dist/tests/storage.test.d.ts +0 -2
  186. package/dist/tests/storage.test.d.ts.map +0 -1
  187. package/dist/tests/storage.test.js +0 -184
  188. package/dist/tests/storage.test.js.map +0 -1
  189. package/dist/tsconfig.tsbuildinfo +0 -1
  190. package/dist/usdt0-bridge/bridge.d.ts +0 -82
  191. package/dist/usdt0-bridge/bridge.d.ts.map +0 -1
  192. package/dist/usdt0-bridge/bridge.js +0 -56
  193. package/dist/usdt0-bridge/bridge.js.map +0 -1
  194. package/dist/usdt0-bridge/chains.d.ts +0 -41
  195. package/dist/usdt0-bridge/chains.d.ts.map +0 -1
  196. package/dist/usdt0-bridge/chains.js +0 -117
  197. package/dist/usdt0-bridge/chains.js.map +0 -1
  198. package/dist/usdt0-bridge/layerzero-tracker.d.ts +0 -34
  199. package/dist/usdt0-bridge/layerzero-tracker.d.ts.map +0 -1
  200. package/dist/usdt0-bridge/layerzero-tracker.js +0 -86
  201. package/dist/usdt0-bridge/layerzero-tracker.js.map +0 -1
  202. package/dist/usdt0-bridge/oft-abi.d.ts +0 -145
  203. package/dist/usdt0-bridge/oft-abi.d.ts.map +0 -1
  204. package/dist/usdt0-bridge/oft-abi.js +0 -117
  205. package/dist/usdt0-bridge/oft-abi.js.map +0 -1
@@ -1,150 +0,0 @@
1
- import { beforeEach, describe, expect, it } from "vitest";
2
- import { Client, ClientBuilder, InMemoryWalletStorage } from "../src/index.js";
3
- describe("Client", () => {
4
- it("should create a client with builder", async () => {
5
- const client = await Client.builder().build();
6
- expect(client).toBeDefined();
7
- expect(client.baseUrl).toBe("https://apilendaswap.lendasat.com/");
8
- });
9
- it("should expose the underlying API client", async () => {
10
- const client = await Client.builder().build();
11
- expect(client.api).toBeDefined();
12
- expect(client.api.GET).toBeDefined();
13
- expect(client.api.POST).toBeDefined();
14
- });
15
- it("should have convenience methods", async () => {
16
- const client = await Client.builder().build();
17
- expect(client.healthCheck).toBeDefined();
18
- expect(client.getVersion).toBeDefined();
19
- expect(client.getTokens).toBeDefined();
20
- expect(client.getQuote).toBeDefined();
21
- expect(client.getSwap).toBeDefined();
22
- });
23
- });
24
- describe("ClientBuilder", () => {
25
- it("should build a client with default base URL", async () => {
26
- const client = await Client.builder().build();
27
- expect(client).toBeDefined();
28
- expect(client.baseUrl).toBe("https://apilendaswap.lendasat.com/");
29
- });
30
- it("should build a client with custom base URL", async () => {
31
- const client = await Client.builder()
32
- .withBaseUrl("https://custom.api.com")
33
- .build();
34
- expect(client.baseUrl).toBe("https://custom.api.com");
35
- });
36
- it("should build a client with API key", async () => {
37
- const client = await Client.builder().withApiKey("test-api-key").build();
38
- expect(client).toBeDefined();
39
- });
40
- it("should support method chaining", async () => {
41
- const client = await Client.builder()
42
- .withBaseUrl("https://custom.api.com")
43
- .withApiKey("test-api-key")
44
- .build();
45
- expect(client).toBeDefined();
46
- expect(client.baseUrl).toBe("https://custom.api.com");
47
- });
48
- it("should create new builder from ClientBuilder class", async () => {
49
- const builder = new ClientBuilder();
50
- const client = await builder.withBaseUrl("https://test.api.com").build();
51
- expect(client.baseUrl).toBe("https://test.api.com");
52
- });
53
- it("should build a client with signer storage", async () => {
54
- const storage = new InMemoryWalletStorage();
55
- const client = await Client.builder().withSignerStorage(storage).build();
56
- expect(client).toBeDefined();
57
- });
58
- });
59
- describe("Client Signer", () => {
60
- let storage;
61
- beforeEach(() => {
62
- storage = new InMemoryWalletStorage();
63
- });
64
- it("should generate mnemonic on build", async () => {
65
- const client = await Client.builder().withSignerStorage(storage).build();
66
- const mnemonic = client.getMnemonic();
67
- expect(mnemonic.split(" ")).toHaveLength(12);
68
- });
69
- it("should persist mnemonic to storage", async () => {
70
- const client = await Client.builder().withSignerStorage(storage).build();
71
- const mnemonic = client.getMnemonic();
72
- const storedMnemonic = await storage.getMnemonic();
73
- expect(storedMnemonic).toBe(mnemonic);
74
- });
75
- it("should use provided mnemonic", async () => {
76
- const mnemonic = "abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about";
77
- const client = await Client.builder()
78
- .withSignerStorage(storage)
79
- .withMnemonic(mnemonic)
80
- .build();
81
- expect(client.getMnemonic()).toBe(mnemonic);
82
- });
83
- it("should persist provided mnemonic to storage", async () => {
84
- const mnemonic = "abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about";
85
- await Client.builder()
86
- .withSignerStorage(storage)
87
- .withMnemonic(mnemonic)
88
- .build();
89
- const storedMnemonic = await storage.getMnemonic();
90
- expect(storedMnemonic).toBe(mnemonic);
91
- });
92
- it("should load existing mnemonic from storage", async () => {
93
- const mnemonic = "abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about";
94
- await storage.setMnemonic(mnemonic);
95
- const client = await Client.builder().withSignerStorage(storage).build();
96
- expect(client.getMnemonic()).toBe(mnemonic);
97
- });
98
- it("should derive swap params and increment key index", async () => {
99
- const client = await Client.builder().withSignerStorage(storage).build();
100
- const params1 = await client.deriveSwapParams();
101
- expect(params1.keyIndex).toBe(0);
102
- const params2 = await client.deriveSwapParams();
103
- expect(params2.keyIndex).toBe(1);
104
- const keyIndex = await client.getKeyIndex();
105
- expect(keyIndex).toBe(2);
106
- });
107
- it("should derive swap params at specific index", async () => {
108
- const client = await Client.builder().withSignerStorage(storage).build();
109
- const params = client.deriveSwapParamsAtIndex(5);
110
- expect(params.keyIndex).toBe(5);
111
- // Should not affect stored key index
112
- const keyIndex = await client.getKeyIndex();
113
- expect(keyIndex).toBe(0);
114
- });
115
- it("should work without storage (stateless mode)", async () => {
116
- const client = await Client.builder().build();
117
- expect(client.getMnemonic().split(" ")).toHaveLength(12);
118
- });
119
- it("should get user ID xpub", async () => {
120
- const client = await Client.builder().withSignerStorage(storage).build();
121
- const xpub = client.getUserIdXpub();
122
- // Should be a base58-encoded extended public key starting with "xpub"
123
- expect(xpub).toMatch(/^xpub[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]+$/);
124
- expect(xpub).toHaveLength(111);
125
- });
126
- it("should set key index", async () => {
127
- const client = await Client.builder().withSignerStorage(storage).build();
128
- await client.setKeyIndex(10);
129
- const keyIndex = await client.getKeyIndex();
130
- expect(keyIndex).toBe(10);
131
- });
132
- it("should throw when setting key index without storage", async () => {
133
- const client = await Client.builder().build();
134
- await expect(client.setKeyIndex(10)).rejects.toThrow("No signer storage configured");
135
- });
136
- it("should throw on invalid mnemonic", async () => {
137
- await expect(Client.builder().withMnemonic("invalid mnemonic").build()).rejects.toThrow("Invalid mnemonic phrase");
138
- });
139
- it("should derive same params for same mnemonic", async () => {
140
- const mnemonic = "abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about";
141
- const client1 = await Client.builder().withMnemonic(mnemonic).build();
142
- const client2 = await Client.builder().withMnemonic(mnemonic).build();
143
- const params1 = client1.deriveSwapParamsAtIndex(0);
144
- const params2 = client2.deriveSwapParamsAtIndex(0);
145
- expect(params1.keyIndex).toBe(params2.keyIndex);
146
- expect(params1.preimage).toEqual(params2.preimage);
147
- expect(params1.preimageHash).toEqual(params2.preimageHash);
148
- });
149
- });
150
- //# sourceMappingURL=client.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.test.js","sourceRoot":"","sources":["../../tests/client.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=index.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../../tests/index.test.ts"],"names":[],"mappings":""}
@@ -1,8 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { VERSION } from "../src/index.js";
3
- describe("ts-pure-sdk", () => {
4
- it("should export VERSION", () => {
5
- expect(VERSION).toBe("0.0.1");
6
- });
7
- });
8
- //# sourceMappingURL=index.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../tests/index.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE1C,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,EAAE,CAAC,uBAAuB,EAAE,GAAG,EAAE;QAC/B,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=onchain-refund.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"onchain-refund.test.d.ts","sourceRoot":"","sources":["../../tests/onchain-refund.test.ts"],"names":[],"mappings":""}
@@ -1,279 +0,0 @@
1
- import { secp256k1 } from "@noble/curves/secp256k1.js";
2
- import { hex } from "@scure/base";
3
- import { describe, expect, it } from "vitest";
4
- import { buildOnchainRefundTransaction, computeHash160, verifyHtlcAddress, } from "../src/refund/onchain.js";
5
- describe("On-chain refund", () => {
6
- // Test keypairs (deterministic for testing)
7
- const serverSecretKey = new Uint8Array(32).fill(1);
8
- const userSecretKey = new Uint8Array(32).fill(2);
9
- // Get x-only public keys (32 bytes, no prefix)
10
- // secp256k1.getPublicKey returns compressed (33 bytes), slice to get x-only
11
- const serverPubKey = hex.encode(secp256k1.getPublicKey(serverSecretKey, true).slice(1));
12
- const userPubKey = hex.encode(secp256k1.getPublicKey(userSecretKey, true).slice(1));
13
- const userSecretKeyHex = hex.encode(userSecretKey);
14
- // Test secret and hash lock
15
- const secret = new Uint8Array(32).fill(42);
16
- const hashLock = hex.encode(computeHash160(secret));
17
- // Test parameters
18
- const refundLocktime = 1700000000; // Unix timestamp in the past
19
- const fundingTxId = "0".repeat(64); // Dummy txid
20
- const htlcAmount = 100000n; // 100k sats
21
- describe("computeHash160", () => {
22
- it("should compute RIPEMD160(SHA256(data))", () => {
23
- const data = new Uint8Array(32).fill(42);
24
- const hash = computeHash160(data);
25
- expect(hash).toBeInstanceOf(Uint8Array);
26
- expect(hash.length).toBe(20);
27
- // Hash should be deterministic
28
- const hash2 = computeHash160(data);
29
- expect(hex.encode(hash)).toBe(hex.encode(hash2));
30
- });
31
- it("should produce different hashes for different inputs", () => {
32
- const data1 = new Uint8Array(32).fill(1);
33
- const data2 = new Uint8Array(32).fill(2);
34
- const hash1 = computeHash160(data1);
35
- const hash2 = computeHash160(data2);
36
- expect(hex.encode(hash1)).not.toBe(hex.encode(hash2));
37
- });
38
- });
39
- describe("verifyHtlcAddress", () => {
40
- it("should return true for matching HTLC parameters", () => {
41
- // Verify the HTLC address matches
42
- const isValid = verifyHtlcAddress("tb1p6enqnu9nqj52wzy6tl8qqtjfsxae2un66gwwp0hjydayydez7xsqz8ycd8", "9befb12985069ca625bce37f13af8acbb66e46bb", "6c932b95705b07c4236a1abfabe283399774449914f6c4d7faeb30fd7f3c6b0e", "d149150a0c344bae35cfe0cd237e50bd41ec56fe7c2a2f5f8509911ec8c5a0e2", 1769752815, "signet");
43
- expect(isValid).toBe(true);
44
- });
45
- it("should return true for matching HTLC parameters", () => {
46
- // Build a transaction to get the HTLC address
47
- const result = buildOnchainRefundTransaction({
48
- fundingTxId,
49
- fundingVout: 0,
50
- htlcAmount,
51
- hashLock,
52
- serverPubKey,
53
- userPubKey,
54
- userSecretKey: userSecretKeyHex,
55
- refundLocktime,
56
- destinationAddress: "bcrt1qw508d6qejxtdg4y5r3zarvary0c5xw7kygt080",
57
- feeRateSatPerVb: 1,
58
- network: "regtest",
59
- });
60
- console.log(`verifyHtlcAddress: ${result.htlcAddress}`);
61
- // Verify the HTLC address matches
62
- const isValid = verifyHtlcAddress(result.htlcAddress, hashLock, serverPubKey, userPubKey, refundLocktime, "regtest");
63
- expect(result.htlcAddress).toBe("bcrt1p9y8e33fmv06c9wr4rpcfkccpsankaqcu2kjkzlekjfv6lsmfhaqqplksqr");
64
- expect(isValid).toBe(true);
65
- });
66
- it("should return false for wrong hash lock", () => {
67
- const result = buildOnchainRefundTransaction({
68
- fundingTxId,
69
- fundingVout: 0,
70
- htlcAmount,
71
- hashLock,
72
- serverPubKey,
73
- userPubKey,
74
- userSecretKey: userSecretKeyHex,
75
- refundLocktime,
76
- destinationAddress: "tb1qw508d6qejxtdg4y5r3zarvary0c5xw7kxpjzsx",
77
- feeRateSatPerVb: 1,
78
- network: "testnet",
79
- });
80
- // Use a different hash lock
81
- const wrongHashLock = hex.encode(computeHash160(new Uint8Array(32).fill(99)));
82
- const isValid = verifyHtlcAddress(result.htlcAddress, wrongHashLock, serverPubKey, userPubKey, refundLocktime, "testnet");
83
- expect(isValid).toBe(false);
84
- });
85
- it("should return false for wrong server pubkey", () => {
86
- const result = buildOnchainRefundTransaction({
87
- fundingTxId,
88
- fundingVout: 0,
89
- htlcAmount,
90
- hashLock,
91
- serverPubKey,
92
- userPubKey,
93
- userSecretKey: userSecretKeyHex,
94
- refundLocktime,
95
- destinationAddress: "tb1qw508d6qejxtdg4y5r3zarvary0c5xw7kxpjzsx",
96
- feeRateSatPerVb: 1,
97
- network: "testnet",
98
- });
99
- // Use a different server pubkey
100
- const wrongServerPubKey = hex.encode(secp256k1.getPublicKey(new Uint8Array(32).fill(99), true).slice(1));
101
- const isValid = verifyHtlcAddress(result.htlcAddress, hashLock, wrongServerPubKey, userPubKey, refundLocktime, "testnet");
102
- expect(isValid).toBe(false);
103
- });
104
- it("should return false for wrong refund locktime", () => {
105
- const result = buildOnchainRefundTransaction({
106
- fundingTxId,
107
- fundingVout: 0,
108
- htlcAmount,
109
- hashLock,
110
- serverPubKey,
111
- userPubKey,
112
- userSecretKey: userSecretKeyHex,
113
- refundLocktime,
114
- destinationAddress: "tb1qw508d6qejxtdg4y5r3zarvary0c5xw7kxpjzsx",
115
- feeRateSatPerVb: 1,
116
- network: "testnet",
117
- });
118
- const isValid = verifyHtlcAddress(result.htlcAddress, hashLock, serverPubKey, userPubKey, refundLocktime + 1, // Wrong locktime
119
- "testnet");
120
- expect(isValid).toBe(false);
121
- });
122
- it("should work across different networks", () => {
123
- // Build for mainnet
124
- const mainnetResult = buildOnchainRefundTransaction({
125
- fundingTxId,
126
- fundingVout: 0,
127
- htlcAmount,
128
- hashLock,
129
- serverPubKey,
130
- userPubKey,
131
- userSecretKey: userSecretKeyHex,
132
- refundLocktime,
133
- destinationAddress: "bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4",
134
- feeRateSatPerVb: 1,
135
- network: "mainnet",
136
- });
137
- // Verify with correct network
138
- expect(verifyHtlcAddress(mainnetResult.htlcAddress, hashLock, serverPubKey, userPubKey, refundLocktime, "mainnet")).toBe(true);
139
- // Verify with wrong network should fail (different address encoding)
140
- expect(verifyHtlcAddress(mainnetResult.htlcAddress, hashLock, serverPubKey, userPubKey, refundLocktime, "testnet")).toBe(false);
141
- });
142
- });
143
- // describe("buildOnchainRefundTransaction", () => {
144
- // it("should build a valid refund transaction", () => {
145
- // const result = buildOnchainRefundTransaction({
146
- // fundingTxId,
147
- // fundingVout: 0,
148
- // htlcAmount,
149
- // hashLock,
150
- // serverPubKey,
151
- // userPubKey,
152
- // userSecretKey: userSecretKeyHex,
153
- // refundLocktime,
154
- // destinationAddress: "tb1qw508d6qejxtdg4y5r3zarvary0c5xw7kxpjzsx",
155
- // feeRateSatPerVb: 1,
156
- // network: "testnet",
157
- // });
158
- //
159
- // expect(result.txHex).toBeDefined();
160
- // expect(result.txHex.length).toBeGreaterThan(0);
161
- // expect(result.txId).toBeDefined();
162
- // expect(result.txId.length).toBe(64);
163
- // expect(result.refundAmount).toBeDefined();
164
- // expect(result.fee).toBeDefined();
165
- // });
166
- //
167
- // it("should deduct fee from refund amount", () => {
168
- // const feeRate = 5;
169
- // const result = buildOnchainRefundTransaction({
170
- // fundingTxId,
171
- // fundingVout: 0,
172
- // htlcAmount,
173
- // hashLock,
174
- // serverPubKey,
175
- // userPubKey,
176
- // userSecretKey: userSecretKeyHex,
177
- // refundLocktime,
178
- // destinationAddress: "tb1qw508d6qejxtdg4y5r3zarvary0c5xw7kxpjzsx",
179
- // feeRateSatPerVb: feeRate,
180
- // network: "testnet",
181
- // });
182
- //
183
- // expect(result.refundAmount + result.fee).toBe(htlcAmount);
184
- // expect(result.fee).toBeGreaterThan(0n);
185
- // });
186
- //
187
- // it("should throw if fee exceeds HTLC amount", () => {
188
- // const smallAmount = 100n; // Very small amount
189
- // const highFeeRate = 10; // Will exceed amount
190
- //
191
- // expect(() =>
192
- // buildOnchainRefundTransaction({
193
- // fundingTxId,
194
- // fundingVout: 0,
195
- // htlcAmount: smallAmount,
196
- // hashLock,
197
- // serverPubKey,
198
- // userPubKey,
199
- // userSecretKey: userSecretKeyHex,
200
- // refundLocktime,
201
- // destinationAddress: "tb1qw508d6qejxtdg4y5r3zarvary0c5xw7kxpjzsx",
202
- // feeRateSatPerVb: highFeeRate,
203
- // network: "testnet",
204
- // }),
205
- // ).toThrow("exceeds HTLC amount");
206
- // });
207
- //
208
- // it("should throw for invalid hash lock length", () => {
209
- // expect(() =>
210
- // buildOnchainRefundTransaction({
211
- // fundingTxId,
212
- // fundingVout: 0,
213
- // htlcAmount,
214
- // hashLock: "abcd", // Too short
215
- // serverPubKey,
216
- // userPubKey,
217
- // userSecretKey: userSecretKeyHex,
218
- // refundLocktime,
219
- // destinationAddress: "tb1qw508d6qejxtdg4y5r3zarvary0c5xw7kxpjzsx",
220
- // feeRateSatPerVb: 1,
221
- // network: "testnet",
222
- // }),
223
- // ).toThrow("Invalid hash lock length");
224
- // });
225
- //
226
- // it("should throw for invalid server pubkey length", () => {
227
- // expect(() =>
228
- // buildOnchainRefundTransaction({
229
- // fundingTxId,
230
- // fundingVout: 0,
231
- // htlcAmount,
232
- // hashLock,
233
- // serverPubKey: "abcd", // Too short
234
- // userPubKey,
235
- // userSecretKey: userSecretKeyHex,
236
- // refundLocktime,
237
- // destinationAddress: "tb1qw508d6qejxtdg4y5r3zarvary0c5xw7kxpjzsx",
238
- // feeRateSatPerVb: 1,
239
- // network: "testnet",
240
- // }),
241
- // ).toThrow("Invalid server pubkey length");
242
- // });
243
- //
244
- // it("should work for different networks", () => {
245
- // // Mainnet
246
- // const mainnetResult = buildOnchainRefundTransaction({
247
- // fundingTxId,
248
- // fundingVout: 0,
249
- // htlcAmount,
250
- // hashLock,
251
- // serverPubKey,
252
- // userPubKey,
253
- // userSecretKey: userSecretKeyHex,
254
- // refundLocktime,
255
- // destinationAddress: "bc1qw508d6qejxtdg4y5r3zarvary0c5xw7kv8f3t4",
256
- // feeRateSatPerVb: 1,
257
- // network: "mainnet",
258
- // });
259
- // expect(mainnetResult.txHex).toBeDefined();
260
- //
261
- // // Signet (uses testnet addresses)
262
- // const signetResult = buildOnchainRefundTransaction({
263
- // fundingTxId,
264
- // fundingVout: 0,
265
- // htlcAmount,
266
- // hashLock,
267
- // serverPubKey,
268
- // userPubKey,
269
- // userSecretKey: userSecretKeyHex,
270
- // refundLocktime,
271
- // destinationAddress: "tb1qw508d6qejxtdg4y5r3zarvary0c5xw7kxpjzsx",
272
- // feeRateSatPerVb: 1,
273
- // network: "signet",
274
- // });
275
- // expect(signetResult.txHex).toBeDefined();
276
- // });
277
- // });
278
- });
279
- //# sourceMappingURL=onchain-refund.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"onchain-refund.test.js","sourceRoot":"","sources":["../../tests/onchain-refund.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=signer.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"signer.test.d.ts","sourceRoot":"","sources":["../../tests/signer.test.ts"],"names":[],"mappings":""}
@@ -1,92 +0,0 @@
1
- import { describe, expect, it } from "vitest";
2
- import { bytesToHex, Signer } from "../src/index.js";
3
- describe("Signer", () => {
4
- describe("generate", () => {
5
- it("should generate a signer with 12 words by default", () => {
6
- const signer = Signer.generate();
7
- const words = signer.mnemonic.split(" ");
8
- expect(words).toHaveLength(12);
9
- });
10
- it("should generate a signer with 24 words when specified", () => {
11
- const signer = Signer.generate(24);
12
- const words = signer.mnemonic.split(" ");
13
- expect(words).toHaveLength(24);
14
- });
15
- it("should generate different mnemonics each time", () => {
16
- const signer1 = Signer.generate();
17
- const signer2 = Signer.generate();
18
- expect(signer1.mnemonic).not.toBe(signer2.mnemonic);
19
- });
20
- });
21
- describe("fromMnemonic", () => {
22
- it("should create a signer from a valid mnemonic", () => {
23
- const mnemonic = "abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about";
24
- const signer = Signer.fromMnemonic(mnemonic);
25
- expect(signer.mnemonic).toBe(mnemonic);
26
- });
27
- it("should normalize mnemonic (trim and lowercase)", () => {
28
- const mnemonic = " ABANDON ABANDON ABANDON ABANDON ABANDON ABANDON ABANDON ABANDON ABANDON ABANDON ABANDON ABOUT ";
29
- const signer = Signer.fromMnemonic(mnemonic);
30
- expect(signer.mnemonic).toBe("abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about");
31
- });
32
- it("should throw on invalid mnemonic", () => {
33
- expect(() => Signer.fromMnemonic("invalid mnemonic phrase")).toThrow("Invalid mnemonic phrase");
34
- });
35
- });
36
- describe("deriveSwapParams", () => {
37
- const mnemonic = "abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about";
38
- it("should derive swap parameters at index 0", () => {
39
- const signer = Signer.fromMnemonic(mnemonic);
40
- const params = signer.deriveSwapParams(0);
41
- expect(params.secretKey).toHaveLength(32);
42
- expect(params.publicKey).toHaveLength(33);
43
- expect(params.preimage).toHaveLength(32);
44
- expect(params.preimageHash).toHaveLength(32);
45
- expect(params.userId).toHaveLength(33);
46
- expect(params.keyIndex).toBe(0);
47
- });
48
- it("should derive different parameters for different indices", () => {
49
- const signer = Signer.fromMnemonic(mnemonic);
50
- const params0 = signer.deriveSwapParams(0);
51
- const params1 = signer.deriveSwapParams(1);
52
- expect(bytesToHex(params0.secretKey)).not.toBe(bytesToHex(params1.secretKey));
53
- expect(bytesToHex(params0.publicKey)).not.toBe(bytesToHex(params1.publicKey));
54
- expect(bytesToHex(params0.preimage)).not.toBe(bytesToHex(params1.preimage));
55
- expect(bytesToHex(params0.preimageHash)).not.toBe(bytesToHex(params1.preimageHash));
56
- });
57
- it("should derive same parameters for same index", () => {
58
- const signer = Signer.fromMnemonic(mnemonic);
59
- const params1 = signer.deriveSwapParams(0);
60
- const params2 = signer.deriveSwapParams(0);
61
- expect(bytesToHex(params1.secretKey)).toBe(bytesToHex(params2.secretKey));
62
- expect(bytesToHex(params1.publicKey)).toBe(bytesToHex(params2.publicKey));
63
- expect(bytesToHex(params1.preimage)).toBe(bytesToHex(params2.preimage));
64
- expect(bytesToHex(params1.preimageHash)).toBe(bytesToHex(params2.preimageHash));
65
- });
66
- it("should derive same parameters from same mnemonic", () => {
67
- const signer1 = Signer.fromMnemonic(mnemonic);
68
- const signer2 = Signer.fromMnemonic(mnemonic);
69
- const params1 = signer1.deriveSwapParams(0);
70
- const params2 = signer2.deriveSwapParams(0);
71
- expect(bytesToHex(params1.secretKey)).toBe(bytesToHex(params2.secretKey));
72
- expect(bytesToHex(params1.preimage)).toBe(bytesToHex(params2.preimage));
73
- });
74
- });
75
- describe("getUserIdXpubString", () => {
76
- it("should return a base58-encoded xpub", () => {
77
- const mnemonic = "abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about";
78
- const signer = Signer.fromMnemonic(mnemonic);
79
- const xpub = signer.getUserIdXpubString();
80
- // Should be a base58-encoded extended public key starting with "xpub"
81
- expect(xpub).toMatch(/^xpub[123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz]+$/);
82
- expect(xpub).toHaveLength(111); // Standard xpub length
83
- });
84
- it("should return same xpub for same mnemonic", () => {
85
- const mnemonic = "abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about";
86
- const signer1 = Signer.fromMnemonic(mnemonic);
87
- const signer2 = Signer.fromMnemonic(mnemonic);
88
- expect(signer1.getUserIdXpubString()).toBe(signer2.getUserIdXpubString());
89
- });
90
- });
91
- });
92
- //# sourceMappingURL=signer.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"signer.test.js","sourceRoot":"","sources":["../../tests/signer.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=sqlite-storage.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sqlite-storage.test.d.ts","sourceRoot":"","sources":["../../tests/sqlite-storage.test.ts"],"names":[],"mappings":""}