@ledgerhq/coin-kaspa 1.3.0-nightly.7 → 1.3.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.
Files changed (163) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +26 -67
  3. package/lib/logic/tests/bip32.test.d.ts +2 -0
  4. package/lib/logic/tests/bip32.test.d.ts.map +1 -0
  5. package/lib/logic/tests/bip32.test.js +108 -0
  6. package/lib/logic/tests/bip32.test.js.map +1 -0
  7. package/lib/logic/tests/getFeeRate.test.d.ts +2 -0
  8. package/lib/logic/tests/getFeeRate.test.d.ts.map +1 -0
  9. package/lib/logic/tests/getFeeRate.test.js +57 -0
  10. package/lib/logic/tests/getFeeRate.test.js.map +1 -0
  11. package/lib/logic/tests/kaspaAddresses.test.d.ts +2 -0
  12. package/lib/logic/tests/kaspaAddresses.test.d.ts.map +1 -0
  13. package/lib/logic/tests/kaspaAddresses.test.js +172 -0
  14. package/lib/logic/tests/kaspaAddresses.test.js.map +1 -0
  15. package/lib/logic/tests/massCalcluation.test.d.ts +2 -0
  16. package/lib/logic/tests/massCalcluation.test.d.ts.map +1 -0
  17. package/lib/logic/tests/massCalcluation.test.js +27 -0
  18. package/lib/logic/tests/massCalcluation.test.js.map +1 -0
  19. package/lib/logic/tests/scanAddresses.integ.test.d.ts +2 -0
  20. package/lib/logic/tests/scanAddresses.integ.test.d.ts.map +1 -0
  21. package/lib/logic/tests/scanAddresses.integ.test.js +18 -0
  22. package/lib/logic/tests/scanAddresses.integ.test.js.map +1 -0
  23. package/lib/logic/tests/scanOperations.integ.test.d.ts +2 -0
  24. package/lib/logic/tests/scanOperations.integ.test.d.ts.map +1 -0
  25. package/lib/logic/tests/scanOperations.integ.test.js +254 -0
  26. package/lib/logic/tests/scanOperations.integ.test.js.map +1 -0
  27. package/lib/logic/tests/scanOperations.test.d.ts +2 -0
  28. package/lib/logic/tests/scanOperations.test.d.ts.map +1 -0
  29. package/lib/logic/tests/scanOperations.test.js +184 -0
  30. package/lib/logic/tests/scanOperations.test.js.map +1 -0
  31. package/lib/logic/tests/scanUtxos.integ.test.d.ts +2 -0
  32. package/lib/logic/tests/scanUtxos.integ.test.d.ts.map +1 -0
  33. package/lib/logic/tests/scanUtxos.integ.test.js +13 -0
  34. package/lib/logic/tests/scanUtxos.integ.test.js.map +1 -0
  35. package/lib/logic/tests/scanUtxos.test.d.ts +2 -0
  36. package/lib/logic/tests/scanUtxos.test.d.ts.map +1 -0
  37. package/lib/logic/tests/scanUtxos.test.js +167 -0
  38. package/lib/logic/tests/scanUtxos.test.js.map +1 -0
  39. package/lib/logic/tests/utxoLib.test.d.ts +2 -0
  40. package/lib/logic/tests/utxoLib.test.d.ts.map +1 -0
  41. package/lib/logic/tests/utxoLib.test.js +26 -0
  42. package/lib/logic/tests/utxoLib.test.js.map +1 -0
  43. package/lib/logic/tests/utxoSelection.test.d.ts +10 -0
  44. package/lib/logic/tests/utxoSelection.test.d.ts.map +1 -0
  45. package/lib/logic/tests/utxoSelection.test.js +256 -0
  46. package/lib/logic/tests/utxoSelection.test.js.map +1 -0
  47. package/lib/logic/tests/validAddress.test.d.ts +2 -0
  48. package/lib/logic/tests/validAddress.test.d.ts.map +1 -0
  49. package/lib/logic/tests/validAddress.test.js +56 -0
  50. package/lib/logic/tests/validAddress.test.js.map +1 -0
  51. package/lib/network/tests/getAddressesActive.test.d.ts +2 -0
  52. package/lib/network/tests/getAddressesActive.test.d.ts.map +1 -0
  53. package/lib/network/tests/getAddressesActive.test.js +65 -0
  54. package/lib/network/tests/getAddressesActive.test.js.map +1 -0
  55. package/lib/network/tests/getBalancesForAddresss.test.d.ts +2 -0
  56. package/lib/network/tests/getBalancesForAddresss.test.d.ts.map +1 -0
  57. package/lib/network/tests/getBalancesForAddresss.test.js +40 -0
  58. package/lib/network/tests/getBalancesForAddresss.test.js.map +1 -0
  59. package/lib/network/tests/getBlockDagInfo.test.d.ts +2 -0
  60. package/lib/network/tests/getBlockDagInfo.test.d.ts.map +1 -0
  61. package/lib/network/tests/getBlockDagInfo.test.js +36 -0
  62. package/lib/network/tests/getBlockDagInfo.test.js.map +1 -0
  63. package/lib/network/tests/getFeeEstimate.test.d.ts +2 -0
  64. package/lib/network/tests/getFeeEstimate.test.d.ts.map +1 -0
  65. package/lib/network/tests/getFeeEstimate.test.js +54 -0
  66. package/lib/network/tests/getFeeEstimate.test.js.map +1 -0
  67. package/lib/network/tests/getTransactions.test.d.ts +2 -0
  68. package/lib/network/tests/getTransactions.test.d.ts.map +1 -0
  69. package/lib/network/tests/getTransactions.test.js +157 -0
  70. package/lib/network/tests/getTransactions.test.js.map +1 -0
  71. package/lib/network/tests/getUtxosForAddress.test.d.ts +2 -0
  72. package/lib/network/tests/getUtxosForAddress.test.d.ts.map +1 -0
  73. package/lib/network/tests/getUtxosForAddress.test.js +142 -0
  74. package/lib/network/tests/getUtxosForAddress.test.js.map +1 -0
  75. package/lib/network/tests/getVirtualChainBlueScore.test.d.ts +2 -0
  76. package/lib/network/tests/getVirtualChainBlueScore.test.d.ts.map +1 -0
  77. package/lib/network/tests/getVirtualChainBlueScore.test.js +27 -0
  78. package/lib/network/tests/getVirtualChainBlueScore.test.js.map +1 -0
  79. package/lib/network/tests/submitTransaction.test.d.ts +2 -0
  80. package/lib/network/tests/submitTransaction.test.d.ts.map +1 -0
  81. package/lib/network/tests/submitTransaction.test.js +43 -0
  82. package/lib/network/tests/submitTransaction.test.js.map +1 -0
  83. package/lib-es/logic/tests/bip32.test.d.ts +2 -0
  84. package/lib-es/logic/tests/bip32.test.d.ts.map +1 -0
  85. package/lib-es/logic/tests/bip32.test.js +80 -0
  86. package/lib-es/logic/tests/bip32.test.js.map +1 -0
  87. package/lib-es/logic/tests/getFeeRate.test.d.ts +2 -0
  88. package/lib-es/logic/tests/getFeeRate.test.d.ts.map +1 -0
  89. package/lib-es/logic/tests/getFeeRate.test.js +55 -0
  90. package/lib-es/logic/tests/getFeeRate.test.js.map +1 -0
  91. package/lib-es/logic/tests/kaspaAddresses.test.d.ts +2 -0
  92. package/lib-es/logic/tests/kaspaAddresses.test.d.ts.map +1 -0
  93. package/lib-es/logic/tests/kaspaAddresses.test.js +170 -0
  94. package/lib-es/logic/tests/kaspaAddresses.test.js.map +1 -0
  95. package/lib-es/logic/tests/massCalcluation.test.d.ts +2 -0
  96. package/lib-es/logic/tests/massCalcluation.test.d.ts.map +1 -0
  97. package/lib-es/logic/tests/massCalcluation.test.js +22 -0
  98. package/lib-es/logic/tests/massCalcluation.test.js.map +1 -0
  99. package/lib-es/logic/tests/scanAddresses.integ.test.d.ts +2 -0
  100. package/lib-es/logic/tests/scanAddresses.integ.test.d.ts.map +1 -0
  101. package/lib-es/logic/tests/scanAddresses.integ.test.js +16 -0
  102. package/lib-es/logic/tests/scanAddresses.integ.test.js.map +1 -0
  103. package/lib-es/logic/tests/scanOperations.integ.test.d.ts +2 -0
  104. package/lib-es/logic/tests/scanOperations.integ.test.d.ts.map +1 -0
  105. package/lib-es/logic/tests/scanOperations.integ.test.js +249 -0
  106. package/lib-es/logic/tests/scanOperations.integ.test.js.map +1 -0
  107. package/lib-es/logic/tests/scanOperations.test.d.ts +2 -0
  108. package/lib-es/logic/tests/scanOperations.test.d.ts.map +1 -0
  109. package/lib-es/logic/tests/scanOperations.test.js +156 -0
  110. package/lib-es/logic/tests/scanOperations.test.js.map +1 -0
  111. package/lib-es/logic/tests/scanUtxos.integ.test.d.ts +2 -0
  112. package/lib-es/logic/tests/scanUtxos.integ.test.d.ts.map +1 -0
  113. package/lib-es/logic/tests/scanUtxos.integ.test.js +11 -0
  114. package/lib-es/logic/tests/scanUtxos.integ.test.js.map +1 -0
  115. package/lib-es/logic/tests/scanUtxos.test.d.ts +2 -0
  116. package/lib-es/logic/tests/scanUtxos.test.d.ts.map +1 -0
  117. package/lib-es/logic/tests/scanUtxos.test.js +139 -0
  118. package/lib-es/logic/tests/scanUtxos.test.js.map +1 -0
  119. package/lib-es/logic/tests/utxoLib.test.d.ts +2 -0
  120. package/lib-es/logic/tests/utxoLib.test.d.ts.map +1 -0
  121. package/lib-es/logic/tests/utxoLib.test.js +24 -0
  122. package/lib-es/logic/tests/utxoLib.test.js.map +1 -0
  123. package/lib-es/logic/tests/utxoSelection.test.d.ts +10 -0
  124. package/lib-es/logic/tests/utxoSelection.test.d.ts.map +1 -0
  125. package/lib-es/logic/tests/utxoSelection.test.js +229 -0
  126. package/lib-es/logic/tests/utxoSelection.test.js.map +1 -0
  127. package/lib-es/logic/tests/validAddress.test.d.ts +2 -0
  128. package/lib-es/logic/tests/validAddress.test.d.ts.map +1 -0
  129. package/lib-es/logic/tests/validAddress.test.js +54 -0
  130. package/lib-es/logic/tests/validAddress.test.js.map +1 -0
  131. package/lib-es/network/tests/getAddressesActive.test.d.ts +2 -0
  132. package/lib-es/network/tests/getAddressesActive.test.d.ts.map +1 -0
  133. package/lib-es/network/tests/getAddressesActive.test.js +63 -0
  134. package/lib-es/network/tests/getAddressesActive.test.js.map +1 -0
  135. package/lib-es/network/tests/getBalancesForAddresss.test.d.ts +2 -0
  136. package/lib-es/network/tests/getBalancesForAddresss.test.d.ts.map +1 -0
  137. package/lib-es/network/tests/getBalancesForAddresss.test.js +38 -0
  138. package/lib-es/network/tests/getBalancesForAddresss.test.js.map +1 -0
  139. package/lib-es/network/tests/getBlockDagInfo.test.d.ts +2 -0
  140. package/lib-es/network/tests/getBlockDagInfo.test.d.ts.map +1 -0
  141. package/lib-es/network/tests/getBlockDagInfo.test.js +34 -0
  142. package/lib-es/network/tests/getBlockDagInfo.test.js.map +1 -0
  143. package/lib-es/network/tests/getFeeEstimate.test.d.ts +2 -0
  144. package/lib-es/network/tests/getFeeEstimate.test.d.ts.map +1 -0
  145. package/lib-es/network/tests/getFeeEstimate.test.js +52 -0
  146. package/lib-es/network/tests/getFeeEstimate.test.js.map +1 -0
  147. package/lib-es/network/tests/getTransactions.test.d.ts +2 -0
  148. package/lib-es/network/tests/getTransactions.test.d.ts.map +1 -0
  149. package/lib-es/network/tests/getTransactions.test.js +155 -0
  150. package/lib-es/network/tests/getTransactions.test.js.map +1 -0
  151. package/lib-es/network/tests/getUtxosForAddress.test.d.ts +2 -0
  152. package/lib-es/network/tests/getUtxosForAddress.test.d.ts.map +1 -0
  153. package/lib-es/network/tests/getUtxosForAddress.test.js +140 -0
  154. package/lib-es/network/tests/getUtxosForAddress.test.js.map +1 -0
  155. package/lib-es/network/tests/getVirtualChainBlueScore.test.d.ts +2 -0
  156. package/lib-es/network/tests/getVirtualChainBlueScore.test.d.ts.map +1 -0
  157. package/lib-es/network/tests/getVirtualChainBlueScore.test.js +25 -0
  158. package/lib-es/network/tests/getVirtualChainBlueScore.test.js.map +1 -0
  159. package/lib-es/network/tests/submitTransaction.test.d.ts +2 -0
  160. package/lib-es/network/tests/submitTransaction.test.d.ts.map +1 -0
  161. package/lib-es/network/tests/submitTransaction.test.js +41 -0
  162. package/lib-es/network/tests/submitTransaction.test.js.map +1 -0
  163. package/package.json +11 -11
@@ -0,0 +1,249 @@
1
+ import expect from "expect";
2
+ import { BigNumber } from "bignumber.js";
3
+ import { scanOperations } from "../scanOperations";
4
+ describe("scan transactions for multiple addresses", () => {
5
+ it("One address", async () => {
6
+ const address = "kaspa:qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkx9awp4e";
7
+ const result = await scanOperations([address], "");
8
+ expect(result.length).toBeGreaterThan(20);
9
+ const exampleTx = result.find(res => res.hash === "d3b2d5542d8c943a90b827c4adfe8fe366c8bd8dfb5eb32627cba4b7e9a14ef5");
10
+ expect(exampleTx).toBeDefined();
11
+ expect(exampleTx?.fee.eq(BigNumber(10000))).toBe(true);
12
+ expect(exampleTx?.value.eq(BigNumber(1000000))).toBe(true);
13
+ expect(exampleTx?.type).toBe("IN");
14
+ expect(exampleTx?.senders.length).toBe(1);
15
+ expect(exampleTx?.senders[0]).toBe("kaspa:qr7muv5ywzgjkx6kj20nvp8yes4xg5dxz8dhntkn0jxm4gucuh5d2lv2nh2as");
16
+ expect(exampleTx?.recipients.length).toBe(2);
17
+ expect(exampleTx?.recipients.includes("kaspa:qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkx9awp4e")).toBe(true);
18
+ expect(exampleTx?.recipients.includes("kaspa:qrhrdg74c6he64ydeevnsxp9c7eu3d0sct2g5rlt3lj7gzyapnl5zzf6spefa")).toBe(true);
19
+ // it's a burn address, so it's definetly an IN-operation
20
+ result.slice(0, 50).forEach(tx => {
21
+ expect(tx.type).toBe("IN");
22
+ });
23
+ });
24
+ it("Two addresses", async () => {
25
+ const addresses = [
26
+ "kaspa:qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkx9awp4e",
27
+ "kaspa:qqkqkzjvr7zwxxmjxjkmxxdwju9kjs6e9u82uh59z07vgaks6gg62v8707g73",
28
+ ];
29
+ const result = await scanOperations(addresses, "");
30
+ expect(result.length).toBeGreaterThan(20);
31
+ // both addresses in outputs
32
+ expect(result.find(res => res.recipients.includes(addresses[0]))).toBeDefined();
33
+ expect(result.find(res => res.recipients.includes(addresses[1]))).toBeDefined();
34
+ });
35
+ it("200 addresses should be done in max 10s", async () => {
36
+ const addresses = [
37
+ "kaspa:qq82f9sdsqqkr74memhxt9yrefc8vq9khf5vt6xjp4tscc3pdenmks29mlp9y",
38
+ "kaspa:qqq7n4n232754kgw6jeu4zu86uerwn4kq9lnl2n2prwl3t2t9hvec720vk9s2",
39
+ "kaspa:qpc6twj20gxqpeyxvgqe3v4y2ng8t0tawfax89jkf8f24wazmcreu9ggw3crl",
40
+ "kaspa:qp09jt0gh9qmhymfyqpga38avm098nm5j2x4uz4kfxs6kyv6u0qg6z09uknmw",
41
+ "kaspa:qphv6h6e0dv605j2vz6rwgj0e28fh4nupssfyq3msaex6w7y3gh0kny8rwhrp",
42
+ "kaspa:qrp78nf43jaz3zk0j4dxga4ncdzk95xhun95hp6scyh6g6z7kwugy02wfw6ee",
43
+ "kaspa:qrkacr4jtl8fznhre26rttuprqj9kz02ntks9v8gftm2ms5qjqnwqmdjhf4z7",
44
+ "kaspa:qzu2meys866jtsl48h6wu99j9s90t8u0ednp3pwhcmmdyttdufusjsr3l2tsz",
45
+ "kaspa:qr8ng05d4s46ayggcv9mvaxr0x8yqpv5ztw969zfye59xemp3ph4vazqt693p",
46
+ "kaspa:qqv6t7vvgkk6nfpruwttqnfxhjn65xxdd8vjxw5nkq5zkncps6e6x33880l4r",
47
+ "kaspa:qre7kw0x393sg3w0plmy5x3kpgtct405j7g42tnv2um72z0qynruyrc3d0zcv",
48
+ "kaspa:qpzd6zhske64d0jvxp8kn93h5dfd2j39gj8nzdpt229l30sr8ln9jd2mjzamq",
49
+ "kaspa:qpkq06nnt20gm66cg363uycws75tga4qkq4za4dz5s86zuky6l7m2wsxqy5zw",
50
+ "kaspa:qqcfxdkc60fymkl5cc0fxwnhhh8nth9spsrxcn34j63ktr6nr24n7srpr2zm2",
51
+ "kaspa:qqw80l6g0xwt00q09tlauasxnp9h0vrgwxfly28255j64rt3vvrw6m05pe98j",
52
+ "kaspa:qrukqftcmhffevuszj60l46z7m98kdf7h9cfmtxelufvaf5xfsj86fdjxtmm2",
53
+ "kaspa:qr4pquk0yqcvr5ldpv46stpra3pqrzaywkfn0cn9f7rkcy4xgu7kx03mm5yls",
54
+ "kaspa:qp4laulwqz09qnrw6euysq0ae59mf9nwpkchhsjev9y8pw2f95mt5du6fkpa5",
55
+ "kaspa:qzthpx76mw6206p3ls6j23xxvhjwrd6920djfhdte4tc09v8jqhxgtlqw80xn",
56
+ "kaspa:qpkj88e8008l9j2h40t48570xz3u9l8y06vfqd8pwzsmnunhnd73zls5hdzul",
57
+ "kaspa:qrhluzyhy2n5u57z7f4jn4n2fjwjcd86ewge3j9h8dvtel2c8ldmwcvylp4hc",
58
+ "kaspa:qz6k0pz8shqd4zfpmqpspl6j0purdhwq0xy2h8serqw07cppshflcr3mhe248",
59
+ "kaspa:qrckwt9rumxx8r7qnhaec50jjzun70nt7z5gp6jzce0x6ce7q4trvd9h2de7h",
60
+ "kaspa:qpxd49lqfsm8xc7h8zfrq7hsepuhyxcv7rjw7uh8zdarptsphglvwyft86lq0",
61
+ "kaspa:qqazyredarlyecvyu4hajf93rm2h7psnne9zdjdfte30z9kusmakyfqzqwejh",
62
+ "kaspa:qr75stkhe6wwylvnhr0209j2s628ljhm2mcd98xwxtny00wt8k25slr377s42",
63
+ "kaspa:qz02cr63rr5q5c255gym9h8wyh35nx55kzj5vsecesnnlmkx30tw50xmqx68x",
64
+ "kaspa:qpd79h3q5n44vtnnv453vdag0jjreswm7j4n7yn9pk6z02xres0w7xtq89vcp",
65
+ "kaspa:qrea9nx96khcenx7s7getyt383xxtp2tnqha6hckkfx2hnscrtse6kkgt5smq",
66
+ "kaspa:qzjaa4cvngeggxppvceee23tvn45888gxs9qsye26ktmjphcfmtfsmmhl7qn5",
67
+ "kaspa:qzuac7efd533gcrdlg9wlghagv78r0v6hr3ww5n0sknzvw6ultlpssvpw5lnp",
68
+ "kaspa:qz3qzsg08w8eczkyn9nqcc3wvdh800cq6ef6capn5etrc78qu0m2s2tz2neqe",
69
+ "kaspa:qpanxyfr78fx8pm5wxvsu6zjfe8gagm4nw4v38rucfqtjerclly0jdyxc0et3",
70
+ "kaspa:qzl478lkwhmtdm779weq56grykxlljauz2rwrcclwm5zy3qwzxxa2km4nl66f",
71
+ "kaspa:qrxlupzem0vag3nps4x7msza47kxc97fhr6kac00qwj5nhd7tqadve053e37q",
72
+ "kaspa:qzfgltqxy8wxle0mnsalq05tg8wp5gecn0uzjm4v2ynhxdnch6fg74qsns7nz",
73
+ "kaspa:qqvwyszx9yf457pqyywx0754cspvjsuyrgay756qeq45nzjewljrvrjr9xpke",
74
+ "kaspa:qr9e9pncm8lr7t0pr3nx0xswf8l6afme92crt52c5y5mmz9fa4utg9ta8m80p",
75
+ "kaspa:qpjjzjqz7gwgd0k4n94ptdyg5jly92pj2em4s6khpdgpv02u3y0f72u7rqsgj",
76
+ "kaspa:qzgxes49fj8qhrsekskt3we4rw6tc992rdmu2k5ten0anvgye7nl2g2jq9272",
77
+ "kaspa:qzcun67gtqutt6gv7pf3ry64z05glqxdqr0dwxyke380xnw4jksrgd72fv8qz",
78
+ "kaspa:qrvyk7a9y4mfvh7drhktd9x9kzx9vx9cdfkks7q6qhdv2g7evm9zs8vk9xfcn",
79
+ "kaspa:qp9cjk26a8ae950txz8t7j0h0afdxfe0ywckhcdjd63saaccr6guwc07e8z5u",
80
+ "kaspa:qqse9s0tvwhrljrmr2pdghwpulgnw0gkxawjnpqmvgutchejhr9wgqel6qxck",
81
+ "kaspa:qqmv8753a3sg49nl3zyt0n8ly65atszr5zjwyv7n3lywwvxd2saazych8h3at",
82
+ "kaspa:qppvvmyppmq50h5ujtuwtzkdehwt8xzkh6qrxs3wxx20luv9kuh4k6t5hczap",
83
+ "kaspa:qrg226fnq4as9wuf02wx0q3grkvwry9452uxfwc8nqw4nnk8fkhzxslxy5qav",
84
+ "kaspa:qqfuf7y68llrn5lzkght0cf25058yruar48za4t2hyjpaza43fhuvyjdtf8sk",
85
+ "kaspa:qr6ftus2rkj2caqp2qecctgmahdryt5m3mpjeygn7ef8wqhwa5m5vj3a37aen",
86
+ "kaspa:qq6xr60ksl5hhevzeu7eyth7suyu96a78zht53s2a40ejqwjsrdrwanuc7jpr",
87
+ "kaspa:qp3gvkcndd6z6wd2tevh2s74h5qysv8s87x3gpfhea590plysgwuw0ejazaem",
88
+ "kaspa:qpql4yq64s0gqugplq5h87gygde62et84nssfygznnnzypfgnjys5l8rt8gg7",
89
+ "kaspa:qpyjc7mn2h5sjcmuqjnjfzt3h2tszqtuj0kk899jszmqq6stutuvkvm5vdvxz",
90
+ "kaspa:qqhqw2kr3a3kdrgtvv205057hphytc49s3x3kl97ds82q8w697x2q0z5mke9j",
91
+ "kaspa:qrnxvsppuycam7n8c87ekew82m3y6r57vt4vepegx7ja0p73mhzzvyl5x7770",
92
+ "kaspa:qq7h72uqm9d3csdrav2hlam5jnqclkc2mygkk8q3f6zcya6stzqrw3tp2utdd",
93
+ "kaspa:qrgjc8sz4nv2qmyagct4x0qfjf8sxazlgzs3gq23prxd8r8tm9h27jzgcmjlq",
94
+ "kaspa:qr8pyj8nvvshu7yymwh4zt00d222gqlgsk2n6ddp800pwxv2d72kqu64tldr8",
95
+ "kaspa:qzh9udxkshws6678apcr0282znk8fe9c2vsnv7f0sgxppyt2w0rg7ql8tywyr",
96
+ "kaspa:qr94vw4t4kucmmqfwyrlqhjcwtc4536l4jnxvje8lkrurs2zx6lsu4h0skvfs",
97
+ "kaspa:qp9kcauqhsk3kup3e346yqgrlrgyuh4t2zslw3x4rdn4zu4shk52uasl909s3",
98
+ "kaspa:qrq8jee7pxsr77wjrplwdh40szatgwkqav7w9fvadw2lzxpw94huwnz29vw4d",
99
+ "kaspa:qrl7s4vmfnxueddyny52ff6p39h78jfwth7j0m7zcl9ywckjhssp2mkwfsjru",
100
+ "kaspa:qzj8kap4gh3drrp285p4jgpxacny8273t2vle40n2u2cge8el54cvzrkz0yqy",
101
+ "kaspa:qp3w6yf3splzsjzr0v7yrfrytvm39akfyjjpv4309esl9cts3qvnqwgwp9h3c",
102
+ "kaspa:qp7drlexrjgprwz2em5fk8ghszfucff0xfgswstt58sjv43r2r4zvf7qsecys",
103
+ "kaspa:qztlqfc7repxpme3e40cgsde70pfc2ncj49qqgmqn0z84c2pxyzh7h9rmpztt",
104
+ "kaspa:qq8sjfdqk8p4yg2j9fq34t02w9p9l84auv8sag2hh5ueqrtjku897p9zutw98",
105
+ "kaspa:qz05nclqtjundyhj804dp8n5fth8gmhst874r8d0gs9yqzeu2q6ushh95vmc6",
106
+ "kaspa:qrxq4rh6lqt6ld6sllqrvm2zylneprm7lwzserfzq4g5y830mhy2w6cpu977n",
107
+ "kaspa:qptqzn45z6m4tx4v9uev08j9zdwndr69cg922ennd369lq9akrj8qczmc3nd8",
108
+ "kaspa:qz9mnll7tev5k8gtkkyph6v2zpdll3z8nptkrflvj63fkdmjdw57klr7xgym3",
109
+ "kaspa:qrumca7wluc6g2sy06lq6h26nzmk8ax4u4r96l3xfg3hyfvtq0n7cn2nupahc",
110
+ "kaspa:qzsjs2zyyc4x2hsg209c8rlqsnv94p23kkrfqkggjtsrhqs6a7vjzve4fku72",
111
+ "kaspa:qquevls9j5x9sct862ee8pygrhhvl5suaghq72yep4a0ct5rjy73gwe7n4yjs",
112
+ "kaspa:qpp4c4cz36grtqgczkhm7wpvd05n0c80d5tl5chkra2avxplden6cexc33zzf",
113
+ "kaspa:qqqdxdvx5hgyr3nvdfadz334xy5fa3mjm5xzf69f26c0thc4p5jzssse4skyw",
114
+ "kaspa:qzp2k48jtp9s58fquwztdxtepsrn8ft9jw4nd9flky6evqz65w5v6jp5x3gta",
115
+ "kaspa:qq0t352sse9jzg3lx47fakncqf6rne6tjj8jkdjgag9ywumcpdc3kupsar0vy",
116
+ "kaspa:qzw4q2pckhjxc4rqxrwctcatg8tva7lxcpaqz4j7z9tqldkjj7dr5rrlqd65c",
117
+ "kaspa:qqr4c220c43qn2hyw5kckltu47s6y0yexfkl8fm7gsjy32vdgejgc249mrg9l",
118
+ "kaspa:qqv5rpq5vdnllaprhgcrwcgkunar62hv57ktprycpnuy86rsclwugwtx4yega",
119
+ "kaspa:qrun5qmv6ltd58wcs0xmdz3se6dscz3h4nn3uz4k5rs0qyyfwr7lcqce6ey8h",
120
+ "kaspa:qzljej9sd2t4v42sdqq5gk4q80k5pf4prxdt2gvfchyflg4z9x8n7fvdgv77x",
121
+ "kaspa:qpp0rw7vh6dznckgp265zmf47ayrfhs68jdhqgef5rl96cva677mk2h097emm",
122
+ "kaspa:qpm6mthdcscpnwgh0j9d9t60v7v0f2k6u5qheukhtd2qpqatgfwuzdz32rgk5",
123
+ "kaspa:qzclwgz23ug0xr30awczk5gqelayu4q7cvl36lzu9t625ru2mtt56l5sycr3e",
124
+ "kaspa:qqpr43scd370hgs999nmmfx7pwesvrcq6qnqh9cl50y7asq7fcqfcdkxh9r8z",
125
+ "kaspa:qz9nywkf7vft43putw9qjne0s6eacdqfag9ah92fkfguf5q8yk7fgj6jz9vfv",
126
+ "kaspa:qql0fs9rv9leawshms8jea8v3ch4j82lmxjgj77rmzguxkwlg4hwz33ju3vas",
127
+ "kaspa:qqzj67duym3h2skdz9n2haelzv4gkavc3pl2eutxz225sgugffu7ck3mfn8ve",
128
+ "kaspa:qqqcgwnzf2cqtrgs2a7udeayhpcwrel5d3qsd646w8jajdz0pvqtvx6zzdxmw",
129
+ "kaspa:qza6yw2su3zsh82amr8s89lt003lvcnfryha7vkn7wwdgnw5npswkgherl6wa",
130
+ "kaspa:qpfpkjkgvtt9u2gtl72e0yvk4vzvm4j48g823c9wr7yc5c4l0d8auvyljlm3a",
131
+ "kaspa:qrqkn8rs0hnpl7ggr054kwavq5lu7k60p20ulgjtj5egcmjw9vluchvfxf3ge",
132
+ "kaspa:qpmud4tdjme3qk8k9zs38qgp4y0l36ct08djkfjknpk2uvaynpsrjtuelgnks",
133
+ "kaspa:qrtwtddf4um3y3kzpxr4nh9lht592vsr50ph4cylwkrxud09kmd0vk0ujrxkm",
134
+ "kaspa:qzgkxgr7ympyf6d5xsn8ql4hvahusjvcfeue84el0lqc78mvkn8sz8edx676m",
135
+ "kaspa:qr094kj32d0gsf02wg7ksqht4jdnlsu3n9xmn2735a6782r7q25ysdu3hrlry",
136
+ "kaspa:qpnqgnyleagnessetj640yqx4upcvwqk5ul04759ev5xpfa8scgrkrcqnvdlz",
137
+ "kaspa:qrtwtvc3w6uw86p2xlfq472w3gjuwrgcgmaxlv83yus9qkyd2nx0uxzl2up24",
138
+ "kaspa:qpe75h776rkm7dv34gwypy2r4m8pr5taq3lsqs5pv82t59rct62sjgjtd48u3",
139
+ "kaspa:qztmz0wage5gwpvgpyh6q6epnfysrn53prymjdp04fzeeuqwxa7xgm6l57kkq",
140
+ "kaspa:qzlyedvy53essuj4txq584mp3qarv87ma4nxwvr0qeequxky3apy5q6c2p8hr",
141
+ "kaspa:qqs4z7k6c4xd3hjrn9d5kv249v9xrlax48l36lps27c87uslwpzrztdp9qlsc",
142
+ "kaspa:qqpsqs75gx6jrf4aeap8azqlf0fk5elgtl3a3u49y7hyx0xu2mjuc8lurl48u",
143
+ "kaspa:qqyf0l6cyf4sp02p23nsdr5fhjm6509l3tva0mnm2edthc46jx7tk3y8jfnpk",
144
+ "kaspa:qp6lzpu3tp28730wj9k8e7n6ne388e974ljql6fgarkqm62h4lvdv0ax63r58",
145
+ "kaspa:qrmzm5ujkgxcvrsq6pja5klvczvkjvj4wfsmxee6j75wqtcm6avlv7a9d78tr",
146
+ "kaspa:qp0l40z4fke7w9c8j38cpczzv02dxvhs6umg7agv9zksjjr7c2lgj82gs4r28",
147
+ "kaspa:qzeu8hhmrr7vq3hgjffuda5efvl2588vrgm3zw56px5lpprrhkadx8h28ls7x",
148
+ "kaspa:qpvng0ctxzt6pvlv8dt8ywmv95c0tgruu4hm58csjvenhm548k3l6xv4dt86j",
149
+ "kaspa:qzhpznejx27luzqr0gcr9sw9l04ume2rnzt89qljq98k325uaa2kysjvtmffs",
150
+ "kaspa:qq2l38rndh20llrfhq7909g9q6hgy8ugd5twnt4k53cv76xp55qa5g945k6c9",
151
+ "kaspa:qqwxglxmj255mt39frju9ygr3pkq0ls48qwqwhuckan486dqr65pg9l8lx0r2",
152
+ "kaspa:qq7cqg7u3jqjejn7j8dwryt4r89nx4vn2qzja43t08e278w9f4wu2lxp07gvx",
153
+ "kaspa:qrrs4fu47vrz5qeu0sdf5l799wdqe42gh7ud6gknxu58rd4l8wwu28v0yswyz",
154
+ "kaspa:qq77ykx8r7ywjswupjjqkgqfj7tzrhvs0028eaaxfjp06w54h8y3smmvx2jgd",
155
+ "kaspa:qp3a8spx3nuuqmnf0wmzts9gvyf9zmdlkhh2ys5s0a8d3x4hcqs2vw5j8v5d8",
156
+ "kaspa:qzcmf8da7hq0hynk5cwsvd4zenualxz5um2vn2yl5c0vsjt65whwk2q907jm7",
157
+ "kaspa:qp8kyj003efdaamalrzx4ehj94k02y65n9e8m7vg5mcc3ps80t4g5wluhavd4",
158
+ "kaspa:qzdgflrghdjfn8g52eh2l4drhjz90dd4r6388fud8lc0f2n58l9j6yt7xu0ry",
159
+ "kaspa:qzx3wm8u5g8l6esdnx39s3a6q93jnr9e4u7hzj6cts2smdqfmgfuqapgvpn5g",
160
+ "kaspa:qrwzjtmapz2lmwnwxa36v0ge8f7e9zn8yttejgkrsz4vdztqjv6s25087aplj",
161
+ "kaspa:qqylrf2efvypx8ettwwn9l3cc52u858wg83lgwt2d7n9m9fxzfyyg9adrhqzg",
162
+ "kaspa:qppugu8ej89sx3pkqad5s5kpf3pdj2v9x3djg0gq3fyelys6dntpuslmkhktz",
163
+ "kaspa:qpwrlkv037jqwzt0r7t00wdrkpucw42khkvaf7a7clegr2hlfvakydrs60403",
164
+ "kaspa:qzn24n5ezdpszf299y72up5d6xnxmezhkdrzp2f3rfg745ud0plaxneun82ze",
165
+ "kaspa:qp25cka05xdqqntrdvkqjf9c76e6trdefnnwf78vtqnt5rrg2p44cf4rseau8",
166
+ "kaspa:qpq2y4r9lxnxm0edalge4c7mrpmnzfk8vg65c9dd34rha2pl9y59jhakcxpcl",
167
+ "kaspa:qqlg0495ywc5kfy6rym3xz84qdgzfayd0v03x63phdxjnx9uep6dv6g29lqlz",
168
+ "kaspa:qrsfu838gepvxwuemh48ewcc2dmhqgc9kt0ak9mfd2m35dk9ln5g74vqxqua6",
169
+ "kaspa:qpcmj42f0g33caeucvxw3zq6gz20n4ymwrt3w5z6qn02zma2luak5eklrslr3",
170
+ "kaspa:qqu2heruuz73r66vrq6hmrvd35uyhcku8cu8350wcs8wwdevvremvgylr405e",
171
+ "kaspa:qz8qlvn8y60tv689gdswfy5y63e8u2pmt59lse2et3y0rykjc9g2vvqf9a04g",
172
+ "kaspa:qzhrnre645g985039skdqzll75m53wm0q2jqp33rz09x7sglkhr6u3ygyh0qc",
173
+ "kaspa:qza3ysuuh6md5xqvfp0c3fmm05xlne0xupt06wgnaz0fk7nkamak69hcxe4j0",
174
+ "kaspa:qzc2rk5r4qzavpfacnaq2scu6py6ktr8nm0gmgvlcgkckcs5fu2ccu57n83ny",
175
+ "kaspa:qph7rnh754cxxzpzd0yfrzthnyjy7s36dtx38j4ykagr86ynmawm7g4k6yrwy",
176
+ "kaspa:qphjrkh03x8uz8pkrq3hj9pn3hcp7k69my7dd7ldkkn65m86an0f7dsyut750",
177
+ "kaspa:qzrats3rvpnk0qtdupk970ljdtscwtkuqgeqs2euuyrzs52gplwlsln8duyjf",
178
+ "kaspa:qrxqah0mksm588ekdrktznx6sy6fldkg08xvvh77gjwhxdh6u370673qqfadh",
179
+ "kaspa:qzkm3prjkza8f4z3ls2dznpcd4a8unyhnxx3rctqjfxykjzt54v4zhujk2fa0",
180
+ "kaspa:qq069pdx0pj4a60l6v7gx4hm6w4k3slv6u7mvsymrlmq9dkpcnqdcmm60qx29",
181
+ "kaspa:qpyh7myg6r54x44twkyxhxcjghrwj7wugz5qaj8nnxvlufyl57j2qja6a6r5h",
182
+ "kaspa:qqswcde0dhm05gluhkjrjhd6pgelrc0m0evse0f95hmq6e5yj8yrjsgd5hge3",
183
+ "kaspa:qzfj0luty236ew8jftmldue6p95euxne8t6e4tl88h6tyfddrvzy50pjaz43t",
184
+ "kaspa:qrsw7u04da83wadey7tgnwqstzw8yc6xs8n3rvtug6yf0wgdrnxsvvqdn5w2q",
185
+ "kaspa:qqt2tawz5ppt9g5xcfg53um0j2y44dtvsqccvelluj7ex36xlh0vc2kvkq9w8",
186
+ "kaspa:qqgs536m0y82tjxc7vjldchw60g0dnnj50hj4x8vhnfvnrvz4fa9w36afffpk",
187
+ "kaspa:qp37ud5q49nfv5n6q5ncmp5sm3crj9qzvu0agjap8qzy4h2un7jqskyu5g8xl",
188
+ "kaspa:qrw85jr9hjh964emq82qlfx5t5c4c835hldrnep546f27d5je0c574vc5ekll",
189
+ "kaspa:qzadqur9n8xhf3ekf5u504h790qvnqmzq4v3xrct2vukgvkkqk7fqnjxel40h",
190
+ "kaspa:qq4jf702j4gxld9xudvt84gyp74ram7gmj6z6lnu5u5qh75kpxnc7q8s7yktp",
191
+ "kaspa:qrvn70c8l4mrhnrcrsz3jlc5eljx98hy47n60kh32pg39y5vu69qwh8p4qxf7",
192
+ "kaspa:qqn9474tyx9u8kzrkjjdchnajnskx02mf4w2j8n0mxwchla4ggvh609nskw4p",
193
+ "kaspa:qrn0j8qakx8wevnjf6tr4tvv29usaqa4r22p6ffkdjr8q9uhm8537ftf0wg86",
194
+ "kaspa:qzdfpv7rv9rwygjs6qxsvvpwex2frrkk6gaggh3k5y3fjea7xlyxg3mjus6df",
195
+ "kaspa:qqdk2qkuksws4pd5cpc2ptrjtyxtak82zuur7vy3tgesmd4cjxlxwl3n5zm0e",
196
+ "kaspa:qr5u6578pl4yyf974z2crzynt8nd4njemknpy4rfhgp3mmcf7fz5xwhwsja3l",
197
+ "kaspa:qqxacd427end7se2af24d20k9w8hlnheyncr9kt5m7502lxd8jjgk42z8s0la",
198
+ "kaspa:qr6a8y02jlmhqfa92spfvunsz9g43ldmfxu43k82a2nm96arkh8tqqfrvn8xt",
199
+ "kaspa:qzvtx8ya0l6k699778q2jhxplcwf7k3hu2jrjx25hf94gn8249n5yxmrqa0ll",
200
+ "kaspa:qrpkssan7wldkf58n4a7suthej0xy3wxxh2l94k0fh4ch8wspu80y5gc6def3",
201
+ "kaspa:qrsgmuzyssts382pjrd9wyxv8cw382epv7g6r4tjfvdku08drt9wwa6hsdl5t",
202
+ "kaspa:qpgea4rh2j3c07n9exp72dn0jtqhzap5ja0363dvagkdtra3jnpquugvhkgwp",
203
+ "kaspa:qr5py6ja7vncn6sjqty7080yqmcfneagu4gcr4df4wwpldmjezm0sase89p3t",
204
+ "kaspa:qpntynfnsfh2m3jfqp9a3h8huw6hal3fhg22lz476078zpg72jumsk4z0gfan",
205
+ "kaspa:qz6s474wpm75kpfm4695nzc8pxt4a6zgrm4c8krn9xts08m9vha65jmnlp0fh",
206
+ "kaspa:qzjqhkwdnd5up8ae8kv9zde20zdznae2cevjpvl0t72w6dkan82kktalk7j3t",
207
+ "kaspa:qzugmqvh8fdddwjakq6ekq0s5w2hcdq0mtqszlaw8re0mgpk0ut853jc8fdd3",
208
+ "kaspa:qz8tervrrcrkqqv068xkjaexg8ntdzg5kfw5a6reg3y5qz0a3fpyyw8w4ssmd",
209
+ "kaspa:qqjlvpc6amqc7cqg25qd2wq0k2ynqkw3lks9wgtwlzuhuskhzyzjx0ffrv8rv",
210
+ "kaspa:qrcvhjhz2fspgclkfr99jhapaa7a97wy0j4sqdclekrpd5344w2vggvfxxzkm",
211
+ "kaspa:qpwtxpnqpu3xwf7zvt5gt8vzdr65hy4uz6tu6l7xs8z9zwc5ef9dkt6ydttkg",
212
+ "kaspa:qzldw8a5sq2c9wks6vlsgcrs6md3mcv02plpusrdea29dpav04mujzdhqnvnd",
213
+ "kaspa:qpy6ukaragdej9d9fgzc4sgp52yj4wz86xyea28fyppscvyxu2d56ezy0337e",
214
+ "kaspa:qz0nvkyfny03uksa5hzsf2gde5l6w0de0e0al4dkq470ydnrnhycvz3e6mu48",
215
+ "kaspa:qq0e44ty34ptgdayp970wyr5r87acx5rrj6x4dfrkfnq3s5ckdk4ukfw6rclz",
216
+ "kaspa:qrkwctpx3etm6fj8ezpdthv7whjc0299wp0swsgvq4dy737pp9klxayjynt3e",
217
+ "kaspa:qrm4yy0kwtka3p2w8l99a89x7szms0wmrmrm9w6m4cvqsf2pd3gvqys4yggf4",
218
+ "kaspa:qpprr86eplnhjc7xqschwsezemg9h4spg99jjpp35x7hpj7z9ghzsu9jjwht7",
219
+ "kaspa:qzn4fxufqepttp39xrk9372csg8ncc4vll35r47nnrf2y5unmd5w2c3ly6rxr",
220
+ "kaspa:qp5fn95zaxv4phas2yplyukazhf8h4er2rq3s93ekyggqkhah55mcpptrrl7w",
221
+ "kaspa:qzkeqk7umrua236p95hgndxh3h4ttd0hq3hnp07rmzjn7p2ve39nwmww0ev3v",
222
+ "kaspa:qpz6f9yk6hp86y36cn5magfzp82sl2a6rduwkmwsh5d8xz2ax6mrgghtsw235",
223
+ "kaspa:qr5wxqesknvq7kyd4jxl9alvcr8ujhcm8rka0ru08rv6cu0lqrht2l4yx0835",
224
+ "kaspa:qqyd6c7mg2jen8gslpsgplc83cs3xvj6wszt3y9se884vm2kpgcwvdmr9radm",
225
+ "kaspa:qrmncnwkphzjjl88yzwc3290a96cct5ykaq6322q5hxd6ndxf7phvka9duxf4",
226
+ "kaspa:qqvcqxrma8a5jkmwpyy2ww5ppug3gfz59wncf425m90lcmsaq3hpugqgsw005",
227
+ "kaspa:qquzxhhrlnz78p2t6xh54s7rkgq9s9x6ule2fqa7mc98dtweaa62vlexrny75",
228
+ "kaspa:qzgvtxcs530rajt4a5q7vkehflr262qcn4g3v2f3ftc2xvnh4ttskl62q6h72",
229
+ "kaspa:qpj4c9lcqcvyp0rp3zflmet6wa2xfrn0lmsaqkf25z62u8wrj3sjxyhshm4an",
230
+ "kaspa:qr5fxj66y4d0awa86uuqucpr3w6m5qr2qdltvjffr2fwac0weftvyccrsr8f9",
231
+ "kaspa:qzzenq947vfuhw6k3qtjytrfryarn6dk22nt6plnvx6df0k9nuuj2dzgq3r0l",
232
+ "kaspa:qq0jjczfdth4nhmlavradh6jl3ynpngkdmthq9fafsjvm523f4ef2tmca6d60",
233
+ "kaspa:qqkqpu3s479h5pzhumsz9nt860veltj4xcgz4nr2gtcfezdj0x43g2x3zv69l",
234
+ "kaspa:qqqg5nn63rusalr4w8qatwaxghjce274y6lcdcgpppqrrpq8raezvxnlr9dz2",
235
+ "kaspa:qp7he2r07njf6a9l9kc4ensygxl0ydfqqp8jfx5l4a8qehnhmr6pvswfcz3ld",
236
+ "kaspa:qpy2dzp9znrrwqsmxgrj3glqy8dz7nyg6tatcfuy5ku7srkryju3gpmwuar8a",
237
+ ];
238
+ const startTime = Date.now();
239
+ const result = await scanOperations(addresses, "");
240
+ const endTime = Date.now();
241
+ const timeTakenInSeconds = (endTime - startTime) / 1000;
242
+ expect(result.length).toBeGreaterThan(5);
243
+ // both addresses in outputs
244
+ expect(result.find(res => res.recipients.includes(addresses[0]))).toBeDefined();
245
+ expect(result.find(res => res.recipients.includes(addresses[1]))).toBeDefined();
246
+ expect(timeTakenInSeconds).toBeLessThan(10);
247
+ }, 15000);
248
+ });
249
+ //# sourceMappingURL=scanOperations.integ.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scanOperations.integ.test.js","sourceRoot":"","sources":["../../../src/logic/tests/scanOperations.integ.test.ts"],"names":[],"mappings":"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ACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;YACrE,qEAAqE;SACtE,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC3B,MAAM,kBAAkB,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC;QAExD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QAEzC,4BAA4B;QAC5B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAChF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAChF,MAAM,CAAC,kBAAkB,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IAC9C,CAAC,EAAE,KAAK,CAAC,CAAC;AACZ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=scanOperations.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scanOperations.test.d.ts","sourceRoot":"","sources":["../../../src/logic/tests/scanOperations.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,156 @@
1
+ import expect from "expect";
2
+ import { BigNumber } from "bignumber.js";
3
+ import { scanOperations } from "../scanOperations";
4
+ import * as lib from "../../network";
5
+ describe("scan transactions for multiple addresses", () => {
6
+ it.each([0, 1])("One address", async (afterValue) => {
7
+ jest.spyOn(lib, "getTransactions").mockResolvedValueOnce({
8
+ nextPageAfter: null,
9
+ transactions: [
10
+ {
11
+ subnetwork_id: "0000000000000000000000000000000000000000",
12
+ transaction_id: "9b821c66588e25a4a1c2f81b63b0624b7210a76aedcc1d13e79a3c42e1ceef07",
13
+ hash: "c4fe27e4e0d2528b006a90bbfac0e36f6b6bba8127de682583b2864e9d6ff498",
14
+ mass: "2047",
15
+ block_hash: [
16
+ "fd12e6a2d4606f8fc7e43c9b02ca2d67851000117f0d5eee8814923d6a56ec14",
17
+ "8591e9897e6713bcb7fbd4d9e77668124012a07953b1cda2b6634508de3f10f2",
18
+ "7e06e8b2a22909fd02d430392d89207d709da1b649e732d4cc714ee3fc3072e4",
19
+ "01d142912bca583580035b78a2b80a5845b61912e614673fa5f20d456cb9e15d",
20
+ "7bded8dbe6fd711cf3daaa81ac1ae46aa2fe43c9d216fcfebb947c34a61f6b6b",
21
+ "d5cdad1825351763e2d2edb623186c19167902185dcde7e6736a0410f8e2a08f",
22
+ "7940d16ded962a9fc6d8d41943b3dd8eb264c0832ccb71199fbf75c8fcfa2f61",
23
+ ],
24
+ block_time: 1754762830110,
25
+ is_accepted: true,
26
+ accepting_block_hash: "c63ddfb813fb88dcb3f0efa011ddf1caf3d7739e55a5abc26bba9a8ee3ace1f6",
27
+ accepting_block_blue_score: 191726843,
28
+ inputs: [
29
+ {
30
+ transaction_id: "9b821c66588e25a4a1c2f81b63b0624b7210a76aedcc1d13e79a3c42e1ceef07",
31
+ index: 0,
32
+ previous_outpoint_hash: "e5a2123b15f39fdcd471366c91d7585b1fd6aa5eebaa425ee329d16a497f243c",
33
+ previous_outpoint_index: "1",
34
+ previous_outpoint_resolved: {
35
+ transaction_id: "e5a2123b15f39fdcd471366c91d7585b1fd6aa5eebaa425ee329d16a497f243c",
36
+ index: 1,
37
+ amount: 500000000,
38
+ script_public_key: "2102727affb1792a7cac04082f1cc579167ae392691682c60701f7dfdc2d06b15b85ab",
39
+ script_public_key_address: "kaspa:qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkx9awp4e",
40
+ script_public_key_type: "pubkeyecdsa",
41
+ accepting_block_hash: "",
42
+ },
43
+ previous_outpoint_address: "kaspa:qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkx9awp4e",
44
+ previous_outpoint_amount: 500000000,
45
+ signature_script: "412ec2686a970b75be8668b80e3180d0ebc7c74daaac6fc7ee12692af44541aa945db641c1c6ae2b6c21434ac4444786022ed6ccad3e9472c25af9953f18869aa401",
46
+ sig_op_count: "1",
47
+ },
48
+ ],
49
+ outputs: [
50
+ {
51
+ transaction_id: "9b821c66588e25a4a1c2f81b63b0624b7210a76aedcc1d13e79a3c42e1ceef07",
52
+ index: 0,
53
+ amount: 20000000,
54
+ script_public_key: "200000000000000000000000000000000000000000000000000000000000000000ac",
55
+ script_public_key_address: "kaspa:qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkx9awp4e",
56
+ script_public_key_type: "pubkey",
57
+ accepting_block_hash: "",
58
+ },
59
+ {
60
+ transaction_id: "9b821c66588e25a4a1c2f81b63b0624b7210a76aedcc1d13e79a3c42e1ceef07",
61
+ index: 1,
62
+ amount: 479949917,
63
+ script_public_key: "2102727affb1792a7cac04082f1cc579167ae392691682c60701f7dfdc2d06b15b85ab",
64
+ script_public_key_address: "kaspa:qyp8y7hlk9uj5l9vqsyz78x90yt84cujdytg93s8q8malhpdq6c4hpg9dyesk65",
65
+ script_public_key_type: "pubkeyecdsa",
66
+ accepting_block_hash: "",
67
+ },
68
+ ],
69
+ },
70
+ {
71
+ subnetwork_id: "0000000000000000000000000000000000000000",
72
+ transaction_id: "3a56a6da76007bd6b7ca691142489a803955838768cd110a67844865fc9ccdad",
73
+ hash: "a258d078b917e9310929d0816362a8e4c7110a99cf25cbd8036d770af4fe5a21",
74
+ mass: "2742",
75
+ block_hash: [
76
+ "af67df85976422f4c93cc8c5a450b76468ca622a75ecbca2e3b0dcc58614656e",
77
+ "e4b3940e78074999f7a06e15b0c87f8c6597430627e925e304fbd415ef75e2cb",
78
+ "8482a6cefc181f5cf226a79dc20f9596ab79a2456d105bad301692eaa251017a",
79
+ "acdb57ed8b8057bad317e36a08b77f8f2695749b3f49d16a706215abfb820336",
80
+ ],
81
+ block_time: 1754346860989,
82
+ is_accepted: true,
83
+ accepting_block_hash: "a69903a9ba44e735913d5893654b1201ca44a6f4611d3d08557d26db52b4b8f9",
84
+ accepting_block_blue_score: 187571391,
85
+ inputs: [
86
+ {
87
+ transaction_id: "3a56a6da76007bd6b7ca691142489a803955838768cd110a67844865fc9ccdad",
88
+ index: 0,
89
+ previous_outpoint_hash: "72c8777ef361688d83ffb1ae0b678eed01f9a66cc8cb32f05aeec0bbc378139f",
90
+ previous_outpoint_index: "0",
91
+ previous_outpoint_resolved: {
92
+ transaction_id: "72c8777ef361688d83ffb1ae0b678eed01f9a66cc8cb32f05aeec0bbc378139f",
93
+ index: 0,
94
+ amount: 300000000,
95
+ script_public_key: "207b5065f6dee14d29d74ca61f55ac70b2c3f160e395fc93d680a0950c80f33e42ac",
96
+ script_public_key_address: "kaspa:qpa4qe0kmms562whfjnp74dvwzev8utquw2ley7kszsf2ryq7vlyyq3dcdmre",
97
+ script_public_key_type: "pubkey",
98
+ accepting_block_hash: "",
99
+ },
100
+ previous_outpoint_address: "kaspa:qpa4qe0kmms562whfjnp74dvwzev8utquw2ley7kszsf2ryq7vlyyq3dcdmre",
101
+ previous_outpoint_amount: 300000000,
102
+ signature_script: "41aec32ab5e276661ba53582cf44970da8397211294af577f34add1aa76a7d8986f3222ae19bbde94ce4afef8044b9428f2ba470e6a5f7c04a30590dd20221796f01",
103
+ sig_op_count: "1",
104
+ },
105
+ {
106
+ transaction_id: "3a56a6da76007bd6b7ca691142489a803955838768cd110a67844865fc9ccdad",
107
+ index: 1,
108
+ previous_outpoint_hash: "92d6c3f5285e6d74487e1127592c59e3bff144e62fc133c733f8ede36b7e8ca9",
109
+ previous_outpoint_index: "1",
110
+ previous_outpoint_resolved: {
111
+ transaction_id: "92d6c3f5285e6d74487e1127592c59e3bff144e62fc133c733f8ede36b7e8ca9",
112
+ index: 1,
113
+ amount: 1699970092,
114
+ script_public_key: "207b5065f6dee14d29d74ca61f55ac70b2c3f160e395fc93d680a0950c80f33e42ac",
115
+ script_public_key_address: "kaspa:qpa4qe0kmms562whfjnp74dvwzev8utquw2ley7kszsf2ryq7vlyyq3dcdmre",
116
+ script_public_key_type: "pubkey",
117
+ accepting_block_hash: "",
118
+ },
119
+ previous_outpoint_address: "kaspa:qpa4qe0kmms562whfjnp74dvwzev8utquw2ley7kszsf2ryq7vlyyq3dcdmre",
120
+ previous_outpoint_amount: 1699970092,
121
+ signature_script: "418a3a04908ec122cb6408a32dd602c2a5bfbfa37d21bd0fe6e6f910b2d841edc67724e68f954a7132b073d6162eb14e0d577c3a23679fd2cbfbab8c479d869f7101",
122
+ sig_op_count: "1",
123
+ },
124
+ ],
125
+ outputs: [
126
+ {
127
+ transaction_id: "3a56a6da76007bd6b7ca691142489a803955838768cd110a67844865fc9ccdad",
128
+ index: 0,
129
+ amount: 1999967350,
130
+ script_public_key: "200000000000000000000000000000000000000000000000000000000000000000ac",
131
+ script_public_key_address: "kaspa:qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkx9awp4e",
132
+ script_public_key_type: "pubkey",
133
+ accepting_block_hash: "",
134
+ },
135
+ ],
136
+ },
137
+ ],
138
+ });
139
+ const address = "kaspa:qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkx9awp4e";
140
+ const result = await scanOperations([address], "", afterValue);
141
+ expect(result.length).toBe(2);
142
+ const exampleTx = result.find(res => res.hash === "9b821c66588e25a4a1c2f81b63b0624b7210a76aedcc1d13e79a3c42e1ceef07");
143
+ expect(exampleTx).toBeDefined();
144
+ expect(exampleTx?.fee.eq(BigNumber(50083))).toBe(true);
145
+ expect(exampleTx?.value.eq(BigNumber(480000000))).toBe(true);
146
+ expect(exampleTx?.type).toBe("OUT");
147
+ expect(exampleTx?.senders.length).toBe(1);
148
+ expect(exampleTx?.senders[0]).toBe("kaspa:qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkx9awp4e");
149
+ expect(exampleTx?.recipients.length).toBe(2);
150
+ expect(exampleTx?.recipients.includes("kaspa:qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkx9awp4e")).toBe(true);
151
+ });
152
+ afterEach(() => {
153
+ jest.clearAllMocks();
154
+ });
155
+ });
156
+ //# sourceMappingURL=scanOperations.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scanOperations.test.js","sourceRoot":"","sources":["../../../src/logic/tests/scanOperations.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=scanUtxos.integ.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scanUtxos.integ.test.d.ts","sourceRoot":"","sources":["../../../src/logic/tests/scanUtxos.integ.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ import { parseExtendedPublicKey } from "../kaspaAddresses";
2
+ import { scanUtxos } from "../scanUtxos";
3
+ describe("scan UTXOs function", () => {
4
+ it("Gets information about addresses being active or not", async () => {
5
+ const xpub = "410404cd27f15b8a73039972cdd131a93754ef3fa90bee794222737f5ca26a12f887f2fd493acf13230fa42c418d2c1be53a6fc66fbbec3ea9c37a675acc53a65e08203a35a71b1d8c10f7b03cf84c50570ee21af9b830b25bbe16ec661e7de8a51563";
6
+ const { compressedPublicKey, chainCode } = parseExtendedPublicKey(Buffer.from(xpub, "hex"));
7
+ const { utxos } = await scanUtxos(compressedPublicKey, chainCode);
8
+ expect(utxos.length).toBeGreaterThan(0);
9
+ }, 10000);
10
+ });
11
+ //# sourceMappingURL=scanUtxos.integ.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scanUtxos.integ.test.js","sourceRoot":"","sources":["../../../src/logic/tests/scanUtxos.integ.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;QACpE,MAAM,IAAI,GACR,wMAAwM,CAAC;QAC3M,MAAM,EAAE,mBAAmB,EAAE,SAAS,EAAE,GAAG,sBAAsB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QAE5F,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,SAAS,CAAC,mBAAmB,EAAE,SAAS,CAAC,CAAC;QAElE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAC1C,CAAC,EAAE,KAAK,CAAC,CAAC;AACZ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=scanUtxos.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scanUtxos.test.d.ts","sourceRoot":"","sources":["../../../src/logic/tests/scanUtxos.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,139 @@
1
+ import BigNumber from "bignumber.js";
2
+ import * as lib from "../../network";
3
+ import { parseExtendedPublicKey } from "../kaspaAddresses";
4
+ import { scanUtxos } from "../scanUtxos";
5
+ describe("scan UTXOs function", () => {
6
+ it("Gets information about addresses being active or not", async () => {
7
+ jest.mock("../scanAddresses", () => ({
8
+ SCAN_BATCH_SIZE: 1,
9
+ }));
10
+ const xpub = "410404cd27f15b8a73039972cdd131a93754ef3fa90bee794222737f5ca26a12f887f2fd493acf13230fa42c418d2c1be53a6fc66fbbec3ea9c37a675acc53a65e08203a35a71b1d8c10f7b03cf84c50570ee21af9b830b25bbe16ec661e7de8a51563";
11
+ const { compressedPublicKey, chainCode } = parseExtendedPublicKey(Buffer.from(xpub, "hex"));
12
+ jest
13
+ .spyOn(lib, "getBalancesForAddresses")
14
+ .mockResolvedValueOnce([
15
+ {
16
+ address: "kaspa:qq82f9sdsqqkr74memhxt9yrefc8vq9khf5vt6xjp4tscc3pdenmks29mlp9y",
17
+ balance: 132655819913451,
18
+ },
19
+ {
20
+ address: "kaspa:qpy2dzp9znrrwqsmxgrj3glqy8dz7nyg6tatcfuy5ku7srkryju3gpmwuar8a",
21
+ balance: 132655819913451,
22
+ },
23
+ ])
24
+ .mockResolvedValue([]);
25
+ jest
26
+ .spyOn(lib, "getAddressesActive")
27
+ .mockResolvedValueOnce([
28
+ {
29
+ address: "kaspa:qq82f9sdsqqkr74memhxt9yrefc8vq9khf5vt6xjp4tscc3pdenmks29mlp9y",
30
+ active: true,
31
+ lastTxBlockTime: 1755003516811,
32
+ },
33
+ {
34
+ address: "kaspa:qpy2dzp9znrrwqsmxgrj3glqy8dz7nyg6tatcfuy5ku7srkryju3gpmwuar8a",
35
+ active: true,
36
+ lastTxBlockTime: 1755003516812,
37
+ },
38
+ ])
39
+ .mockResolvedValueOnce([])
40
+ .mockResolvedValue([]);
41
+ jest.spyOn(lib, "getUtxosForAddresses").mockResolvedValue([
42
+ {
43
+ address: "kaspa:qq82f9sdsqqkr74memhxt9yrefc8vq9khf5vt6xjp4tscc3pdenmks29mlp9y",
44
+ outpoint: {
45
+ transactionId: "4a63914664e1de0f0da172fdf684a15553949a3bfddd00b4ded8232ae459a28b",
46
+ index: 0,
47
+ },
48
+ utxoEntry: {
49
+ amount: BigNumber("100000000"),
50
+ scriptPublicKey: {
51
+ scriptPublicKey: "202c0b0a4c1f84e31b7234adb319ae970b6943592f0eae5e8513fcc476d0d211a5ac",
52
+ },
53
+ blockDaaScore: "62643316",
54
+ isCoinbase: false,
55
+ },
56
+ },
57
+ {
58
+ address: "kaspa:qq82f9sdsqqkr74memhxt9yrefc8vq9khf5vt6xjp4tscc3pdenmks29mlp9y",
59
+ outpoint: {
60
+ transactionId: "81a61a5c2fca2aadcca03a3a49288febcbe2f0f75e7420c675e82d66b9bddd54",
61
+ index: 0,
62
+ },
63
+ utxoEntry: {
64
+ amount: BigNumber("100000000"),
65
+ scriptPublicKey: {
66
+ scriptPublicKey: "202c0b0a4c1f84e31b7234adb319ae970b6943592f0eae5e8513fcc476d0d211a5ac",
67
+ },
68
+ blockDaaScore: "29537014",
69
+ isCoinbase: false,
70
+ },
71
+ },
72
+ {
73
+ address: "kaspa:qpy2dzp9znrrwqsmxgrj3glqy8dz7nyg6tatcfuy5ku7srkryju3gpmwuar8a",
74
+ outpoint: {
75
+ transactionId: "81a61a5c2fca2aadcca03a3a49288febcbe2f0f75e7420c675e82d66b9bddd54",
76
+ index: 0,
77
+ },
78
+ utxoEntry: {
79
+ amount: BigNumber("100000000"),
80
+ scriptPublicKey: {
81
+ scriptPublicKey: "202c0b0a4c1f84e31b7234adb319ae970b6943592f0eae5e8513fcc476d0d211a5ac",
82
+ },
83
+ blockDaaScore: "29537014",
84
+ isCoinbase: false,
85
+ },
86
+ },
87
+ ]);
88
+ const { utxos } = await scanUtxos(compressedPublicKey, chainCode);
89
+ expect(utxos.length).toBe(3);
90
+ });
91
+ afterEach(() => {
92
+ jest.clearAllMocks();
93
+ });
94
+ });
95
+ describe("Error while scanning UTXOs", () => {
96
+ it("Gets information about addresses being active or not", async () => {
97
+ const xpub = "410404cd27f15b8a73039972cdd131a93754ef3fa90bee794222737f5ca26a12f887f2fd493acf13230fa42c418d2c1be53a6fc66fbbec3ea9c37a675acc53a65e08203a35a71b1d8c10f7b03cf84c50570ee21af9b830b25bbe16ec661e7de8a51563";
98
+ const { compressedPublicKey, chainCode } = parseExtendedPublicKey(Buffer.from(xpub, "hex"));
99
+ jest.spyOn(lib, "getBalancesForAddresses").mockResolvedValue([]);
100
+ jest.spyOn(lib, "getAddressesActive").mockResolvedValue([]);
101
+ jest.spyOn(lib, "getUtxosForAddresses").mockResolvedValue([
102
+ {
103
+ address: "kaspa:qq82f9sdsqqkr74memhxt9yrefc8vq9khf5vt6xjp4tscc3pdenmks29mlp9y",
104
+ outpoint: {
105
+ transactionId: "4a63914664e1de0f0da172fdf684a15553949a3bfddd00b4ded8232ae459a28b",
106
+ index: 0,
107
+ },
108
+ utxoEntry: {
109
+ amount: BigNumber("100000000"),
110
+ scriptPublicKey: {
111
+ scriptPublicKey: "202c0b0a4c1f84e31b7234adb319ae970b6943592f0eae5e8513fcc476d0d211a5ac",
112
+ },
113
+ blockDaaScore: "62643316",
114
+ isCoinbase: false,
115
+ },
116
+ },
117
+ {
118
+ address: "kaspa:qq82f9sdsqqkr74memhxt9yrefc8vq9khf5vt6xjp4tscc3pdenmks29mlp9y",
119
+ outpoint: {
120
+ transactionId: "81a61a5c2fca2aadcca03a3a49288febcbe2f0f75e7420c675e82d66b9bddd54",
121
+ index: 0,
122
+ },
123
+ utxoEntry: {
124
+ amount: BigNumber("100000000"),
125
+ scriptPublicKey: {
126
+ scriptPublicKey: "202c0b0a4c1f84e31b7234adb319ae970b6943592f0eae5e8513fcc476d0d211a5ac",
127
+ },
128
+ blockDaaScore: "29537014",
129
+ isCoinbase: false,
130
+ },
131
+ },
132
+ ]);
133
+ await expect(scanUtxos(compressedPublicKey, chainCode)).rejects.toThrow("not found in addresses set");
134
+ });
135
+ afterEach(() => {
136
+ jest.clearAllMocks();
137
+ });
138
+ });
139
+ //# sourceMappingURL=scanUtxos.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scanUtxos.test.js","sourceRoot":"","sources":["../../../src/logic/tests/scanUtxos.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=utxoLib.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utxoLib.test.d.ts","sourceRoot":"","sources":["../../../src/logic/tests/utxoLib.test.ts"],"names":[],"mappings":""}