@laceio/sdk 0.1.1 → 0.1.2-canary.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 (388) hide show
  1. package/dist/{TransactionBuilder-DrB3NVTi.cjs → TransactionBuilder-X1H9Gze6.cjs} +64 -14
  2. package/dist/{TransactionBuilder-V6aLx4SV.js → TransactionBuilder-bp2aMDhg.js} +23 -15
  3. package/dist/{_polyfill-buffer-patch-BnPVerlG.cjs → _polyfill-buffer-patch-CM8X7JiY.cjs} +21 -2
  4. package/dist/_polyfill-buffer-patch-yNxN4d5E.js +1467 -0
  5. package/dist/_web-crypto-random-bytes-Bo-GTcRS.js +197 -0
  6. package/dist/acc-module-4iIUv6My.cjs +27654 -0
  7. package/dist/acc-module-Cmj8EsIb.js +27624 -0
  8. package/dist/account-BOQruszJ.js +6 -0
  9. package/dist/account-BUOj4pYJ.cjs +11 -0
  10. package/dist/account-call-7wnopBq0.cjs +5 -0
  11. package/dist/account-call-B9d_2Xwi.js +4 -0
  12. package/dist/account-call-Bd4Rpbvt.cjs +323 -0
  13. package/dist/account-call-C3CkDqEC.js +276 -0
  14. package/dist/account-guards-BtjTGxDZ.cjs +42 -0
  15. package/dist/account-guards-D9Lu5T3W.js +36 -0
  16. package/dist/account-tokens-DvkOFVON.js +16 -0
  17. package/dist/account-tokens-nwcvwLu4.cjs +21 -0
  18. package/dist/{activity-type.stable-BJEfeLxL.cjs → activity-type-Ch6ljxBy.cjs} +2 -1
  19. package/dist/{activity-type.stable-C76_hWd7.js → activity-type-GsJGWs-3.js} +2 -1
  20. package/dist/address-B9ntKL8K.js +13761 -0
  21. package/dist/address-BXp-mY8H.cjs +11270 -0
  22. package/dist/{address-book-address-validator-DIUolI-s.js → address-book-address-validator-0J9XAADH.js} +2 -2
  23. package/dist/address-book-address-validator-DK0dnsRS.cjs +41 -0
  24. package/dist/address-book-address-validator-Di_ywo8M.js +39 -0
  25. package/dist/{address-book-address-validator-DNwQGlOB.cjs → address-book-address-validator-Dte_YQ2L.cjs} +2 -2
  26. package/dist/artefact-loader-BWWYAD7E.cjs +183 -0
  27. package/dist/artefact-loader-Dik4HIfv.js +160 -0
  28. package/dist/auto-dismiss-failure-on-success-C-qoJuid.cjs +37 -0
  29. package/dist/auto-dismiss-failure-on-success-s8MGDEIu.js +31 -0
  30. package/dist/bip32-D6wd_QMn.cjs +3851 -0
  31. package/dist/bitcoin-data-provider-BYPSmuZS.js +21 -0
  32. package/dist/bitcoin-data-provider-w1oEDSU3.cjs +26 -0
  33. package/dist/bitcoin.cjs +45 -0
  34. package/dist/bitcoin.d.ts +29906 -1
  35. package/dist/bitcoin.js +20 -0
  36. package/dist/{blockfrost-tx-submit-provider-DPTrapz-.js → blockfrost-tx-submit-provider-CBWQ0wK9.js} +5 -157
  37. package/dist/{blockfrost-tx-submit-provider-BAIzV5o3.cjs → blockfrost-tx-submit-provider-CLNQ5ycR.cjs} +3 -167
  38. package/dist/bn-d3nSOIf7.cjs +2553 -0
  39. package/dist/browser-B1eMbDwh.js +7468 -0
  40. package/dist/bytes.vo-BB7_4JK6.js +23 -0
  41. package/dist/bytes.vo-BNRquqaO.cjs +34 -0
  42. package/dist/cardano-DfPwhwm-.js +3 -0
  43. package/dist/{cardano-network-id.vo-DSxrFk9S.cjs → cardano-network-id.vo-BEDPn6Li.cjs} +1 -1
  44. package/dist/{cardano-network-id.vo-CK1tNQDg.js → cardano-network-id.vo-Cfpvbod9.js} +1 -1
  45. package/dist/cardano.cjs +22 -18
  46. package/dist/cardano.d.ts +16962 -1716
  47. package/dist/cardano.js +16 -11
  48. package/dist/client-DXBLHk7K.cjs +808 -0
  49. package/dist/codecs-Cswkg7Tm.cjs +4051 -0
  50. package/dist/codecs-Dc1Krpbt.js +3903 -0
  51. package/dist/{const-C84qHkjp.js → const-BJfIK_G-.js} +4 -4
  52. package/dist/const-BhYOdznB.cjs +42 -0
  53. package/dist/const-BsnjG2_Q.cjs +32071 -0
  54. package/dist/const-CUnCl5U0.js +13 -0
  55. package/dist/{const-DXk2tFyv.js → const-CjmfjBP3.js} +1 -1
  56. package/dist/{const-BDEg2Trq.cjs → const-D-eZIS4n.cjs} +4 -4
  57. package/dist/const-D0CbQlo4.js +154 -0
  58. package/dist/{const-BY8B3_0_.cjs → const-iwzZEE_w.cjs} +1 -1
  59. package/dist/contract-1R86jhSw.js +171 -0
  60. package/dist/contract-MKLzYVkW.cjs +189 -0
  61. package/dist/create-add-accounts-Brqk84vF.js +102 -0
  62. package/dist/create-add-accounts-DzXIh7Ot.cjs +114 -0
  63. package/dist/{delegation-tx-builder-CRpLP6jH.cjs → delegation-tx-builder-Dof_0N_d.cjs} +6 -6
  64. package/dist/{delegation-tx-builder-CGVqlaFE.js → delegation-tx-builder-Dy3-2Auz.js} +5 -5
  65. package/dist/{deregistration-tx-builder-DZGwB4cz.cjs → deregistration-tx-builder-CcLwyFpj.cjs} +6 -6
  66. package/dist/{deregistration-tx-builder-B-CrUyX6.js → deregistration-tx-builder-QkWW_gWl.js} +5 -5
  67. package/dist/device-commitment-hex.vo-5wFtQvDS.js +26 -0
  68. package/dist/device-commitment-hex.vo-CT3RmAug.cjs +31 -0
  69. package/dist/device-readers-CUHYoYOH.js +145 -0
  70. package/dist/device-readers-CdxS2btd.cjs +168 -0
  71. package/dist/device-readers-D_JZeNL2.cjs +8 -0
  72. package/dist/device-readers-DwSNCGPP.js +4 -0
  73. package/dist/dist-BMi5ZjEq.cjs +43175 -0
  74. package/dist/dist-BtIq4XFn.cjs +535 -0
  75. package/dist/dist-C3SHC_Ho.cjs +1394 -0
  76. package/dist/dist-CykEjYEX.cjs +3814 -0
  77. package/dist/dist-Dcsxh3be.cjs +3452 -0
  78. package/dist/dist-DqJfSlTd.cjs +4413 -0
  79. package/dist/dist-nTZ70qj7.cjs +1306 -0
  80. package/dist/{earn-rewards-tx-builder-D5sUT5v8.cjs → earn-rewards-tx-builder-BP5JMIKS.cjs} +6 -6
  81. package/dist/{earn-rewards-tx-builder-BDbTDZmD.js → earn-rewards-tx-builder-Cku4BmNU.js} +5 -5
  82. package/dist/enc-key-circuits-B7BjgUL9.js +13 -0
  83. package/dist/enc-key-circuits-BLrZrBVI.cjs +24 -0
  84. package/dist/english-Byb9M0E_.cjs +2057 -0
  85. package/dist/envelopes-BGoO_v8m.js +1621 -0
  86. package/dist/envelopes-CH25R-DN.cjs +1722 -0
  87. package/dist/errors-BIftM8ZN.cjs +688 -0
  88. package/dist/errors-DSq5wUwt.js +466 -0
  89. package/dist/esm-HBSUQw3w.js +384 -0
  90. package/dist/esm-LZuaZjMf.cjs +389 -0
  91. package/dist/experimental.cjs +7349 -0
  92. package/dist/experimental.d.ts +86279 -0
  93. package/dist/experimental.js +7184 -0
  94. package/dist/gated-call-CDCVZIK-.cjs +5 -0
  95. package/dist/gated-call-D-tT7P_t.js +722 -0
  96. package/dist/gated-call-D_VT2quk.js +4 -0
  97. package/dist/gated-call-DgJm1Mi_.cjs +787 -0
  98. package/dist/grant-circuits-DswmW3nI.cjs +71 -0
  99. package/dist/grant-circuits-Jxb5y1HW.js +42 -0
  100. package/dist/grant-rules-By07_eDi.js +6824 -0
  101. package/dist/grant-rules-BzVTWXS7.cjs +7099 -0
  102. package/dist/grant-spend-B3Md9L0n.js +215 -0
  103. package/dist/grant-spend-oWmzRsjH.cjs +217 -0
  104. package/dist/grant-status-B2y49iIu.js +2688 -0
  105. package/dist/grant-status-DOr3t_u8.cjs +2820 -0
  106. package/dist/grants-2BZ-qEVQ.js +5 -0
  107. package/dist/grants-BPoLSiMt.cjs +18 -0
  108. package/dist/grants-BoI5uwSF.cjs +272 -0
  109. package/dist/grants-CtofFu-e.js +213 -0
  110. package/dist/{group-cardano-addresses-by-account-B533oVXR.cjs → group-cardano-addresses-by-account-Bp0g4wEY.cjs} +3 -39
  111. package/dist/{group-cardano-addresses-by-account-RHKoEskR.js → group-cardano-addresses-by-account-SR8MMrZf.js} +5 -35
  112. package/dist/{guarded-transaction-signer-Bxl6_XNd.cjs → guarded-transaction-signer-MFpPg98D.cjs} +17 -18
  113. package/dist/{guarded-transaction-signer-CpKLj8Kp.js → guarded-transaction-signer-P6Rp1faj.js} +8 -15
  114. package/dist/hex-D9ITYbwt.cjs +263 -0
  115. package/dist/hex-mkXcV3pN.js +191 -0
  116. package/dist/http-client-B3N-TMxu.cjs +167 -0
  117. package/dist/http-client-TRlhDZGh.js +155 -0
  118. package/dist/identity-BMLuufva.cjs +263 -0
  119. package/dist/identity-DII6f-h7.js +233 -0
  120. package/dist/in-memory-wallet-integration-B2xzxORj.cjs +20741 -0
  121. package/dist/in-memory-wallet-integration-CBRiPjLO.js +130 -0
  122. package/dist/in-memory-wallet-integration-CULUB5Tf.cjs +240 -0
  123. package/dist/{in-memory-wallet-integration-D-qn65Kx.js → in-memory-wallet-integration-ChIOirMW.js} +5 -2
  124. package/dist/{in-memory-wallet-integration-Croiuopx.js → in-memory-wallet-integration-CljprQQV.js} +7 -104
  125. package/dist/{in-memory-wallet-integration-DVh9sRXa.cjs → in-memory-wallet-integration-Cm6P8sk6.cjs} +3 -2
  126. package/dist/in-memory-wallet-integration-TM9bBphA.js +20738 -0
  127. package/dist/{in-memory-wallet-integration-CnLYeX4-.cjs → in-memory-wallet-integration-t9I00R_V.cjs} +17 -108
  128. package/dist/index.cjs +84 -47
  129. package/dist/index.d.ts +37505 -10036
  130. package/dist/index.js +52 -24
  131. package/dist/{init-CLHuAMB-.js → init-0zzs9aqU.js} +4 -4
  132. package/dist/{init-U8c9yHYx.cjs → init-5KcGcBb5.cjs} +1 -1
  133. package/dist/{init-CigestoM.js → init-B3-1ghyx.js} +2 -2
  134. package/dist/init-B8U3ABhS.cjs +107 -0
  135. package/dist/init-BJn-8_hf.js +141 -0
  136. package/dist/init-BPU3j8sT.cjs +6 -0
  137. package/dist/init-BRzH6xu-2.cjs +2797 -0
  138. package/dist/init-BmzfDaKL.js +1142 -0
  139. package/dist/{init-C-jErzp5.cjs → init-BopV9ed4.cjs} +2 -2
  140. package/dist/init-BpHTq2R5.js +105 -0
  141. package/dist/init-BpSITBfF.js +39 -0
  142. package/dist/{init-DX4WyB0R.cjs → init-BrdVzxei.cjs} +3 -3
  143. package/dist/{init-LfyMo-sS.cjs → init-BwkU0ruo.cjs} +2 -2
  144. package/dist/{init-CB__aLD7.cjs → init-C-G32J12.cjs} +2 -2
  145. package/dist/init-C00gw1zi.js +422 -0
  146. package/dist/{init-TkPq_Ny_.js → init-C2RgrfZe.js} +1 -1
  147. package/dist/init-C5mYyFTv.js +3584 -0
  148. package/dist/{init-DcYY6zMD.js → init-C8URA2OX.js} +1 -1
  149. package/dist/init-CDkRynJa.js +2796 -0
  150. package/dist/{init-Cg9XdAru.js → init-CNM5m7M2.js} +4 -4
  151. package/dist/init-CR7BfztQ.cjs +18 -0
  152. package/dist/{init-CSHwHnfg.cjs → init-CSDpdu0Q.cjs} +2 -2
  153. package/dist/{init-aJHl-7AO.js → init-CX0AMQUn.js} +2 -2
  154. package/dist/{init-FMGDET-9.js → init-CfTbSEKy.js} +259 -60
  155. package/dist/{init-CR6tpw1B.js → init-Cigr_tKx.js} +47 -43
  156. package/dist/init-Clu8pxwQ.cjs +1181 -0
  157. package/dist/{init-CFYsq82V.js → init-CyAY4Lzl.js} +1 -1
  158. package/dist/{init-BKhH6mVR.cjs → init-D6BxBs7e.cjs} +1 -1
  159. package/dist/init-D8OeObDF.cjs +1141 -0
  160. package/dist/init-D9g1HXYf.cjs +40 -0
  161. package/dist/{init-CNLGJJRx.js → init-DA7zmptx.js} +1 -1
  162. package/dist/{init-DkIc5nqF.cjs → init-DFMiP2ZH.cjs} +1 -1
  163. package/dist/{init-zSzCjoor.js → init-DFjT8YvT.js} +4 -4
  164. package/dist/init-DGjXwWs2.cjs +143 -0
  165. package/dist/init-DHrCbpkW.cjs +121 -0
  166. package/dist/init-DRzJR02G.cjs +3585 -0
  167. package/dist/{init-B64zCLxG.cjs → init-DUF4ar8P.cjs} +4 -4
  168. package/dist/init-DlqJuHhl.js +119 -0
  169. package/dist/{init-y2Ra0vZP.js → init-Dnsv155v.js} +3 -3
  170. package/dist/init-DuYENxci.js +17 -0
  171. package/dist/{init-D6DBUsD3.cjs → init-Dv3zKj0r.cjs} +4 -4
  172. package/dist/{init-BtzMZ7Pk.cjs → init-Dy-05ktr.cjs} +1 -1
  173. package/dist/{init-BsCBAGWf.cjs → init-EP0CUWNK.cjs} +2 -2
  174. package/dist/{init-BJVU54pI.cjs → init-EhzD7a8i.cjs} +1 -1
  175. package/dist/{init-w9GEs73W.js → init-Fw89ZmrR.js} +2 -2
  176. package/dist/init-GsT2AEa4.cjs +424 -0
  177. package/dist/{init-Rxohwpmu.js → init-NCjgwCZy.js} +2 -2
  178. package/dist/{init-DxUHsN53.cjs → init-NdhG_VrF.cjs} +6 -6
  179. package/dist/{init-DDdhguVC.js → init-SZ01tARX2.js} +2 -2
  180. package/dist/{init-BAJJzBza.js → init-Y3mkB4XS.js} +2 -2
  181. package/dist/init-c4l6r-o-.js +5 -0
  182. package/dist/{init-Dku4b2lG.js → init-kEfUTuG2.js} +1 -1
  183. package/dist/{init-C7IeJwQR.cjs → init-lzHt4Cli.cjs} +256 -59
  184. package/dist/init-qSEd_Spq.js +1182 -0
  185. package/dist/{init-anYu6XB7.cjs → init-rmt7-fQE.cjs} +2 -2
  186. package/dist/{init-C4Bkib9u.cjs → init-zU-_9Gsp.cjs} +67 -65
  187. package/dist/{is-retriable-error-BU0e3hVI.js → is-retriable-error-BUiVJDwH.js} +1 -1
  188. package/dist/{is-retriable-error-CeeuHqDa.cjs → is-retriable-error-Dpt860if.cjs} +1 -1
  189. package/dist/jubjub-authoriser-D7zDXu3V.js +86 -0
  190. package/dist/jubjub-authoriser-Dgu6o3Sv.cjs +87 -0
  191. package/dist/key-source-5oUBFiC7.cjs +583 -0
  192. package/dist/key-source-B08HukZg.js +2550 -0
  193. package/dist/keyDerivation-D3k9XyHg.js +4077 -0
  194. package/dist/keyDerivation-u0nBA93T.cjs +274 -0
  195. package/dist/{lace-context-CZcNHr4M.js → lace-context-BZciB9c7.js} +4 -4
  196. package/dist/{lace-context-fJTDghdp.cjs → lace-context-DgR6vLli.cjs} +4 -4
  197. package/dist/lib--iqvW4O_.js +2354 -0
  198. package/dist/lib-Yk6Upl5D.cjs +2359 -0
  199. package/dist/{libsodium-wrappers-UH0LaOUE.js → libsodium-wrappers-BhbOA8dQ.js} +3 -1647
  200. package/dist/midnight-account-id.vo-0x9X-r3l.cjs +10 -0
  201. package/dist/midnight-account-id.vo-DjCAGcqc.js +5 -0
  202. package/dist/midnight-engine-DpemplKO.js +5 -0
  203. package/dist/midnight-engine-xU1wotne.cjs +6 -0
  204. package/dist/midnight-wallet-DIsAlSn6.js +18 -0
  205. package/dist/midnight-wallet-XTZc2li7.cjs +24 -0
  206. package/dist/midnight.cjs +1408 -0
  207. package/dist/midnight.d.ts +28934 -0
  208. package/dist/midnight.js +1352 -0
  209. package/dist/modules-cardano-D9Gs2j60.cjs +1108 -0
  210. package/dist/modules-cardano-VIM8fKu-.js +995 -0
  211. package/dist/node-relay-DWe1U0w2.cjs +49 -0
  212. package/dist/node-relay-h4i5IlAQ.js +48 -0
  213. package/dist/outputs-Bd2yZVjx.js +720 -0
  214. package/dist/outputs-CJoQBIA2.cjs +990 -0
  215. package/dist/pbkdf2-CIW-oWrm.cjs +1337 -0
  216. package/dist/pending-operation-B0_P78Jo.cjs +26 -0
  217. package/dist/pending-operation-BIS6mpjB.js +21 -0
  218. package/dist/providers-FjhM47BH.cjs +388 -0
  219. package/dist/providers-WtiSuxFu.js +365 -0
  220. package/dist/redacted-BmE2aXqr.js +81 -0
  221. package/dist/redacted-CRZJLS3w.cjs +86 -0
  222. package/dist/{retry-config-DC5IMaH7.cjs → retry-config-BaCfVC1H.cjs} +1 -1
  223. package/dist/{retry-config-BcUmMS--.js → retry-config-Dmgt28wM.js} +1 -1
  224. package/dist/safe-buffer-B_vMqJWU.js +43 -0
  225. package/dist/safe-buffer-DYOwEfHB.cjs +48 -0
  226. package/dist/sdk-Cb-gZnS9.js +1241 -0
  227. package/dist/sdk-DffwmX8b.cjs +1439 -0
  228. package/dist/sdk-init-Bln9rFtn.js +4138 -0
  229. package/dist/sdk-init-CYViTJY_.cjs +3841 -0
  230. package/dist/{seam-cardano-CATqBEyK.js → seam-cardano-B_etH4F4.js} +1 -1
  231. package/dist/{bytes.vo-TgiwogWF.js → secret-box-DUR0ACYz.js} +3 -25
  232. package/dist/{bytes.vo-Ck5u40RA.cjs → secret-box-DrjLZuS1.cjs} +1 -35
  233. package/dist/send-proof-progress-C-ljq1x5.js +30 -0
  234. package/dist/send-proof-progress-vmsaSfbz.cjs +47 -0
  235. package/dist/side-effects-BnqYz7Nl.js +768 -0
  236. package/dist/side-effects-CngaeXi0.cjs +804 -0
  237. package/dist/sign-bitcoin-transaction-with-seed-D4z62-jV.js +147 -0
  238. package/dist/sign-bitcoin-transaction-with-seed-DsLYXnCY.cjs +158 -0
  239. package/dist/signer-3fk8lZtE.cjs +7 -0
  240. package/dist/signer-CsL28DrK.cjs +121 -0
  241. package/dist/signer-DGluibtn.js +92 -0
  242. package/dist/signer-RqB5pu3K.js +2 -0
  243. package/dist/signer-factory-BA7WFJVZ.js +282 -0
  244. package/dist/signer-factory-Cwd6o-lG.cjs +281 -0
  245. package/dist/{signer-factory-9URFliA5.js → signer-factory-DObB55D4.js} +6 -3
  246. package/dist/signer-factory-DhZiE03y.cjs +149 -0
  247. package/dist/{signer-factory-BWGUmnvm.cjs → signer-factory-Ds6G2AZk.cjs} +4 -3
  248. package/dist/signer-factory-hzSRaIw2.js +148 -0
  249. package/dist/{slice-CuHUaPZx.cjs → slice-7G2xxYKJ.cjs} +3 -3
  250. package/dist/{slice-DZmQJNV8.cjs → slice-B4CdYoPu.cjs} +2 -2
  251. package/dist/slice-BPNuHKfw.js +9091 -0
  252. package/dist/{slice-DGcNrbPR.cjs → slice-Bg6HEr3K.cjs} +4 -4
  253. package/dist/{slice-DtaO72qY.cjs → slice-Bs2aMERu.cjs} +3 -3
  254. package/dist/{slice-HeHCv3bl.cjs → slice-C34iOOUH.cjs} +7 -7
  255. package/dist/{slice-Do2R2CYW.cjs → slice-C9TT5KhY.cjs} +6 -6
  256. package/dist/{slice-eIwcwKHI.js → slice-CK07EBCo.js} +4 -4
  257. package/dist/{slice-CnyWevM9.js → slice-CU80pbiu.js} +3 -3
  258. package/dist/{slice-CobanYgn.js → slice-CwyYrh1H.js} +2 -2
  259. package/dist/slice-Czfp6t84.cjs +436 -0
  260. package/dist/{slice-d0p6-xj5.js → slice-D-9aPKG-.js} +6 -6
  261. package/dist/{slice-maaskdUn.js → slice-DBpJ2QGf.js} +6 -6
  262. package/dist/{slice-mxLQ_FeY.cjs → slice-DTZTiJle.cjs} +352 -39
  263. package/dist/{slice-zJ9XVYjZ.js → slice-Da426sf9.js} +1 -1
  264. package/dist/{slice-D11m2EKl.cjs → slice-DayJvMRD.cjs} +1 -1
  265. package/dist/slice-DnBWfA-k.cjs +9109 -0
  266. package/dist/{slice-oqm_r1cS.cjs → slice-DnG-yvpI.cjs} +2 -2
  267. package/dist/{slice-BNu73oBa.js → slice-DyNs7oWp.js} +2 -2
  268. package/dist/{slice-CB4SnzMm.js → slice-GwiiJRoq.js} +3 -3
  269. package/dist/slice-oWnc7YVD.js +412 -0
  270. package/dist/{slice-B2PhoWAg.js → slice-qt0uBExh.js} +325 -37
  271. package/dist/slice-t8Gzj55G2.cjs +106 -0
  272. package/dist/slice-t8Q1cHm-.js +88 -0
  273. package/dist/src-BDzYIksE.cjs +20637 -0
  274. package/dist/src-BFoefPv_.js +20755 -0
  275. package/dist/store-B1Lq3cEf.cjs +66 -0
  276. package/dist/store-DuBG8qh5.js +37 -0
  277. package/dist/submit-Bs77dPn_.cjs +413 -0
  278. package/dist/submit-DOv8Z0Vf.js +336 -0
  279. package/dist/submit-bitcoin-tx-D6oYgH5S.js +983 -0
  280. package/dist/submit-bitcoin-tx-goFuRL7K.cjs +1049 -0
  281. package/dist/{sync-operation-utils-BYXLO80m.js → sync-operation-utils-31iFLExW.js} +2 -38
  282. package/dist/{sync-operation-utils-SdPbwFoD.cjs → sync-operation-utils-COIZ66-I.cjs} +1 -67
  283. package/dist/token-id-mapper-Bnds3xKH.cjs +18 -0
  284. package/dist/{token-id-mapper-DsPAL6Nh.cjs → token-id-mapper-CVyQJUKY.cjs} +2 -2
  285. package/dist/token-id-mapper-CnKHQ8DV.js +16 -0
  286. package/dist/{token-id-mapper-B2ivlLv3.js → token-id-mapper-D29Ggv8h.js} +2 -2
  287. package/dist/tokens-Cevp7rdU.cjs +62 -0
  288. package/dist/tokens-Diw4MLRM.js +44 -0
  289. package/dist/types-B8uiJn-X.js +12 -0
  290. package/dist/types-BHC12eSa.js +33 -0
  291. package/dist/types-CJT6XF2c.js +10 -0
  292. package/dist/types-CLRUYpfe.cjs +23 -0
  293. package/dist/types-Cc3mC8u0.cjs +50 -0
  294. package/dist/types-DWbVZpnF.cjs +15 -0
  295. package/dist/unwrap-provider-result-BZSiwabU.js +32 -0
  296. package/dist/unwrap-provider-result-ZqfBsTkk.cjs +39 -0
  297. package/dist/{util-CGzqQ8IV.cjs → util-Bu4W5lF4.cjs} +1 -1
  298. package/dist/{util-BaLzwa32.js → util-Cp5cZkfK.js} +1 -1
  299. package/dist/{utils-o8aMjfln.js → utils-BfBEUvWA.js} +2 -2
  300. package/dist/utils-DFwzEvbv.js +65 -0
  301. package/dist/{utils-5JvjbqH3.cjs → utils-DsElZgCI.cjs} +7 -1
  302. package/dist/utils-IXxR-Djh.cjs +112 -0
  303. package/dist/v8Signatures-CO_Uloy7.cjs +71 -0
  304. package/dist/{vote-delegation-tx-builder-CmKv6GoG.js → vote-delegation-tx-builder-BsBSDmcX.js} +5 -5
  305. package/dist/{vote-delegation-tx-builder-BpEMSti4.cjs → vote-delegation-tx-builder-DSs8nybk.cjs} +6 -6
  306. package/dist/watch-CUEvcP-V.js +21997 -0
  307. package/dist/watch-DMF2s-II.cjs +52281 -0
  308. package/package.json +96 -4
  309. package/dist/account-guards.stable-B1DSSh9D.cjs +0 -10
  310. package/dist/account-guards.stable-JRQ5qx2V.js +0 -5
  311. package/dist/codecs-B7X9pAsK.cjs +0 -1945
  312. package/dist/codecs-CC1Xjntz.js +0 -1882
  313. package/dist/init-Bv53hpLM.js +0 -19
  314. package/dist/init-CRbjI7p1.js +0 -3494
  315. package/dist/init-DAna1KCg.cjs +0 -3495
  316. package/dist/init-DGe47B22.cjs +0 -364
  317. package/dist/init-DMtyvYfC.cjs +0 -21
  318. package/dist/init-TkPDD750.js +0 -363
  319. package/dist/modules-cardano-BDvuL4Xx.js +0 -5248
  320. package/dist/modules-cardano-D2G3De2P.cjs +0 -5432
  321. package/dist/slice-CGVHXHDt.cjs +0 -125
  322. package/dist/slice-DhvF7L6X.js +0 -107
  323. /package/dist/{account-id.vo-LvCBVn5r.cjs → account-id.vo-DwqFjK5u.cjs} +0 -0
  324. /package/dist/{account-id.vo-MYSI7YFm.js → account-id.vo-OPz2v-JZ.js} +0 -0
  325. /package/dist/{actions-DdGbj7c7.cjs → actions-B2BJ4RTy.cjs} +0 -0
  326. /package/dist/{actions-9QSQR-GB.js → actions-iLXdgL5Y.js} +0 -0
  327. /package/dist/{apply-vkey-witnesses-ClZbpk5w.js → apply-vkey-witnesses-BKx3lcs0.js} +0 -0
  328. /package/dist/{apply-vkey-witnesses-CLzVSWxl.cjs → apply-vkey-witnesses-ZnFS0jnJ.cjs} +0 -0
  329. /package/dist/{asyncoption-Cw07zPH7.js → asyncoption-CruEYOBI.js} +0 -0
  330. /package/dist/{asyncoption-DYoGuQfP.cjs → asyncoption-i0VbqVTq.cjs} +0 -0
  331. /package/dist/{bignum.vo-B0rK_PQ1.js → bignum.vo-CEXOIew0.js} +0 -0
  332. /package/dist/{bignum.vo-DsG3kNiZ.cjs → bignum.vo-hx2kuqlA.cjs} +0 -0
  333. /package/dist/{bip32ed25519-1ApqeAZk.cjs → bip32ed25519-B7Yat217.cjs} +0 -0
  334. /package/dist/{bip32ed25519-DetAdGwD.js → bip32ed25519-FQ8qvdcq.js} +0 -0
  335. /package/dist/{blake2b-DOEVc57D.js → blake2b-BiQTw3GC.js} +0 -0
  336. /package/dist/{blake2b-B9tftbvG.cjs → blake2b-DEeVUdKR.cjs} +0 -0
  337. /package/dist/{blockchain-network-id.vo-BXpZhvvQ.cjs → blockchain-network-id.vo-BAKEwGjG.cjs} +0 -0
  338. /package/dist/{blockchain-network-id.vo-DNRkuT5B.js → blockchain-network-id.vo-CiVykuqG.js} +0 -0
  339. /package/dist/{blockingWithLatestFrom-C5wp_uA-.js → blockingWithLatestFrom-Cd8c8EPG.js} +0 -0
  340. /package/dist/{blockingWithLatestFrom-DY8OPg0w.cjs → blockingWithLatestFrom-D8kBPBMX.cjs} +0 -0
  341. /package/dist/{cardano-network-id-to-network-type-CrZfUcyP.js → cardano-network-id-to-network-type-BWwzeEtM.js} +0 -0
  342. /package/dist/{cardano-network-id-to-network-type-BDTF-HmK.cjs → cardano-network-id-to-network-type-C0ufJOyE.cjs} +0 -0
  343. /package/dist/{cardano-tx-id.vo-BPhV-AmZ.cjs → cardano-tx-id.vo-TLjJZHCI.cjs} +0 -0
  344. /package/dist/{cardano-tx-id.vo-DF9NzZXk.js → cardano-tx-id.vo-eVnKuzlm.js} +0 -0
  345. /package/dist/{composite-signer-factory-_46QsNBz.js → composite-signer-factory-CR8YHA1y.js} +0 -0
  346. /package/dist/{composite-signer-factory-BpF1mIYA.cjs → composite-signer-factory-m5cVs9h_.cjs} +0 -0
  347. /package/dist/{error-CNIquqT5.cjs → error-Cb3EnD0u.cjs} +0 -0
  348. /package/dist/{error-BCp9NkPi.js → error-DIZOY2Lw.js} +0 -0
  349. /package/dist/{esm-browser-C93Q-EOI.js → esm-browser-MG97cre9.js} +0 -0
  350. /package/dist/{esm-browser-DTc9IK3D.cjs → esm-browser-bweqfBlL.cjs} +0 -0
  351. /package/dist/{feature-flag-key.vo-ofrB6ZVQ.js → feature-flag-key.vo-DN_-4-sG.js} +0 -0
  352. /package/dist/{feature-flag-key.vo-BPz-ZAp6.cjs → feature-flag-key.vo-RlfHL3hq.cjs} +0 -0
  353. /package/dist/{first-state-of-status-OROkXcRv.cjs → first-state-of-status-CbT7hPa4.cjs} +0 -0
  354. /package/dist/{first-state-of-status-DQnMT3ya.js → first-state-of-status-unPynOuM.js} +0 -0
  355. /package/dist/{init-Es3wHW7D.js → init-829HRYcz.js} +0 -0
  356. /package/dist/{init-CKipPE_c.js → init-A-VyGSNW2.js} +0 -0
  357. /package/dist/{init-DFQQ9dTW.cjs → init-Atisw4x2.cjs} +0 -0
  358. /package/dist/{init-C5CEZ1m0.cjs → init-BFcvPHL-.cjs} +0 -0
  359. /package/dist/{init-IAk_CkGa.cjs → init-BgNobbNq.cjs} +0 -0
  360. /package/dist/{init-cqN3uX2j.js → init-atCFur0v.js} +0 -0
  361. /package/dist/{is-redux-persist-state-CTn3WZVh.cjs → is-redux-persist-state-BCFnSm36.cjs} +0 -0
  362. /package/dist/{is-redux-persist-state-Cxcd0_bM.js → is-redux-persist-state-yBfq0h_E.js} +0 -0
  363. /package/dist/{key-value-store-8cMzeNyG.js → key-value-store--W3SrMaw.js} +0 -0
  364. /package/dist/{key-value-store-DUAepXQf.cjs → key-value-store-C2Xt5Emp.cjs} +0 -0
  365. /package/dist/{repo-slice-WxetRhMY.cjs → repo-slice-7X4AYYVm.cjs} +0 -0
  366. /package/dist/{repo-slice-DwyMhCR1.js → repo-slice-RxFm0zDZ.js} +0 -0
  367. /package/dist/{reselect-CRDqmQY9.cjs → reselect-Bd94u0K-.cjs} +0 -0
  368. /package/dist/{reselect-C06X06oX.js → reselect-CGoLzEPv.js} +0 -0
  369. /package/dist/{serializable-B8GahgE1.js → serializable-BHdKIgk3.js} +0 -0
  370. /package/dist/{serializable-CRdnFaLZ.cjs → serializable-BxHkoPdk.cjs} +0 -0
  371. /package/dist/{slice-D11FHQuQ.cjs → slice-BiRsDKOK.cjs} +0 -0
  372. /package/dist/{slice-Be7hj4Iy.js → slice-Bk0Sv05J.js} +0 -0
  373. /package/dist/{slice-FioKeHtA.cjs → slice-Dqw1ecum.cjs} +0 -0
  374. /package/dist/{slice-B87b52iM.js → slice-obCSLm1x.js} +0 -0
  375. /package/dist/{src-vq1wS9sZ.js → src-BlxEp6Mm.js} +0 -0
  376. /package/dist/{src-BTPIvlDI.cjs → src-Cqp0B2M_.cjs} +0 -0
  377. /package/dist/{time.vo-CQ8pSXz2.cjs → time.vo-D3wWRw9L.cjs} +0 -0
  378. /package/dist/{time.vo-DkYYGYp6.js → time.vo-tNheinXm.js} +0 -0
  379. /package/dist/{toEmpty-CgAl3097.js → toEmpty-8Zax1MPd.js} +0 -0
  380. /package/dist/{toEmpty-DAMmNB5r.cjs → toEmpty-CYAbupM4.cjs} +0 -0
  381. /package/dist/{token-id.vo-ClsroxHO.js → token-id.vo-Bvwhr3ZE.js} +0 -0
  382. /package/dist/{token-id.vo-BxG9TG0O.cjs → token-id.vo-DXv5uS9n.cjs} +0 -0
  383. /package/dist/{util-DxzlYNS5.js → util-C8a4fA9p.js} +0 -0
  384. /package/dist/{util-CmdAhheh.cjs → util-CzeB3hfa.cjs} +0 -0
  385. /package/dist/{util-selector-CcK-GAdE.js → util-selector-BSTsxgne.js} +0 -0
  386. /package/dist/{util-selector-BcAncU4L.cjs → util-selector-BWPH68_l.cjs} +0 -0
  387. /package/dist/{while-active-BpppWuCs.js → while-active-B0lWy_6l.js} +0 -0
  388. /package/dist/{while-active-Dhc2LwOm.cjs → while-active-Dsowp0Fi.cjs} +0 -0
@@ -1,8 +1,8 @@
1
1
  require("./rolldown-runtime-Br2OG8yv.cjs");
2
- const require_is_redux_persist_state = require("./is-redux-persist-state-CTn3WZVh.cjs");
3
- const require_account_id_vo = require("./account-id.vo-LvCBVn5r.cjs");
4
- const require_activity_type_stable = require("./activity-type.stable-BJEfeLxL.cjs");
5
- const require_slice = require("./slice-HeHCv3bl.cjs");
2
+ const require_is_redux_persist_state = require("./is-redux-persist-state-BCFnSm36.cjs");
3
+ const require_account_id_vo = require("./account-id.vo-DwqFjK5u.cjs");
4
+ const require_activity_type = require("./activity-type-Ch6ljxBy.cjs");
5
+ const require_slice = require("./slice-C34iOOUH.cjs");
6
6
  let redux_persist = require("redux-persist");
7
7
  //#region ../../packages/contract/activities/src/store/migrations/reset-reward-activity-dates.ts
8
8
  /**
@@ -27,7 +27,7 @@ const resetRewardActivities = (state) => {
27
27
  const list = activitiesMap[key];
28
28
  if (!Array.isArray(list)) continue;
29
29
  desiredLoadedActivitiesCountPerAccount[accountId] = list.length;
30
- activitiesMap[key] = list.filter((activity) => activity.type !== require_activity_type_stable.ActivityType.Rewards);
30
+ activitiesMap[key] = list.filter((activity) => activity.type !== require_activity_type.ActivityType.Rewards);
31
31
  }
32
32
  return {
33
33
  ...typedState,
@@ -47,7 +47,7 @@ const rewardEpochDisplay = (state) => {
47
47
  const activitiesMap = typedState.activities ?? {};
48
48
  for (const list of Object.values(activitiesMap)) {
49
49
  if (!Array.isArray(list)) continue;
50
- for (const activity of list) if (activity.type === require_activity_type_stable.ActivityType.Rewards && activity.blockchainSpecific && typeof activity.blockchainSpecific.epoch === "number") {
50
+ for (const activity of list) if (activity.type === require_activity_type.ActivityType.Rewards && activity.blockchainSpecific && typeof activity.blockchainSpecific.epoch === "number") {
51
51
  const meta = activity.blockchainSpecific;
52
52
  meta.epoch = meta.epoch + REWARD_EPOCH_DISPLAY_OFFSET;
53
53
  }
@@ -1,5 +1,5 @@
1
- import { n as CollectionStore, r as DocumentStore, t as KeyValueStore } from "./key-value-store-8cMzeNyG.js";
2
- import { t as Serializable } from "./serializable-B8GahgE1.js";
1
+ import { n as CollectionStore, r as DocumentStore, t as KeyValueStore } from "./key-value-store--W3SrMaw.js";
2
+ import { t as Serializable } from "./serializable-BHdKIgk3.js";
3
3
  //#region ../../packages/module/storage-web-indexeddb/src/storage-api-adapter.ts
4
4
  const DB_NAME = "lace-storage";
5
5
  const OBJECT_STORE_NAME = "key-value";
@@ -1,5 +1,5 @@
1
- import { t as BlockchainNetworkId } from "./blockchain-network-id.vo-DNRkuT5B.js";
2
- import { n as addressBookReducers } from "./slice-B87b52iM.js";
1
+ import { t as BlockchainNetworkId } from "./blockchain-network-id.vo-CiVykuqG.js";
2
+ import { n as addressBookReducers } from "./slice-obCSLm1x.js";
3
3
  import { createMigrate } from "redux-persist";
4
4
  //#region ../../packages/contract/address-book/src/store/init.ts
5
5
  const store = () => ({
@@ -0,0 +1,5 @@
1
+ import { n as passportReducers } from "./slice-t8Q1cHm-.js";
2
+ //#region ../../packages/contract/passport/src/store/init.ts
3
+ const store = () => ({ reducers: passportReducers });
4
+ //#endregion
5
+ export { store as default };
@@ -1,4 +1,4 @@
1
- import { n as viewsReducers } from "./slice-DhvF7L6X.js";
1
+ import { n as viewsReducers } from "./slice-BPNuHKfw.js";
2
2
  import { map } from "rxjs";
3
3
  import { createMigrate } from "redux-persist";
4
4
  //#region ../../packages/contract/views/src/store/side-effects.ts
@@ -1,14 +1,19 @@
1
1
  require("./rolldown-runtime-Br2OG8yv.cjs");
2
- const require_util = require("./util-CGzqQ8IV.cjs");
3
- const require_time_vo = require("./time.vo-CQ8pSXz2.cjs");
4
- const require_asyncoption = require("./asyncoption-DYoGuQfP.cjs");
5
- const require_sync_operation_utils = require("./sync-operation-utils-SdPbwFoD.cjs");
6
- const require_group_cardano_addresses_by_account = require("./group-cardano-addresses-by-account-B533oVXR.cjs");
7
- const require_toEmpty = require("./toEmpty-DAMmNB5r.cjs");
8
- const require_retry_config = require("./retry-config-DC5IMaH7.cjs");
9
- const require_cardano_network_id_vo = require("./cardano-network-id.vo-DSxrFk9S.cjs");
10
- const require_cardano_tx_id_vo = require("./cardano-tx-id.vo-BPhV-AmZ.cjs");
11
- const require_while_active = require("./while-active-Dhc2LwOm.cjs");
2
+ const require_util = require("./util-Bu4W5lF4.cjs");
3
+ const require_time_vo = require("./time.vo-D3wWRw9L.cjs");
4
+ const require_asyncoption = require("./asyncoption-i0VbqVTq.cjs");
5
+ const require_auto_dismiss_failure_on_success = require("./auto-dismiss-failure-on-success-C-qoJuid.cjs");
6
+ const require_account_id_vo = require("./account-id.vo-DwqFjK5u.cjs");
7
+ const require_toEmpty = require("./toEmpty-CYAbupM4.cjs");
8
+ const require_retry_config = require("./retry-config-BaCfVC1H.cjs");
9
+ const require_sync_operation_utils = require("./sync-operation-utils-COIZ66-I.cjs");
10
+ const require_cardano_network_id_vo = require("./cardano-network-id.vo-BEDPn6Li.cjs");
11
+ const require_cardano_tx_id_vo = require("./cardano-tx-id.vo-TLjJZHCI.cjs");
12
+ const require_group_cardano_addresses_by_account = require("./group-cardano-addresses-by-account-Bp0g4wEY.cjs");
13
+ const require_account = require("./account-BUOj4pYJ.cjs");
14
+ const require_identity = require("./identity-BMLuufva.cjs");
15
+ const require_while_active = require("./while-active-Dsowp0Fi.cjs");
16
+ const require_pending_operation = require("./pending-operation-B0_P78Jo.cjs");
12
17
  let _laceio_cardano_key_management = require("@laceio/cardano/key-management");
13
18
  let _laceio_cardano_core = require("@laceio/cardano/core");
14
19
  let rxjs = require("rxjs");
@@ -172,48 +177,8 @@ const filterFrankenUtxos = (utxos, ownedCredentials) => {
172
177
  };
173
178
  };
174
179
  //#endregion
175
- //#region ../../packages/module/cardano-sync/src/store/side-effects/account-extensions.stable.ts
176
- /** Whether the account is of a kind a feature adds: never. */
177
- const isExtensionAccount = (_account) => false;
178
- /** Address discovery for an account of a kind a feature adds: none exists. */
179
- const extensionAccountAddressDiscovery = (_params) => rxjs.EMPTY;
180
- /** The UTxO fetch of an account of a kind a feature adds: none exists. */
181
- const extensionAccountUtxos = (_params) => rxjs.EMPTY;
182
- /** The sync side effects the features add: none. */
183
- const extensionSyncSideEffects = [];
184
- //#endregion
185
- //#region ../../packages/module/cardano-sync/src/store/get-script-address.ts
186
- var import_dist = require_retry_config.require_dist();
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 = (0, _laceio_cardano_core.nativeScriptPolicyId)(paymentScript);
197
- const stakingScriptHash = (0, _laceio_cardano_core.nativeScriptPolicyId)(stakingScript);
198
- const paymentScriptCredential = {
199
- hash: paymentScriptHash,
200
- type: _laceio_cardano_core.Cardano.CredentialType.ScriptHash
201
- };
202
- const stakeScriptCredential = {
203
- hash: stakingScriptHash,
204
- type: _laceio_cardano_core.Cardano.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: _laceio_cardano_key_management.AddressType.External
213
- };
214
- };
215
- //#endregion
216
180
  //#region ../../packages/module/cardano-sync/src/store/side-effects/chain-account-state-operations.ts
181
+ var import_dist = require_retry_config.require_dist();
217
182
  /**
218
183
  * Builds the `addSyncOperation` actions that chain account-state operations
219
184
  * (currently transaction-polling) after a successful address discovery. The
@@ -256,6 +221,245 @@ const chainAccountStateOperations = (params) => {
256
221
  }));
257
222
  };
258
223
  //#endregion
224
+ //#region ../../packages/module/cardano-sync/src/store/side-effects/throw-on-error.ts
225
+ /** The value of a provider result, or its error thrown. */
226
+ const throwOnError = (result) => {
227
+ if (result.isErr()) throw result.unwrapErr();
228
+ return result.unwrap();
229
+ };
230
+ //#endregion
231
+ //#region ../../packages/module/cardano-sync/src/store/side-effects/custody-accounts.ts
232
+ /**
233
+ * Discovers the one address of a Cardano custody account: its base address,
234
+ * re-derived from the stored identity. The sync fails when the stored
235
+ * address, reward account or stake script hash differs from the derived one,
236
+ * so funds are never shown at an address the custody contract does not
237
+ * govern for this account.
238
+ *
239
+ * The entry carries the `type`, `index` and `accountIndex` every address
240
+ * entry needs, but no key derives it. It must never reach a signer as a
241
+ * known address: a key agent would sign every custody input with the key at
242
+ * that path. No signer factory accepts a custody account, so signing never
243
+ * reads its addresses.
244
+ */
245
+ const handleCustodyAccount = (params) => {
246
+ const { account, accountId, operationId, actions, logger } = params;
247
+ const { chainId } = account.blockchainSpecific;
248
+ const identity = require_identity.verifyCardanoCustodyAccountIdentity(account.blockchainSpecific);
249
+ if (!identity.ok) {
250
+ logger.error(`Address discovery refused custody account ${accountId}: ${identity.error.code}`, identity.error);
251
+ return (0, rxjs.of)(actions.sync.failSyncOperation({
252
+ accountId,
253
+ operationId,
254
+ error: "sync.error.address-discovery-failed"
255
+ }));
256
+ }
257
+ return (0, rxjs.of)(actions.sync.updateSyncOperation({
258
+ accountId,
259
+ operationId,
260
+ update: {
261
+ status: "InProgress",
262
+ type: "Indeterminate"
263
+ }
264
+ }), actions.addresses.upsertAddresses({
265
+ blockchainName: "Cardano",
266
+ accountId,
267
+ addresses: [require_util.toContractAddress({
268
+ accountIndex: 0,
269
+ address: identity.value.address,
270
+ index: 0,
271
+ networkId: chainId.networkId,
272
+ rewardAccount: identity.value.rewardAccount,
273
+ type: _laceio_cardano_key_management.AddressType.External
274
+ }, chainId.networkMagic)]
275
+ }), ...chainAccountStateOperations({
276
+ accountId,
277
+ discoveryOperationId: operationId,
278
+ actions
279
+ }), actions.sync.completeSyncOperation({
280
+ accountId,
281
+ operationId
282
+ }));
283
+ };
284
+ /**
285
+ * A custody account's UTxOs are not fetched: the account no longer matches
286
+ * the identity its contract derives.
287
+ */
288
+ var CardanoCustodyUtxoSyncRefusedError = class extends Error {
289
+ constructor(accountId, reason) {
290
+ super(`Refused the UTxO sync of custody account ${accountId}: ${reason.code}`);
291
+ this.accountId = accountId;
292
+ this.reason = reason;
293
+ this.name = "CardanoCustodyUtxoSyncRefusedError";
294
+ }
295
+ };
296
+ /**
297
+ * A custody account's UTxOs: exactly those whose full address is the
298
+ * account's base address, the only outputs the custody contract lets the
299
+ * account spend.
300
+ *
301
+ * Discovery verifies the identity only once, when it stores the address
302
+ * entry, so every fetch verifies it again: an identity changed since then,
303
+ * or an entry that no longer matches it, fails the fetch.
304
+ *
305
+ * Fetched by address rather than by stake key. The stake credential also
306
+ * gathers outputs under any other payment credential, which anyone can
307
+ * create at no cost to inflate the fetch, and none of which belong to the
308
+ * account. The key-hash franken filter does not apply: every custody output
309
+ * has the script's payment credential.
310
+ *
311
+ * Reference scripts are read too: classification counts a reserve that
312
+ * carries one as foreign.
313
+ */
314
+ const fetchCustodyAccountUtxos = (params) => {
315
+ const { accountId, blockchainSpecific } = params.account;
316
+ const identity = require_identity.verifyCardanoCustodyAccountIdentity(blockchainSpecific);
317
+ if (!identity.ok) return (0, rxjs.throwError)(() => new CardanoCustodyUtxoSyncRefusedError(accountId, identity.error));
318
+ const { address } = identity.value;
319
+ const strayEntry = params.accountAddresses.find((entry) => entry.address !== require_util.CardanoPaymentAddress(address));
320
+ if (strayEntry) return (0, rxjs.throwError)(() => new CardanoCustodyUtxoSyncRefusedError(accountId, {
321
+ code: "address-entry-mismatch",
322
+ entry: strayEntry.address,
323
+ derived: address
324
+ }));
325
+ return params.getUtxosAtAddress({
326
+ address: require_util.CardanoPaymentAddress(address),
327
+ withReferenceScripts: true
328
+ }, { chainId: blockchainSpecific.chainId }).pipe((0, rxjs.map)(throwOnError), (0, import_dist.retryBackoff)(require_retry_config.PROVIDER_REQUEST_RETRY_CONFIG), (0, rxjs.map)((utxos) => {
329
+ const own = utxos.filter(([, output]) => output.address === address);
330
+ if (own.length < utxos.length) params.logger.warn(`Dropped ${utxos.length - own.length} UTxOs not at the address of custody account ${accountId}`);
331
+ return own;
332
+ }));
333
+ };
334
+ //#endregion
335
+ //#region ../../packages/module/cardano-sync/src/store/side-effects/expire-custody-pending-activities.ts
336
+ /**
337
+ * Advances one account's round record. A round starts when `startedAt`
338
+ * changes and completes when it clears with a newer `lastSuccessfulSync`.
339
+ */
340
+ const advanceRounds = (previous, status, tipSlot) => {
341
+ const roundStartedAt = status.pendingSync?.startedAt;
342
+ const isSameRound = previous !== void 0 && roundStartedAt === previous.roundStartedAt;
343
+ const roundTipSlot = roundStartedAt === void 0 || previous === void 0 ? void 0 : isSameRound ? previous.roundTipSlot : tipSlot;
344
+ const hasCompleted = previous?.roundStartedAt !== void 0 && !isSameRound && status.lastSuccessfulSync !== previous.lastSuccessfulSync;
345
+ return {
346
+ roundStartedAt,
347
+ roundTipSlot,
348
+ lastSuccessfulSync: status.lastSuccessfulSync,
349
+ syncedFromSlot: hasCompleted ? previous.roundTipSlot ?? previous.syncedFromSlot : previous?.syncedFromSlot
350
+ };
351
+ };
352
+ const trackRounds = ({ hasSeenState, accounts }, [tip, statuses]) => ({
353
+ hasSeenState: true,
354
+ accounts: Object.fromEntries(Object.entries(statuses).map(([id, status]) => {
355
+ const accountId = require_account_id_vo.AccountId(id);
356
+ return [accountId, advanceRounds(accounts[accountId] ?? (hasSeenState ? {} : void 0), status, tip?.slot)];
357
+ }))
358
+ });
359
+ /**
360
+ * Whether a custody operation's pending activity can no longer settle: a
361
+ * round that started once the tip was past its upper validity bound, by
362
+ * the depth the wallet allows its provider to lag, synced the account's
363
+ * history, and neither that history nor the synced UTxOs show the
364
+ * transaction.
365
+ */
366
+ const isExpired = (activity, { syncedFromSlot, utxos, history }) => {
367
+ const invalidHereafter = require_pending_operation.cardanoCustodyActivityMetadataOf(activity)?.invalidHereafter;
368
+ if (invalidHereafter === void 0 || syncedFromSlot === void 0) return false;
369
+ if (syncedFromSlot <= invalidHereafter + 60) return false;
370
+ const txId = activity.activityId;
371
+ return !history.some((item) => item.txId === txId) && !utxos.some(([input]) => input.txId === txId);
372
+ };
373
+ const findExpired = ({ rounds, pendingByAccount, utxosByAccount, historyByAccount }) => Object.entries(pendingByAccount).flatMap(([id, pending]) => {
374
+ const accountId = require_account_id_vo.AccountId(id);
375
+ const context = {
376
+ syncedFromSlot: rounds.accounts[accountId]?.syncedFromSlot,
377
+ utxos: utxosByAccount[accountId] ?? [],
378
+ history: historyByAccount[accountId] ?? []
379
+ };
380
+ const activityIds = pending.filter((activity) => isExpired(activity, context)).map(({ activityId }) => activityId);
381
+ return activityIds.length > 0 ? [{
382
+ accountId,
383
+ activityIds
384
+ }] : [];
385
+ });
386
+ /**
387
+ * Drops the pending activity of a custody operation that can no longer
388
+ * settle, so an account does not stay blocked as operation-in-progress when
389
+ * no one waits for the operation (R5.3: state reconciles with the network).
390
+ *
391
+ * A custody submission records its upper validity bound on the pending
392
+ * activity (`blockchainSpecific.Cardano.custody`). Past that bound the
393
+ * transaction can never apply. The chain tip alone does not prove that the
394
+ * wallet saw the outcome: the tip poll updates the tip before the next sync
395
+ * round fetches the history. So the activity is dropped only once a sync
396
+ * round that started with the tip past the bound by
397
+ * `UTXO_SYNC_CONFIRMATION_DEPTH` completed successfully, and neither the
398
+ * account's history nor its synced UTxOs show the transaction. Other
399
+ * pending activities carry no bound and are left alone.
400
+ *
401
+ * It reads state only and makes no provider call. `whileActive` (ADR 29)
402
+ * keeps it off while the wallet is locked. Each activation starts with no
403
+ * completed round, so a round that ran before unlock never counts.
404
+ */
405
+ const expireCustodyPendingActivities = (_, { cardanoContext: { selectTip$, selectAccountUtxos$, selectTransactionHistoryGroupedByAccount$ }, activities: { selectPendingActivitiesByAccount$ }, sync: { selectSyncStatusByAccount$ } }, { actions, isWalletActive$ }) => (0, rxjs.combineLatest)([
406
+ (0, rxjs.combineLatest)([selectTip$, selectSyncStatusByAccount$]).pipe((0, rxjs.scan)(trackRounds, {
407
+ hasSeenState: false,
408
+ accounts: {}
409
+ })),
410
+ selectPendingActivitiesByAccount$,
411
+ selectAccountUtxos$,
412
+ selectTransactionHistoryGroupedByAccount$
413
+ ]).pipe((0, rxjs.map)(([rounds, pendingByAccount, utxosByAccount, historyByAccount]) => findExpired({
414
+ rounds,
415
+ pendingByAccount,
416
+ utxosByAccount,
417
+ historyByAccount
418
+ })), (0, rxjs.mergeMap)((expired) => (0, rxjs.from)(expired.map(({ accountId, activityIds }) => actions.activities.removeActivities({
419
+ accountId,
420
+ activityIds
421
+ })))), require_while_active.whileActive(isWalletActive$));
422
+ //#endregion
423
+ //#region ../../packages/module/cardano-sync/src/store/side-effects/account-extensions.ts
424
+ /** Whether the account is of a kind a feature adds: a custody account. */
425
+ const isExtensionAccount = require_account.isCardanoCustodyAccount;
426
+ /** Address discovery for an account of a kind a feature adds. */
427
+ const extensionAccountAddressDiscovery = handleCustodyAccount;
428
+ /** The UTxO fetch of an account of a kind a feature adds. */
429
+ const extensionAccountUtxos = fetchCustodyAccountUtxos;
430
+ /** The sync side effects the features add. */
431
+ const extensionSyncSideEffects = [expireCustodyPendingActivities];
432
+ //#endregion
433
+ //#region ../../packages/module/cardano-sync/src/store/get-script-address.ts
434
+ /**
435
+ * Method to derive the wallet's grouped address from the script and network ID.
436
+ *
437
+ * @param paymentScript - The native script to be used for the payment credential.
438
+ * @param stakingScript - The native script to be used for the staking credential.
439
+ * @param networkId - The network identifier.
440
+ * @returns The derived grouped address.
441
+ */
442
+ const getScriptAddress = (paymentScript, stakingScript, networkId) => {
443
+ const paymentScriptHash = (0, _laceio_cardano_core.nativeScriptPolicyId)(paymentScript);
444
+ const stakingScriptHash = (0, _laceio_cardano_core.nativeScriptPolicyId)(stakingScript);
445
+ const paymentScriptCredential = {
446
+ hash: paymentScriptHash,
447
+ type: _laceio_cardano_core.Cardano.CredentialType.ScriptHash
448
+ };
449
+ const stakeScriptCredential = {
450
+ hash: stakingScriptHash,
451
+ type: _laceio_cardano_core.Cardano.CredentialType.ScriptHash
452
+ };
453
+ return {
454
+ accountIndex: 0,
455
+ address: encodeBaseAddress(networkId, paymentScriptCredential, stakeScriptCredential),
456
+ index: 0,
457
+ networkId,
458
+ rewardAccount: encodeRewardAddress(networkId, stakeScriptCredential),
459
+ type: _laceio_cardano_key_management.AddressType.External
460
+ };
461
+ };
462
+ //#endregion
259
463
  //#region ../../packages/module/cardano-sync/src/store/side-effects/address-discovery-sync.ts
260
464
  /**
261
465
  * Handles MultiSig account address discovery by generating script address.
@@ -458,13 +662,6 @@ const submitTxSideEffect = ({ cardanoContext: { submitTx$ } }, { cardanoContext:
458
662
  })));
459
663
  }));
460
664
  //#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
665
  //#region ../../packages/module/cardano-sync/src/store/side-effects/track-account-utxos.ts
469
666
  /**
470
667
  * Sentinel `topOnChainActivityId` for the cache key when an account has no
@@ -674,7 +871,7 @@ const trackAccountUtxos = ({ cardanoContext: { retrySyncRound$ } }, { wallets: {
674
871
  accountId,
675
872
  cacheKey
676
873
  })));
677
- emissions.push((0, rxjs.of)(CardanoUtxoFetchFailureId(accountId)).pipe(require_group_cardano_addresses_by_account.autoDismissFailureOnSuccess(selectFailureById$)));
874
+ emissions.push((0, rxjs.of)(CardanoUtxoFetchFailureId(accountId)).pipe(require_auto_dismiss_failure_on_success.autoDismissFailureOnSuccess(selectFailureById$)));
678
875
  return (0, rxjs.merge)(...emissions);
679
876
  }), (0, rxjs.catchError)((error) => {
680
877
  logger.error(`Utxo fetch failed for account ${accountId}`, error);