@laceio/sdk 0.1.0 → 0.1.1-canary.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 (408) hide show
  1. package/dist/{Ed25519PublicKey-lvu1s54U.cjs → Address-AMKTo-dA.cjs} +17150 -61
  2. package/dist/{Ed25519PublicKey-CjnuAYRR.js → Address-_c_-9hLC.js} +16955 -264
  3. package/dist/{Bip32Account-r3KAhCgU.js → Bip32Account-CaW1zC9Y.js} +4 -5
  4. package/dist/{Bip32Account-Cz3h0ZUa.cjs → Bip32Account-DOaGmKpv.cjs} +4 -5
  5. package/dist/Cardano-B-gyqBBD.js +311 -0
  6. package/dist/Cardano-BQ_af0Y3.cjs +322 -0
  7. package/dist/Ed25519PublicKey-B3QcR0J2.cjs +88 -0
  8. package/dist/Ed25519PublicKey-DIE19xHg.js +83 -0
  9. package/dist/InMemoryKeyAgent-Bc_xZY-v.cjs +652 -0
  10. package/dist/InMemoryKeyAgent-D8T3vtXy.js +631 -0
  11. package/dist/{PaymentAddress-DhbtuYb7.cjs → PaymentAddress-B4n1KZMx.cjs} +1 -2
  12. package/dist/{PaymentAddress-xSmGUQ-8.js → PaymentAddress-Cml3EA1n.js} +1 -2
  13. package/dist/Percent-Cfuw5YyL.cjs +11 -0
  14. package/dist/Percent-DpvyJ_93.js +5 -0
  15. package/dist/SodiumBip32Ed25519-BaD-kjyx.cjs +380 -0
  16. package/dist/SodiumBip32Ed25519-DCikAMsl.js +363 -0
  17. package/dist/{TransactionBuilder-CeJTNzm-.cjs → TransactionBuilder-BakTJvsJ.cjs} +59 -89
  18. package/dist/{TransactionBuilder-DGNDM4kt.js → TransactionBuilder-D2ErwVWv.js} +5 -71
  19. package/dist/_md-6zV2Cme0.cjs +684 -0
  20. package/dist/_md-gbUqlhqd.js +399 -0
  21. package/dist/_web-crypto-random-bytes-BvzwTYPG.js +197 -0
  22. package/dist/acc-module-NL_8mEHH.cjs +27654 -0
  23. package/dist/acc-module-ur8CkBd1.js +27624 -0
  24. package/dist/account-call-B7cF8ly4.cjs +293 -0
  25. package/dist/account-call-BF4rBcNw.js +3 -0
  26. package/dist/account-call-CoCq3V55.js +252 -0
  27. package/dist/account-call-DFcD257E.cjs +4 -0
  28. package/dist/account-guards-BeKbV9D1.cjs +41 -0
  29. package/dist/account-guards-qnFXuXSE.js +36 -0
  30. package/dist/{activity-type.stable-ClO9j_PH.cjs → activity-type-BPXxdHBP.cjs} +2 -1
  31. package/dist/{activity-type.stable-Ml0SOYv9.js → activity-type-C1geyPsH.js} +2 -1
  32. package/dist/address-OxwXIwbF.js +15502 -0
  33. package/dist/address-book-address-validator-BqYM0Uyp.cjs +41 -0
  34. package/dist/{address-book-address-validator-BhqRfmlL.cjs → address-book-address-validator-CGIcqn5W.cjs} +5 -4
  35. package/dist/{address-book-address-validator-VqIOB8PY.js → address-book-address-validator-FkkYim3z.js} +6 -4
  36. package/dist/address-book-address-validator-RSx2Jozy.js +39 -0
  37. package/dist/address-lECYBd9-.cjs +13043 -0
  38. package/dist/{apply-vkey-witnesses-Ctzk7eye.cjs → apply-vkey-witnesses-1jyczTkw.cjs} +1 -1
  39. package/dist/{apply-vkey-witnesses-Dfo7XfhL.js → apply-vkey-witnesses-Byb40-yJ.js} +1 -1
  40. package/dist/artefact-loader-Cqc9eSkL.cjs +182 -0
  41. package/dist/artefact-loader-D0T2f6F7.js +159 -0
  42. package/dist/auto-dismiss-failure-on-success-BWJceNXd.cjs +37 -0
  43. package/dist/auto-dismiss-failure-on-success-Bpod-v4r.js +31 -0
  44. package/dist/bip32-EPpcFrpH.cjs +3851 -0
  45. package/dist/{bip32ed25519-D2In8WzR.cjs → bip32ed25519-CRiG-Kjg.cjs} +5 -4
  46. package/dist/{bip32ed25519-qsLH_eWO.js → bip32ed25519-E-fCUZNv.js} +6 -4
  47. package/dist/bip39-DZomfqeY.js +9 -0
  48. package/dist/bip39-MAck9iod.cjs +26 -0
  49. package/dist/bitcoin-data-provider-D0OT_Uiu.cjs +26 -0
  50. package/dist/bitcoin-data-provider-LN_8oamW.js +21 -0
  51. package/dist/bitcoin.cjs +48 -0
  52. package/dist/bitcoin.d.ts +29805 -1
  53. package/dist/bitcoin.js +22 -0
  54. package/dist/{blake2b-BGHUWMsV.js → blake2b-BL-eR5G2.js} +6 -4
  55. package/dist/{blake2b-DspUqw68.cjs → blake2b-Iy324FwH.cjs} +5 -4
  56. package/dist/{blockfrost-tx-submit-provider-BUEOmdvc.js → blockfrost-tx-submit-provider-BHDLgOIE.js} +9 -162
  57. package/dist/{blockfrost-tx-submit-provider-B5dWbdrZ.cjs → blockfrost-tx-submit-provider-BxC19smv.cjs} +7 -171
  58. package/dist/{blockingWithLatestFrom-BhaE7pnA.js → blockingWithLatestFrom-FUfZFEUG.js} +1 -1
  59. package/dist/{blockingWithLatestFrom-DkuT3G2a.cjs → blockingWithLatestFrom-bmCPgA3c.cjs} +1 -1
  60. package/dist/bn-BFq5a4dk.cjs +2553 -0
  61. package/dist/{SodiumBip32Ed25519-BEfo1Q9m.js → browser-D5jRKv_L.js} +4 -401
  62. package/dist/bytes.vo-CziaOsba.js +24 -0
  63. package/dist/bytes.vo-hecRu3YZ.cjs +35 -0
  64. package/dist/{cardano-network-id-to-network-type-PXvn1ycQ.cjs → cardano-network-id-to-network-type-BwG_d6QP.cjs} +1 -1
  65. package/dist/{cardano-network-id-to-network-type-DHgKhDAK.js → cardano-network-id-to-network-type-CYJheetp.js} +1 -1
  66. package/dist/{cardano-network-id.vo-CbNNKd-k.cjs → cardano-network-id.vo-C5VuBXT3.cjs} +2 -2
  67. package/dist/{cardano-network-id.vo-CTYe-Oix.js → cardano-network-id.vo-CeLJqmb_.js} +2 -2
  68. package/dist/{cardano-tx-id.vo-BMwemq5x.js → cardano-tx-id.vo-DJ70NC0-.js} +1 -1
  69. package/dist/{cardano-tx-id.vo-NY-gCOWJ.cjs → cardano-tx-id.vo-lnyO9XaW.cjs} +1 -1
  70. package/dist/cardano.cjs +31 -24
  71. package/dist/cardano.d.ts +27602 -8121
  72. package/dist/cardano.js +21 -13
  73. package/dist/client-Bw2foG5E.cjs +808 -0
  74. package/dist/const-BB3MccLt.js +153 -0
  75. package/dist/{const-BErUlcZw.cjs → const-BWBAzOmN.cjs} +1 -1
  76. package/dist/const-CSWmOyzn.cjs +42 -0
  77. package/dist/{const-Dy8Ctnpd.cjs → const-D3mCkwrM.cjs} +5 -5
  78. package/dist/const-DW7z3R5k.js +13 -0
  79. package/dist/{const-DeUA7zYl.js → const-DbuUHSzR.js} +5 -5
  80. package/dist/const-DgBzKfz6.cjs +31995 -0
  81. package/dist/{const-DVW6DGkZ.js → const-xGSNCtwQ.js} +1 -1
  82. package/dist/contract-BsIGhsYa.js +171 -0
  83. package/dist/contract-DD6CGnpB.cjs +189 -0
  84. package/dist/create-add-accounts-2mQA0ST2.js +102 -0
  85. package/dist/create-add-accounts-B6mR2NMn.cjs +114 -0
  86. package/dist/{delegation-tx-builder-CF0VunDW.cjs → delegation-tx-builder-Cp30jtj9.cjs} +9 -8
  87. package/dist/{delegation-tx-builder-C8LQxU2R.js → delegation-tx-builder-DUMikSTg.js} +9 -7
  88. package/dist/{deregistration-tx-builder-DcUXA3Ls.cjs → deregistration-tx-builder-B-ZeY-dR.cjs} +10 -9
  89. package/dist/{deregistration-tx-builder-BOBPP8m_.js → deregistration-tx-builder-CRLrK99U.js} +10 -8
  90. package/dist/device-commitment-hex.vo-BIUYUNz1.cjs +31 -0
  91. package/dist/device-commitment-hex.vo-D9FsYLn7.js +26 -0
  92. package/dist/device-key-BToCoS4D.js +2394 -0
  93. package/dist/device-key-D6euvxFi.cjs +2489 -0
  94. package/dist/device-readers-BHJeNR8I.js +3 -0
  95. package/dist/device-readers-Dw7uTNM5.cjs +167 -0
  96. package/dist/device-readers-b4g2j3QL.js +144 -0
  97. package/dist/device-readers-cxcJcWq5.cjs +7 -0
  98. package/dist/dist-B00GN41m.js +141 -0
  99. package/dist/dist-BA1xnF9O.cjs +4413 -0
  100. package/dist/dist-BmHOXLe8.cjs +3814 -0
  101. package/dist/dist-Br0OVXKt.cjs +535 -0
  102. package/dist/dist-C1JK9C1I.cjs +3452 -0
  103. package/dist/dist-DKEViNEI.cjs +1306 -0
  104. package/dist/dist-Dwqx184a.cjs +43175 -0
  105. package/dist/dist-MJof_Ky1.cjs +145 -0
  106. package/dist/dist-p84sVVJ9.cjs +1394 -0
  107. package/dist/{earn-rewards-tx-builder-BRlTueHS.js → earn-rewards-tx-builder-8G_rouIk.js} +9 -7
  108. package/dist/{earn-rewards-tx-builder-RgO0QUY8.cjs → earn-rewards-tx-builder-cOUNV58E.cjs} +9 -8
  109. package/dist/enc-key-circuits-0Dud78IB.js +13 -0
  110. package/dist/enc-key-circuits-yjPHbuo_.cjs +24 -0
  111. package/dist/english-BZ_ebp2-.cjs +2057 -0
  112. package/dist/envelopes-B3QCzo5p.js +2658 -0
  113. package/dist/envelopes-BdE1xlgz.cjs +2777 -0
  114. package/dist/errors-BA3b8aVu.cjs +584 -0
  115. package/dist/errors-pkQdxW-7.js +392 -0
  116. package/dist/experimental.cjs +6820 -0
  117. package/dist/experimental.d.ts +63552 -0
  118. package/dist/experimental.js +6670 -0
  119. package/dist/fees-6C2uEWFK.js +653 -0
  120. package/dist/fees-DtC71fOx.cjs +820 -0
  121. package/dist/gated-call-BrPjKolT.js +3 -0
  122. package/dist/gated-call-CcsuW9L5.js +691 -0
  123. package/dist/gated-call-DdDrxEq5.cjs +732 -0
  124. package/dist/gated-call-Dk7PazhG.cjs +4 -0
  125. package/dist/grant-rules-B7eDuD5G.cjs +5468 -0
  126. package/dist/grant-rules-qLrKUIR3.js +5217 -0
  127. package/dist/grant-status-CDmZpx32.js +296 -0
  128. package/dist/grant-status-CQtwjLsA.cjs +337 -0
  129. package/dist/grants-Bnb-3Hkv.cjs +16 -0
  130. package/dist/grants-CIb6nOV7.cjs +273 -0
  131. package/dist/grants-CYY0AquW.js +202 -0
  132. package/dist/grants-DOsFSotP.js +4 -0
  133. package/dist/{group-cardano-addresses-by-account-C-1GHUu8.cjs → group-cardano-addresses-by-account-BGOtPV-Y.cjs} +4 -40
  134. package/dist/{group-cardano-addresses-by-account-p4dXmCoj.js → group-cardano-addresses-by-account-TqvESg9x.js} +6 -37
  135. package/dist/{guarded-transaction-signer-DZSGHp1K.js → guarded-transaction-signer-BbVDE9Nn.js} +12 -18
  136. package/dist/{guarded-transaction-signer-BLSezbfV.cjs → guarded-transaction-signer-DTLjAkif.cjs} +26 -26
  137. package/dist/hex-BVtOKJki.cjs +263 -0
  138. package/dist/hex-CGYJPK_Z.js +192 -0
  139. package/dist/http-client-B7_kBTYn.js +155 -0
  140. package/dist/http-client-DYQ_7Rdf.cjs +167 -0
  141. package/dist/identity-DxPhxkZs.js +239 -0
  142. package/dist/identity-y41Yle03.cjs +274 -0
  143. package/dist/in-memory-wallet-integration-5BKiAvPT.js +20861 -0
  144. package/dist/{in-memory-wallet-integration-CUTa68ET.js → in-memory-wallet-integration-BCOqDgbt.js} +10 -107
  145. package/dist/in-memory-wallet-integration-Bi8I9Dso.js +128 -0
  146. package/dist/in-memory-wallet-integration-Bsl2ONua.cjs +239 -0
  147. package/dist/in-memory-wallet-integration-DZ0CAyvY.cjs +20865 -0
  148. package/dist/{in-memory-wallet-integration-Dw_S7amX.cjs → in-memory-wallet-integration-DsFm8gLk.cjs} +21 -112
  149. package/dist/{in-memory-wallet-integration-Z4Bp_DTv.cjs → in-memory-wallet-integration-aW_SF-go.cjs} +8 -5
  150. package/dist/{in-memory-wallet-integration-B6cbAlvD.js → in-memory-wallet-integration-mIEc8EfR.js} +9 -5
  151. package/dist/index.cjs +95 -58
  152. package/dist/index.d.ts +45152 -13448
  153. package/dist/index.js +55 -28
  154. package/dist/{init-CVi8J0zk.cjs → init-5SfWgCYD.cjs} +3 -3
  155. package/dist/{init-Ci7aqWCf2.cjs → init-8NVWbo302.cjs} +2 -2
  156. package/dist/init-B-C7n6u6.js +5 -0
  157. package/dist/{init-BFMWRf-L.js → init-B-ppfGO-.js} +1 -1
  158. package/dist/{init-IiR093Jw.cjs → init-B2OUhY5T.cjs} +2 -2
  159. package/dist/{init-DXnus199.cjs → init-B6Eg_o6G.cjs} +5 -5
  160. package/dist/{init-4hDl5bpr.js → init-BAWMHL1k.js} +2 -2
  161. package/dist/init-BC2CZZOu2.cjs +2002 -0
  162. package/dist/{init-a228hXnS.cjs → init-BF-a2p6E.cjs} +65 -73
  163. package/dist/{init-fFirX8OY.cjs → init-BFxlQAD8.cjs} +1 -1
  164. package/dist/init-BJE1ry0O.js +17 -0
  165. package/dist/{init-BVnI4z2J.js → init-BPKBVOHU.js} +2 -2
  166. package/dist/{init-bdqZBd-o.js → init-BSP_xcpB.js} +2 -2
  167. package/dist/{init-CFNOn3lo.js → init-BSd7mznK.js} +3 -3
  168. package/dist/{init-MjR4swi6.js → init-BUJTT0MN.js} +36 -43
  169. package/dist/init-BUpFzYsD.cjs +143 -0
  170. package/dist/{init-BvpYHyLH.cjs → init-BZ-WyAIL.cjs} +3 -3
  171. package/dist/init-BZdfdLX7.js +422 -0
  172. package/dist/{init-CJeOys1w.cjs → init-B_HWNXMD.cjs} +2 -2
  173. package/dist/init-BbIMt6xU.cjs +6 -0
  174. package/dist/{init-BYdN1aqE.cjs → init-BewG6swt.cjs} +2 -2
  175. package/dist/{init-BX0AZAVH2.js → init-Bilqsbng.js} +2 -2
  176. package/dist/{init-Tpn9VkFu.cjs → init-BpwlQ6wF.cjs} +1 -1
  177. package/dist/{init-D5-P0HXK.js → init-BtQOzUjX.js} +1 -1
  178. package/dist/{init-BvGz3qUd2.js → init-CCTscPaY2.js} +2 -2
  179. package/dist/{init-D4hPipCD.cjs → init-CH0yyBof.cjs} +1 -1
  180. package/dist/init-CaIkrXal.cjs +121 -0
  181. package/dist/init-CkZy4IMf.cjs +107 -0
  182. package/dist/{init-Drr2f_Pr.js → init-CmfcY7SV.js} +1 -1
  183. package/dist/{init-Kf3_OLv6.js → init-CnJAlks_.js} +1 -1
  184. package/dist/{init-Cdjt_z-b.cjs → init-CqqmtAIK.cjs} +4 -4
  185. package/dist/{init-Bb0avZeZ.js → init-Cu2znmIc.js} +5 -5
  186. package/dist/init-Cz5LAizN.js +2001 -0
  187. package/dist/init-D4WM3-Mn.cjs +18 -0
  188. package/dist/init-DMi2FGpf.cjs +424 -0
  189. package/dist/{init-lcaUSOOG.js → init-DPTJohPd.js} +1 -1
  190. package/dist/{init-BTYLMF9F2.cjs → init-DexLSprL2.cjs} +258 -61
  191. package/dist/init-DfKPgD21.js +106 -0
  192. package/dist/init-DgzRsI-C.js +141 -0
  193. package/dist/init-Dj4Cn7-P.js +4789 -0
  194. package/dist/init-DktAnYI0.cjs +2354 -0
  195. package/dist/{init-DFwhgert.cjs → init-DmyuM9Lo.cjs} +1 -1
  196. package/dist/{init-CX_zLXc6.js → init-IBnizp1U.js} +5 -5
  197. package/dist/init-MDKB6tGI2.cjs +4790 -0
  198. package/dist/{init-DbZ5byj42.js → init-TbB38KNt2.js} +258 -60
  199. package/dist/init-X6m_cqDy.js +2353 -0
  200. package/dist/{init-DvVgKCaP2.cjs → init-bzvl1JhF.cjs} +2 -2
  201. package/dist/{init-BgrY29gW.js → init-dsYkC_0B.js} +4 -4
  202. package/dist/{init-B5BsI3DR.cjs → init-kvn5FlPS.cjs} +7 -7
  203. package/dist/init-vfy9DW_E.js +119 -0
  204. package/dist/{init-BE_6Jyc4.js → init-w7xl6LsP.js} +3 -3
  205. package/dist/{init-DEsWVyn5.cjs → init-wgiBUmyW.cjs} +1 -1
  206. package/dist/{is-retriable-error-DWv_ob-f.js → is-retriable-error-CmFR20pe.js} +1 -1
  207. package/dist/{is-retriable-error-Dtb4JGjd.cjs → is-retriable-error-D2yo0_lS.cjs} +1 -1
  208. package/dist/jubjub-authoriser-A2c8vmkN.js +84 -0
  209. package/dist/jubjub-authoriser-D3ZDgzcF.cjs +85 -0
  210. package/dist/key-source-CcLTx8HK.js +2761 -0
  211. package/dist/key-source-D2tTAag-.cjs +806 -0
  212. package/dist/{key-value-store-DTX1quRS.js → key-value-store-DZcNDB3n.js} +1 -1
  213. package/dist/{key-value-store-B-XRIwaM.cjs → key-value-store-Htj4RgMe.cjs} +1 -1
  214. package/dist/keyDerivation-DcKRUCVh.cjs +274 -0
  215. package/dist/keyDerivation-QGesIMbS.js +4077 -0
  216. package/dist/{lace-context-FpU3iG3f.cjs → lace-context-BN0b_ury.cjs} +4 -4
  217. package/dist/{lace-context-BQvvxVLm.js → lace-context-DMRJ87Vg.js} +4 -4
  218. package/dist/lib-BC-62Byh.cjs +2359 -0
  219. package/dist/lib-JYqcAX0c.js +2354 -0
  220. package/dist/midnight-account-id.vo--Vcx34Xk.cjs +10 -0
  221. package/dist/midnight-account-id.vo-BuB8fiVO.js +5 -0
  222. package/dist/midnight-engine-B7D2hbHo.js +5 -0
  223. package/dist/midnight-engine-D5ikN_5F.cjs +6 -0
  224. package/dist/midnight-wallet-BOdFD6SX.cjs +24 -0
  225. package/dist/midnight-wallet-CAqZrNVe.js +18 -0
  226. package/dist/midnight.cjs +1412 -0
  227. package/dist/midnight.d.ts +28609 -0
  228. package/dist/midnight.js +1355 -0
  229. package/dist/modules-cardano-BiL9hoM3.js +996 -0
  230. package/dist/modules-cardano-UeXks3sd.cjs +1109 -0
  231. package/dist/node-relay-BOuvdZvC.cjs +49 -0
  232. package/dist/node-relay-CLtc5n1v.js +48 -0
  233. package/dist/outputs-5qdW8s-f.js +196 -0
  234. package/dist/outputs-BEM1GPMf.cjs +339 -0
  235. package/dist/{SodiumBip32Ed25519-BQUcrQWX.cjs → pbkdf2-B1veireP.cjs} +6 -411
  236. package/dist/pending-operation-CfTUNQVD.cjs +26 -0
  237. package/dist/pending-operation-Ljijb1Uh.js +21 -0
  238. package/dist/providers-1on_fwJO.cjs +364 -0
  239. package/dist/providers-C1MsxfMA.js +341 -0
  240. package/dist/redacted-4SJPqt-G.js +81 -0
  241. package/dist/redacted-DwxIDdIF.cjs +86 -0
  242. package/dist/{reselect-DPML1uFN.cjs → reselect-kP4DaAII.cjs} +1 -1
  243. package/dist/{retry-config-oNtfdyrG.cjs → retry-config-BGv5q5QM.cjs} +1 -1
  244. package/dist/{retry-config-VdbuqBsI.js → retry-config-Bu5Yn5ua.js} +1 -1
  245. package/dist/safe-buffer-CqGpSFCQ.js +43 -0
  246. package/dist/safe-buffer-DbXbwhUQ.cjs +48 -0
  247. package/dist/sdk-1SRu8Ype.cjs +1445 -0
  248. package/dist/sdk-BneJm7ey.js +1249 -0
  249. package/dist/sdk-init-9TG1ZvHF.cjs +3795 -0
  250. package/dist/sdk-init-Ce3mD-8F.js +1047 -0
  251. package/dist/secret-box-CSmRp6Tt.js +3777 -0
  252. package/dist/secret-box-ZfbYwBgS.cjs +6970 -0
  253. package/dist/send-proof-progress-DtAcrMP6.cjs +33 -0
  254. package/dist/send-proof-progress-Dx2cUz1B.js +22 -0
  255. package/dist/sha2-DaRJZOjk.cjs +390 -0
  256. package/dist/sha2-c4sB6peD.js +378 -0
  257. package/dist/side-effects-C3BhLrdP.js +768 -0
  258. package/dist/side-effects-DG0R-KFc.cjs +804 -0
  259. package/dist/sign-bitcoin-transaction-with-seed-C7vq9om8.js +147 -0
  260. package/dist/sign-bitcoin-transaction-with-seed-Ds1dwzan.cjs +158 -0
  261. package/dist/signer--2I6poMD.js +2 -0
  262. package/dist/signer-CX21Ups_.cjs +121 -0
  263. package/dist/signer-Cnn9q9oY.js +92 -0
  264. package/dist/signer-DbSxjk0F.cjs +7 -0
  265. package/dist/signer-factory-B5oFuUZ-.cjs +130 -0
  266. package/dist/signer-factory-BAt8FPNc.cjs +281 -0
  267. package/dist/signer-factory-BGE4nL4k.js +129 -0
  268. package/dist/signer-factory-C4pgsiJi.js +281 -0
  269. package/dist/{signer-factory-DySc1wRX.cjs → signer-factory-D95jQIPV.cjs} +9 -6
  270. package/dist/{signer-factory-D4HrwFPl.js → signer-factory-PrpsGX-8.js} +10 -6
  271. package/dist/{slice-BZTQgYSs.js → slice-B-xJcuT1.js} +4 -4
  272. package/dist/slice-B4QOYaOG.cjs +105 -0
  273. package/dist/{slice-CtIMw2YT.cjs → slice-B9QKuhi0.cjs} +3 -3
  274. package/dist/slice-BKnGkAkd.cjs +9031 -0
  275. package/dist/{slice-Bhwmqn1p.cjs → slice-Bf4enJKZ.cjs} +8 -8
  276. package/dist/{slice-DaNVz7_l.js → slice-ByNWnxKS.js} +8 -8
  277. package/dist/{slice-C2UDQrdt.js → slice-C1zOeseG.js} +449 -355
  278. package/dist/{slice-DFLyKRm5.cjs → slice-C4toRM6A.cjs} +2 -2
  279. package/dist/{slice-Cx4dULDA.cjs → slice-C8YVv4Qn.cjs} +1 -1
  280. package/dist/{slice-jnpOgiSZ.cjs → slice-CaMfviYu.cjs} +3 -3
  281. package/dist/{slice-DFvrwUur.js → slice-CgeRsYRg.js} +6 -6
  282. package/dist/slice-Cwt8jShq.js +9013 -0
  283. package/dist/{slice-zNEspZND.js → slice-D0VzpMbY.js} +2 -2
  284. package/dist/slice-D14F78Ca.js +87 -0
  285. package/dist/{slice-F6A1YKOF.cjs → slice-DLflttAu.cjs} +479 -366
  286. package/dist/{slice-C96EdeY1.js → slice-DcO-iNz2.js} +1 -1
  287. package/dist/{slice-C19quNWM.cjs → slice-DimtxfAT.cjs} +2 -2
  288. package/dist/{slice-KiNoGwD9.js → slice-DlTEqIoI.js} +1 -1
  289. package/dist/{slice-ws8PccRX.js → slice-Dn0WojD7.js} +3 -3
  290. package/dist/{slice-BLSxLmie.cjs → slice-Dongunf7.cjs} +4 -4
  291. package/dist/{slice-B6vPum19.js → slice-DpufJAjJ.js} +2 -2
  292. package/dist/{slice-exhhmucR.cjs → slice-DtitVc9L.cjs} +7 -7
  293. package/dist/{slice-Bjj2t2ut.cjs → slice-WMMMc1Xv.cjs} +2 -2
  294. package/dist/slice-a8VuIqzS.cjs +378 -0
  295. package/dist/slice-bRASyM-m.js +354 -0
  296. package/dist/{slice-CBFrgHSH.js → slice-hNyKbDry.js} +3 -3
  297. package/dist/{InMemoryKeyAgent-pyB2gA-N.cjs → src-BayYMIjw.cjs} +20 -8228
  298. package/dist/{InMemoryKeyAgent-D-3HejxN.js → src-CgINPlSx.js} +29 -4811
  299. package/dist/store-AUlTfcI_.js +37 -0
  300. package/dist/store-C7AneHEY.cjs +66 -0
  301. package/dist/submit-BuBCVi-l.cjs +87 -0
  302. package/dist/submit-D37lxFrK.js +70 -0
  303. package/dist/submit-bitcoin-tx-DFLnhidO.js +983 -0
  304. package/dist/submit-bitcoin-tx-sih2hSfb.cjs +1049 -0
  305. package/dist/{subtractValueQuantities-DfZg6oiG.js → subtractValueQuantities-BuDJVxq6.js} +3 -22
  306. package/dist/{subtractValueQuantities-C8qDTtgH.cjs → subtractValueQuantities-CqR606HV.cjs} +2 -32
  307. package/dist/{sync-operation-utils-BrQyWFS_.cjs → sync-operation-utils--Z_IQfyW.cjs} +0 -66
  308. package/dist/{sync-operation-utils-CAaCGvEN.js → sync-operation-utils-BimBpvI3.js} +1 -37
  309. package/dist/token-color.vo-CItgoOjw.js +26 -0
  310. package/dist/token-color.vo-Ca4hUXfh.cjs +37 -0
  311. package/dist/token-id-mapper-BVau2RXa.js +16 -0
  312. package/dist/token-id-mapper-CSeLzM4o.cjs +18 -0
  313. package/dist/{token-id-mapper-pDaTxpw2.js → token-id-mapper-ClBeIdJR.js} +2 -2
  314. package/dist/{token-id-mapper-DYcd8hhQ.cjs → token-id-mapper-D0wFdbOy.cjs} +2 -2
  315. package/dist/types-BhzypKMS.cjs +15 -0
  316. package/dist/types-DTE1ctDB.js +10 -0
  317. package/dist/types-DXSxXGz0.js +12 -0
  318. package/dist/types-Dls6Z5gV.cjs +23 -0
  319. package/dist/{util-P4PX2muj.cjs → util-D1YlKzrc.cjs} +2 -2
  320. package/dist/{util-CQSJU0wT.js → util-DHxtzUzY.js} +2 -2
  321. package/dist/{utils-Bv4OHT4S.cjs → utils-DYf4iZKX.cjs} +7 -1
  322. package/dist/{utils-DrtzChYN.js → utils-DcnoETEP.js} +2 -2
  323. package/dist/utils-Du0YXRcU.cjs +112 -0
  324. package/dist/utils-fF_rnZe3.js +65 -0
  325. package/dist/v8Signatures-ClGpA8mS.cjs +71 -0
  326. package/dist/{vote-delegation-tx-builder-69gOEkCB.cjs → vote-delegation-tx-builder-BjZxCOd3.cjs} +9 -8
  327. package/dist/{vote-delegation-tx-builder-BRJ_pf-c.js → vote-delegation-tx-builder-DRJwPXkD.js} +9 -7
  328. package/dist/watch-FGE4B_Ge.js +13056 -0
  329. package/dist/watch-imlsRZDp.cjs +52207 -0
  330. package/package.json +95 -3
  331. package/dist/Address-4KjeDt_x.cjs +0 -17269
  332. package/dist/Address-_VPkf7Xh.js +0 -17101
  333. package/dist/account-guards.stable-BKyYPj4z.cjs +0 -10
  334. package/dist/account-guards.stable-BdmQ43vC.js +0 -5
  335. package/dist/init-BR9ZIbED.cjs +0 -378
  336. package/dist/init-B_k1RUN_.cjs +0 -21
  337. package/dist/init-Bs3b5ZQH.js +0 -378
  338. package/dist/init-ChfcrHgG2.cjs +0 -4354
  339. package/dist/init-D1uUMMpG.js +0 -19
  340. package/dist/init-DV1OSZiK.js +0 -4352
  341. package/dist/modules-cardano-BINzpXpk.js +0 -5454
  342. package/dist/modules-cardano-Dt8OwoQb.cjs +0 -5640
  343. package/dist/slice-Caf98m0d2.js +0 -107
  344. package/dist/slice-PM6llajQ2.cjs +0 -125
  345. /package/dist/{BigIntMath-CoJWXt1h.cjs → BigIntMath-CBciEQn2.cjs} +0 -0
  346. /package/dist/{BigIntMath-BWUJOsOW.js → BigIntMath-X3EniYDo.js} +0 -0
  347. /package/dist/{ChainId-sdLmlIRk.cjs → ChainId-CNPSU9nn.cjs} +0 -0
  348. /package/dist/{ChainId-CKbm87yQ.js → ChainId-CeoG8Sov.js} +0 -0
  349. /package/dist/{_polyfill-node.process-4fnlkbBi.cjs → _polyfill-node.process-5UxyjoHG.cjs} +0 -0
  350. /package/dist/{account-id.vo-Xpgnu-av.cjs → account-id.vo-DYZBZQsz.cjs} +0 -0
  351. /package/dist/{account-id.vo-DP0BtOoF.js → account-id.vo-KDTWJ-W5.js} +0 -0
  352. /package/dist/{actions-BNagEO6m.cjs → actions-BnHFVSr_.cjs} +0 -0
  353. /package/dist/{actions-BWTyAr7B.js → actions-Cwj0ApZf.js} +0 -0
  354. /package/dist/{asyncoption-po7-RiA5.cjs → asyncoption-CYcZNBRM.cjs} +0 -0
  355. /package/dist/{asyncoption-CzIVH5Y1.js → asyncoption-DZQGfznq.js} +0 -0
  356. /package/dist/{bignum.vo-DhhZ9HP1.js → bignum.vo-Co6tMH2q.js} +0 -0
  357. /package/dist/{bignum.vo-CpkrIXjH.cjs → bignum.vo-Du-bpvar.cjs} +0 -0
  358. /package/dist/{blockchain-network-id.vo-CbgrAY_K.js → blockchain-network-id.vo-C6Jowh8t.js} +0 -0
  359. /package/dist/{blockchain-network-id.vo-5iC6Kffo.cjs → blockchain-network-id.vo-DEQ14dYj.cjs} +0 -0
  360. /package/dist/{composite-signer-factory-DABpCe1_.js → composite-signer-factory-D9RWY-1V.js} +0 -0
  361. /package/dist/{composite-signer-factory-BizuNPP7.cjs → composite-signer-factory-v4Pxn8bA.cjs} +0 -0
  362. /package/dist/{error-ggOihIfv.cjs → error-B6wj9nPv.cjs} +0 -0
  363. /package/dist/{error-DHKO2iS4.js → error-CvEYL98P.js} +0 -0
  364. /package/dist/{esm-browser-DnXNvpcn.cjs → esm-browser-CZbMeVod.cjs} +0 -0
  365. /package/dist/{esm-browser-BBVQuyQv.js → esm-browser-DpAD_RKv.js} +0 -0
  366. /package/dist/{feature-flag-key.vo-DoGK5Bfh.js → feature-flag-key.vo-9reURsOQ.js} +0 -0
  367. /package/dist/{feature-flag-key.vo-CP1Z9s8e.cjs → feature-flag-key.vo-KTIdnzYX.cjs} +0 -0
  368. /package/dist/{first-state-of-status-Bx4-QQ5m.cjs → first-state-of-status-9ICeDNSa.cjs} +0 -0
  369. /package/dist/{first-state-of-status-D7XzEuSa.js → first-state-of-status-BscbKj_t.js} +0 -0
  370. /package/dist/{init-4319psUJ.cjs → init-BT67pd9x.cjs} +0 -0
  371. /package/dist/{init-AFUM1TSg.js → init-CHk1fvJ2.js} +0 -0
  372. /package/dist/{init-ZX90nEJe2.js → init-DIyNx6DZ.js} +0 -0
  373. /package/dist/{init-CTQ2g6Xt.js → init-DtxxFaCx.js} +0 -0
  374. /package/dist/{init-Dt1Xifg_2.cjs → init-J8QobR93.cjs} +0 -0
  375. /package/dist/{init-BNewLCqw.cjs → init-xzZPlQwB.cjs} +0 -0
  376. /package/dist/{is-redux-persist-state-DxJSsvxB.cjs → is-redux-persist-state-C5luvPEH.cjs} +0 -0
  377. /package/dist/{is-redux-persist-state-Bl2n4VMr.js → is-redux-persist-state-CjcqyCoh.js} +0 -0
  378. /package/dist/{isNotNil-CZxBMfL5.js → isNotNil-Be7gCY0m.js} +0 -0
  379. /package/dist/{isNotNil-C_SO1tcC.cjs → isNotNil-CrYIUFry.cjs} +0 -0
  380. /package/dist/{logging-BvMDKgl0.js → logging-BAMMfn5j.js} +0 -0
  381. /package/dist/{logging-Bh9ikph3.cjs → logging-CbxgIX9V.cjs} +0 -0
  382. /package/dist/{metadatum-B-sxBnSY.cjs → metadatum-BGvFqGPt.cjs} +0 -0
  383. /package/dist/{metadatum-Ego4jVas.js → metadatum-BVocMYy_.js} +0 -0
  384. /package/dist/{repo-slice-BzZQUTj8.cjs → repo-slice-BB_W-6OL.cjs} +0 -0
  385. /package/dist/{repo-slice-vCcQJotS.js → repo-slice-BQlssw9M.js} +0 -0
  386. /package/dist/{reselect-BPkMzw3k.js → reselect-JIgawvPe.js} +0 -0
  387. /package/dist/{serializable-BxFUShKY.js → serializable-F7OtYl8d.js} +0 -0
  388. /package/dist/{serializable-DWgkHhv_.cjs → serializable-n3UoxbZc.cjs} +0 -0
  389. /package/dist/{slice-DY-DNtSi.js → slice-5dGBAz6w.js} +0 -0
  390. /package/dist/{slice-BEFoeqgr.cjs → slice-BzJgg9FS.cjs} +0 -0
  391. /package/dist/{src-CPmX4KUh.cjs → src-CeBNkonz.cjs} +0 -0
  392. /package/dist/{src-XOZXPKxe.js → src-Cv1ifqbe.js} +0 -0
  393. /package/dist/{time-CQPt4FdU.js → time-ByoKevdZ.js} +0 -0
  394. /package/dist/{time-Blvoyh9G.cjs → time-qD7edGU0.cjs} +0 -0
  395. /package/dist/{time.vo-Xln4yGBU.js → time.vo-C17-tYq3.js} +0 -0
  396. /package/dist/{time.vo-rwWwJzmP.cjs → time.vo-TmYE-_Y2.cjs} +0 -0
  397. /package/dist/{toEmpty-CzmoZVLN.cjs → toEmpty-Db6V94Mf.cjs} +0 -0
  398. /package/dist/{toEmpty-DzLd-ZCi.js → toEmpty-Djj-QbpI.js} +0 -0
  399. /package/dist/{token-id.vo-l8fuSpem.cjs → token-id.vo-CZ622zcZ.cjs} +0 -0
  400. /package/dist/{token-id.vo-DMKSaMlc.js → token-id.vo-IDI9C_Qm.js} +0 -0
  401. /package/dist/{types-B61DQoFW.js → types-By-XeXWg.js} +0 -0
  402. /package/dist/{types-CUC-Kcqh.cjs → types-Cn6WlQV6.cjs} +0 -0
  403. /package/dist/{util-BV3iGOrz.cjs → util-Cp1h58uD.cjs} +0 -0
  404. /package/dist/{util-BsQKLorV.js → util-DHppXj7U.js} +0 -0
  405. /package/dist/{util-selector-CKIyoAOz.js → util-selector-BWmHpo92.js} +0 -0
  406. /package/dist/{util-selector-C9H5RsNw.cjs → util-selector-glXkO-jR.cjs} +0 -0
  407. /package/dist/{while-active-CNXeLxre.js → while-active-CDBnUlQA.js} +0 -0
  408. /package/dist/{while-active-BsDWSNrO.cjs → while-active-I2TlHtm7.cjs} +0 -0
@@ -1,18 +1,24 @@
1
1
  import "./chunk-D6g4UhsZ.js";
2
2
  import "./_polyfill-buffer-patch-JcrfT1gU.js";
3
- import { F as RewardAddress, kt as BaseAddress, r as CredentialType, t as Address } from "./Address-_VPkf7Xh.js";
4
- import { a as extractUniqueStakeKeys, c as nativeScriptPolicyId, i as getTopOnChainActivity, o as UtxoCacheKey, r as groupCardanoAddressesByAccount, s as autoDismissFailureOnSuccess } from "./group-cardano-addresses-by-account-p4dXmCoj.js";
5
- import { t as AddressType } from "./types-B61DQoFW.js";
6
- import { a as isCardanoAccount, g as CardanoPaymentAddress, o as isCardanoAddress } from "./util-CQSJU0wT.js";
7
- import { s as Timestamp } from "./time.vo-Xln4yGBU.js";
8
- import { t as Err } from "./asyncoption-CzIVH5Y1.js";
9
- import { i as isThoroughAddressDiscoveryOperation, n as createSyncOperationId, o as parseTipHashFromOperationId, r as isAddressDiscoveryOperation, s as CardanoSyncFailureId, t as CardanoSyncOperationType } from "./sync-operation-utils-CAaCGvEN.js";
10
- import { t as toEmpty } from "./toEmpty-DzLd-ZCi.js";
11
- import { n as retryBackoff, t as PROVIDER_REQUEST_RETRY_CONFIG } from "./retry-config-VdbuqBsI.js";
12
- import { t as CardanoNetworkId } from "./cardano-network-id.vo-CTYe-Oix.js";
13
- import { t as CardanoTxId } from "./cardano-tx-id.vo-BMwemq5x.js";
14
- import { t as whileActive } from "./while-active-CNXeLxre.js";
15
- import { EMPTY, catchError, combineLatest, concat, distinctUntilChanged, exhaustMap, filter, forkJoin, from, ignoreElements, interval, map, merge, mergeMap, of, race, switchMap, take, takeUntil, tap, timer, toArray, withLatestFrom } from "rxjs";
3
+ import "./dist-B00GN41m.js";
4
+ import { Ft as BaseAddress, I as RewardAddress, r as CredentialType, t as Address } from "./Address-_c_-9hLC.js";
5
+ import "./_web-crypto-random-bytes-BvzwTYPG.js";
6
+ import { a as extractUniqueStakeKeys, i as getTopOnChainActivity, o as UtxoCacheKey, r as groupCardanoAddressesByAccount, s as nativeScriptPolicyId } from "./group-cardano-addresses-by-account-TqvESg9x.js";
7
+ import { t as AddressType } from "./types-By-XeXWg.js";
8
+ import { a as isCardanoAccount, g as CardanoPaymentAddress, o as isCardanoAddress, u as toContractAddress } from "./util-DHxtzUzY.js";
9
+ import { s as Timestamp } from "./time.vo-C17-tYq3.js";
10
+ import { t as Err } from "./asyncoption-DZQGfznq.js";
11
+ import { t as autoDismissFailureOnSuccess } from "./auto-dismiss-failure-on-success-Bpod-v4r.js";
12
+ import { t as AccountId } from "./account-id.vo-KDTWJ-W5.js";
13
+ import { t as toEmpty } from "./toEmpty-Djj-QbpI.js";
14
+ import { n as retryBackoff, t as PROVIDER_REQUEST_RETRY_CONFIG } from "./retry-config-Bu5Yn5ua.js";
15
+ import { t as CardanoNetworkId } from "./cardano-network-id.vo-CeLJqmb_.js";
16
+ import { t as CardanoTxId } from "./cardano-tx-id.vo-DJ70NC0-.js";
17
+ import { i as isThoroughAddressDiscoveryOperation, n as createSyncOperationId, o as parseTipHashFromOperationId, r as isAddressDiscoveryOperation, s as CardanoSyncFailureId, t as CardanoSyncOperationType } from "./sync-operation-utils-BimBpvI3.js";
18
+ import { o as isCardanoCustodyAccount, t as verifyCardanoCustodyAccountIdentity } from "./identity-DxPhxkZs.js";
19
+ import { t as whileActive } from "./while-active-CDBnUlQA.js";
20
+ import { t as cardanoCustodyActivityMetadataOf } from "./pending-operation-Ljijb1Uh.js";
21
+ import { EMPTY, catchError, combineLatest, concat, distinctUntilChanged, exhaustMap, filter, forkJoin, from, ignoreElements, interval, map, merge, mergeMap, of, race, scan, switchMap, take, takeUntil, tap, throwError, timer, toArray, withLatestFrom } from "rxjs";
16
22
  //#region ../../packages/lib/core/src/address.ts
17
23
  /**
18
24
  * CIP-19 Cardano address encoding — credentials → bech32, via `@cardano-sdk/core`'s
@@ -173,46 +179,6 @@ const filterFrankenUtxos = (utxos, ownedCredentials) => {
173
179
  };
174
180
  };
175
181
  //#endregion
176
- //#region ../../packages/module/cardano-sync/src/store/side-effects/account-extensions.stable.ts
177
- /** Whether the account is of a kind a feature adds: never. */
178
- const isExtensionAccount = (_account) => false;
179
- /** Address discovery for an account of a kind a feature adds: none exists. */
180
- const extensionAccountAddressDiscovery = (_params) => EMPTY;
181
- /** The UTxO fetch of an account of a kind a feature adds: none exists. */
182
- const extensionAccountUtxos = (_params) => EMPTY;
183
- /** The sync side effects the features add: none. */
184
- const extensionSyncSideEffects = [];
185
- //#endregion
186
- //#region ../../packages/module/cardano-sync/src/store/get-script-address.ts
187
- /**
188
- * Method to derive the wallet's grouped address from the script and network ID.
189
- *
190
- * @param paymentScript - The native script to be used for the payment credential.
191
- * @param stakingScript - The native script to be used for the staking credential.
192
- * @param networkId - The network identifier.
193
- * @returns The derived grouped address.
194
- */
195
- const getScriptAddress = (paymentScript, stakingScript, networkId) => {
196
- const paymentScriptHash = nativeScriptPolicyId(paymentScript);
197
- const stakingScriptHash = nativeScriptPolicyId(stakingScript);
198
- const paymentScriptCredential = {
199
- hash: paymentScriptHash,
200
- type: CredentialType.ScriptHash
201
- };
202
- const stakeScriptCredential = {
203
- hash: stakingScriptHash,
204
- type: CredentialType.ScriptHash
205
- };
206
- return {
207
- accountIndex: 0,
208
- address: encodeBaseAddress(networkId, paymentScriptCredential, stakeScriptCredential),
209
- index: 0,
210
- networkId,
211
- rewardAccount: encodeRewardAddress(networkId, stakeScriptCredential),
212
- type: AddressType.External
213
- };
214
- };
215
- //#endregion
216
182
  //#region ../../packages/module/cardano-sync/src/store/side-effects/chain-account-state-operations.ts
217
183
  /**
218
184
  * Builds the `addSyncOperation` actions that chain account-state operations
@@ -256,6 +222,245 @@ const chainAccountStateOperations = (params) => {
256
222
  }));
257
223
  };
258
224
  //#endregion
225
+ //#region ../../packages/module/cardano-sync/src/store/side-effects/throw-on-error.ts
226
+ /** The value of a provider result, or its error thrown. */
227
+ const throwOnError = (result) => {
228
+ if (result.isErr()) throw result.unwrapErr();
229
+ return result.unwrap();
230
+ };
231
+ //#endregion
232
+ //#region ../../packages/module/cardano-sync/src/store/side-effects/custody-accounts.ts
233
+ /**
234
+ * Discovers the one address of a Cardano custody account: its base address,
235
+ * re-derived from the stored identity. The sync fails when the stored
236
+ * address, reward account or stake script hash differs from the derived one,
237
+ * so funds are never shown at an address the custody contract does not
238
+ * govern for this account.
239
+ *
240
+ * The entry carries the `type`, `index` and `accountIndex` every address
241
+ * entry needs, but no key derives it. It must never reach a signer as a
242
+ * known address: a key agent would sign every custody input with the key at
243
+ * that path. No signer factory accepts a custody account, so signing never
244
+ * reads its addresses.
245
+ */
246
+ const handleCustodyAccount = (params) => {
247
+ const { account, accountId, operationId, actions, logger } = params;
248
+ const { chainId } = account.blockchainSpecific;
249
+ const identity = verifyCardanoCustodyAccountIdentity(account.blockchainSpecific);
250
+ if (!identity.ok) {
251
+ logger.error(`Address discovery refused custody account ${accountId}: ${identity.error.code}`, identity.error);
252
+ return of(actions.sync.failSyncOperation({
253
+ accountId,
254
+ operationId,
255
+ error: "sync.error.address-discovery-failed"
256
+ }));
257
+ }
258
+ return of(actions.sync.updateSyncOperation({
259
+ accountId,
260
+ operationId,
261
+ update: {
262
+ status: "InProgress",
263
+ type: "Indeterminate"
264
+ }
265
+ }), actions.addresses.upsertAddresses({
266
+ blockchainName: "Cardano",
267
+ accountId,
268
+ addresses: [toContractAddress({
269
+ accountIndex: 0,
270
+ address: identity.value.address,
271
+ index: 0,
272
+ networkId: chainId.networkId,
273
+ rewardAccount: identity.value.rewardAccount,
274
+ type: AddressType.External
275
+ }, chainId.networkMagic)]
276
+ }), ...chainAccountStateOperations({
277
+ accountId,
278
+ discoveryOperationId: operationId,
279
+ actions
280
+ }), actions.sync.completeSyncOperation({
281
+ accountId,
282
+ operationId
283
+ }));
284
+ };
285
+ /**
286
+ * A custody account's UTxOs are not fetched: the account no longer matches
287
+ * the identity its contract derives.
288
+ */
289
+ var CardanoCustodyUtxoSyncRefusedError = class extends Error {
290
+ constructor(accountId, reason) {
291
+ super(`Refused the UTxO sync of custody account ${accountId}: ${reason.code}`);
292
+ this.accountId = accountId;
293
+ this.reason = reason;
294
+ this.name = "CardanoCustodyUtxoSyncRefusedError";
295
+ }
296
+ };
297
+ /**
298
+ * A custody account's UTxOs: exactly those whose full address is the
299
+ * account's base address, the only outputs the custody contract lets the
300
+ * account spend.
301
+ *
302
+ * Discovery verifies the identity only once, when it stores the address
303
+ * entry, so every fetch verifies it again: an identity changed since then,
304
+ * or an entry that no longer matches it, fails the fetch.
305
+ *
306
+ * Fetched by address rather than by stake key. The stake credential also
307
+ * gathers outputs under any other payment credential, which anyone can
308
+ * create at no cost to inflate the fetch, and none of which belong to the
309
+ * account. The key-hash franken filter does not apply: every custody output
310
+ * has the script's payment credential.
311
+ *
312
+ * Reference scripts are read too: classification counts a reserve that
313
+ * carries one as foreign.
314
+ */
315
+ const fetchCustodyAccountUtxos = (params) => {
316
+ const { accountId, blockchainSpecific } = params.account;
317
+ const identity = verifyCardanoCustodyAccountIdentity(blockchainSpecific);
318
+ if (!identity.ok) return throwError(() => new CardanoCustodyUtxoSyncRefusedError(accountId, identity.error));
319
+ const { address } = identity.value;
320
+ const strayEntry = params.accountAddresses.find((entry) => entry.address !== CardanoPaymentAddress(address));
321
+ if (strayEntry) return throwError(() => new CardanoCustodyUtxoSyncRefusedError(accountId, {
322
+ code: "address-entry-mismatch",
323
+ entry: strayEntry.address,
324
+ derived: address
325
+ }));
326
+ return params.getUtxosAtAddress({
327
+ address: CardanoPaymentAddress(address),
328
+ withReferenceScripts: true
329
+ }, { chainId: blockchainSpecific.chainId }).pipe(map(throwOnError), retryBackoff(PROVIDER_REQUEST_RETRY_CONFIG), map((utxos) => {
330
+ const own = utxos.filter(([, output]) => output.address === address);
331
+ if (own.length < utxos.length) params.logger.warn(`Dropped ${utxos.length - own.length} UTxOs not at the address of custody account ${accountId}`);
332
+ return own;
333
+ }));
334
+ };
335
+ //#endregion
336
+ //#region ../../packages/module/cardano-sync/src/store/side-effects/expire-custody-pending-activities.ts
337
+ /**
338
+ * Advances one account's round record. A round starts when `startedAt`
339
+ * changes and completes when it clears with a newer `lastSuccessfulSync`.
340
+ */
341
+ const advanceRounds = (previous, status, tipSlot) => {
342
+ const roundStartedAt = status.pendingSync?.startedAt;
343
+ const isSameRound = previous !== void 0 && roundStartedAt === previous.roundStartedAt;
344
+ const roundTipSlot = roundStartedAt === void 0 || previous === void 0 ? void 0 : isSameRound ? previous.roundTipSlot : tipSlot;
345
+ const hasCompleted = previous?.roundStartedAt !== void 0 && !isSameRound && status.lastSuccessfulSync !== previous.lastSuccessfulSync;
346
+ return {
347
+ roundStartedAt,
348
+ roundTipSlot,
349
+ lastSuccessfulSync: status.lastSuccessfulSync,
350
+ syncedFromSlot: hasCompleted ? previous.roundTipSlot ?? previous.syncedFromSlot : previous?.syncedFromSlot
351
+ };
352
+ };
353
+ const trackRounds = ({ hasSeenState, accounts }, [tip, statuses]) => ({
354
+ hasSeenState: true,
355
+ accounts: Object.fromEntries(Object.entries(statuses).map(([id, status]) => {
356
+ const accountId = AccountId(id);
357
+ return [accountId, advanceRounds(accounts[accountId] ?? (hasSeenState ? {} : void 0), status, tip?.slot)];
358
+ }))
359
+ });
360
+ /**
361
+ * Whether a custody operation's pending activity can no longer settle: a
362
+ * round that started once the tip was past its upper validity bound, by
363
+ * the depth the wallet allows its provider to lag, synced the account's
364
+ * history, and neither that history nor the synced UTxOs show the
365
+ * transaction.
366
+ */
367
+ const isExpired = (activity, { syncedFromSlot, utxos, history }) => {
368
+ const invalidHereafter = cardanoCustodyActivityMetadataOf(activity)?.invalidHereafter;
369
+ if (invalidHereafter === void 0 || syncedFromSlot === void 0) return false;
370
+ if (syncedFromSlot <= invalidHereafter + 60) return false;
371
+ const txId = activity.activityId;
372
+ return !history.some((item) => item.txId === txId) && !utxos.some(([input]) => input.txId === txId);
373
+ };
374
+ const findExpired = ({ rounds, pendingByAccount, utxosByAccount, historyByAccount }) => Object.entries(pendingByAccount).flatMap(([id, pending]) => {
375
+ const accountId = AccountId(id);
376
+ const context = {
377
+ syncedFromSlot: rounds.accounts[accountId]?.syncedFromSlot,
378
+ utxos: utxosByAccount[accountId] ?? [],
379
+ history: historyByAccount[accountId] ?? []
380
+ };
381
+ const activityIds = pending.filter((activity) => isExpired(activity, context)).map(({ activityId }) => activityId);
382
+ return activityIds.length > 0 ? [{
383
+ accountId,
384
+ activityIds
385
+ }] : [];
386
+ });
387
+ /**
388
+ * Drops the pending activity of a custody operation that can no longer
389
+ * settle, so an account does not stay blocked as operation-in-progress when
390
+ * no one waits for the operation (R5.3: state reconciles with the network).
391
+ *
392
+ * A custody submission records its upper validity bound on the pending
393
+ * activity (`blockchainSpecific.Cardano.custody`). Past that bound the
394
+ * transaction can never apply. The chain tip alone does not prove that the
395
+ * wallet saw the outcome: the tip poll updates the tip before the next sync
396
+ * round fetches the history. So the activity is dropped only once a sync
397
+ * round that started with the tip past the bound by
398
+ * `UTXO_SYNC_CONFIRMATION_DEPTH` completed successfully, and neither the
399
+ * account's history nor its synced UTxOs show the transaction. Other
400
+ * pending activities carry no bound and are left alone.
401
+ *
402
+ * It reads state only and makes no provider call. `whileActive` (ADR 29)
403
+ * keeps it off while the wallet is locked. Each activation starts with no
404
+ * completed round, so a round that ran before unlock never counts.
405
+ */
406
+ const expireCustodyPendingActivities = (_, { cardanoContext: { selectTip$, selectAccountUtxos$, selectTransactionHistoryGroupedByAccount$ }, activities: { selectPendingActivitiesByAccount$ }, sync: { selectSyncStatusByAccount$ } }, { actions, isWalletActive$ }) => combineLatest([
407
+ combineLatest([selectTip$, selectSyncStatusByAccount$]).pipe(scan(trackRounds, {
408
+ hasSeenState: false,
409
+ accounts: {}
410
+ })),
411
+ selectPendingActivitiesByAccount$,
412
+ selectAccountUtxos$,
413
+ selectTransactionHistoryGroupedByAccount$
414
+ ]).pipe(map(([rounds, pendingByAccount, utxosByAccount, historyByAccount]) => findExpired({
415
+ rounds,
416
+ pendingByAccount,
417
+ utxosByAccount,
418
+ historyByAccount
419
+ })), mergeMap((expired) => from(expired.map(({ accountId, activityIds }) => actions.activities.removeActivities({
420
+ accountId,
421
+ activityIds
422
+ })))), whileActive(isWalletActive$));
423
+ //#endregion
424
+ //#region ../../packages/module/cardano-sync/src/store/side-effects/account-extensions.ts
425
+ /** Whether the account is of a kind a feature adds: a custody account. */
426
+ const isExtensionAccount = isCardanoCustodyAccount;
427
+ /** Address discovery for an account of a kind a feature adds. */
428
+ const extensionAccountAddressDiscovery = handleCustodyAccount;
429
+ /** The UTxO fetch of an account of a kind a feature adds. */
430
+ const extensionAccountUtxos = fetchCustodyAccountUtxos;
431
+ /** The sync side effects the features add. */
432
+ const extensionSyncSideEffects = [expireCustodyPendingActivities];
433
+ //#endregion
434
+ //#region ../../packages/module/cardano-sync/src/store/get-script-address.ts
435
+ /**
436
+ * Method to derive the wallet's grouped address from the script and network ID.
437
+ *
438
+ * @param paymentScript - The native script to be used for the payment credential.
439
+ * @param stakingScript - The native script to be used for the staking credential.
440
+ * @param networkId - The network identifier.
441
+ * @returns The derived grouped address.
442
+ */
443
+ const getScriptAddress = (paymentScript, stakingScript, networkId) => {
444
+ const paymentScriptHash = nativeScriptPolicyId(paymentScript);
445
+ const stakingScriptHash = nativeScriptPolicyId(stakingScript);
446
+ const paymentScriptCredential = {
447
+ hash: paymentScriptHash,
448
+ type: CredentialType.ScriptHash
449
+ };
450
+ const stakeScriptCredential = {
451
+ hash: stakingScriptHash,
452
+ type: CredentialType.ScriptHash
453
+ };
454
+ return {
455
+ accountIndex: 0,
456
+ address: encodeBaseAddress(networkId, paymentScriptCredential, stakeScriptCredential),
457
+ index: 0,
458
+ networkId,
459
+ rewardAccount: encodeRewardAddress(networkId, stakeScriptCredential),
460
+ type: AddressType.External
461
+ };
462
+ };
463
+ //#endregion
259
464
  //#region ../../packages/module/cardano-sync/src/store/side-effects/address-discovery-sync.ts
260
465
  /**
261
466
  * Handles MultiSig account address discovery by generating script address.
@@ -458,13 +663,6 @@ const submitTxSideEffect = ({ cardanoContext: { submitTx$ } }, { cardanoContext:
458
663
  })));
459
664
  }));
460
665
  //#endregion
461
- //#region ../../packages/module/cardano-sync/src/store/side-effects/throw-on-error.ts
462
- /** The value of a provider result, or its error thrown. */
463
- const throwOnError = (result) => {
464
- if (result.isErr()) throw result.unwrapErr();
465
- return result.unwrap();
466
- };
467
- //#endregion
468
666
  //#region ../../packages/module/cardano-sync/src/store/side-effects/track-account-utxos.ts
469
667
  /**
470
668
  * Sentinel `topOnChainActivityId` for the cache key when an account has no