@laceio/sdk 0.1.1-canary.2 → 0.1.1

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 (386) hide show
  1. package/dist/{TransactionBuilder-CCjOn7NA.cjs → TransactionBuilder-DrB3NVTi.cjs} +0 -42
  2. package/dist/{TransactionBuilder-CIzdw18M.js → TransactionBuilder-V6aLx4SV.js} +1 -1
  3. package/dist/{_polyfill-buffer-patch-CM8X7JiY.cjs → _polyfill-buffer-patch-BnPVerlG.cjs} +2 -21
  4. package/dist/account-guards.stable-B1DSSh9D.cjs +10 -0
  5. package/dist/account-guards.stable-JRQ5qx2V.js +5 -0
  6. package/dist/{activity-type-Ch6ljxBy.cjs → activity-type.stable-BJEfeLxL.cjs} +1 -2
  7. package/dist/{activity-type-GsJGWs-3.js → activity-type.stable-C76_hWd7.js} +1 -2
  8. package/dist/{address-book-address-validator-ByIZOdO-.js → address-book-address-validator-DIUolI-s.js} +2 -2
  9. package/dist/{address-book-address-validator-BjOWerRE.cjs → address-book-address-validator-DNwQGlOB.cjs} +2 -2
  10. package/dist/bitcoin.cjs +0 -45
  11. package/dist/bitcoin.d.ts +1 -29782
  12. package/dist/bitcoin.js +0 -20
  13. package/dist/{blockfrost-tx-submit-provider-CLNQ5ycR.cjs → blockfrost-tx-submit-provider-BAIzV5o3.cjs} +167 -3
  14. package/dist/{blockfrost-tx-submit-provider-CBWQ0wK9.js → blockfrost-tx-submit-provider-DPTrapz-.js} +157 -5
  15. package/dist/{secret-box-DrjLZuS1.cjs → bytes.vo-Ck5u40RA.cjs} +35 -1
  16. package/dist/{secret-box-DUR0ACYz.js → bytes.vo-TgiwogWF.js} +25 -3
  17. package/dist/{cardano-network-id.vo-wfLiAxpY.js → cardano-network-id.vo-CK1tNQDg.js} +1 -1
  18. package/dist/{cardano-network-id.vo-BEvFd_74.cjs → cardano-network-id.vo-DSxrFk9S.cjs} +1 -1
  19. package/dist/cardano.cjs +18 -22
  20. package/dist/cardano.d.ts +3982 -18409
  21. package/dist/cardano.js +11 -16
  22. package/dist/codecs-B7X9pAsK.cjs +1945 -0
  23. package/dist/codecs-CC1Xjntz.js +1882 -0
  24. package/dist/{const-oMF-TLow.cjs → const-BDEg2Trq.cjs} +4 -4
  25. package/dist/{const-iwzZEE_w.cjs → const-BY8B3_0_.cjs} +1 -1
  26. package/dist/{const-CBGn60yu.js → const-C84qHkjp.js} +4 -4
  27. package/dist/{const-CjmfjBP3.js → const-DXk2tFyv.js} +1 -1
  28. package/dist/{delegation-tx-builder-BR6bt1fE.js → delegation-tx-builder-CGVqlaFE.js} +5 -5
  29. package/dist/{delegation-tx-builder-DVwGfiV0.cjs → delegation-tx-builder-CRpLP6jH.cjs} +6 -6
  30. package/dist/{deregistration-tx-builder-BhJRGj1M.js → deregistration-tx-builder-B-CrUyX6.js} +5 -5
  31. package/dist/{deregistration-tx-builder-Cv_09HGf.cjs → deregistration-tx-builder-DZGwB4cz.cjs} +6 -6
  32. package/dist/{earn-rewards-tx-builder-RYzKsZ6-.js → earn-rewards-tx-builder-BDbTDZmD.js} +5 -5
  33. package/dist/{earn-rewards-tx-builder-52gJiJYa.cjs → earn-rewards-tx-builder-D5sUT5v8.cjs} +6 -6
  34. package/dist/{group-cardano-addresses-by-account-D06r7daZ.cjs → group-cardano-addresses-by-account-B533oVXR.cjs} +35 -19
  35. package/dist/{group-cardano-addresses-by-account-CxCqFDrX.js → group-cardano-addresses-by-account-RHKoEskR.js} +35 -19
  36. package/dist/{guarded-transaction-signer-BhnTBjf6.cjs → guarded-transaction-signer-Bxl6_XNd.cjs} +18 -17
  37. package/dist/{guarded-transaction-signer-BSEx83R-.js → guarded-transaction-signer-CpKLj8Kp.js} +15 -8
  38. package/dist/{in-memory-wallet-integration-CH4rcg92.cjs → in-memory-wallet-integration-CnLYeX4-.cjs} +108 -17
  39. package/dist/{in-memory-wallet-integration-BKu985Jz.js → in-memory-wallet-integration-Croiuopx.js} +104 -7
  40. package/dist/{in-memory-wallet-integration-B0blZBxM.js → in-memory-wallet-integration-D-qn65Kx.js} +2 -5
  41. package/dist/{in-memory-wallet-integration-CwPCDMIe.cjs → in-memory-wallet-integration-DVh9sRXa.cjs} +2 -3
  42. package/dist/index.cjs +47 -84
  43. package/dist/index.d.ts +13618 -40268
  44. package/dist/index.js +24 -52
  45. package/dist/{init-DUF4ar8P.cjs → init-B64zCLxG.cjs} +4 -4
  46. package/dist/{init-Y3mkB4XS.js → init-BAJJzBza.js} +2 -2
  47. package/dist/{init-BTzOjA8x.cjs → init-BJVU54pI.cjs} +1 -1
  48. package/dist/{init-D6BxBs7e.cjs → init-BKhH6mVR.cjs} +1 -1
  49. package/dist/{init-EP0CUWNK.cjs → init-BsCBAGWf.cjs} +2 -2
  50. package/dist/{init-Dy-05ktr.cjs → init-BtzMZ7Pk.cjs} +1 -1
  51. package/dist/init-Bv53hpLM.js +19 -0
  52. package/dist/{init-BopV9ed4.cjs → init-C-jErzp5.cjs} +2 -2
  53. package/dist/{init-CjT-WZcW.cjs → init-C4Bkib9u.cjs} +59 -49
  54. package/dist/{init-BEjCRHxU.cjs → init-C7IeJwQR.cjs} +61 -258
  55. package/dist/{init-C-G32J12.cjs → init-CB__aLD7.cjs} +2 -2
  56. package/dist/{init-CyAY4Lzl.js → init-CFYsq82V.js} +1 -1
  57. package/dist/{init-0zzs9aqU.js → init-CLHuAMB-.js} +4 -4
  58. package/dist/{init-DA7zmptx.js → init-CNLGJJRx.js} +1 -1
  59. package/dist/{init-B-YE57gg.js → init-CR6tpw1B.js} +33 -25
  60. package/dist/init-CRbjI7p1.js +3494 -0
  61. package/dist/{init-CSDpdu0Q.cjs → init-CSHwHnfg.cjs} +2 -2
  62. package/dist/{init-CNM5m7M2.js → init-Cg9XdAru.js} +4 -4
  63. package/dist/{init-B3-1ghyx.js → init-CigestoM.js} +2 -2
  64. package/dist/{init-Dv3zKj0r.cjs → init-D6DBUsD3.cjs} +4 -4
  65. package/dist/init-DAna1KCg.cjs +3495 -0
  66. package/dist/{init-D74mn8nH2.js → init-DDdhguVC.js} +2 -2
  67. package/dist/init-DGe47B22.cjs +364 -0
  68. package/dist/init-DMtyvYfC.cjs +21 -0
  69. package/dist/{init-BrdVzxei.cjs → init-DX4WyB0R.cjs} +3 -3
  70. package/dist/{init-C8URA2OX.js → init-DcYY6zMD.js} +1 -1
  71. package/dist/{init-DFMiP2ZH.cjs → init-DkIc5nqF.cjs} +1 -1
  72. package/dist/{init-vqxOQNZi.js → init-Dku4b2lG.js} +1 -1
  73. package/dist/{init-NdhG_VrF.cjs → init-DxUHsN53.cjs} +6 -6
  74. package/dist/{init-COMH3Hfo.js → init-FMGDET-9.js} +60 -259
  75. package/dist/{init-DrkOb-wd.cjs → init-LfyMo-sS.cjs} +2 -2
  76. package/dist/{init-NCjgwCZy.js → init-Rxohwpmu.js} +2 -2
  77. package/dist/init-TkPDD750.js +363 -0
  78. package/dist/{init-C2RgrfZe.js → init-TkPq_Ny_.js} +1 -1
  79. package/dist/{init-5KcGcBb5.cjs → init-U8c9yHYx.cjs} +1 -1
  80. package/dist/{init-CX0AMQUn.js → init-aJHl-7AO.js} +2 -2
  81. package/dist/{init-rmt7-fQE.cjs → init-anYu6XB7.cjs} +2 -2
  82. package/dist/{init-Fw89ZmrR.js → init-w9GEs73W.js} +2 -2
  83. package/dist/{init-Dnsv155v.js → init-y2Ra0vZP.js} +3 -3
  84. package/dist/{init-DFjT8YvT.js → init-zSzCjoor.js} +4 -4
  85. package/dist/{is-retriable-error-BUiVJDwH.js → is-retriable-error-BU0e3hVI.js} +1 -1
  86. package/dist/{is-retriable-error-Dpt860if.cjs → is-retriable-error-CeeuHqDa.cjs} +1 -1
  87. package/dist/{lace-context-BZciB9c7.js → lace-context-CZcNHr4M.js} +4 -4
  88. package/dist/{lace-context-DgR6vLli.cjs → lace-context-fJTDghdp.cjs} +4 -4
  89. package/dist/{libsodium-wrappers-BhbOA8dQ.js → libsodium-wrappers-UH0LaOUE.js} +1647 -3
  90. package/dist/modules-cardano-BDvuL4Xx.js +5248 -0
  91. package/dist/modules-cardano-D2G3De2P.cjs +5432 -0
  92. package/dist/{retry-config-Dmgt28wM.js → retry-config-BcUmMS--.js} +1 -1
  93. package/dist/{retry-config-BaCfVC1H.cjs → retry-config-DC5IMaH7.cjs} +1 -1
  94. package/dist/{seam-cardano-B_etH4F4.js → seam-cardano-CATqBEyK.js} +1 -1
  95. package/dist/{signer-factory-B7PMe3lQ.js → signer-factory-9URFliA5.js} +3 -6
  96. package/dist/{signer-factory-DduwpsQj.cjs → signer-factory-BWGUmnvm.cjs} +3 -4
  97. package/dist/{slice-CqVNnz-j.js → slice-B2PhoWAg.js} +125 -316
  98. package/dist/{slice-DyNs7oWp.js → slice-BNu73oBa.js} +2 -2
  99. package/dist/{slice-GwiiJRoq.js → slice-CB4SnzMm.js} +3 -3
  100. package/dist/slice-CGVHXHDt.cjs +125 -0
  101. package/dist/{slice-CU80pbiu.js → slice-CnyWevM9.js} +3 -3
  102. package/dist/{slice-CwyYrh1H.js → slice-CobanYgn.js} +2 -2
  103. package/dist/{slice-7G2xxYKJ.cjs → slice-CuHUaPZx.cjs} +3 -3
  104. package/dist/{slice-DayJvMRD.cjs → slice-D11m2EKl.cjs} +1 -1
  105. package/dist/{slice-Bg6HEr3K.cjs → slice-DGcNrbPR.cjs} +4 -4
  106. package/dist/{slice-B4CdYoPu.cjs → slice-DZmQJNV8.cjs} +2 -2
  107. package/dist/slice-DhvF7L6X.js +107 -0
  108. package/dist/{slice-C9TT5KhY.cjs → slice-Do2R2CYW.cjs} +6 -6
  109. package/dist/{slice-Bs2aMERu.cjs → slice-DtaO72qY.cjs} +3 -3
  110. package/dist/{slice-C34iOOUH.cjs → slice-HeHCv3bl.cjs} +7 -7
  111. package/dist/{slice-D-9aPKG-.js → slice-d0p6-xj5.js} +6 -6
  112. package/dist/{slice-CK07EBCo.js → slice-eIwcwKHI.js} +4 -4
  113. package/dist/{slice-DBpJ2QGf.js → slice-maaskdUn.js} +6 -6
  114. package/dist/{slice-6sP0Qs5V.cjs → slice-mxLQ_FeY.cjs} +127 -343
  115. package/dist/{slice-DnG-yvpI.cjs → slice-oqm_r1cS.cjs} +2 -2
  116. package/dist/{slice-Da426sf9.js → slice-zJ9XVYjZ.js} +1 -1
  117. package/dist/{sync-operation-utils-KT5Y9yFK.js → sync-operation-utils-BYXLO80m.js} +52 -1
  118. package/dist/{sync-operation-utils-C9kcmjKH.cjs → sync-operation-utils-SdPbwFoD.cjs} +87 -0
  119. package/dist/{token-id-mapper-qx7XfH0b.js → token-id-mapper-B2ivlLv3.js} +2 -2
  120. package/dist/{token-id-mapper-IApjwuJb.cjs → token-id-mapper-DsPAL6Nh.cjs} +2 -2
  121. package/dist/{util-D1e0skzp.js → util-BaLzwa32.js} +1 -1
  122. package/dist/{util-BeG7WXzM.cjs → util-CGzqQ8IV.cjs} +1 -1
  123. package/dist/{utils-DsElZgCI.cjs → utils-5JvjbqH3.cjs} +1 -7
  124. package/dist/{utils-BfBEUvWA.js → utils-o8aMjfln.js} +2 -2
  125. package/dist/{vote-delegation-tx-builder-CtdIgaIt.cjs → vote-delegation-tx-builder-BpEMSti4.cjs} +6 -6
  126. package/dist/{vote-delegation-tx-builder-CQjGvVNZ.js → vote-delegation-tx-builder-CmKv6GoG.js} +5 -5
  127. package/package.json +4 -96
  128. package/dist/_polyfill-buffer-patch-yNxN4d5E.js +0 -1467
  129. package/dist/_web-crypto-random-bytes-Bo-GTcRS.js +0 -197
  130. package/dist/acc-module-4iIUv6My.cjs +0 -27654
  131. package/dist/acc-module-Cmj8EsIb.js +0 -27624
  132. package/dist/account-BlYkEmcs.cjs +0 -11
  133. package/dist/account-DVX0F5_M.js +0 -6
  134. package/dist/account-call-D68oF6bh.js +0 -267
  135. package/dist/account-call-DIIa2rK_.cjs +0 -314
  136. package/dist/account-call-NgLhYein.cjs +0 -4
  137. package/dist/account-call-n-Nkp35e.js +0 -3
  138. package/dist/account-guards-BtjTGxDZ.cjs +0 -42
  139. package/dist/account-guards-D9Lu5T3W.js +0 -36
  140. package/dist/account-tokens-CtN2BaFy.js +0 -16
  141. package/dist/account-tokens-DXr8DlpW.cjs +0 -21
  142. package/dist/address-B9ntKL8K.js +0 -13761
  143. package/dist/address-BXp-mY8H.cjs +0 -11270
  144. package/dist/address-book-address-validator-DK0dnsRS.cjs +0 -41
  145. package/dist/address-book-address-validator-Di_ywo8M.js +0 -39
  146. package/dist/artefact-loader-54uK5RAa.js +0 -160
  147. package/dist/artefact-loader-DZPYrq-6.cjs +0 -183
  148. package/dist/auto-dismiss-failure-on-success-C-qoJuid.cjs +0 -37
  149. package/dist/auto-dismiss-failure-on-success-s8MGDEIu.js +0 -31
  150. package/dist/bip32-D6wd_QMn.cjs +0 -3851
  151. package/dist/bitcoin-data-provider-BYPSmuZS.js +0 -21
  152. package/dist/bitcoin-data-provider-w1oEDSU3.cjs +0 -26
  153. package/dist/bn-d3nSOIf7.cjs +0 -2553
  154. package/dist/browser-B1eMbDwh.js +0 -7468
  155. package/dist/bytes.vo-BB7_4JK6.js +0 -23
  156. package/dist/bytes.vo-BNRquqaO.cjs +0 -34
  157. package/dist/cardano-DfPwhwm-.js +0 -3
  158. package/dist/client-DXBLHk7K.cjs +0 -808
  159. package/dist/codecs-Cswkg7Tm.cjs +0 -4051
  160. package/dist/codecs-Dc1Krpbt.js +0 -3903
  161. package/dist/const-BfEnY8fg.js +0 -153
  162. package/dist/const-BhYOdznB.cjs +0 -42
  163. package/dist/const-CUnCl5U0.js +0 -13
  164. package/dist/const-DLrX5SD9.cjs +0 -31995
  165. package/dist/contract-C_CBwwiC.cjs +0 -189
  166. package/dist/contract-s_x-9-lz.js +0 -171
  167. package/dist/create-add-accounts-Brqk84vF.js +0 -102
  168. package/dist/create-add-accounts-DzXIh7Ot.cjs +0 -114
  169. package/dist/device-commitment-hex.vo-5wFtQvDS.js +0 -26
  170. package/dist/device-commitment-hex.vo-CT3RmAug.cjs +0 -31
  171. package/dist/device-readers-70i7tQqU.cjs +0 -8
  172. package/dist/device-readers-B7--ezKM.js +0 -4
  173. package/dist/device-readers-BWOmz9eD.js +0 -145
  174. package/dist/device-readers-CIgYZN7f.cjs +0 -168
  175. package/dist/dist-BMi5ZjEq.cjs +0 -43175
  176. package/dist/dist-BtIq4XFn.cjs +0 -535
  177. package/dist/dist-C3SHC_Ho.cjs +0 -1394
  178. package/dist/dist-CykEjYEX.cjs +0 -3814
  179. package/dist/dist-Dcsxh3be.cjs +0 -3452
  180. package/dist/dist-DqJfSlTd.cjs +0 -4413
  181. package/dist/dist-nTZ70qj7.cjs +0 -1306
  182. package/dist/enc-key-circuits-C8fGAMEF.cjs +0 -24
  183. package/dist/enc-key-circuits-DA2Xs3vZ.js +0 -13
  184. package/dist/english-Byb9M0E_.cjs +0 -2057
  185. package/dist/envelopes-BkH1Qdxk.js +0 -1620
  186. package/dist/envelopes-ETZEJS_O.cjs +0 -1721
  187. package/dist/errors-BZ8hnhCM.cjs +0 -584
  188. package/dist/errors-DIJTAsLa.js +0 -392
  189. package/dist/esm-HBSUQw3w.js +0 -384
  190. package/dist/esm-LZuaZjMf.cjs +0 -389
  191. package/dist/experimental.cjs +0 -7073
  192. package/dist/experimental.d.ts +0 -84347
  193. package/dist/experimental.js +0 -6915
  194. package/dist/gated-call-Boy6rXdC.js +0 -3
  195. package/dist/gated-call-DJWY299W.cjs +0 -736
  196. package/dist/gated-call-DjoRPqn1.js +0 -695
  197. package/dist/gated-call-SomdJ5nj.cjs +0 -4
  198. package/dist/grant-circuits-_1x--moV.cjs +0 -49
  199. package/dist/grant-circuits-swuzEdUl.js +0 -26
  200. package/dist/grant-rules-7Zqi_3BN.cjs +0 -7114
  201. package/dist/grant-rules-_xJHAT2M.js +0 -6833
  202. package/dist/grant-status-B2y49iIu.js +0 -2688
  203. package/dist/grant-status-DOr3t_u8.cjs +0 -2820
  204. package/dist/grants--b0LQQzZ.cjs +0 -266
  205. package/dist/grants-BIs6qm3b.js +0 -213
  206. package/dist/grants-CSgfYlOO.js +0 -5
  207. package/dist/grants-D61131nK.cjs +0 -17
  208. package/dist/hex-D9ITYbwt.cjs +0 -263
  209. package/dist/hex-mkXcV3pN.js +0 -191
  210. package/dist/http-client-B3N-TMxu.cjs +0 -167
  211. package/dist/http-client-TRlhDZGh.js +0 -155
  212. package/dist/identity-BMLuufva.cjs +0 -263
  213. package/dist/identity-DII6f-h7.js +0 -233
  214. package/dist/in-memory-wallet-integration-B2xzxORj.cjs +0 -20741
  215. package/dist/in-memory-wallet-integration-CUKesGG1.js +0 -130
  216. package/dist/in-memory-wallet-integration-CoPx69lQ.cjs +0 -240
  217. package/dist/in-memory-wallet-integration-TM9bBphA.js +0 -20738
  218. package/dist/init-B5X_sGj9.cjs +0 -6
  219. package/dist/init-BJn-8_hf.js +0 -141
  220. package/dist/init-Bp6yJk31.js +0 -1142
  221. package/dist/init-Bu4iXcTH.cjs +0 -34
  222. package/dist/init-C00gw1zi.js +0 -422
  223. package/dist/init-CIjZaQvL.js +0 -3584
  224. package/dist/init-CR7BfztQ.cjs +0 -18
  225. package/dist/init-Cp8EJGbm.js +0 -5
  226. package/dist/init-CpIadSUb.js +0 -33
  227. package/dist/init-D5UiYI12.cjs +0 -106
  228. package/dist/init-DAikR9qU.js +0 -1177
  229. package/dist/init-DGjXwWs2.cjs +0 -143
  230. package/dist/init-DHrCbpkW.cjs +0 -121
  231. package/dist/init-DU5yYX5u.js +0 -2374
  232. package/dist/init-DWvkFDkc.cjs +0 -1176
  233. package/dist/init-DY1unoGb.cjs +0 -1141
  234. package/dist/init-DlqJuHhl.js +0 -119
  235. package/dist/init-DuYENxci.js +0 -17
  236. package/dist/init-E7c40ddW.cjs +0 -3585
  237. package/dist/init-GsT2AEa4.cjs +0 -424
  238. package/dist/init-KQnIdm39.js +0 -104
  239. package/dist/init-ZjNDDC-T.cjs +0 -2375
  240. package/dist/jubjub-authoriser-BxE3oN2y.js +0 -86
  241. package/dist/jubjub-authoriser-C6SDEP9I.cjs +0 -87
  242. package/dist/key-source-5oUBFiC7.cjs +0 -583
  243. package/dist/key-source-B08HukZg.js +0 -2550
  244. package/dist/keyDerivation-D3k9XyHg.js +0 -4077
  245. package/dist/keyDerivation-u0nBA93T.cjs +0 -274
  246. package/dist/lib--iqvW4O_.js +0 -2354
  247. package/dist/lib-Yk6Upl5D.cjs +0 -2359
  248. package/dist/midnight-account-id.vo-0x9X-r3l.cjs +0 -10
  249. package/dist/midnight-account-id.vo-DjCAGcqc.js +0 -5
  250. package/dist/midnight-engine-DpemplKO.js +0 -5
  251. package/dist/midnight-engine-xU1wotne.cjs +0 -6
  252. package/dist/midnight-wallet-DIsAlSn6.js +0 -18
  253. package/dist/midnight-wallet-XTZc2li7.cjs +0 -24
  254. package/dist/midnight.cjs +0 -1406
  255. package/dist/midnight.d.ts +0 -28586
  256. package/dist/midnight.js +0 -1350
  257. package/dist/modules-cardano-CtWLntet.cjs +0 -1108
  258. package/dist/modules-cardano-D2dkeKHY.js +0 -995
  259. package/dist/node-relay-Cv0cNknM.js +0 -48
  260. package/dist/node-relay-DblH5fKv.cjs +0 -49
  261. package/dist/outputs-Bd2yZVjx.js +0 -720
  262. package/dist/outputs-CJoQBIA2.cjs +0 -990
  263. package/dist/pbkdf2-CIW-oWrm.cjs +0 -1337
  264. package/dist/pending-operation-B0_P78Jo.cjs +0 -26
  265. package/dist/pending-operation-BIS6mpjB.js +0 -21
  266. package/dist/providers-BLgJ0uQs.cjs +0 -366
  267. package/dist/providers-CwnT4vEE.js +0 -343
  268. package/dist/redacted-BmE2aXqr.js +0 -81
  269. package/dist/redacted-CRZJLS3w.cjs +0 -86
  270. package/dist/safe-buffer-B_vMqJWU.js +0 -43
  271. package/dist/safe-buffer-DYOwEfHB.cjs +0 -48
  272. package/dist/sdk-DIcjlgLF.js +0 -1241
  273. package/dist/sdk-Dgal10kG.cjs +0 -1439
  274. package/dist/sdk-init-BKkqFtWZ.cjs +0 -3791
  275. package/dist/sdk-init-DNd-oQXp.js +0 -1044
  276. package/dist/send-proof-progress-DTK3ZuYB.js +0 -22
  277. package/dist/send-proof-progress-dDoqIohG.cjs +0 -33
  278. package/dist/side-effects-BnqYz7Nl.js +0 -768
  279. package/dist/side-effects-CngaeXi0.cjs +0 -804
  280. package/dist/sign-bitcoin-transaction-with-seed-D4z62-jV.js +0 -147
  281. package/dist/sign-bitcoin-transaction-with-seed-DsLYXnCY.cjs +0 -158
  282. package/dist/signer-3fk8lZtE.cjs +0 -7
  283. package/dist/signer-CsL28DrK.cjs +0 -121
  284. package/dist/signer-DGluibtn.js +0 -92
  285. package/dist/signer-RqB5pu3K.js +0 -2
  286. package/dist/signer-factory-BA7WFJVZ.js +0 -282
  287. package/dist/signer-factory-CORIG4Yl.cjs +0 -130
  288. package/dist/signer-factory-Cd2TwD50.js +0 -129
  289. package/dist/signer-factory-Cwd6o-lG.cjs +0 -281
  290. package/dist/slice-BOyAAaj0.cjs +0 -378
  291. package/dist/slice-BnTJeMOb.js +0 -354
  292. package/dist/slice-C4uXUT7S.js +0 -9013
  293. package/dist/slice-CxKWDuBP.js +0 -87
  294. package/dist/slice-DQv_RhsI.cjs +0 -9031
  295. package/dist/slice-HjLXJyQG2.cjs +0 -105
  296. package/dist/src-BDzYIksE.cjs +0 -20637
  297. package/dist/src-BFoefPv_.js +0 -20755
  298. package/dist/store-B1Lq3cEf.cjs +0 -66
  299. package/dist/store-DuBG8qh5.js +0 -37
  300. package/dist/submit-BBYjnZu8.cjs +0 -87
  301. package/dist/submit-D_yxYM_T.js +0 -70
  302. package/dist/submit-bitcoin-tx-BkZIeF4b.js +0 -983
  303. package/dist/submit-bitcoin-tx-DZNQgihl.cjs +0 -1049
  304. package/dist/token-id-mapper-Bnds3xKH.cjs +0 -18
  305. package/dist/token-id-mapper-CnKHQ8DV.js +0 -16
  306. package/dist/tokens-Cevp7rdU.cjs +0 -62
  307. package/dist/tokens-Diw4MLRM.js +0 -44
  308. package/dist/types-B8uiJn-X.js +0 -12
  309. package/dist/types-CJT6XF2c.js +0 -10
  310. package/dist/types-CLRUYpfe.cjs +0 -23
  311. package/dist/types-DWbVZpnF.cjs +0 -15
  312. package/dist/types-T0cjaR75.js +0 -33
  313. package/dist/types-Zj78LtYu.cjs +0 -50
  314. package/dist/unwrap-provider-result-BZSiwabU.js +0 -32
  315. package/dist/unwrap-provider-result-ZqfBsTkk.cjs +0 -39
  316. package/dist/utils-BfMdr_1w.cjs +0 -112
  317. package/dist/utils-CvAW5Yw7.js +0 -65
  318. package/dist/v8Signatures-CO_Uloy7.cjs +0 -71
  319. package/dist/watch-Cz1J42um.cjs +0 -52205
  320. package/dist/watch-Z53L4yoK.js +0 -13054
  321. /package/dist/{account-id.vo-DwqFjK5u.cjs → account-id.vo-LvCBVn5r.cjs} +0 -0
  322. /package/dist/{account-id.vo-OPz2v-JZ.js → account-id.vo-MYSI7YFm.js} +0 -0
  323. /package/dist/{actions-iLXdgL5Y.js → actions-9QSQR-GB.js} +0 -0
  324. /package/dist/{actions-B2BJ4RTy.cjs → actions-DdGbj7c7.cjs} +0 -0
  325. /package/dist/{apply-vkey-witnesses-ZnFS0jnJ.cjs → apply-vkey-witnesses-CLzVSWxl.cjs} +0 -0
  326. /package/dist/{apply-vkey-witnesses-BKx3lcs0.js → apply-vkey-witnesses-ClZbpk5w.js} +0 -0
  327. /package/dist/{asyncoption-CruEYOBI.js → asyncoption-Cw07zPH7.js} +0 -0
  328. /package/dist/{asyncoption-i0VbqVTq.cjs → asyncoption-DYoGuQfP.cjs} +0 -0
  329. /package/dist/{bignum.vo-CEXOIew0.js → bignum.vo-B0rK_PQ1.js} +0 -0
  330. /package/dist/{bignum.vo-hx2kuqlA.cjs → bignum.vo-DsG3kNiZ.cjs} +0 -0
  331. /package/dist/{bip32ed25519-B7Yat217.cjs → bip32ed25519-1ApqeAZk.cjs} +0 -0
  332. /package/dist/{bip32ed25519-FQ8qvdcq.js → bip32ed25519-DetAdGwD.js} +0 -0
  333. /package/dist/{blake2b-DEeVUdKR.cjs → blake2b-B9tftbvG.cjs} +0 -0
  334. /package/dist/{blake2b-BiQTw3GC.js → blake2b-DOEVc57D.js} +0 -0
  335. /package/dist/{blockchain-network-id.vo-BAKEwGjG.cjs → blockchain-network-id.vo-BXpZhvvQ.cjs} +0 -0
  336. /package/dist/{blockchain-network-id.vo-CiVykuqG.js → blockchain-network-id.vo-DNRkuT5B.js} +0 -0
  337. /package/dist/{blockingWithLatestFrom-Cd8c8EPG.js → blockingWithLatestFrom-C5wp_uA-.js} +0 -0
  338. /package/dist/{blockingWithLatestFrom-D8kBPBMX.cjs → blockingWithLatestFrom-DY8OPg0w.cjs} +0 -0
  339. /package/dist/{cardano-network-id-to-network-type-C0ufJOyE.cjs → cardano-network-id-to-network-type-BDTF-HmK.cjs} +0 -0
  340. /package/dist/{cardano-network-id-to-network-type-BWwzeEtM.js → cardano-network-id-to-network-type-CrZfUcyP.js} +0 -0
  341. /package/dist/{cardano-tx-id.vo-D3ASTIMd.cjs → cardano-tx-id.vo-BPhV-AmZ.cjs} +0 -0
  342. /package/dist/{cardano-tx-id.vo-BXLo1b7Q.js → cardano-tx-id.vo-DF9NzZXk.js} +0 -0
  343. /package/dist/{composite-signer-factory-m5cVs9h_.cjs → composite-signer-factory-BpF1mIYA.cjs} +0 -0
  344. /package/dist/{composite-signer-factory-CR8YHA1y.js → composite-signer-factory-_46QsNBz.js} +0 -0
  345. /package/dist/{error-DIZOY2Lw.js → error-BCp9NkPi.js} +0 -0
  346. /package/dist/{error-Cb3EnD0u.cjs → error-CNIquqT5.cjs} +0 -0
  347. /package/dist/{esm-browser-MG97cre9.js → esm-browser-C93Q-EOI.js} +0 -0
  348. /package/dist/{esm-browser-bweqfBlL.cjs → esm-browser-DTc9IK3D.cjs} +0 -0
  349. /package/dist/{feature-flag-key.vo-RlfHL3hq.cjs → feature-flag-key.vo-BPz-ZAp6.cjs} +0 -0
  350. /package/dist/{feature-flag-key.vo-DN_-4-sG.js → feature-flag-key.vo-ofrB6ZVQ.js} +0 -0
  351. /package/dist/{first-state-of-status-unPynOuM.js → first-state-of-status-DQnMT3ya.js} +0 -0
  352. /package/dist/{first-state-of-status-CbT7hPa4.cjs → first-state-of-status-OROkXcRv.cjs} +0 -0
  353. /package/dist/{init-zUoRG_EC2.cjs → init-C5CEZ1m0.cjs} +0 -0
  354. /package/dist/{init-DHaMxHM1.js → init-CKipPE_c.js} +0 -0
  355. /package/dist/{init-Atisw4x2.cjs → init-DFQQ9dTW.cjs} +0 -0
  356. /package/dist/{init-829HRYcz.js → init-Es3wHW7D.js} +0 -0
  357. /package/dist/{init-BgNobbNq.cjs → init-IAk_CkGa.cjs} +0 -0
  358. /package/dist/{init-atCFur0v.js → init-cqN3uX2j.js} +0 -0
  359. /package/dist/{is-redux-persist-state-BCFnSm36.cjs → is-redux-persist-state-CTn3WZVh.cjs} +0 -0
  360. /package/dist/{is-redux-persist-state-yBfq0h_E.js → is-redux-persist-state-Cxcd0_bM.js} +0 -0
  361. /package/dist/{key-value-store--W3SrMaw.js → key-value-store-8cMzeNyG.js} +0 -0
  362. /package/dist/{key-value-store-C2Xt5Emp.cjs → key-value-store-DUAepXQf.cjs} +0 -0
  363. /package/dist/{repo-slice-RxFm0zDZ.js → repo-slice-DwyMhCR1.js} +0 -0
  364. /package/dist/{repo-slice-7X4AYYVm.cjs → repo-slice-WxetRhMY.cjs} +0 -0
  365. /package/dist/{reselect-CGoLzEPv.js → reselect-C06X06oX.js} +0 -0
  366. /package/dist/{reselect-Bd94u0K-.cjs → reselect-CRDqmQY9.cjs} +0 -0
  367. /package/dist/{serializable-BHdKIgk3.js → serializable-B8GahgE1.js} +0 -0
  368. /package/dist/{serializable-BxHkoPdk.cjs → serializable-CRdnFaLZ.cjs} +0 -0
  369. /package/dist/{slice-obCSLm1x.js → slice-B87b52iM.js} +0 -0
  370. /package/dist/{slice-Bk0Sv05J.js → slice-Be7hj4Iy.js} +0 -0
  371. /package/dist/{slice-BiRsDKOK.cjs → slice-D11FHQuQ.cjs} +0 -0
  372. /package/dist/{slice-Dqw1ecum.cjs → slice-FioKeHtA.cjs} +0 -0
  373. /package/dist/{src-Cqp0B2M_.cjs → src-BTPIvlDI.cjs} +0 -0
  374. /package/dist/{src-BlxEp6Mm.js → src-vq1wS9sZ.js} +0 -0
  375. /package/dist/{time.vo-D3wWRw9L.cjs → time.vo-CQ8pSXz2.cjs} +0 -0
  376. /package/dist/{time.vo-tNheinXm.js → time.vo-DkYYGYp6.js} +0 -0
  377. /package/dist/{toEmpty-8Zax1MPd.js → toEmpty-CgAl3097.js} +0 -0
  378. /package/dist/{toEmpty-CYAbupM4.cjs → toEmpty-DAMmNB5r.cjs} +0 -0
  379. /package/dist/{token-id.vo-DXv5uS9n.cjs → token-id.vo-BxG9TG0O.cjs} +0 -0
  380. /package/dist/{token-id.vo-Bvwhr3ZE.js → token-id.vo-ClsroxHO.js} +0 -0
  381. /package/dist/{util-CzeB3hfa.cjs → util-CmdAhheh.cjs} +0 -0
  382. /package/dist/{util-C8a4fA9p.js → util-DxzlYNS5.js} +0 -0
  383. /package/dist/{util-selector-BWPH68_l.cjs → util-selector-BcAncU4L.cjs} +0 -0
  384. /package/dist/{util-selector-BSTsxgne.js → util-selector-CcK-GAdE.js} +0 -0
  385. /package/dist/{while-active-B0lWy_6l.js → while-active-BpppWuCs.js} +0 -0
  386. /package/dist/{while-active-Dsowp0Fi.cjs → while-active-Dhc2LwOm.cjs} +0 -0
@@ -1,34 +0,0 @@
1
- require("./rolldown-runtime-Br2OG8yv.cjs");
2
- const require_util = require("./util-BeG7WXzM.cjs");
3
- const require_account = require("./account-BlYkEmcs.cjs");
4
- const require_account_tokens = require("./account-tokens-DXr8DlpW.cjs");
5
- let _laceio_cardano_core = require("@laceio/cardano/core");
6
- let rxjs = require("rxjs");
7
- //#region ../../packages/contract/cardano-context/src/custody/store/track-custody-account-tokens.ts
8
- /**
9
- * A custody account holds what its owner can spend through Lace while it is
10
- * live: plain funds without a reference script, own reserves and withdrawable
11
- * rewards. No Lace builder spends a plain fund carrying a reference script or
12
- * a foreign reserve, the control UTxO's lovelace is the state's minimum and
13
- * the owner's fee reserve, grant UTxOs hold lovelace only a sweep frees,
14
- * stranded deposits cannot be spent, and account tokens are no holding, so
15
- * none of them reaches the tokens store.
16
- */
17
- const computeCustodyAccountTokens = (account) => (_, { cardanoCustody: { selectCardanoCustodyAccountState$ } }, { actions }) => selectCardanoCustodyAccountState$.pipe((0, rxjs.map)((selectAccountState) => selectAccountState(account.accountId)), (0, rxjs.distinctUntilChanged)(), (0, rxjs.map)((accountState) => actions.tokens.setAccountTokens({
18
- blockchainName: "Cardano",
19
- accountId: account.accountId,
20
- byAddress: accountState?.status === "live" ? [{
21
- address: require_util.CardanoPaymentAddress(account.blockchainSpecific.address),
22
- tokens: require_account_tokens.toAccountTokens((0, _laceio_cardano_core.coalesceValueQuantities)([...accountState.funds.filter(([, txOut]) => txOut.scriptReference === void 0), ...accountState.reserves.own].map(([, txOut]) => txOut.value)), accountState.withdrawableRewards)
23
- }] : []
24
- })));
25
- /**
26
- * Tracks the tokens of every active custody account, which the Cardano
27
- * context's own token tracking leaves to this store.
28
- */
29
- const trackCustodyAccountTokens = (actionObservables, stateObservables, dependencies) => stateObservables.cardanoContext.selectActiveCardanoAccounts$.pipe((0, rxjs.mergeAll)(), (0, rxjs.distinct)((account) => account.accountId), (0, rxjs.mergeMap)((account) => require_account.isCardanoCustodyAccount(account) ? computeCustodyAccountTokens(account)(actionObservables, stateObservables, dependencies) : []));
30
- //#endregion
31
- //#region ../../packages/contract/cardano-context/src/custody/store/init.ts
32
- const init = () => ({ sideEffects: [trackCustodyAccountTokens] });
33
- //#endregion
34
- exports.default = init;
@@ -1,422 +0,0 @@
1
- import { a as __toESM } from "./rolldown-runtime-OvD0k9op.js";
2
- import { n as Ok, t as Err } from "./asyncoption-CruEYOBI.js";
3
- import { n as retryBackoff, t as PROVIDER_REQUEST_RETRY_CONFIG } from "./retry-config-Dmgt28wM.js";
4
- import { a as isNotFoundError, o as toProviderError } from "./error-DIZOY2Lw.js";
5
- import { n as buildUrl, t as HttpClient } from "./http-client-TRlhDZGh.js";
6
- import { t as require_lib } from "./lib--iqvW4O_.js";
7
- import { t as BitcoinTransactionStatus } from "./bitcoin-data-provider-BYPSmuZS.js";
8
- import { ProviderError, ProviderFailure } from "@laceio/cardano/core";
9
- import { contextLogger } from "@laceio/cardano/util";
10
- import { defer, from, of } from "rxjs";
11
- import memoize from "lodash/memoize.js";
12
- import { catchError as catchError$1, map as map$1 } from "rxjs/operators";
13
- //#region ../../packages/lib/bitcoin-provider-core/src/maestro/util.ts
14
- const SATS_IN_BTC = 1e8;
15
- /**
16
- * Converts a Bitcoin amount expressed as a decimal string (I.E `"0.00012345"`)
17
- * into its integer value in satoshis.
18
- *
19
- * @param btcString - Bitcoin amount as a string (e.g. `"2"`, `"0.5"`, `"0.00000001"`).
20
- * @returns Amount in satoshis as a number.
21
- */
22
- const btcStringToSatoshis = (btcString) => {
23
- const [integerPart, fractionPart = ""] = btcString.split(".");
24
- const paddedFraction = fractionPart.padEnd(8, "0").slice(0, 8);
25
- return Number(integerPart) * SATS_IN_BTC + Number(paddedFraction);
26
- };
27
- /**
28
- * Return the OP_RETURN payload (as hex) if the output is nulldata,
29
- * otherwise undefined.
30
- */
31
- const getOpReturnData = (output) => {
32
- const asm = output.scriptPubKey?.asm;
33
- if (!asm) return void 0;
34
- if (!(output.scriptPubKey?.type === "nulldata" || asm.startsWith("OP_RETURN"))) return void 0;
35
- const [, hexPayload] = asm.split(/\s+/);
36
- return hexPayload ?? void 0;
37
- };
38
- //#endregion
39
- //#region ../../packages/lib/bitcoin-provider-core/src/maestro/maestro-provider.ts
40
- /**
41
- * High-level REST wrapper around Maestro's Bitcoin API.
42
- */
43
- var MaestroBitcoinProvider = class {
44
- logger;
45
- #client;
46
- #txCache = /* @__PURE__ */ new Map();
47
- #rawTxCache = /* @__PURE__ */ new Map();
48
- /**
49
- * Creates a new instance of the Maestro Bitcoin provider.
50
- *
51
- * @param client - Pre-configured HTTP client.
52
- * @param logger - Any ts-log compatible logger implementation.
53
- */
54
- constructor(client, logger) {
55
- this.#client = client;
56
- this.logger = contextLogger(logger, this.constructor.name);
57
- }
58
- /**
59
- * Fetches the current block height and hash.
60
- *
61
- * @returns A promise that resolves with the current blockchain information.
62
- */
63
- async getLastKnownBlock() {
64
- const { data: { last_updated: { block_height, block_hash } } } = await this.request("/rpc/general/info");
65
- return {
66
- height: Number(block_height),
67
- hash: block_hash
68
- };
69
- }
70
- /**
71
- * Retrieves detailed information about a specific blockchain transaction by its hash.
72
- *
73
- * @param txHash - The hash of the transaction to retrieve. This is typically a unique identifier
74
- * in hexadecimal format.
75
- * @returns A promise that resolves to a `TransactionHistoryEntry`.
76
- *
77
- * @throws `Error` Throws an error if the transaction cannot be retrieved, which might occur due to network issues,
78
- * incorrect transaction hash, or the transaction not existing in the blockchain.
79
- */
80
- async getTransaction(txHash) {
81
- if (this.#txCache.has(txHash)) return this.#txCache.get(txHash);
82
- const { data: { data } } = await this.request(`/rpc/transaction/${txHash}`, { params: { verbose: true } });
83
- const entry = this.mapTxEntry(txHash, data);
84
- if (entry.confirmations > 0) this.#txCache.set(txHash, entry);
85
- return entry;
86
- }
87
- /**
88
- * Fetches the raw serialized transaction (hex) for a given transaction hash.
89
- *
90
- * Raw bytes of confirmed transactions are immutable, so they are cached
91
- * indefinitely; unconfirmed transactions are re-fetched on every call.
92
- *
93
- * @param txHash - The hash of the transaction to retrieve, in hexadecimal format.
94
- * @returns A promise that resolves to the raw transaction hex.
95
- *
96
- * @throws `Error` Throws an error if the transaction cannot be retrieved, which might occur due to network issues,
97
- * incorrect transaction hash, or the transaction not existing in the blockchain.
98
- */
99
- async getRawTransaction(txHash) {
100
- if (this.#rawTxCache.has(txHash)) return this.#rawTxCache.get(txHash);
101
- const { data: { data } } = await this.request(`/rpc/transaction/${txHash}`, { params: { verbose: true } });
102
- if (data.confirmations > 0) this.#rawTxCache.set(txHash, data.hex);
103
- return data.hex;
104
- }
105
- /**
106
- * Retrieve a **paginated**, (reverse-chronological by default) history of transactions
107
- * that involve a given address.
108
- *
109
- * @param address - The Bitcoin address or script pubkey to query for transactions.
110
- * @param parameters - Optional parameters to filter and paginate the transaction history.
111
- *
112
- * @returns `BitcoinPaginatedResponse` -
113
- * `{ items: TransactionHistoryEntry[]; cursor: string }`.
114
- */
115
- async getTransactions(address, parameters) {
116
- try {
117
- const { data: { data: edges = [], next_cursor } } = await this.request(`/addresses/${address}/txs`, { params: {
118
- order: "desc",
119
- count: 50,
120
- ...parameters
121
- } });
122
- const transactions = [];
123
- for (const { tx_hash } of edges) transactions.push(await this.getTransaction(tx_hash));
124
- return {
125
- items: transactions,
126
- cursor: next_cursor ?? ""
127
- };
128
- } catch (error) {
129
- if (isNotFoundError(error)) return {
130
- items: [],
131
- cursor: ""
132
- };
133
- throw error;
134
- }
135
- }
136
- /**
137
- * Retrieves unconfirmed transactions (as transaction history entries) from the mempool for a given Bitcoin address.
138
- *
139
- * This function queries pending transactions associated with the specified Bitcoin address.
140
- * It returns an array of transaction history entries representing UTXOs that are currently unconfirmed.
141
- * Optionally, you can filter transactions to only include those observed after a specified block height.
142
- *
143
- * @param address - The Bitcoin address or script pubkey to query for pending transactions.
144
- * @param parameters - Optional parameters to filter and paginate the transaction history.
145
- * @returns `BitcoinPaginatedResponse` -
146
- * `{ items: TransactionHistoryEntry[]; cursor: string }`.
147
- */
148
- async getTransactionsInMempool(address, parameters) {
149
- try {
150
- const { data: { data: utxos = [], next_cursor } } = await this.request(`/mempool/addresses/${address}/utxos`, { params: {
151
- order: "desc",
152
- ...parameters
153
- } });
154
- if (utxos.length === 0) return {
155
- items: [],
156
- cursor: ""
157
- };
158
- const seen = /* @__PURE__ */ new Set();
159
- const pendingPromises = [];
160
- for (const { txid, mempool: isInMempool } of utxos) {
161
- if (seen.has(txid) || !isInMempool) continue;
162
- seen.add(txid);
163
- pendingPromises.push(this.mapTxToPendingEntry(txid));
164
- }
165
- return {
166
- items: await Promise.all(pendingPromises),
167
- cursor: next_cursor ?? ""
168
- };
169
- } catch (error) {
170
- if (isNotFoundError(error)) return {
171
- items: [],
172
- cursor: ""
173
- };
174
- throw error;
175
- }
176
- }
177
- /**
178
- * Fetches the unspent transaction outputs (UTxOs) associated with a specified address.
179
- *
180
- * @returns A promise that resolves with a list of UTxOs for the address.
181
- */
182
- async getUTxOs(address, parameters) {
183
- try {
184
- const { data: { data: utxos = [], next_cursor } } = await this.request(`/addresses/${address}/utxos`, { params: { ...parameters } });
185
- return {
186
- items: utxos.map((out) => ({
187
- txId: out.txid,
188
- index: out.vout,
189
- satoshis: Number.parseInt(out.satoshis, 10),
190
- address: out.address,
191
- script: out.script_pubkey,
192
- height: out.height,
193
- confirmations: out.confirmations,
194
- inscriptions: out.inscriptions.map((inscription) => ({
195
- offset: inscription.offset,
196
- inscriptionId: inscription.inscription_id
197
- })),
198
- runes: out.runes.map((rune) => ({
199
- runeId: rune.rune_id,
200
- amount: rune.amount
201
- }))
202
- })),
203
- cursor: next_cursor ?? ""
204
- };
205
- } catch (error) {
206
- if (isNotFoundError(error)) return {
207
- items: [],
208
- cursor: ""
209
- };
210
- throw error;
211
- }
212
- }
213
- /**
214
- * Submits a raw transaction to the blockchain for inclusion in a block.
215
- *
216
- * @returns A promise that resolves with the transaction hash of the submitted transaction.
217
- */
218
- async submitTransaction(rawTransaction) {
219
- const { data, status } = await this.request("/rpc/transaction/submit", {
220
- method: "POST",
221
- headers: { "Content-Type": "application/json" },
222
- body: JSON.stringify(rawTransaction)
223
- });
224
- if (status !== 201) throw new ProviderError(ProviderFailure.InvalidResponse, `Unexpected response status: ${status} - ${JSON.stringify(data)}`);
225
- return data;
226
- }
227
- /**
228
- * Fetches the status of a specified transaction by its hash.
229
- *
230
- * @returns A promise that resolves with the current status of the transaction.
231
- */
232
- async getTransactionStatus(txHash) {
233
- try {
234
- const { status } = await this.getTransaction(txHash);
235
- return status;
236
- } catch (error) {
237
- if (isNotFoundError(error)) return BitcoinTransactionStatus.Dropped;
238
- throw error;
239
- }
240
- }
241
- /**
242
- * Estimates the transaction fee in BTC per kilobyte based on the desired confirmation time and fee estimation mode.
243
- *
244
- * This method queries a blockchain fee estimation service to determine the appropriate fee
245
- * rate required for a transaction to be confirmed within the specified number of blocks.
246
- *
247
- * @param blocks - The target number of blocks within which the transaction should be confirmed.
248
- * A smaller number indicates a higher priority and typically results in a higher fee.
249
- * For example, `blocks = 1` requests a fee estimation for the next block confirmation.
250
- * @param mode - The fee estimation mode, which determines the trade-off between
251
- * reliability and cost:
252
- * - `FeeEstimationMode.Conservative`: Prioritizes confirmation reliability.
253
- * - `FeeEstimationMode.Economical`: Aims to minimize fees, with potentially slower confirmations.
254
- * @returns A promise that resolves to the estimated fee in satoshis per byte.
255
- * This value can be used to calculate the total transaction fee
256
- * based on the size of the transaction in bytes.
257
- */
258
- async estimateFee(blocks, mode) {
259
- const { data: { data }, status } = await this.request(`/rpc/transaction/estimatefee/${blocks}`, { params: { mode } });
260
- if (status !== 200) throw new ProviderError(ProviderFailure.InvalidResponse, "Invalid response from fee estimation API.");
261
- return {
262
- feeRate: data.feerate,
263
- targetConfirmationTime: data.blocks
264
- };
265
- }
266
- /**
267
- * Transform a Maestro transaction record into the wallet's
268
- * `TransactionHistoryEntry` format.
269
- *
270
- * @param txHash - The transaction hash.
271
- * @param data - The data payload returned by `/rpc/transaction/{hash}`.
272
- * @param overrides - Partial entry whose properties overwrite the derived base
273
- * values (e.g. `{ status: Pending, confirmations: -1 }`).
274
- *
275
- * @returns A fully populated `TransactionHistoryEntry`.
276
- */
277
- mapTxEntry(txHash, data, overrides = {}) {
278
- return {
279
- inputs: data.vin.map((vin) => ({
280
- txId: vin.txid ?? "",
281
- index: vin.vout ?? 0,
282
- address: vin.address ?? "",
283
- satoshis: btcStringToSatoshis(vin.value.toString()),
284
- isCoinbase: !!vin.coinbase,
285
- coinbaseScript: vin.coinbase ?? ""
286
- })),
287
- outputs: data.vout.map((vout) => ({
288
- address: vout.address,
289
- satoshis: btcStringToSatoshis(vout.value.toString()),
290
- opReturnData: getOpReturnData(vout)
291
- })),
292
- transactionHash: txHash,
293
- confirmations: data.confirmations,
294
- status: data.confirmations > 0 ? BitcoinTransactionStatus.Confirmed : BitcoinTransactionStatus.Pending,
295
- blockHeight: data.blockheight,
296
- timestamp: data.blocktime,
297
- ...overrides
298
- };
299
- }
300
- /**
301
- * Maps a transaction hash to a pending transaction entry.
302
- *
303
- * @param txHash - The transaction hash to map.
304
- */
305
- async mapTxToPendingEntry(txHash) {
306
- const { data } = await this.request(`/rpc/transaction/${txHash}`, { params: { verbose: true } });
307
- return this.mapTxEntry(txHash, data.data, {
308
- confirmations: -1,
309
- status: BitcoinTransactionStatus.Pending,
310
- blockHeight: 0,
311
- timestamp: Math.floor(Date.now() / 1e3)
312
- });
313
- }
314
- /**
315
- * Performs a generic HTTP request to the Maestro API.
316
- */
317
- async request(endpoint, options) {
318
- try {
319
- this.logger.debug("request", endpoint);
320
- const response = await this.#client.request(endpoint, options);
321
- this.logger.debug("response", JSON.stringify(response));
322
- return response;
323
- } catch (error) {
324
- this.logger.debug("error", error);
325
- throw toProviderError(error);
326
- }
327
- }
328
- };
329
- //#endregion
330
- //#region ../../packages/lib/bitcoin-provider-core/src/maestro-config.ts
331
- var import_lib = /* @__PURE__ */ __toESM(require_lib());
332
- const computeMaestroConfigIdentifier = ({ clientConfig: { baseUrl, projectId } }) => `${baseUrl}-${projectId}`;
333
- const getMaestroClient = memoize(({ clientConfig, rateLimiterConfig }) => {
334
- const rateLimiter = new import_lib.default({
335
- reservoir: rateLimiterConfig.size,
336
- reservoirIncreaseAmount: rateLimiterConfig.increaseAmount,
337
- reservoirIncreaseInterval: rateLimiterConfig.increaseInterval,
338
- reservoirIncreaseMaximum: rateLimiterConfig.size
339
- });
340
- return new HttpClient({
341
- baseUrl: buildUrl([clientConfig.apiVersion], clientConfig.baseUrl),
342
- requestInit: { headers: { "api-key": clientConfig.projectId ?? "" } }
343
- }, { rateLimiter });
344
- }, computeMaestroConfigIdentifier);
345
- //#endregion
346
- //#region ../../packages/lib/bitcoin-provider-core/src/create-maestro-bitcoin-provider.ts
347
- const getMaestroApiProvider = memoize((config, logger) => {
348
- return new MaestroBitcoinProvider(getMaestroClient(config), logger);
349
- }, computeMaestroConfigIdentifier);
350
- const getMaestroConfig = (context, configs) => configs[context.network];
351
- const unprovisionedNetworkError = (network) => new ProviderError(ProviderFailure.NotImplemented, void 0, `maestro is unprovisioned for network ${network}: no config entry in this build`);
352
- const createMaestroBitcoinProvider = (maestroConfig, logger) => ({
353
- getLastKnownBlock: (context) => {
354
- const config = getMaestroConfig(context, maestroConfig);
355
- if (!config) return of(Err(unprovisionedNetworkError(context.network)));
356
- return from(getMaestroApiProvider(config, logger).getLastKnownBlock().then(Ok).catch(Err));
357
- },
358
- getTransaction: (context, txHash) => {
359
- const config = getMaestroConfig(context, maestroConfig);
360
- if (!config) return of(Err(unprovisionedNetworkError(context.network)));
361
- return from(getMaestroApiProvider(config, logger).getTransaction(txHash).then(Ok).catch(Err));
362
- },
363
- getRawTransaction: (context, txHash) => {
364
- const config = getMaestroConfig(context, maestroConfig);
365
- if (!config) return of(Err(unprovisionedNetworkError(context.network)));
366
- const provider = getMaestroApiProvider(config, logger);
367
- return defer(async () => provider.getRawTransaction(txHash)).pipe(retryBackoff(PROVIDER_REQUEST_RETRY_CONFIG), map$1(Ok), catchError$1((error) => of(Err(error))));
368
- },
369
- getTransactions: (context, address, { afterBlockHeight, limit, order, cursor }) => {
370
- const config = getMaestroConfig(context, maestroConfig);
371
- if (!config) return of(Err(unprovisionedNetworkError(context.network)));
372
- return from(getMaestroApiProvider(config, logger).getTransactions(address, {
373
- count: limit,
374
- order,
375
- cursor,
376
- from: afterBlockHeight
377
- }).then((result) => Ok(result)).catch(Err));
378
- },
379
- getTransactionsInMempool: (context, address, { afterBlockHeight, limit, order, cursor }) => {
380
- const config = getMaestroConfig(context, maestroConfig);
381
- if (!config) return of(Err(unprovisionedNetworkError(context.network)));
382
- return from(getMaestroApiProvider(config, logger).getTransactionsInMempool(address, {
383
- count: limit,
384
- order,
385
- cursor,
386
- from: afterBlockHeight
387
- }).then((result) => Ok(result)).catch(Err));
388
- },
389
- getUTxOs: (context, address, { afterBlockHeight, limit, order, cursor }) => {
390
- const config = getMaestroConfig(context, maestroConfig);
391
- if (!config) return of(Err(unprovisionedNetworkError(context.network)));
392
- return from(getMaestroApiProvider(config, logger).getUTxOs(address, {
393
- count: limit,
394
- order,
395
- cursor,
396
- from: afterBlockHeight
397
- }).then((result) => Ok(result)).catch(Err));
398
- },
399
- submitTransaction: (context, rawTransaction) => {
400
- const config = getMaestroConfig(context, maestroConfig);
401
- if (!config) return of(Err(unprovisionedNetworkError(context.network)));
402
- return from(getMaestroApiProvider(config, logger).submitTransaction(rawTransaction).then(Ok).catch(Err));
403
- },
404
- getTransactionStatus: (context, txHash) => {
405
- const config = getMaestroConfig(context, maestroConfig);
406
- if (!config) return of(Err(unprovisionedNetworkError(context.network)));
407
- return from(getMaestroApiProvider(config, logger).getTransactionStatus(txHash).then(Ok).catch(Err));
408
- },
409
- estimateFee: (context, blocks, mode) => {
410
- const config = getMaestroConfig(context, maestroConfig);
411
- if (!config) return of(Err(unprovisionedNetworkError(context.network)));
412
- return from(getMaestroApiProvider(config, logger).estimateFee(blocks, mode).then(Ok).catch(Err));
413
- }
414
- });
415
- //#endregion
416
- //#region ../../packages/module/bitcoin-provider-maestro/src/store/dependencies.ts
417
- const initializeDependencies = async ({ runtime: { config: { bitcoinProvider: { maestroConfig } } } }, { logger }) => ({ bitcoinProvider: createMaestroBitcoinProvider(maestroConfig, logger) });
418
- //#endregion
419
- //#region ../../packages/module/bitcoin-provider-maestro/src/store/init.ts
420
- const redux = async (props, dependencies) => ({ sideEffectDependencies: await initializeDependencies(props, dependencies) });
421
- //#endregion
422
- export { redux as default };