@layerzerolabs/common-canton 0.2.78 → 0.2.79

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 (437) hide show
  1. package/.turbo/turbo-build.log +2312 -2304
  2. package/.turbo/turbo-test.log +5 -5
  3. package/dist/{6KMLIYCQ.cjs → 24QDBKWB.cjs} +5 -5
  4. package/dist/{6KMLIYCQ.cjs.map → 24QDBKWB.cjs.map} +1 -1
  5. package/dist/{6TZWB4VN.cjs → 2N4DJCWE.cjs} +8 -8
  6. package/dist/{6TZWB4VN.cjs.map → 2N4DJCWE.cjs.map} +1 -1
  7. package/dist/{IVAJXBUF.cjs → 2TIILQ5M.cjs} +5 -5
  8. package/dist/{IVAJXBUF.cjs.map → 2TIILQ5M.cjs.map} +1 -1
  9. package/dist/{ZYYLTWH4.cjs → 2Z2AUUYU.cjs} +5 -5
  10. package/dist/{ZYYLTWH4.cjs.map → 2Z2AUUYU.cjs.map} +1 -1
  11. package/dist/{SZDWJIK3.cjs → 3H2IN76R.cjs} +3 -3
  12. package/dist/{SZDWJIK3.cjs.map → 3H2IN76R.cjs.map} +1 -1
  13. package/dist/{HOGONLCW.cjs → 3HKY5QQH.cjs} +5 -5
  14. package/dist/{HOGONLCW.cjs.map → 3HKY5QQH.cjs.map} +1 -1
  15. package/dist/{CTS7Z4FF.cjs → 3QUCCTPJ.cjs} +3 -3
  16. package/dist/{CTS7Z4FF.cjs.map → 3QUCCTPJ.cjs.map} +1 -1
  17. package/dist/{A7U4VVQK.js → 3TB6JU2S.js} +3 -3
  18. package/dist/{A7U4VVQK.js.map → 3TB6JU2S.js.map} +1 -1
  19. package/dist/{PJQL3VEC.cjs → 4UR42HRD.cjs} +7 -7
  20. package/dist/{PJQL3VEC.cjs.map → 4UR42HRD.cjs.map} +1 -1
  21. package/dist/{SFEYDNKQ.cjs → 5657VDVM.cjs} +5 -5
  22. package/dist/{SFEYDNKQ.cjs.map → 5657VDVM.cjs.map} +1 -1
  23. package/dist/{XINHRIWA.js → 5BIIW37A.js} +3 -3
  24. package/dist/{XINHRIWA.js.map → 5BIIW37A.js.map} +1 -1
  25. package/dist/{EITKKRM7.js → 66C2UKUB.js} +3 -3
  26. package/dist/{EITKKRM7.js.map → 66C2UKUB.js.map} +1 -1
  27. package/dist/{X3MNSHLT.cjs → 66MMOVSG.cjs} +5 -5
  28. package/dist/{X3MNSHLT.cjs.map → 66MMOVSG.cjs.map} +1 -1
  29. package/dist/{JAOK4QCZ.cjs → 66OYULFQ.cjs} +3 -3
  30. package/dist/{JAOK4QCZ.cjs.map → 66OYULFQ.cjs.map} +1 -1
  31. package/dist/{O4W6TGF7.cjs → 677WNQ74.cjs} +5 -5
  32. package/dist/{O4W6TGF7.cjs.map → 677WNQ74.cjs.map} +1 -1
  33. package/dist/{LS6TAA3S.js → 6GU7J47E.js} +3 -3
  34. package/dist/{LS6TAA3S.js.map → 6GU7J47E.js.map} +1 -1
  35. package/dist/{TU5ZAGN2.cjs → 6HI53PQ2.cjs} +3 -3
  36. package/dist/{TU5ZAGN2.cjs.map → 6HI53PQ2.cjs.map} +1 -1
  37. package/dist/{IHOOPR5Q.js → 74GXIV45.js} +4 -4
  38. package/dist/{IHOOPR5Q.js.map → 74GXIV45.js.map} +1 -1
  39. package/dist/{TAI7WDMG.js → 7PHM6HLD.js} +3 -3
  40. package/dist/{TAI7WDMG.js.map → 7PHM6HLD.js.map} +1 -1
  41. package/dist/7YYXOAFZ.cjs +113 -0
  42. package/dist/7YYXOAFZ.cjs.map +1 -0
  43. package/dist/{HCWCELIY.js → A3YRP3CP.js} +3 -3
  44. package/dist/{HCWCELIY.js.map → A3YRP3CP.js.map} +1 -1
  45. package/dist/{MXV42LOL.cjs → A7JK3FRI.cjs} +3 -3
  46. package/dist/{MXV42LOL.cjs.map → A7JK3FRI.cjs.map} +1 -1
  47. package/dist/{7STDATVZ.js → A7VF3ZJF.js} +3 -3
  48. package/dist/{7STDATVZ.js.map → A7VF3ZJF.js.map} +1 -1
  49. package/dist/{HLEDC536.js → AAYMVMGA.js} +4 -4
  50. package/dist/{HLEDC536.js.map → AAYMVMGA.js.map} +1 -1
  51. package/dist/{VNAH76JJ.js → ACTUREBJ.js} +4 -4
  52. package/dist/{VNAH76JJ.js.map → ACTUREBJ.js.map} +1 -1
  53. package/dist/{ZILWPZLS.js → AE56UC5I.js} +3 -3
  54. package/dist/{ZILWPZLS.js.map → AE56UC5I.js.map} +1 -1
  55. package/dist/{SUQRZQJZ.js → AGAXQJWB.js} +4 -4
  56. package/dist/{SUQRZQJZ.js.map → AGAXQJWB.js.map} +1 -1
  57. package/dist/{Q3Z4VR65.cjs → AJQF23OK.cjs} +5 -5
  58. package/dist/{Q3Z4VR65.cjs.map → AJQF23OK.cjs.map} +1 -1
  59. package/dist/{PZ3QM3BU.cjs → ALQMCY4O.cjs} +8 -8
  60. package/dist/{PZ3QM3BU.cjs.map → ALQMCY4O.cjs.map} +1 -1
  61. package/dist/{5KEUIBIW.cjs → AR6XRUYW.cjs} +5 -5
  62. package/dist/{5KEUIBIW.cjs.map → AR6XRUYW.cjs.map} +1 -1
  63. package/dist/{XBJGMPCR.cjs → ARG6XXYP.cjs} +8 -8
  64. package/dist/{XBJGMPCR.cjs.map → ARG6XXYP.cjs.map} +1 -1
  65. package/dist/{4FETDQMZ.cjs → AYHVSTYA.cjs} +5 -5
  66. package/dist/{4FETDQMZ.cjs.map → AYHVSTYA.cjs.map} +1 -1
  67. package/dist/{LVCG6QME.cjs → B2Z6JBIV.cjs} +5 -5
  68. package/dist/{LVCG6QME.cjs.map → B2Z6JBIV.cjs.map} +1 -1
  69. package/dist/{AXXLRBOT.js → BZPOVFBV.js} +3 -3
  70. package/dist/{AXXLRBOT.js.map → BZPOVFBV.js.map} +1 -1
  71. package/dist/{VWP2ORHR.js → C4O6KF4R.js} +4 -4
  72. package/dist/{VWP2ORHR.js.map → C4O6KF4R.js.map} +1 -1
  73. package/dist/{WRPKZZ4E.js → CC2PLAKT.js} +3 -3
  74. package/dist/{WRPKZZ4E.js.map → CC2PLAKT.js.map} +1 -1
  75. package/dist/{KCRFOKIB.js → CJNH6ICZ.js} +3 -3
  76. package/dist/{KCRFOKIB.js.map → CJNH6ICZ.js.map} +1 -1
  77. package/dist/{5RZS7DZN.js → CVQHQLYE.js} +3 -3
  78. package/dist/{5RZS7DZN.js.map → CVQHQLYE.js.map} +1 -1
  79. package/dist/{3HTHR52X.cjs → CXURCZVU.cjs} +5 -5
  80. package/dist/{3HTHR52X.cjs.map → CXURCZVU.cjs.map} +1 -1
  81. package/dist/{5LBZE3FZ.js → CXV5NOWI.js} +3 -3
  82. package/dist/{5LBZE3FZ.js.map → CXV5NOWI.js.map} +1 -1
  83. package/dist/{2NZC3LBF.js → DSOC63CO.js} +3 -3
  84. package/dist/{2NZC3LBF.js.map → DSOC63CO.js.map} +1 -1
  85. package/dist/{5LIJUNKC.cjs → ELOYO2KW.cjs} +3 -3
  86. package/dist/{5LIJUNKC.cjs.map → ELOYO2KW.cjs.map} +1 -1
  87. package/dist/{LVTCQ3ZY.cjs → EMKDHUYH.cjs} +5 -5
  88. package/dist/{LVTCQ3ZY.cjs.map → EMKDHUYH.cjs.map} +1 -1
  89. package/dist/{OR2CV5NU.js → EPHLTMJZ.js} +3 -3
  90. package/dist/{OR2CV5NU.js.map → EPHLTMJZ.js.map} +1 -1
  91. package/dist/{BCRCCYSU.cjs → F5E2M5CX.cjs} +8 -8
  92. package/dist/{BCRCCYSU.cjs.map → F5E2M5CX.cjs.map} +1 -1
  93. package/dist/{C46IODEA.js → FA5HJRNC.js} +3 -3
  94. package/dist/{C46IODEA.js.map → FA5HJRNC.js.map} +1 -1
  95. package/dist/{HGLH54M2.js → FCOOEGLV.js} +3 -3
  96. package/dist/{HGLH54M2.js.map → FCOOEGLV.js.map} +1 -1
  97. package/dist/{GJUTO5QN.cjs → FLUEWBUP.cjs} +5 -5
  98. package/dist/{GJUTO5QN.cjs.map → FLUEWBUP.cjs.map} +1 -1
  99. package/dist/{T5O5EZO2.js → FYF3KCTO.js} +3 -3
  100. package/dist/{T5O5EZO2.js.map → FYF3KCTO.js.map} +1 -1
  101. package/dist/{SCFRP4GE.cjs → FZVS62SX.cjs} +5 -5
  102. package/dist/{SCFRP4GE.cjs.map → FZVS62SX.cjs.map} +1 -1
  103. package/dist/{B42Y5JOK.js → GJFARMTH.js} +39 -39
  104. package/dist/{B42Y5JOK.js.map → GJFARMTH.js.map} +1 -1
  105. package/dist/{PV26A626.cjs → GJGUROW7.cjs} +8 -8
  106. package/dist/{PV26A626.cjs.map → GJGUROW7.cjs.map} +1 -1
  107. package/dist/{VBS2IYYS.js → GN3EMRUZ.js} +3 -3
  108. package/dist/{VBS2IYYS.js.map → GN3EMRUZ.js.map} +1 -1
  109. package/dist/{BG74ZRMU.cjs → GODNLFOJ.cjs} +5 -5
  110. package/dist/{BG74ZRMU.cjs.map → GODNLFOJ.cjs.map} +1 -1
  111. package/dist/{AJEIFNHD.cjs → GYUO6HSP.cjs} +5 -5
  112. package/dist/{AJEIFNHD.cjs.map → GYUO6HSP.cjs.map} +1 -1
  113. package/dist/{MLPZRNZP.js → H5WF7YON.js} +3 -3
  114. package/dist/{MLPZRNZP.js.map → H5WF7YON.js.map} +1 -1
  115. package/dist/{FXR2Z54G.js → HPOEKKSQ.js} +3 -3
  116. package/dist/{FXR2Z54G.js.map → HPOEKKSQ.js.map} +1 -1
  117. package/dist/{Z6LZM4QX.cjs → HQAT4EYD.cjs} +4 -4
  118. package/dist/{Z6LZM4QX.cjs.map → HQAT4EYD.cjs.map} +1 -1
  119. package/dist/{TA7YYBMA.cjs → HQPKOGVK.cjs} +5 -5
  120. package/dist/{TA7YYBMA.cjs.map → HQPKOGVK.cjs.map} +1 -1
  121. package/dist/{4MFKSIYK.js → HU7X7G5L.js} +3 -3
  122. package/dist/{4MFKSIYK.js.map → HU7X7G5L.js.map} +1 -1
  123. package/dist/{SS5SIORB.cjs → HYDFD24I.cjs} +5 -5
  124. package/dist/{SS5SIORB.cjs.map → HYDFD24I.cjs.map} +1 -1
  125. package/dist/{2IV6JGQD.cjs → IMOWTFQ5.cjs} +5 -5
  126. package/dist/{2IV6JGQD.cjs.map → IMOWTFQ5.cjs.map} +1 -1
  127. package/dist/{4RMMHVAW.cjs → INJF5RE5.cjs} +8 -8
  128. package/dist/{4RMMHVAW.cjs.map → INJF5RE5.cjs.map} +1 -1
  129. package/dist/{XFM6ATM3.js → IQJ5FFO2.js} +3 -3
  130. package/dist/{XFM6ATM3.js.map → IQJ5FFO2.js.map} +1 -1
  131. package/dist/{SPMIXP6R.js → JDIEWLND.js} +3 -3
  132. package/dist/{SPMIXP6R.js.map → JDIEWLND.js.map} +1 -1
  133. package/dist/{J26F3LZM.js → K3RKYYAJ.js} +3 -3
  134. package/dist/{J26F3LZM.js.map → K3RKYYAJ.js.map} +1 -1
  135. package/dist/{34I4OGQK.js → KA2OXQFA.js} +3 -3
  136. package/dist/{34I4OGQK.js.map → KA2OXQFA.js.map} +1 -1
  137. package/dist/{HT5EFVYN.js → KN7C2KMD.js} +3 -3
  138. package/dist/{HT5EFVYN.js.map → KN7C2KMD.js.map} +1 -1
  139. package/dist/{JRFMLEIC.js → KS4JT7HC.js} +3 -3
  140. package/dist/{JRFMLEIC.js.map → KS4JT7HC.js.map} +1 -1
  141. package/dist/{I7AKGV6V.js → KWLKJV5Q.js} +5 -5
  142. package/dist/{I7AKGV6V.js.map → KWLKJV5Q.js.map} +1 -1
  143. package/dist/{DT6XTWP5.cjs → LHBONWHX.cjs} +3 -3
  144. package/dist/{DT6XTWP5.cjs.map → LHBONWHX.cjs.map} +1 -1
  145. package/dist/{ZQ2F7HPB.js → LYW3PRU5.js} +3 -3
  146. package/dist/{ZQ2F7HPB.js.map → LYW3PRU5.js.map} +1 -1
  147. package/dist/{5GUS3R4R.js → MANSIJ5E.js} +4 -4
  148. package/dist/{5GUS3R4R.js.map → MANSIJ5E.js.map} +1 -1
  149. package/dist/{NMK4KJVK.js → MOQL7EDE.js} +3 -3
  150. package/dist/{NMK4KJVK.js.map → MOQL7EDE.js.map} +1 -1
  151. package/dist/{LZ46G5W7.cjs → N6CPX6VH.cjs} +5 -5
  152. package/dist/{LZ46G5W7.cjs.map → N6CPX6VH.cjs.map} +1 -1
  153. package/dist/{MWMXGXC3.cjs → NBUXX6CU.cjs} +5 -5
  154. package/dist/{MWMXGXC3.cjs.map → NBUXX6CU.cjs.map} +1 -1
  155. package/dist/{JKQLMXRN.js → NFLUJSFO.js} +3 -3
  156. package/dist/{JKQLMXRN.js.map → NFLUJSFO.js.map} +1 -1
  157. package/dist/{5N747JZQ.js → NKSFRE2D.js} +3 -3
  158. package/dist/{5N747JZQ.js.map → NKSFRE2D.js.map} +1 -1
  159. package/dist/{XVDOCFBP.cjs → NOWYDV5Z.cjs} +3 -3
  160. package/dist/{XVDOCFBP.cjs.map → NOWYDV5Z.cjs.map} +1 -1
  161. package/dist/{5O7CQ3B5.js → NRS4DZPT.js} +3 -3
  162. package/dist/{5O7CQ3B5.js.map → NRS4DZPT.js.map} +1 -1
  163. package/dist/{OU6ZGOI7.js → NVM727ES.js} +3 -3
  164. package/dist/{OU6ZGOI7.js.map → NVM727ES.js.map} +1 -1
  165. package/dist/{UOJYTAJA.js → NZ7JRTF5.js} +3 -3
  166. package/dist/{UOJYTAJA.js.map → NZ7JRTF5.js.map} +1 -1
  167. package/dist/{N3RJ6DYB.cjs → O2UOGCQS.cjs} +5 -5
  168. package/dist/{N3RJ6DYB.cjs.map → O2UOGCQS.cjs.map} +1 -1
  169. package/dist/{S5X72W5R.js → OC2GKSCZ.js} +3 -3
  170. package/dist/{S5X72W5R.js.map → OC2GKSCZ.js.map} +1 -1
  171. package/dist/{PUDVY4TL.cjs → OKG4FE6X.cjs} +7 -7
  172. package/dist/{PUDVY4TL.cjs.map → OKG4FE6X.cjs.map} +1 -1
  173. package/dist/{SC2VKBTT.cjs → OLBJDB7N.cjs} +3 -3
  174. package/dist/{SC2VKBTT.cjs.map → OLBJDB7N.cjs.map} +1 -1
  175. package/dist/{2PMOI5F3.js → OUSDBPTI.js} +3 -3
  176. package/dist/{2PMOI5F3.js.map → OUSDBPTI.js.map} +1 -1
  177. package/dist/{E4MUSDZ3.cjs → OXTXDOUT.cjs} +5 -5
  178. package/dist/{E4MUSDZ3.cjs.map → OXTXDOUT.cjs.map} +1 -1
  179. package/dist/{3LCHNKXE.cjs → P3JEGZHU.cjs} +5 -5
  180. package/dist/{3LCHNKXE.cjs.map → P3JEGZHU.cjs.map} +1 -1
  181. package/dist/{MZMRFQTR.js → PW7NJ3JL.js} +3 -3
  182. package/dist/{MZMRFQTR.js.map → PW7NJ3JL.js.map} +1 -1
  183. package/dist/{UZTJVHNP.js → PWHGLCTH.js} +3 -3
  184. package/dist/{UZTJVHNP.js.map → PWHGLCTH.js.map} +1 -1
  185. package/dist/{NGQ4JFFF.cjs → QBEVSHKH.cjs} +5 -5
  186. package/dist/{NGQ4JFFF.cjs.map → QBEVSHKH.cjs.map} +1 -1
  187. package/dist/{TJ43T2UL.cjs → QJJPNNGA.cjs} +8 -8
  188. package/dist/{TJ43T2UL.cjs.map → QJJPNNGA.cjs.map} +1 -1
  189. package/dist/{74AYLDU5.cjs → QMEHYIDE.cjs} +5 -5
  190. package/dist/{74AYLDU5.cjs.map → QMEHYIDE.cjs.map} +1 -1
  191. package/dist/{BA56KCNU.js → QYKMFCVF.js} +3 -3
  192. package/dist/{BA56KCNU.js.map → QYKMFCVF.js.map} +1 -1
  193. package/dist/{QZJONP6W.js → QZKEWDGH.js} +3 -3
  194. package/dist/{QZJONP6W.js.map → QZKEWDGH.js.map} +1 -1
  195. package/dist/{KYQVWBET.js → RGSLEGIT.js} +3 -3
  196. package/dist/{KYQVWBET.js.map → RGSLEGIT.js.map} +1 -1
  197. package/dist/{RZ2TJZNK.cjs → RLJYSOVN.cjs} +5 -5
  198. package/dist/{RZ2TJZNK.cjs.map → RLJYSOVN.cjs.map} +1 -1
  199. package/dist/{COUXHSKG.cjs → S4KVV5HB.cjs} +3 -3
  200. package/dist/{COUXHSKG.cjs.map → S4KVV5HB.cjs.map} +1 -1
  201. package/dist/{YCZPKPO3.cjs → S6JBGMUW.cjs} +8 -8
  202. package/dist/{YCZPKPO3.cjs.map → S6JBGMUW.cjs.map} +1 -1
  203. package/dist/{DHNLK4WA.cjs → S6Q6EFHA.cjs} +5 -5
  204. package/dist/{DHNLK4WA.cjs.map → S6Q6EFHA.cjs.map} +1 -1
  205. package/dist/{GD2UPQQ4.cjs → SCFLLCEU.cjs} +79 -79
  206. package/dist/{GD2UPQQ4.cjs.map → SCFLLCEU.cjs.map} +1 -1
  207. package/dist/{P6RLTY4Q.js → SFKNDB45.js} +4 -4
  208. package/dist/{P6RLTY4Q.js.map → SFKNDB45.js.map} +1 -1
  209. package/dist/{VJPIIJ6M.cjs → SLC7TJUE.cjs} +5 -5
  210. package/dist/{VJPIIJ6M.cjs.map → SLC7TJUE.cjs.map} +1 -1
  211. package/dist/{SKY3CLNN.cjs → SPWRT52G.cjs} +5 -5
  212. package/dist/{SKY3CLNN.cjs.map → SPWRT52G.cjs.map} +1 -1
  213. package/dist/{JC3E3PDQ.cjs → SQ4J5E6V.cjs} +5 -5
  214. package/dist/{JC3E3PDQ.cjs.map → SQ4J5E6V.cjs.map} +1 -1
  215. package/dist/TCJIRBMX.js +105 -0
  216. package/dist/TCJIRBMX.js.map +1 -0
  217. package/dist/{27OXKTCX.cjs → TGNARIXQ.cjs} +5 -5
  218. package/dist/{27OXKTCX.cjs.map → TGNARIXQ.cjs.map} +1 -1
  219. package/dist/{CPODYNES.js → TIKYUQ7Z.js} +3 -3
  220. package/dist/{CPODYNES.js.map → TIKYUQ7Z.js.map} +1 -1
  221. package/dist/{CM3AEJH2.js → TV3E6NFT.js} +4 -4
  222. package/dist/{CM3AEJH2.js.map → TV3E6NFT.js.map} +1 -1
  223. package/dist/{JG3CGXAA.js → U64PVM2G.js} +3 -3
  224. package/dist/{JG3CGXAA.js.map → U64PVM2G.js.map} +1 -1
  225. package/dist/{NAKXSYHE.js → U7QJUV2C.js} +3 -3
  226. package/dist/{NAKXSYHE.js.map → U7QJUV2C.js.map} +1 -1
  227. package/dist/{MWCTJJ2S.cjs → UHP3LSQF.cjs} +5 -5
  228. package/dist/{MWCTJJ2S.cjs.map → UHP3LSQF.cjs.map} +1 -1
  229. package/dist/{KPBY6DNJ.cjs → UJYMA5VQ.cjs} +5 -5
  230. package/dist/{KPBY6DNJ.cjs.map → UJYMA5VQ.cjs.map} +1 -1
  231. package/dist/{7QVLLG7J.js → UNTLGCGB.js} +3 -3
  232. package/dist/{7QVLLG7J.js.map → UNTLGCGB.js.map} +1 -1
  233. package/dist/{SI25MBHH.cjs → UNXN3CCW.cjs} +5 -5
  234. package/dist/{SI25MBHH.cjs.map → UNXN3CCW.cjs.map} +1 -1
  235. package/dist/{S73PQEYG.cjs → UZT7H5C3.cjs} +5 -5
  236. package/dist/{S73PQEYG.cjs.map → UZT7H5C3.cjs.map} +1 -1
  237. package/dist/{7XYPOMMA.cjs → V6S7K5YM.cjs} +5 -5
  238. package/dist/{7XYPOMMA.cjs.map → V6S7K5YM.cjs.map} +1 -1
  239. package/dist/{X5Q5IDTX.js → V6WKCZKX.js} +3 -3
  240. package/dist/{X5Q5IDTX.js.map → V6WKCZKX.js.map} +1 -1
  241. package/dist/{6GAFSKMN.js → VDBQAUSY.js} +3 -3
  242. package/dist/{6GAFSKMN.js.map → VDBQAUSY.js.map} +1 -1
  243. package/dist/{TKPU3I2P.js → VIVHP4ZR.js} +3 -3
  244. package/dist/{TKPU3I2P.js.map → VIVHP4ZR.js.map} +1 -1
  245. package/dist/{RRCQOCAW.cjs → VMPZFOZI.cjs} +5 -5
  246. package/dist/{RRCQOCAW.cjs.map → VMPZFOZI.cjs.map} +1 -1
  247. package/dist/{H2QNCZZP.js → WEOR7EMZ.js} +4 -4
  248. package/dist/{H2QNCZZP.js.map → WEOR7EMZ.js.map} +1 -1
  249. package/dist/{CYUO5SRQ.js → WH4AALW7.js} +3 -3
  250. package/dist/{CYUO5SRQ.js.map → WH4AALW7.js.map} +1 -1
  251. package/dist/{WS55YOW3.js → WLN7SJMS.js} +3 -3
  252. package/dist/{WS55YOW3.js.map → WLN7SJMS.js.map} +1 -1
  253. package/dist/{NPT2AKS7.cjs → WQ6VME45.cjs} +3 -3
  254. package/dist/{NPT2AKS7.cjs.map → WQ6VME45.cjs.map} +1 -1
  255. package/dist/{LPLEUCIU.cjs → WXLIUJKQ.cjs} +7 -7
  256. package/dist/{LPLEUCIU.cjs.map → WXLIUJKQ.cjs.map} +1 -1
  257. package/dist/{5M2AHEWW.cjs → XH2OTZ42.cjs} +8 -8
  258. package/dist/{5M2AHEWW.cjs.map → XH2OTZ42.cjs.map} +1 -1
  259. package/dist/{42XERBT4.js → XUUV67AB.js} +3 -3
  260. package/dist/{42XERBT4.js.map → XUUV67AB.js.map} +1 -1
  261. package/dist/{CQPFCX63.cjs → YBBXCSRT.cjs} +6 -6
  262. package/dist/{CQPFCX63.cjs.map → YBBXCSRT.cjs.map} +1 -1
  263. package/dist/{K2KECY77.cjs → YBXZDBYK.cjs} +5 -5
  264. package/dist/{K2KECY77.cjs.map → YBXZDBYK.cjs.map} +1 -1
  265. package/dist/{Z2TOQ5RW.js → YCNGW63C.js} +3 -3
  266. package/dist/{Z2TOQ5RW.js.map → YCNGW63C.js.map} +1 -1
  267. package/dist/{GJLPKWY4.cjs → YL6USER2.cjs} +5 -5
  268. package/dist/{GJLPKWY4.cjs.map → YL6USER2.cjs.map} +1 -1
  269. package/dist/{DZ7VH35Y.cjs → YY3TEAKV.cjs} +5 -5
  270. package/dist/{DZ7VH35Y.cjs.map → YY3TEAKV.cjs.map} +1 -1
  271. package/dist/{DAP5XJGH.js → Z6XV6V6U.js} +3 -3
  272. package/dist/{DAP5XJGH.js.map → Z6XV6V6U.js.map} +1 -1
  273. package/dist/{JEVZBCKB.js → Z74KDZ47.js} +3 -3
  274. package/dist/{JEVZBCKB.js.map → Z74KDZ47.js.map} +1 -1
  275. package/dist/{JRALW2JZ.js → ZCFOFDYY.js} +3 -3
  276. package/dist/{JRALW2JZ.js.map → ZCFOFDYY.js.map} +1 -1
  277. package/dist/{NXLM7ANC.js → ZYOH5EDV.js} +3 -3
  278. package/dist/{NXLM7ANC.js.map → ZYOH5EDV.js.map} +1 -1
  279. package/dist/auth/index.cjs +1 -1
  280. package/dist/auth/index.js +1 -1
  281. package/dist/client/canton-client.cjs +100 -100
  282. package/dist/client/canton-client.js +99 -99
  283. package/dist/client/index.cjs +101 -101
  284. package/dist/client/index.js +100 -100
  285. package/dist/index.cjs +160 -131
  286. package/dist/index.d.ts +1 -0
  287. package/dist/index.d.ts.map +1 -1
  288. package/dist/index.js +108 -107
  289. package/dist/open-api/apis/DefaultApi.cjs +99 -99
  290. package/dist/open-api/apis/DefaultApi.js +98 -98
  291. package/dist/open-api/apis/index.cjs +99 -99
  292. package/dist/open-api/apis/index.js +98 -98
  293. package/dist/open-api/index.cjs +1083 -1083
  294. package/dist/open-api/index.js +98 -98
  295. package/dist/open-api/models/Command.cjs +7 -7
  296. package/dist/open-api/models/Command.js +3 -3
  297. package/dist/open-api/models/Completion.cjs +11 -11
  298. package/dist/open-api/models/Completion.js +6 -6
  299. package/dist/open-api/models/Completion1.cjs +10 -10
  300. package/dist/open-api/models/Completion1.js +5 -5
  301. package/dist/open-api/models/CompletionResponse.cjs +13 -13
  302. package/dist/open-api/models/CompletionResponse.js +9 -9
  303. package/dist/open-api/models/CompletionResponseOneOf.cjs +12 -12
  304. package/dist/open-api/models/CompletionResponseOneOf.js +7 -7
  305. package/dist/open-api/models/CompletionStreamResponse.cjs +15 -15
  306. package/dist/open-api/models/CompletionStreamResponse.js +10 -10
  307. package/dist/open-api/models/CreateUserRequest.cjs +11 -11
  308. package/dist/open-api/models/CreateUserRequest.js +6 -6
  309. package/dist/open-api/models/CumulativeFilter.cjs +10 -10
  310. package/dist/open-api/models/CumulativeFilter.js +5 -5
  311. package/dist/open-api/models/DeduplicationPeriod.cjs +7 -7
  312. package/dist/open-api/models/DeduplicationPeriod.js +3 -3
  313. package/dist/open-api/models/DeduplicationPeriod1.cjs +7 -7
  314. package/dist/open-api/models/DeduplicationPeriod1.js +3 -3
  315. package/dist/open-api/models/Event.cjs +7 -7
  316. package/dist/open-api/models/Event.js +3 -3
  317. package/dist/open-api/models/EventFormat.cjs +12 -12
  318. package/dist/open-api/models/EventFormat.js +7 -7
  319. package/dist/open-api/models/ExperimentalFeatures.cjs +7 -7
  320. package/dist/open-api/models/ExperimentalFeatures.js +2 -2
  321. package/dist/open-api/models/FeaturesDescriptor.cjs +8 -8
  322. package/dist/open-api/models/FeaturesDescriptor.js +3 -3
  323. package/dist/open-api/models/Filters.cjs +11 -11
  324. package/dist/open-api/models/Filters.js +6 -6
  325. package/dist/open-api/models/GetActiveContractsRequest.cjs +14 -14
  326. package/dist/open-api/models/GetActiveContractsRequest.js +9 -9
  327. package/dist/open-api/models/GetEventsByContractIdRequest.cjs +13 -13
  328. package/dist/open-api/models/GetEventsByContractIdRequest.js +8 -8
  329. package/dist/open-api/models/GetLedgerApiVersionResponse.cjs +9 -9
  330. package/dist/open-api/models/GetLedgerApiVersionResponse.js +4 -4
  331. package/dist/open-api/models/GetTransactionByIdRequest.cjs +14 -14
  332. package/dist/open-api/models/GetTransactionByIdRequest.js +9 -9
  333. package/dist/open-api/models/GetTransactionByOffsetRequest.cjs +14 -14
  334. package/dist/open-api/models/GetTransactionByOffsetRequest.js +9 -9
  335. package/dist/open-api/models/GetUpdateByIdRequest.cjs +15 -15
  336. package/dist/open-api/models/GetUpdateByIdRequest.js +10 -10
  337. package/dist/open-api/models/GetUpdateByOffsetRequest.cjs +15 -15
  338. package/dist/open-api/models/GetUpdateByOffsetRequest.js +10 -10
  339. package/dist/open-api/models/GetUpdatesRequest.cjs +16 -16
  340. package/dist/open-api/models/GetUpdatesRequest.js +11 -11
  341. package/dist/open-api/models/GrantUserRightsRequest.cjs +11 -11
  342. package/dist/open-api/models/GrantUserRightsRequest.js +6 -6
  343. package/dist/open-api/models/GrantUserRightsResponse.cjs +11 -11
  344. package/dist/open-api/models/GrantUserRightsResponse.js +6 -6
  345. package/dist/open-api/models/IdentifierFilter.cjs +8 -8
  346. package/dist/open-api/models/IdentifierFilter.js +4 -4
  347. package/dist/open-api/models/JsCommands.cjs +12 -12
  348. package/dist/open-api/models/JsCommands.js +7 -7
  349. package/dist/open-api/models/JsContractEntry.cjs +9 -9
  350. package/dist/open-api/models/JsContractEntry.js +5 -5
  351. package/dist/open-api/models/JsExecuteSubmissionAndWaitForTransactionRequest.cjs +19 -19
  352. package/dist/open-api/models/JsExecuteSubmissionAndWaitForTransactionRequest.js +13 -13
  353. package/dist/open-api/models/JsExecuteSubmissionAndWaitForTransactionResponse.cjs +10 -10
  354. package/dist/open-api/models/JsExecuteSubmissionAndWaitForTransactionResponse.js +5 -5
  355. package/dist/open-api/models/JsExecuteSubmissionAndWaitRequest.cjs +11 -11
  356. package/dist/open-api/models/JsExecuteSubmissionAndWaitRequest.js +5 -5
  357. package/dist/open-api/models/JsExecuteSubmissionRequest.cjs +11 -11
  358. package/dist/open-api/models/JsExecuteSubmissionRequest.js +5 -5
  359. package/dist/open-api/models/JsGetActiveContractsResponse.cjs +11 -11
  360. package/dist/open-api/models/JsGetActiveContractsResponse.js +6 -6
  361. package/dist/open-api/models/JsGetTransactionResponse.cjs +10 -10
  362. package/dist/open-api/models/JsGetTransactionResponse.js +5 -5
  363. package/dist/open-api/models/JsGetTransactionTreeResponse.cjs +9 -9
  364. package/dist/open-api/models/JsGetTransactionTreeResponse.js +4 -4
  365. package/dist/open-api/models/JsGetUpdateResponse.cjs +14 -14
  366. package/dist/open-api/models/JsGetUpdateResponse.js +9 -9
  367. package/dist/open-api/models/JsGetUpdateTreesResponse.cjs +12 -12
  368. package/dist/open-api/models/JsGetUpdateTreesResponse.js +7 -7
  369. package/dist/open-api/models/JsGetUpdatesResponse.cjs +14 -14
  370. package/dist/open-api/models/JsGetUpdatesResponse.js +9 -9
  371. package/dist/open-api/models/JsPrepareSubmissionRequest.cjs +13 -13
  372. package/dist/open-api/models/JsPrepareSubmissionRequest.js +8 -8
  373. package/dist/open-api/models/JsSubmitAndWaitForTransactionRequest.cjs +21 -21
  374. package/dist/open-api/models/JsSubmitAndWaitForTransactionRequest.js +16 -16
  375. package/dist/open-api/models/JsSubmitAndWaitForTransactionResponse.cjs +10 -10
  376. package/dist/open-api/models/JsSubmitAndWaitForTransactionResponse.js +5 -5
  377. package/dist/open-api/models/JsSubmitAndWaitForTransactionTreeResponse.cjs +9 -9
  378. package/dist/open-api/models/JsSubmitAndWaitForTransactionTreeResponse.js +4 -4
  379. package/dist/open-api/models/JsTransaction.cjs +9 -9
  380. package/dist/open-api/models/JsTransaction.js +4 -4
  381. package/dist/open-api/models/JsTransactionTree.cjs +8 -8
  382. package/dist/open-api/models/JsTransactionTree.js +3 -3
  383. package/dist/open-api/models/Kind.cjs +8 -8
  384. package/dist/open-api/models/Kind.js +4 -4
  385. package/dist/open-api/models/ListUserRightsResponse.cjs +11 -11
  386. package/dist/open-api/models/ListUserRightsResponse.js +6 -6
  387. package/dist/open-api/models/MinLedgerTime.cjs +9 -9
  388. package/dist/open-api/models/MinLedgerTime.js +4 -4
  389. package/dist/open-api/models/PriorTopologySerial.cjs +8 -8
  390. package/dist/open-api/models/PriorTopologySerial.js +3 -3
  391. package/dist/open-api/models/RevokeUserRightsRequest.cjs +11 -11
  392. package/dist/open-api/models/RevokeUserRightsRequest.js +6 -6
  393. package/dist/open-api/models/RevokeUserRightsResponse.cjs +11 -11
  394. package/dist/open-api/models/RevokeUserRightsResponse.js +6 -6
  395. package/dist/open-api/models/Right.cjs +10 -10
  396. package/dist/open-api/models/Right.js +5 -5
  397. package/dist/open-api/models/Serial.cjs +6 -6
  398. package/dist/open-api/models/Serial.js +2 -2
  399. package/dist/open-api/models/SubmitAndWaitForReassignmentRequest.cjs +13 -13
  400. package/dist/open-api/models/SubmitAndWaitForReassignmentRequest.js +8 -8
  401. package/dist/open-api/models/Time.cjs +7 -7
  402. package/dist/open-api/models/Time.js +3 -3
  403. package/dist/open-api/models/Transaction.cjs +10 -10
  404. package/dist/open-api/models/Transaction.js +5 -5
  405. package/dist/open-api/models/TransactionFilter.cjs +12 -12
  406. package/dist/open-api/models/TransactionFilter.js +7 -7
  407. package/dist/open-api/models/TransactionFormat.cjs +14 -14
  408. package/dist/open-api/models/TransactionFormat.js +8 -8
  409. package/dist/open-api/models/TransactionTree.cjs +9 -9
  410. package/dist/open-api/models/TransactionTree.js +4 -4
  411. package/dist/open-api/models/TreeEvent.cjs +6 -6
  412. package/dist/open-api/models/TreeEvent.js +2 -2
  413. package/dist/open-api/models/Update.cjs +12 -12
  414. package/dist/open-api/models/Update.js +8 -8
  415. package/dist/open-api/models/Update1.cjs +10 -10
  416. package/dist/open-api/models/Update1.js +6 -6
  417. package/dist/open-api/models/Update1OneOf2.cjs +10 -10
  418. package/dist/open-api/models/Update1OneOf2.js +5 -5
  419. package/dist/open-api/models/UpdateFormat.cjs +14 -14
  420. package/dist/open-api/models/UpdateFormat.js +9 -9
  421. package/dist/open-api/models/UpdateOneOf3.cjs +11 -11
  422. package/dist/open-api/models/UpdateOneOf3.js +6 -6
  423. package/dist/open-api/models/UpdateVettedPackagesRequest.cjs +10 -10
  424. package/dist/open-api/models/UpdateVettedPackagesRequest.js +4 -4
  425. package/dist/open-api/models/index.cjs +1081 -1081
  426. package/dist/open-api/models/index.js +97 -97
  427. package/dist/provider.cjs +105 -105
  428. package/dist/provider.js +103 -103
  429. package/dist/transaction.cjs +37 -0
  430. package/dist/transaction.cjs.map +1 -0
  431. package/dist/transaction.d.ts +318 -0
  432. package/dist/transaction.d.ts.map +1 -0
  433. package/dist/transaction.js +4 -0
  434. package/dist/transaction.js.map +1 -0
  435. package/package.json +11 -8
  436. package/src/index.ts +1 -0
  437. package/src/transaction.ts +149 -0
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var DHNLK4WA_cjs = require('./DHNLK4WA.cjs');
3
+ var S6Q6EFHA_cjs = require('./S6Q6EFHA.cjs');
4
4
  var QFCBQMKV_cjs = require('./QFCBQMKV.cjs');
5
5
  var Z276PIJO_cjs = require('./Z276PIJO.cjs');
6
6
  var TJFATD2J_cjs = require('./TJFATD2J.cjs');
7
- var CTS7Z4FF_cjs = require('./CTS7Z4FF.cjs');
7
+ var _3QUCCTPJ_cjs = require('./3QUCCTPJ.cjs');
8
8
  var YJF4D23A_cjs = require('./YJF4D23A.cjs');
9
9
 
10
10
  // src/open-api/models/JsPrepareSubmissionRequest.ts
@@ -27,8 +27,8 @@ function JsPrepareSubmissionRequestFromJSONTyped(json, ignoreDiscriminator) {
27
27
  return {
28
28
  "userId": json["userId"],
29
29
  "commandId": json["commandId"],
30
- "commands": json["commands"] == null ? void 0 : json["commands"].map(CTS7Z4FF_cjs.CommandFromJSON),
31
- "minLedgerTime": json["minLedgerTime"] == null ? void 0 : DHNLK4WA_cjs.MinLedgerTimeFromJSON(json["minLedgerTime"]),
30
+ "commands": json["commands"] == null ? void 0 : json["commands"].map(_3QUCCTPJ_cjs.CommandFromJSON),
31
+ "minLedgerTime": json["minLedgerTime"] == null ? void 0 : S6Q6EFHA_cjs.MinLedgerTimeFromJSON(json["minLedgerTime"]),
32
32
  "actAs": json["actAs"] == null ? void 0 : json["actAs"],
33
33
  "readAs": json["readAs"] == null ? void 0 : json["readAs"],
34
34
  "disclosedContracts": json["disclosedContracts"] == null ? void 0 : json["disclosedContracts"].map(Z276PIJO_cjs.DisclosedContractFromJSON),
@@ -52,8 +52,8 @@ function JsPrepareSubmissionRequestToJSONTyped(value, ignoreDiscriminator = fals
52
52
  return {
53
53
  "userId": value["userId"],
54
54
  "commandId": value["commandId"],
55
- "commands": value["commands"] == null ? void 0 : value["commands"].map(CTS7Z4FF_cjs.CommandToJSON),
56
- "minLedgerTime": DHNLK4WA_cjs.MinLedgerTimeToJSON(value["minLedgerTime"]),
55
+ "commands": value["commands"] == null ? void 0 : value["commands"].map(_3QUCCTPJ_cjs.CommandToJSON),
56
+ "minLedgerTime": S6Q6EFHA_cjs.MinLedgerTimeToJSON(value["minLedgerTime"]),
57
57
  "actAs": value["actAs"],
58
58
  "readAs": value["readAs"],
59
59
  "disclosedContracts": value["disclosedContracts"] == null ? void 0 : value["disclosedContracts"].map(Z276PIJO_cjs.DisclosedContractToJSON),
@@ -72,5 +72,5 @@ exports.JsPrepareSubmissionRequestFromJSONTyped = JsPrepareSubmissionRequestFrom
72
72
  exports.JsPrepareSubmissionRequestToJSON = JsPrepareSubmissionRequestToJSON;
73
73
  exports.JsPrepareSubmissionRequestToJSONTyped = JsPrepareSubmissionRequestToJSONTyped;
74
74
  exports.instanceOfJsPrepareSubmissionRequest = instanceOfJsPrepareSubmissionRequest;
75
- //# sourceMappingURL=4RMMHVAW.cjs.map
76
- //# sourceMappingURL=4RMMHVAW.cjs.map
75
+ //# sourceMappingURL=INJF5RE5.cjs.map
76
+ //# sourceMappingURL=INJF5RE5.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/open-api/models/JsPrepareSubmissionRequest.ts"],"names":["instanceOfJsPrepareSubmissionRequest","value","undefined","JsPrepareSubmissionRequestFromJSON","json","JsPrepareSubmissionRequestFromJSONTyped","ignoreDiscriminator","map","CommandFromJSON","MinLedgerTimeFromJSON","DisclosedContractFromJSON","PrefetchContractKeyFromJSON","CostEstimationHintsFromJSON","JsPrepareSubmissionRequestToJSON","JsPrepareSubmissionRequestToJSONTyped","CommandToJSON","MinLedgerTimeToJSON","DisclosedContractToJSON","PrefetchContractKeyToJSON","CostEstimationHintsToJSON"],"mappings":";;;;;;;;;;AAuLO,SAASA,qCAAqCC,KAAAA,EAAa;AAC9D,EAAA,IAAI,EAAE,QAAA,IAAYA,KAAAA,CAAAA,IAAUA,MAAM,QAAA,CAAA,KAAcC,QAAW,OAAO,KAAA;AAClE,EAAA,IAAI,EAAE,WAAA,IAAeD,KAAAA,CAAAA,IAAUA,MAAM,WAAA,CAAA,KAAiBC,QAAW,OAAO,KAAA;AACxE,EAAA,IAAI,EAAE,gBAAA,IAAoBD,KAAAA,CAAAA,IAAUA,MAAM,gBAAA,CAAA,KAAsBC,QAAW,OAAO,KAAA;AAClF,EAAA,IAAI,EAAE,gBAAA,IAAoBD,KAAAA,CAAAA,IAAUA,MAAM,gBAAA,CAAA,KAAsBC,QAAW,OAAO,KAAA;AAClF,EAAA,OAAO,IAAA;AACX;AANgBF,mBAAAA,CAAAA,oCAAAA,EAAAA,sCAAAA,CAAAA;AAQT,SAASG,mCAAmCC,IAAAA,EAAS;AACxD,EAAA,OAAOC,uCAAAA,CAAwCD,IAAM,CAAA;AACzD;AAFgBD,mBAAAA,CAAAA,kCAAAA,EAAAA,oCAAAA,CAAAA;AAIT,SAASE,uCAAAA,CAAwCD,MAAWE,mBAAAA,EAA4B;AAC3F,EAAA,IAAIF,QAAQ,IAAA,EAAM;AACd,IAAA,OAAOA,IAAAA;AACX,EAAA;AACA,EAAA,OAAO;AAEH,IAAA,QAAA,EAAUA,KAAK,QAAA,CAAA;AACf,IAAA,WAAA,EAAaA,KAAK,WAAA,CAAA;IAClB,UAAA,EAAYA,IAAAA,CAAK,UAAA,CAAA,IAAe,IAAA,GAAOF,SAAcE,IAAAA,CAAK,UAAA,CAAA,CAA2BG,GAAAA,CAAIC,4BAAAA,CAAAA;IACzF,eAAA,EAAiBJ,IAAAA,CAAK,eAAA,CAAA,IAAoB,IAAA,GAAOF,SAAYO,kCAAAA,CAAsBL,IAAAA,CAAK,eAAA,CAAgB,CAAA;AACxG,IAAA,OAAA,EAASA,KAAK,OAAA,CAAA,IAAY,IAAA,GAAOF,MAAAA,GAAYE,KAAK,OAAA,CAAA;AAClD,IAAA,QAAA,EAAUA,KAAK,QAAA,CAAA,IAAa,IAAA,GAAOF,MAAAA,GAAYE,KAAK,QAAA,CAAA;IACpD,oBAAA,EAAsBA,IAAAA,CAAK,oBAAA,CAAA,IAAyB,IAAA,GAAOF,SAAcE,IAAAA,CAAK,oBAAA,CAAA,CAAqCG,GAAAA,CAAIG,sCAAAA,CAAAA;AACvH,IAAA,gBAAA,EAAkBN,KAAK,gBAAA,CAAA;AACvB,IAAA,8BAAA,EAAgCA,KAAK,8BAAA,CAAA,IAAmC,IAAA,GAAOF,MAAAA,GAAYE,KAAK,8BAAA,CAAA;AAChG,IAAA,gBAAA,EAAkBA,KAAK,gBAAA,CAAA;IACvB,sBAAA,EAAwBA,IAAAA,CAAK,sBAAA,CAAA,IAA2B,IAAA,GAAOF,SAAcE,IAAAA,CAAK,sBAAA,CAAA,CAAuCG,GAAAA,CAAII,wCAAAA,CAAAA;AAC7H,IAAA,eAAA,EAAiBP,KAAK,eAAA,CAAA,IAAoB,IAAA,GAAOF,MAAAA,GAAYE,KAAK,eAAA,CAAA;IAClE,qBAAA,EAAuBA,IAAAA,CAAK,qBAAA,CAAA,IAA0B,IAAA,GAAOF,SAAYU,wCAAAA,CAA4BR,IAAAA,CAAK,qBAAA,CAAsB;AACpI,GAAA;AACJ;AApBgBC,mBAAAA,CAAAA,uCAAAA,EAAAA,yCAAAA,CAAAA;AAsBT,SAASQ,iCAAiCT,IAAAA,EAAS;AACtD,EAAA,OAAOU,qCAAAA,CAAsCV,MAAM,KAAA,CAAA;AACvD;AAFgBS,mBAAAA,CAAAA,gCAAAA,EAAAA,kCAAAA,CAAAA;AAIT,SAASC,qCAAAA,CAAsCb,KAAAA,EAA2CK,mBAAAA,GAA+B,KAAA,EAAK;AACjI,EAAA,IAAIL,SAAS,IAAA,EAAM;AACf,IAAA,OAAOA,KAAAA;AACX,EAAA;AAEA,EAAA,OAAO;AAEH,IAAA,QAAA,EAAUA,MAAM,QAAA,CAAA;AAChB,IAAA,WAAA,EAAaA,MAAM,WAAA,CAAA;IACnB,UAAA,EAAYA,KAAAA,CAAM,UAAA,CAAA,IAAe,IAAA,GAAOC,SAAcD,KAAAA,CAAM,UAAA,CAAA,CAA2BM,GAAAA,CAAIQ,0BAAAA,CAAAA;IAC3F,eAAA,EAAiBC,gCAAAA,CAAoBf,KAAAA,CAAM,eAAA,CAAgB,CAAA;AAC3D,IAAA,OAAA,EAASA,MAAM,OAAA,CAAA;AACf,IAAA,QAAA,EAAUA,MAAM,QAAA,CAAA;IAChB,oBAAA,EAAsBA,KAAAA,CAAM,oBAAA,CAAA,IAAyB,IAAA,GAAOC,SAAcD,KAAAA,CAAM,oBAAA,CAAA,CAAqCM,GAAAA,CAAIU,oCAAAA,CAAAA;AACzH,IAAA,gBAAA,EAAkBhB,MAAM,gBAAA,CAAA;AACxB,IAAA,8BAAA,EAAgCA,MAAM,8BAAA,CAAA;AACtC,IAAA,gBAAA,EAAkBA,MAAM,gBAAA,CAAA;IACxB,sBAAA,EAAwBA,KAAAA,CAAM,sBAAA,CAAA,IAA2B,IAAA,GAAOC,SAAcD,KAAAA,CAAM,sBAAA,CAAA,CAAuCM,GAAAA,CAAIW,sCAAAA,CAAAA;AAC/H,IAAA,eAAA,EAAiBjB,MAAM,eAAA,CAAA;IACvB,qBAAA,EAAuBkB,sCAAAA,CAA0BlB,KAAAA,CAAM,qBAAA,CAAsB;AACjF,GAAA;AACJ;AArBgBa,mBAAAA,CAAAA,qCAAAA,EAAAA,uCAAAA,CAAAA","file":"4RMMHVAW.cjs","sourcesContent":["/* tslint:disable */\n/* eslint-disable */\n/**\n * JSON Ledger API HTTP endpoints\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 3.4.3-SNAPSHOT\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport { mapValues } from '../runtime.js';\nimport type { PrefetchContractKey } from './PrefetchContractKey.js';\nimport {\n PrefetchContractKeyFromJSON,\n PrefetchContractKeyFromJSONTyped,\n PrefetchContractKeyToJSON,\n PrefetchContractKeyToJSONTyped,\n} from './PrefetchContractKey.js';\nimport type { Command } from './Command.js';\nimport {\n CommandFromJSON,\n CommandFromJSONTyped,\n CommandToJSON,\n CommandToJSONTyped,\n} from './Command.js';\nimport type { CostEstimationHints } from './CostEstimationHints.js';\nimport {\n CostEstimationHintsFromJSON,\n CostEstimationHintsFromJSONTyped,\n CostEstimationHintsToJSON,\n CostEstimationHintsToJSONTyped,\n} from './CostEstimationHints.js';\nimport type { DisclosedContract } from './DisclosedContract.js';\nimport {\n DisclosedContractFromJSON,\n DisclosedContractFromJSONTyped,\n DisclosedContractToJSON,\n DisclosedContractToJSONTyped,\n} from './DisclosedContract.js';\nimport type { MinLedgerTime } from './MinLedgerTime.js';\nimport {\n MinLedgerTimeFromJSON,\n MinLedgerTimeFromJSONTyped,\n MinLedgerTimeToJSON,\n MinLedgerTimeToJSONTyped,\n} from './MinLedgerTime.js';\n\n/**\n * \n * @export\n * @interface JsPrepareSubmissionRequest\n */\nexport interface JsPrepareSubmissionRequest {\n /**\n * Uniquely identifies the participant user that prepares the transaction.\n * Must be a valid UserIdString (as described in ``value.proto``).\n * Required unless authentication is used with a user token.\n * In that case, the token's user-id will be used for the request's user_id.\n * Optional\n * @type {string}\n * @memberof JsPrepareSubmissionRequest\n */\n userId: string;\n /**\n * Uniquely identifies the command.\n * The triple (user_id, act_as, command_id) constitutes the change ID for the intended ledger change,\n * where act_as is interpreted as a set of party names.\n * The change ID can be used for matching the intended ledger changes with all their completions.\n * Must be a valid LedgerString (as described in ``value.proto``).\n * Required\n * @type {string}\n * @memberof JsPrepareSubmissionRequest\n */\n commandId: string;\n /**\n * Individual elements of this atomic command. Must be non-empty.\n * Limitation: Only single command transaction are currently supported by the API.\n * The field is marked as repeated in preparation for future support of multiple commands.\n * Required\n * @type {Array<Command>}\n * @memberof JsPrepareSubmissionRequest\n */\n commands?: Array<Command>;\n /**\n * \n * @type {MinLedgerTime}\n * @memberof JsPrepareSubmissionRequest\n */\n minLedgerTime?: MinLedgerTime;\n /**\n * Set of parties on whose behalf the command should be executed, if submitted.\n * If ledger API authorization is enabled, then the authorization metadata must authorize the sender of the request\n * to **read** (not act) on behalf of each of the given parties. This is because this RPC merely prepares a transaction\n * and does not execute it. Therefore read authorization is sufficient even for actAs parties.\n * Note: This may change, and more specific authorization scope may be introduced in the future.\n * Each element must be a valid PartyIdString (as described in ``value.proto``).\n * Required, must be non-empty.\n * @type {Array<string>}\n * @memberof JsPrepareSubmissionRequest\n */\n actAs?: Array<string>;\n /**\n * Set of parties on whose behalf (in addition to all parties listed in ``act_as``) contracts can be retrieved.\n * This affects Daml operations such as ``fetch``, ``fetchByKey``, ``lookupByKey``, ``exercise``, and ``exerciseByKey``.\n * Note: A command can only use contracts that are visible to at least\n * one of the parties in ``act_as`` or ``read_as``. This visibility check is independent from the Daml authorization\n * rules for fetch operations.\n * If ledger API authorization is enabled, then the authorization metadata must authorize the sender of the request\n * to read contract data on behalf of each of the given parties.\n * Optional\n * @type {Array<string>}\n * @memberof JsPrepareSubmissionRequest\n */\n readAs?: Array<string>;\n /**\n * Additional contracts used to resolve contract & contract key lookups.\n * Optional\n * @type {Array<DisclosedContract>}\n * @memberof JsPrepareSubmissionRequest\n */\n disclosedContracts?: Array<DisclosedContract>;\n /**\n * Must be a valid synchronizer id\n * If not set, a suitable synchronizer that this node is connected to will be chosen\n * Optional\n * @type {string}\n * @memberof JsPrepareSubmissionRequest\n */\n synchronizerId: string;\n /**\n * The package-id selection preference of the client for resolving\n * package names and interface instances in command submission and interpretation\n * Optional\n * @type {Array<string>}\n * @memberof JsPrepareSubmissionRequest\n */\n packageIdSelectionPreference?: Array<string>;\n /**\n * When true, the response will contain additional details on how the transaction was encoded and hashed\n * This can be useful for troubleshooting of hash mismatches. Should only be used for debugging.\n * Optional, default to false\n * @type {boolean}\n * @memberof JsPrepareSubmissionRequest\n */\n verboseHashing: boolean;\n /**\n * Fetches the contract keys into the caches to speed up the command processing.\n * Should only contain contract keys that are expected to be resolved during interpretation of the commands.\n * Keys of disclosed contracts do not need prefetching.\n * \n * Optional\n * @type {Array<PrefetchContractKey>}\n * @memberof JsPrepareSubmissionRequest\n */\n prefetchContractKeys?: Array<PrefetchContractKey>;\n /**\n * Maximum timestamp at which the transaction can be recorded onto the ledger via the synchronizer specified in the `PrepareSubmissionResponse`.\n * If submitted after it will be rejected even if otherwise valid, in which case it needs to be prepared and signed again\n * with a new valid max_record_time.\n * Use this to limit the time-to-life of a prepared transaction,\n * which is useful to know when it can definitely not be accepted\n * anymore and resorting to preparing another transaction for the same\n * intent is safe again.\n * Optional\n * @type {string}\n * @memberof JsPrepareSubmissionRequest\n */\n maxRecordTime?: string;\n /**\n * \n * @type {CostEstimationHints}\n * @memberof JsPrepareSubmissionRequest\n */\n estimateTrafficCost?: CostEstimationHints;\n}\n\n/**\n * Check if a given object implements the JsPrepareSubmissionRequest interface.\n */\nexport function instanceOfJsPrepareSubmissionRequest(value: object): value is JsPrepareSubmissionRequest {\n if (!('userId' in value) || value['userId'] === undefined) return false;\n if (!('commandId' in value) || value['commandId'] === undefined) return false;\n if (!('synchronizerId' in value) || value['synchronizerId'] === undefined) return false;\n if (!('verboseHashing' in value) || value['verboseHashing'] === undefined) return false;\n return true;\n}\n\nexport function JsPrepareSubmissionRequestFromJSON(json: any): JsPrepareSubmissionRequest {\n return JsPrepareSubmissionRequestFromJSONTyped(json, false);\n}\n\nexport function JsPrepareSubmissionRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): JsPrepareSubmissionRequest {\n if (json == null) {\n return json;\n }\n return {\n \n 'userId': json['userId'],\n 'commandId': json['commandId'],\n 'commands': json['commands'] == null ? undefined : ((json['commands'] as Array<any>).map(CommandFromJSON)),\n 'minLedgerTime': json['minLedgerTime'] == null ? undefined : MinLedgerTimeFromJSON(json['minLedgerTime']),\n 'actAs': json['actAs'] == null ? undefined : json['actAs'],\n 'readAs': json['readAs'] == null ? undefined : json['readAs'],\n 'disclosedContracts': json['disclosedContracts'] == null ? undefined : ((json['disclosedContracts'] as Array<any>).map(DisclosedContractFromJSON)),\n 'synchronizerId': json['synchronizerId'],\n 'packageIdSelectionPreference': json['packageIdSelectionPreference'] == null ? undefined : json['packageIdSelectionPreference'],\n 'verboseHashing': json['verboseHashing'],\n 'prefetchContractKeys': json['prefetchContractKeys'] == null ? undefined : ((json['prefetchContractKeys'] as Array<any>).map(PrefetchContractKeyFromJSON)),\n 'maxRecordTime': json['maxRecordTime'] == null ? undefined : json['maxRecordTime'],\n 'estimateTrafficCost': json['estimateTrafficCost'] == null ? undefined : CostEstimationHintsFromJSON(json['estimateTrafficCost']),\n };\n}\n\nexport function JsPrepareSubmissionRequestToJSON(json: any): JsPrepareSubmissionRequest {\n return JsPrepareSubmissionRequestToJSONTyped(json, false);\n}\n\nexport function JsPrepareSubmissionRequestToJSONTyped(value?: JsPrepareSubmissionRequest | null, ignoreDiscriminator: boolean = false): any {\n if (value == null) {\n return value;\n }\n\n return {\n \n 'userId': value['userId'],\n 'commandId': value['commandId'],\n 'commands': value['commands'] == null ? undefined : ((value['commands'] as Array<any>).map(CommandToJSON)),\n 'minLedgerTime': MinLedgerTimeToJSON(value['minLedgerTime']),\n 'actAs': value['actAs'],\n 'readAs': value['readAs'],\n 'disclosedContracts': value['disclosedContracts'] == null ? undefined : ((value['disclosedContracts'] as Array<any>).map(DisclosedContractToJSON)),\n 'synchronizerId': value['synchronizerId'],\n 'packageIdSelectionPreference': value['packageIdSelectionPreference'],\n 'verboseHashing': value['verboseHashing'],\n 'prefetchContractKeys': value['prefetchContractKeys'] == null ? undefined : ((value['prefetchContractKeys'] as Array<any>).map(PrefetchContractKeyToJSON)),\n 'maxRecordTime': value['maxRecordTime'],\n 'estimateTrafficCost': CostEstimationHintsToJSON(value['estimateTrafficCost']),\n };\n}\n\n"]}
1
+ {"version":3,"sources":["../src/open-api/models/JsPrepareSubmissionRequest.ts"],"names":["instanceOfJsPrepareSubmissionRequest","value","undefined","JsPrepareSubmissionRequestFromJSON","json","JsPrepareSubmissionRequestFromJSONTyped","ignoreDiscriminator","map","CommandFromJSON","MinLedgerTimeFromJSON","DisclosedContractFromJSON","PrefetchContractKeyFromJSON","CostEstimationHintsFromJSON","JsPrepareSubmissionRequestToJSON","JsPrepareSubmissionRequestToJSONTyped","CommandToJSON","MinLedgerTimeToJSON","DisclosedContractToJSON","PrefetchContractKeyToJSON","CostEstimationHintsToJSON"],"mappings":"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","file":"INJF5RE5.cjs","sourcesContent":["/* tslint:disable */\n/* eslint-disable */\n/**\n * JSON Ledger API HTTP endpoints\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 3.4.3-SNAPSHOT\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport { mapValues } from '../runtime.js';\nimport type { PrefetchContractKey } from './PrefetchContractKey.js';\nimport {\n PrefetchContractKeyFromJSON,\n PrefetchContractKeyFromJSONTyped,\n PrefetchContractKeyToJSON,\n PrefetchContractKeyToJSONTyped,\n} from './PrefetchContractKey.js';\nimport type { Command } from './Command.js';\nimport {\n CommandFromJSON,\n CommandFromJSONTyped,\n CommandToJSON,\n CommandToJSONTyped,\n} from './Command.js';\nimport type { CostEstimationHints } from './CostEstimationHints.js';\nimport {\n CostEstimationHintsFromJSON,\n CostEstimationHintsFromJSONTyped,\n CostEstimationHintsToJSON,\n CostEstimationHintsToJSONTyped,\n} from './CostEstimationHints.js';\nimport type { DisclosedContract } from './DisclosedContract.js';\nimport {\n DisclosedContractFromJSON,\n DisclosedContractFromJSONTyped,\n DisclosedContractToJSON,\n DisclosedContractToJSONTyped,\n} from './DisclosedContract.js';\nimport type { MinLedgerTime } from './MinLedgerTime.js';\nimport {\n MinLedgerTimeFromJSON,\n MinLedgerTimeFromJSONTyped,\n MinLedgerTimeToJSON,\n MinLedgerTimeToJSONTyped,\n} from './MinLedgerTime.js';\n\n/**\n * \n * @export\n * @interface JsPrepareSubmissionRequest\n */\nexport interface JsPrepareSubmissionRequest {\n /**\n * Uniquely identifies the participant user that prepares the transaction.\n * Must be a valid UserIdString (as described in ``value.proto``).\n * Required unless authentication is used with a user token.\n * In that case, the token's user-id will be used for the request's user_id.\n * Optional\n * @type {string}\n * @memberof JsPrepareSubmissionRequest\n */\n userId: string;\n /**\n * Uniquely identifies the command.\n * The triple (user_id, act_as, command_id) constitutes the change ID for the intended ledger change,\n * where act_as is interpreted as a set of party names.\n * The change ID can be used for matching the intended ledger changes with all their completions.\n * Must be a valid LedgerString (as described in ``value.proto``).\n * Required\n * @type {string}\n * @memberof JsPrepareSubmissionRequest\n */\n commandId: string;\n /**\n * Individual elements of this atomic command. Must be non-empty.\n * Limitation: Only single command transaction are currently supported by the API.\n * The field is marked as repeated in preparation for future support of multiple commands.\n * Required\n * @type {Array<Command>}\n * @memberof JsPrepareSubmissionRequest\n */\n commands?: Array<Command>;\n /**\n * \n * @type {MinLedgerTime}\n * @memberof JsPrepareSubmissionRequest\n */\n minLedgerTime?: MinLedgerTime;\n /**\n * Set of parties on whose behalf the command should be executed, if submitted.\n * If ledger API authorization is enabled, then the authorization metadata must authorize the sender of the request\n * to **read** (not act) on behalf of each of the given parties. This is because this RPC merely prepares a transaction\n * and does not execute it. Therefore read authorization is sufficient even for actAs parties.\n * Note: This may change, and more specific authorization scope may be introduced in the future.\n * Each element must be a valid PartyIdString (as described in ``value.proto``).\n * Required, must be non-empty.\n * @type {Array<string>}\n * @memberof JsPrepareSubmissionRequest\n */\n actAs?: Array<string>;\n /**\n * Set of parties on whose behalf (in addition to all parties listed in ``act_as``) contracts can be retrieved.\n * This affects Daml operations such as ``fetch``, ``fetchByKey``, ``lookupByKey``, ``exercise``, and ``exerciseByKey``.\n * Note: A command can only use contracts that are visible to at least\n * one of the parties in ``act_as`` or ``read_as``. This visibility check is independent from the Daml authorization\n * rules for fetch operations.\n * If ledger API authorization is enabled, then the authorization metadata must authorize the sender of the request\n * to read contract data on behalf of each of the given parties.\n * Optional\n * @type {Array<string>}\n * @memberof JsPrepareSubmissionRequest\n */\n readAs?: Array<string>;\n /**\n * Additional contracts used to resolve contract & contract key lookups.\n * Optional\n * @type {Array<DisclosedContract>}\n * @memberof JsPrepareSubmissionRequest\n */\n disclosedContracts?: Array<DisclosedContract>;\n /**\n * Must be a valid synchronizer id\n * If not set, a suitable synchronizer that this node is connected to will be chosen\n * Optional\n * @type {string}\n * @memberof JsPrepareSubmissionRequest\n */\n synchronizerId: string;\n /**\n * The package-id selection preference of the client for resolving\n * package names and interface instances in command submission and interpretation\n * Optional\n * @type {Array<string>}\n * @memberof JsPrepareSubmissionRequest\n */\n packageIdSelectionPreference?: Array<string>;\n /**\n * When true, the response will contain additional details on how the transaction was encoded and hashed\n * This can be useful for troubleshooting of hash mismatches. Should only be used for debugging.\n * Optional, default to false\n * @type {boolean}\n * @memberof JsPrepareSubmissionRequest\n */\n verboseHashing: boolean;\n /**\n * Fetches the contract keys into the caches to speed up the command processing.\n * Should only contain contract keys that are expected to be resolved during interpretation of the commands.\n * Keys of disclosed contracts do not need prefetching.\n * \n * Optional\n * @type {Array<PrefetchContractKey>}\n * @memberof JsPrepareSubmissionRequest\n */\n prefetchContractKeys?: Array<PrefetchContractKey>;\n /**\n * Maximum timestamp at which the transaction can be recorded onto the ledger via the synchronizer specified in the `PrepareSubmissionResponse`.\n * If submitted after it will be rejected even if otherwise valid, in which case it needs to be prepared and signed again\n * with a new valid max_record_time.\n * Use this to limit the time-to-life of a prepared transaction,\n * which is useful to know when it can definitely not be accepted\n * anymore and resorting to preparing another transaction for the same\n * intent is safe again.\n * Optional\n * @type {string}\n * @memberof JsPrepareSubmissionRequest\n */\n maxRecordTime?: string;\n /**\n * \n * @type {CostEstimationHints}\n * @memberof JsPrepareSubmissionRequest\n */\n estimateTrafficCost?: CostEstimationHints;\n}\n\n/**\n * Check if a given object implements the JsPrepareSubmissionRequest interface.\n */\nexport function instanceOfJsPrepareSubmissionRequest(value: object): value is JsPrepareSubmissionRequest {\n if (!('userId' in value) || value['userId'] === undefined) return false;\n if (!('commandId' in value) || value['commandId'] === undefined) return false;\n if (!('synchronizerId' in value) || value['synchronizerId'] === undefined) return false;\n if (!('verboseHashing' in value) || value['verboseHashing'] === undefined) return false;\n return true;\n}\n\nexport function JsPrepareSubmissionRequestFromJSON(json: any): JsPrepareSubmissionRequest {\n return JsPrepareSubmissionRequestFromJSONTyped(json, false);\n}\n\nexport function JsPrepareSubmissionRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): JsPrepareSubmissionRequest {\n if (json == null) {\n return json;\n }\n return {\n \n 'userId': json['userId'],\n 'commandId': json['commandId'],\n 'commands': json['commands'] == null ? undefined : ((json['commands'] as Array<any>).map(CommandFromJSON)),\n 'minLedgerTime': json['minLedgerTime'] == null ? undefined : MinLedgerTimeFromJSON(json['minLedgerTime']),\n 'actAs': json['actAs'] == null ? undefined : json['actAs'],\n 'readAs': json['readAs'] == null ? undefined : json['readAs'],\n 'disclosedContracts': json['disclosedContracts'] == null ? undefined : ((json['disclosedContracts'] as Array<any>).map(DisclosedContractFromJSON)),\n 'synchronizerId': json['synchronizerId'],\n 'packageIdSelectionPreference': json['packageIdSelectionPreference'] == null ? undefined : json['packageIdSelectionPreference'],\n 'verboseHashing': json['verboseHashing'],\n 'prefetchContractKeys': json['prefetchContractKeys'] == null ? undefined : ((json['prefetchContractKeys'] as Array<any>).map(PrefetchContractKeyFromJSON)),\n 'maxRecordTime': json['maxRecordTime'] == null ? undefined : json['maxRecordTime'],\n 'estimateTrafficCost': json['estimateTrafficCost'] == null ? undefined : CostEstimationHintsFromJSON(json['estimateTrafficCost']),\n };\n}\n\nexport function JsPrepareSubmissionRequestToJSON(json: any): JsPrepareSubmissionRequest {\n return JsPrepareSubmissionRequestToJSONTyped(json, false);\n}\n\nexport function JsPrepareSubmissionRequestToJSONTyped(value?: JsPrepareSubmissionRequest | null, ignoreDiscriminator: boolean = false): any {\n if (value == null) {\n return value;\n }\n\n return {\n \n 'userId': value['userId'],\n 'commandId': value['commandId'],\n 'commands': value['commands'] == null ? undefined : ((value['commands'] as Array<any>).map(CommandToJSON)),\n 'minLedgerTime': MinLedgerTimeToJSON(value['minLedgerTime']),\n 'actAs': value['actAs'],\n 'readAs': value['readAs'],\n 'disclosedContracts': value['disclosedContracts'] == null ? undefined : ((value['disclosedContracts'] as Array<any>).map(DisclosedContractToJSON)),\n 'synchronizerId': value['synchronizerId'],\n 'packageIdSelectionPreference': value['packageIdSelectionPreference'],\n 'verboseHashing': value['verboseHashing'],\n 'prefetchContractKeys': value['prefetchContractKeys'] == null ? undefined : ((value['prefetchContractKeys'] as Array<any>).map(PrefetchContractKeyToJSON)),\n 'maxRecordTime': value['maxRecordTime'],\n 'estimateTrafficCost': CostEstimationHintsToJSON(value['estimateTrafficCost']),\n };\n}\n\n"]}
@@ -1,4 +1,4 @@
1
- import { UpdateFormatFromJSON, UpdateFormatToJSON } from './P6RLTY4Q.js';
1
+ import { UpdateFormatFromJSON, UpdateFormatToJSON } from './SFKNDB45.js';
2
2
  import { __name } from './VUOMXK5T.js';
3
3
 
4
4
  // src/open-api/models/GetUpdateByIdRequest.ts
@@ -37,5 +37,5 @@ function GetUpdateByIdRequestToJSONTyped(value, ignoreDiscriminator = false) {
37
37
  __name(GetUpdateByIdRequestToJSONTyped, "GetUpdateByIdRequestToJSONTyped");
38
38
 
39
39
  export { GetUpdateByIdRequestFromJSON, GetUpdateByIdRequestFromJSONTyped, GetUpdateByIdRequestToJSON, GetUpdateByIdRequestToJSONTyped, instanceOfGetUpdateByIdRequest };
40
- //# sourceMappingURL=XFM6ATM3.js.map
41
- //# sourceMappingURL=XFM6ATM3.js.map
40
+ //# sourceMappingURL=IQJ5FFO2.js.map
41
+ //# sourceMappingURL=IQJ5FFO2.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/open-api/models/GetUpdateByIdRequest.ts"],"names":["instanceOfGetUpdateByIdRequest","value","undefined","GetUpdateByIdRequestFromJSON","json","GetUpdateByIdRequestFromJSONTyped","ignoreDiscriminator","UpdateFormatFromJSON","GetUpdateByIdRequestToJSON","GetUpdateByIdRequestToJSONTyped","UpdateFormatToJSON"],"mappings":";;;;AAgDO,SAASA,+BAA+BC,KAAAA,EAAa;AACxD,EAAA,IAAI,EAAE,UAAA,IAAcA,KAAAA,CAAAA,IAAUA,MAAM,UAAA,CAAA,KAAgBC,QAAW,OAAO,KAAA;AACtE,EAAA,OAAO,IAAA;AACX;AAHgBF,MAAAA,CAAAA,8BAAAA,EAAAA,gCAAAA,CAAAA;AAKT,SAASG,6BAA6BC,IAAAA,EAAS;AAClD,EAAA,OAAOC,iCAAAA,CAAkCD,IAAM,CAAA;AACnD;AAFgBD,MAAAA,CAAAA,4BAAAA,EAAAA,8BAAAA,CAAAA;AAIT,SAASE,iCAAAA,CAAkCD,MAAWE,mBAAAA,EAA4B;AACrF,EAAA,IAAIF,QAAQ,IAAA,EAAM;AACd,IAAA,OAAOA,IAAAA;AACX,EAAA;AACA,EAAA,OAAO;AAEH,IAAA,UAAA,EAAYA,KAAK,UAAA,CAAA;IACjB,cAAA,EAAgBA,IAAAA,CAAK,cAAA,CAAA,IAAmB,IAAA,GAAOF,SAAYK,oBAAAA,CAAqBH,IAAAA,CAAK,cAAA,CAAe;AACxG,GAAA;AACJ;AATgBC,MAAAA,CAAAA,iCAAAA,EAAAA,mCAAAA,CAAAA;AAWT,SAASG,2BAA2BJ,IAAAA,EAAS;AAChD,EAAA,OAAOK,+BAAAA,CAAgCL,MAAM,KAAA,CAAA;AACjD;AAFgBI,MAAAA,CAAAA,0BAAAA,EAAAA,4BAAAA,CAAAA;AAIT,SAASC,+BAAAA,CAAgCR,KAAAA,EAAqCK,mBAAAA,GAA+B,KAAA,EAAK;AACrH,EAAA,IAAIL,SAAS,IAAA,EAAM;AACf,IAAA,OAAOA,KAAAA;AACX,EAAA;AAEA,EAAA,OAAO;AAEH,IAAA,UAAA,EAAYA,MAAM,UAAA,CAAA;IAClB,cAAA,EAAgBS,kBAAAA,CAAmBT,KAAAA,CAAM,cAAA,CAAe;AAC5D,GAAA;AACJ;AAVgBQ,MAAAA,CAAAA,+BAAAA,EAAAA,iCAAAA,CAAAA","file":"XFM6ATM3.js","sourcesContent":["/* tslint:disable */\n/* eslint-disable */\n/**\n * JSON Ledger API HTTP endpoints\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 3.4.3-SNAPSHOT\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport { mapValues } from '../runtime.js';\nimport type { UpdateFormat } from './UpdateFormat.js';\nimport {\n UpdateFormatFromJSON,\n UpdateFormatFromJSONTyped,\n UpdateFormatToJSON,\n UpdateFormatToJSONTyped,\n} from './UpdateFormat.js';\n\n/**\n * \n * @export\n * @interface GetUpdateByIdRequest\n */\nexport interface GetUpdateByIdRequest {\n /**\n * The ID of a particular update.\n * Must be a valid LedgerString (as described in ``value.proto``).\n * Required\n * @type {string}\n * @memberof GetUpdateByIdRequest\n */\n updateId: string;\n /**\n * \n * @type {UpdateFormat}\n * @memberof GetUpdateByIdRequest\n */\n updateFormat?: UpdateFormat;\n}\n\n/**\n * Check if a given object implements the GetUpdateByIdRequest interface.\n */\nexport function instanceOfGetUpdateByIdRequest(value: object): value is GetUpdateByIdRequest {\n if (!('updateId' in value) || value['updateId'] === undefined) return false;\n return true;\n}\n\nexport function GetUpdateByIdRequestFromJSON(json: any): GetUpdateByIdRequest {\n return GetUpdateByIdRequestFromJSONTyped(json, false);\n}\n\nexport function GetUpdateByIdRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetUpdateByIdRequest {\n if (json == null) {\n return json;\n }\n return {\n \n 'updateId': json['updateId'],\n 'updateFormat': json['updateFormat'] == null ? undefined : UpdateFormatFromJSON(json['updateFormat']),\n };\n}\n\nexport function GetUpdateByIdRequestToJSON(json: any): GetUpdateByIdRequest {\n return GetUpdateByIdRequestToJSONTyped(json, false);\n}\n\nexport function GetUpdateByIdRequestToJSONTyped(value?: GetUpdateByIdRequest | null, ignoreDiscriminator: boolean = false): any {\n if (value == null) {\n return value;\n }\n\n return {\n \n 'updateId': value['updateId'],\n 'updateFormat': UpdateFormatToJSON(value['updateFormat']),\n };\n}\n\n"]}
1
+ {"version":3,"sources":["../src/open-api/models/GetUpdateByIdRequest.ts"],"names":["instanceOfGetUpdateByIdRequest","value","undefined","GetUpdateByIdRequestFromJSON","json","GetUpdateByIdRequestFromJSONTyped","ignoreDiscriminator","UpdateFormatFromJSON","GetUpdateByIdRequestToJSON","GetUpdateByIdRequestToJSONTyped","UpdateFormatToJSON"],"mappings":";;;;AAgDO,SAASA,+BAA+BC,KAAAA,EAAa;AACxD,EAAA,IAAI,EAAE,UAAA,IAAcA,KAAAA,CAAAA,IAAUA,MAAM,UAAA,CAAA,KAAgBC,QAAW,OAAO,KAAA;AACtE,EAAA,OAAO,IAAA;AACX;AAHgBF,MAAAA,CAAAA,8BAAAA,EAAAA,gCAAAA,CAAAA;AAKT,SAASG,6BAA6BC,IAAAA,EAAS;AAClD,EAAA,OAAOC,iCAAAA,CAAkCD,IAAM,CAAA;AACnD;AAFgBD,MAAAA,CAAAA,4BAAAA,EAAAA,8BAAAA,CAAAA;AAIT,SAASE,iCAAAA,CAAkCD,MAAWE,mBAAAA,EAA4B;AACrF,EAAA,IAAIF,QAAQ,IAAA,EAAM;AACd,IAAA,OAAOA,IAAAA;AACX,EAAA;AACA,EAAA,OAAO;AAEH,IAAA,UAAA,EAAYA,KAAK,UAAA,CAAA;IACjB,cAAA,EAAgBA,IAAAA,CAAK,cAAA,CAAA,IAAmB,IAAA,GAAOF,SAAYK,oBAAAA,CAAqBH,IAAAA,CAAK,cAAA,CAAe;AACxG,GAAA;AACJ;AATgBC,MAAAA,CAAAA,iCAAAA,EAAAA,mCAAAA,CAAAA;AAWT,SAASG,2BAA2BJ,IAAAA,EAAS;AAChD,EAAA,OAAOK,+BAAAA,CAAgCL,MAAM,KAAA,CAAA;AACjD;AAFgBI,MAAAA,CAAAA,0BAAAA,EAAAA,4BAAAA,CAAAA;AAIT,SAASC,+BAAAA,CAAgCR,KAAAA,EAAqCK,mBAAAA,GAA+B,KAAA,EAAK;AACrH,EAAA,IAAIL,SAAS,IAAA,EAAM;AACf,IAAA,OAAOA,KAAAA;AACX,EAAA;AAEA,EAAA,OAAO;AAEH,IAAA,UAAA,EAAYA,MAAM,UAAA,CAAA;IAClB,cAAA,EAAgBS,kBAAAA,CAAmBT,KAAAA,CAAM,cAAA,CAAe;AAC5D,GAAA;AACJ;AAVgBQ,MAAAA,CAAAA,+BAAAA,EAAAA,iCAAAA,CAAAA","file":"IQJ5FFO2.js","sourcesContent":["/* tslint:disable */\n/* eslint-disable */\n/**\n * JSON Ledger API HTTP endpoints\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 3.4.3-SNAPSHOT\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport { mapValues } from '../runtime.js';\nimport type { UpdateFormat } from './UpdateFormat.js';\nimport {\n UpdateFormatFromJSON,\n UpdateFormatFromJSONTyped,\n UpdateFormatToJSON,\n UpdateFormatToJSONTyped,\n} from './UpdateFormat.js';\n\n/**\n * \n * @export\n * @interface GetUpdateByIdRequest\n */\nexport interface GetUpdateByIdRequest {\n /**\n * The ID of a particular update.\n * Must be a valid LedgerString (as described in ``value.proto``).\n * Required\n * @type {string}\n * @memberof GetUpdateByIdRequest\n */\n updateId: string;\n /**\n * \n * @type {UpdateFormat}\n * @memberof GetUpdateByIdRequest\n */\n updateFormat?: UpdateFormat;\n}\n\n/**\n * Check if a given object implements the GetUpdateByIdRequest interface.\n */\nexport function instanceOfGetUpdateByIdRequest(value: object): value is GetUpdateByIdRequest {\n if (!('updateId' in value) || value['updateId'] === undefined) return false;\n return true;\n}\n\nexport function GetUpdateByIdRequestFromJSON(json: any): GetUpdateByIdRequest {\n return GetUpdateByIdRequestFromJSONTyped(json, false);\n}\n\nexport function GetUpdateByIdRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetUpdateByIdRequest {\n if (json == null) {\n return json;\n }\n return {\n \n 'updateId': json['updateId'],\n 'updateFormat': json['updateFormat'] == null ? undefined : UpdateFormatFromJSON(json['updateFormat']),\n };\n}\n\nexport function GetUpdateByIdRequestToJSON(json: any): GetUpdateByIdRequest {\n return GetUpdateByIdRequestToJSONTyped(json, false);\n}\n\nexport function GetUpdateByIdRequestToJSONTyped(value?: GetUpdateByIdRequest | null, ignoreDiscriminator: boolean = false): any {\n if (value == null) {\n return value;\n }\n\n return {\n \n 'updateId': value['updateId'],\n 'updateFormat': UpdateFormatToJSON(value['updateFormat']),\n };\n}\n\n"]}
@@ -1,4 +1,4 @@
1
- import { EventFormatFromJSON, EventFormatToJSON } from './UOJYTAJA.js';
1
+ import { EventFormatFromJSON, EventFormatToJSON } from './NZ7JRTF5.js';
2
2
  import { __name } from './VUOMXK5T.js';
3
3
 
4
4
  // src/open-api/models/TransactionFormat.ts
@@ -42,5 +42,5 @@ function TransactionFormatToJSONTyped(value, ignoreDiscriminator = false) {
42
42
  __name(TransactionFormatToJSONTyped, "TransactionFormatToJSONTyped");
43
43
 
44
44
  export { TransactionFormatFromJSON, TransactionFormatFromJSONTyped, TransactionFormatToJSON, TransactionFormatToJSONTyped, TransactionFormatTransactionShapeEnum, instanceOfTransactionFormat };
45
- //# sourceMappingURL=SPMIXP6R.js.map
46
- //# sourceMappingURL=SPMIXP6R.js.map
45
+ //# sourceMappingURL=JDIEWLND.js.map
46
+ //# sourceMappingURL=JDIEWLND.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/open-api/models/TransactionFormat.ts"],"names":["TransactionFormatTransactionShapeEnum","TransactionShapeUnspecified","TransactionShapeAcsDelta","TransactionShapeLedgerEffects","instanceOfTransactionFormat","value","undefined","TransactionFormatFromJSON","json","TransactionFormatFromJSONTyped","ignoreDiscriminator","EventFormatFromJSON","TransactionFormatToJSON","TransactionFormatToJSONTyped","EventFormatToJSON"],"mappings":";;;;AAiDO,IAAMA,qCAAAA,GAAwC;EACjDC,2BAAAA,EAA6B,+BAAA;EAC7BC,wBAAAA,EAA0B,6BAAA;EAC1BC,6BAAAA,EAA+B;AACnC;AAOO,SAASC,4BAA4BC,KAAAA,EAAa;AACrD,EAAA,IAAI,EAAE,kBAAA,IAAsBA,KAAAA,CAAAA,IAAUA,MAAM,kBAAA,CAAA,KAAwBC,QAAW,OAAO,KAAA;AACtF,EAAA,OAAO,IAAA;AACX;AAHgBF,MAAAA,CAAAA,2BAAAA,EAAAA,6BAAAA,CAAAA;AAKT,SAASG,0BAA0BC,IAAAA,EAAS;AAC/C,EAAA,OAAOC,8BAAAA,CAA+BD,IAAM,CAAA;AAChD;AAFgBD,MAAAA,CAAAA,yBAAAA,EAAAA,2BAAAA,CAAAA;AAIT,SAASE,8BAAAA,CAA+BD,MAAWE,mBAAAA,EAA4B;AAClF,EAAA,IAAIF,QAAQ,IAAA,EAAM;AACd,IAAA,OAAOA,IAAAA;AACX,EAAA;AACA,EAAA,OAAO;IAEH,aAAA,EAAeA,IAAAA,CAAK,aAAA,CAAA,IAAkB,IAAA,GAAOF,SAAYK,mBAAAA,CAAoBH,IAAAA,CAAK,aAAA,CAAc,CAAA;AAChG,IAAA,kBAAA,EAAoBA,KAAK,kBAAA;AAC7B,GAAA;AACJ;AATgBC,MAAAA,CAAAA,8BAAAA,EAAAA,gCAAAA,CAAAA;AAWT,SAASG,wBAAwBJ,IAAAA,EAAS;AAC7C,EAAA,OAAOK,4BAAAA,CAA6BL,MAAM,KAAA,CAAA;AAC9C;AAFgBI,MAAAA,CAAAA,uBAAAA,EAAAA,yBAAAA,CAAAA;AAIT,SAASC,4BAAAA,CAA6BR,KAAAA,EAAkCK,mBAAAA,GAA+B,KAAA,EAAK;AAC/G,EAAA,IAAIL,SAAS,IAAA,EAAM;AACf,IAAA,OAAOA,KAAAA;AACX,EAAA;AAEA,EAAA,OAAO;IAEH,aAAA,EAAeS,iBAAAA,CAAkBT,KAAAA,CAAM,aAAA,CAAc,CAAA;AACrD,IAAA,kBAAA,EAAoBA,MAAM,kBAAA;AAC9B,GAAA;AACJ;AAVgBQ,MAAAA,CAAAA,4BAAAA,EAAAA,8BAAAA,CAAAA","file":"SPMIXP6R.js","sourcesContent":["/* tslint:disable */\n/* eslint-disable */\n/**\n * JSON Ledger API HTTP endpoints\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 3.4.3-SNAPSHOT\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport { mapValues } from '../runtime.js';\nimport type { EventFormat } from './EventFormat.js';\nimport {\n EventFormatFromJSON,\n EventFormatFromJSONTyped,\n EventFormatToJSON,\n EventFormatToJSONTyped,\n} from './EventFormat.js';\n\n/**\n * A format that specifies what events to include in Daml transactions\n * and what data to compute and include for them.\n * @export\n * @interface TransactionFormat\n */\nexport interface TransactionFormat {\n /**\n * \n * @type {EventFormat}\n * @memberof TransactionFormat\n */\n eventFormat?: EventFormat;\n /**\n * What transaction shape to use for interpreting the filters of the event format.\n * Required\n * @type {TransactionFormatTransactionShapeEnum}\n * @memberof TransactionFormat\n */\n transactionShape: TransactionFormatTransactionShapeEnum;\n}\n\n\n/**\n * @export\n */\nexport const TransactionFormatTransactionShapeEnum = {\n TransactionShapeUnspecified: 'TRANSACTION_SHAPE_UNSPECIFIED',\n TransactionShapeAcsDelta: 'TRANSACTION_SHAPE_ACS_DELTA',\n TransactionShapeLedgerEffects: 'TRANSACTION_SHAPE_LEDGER_EFFECTS'\n} as const;\nexport type TransactionFormatTransactionShapeEnum = typeof TransactionFormatTransactionShapeEnum[keyof typeof TransactionFormatTransactionShapeEnum];\n\n\n/**\n * Check if a given object implements the TransactionFormat interface.\n */\nexport function instanceOfTransactionFormat(value: object): value is TransactionFormat {\n if (!('transactionShape' in value) || value['transactionShape'] === undefined) return false;\n return true;\n}\n\nexport function TransactionFormatFromJSON(json: any): TransactionFormat {\n return TransactionFormatFromJSONTyped(json, false);\n}\n\nexport function TransactionFormatFromJSONTyped(json: any, ignoreDiscriminator: boolean): TransactionFormat {\n if (json == null) {\n return json;\n }\n return {\n \n 'eventFormat': json['eventFormat'] == null ? undefined : EventFormatFromJSON(json['eventFormat']),\n 'transactionShape': json['transactionShape'],\n };\n}\n\nexport function TransactionFormatToJSON(json: any): TransactionFormat {\n return TransactionFormatToJSONTyped(json, false);\n}\n\nexport function TransactionFormatToJSONTyped(value?: TransactionFormat | null, ignoreDiscriminator: boolean = false): any {\n if (value == null) {\n return value;\n }\n\n return {\n \n 'eventFormat': EventFormatToJSON(value['eventFormat']),\n 'transactionShape': value['transactionShape'],\n };\n}\n\n"]}
1
+ {"version":3,"sources":["../src/open-api/models/TransactionFormat.ts"],"names":["TransactionFormatTransactionShapeEnum","TransactionShapeUnspecified","TransactionShapeAcsDelta","TransactionShapeLedgerEffects","instanceOfTransactionFormat","value","undefined","TransactionFormatFromJSON","json","TransactionFormatFromJSONTyped","ignoreDiscriminator","EventFormatFromJSON","TransactionFormatToJSON","TransactionFormatToJSONTyped","EventFormatToJSON"],"mappings":";;;;AAiDO,IAAMA,qCAAAA,GAAwC;EACjDC,2BAAAA,EAA6B,+BAAA;EAC7BC,wBAAAA,EAA0B,6BAAA;EAC1BC,6BAAAA,EAA+B;AACnC;AAOO,SAASC,4BAA4BC,KAAAA,EAAa;AACrD,EAAA,IAAI,EAAE,kBAAA,IAAsBA,KAAAA,CAAAA,IAAUA,MAAM,kBAAA,CAAA,KAAwBC,QAAW,OAAO,KAAA;AACtF,EAAA,OAAO,IAAA;AACX;AAHgBF,MAAAA,CAAAA,2BAAAA,EAAAA,6BAAAA,CAAAA;AAKT,SAASG,0BAA0BC,IAAAA,EAAS;AAC/C,EAAA,OAAOC,8BAAAA,CAA+BD,IAAM,CAAA;AAChD;AAFgBD,MAAAA,CAAAA,yBAAAA,EAAAA,2BAAAA,CAAAA;AAIT,SAASE,8BAAAA,CAA+BD,MAAWE,mBAAAA,EAA4B;AAClF,EAAA,IAAIF,QAAQ,IAAA,EAAM;AACd,IAAA,OAAOA,IAAAA;AACX,EAAA;AACA,EAAA,OAAO;IAEH,aAAA,EAAeA,IAAAA,CAAK,aAAA,CAAA,IAAkB,IAAA,GAAOF,SAAYK,mBAAAA,CAAoBH,IAAAA,CAAK,aAAA,CAAc,CAAA;AAChG,IAAA,kBAAA,EAAoBA,KAAK,kBAAA;AAC7B,GAAA;AACJ;AATgBC,MAAAA,CAAAA,8BAAAA,EAAAA,gCAAAA,CAAAA;AAWT,SAASG,wBAAwBJ,IAAAA,EAAS;AAC7C,EAAA,OAAOK,4BAAAA,CAA6BL,MAAM,KAAA,CAAA;AAC9C;AAFgBI,MAAAA,CAAAA,uBAAAA,EAAAA,yBAAAA,CAAAA;AAIT,SAASC,4BAAAA,CAA6BR,KAAAA,EAAkCK,mBAAAA,GAA+B,KAAA,EAAK;AAC/G,EAAA,IAAIL,SAAS,IAAA,EAAM;AACf,IAAA,OAAOA,KAAAA;AACX,EAAA;AAEA,EAAA,OAAO;IAEH,aAAA,EAAeS,iBAAAA,CAAkBT,KAAAA,CAAM,aAAA,CAAc,CAAA;AACrD,IAAA,kBAAA,EAAoBA,MAAM,kBAAA;AAC9B,GAAA;AACJ;AAVgBQ,MAAAA,CAAAA,4BAAAA,EAAAA,8BAAAA,CAAAA","file":"JDIEWLND.js","sourcesContent":["/* tslint:disable */\n/* eslint-disable */\n/**\n * JSON Ledger API HTTP endpoints\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 3.4.3-SNAPSHOT\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport { mapValues } from '../runtime.js';\nimport type { EventFormat } from './EventFormat.js';\nimport {\n EventFormatFromJSON,\n EventFormatFromJSONTyped,\n EventFormatToJSON,\n EventFormatToJSONTyped,\n} from './EventFormat.js';\n\n/**\n * A format that specifies what events to include in Daml transactions\n * and what data to compute and include for them.\n * @export\n * @interface TransactionFormat\n */\nexport interface TransactionFormat {\n /**\n * \n * @type {EventFormat}\n * @memberof TransactionFormat\n */\n eventFormat?: EventFormat;\n /**\n * What transaction shape to use for interpreting the filters of the event format.\n * Required\n * @type {TransactionFormatTransactionShapeEnum}\n * @memberof TransactionFormat\n */\n transactionShape: TransactionFormatTransactionShapeEnum;\n}\n\n\n/**\n * @export\n */\nexport const TransactionFormatTransactionShapeEnum = {\n TransactionShapeUnspecified: 'TRANSACTION_SHAPE_UNSPECIFIED',\n TransactionShapeAcsDelta: 'TRANSACTION_SHAPE_ACS_DELTA',\n TransactionShapeLedgerEffects: 'TRANSACTION_SHAPE_LEDGER_EFFECTS'\n} as const;\nexport type TransactionFormatTransactionShapeEnum = typeof TransactionFormatTransactionShapeEnum[keyof typeof TransactionFormatTransactionShapeEnum];\n\n\n/**\n * Check if a given object implements the TransactionFormat interface.\n */\nexport function instanceOfTransactionFormat(value: object): value is TransactionFormat {\n if (!('transactionShape' in value) || value['transactionShape'] === undefined) return false;\n return true;\n}\n\nexport function TransactionFormatFromJSON(json: any): TransactionFormat {\n return TransactionFormatFromJSONTyped(json, false);\n}\n\nexport function TransactionFormatFromJSONTyped(json: any, ignoreDiscriminator: boolean): TransactionFormat {\n if (json == null) {\n return json;\n }\n return {\n \n 'eventFormat': json['eventFormat'] == null ? undefined : EventFormatFromJSON(json['eventFormat']),\n 'transactionShape': json['transactionShape'],\n };\n}\n\nexport function TransactionFormatToJSON(json: any): TransactionFormat {\n return TransactionFormatToJSONTyped(json, false);\n}\n\nexport function TransactionFormatToJSONTyped(value?: TransactionFormat | null, ignoreDiscriminator: boolean = false): any {\n if (value == null) {\n return value;\n }\n\n return {\n \n 'eventFormat': EventFormatToJSON(value['eventFormat']),\n 'transactionShape': value['transactionShape'],\n };\n}\n\n"]}
@@ -1,5 +1,5 @@
1
- import { instanceOfTreeEventOneOf1, TreeEventOneOf1FromJSONTyped, TreeEventOneOf1ToJSON } from './N2H3JQGZ.js';
2
1
  import { instanceOfTreeEventOneOf, TreeEventOneOfFromJSONTyped, TreeEventOneOfToJSON } from './WQJNYC3S.js';
2
+ import { instanceOfTreeEventOneOf1, TreeEventOneOf1FromJSONTyped, TreeEventOneOf1ToJSON } from './N2H3JQGZ.js';
3
3
  import { __name } from './VUOMXK5T.js';
4
4
 
5
5
  // src/open-api/models/TreeEvent.ts
@@ -45,5 +45,5 @@ function TreeEventToJSONTyped(value, ignoreDiscriminator = false) {
45
45
  __name(TreeEventToJSONTyped, "TreeEventToJSONTyped");
46
46
 
47
47
  export { TreeEventFromJSON, TreeEventFromJSONTyped, TreeEventToJSON, TreeEventToJSONTyped };
48
- //# sourceMappingURL=J26F3LZM.js.map
49
- //# sourceMappingURL=J26F3LZM.js.map
48
+ //# sourceMappingURL=K3RKYYAJ.js.map
49
+ //# sourceMappingURL=K3RKYYAJ.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/open-api/models/TreeEvent.ts"],"names":["TreeEventFromJSON","json","TreeEventFromJSONTyped","ignoreDiscriminator","instanceOfTreeEventOneOf","TreeEventOneOfFromJSONTyped","instanceOfTreeEventOneOf1","TreeEventOneOf1FromJSONTyped","TreeEventToJSON","TreeEventToJSONTyped","value","TreeEventOneOfToJSON","TreeEventOneOf1ToJSON"],"mappings":";;;;;AA2CO,SAASA,kBAAkBC,IAAAA,EAAS;AACvC,EAAA,OAAOC,sBAAAA,CAAuBD,IAAM,CAAA;AACxC;AAFgBD,MAAAA,CAAAA,iBAAAA,EAAAA,mBAAAA,CAAAA;AAIT,SAASE,sBAAAA,CAAuBD,MAAWE,mBAAAA,EAA4B;AAC1E,EAAA,IAAIF,QAAQ,IAAA,EAAM;AACd,IAAA,OAAOA,IAAAA;AACX,EAAA;AACA,EAAA,IAAI,OAAOA,SAAS,QAAA,EAAU;AAC1B,IAAA,OAAOA,IAAAA;AACX,EAAA;AACA,EAAA,IAAIG,wBAAAA,CAAyBH,IAAAA,CAAAA,EAAO;AAChC,IAAA,OAAOI,2BAAAA,CAA4BJ,MAAM,IAAA,CAAA;AAC7C,EAAA;AACA,EAAA,IAAIK,yBAAAA,CAA0BL,IAAAA,CAAAA,EAAO;AACjC,IAAA,OAAOM,4BAAAA,CAA6BN,MAAM,IAAA,CAAA;AAC9C,EAAA;AACA,EAAA,OAAO,EAAC;AACZ;AAdgBC,MAAAA,CAAAA,sBAAAA,EAAAA,wBAAAA,CAAAA;AAgBT,SAASM,gBAAgBP,IAAAA,EAAS;AACrC,EAAA,OAAOQ,oBAAAA,CAAqBR,MAAM,KAAA,CAAA;AACtC;AAFgBO,MAAAA,CAAAA,eAAAA,EAAAA,iBAAAA,CAAAA;AAIT,SAASC,oBAAAA,CAAqBC,KAAAA,EAA0BP,mBAAAA,GAA+B,KAAA,EAAK;AAC/F,EAAA,IAAIO,SAAS,IAAA,EAAM;AACf,IAAA,OAAOA,KAAAA;AACX,EAAA;AACA,EAAA,IAAI,OAAOA,UAAU,QAAA,EAAU;AAC3B,IAAA,OAAOA,KAAAA;AACX,EAAA;AACA,EAAA,IAAIN,wBAAAA,CAAyBM,KAAAA,CAAAA,EAAQ;AACjC,IAAA,OAAOC,qBAAqBD,KAAAA,CAAAA;AAChC,EAAA;AACA,EAAA,IAAIJ,yBAAAA,CAA0BI,KAAAA,CAAAA,EAAQ;AAClC,IAAA,OAAOE,sBAAsBF,KAAAA,CAAAA;AACjC,EAAA;AACA,EAAA,OAAO,EAAC;AACZ;AAdgBD,MAAAA,CAAAA,oBAAAA,EAAAA,sBAAAA,CAAAA","file":"J26F3LZM.js","sourcesContent":["/* tslint:disable */\n/* eslint-disable */\n/**\n * JSON Ledger API HTTP endpoints\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 3.4.3-SNAPSHOT\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport type { TreeEventOneOf } from './TreeEventOneOf.js';\nimport {\n instanceOfTreeEventOneOf,\n TreeEventOneOfFromJSON,\n TreeEventOneOfFromJSONTyped,\n TreeEventOneOfToJSON,\n} from './TreeEventOneOf.js';\nimport type { TreeEventOneOf1 } from './TreeEventOneOf1.js';\nimport {\n instanceOfTreeEventOneOf1,\n TreeEventOneOf1FromJSON,\n TreeEventOneOf1FromJSONTyped,\n TreeEventOneOf1ToJSON,\n} from './TreeEventOneOf1.js';\n\n/**\n * @type TreeEvent\n * Provided for backwards compatibility, it will be removed in the Canton version 3.5.0.\n * Each tree event message type below contains a ``witness_parties`` field which\n * indicates the subset of the requested parties that can see the event\n * in question.\n * \n * Note that transaction trees might contain events with\n * _no_ witness parties, which were included simply because they were\n * children of events which have witnesses.\n * @export\n */\nexport type TreeEvent = TreeEventOneOf | TreeEventOneOf1;\n\nexport function TreeEventFromJSON(json: any): TreeEvent {\n return TreeEventFromJSONTyped(json, false);\n}\n\nexport function TreeEventFromJSONTyped(json: any, ignoreDiscriminator: boolean): TreeEvent {\n if (json == null) {\n return json;\n }\n if (typeof json !== 'object') {\n return json;\n }\n if (instanceOfTreeEventOneOf(json)) {\n return TreeEventOneOfFromJSONTyped(json, true);\n }\n if (instanceOfTreeEventOneOf1(json)) {\n return TreeEventOneOf1FromJSONTyped(json, true);\n }\n return {} as any;\n}\n\nexport function TreeEventToJSON(json: any): any {\n return TreeEventToJSONTyped(json, false);\n}\n\nexport function TreeEventToJSONTyped(value?: TreeEvent | null, ignoreDiscriminator: boolean = false): any {\n if (value == null) {\n return value;\n }\n if (typeof value !== 'object') {\n return value;\n }\n if (instanceOfTreeEventOneOf(value)) {\n return TreeEventOneOfToJSON(value as TreeEventOneOf);\n }\n if (instanceOfTreeEventOneOf1(value)) {\n return TreeEventOneOf1ToJSON(value as TreeEventOneOf1);\n }\n return {};\n}\n\n"]}
1
+ {"version":3,"sources":["../src/open-api/models/TreeEvent.ts"],"names":["TreeEventFromJSON","json","TreeEventFromJSONTyped","ignoreDiscriminator","instanceOfTreeEventOneOf","TreeEventOneOfFromJSONTyped","instanceOfTreeEventOneOf1","TreeEventOneOf1FromJSONTyped","TreeEventToJSON","TreeEventToJSONTyped","value","TreeEventOneOfToJSON","TreeEventOneOf1ToJSON"],"mappings":";;;;;AA2CO,SAASA,kBAAkBC,IAAAA,EAAS;AACvC,EAAA,OAAOC,sBAAAA,CAAuBD,IAAM,CAAA;AACxC;AAFgBD,MAAAA,CAAAA,iBAAAA,EAAAA,mBAAAA,CAAAA;AAIT,SAASE,sBAAAA,CAAuBD,MAAWE,mBAAAA,EAA4B;AAC1E,EAAA,IAAIF,QAAQ,IAAA,EAAM;AACd,IAAA,OAAOA,IAAAA;AACX,EAAA;AACA,EAAA,IAAI,OAAOA,SAAS,QAAA,EAAU;AAC1B,IAAA,OAAOA,IAAAA;AACX,EAAA;AACA,EAAA,IAAIG,wBAAAA,CAAyBH,IAAAA,CAAAA,EAAO;AAChC,IAAA,OAAOI,2BAAAA,CAA4BJ,MAAM,IAAA,CAAA;AAC7C,EAAA;AACA,EAAA,IAAIK,yBAAAA,CAA0BL,IAAAA,CAAAA,EAAO;AACjC,IAAA,OAAOM,4BAAAA,CAA6BN,MAAM,IAAA,CAAA;AAC9C,EAAA;AACA,EAAA,OAAO,EAAC;AACZ;AAdgBC,MAAAA,CAAAA,sBAAAA,EAAAA,wBAAAA,CAAAA;AAgBT,SAASM,gBAAgBP,IAAAA,EAAS;AACrC,EAAA,OAAOQ,oBAAAA,CAAqBR,MAAM,KAAA,CAAA;AACtC;AAFgBO,MAAAA,CAAAA,eAAAA,EAAAA,iBAAAA,CAAAA;AAIT,SAASC,oBAAAA,CAAqBC,KAAAA,EAA0BP,mBAAAA,GAA+B,KAAA,EAAK;AAC/F,EAAA,IAAIO,SAAS,IAAA,EAAM;AACf,IAAA,OAAOA,KAAAA;AACX,EAAA;AACA,EAAA,IAAI,OAAOA,UAAU,QAAA,EAAU;AAC3B,IAAA,OAAOA,KAAAA;AACX,EAAA;AACA,EAAA,IAAIN,wBAAAA,CAAyBM,KAAAA,CAAAA,EAAQ;AACjC,IAAA,OAAOC,qBAAqBD,KAAAA,CAAAA;AAChC,EAAA;AACA,EAAA,IAAIJ,yBAAAA,CAA0BI,KAAAA,CAAAA,EAAQ;AAClC,IAAA,OAAOE,sBAAsBF,KAAAA,CAAAA;AACjC,EAAA;AACA,EAAA,OAAO,EAAC;AACZ;AAdgBD,MAAAA,CAAAA,oBAAAA,EAAAA,sBAAAA,CAAAA","file":"K3RKYYAJ.js","sourcesContent":["/* tslint:disable */\n/* eslint-disable */\n/**\n * JSON Ledger API HTTP endpoints\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 3.4.3-SNAPSHOT\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport type { TreeEventOneOf } from './TreeEventOneOf.js';\nimport {\n instanceOfTreeEventOneOf,\n TreeEventOneOfFromJSON,\n TreeEventOneOfFromJSONTyped,\n TreeEventOneOfToJSON,\n} from './TreeEventOneOf.js';\nimport type { TreeEventOneOf1 } from './TreeEventOneOf1.js';\nimport {\n instanceOfTreeEventOneOf1,\n TreeEventOneOf1FromJSON,\n TreeEventOneOf1FromJSONTyped,\n TreeEventOneOf1ToJSON,\n} from './TreeEventOneOf1.js';\n\n/**\n * @type TreeEvent\n * Provided for backwards compatibility, it will be removed in the Canton version 3.5.0.\n * Each tree event message type below contains a ``witness_parties`` field which\n * indicates the subset of the requested parties that can see the event\n * in question.\n * \n * Note that transaction trees might contain events with\n * _no_ witness parties, which were included simply because they were\n * children of events which have witnesses.\n * @export\n */\nexport type TreeEvent = TreeEventOneOf | TreeEventOneOf1;\n\nexport function TreeEventFromJSON(json: any): TreeEvent {\n return TreeEventFromJSONTyped(json, false);\n}\n\nexport function TreeEventFromJSONTyped(json: any, ignoreDiscriminator: boolean): TreeEvent {\n if (json == null) {\n return json;\n }\n if (typeof json !== 'object') {\n return json;\n }\n if (instanceOfTreeEventOneOf(json)) {\n return TreeEventOneOfFromJSONTyped(json, true);\n }\n if (instanceOfTreeEventOneOf1(json)) {\n return TreeEventOneOf1FromJSONTyped(json, true);\n }\n return {} as any;\n}\n\nexport function TreeEventToJSON(json: any): any {\n return TreeEventToJSONTyped(json, false);\n}\n\nexport function TreeEventToJSONTyped(value?: TreeEvent | null, ignoreDiscriminator: boolean = false): any {\n if (value == null) {\n return value;\n }\n if (typeof value !== 'object') {\n return value;\n }\n if (instanceOfTreeEventOneOf(value)) {\n return TreeEventOneOfToJSON(value as TreeEventOneOf);\n }\n if (instanceOfTreeEventOneOf1(value)) {\n return TreeEventOneOf1ToJSON(value as TreeEventOneOf1);\n }\n return {};\n}\n\n"]}
@@ -1,4 +1,4 @@
1
- import { JsContractEntryFromJSON, JsContractEntryToJSON } from './XINHRIWA.js';
1
+ import { JsContractEntryFromJSON, JsContractEntryToJSON } from './5BIIW37A.js';
2
2
  import { __name } from './VUOMXK5T.js';
3
3
 
4
4
  // src/open-api/models/JsGetActiveContractsResponse.ts
@@ -38,5 +38,5 @@ function JsGetActiveContractsResponseToJSONTyped(value, ignoreDiscriminator = fa
38
38
  __name(JsGetActiveContractsResponseToJSONTyped, "JsGetActiveContractsResponseToJSONTyped");
39
39
 
40
40
  export { JsGetActiveContractsResponseFromJSON, JsGetActiveContractsResponseFromJSONTyped, JsGetActiveContractsResponseToJSON, JsGetActiveContractsResponseToJSONTyped, instanceOfJsGetActiveContractsResponse };
41
- //# sourceMappingURL=34I4OGQK.js.map
42
- //# sourceMappingURL=34I4OGQK.js.map
41
+ //# sourceMappingURL=KA2OXQFA.js.map
42
+ //# sourceMappingURL=KA2OXQFA.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/open-api/models/JsGetActiveContractsResponse.ts"],"names":["instanceOfJsGetActiveContractsResponse","value","undefined","JsGetActiveContractsResponseFromJSON","json","JsGetActiveContractsResponseFromJSONTyped","ignoreDiscriminator","JsContractEntryFromJSON","JsGetActiveContractsResponseToJSON","JsGetActiveContractsResponseToJSONTyped","JsContractEntryToJSON"],"mappings":";;;;AAiDO,SAASA,uCAAuCC,KAAAA,EAAa;AAChE,EAAA,IAAI,EAAE,YAAA,IAAgBA,KAAAA,CAAAA,IAAUA,MAAM,YAAA,CAAA,KAAkBC,QAAW,OAAO,KAAA;AAC1E,EAAA,IAAI,EAAE,eAAA,IAAmBD,KAAAA,CAAAA,IAAUA,MAAM,eAAA,CAAA,KAAqBC,QAAW,OAAO,KAAA;AAChF,EAAA,OAAO,IAAA;AACX;AAJgBF,MAAAA,CAAAA,sCAAAA,EAAAA,wCAAAA,CAAAA;AAMT,SAASG,qCAAqCC,IAAAA,EAAS;AAC1D,EAAA,OAAOC,yCAAAA,CAA0CD,IAAM,CAAA;AAC3D;AAFgBD,MAAAA,CAAAA,oCAAAA,EAAAA,sCAAAA,CAAAA;AAIT,SAASE,yCAAAA,CAA0CD,MAAWE,mBAAAA,EAA4B;AAC7F,EAAA,IAAIF,QAAQ,IAAA,EAAM;AACd,IAAA,OAAOA,IAAAA;AACX,EAAA;AACA,EAAA,OAAO;AAEH,IAAA,YAAA,EAAcA,KAAK,YAAA,CAAA;IACnB,eAAA,EAAiBG,uBAAAA,CAAwBH,IAAAA,CAAK,eAAA,CAAgB;AAClE,GAAA;AACJ;AATgBC,MAAAA,CAAAA,yCAAAA,EAAAA,2CAAAA,CAAAA;AAWT,SAASG,mCAAmCJ,IAAAA,EAAS;AACxD,EAAA,OAAOK,uCAAAA,CAAwCL,MAAM,KAAA,CAAA;AACzD;AAFgBI,MAAAA,CAAAA,kCAAAA,EAAAA,oCAAAA,CAAAA;AAIT,SAASC,uCAAAA,CAAwCR,KAAAA,EAA6CK,mBAAAA,GAA+B,KAAA,EAAK;AACrI,EAAA,IAAIL,SAAS,IAAA,EAAM;AACf,IAAA,OAAOA,KAAAA;AACX,EAAA;AAEA,EAAA,OAAO;AAEH,IAAA,YAAA,EAAcA,MAAM,YAAA,CAAA;IACpB,eAAA,EAAiBS,qBAAAA,CAAsBT,KAAAA,CAAM,eAAA,CAAgB;AACjE,GAAA;AACJ;AAVgBQ,MAAAA,CAAAA,uCAAAA,EAAAA,yCAAAA,CAAAA","file":"34I4OGQK.js","sourcesContent":["/* tslint:disable */\n/* eslint-disable */\n/**\n * JSON Ledger API HTTP endpoints\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 3.4.3-SNAPSHOT\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport { mapValues } from '../runtime.js';\nimport type { JsContractEntry } from './JsContractEntry.js';\nimport {\n JsContractEntryFromJSON,\n JsContractEntryFromJSONTyped,\n JsContractEntryToJSON,\n JsContractEntryToJSONTyped,\n} from './JsContractEntry.js';\n\n/**\n * \n * @export\n * @interface JsGetActiveContractsResponse\n */\nexport interface JsGetActiveContractsResponse {\n /**\n * The workflow ID used in command submission which corresponds to the contract_entry. Only set if\n * the ``workflow_id`` for the command was set.\n * Must be a valid LedgerString (as described in ``value.proto``).\n * Optional\n * @type {string}\n * @memberof JsGetActiveContractsResponse\n */\n workflowId: string;\n /**\n * \n * @type {JsContractEntry}\n * @memberof JsGetActiveContractsResponse\n */\n contractEntry: JsContractEntry;\n}\n\n/**\n * Check if a given object implements the JsGetActiveContractsResponse interface.\n */\nexport function instanceOfJsGetActiveContractsResponse(value: object): value is JsGetActiveContractsResponse {\n if (!('workflowId' in value) || value['workflowId'] === undefined) return false;\n if (!('contractEntry' in value) || value['contractEntry'] === undefined) return false;\n return true;\n}\n\nexport function JsGetActiveContractsResponseFromJSON(json: any): JsGetActiveContractsResponse {\n return JsGetActiveContractsResponseFromJSONTyped(json, false);\n}\n\nexport function JsGetActiveContractsResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): JsGetActiveContractsResponse {\n if (json == null) {\n return json;\n }\n return {\n \n 'workflowId': json['workflowId'],\n 'contractEntry': JsContractEntryFromJSON(json['contractEntry']),\n };\n}\n\nexport function JsGetActiveContractsResponseToJSON(json: any): JsGetActiveContractsResponse {\n return JsGetActiveContractsResponseToJSONTyped(json, false);\n}\n\nexport function JsGetActiveContractsResponseToJSONTyped(value?: JsGetActiveContractsResponse | null, ignoreDiscriminator: boolean = false): any {\n if (value == null) {\n return value;\n }\n\n return {\n \n 'workflowId': value['workflowId'],\n 'contractEntry': JsContractEntryToJSON(value['contractEntry']),\n };\n}\n\n"]}
1
+ {"version":3,"sources":["../src/open-api/models/JsGetActiveContractsResponse.ts"],"names":["instanceOfJsGetActiveContractsResponse","value","undefined","JsGetActiveContractsResponseFromJSON","json","JsGetActiveContractsResponseFromJSONTyped","ignoreDiscriminator","JsContractEntryFromJSON","JsGetActiveContractsResponseToJSON","JsGetActiveContractsResponseToJSONTyped","JsContractEntryToJSON"],"mappings":";;;;AAiDO,SAASA,uCAAuCC,KAAAA,EAAa;AAChE,EAAA,IAAI,EAAE,YAAA,IAAgBA,KAAAA,CAAAA,IAAUA,MAAM,YAAA,CAAA,KAAkBC,QAAW,OAAO,KAAA;AAC1E,EAAA,IAAI,EAAE,eAAA,IAAmBD,KAAAA,CAAAA,IAAUA,MAAM,eAAA,CAAA,KAAqBC,QAAW,OAAO,KAAA;AAChF,EAAA,OAAO,IAAA;AACX;AAJgBF,MAAAA,CAAAA,sCAAAA,EAAAA,wCAAAA,CAAAA;AAMT,SAASG,qCAAqCC,IAAAA,EAAS;AAC1D,EAAA,OAAOC,yCAAAA,CAA0CD,IAAM,CAAA;AAC3D;AAFgBD,MAAAA,CAAAA,oCAAAA,EAAAA,sCAAAA,CAAAA;AAIT,SAASE,yCAAAA,CAA0CD,MAAWE,mBAAAA,EAA4B;AAC7F,EAAA,IAAIF,QAAQ,IAAA,EAAM;AACd,IAAA,OAAOA,IAAAA;AACX,EAAA;AACA,EAAA,OAAO;AAEH,IAAA,YAAA,EAAcA,KAAK,YAAA,CAAA;IACnB,eAAA,EAAiBG,uBAAAA,CAAwBH,IAAAA,CAAK,eAAA,CAAgB;AAClE,GAAA;AACJ;AATgBC,MAAAA,CAAAA,yCAAAA,EAAAA,2CAAAA,CAAAA;AAWT,SAASG,mCAAmCJ,IAAAA,EAAS;AACxD,EAAA,OAAOK,uCAAAA,CAAwCL,MAAM,KAAA,CAAA;AACzD;AAFgBI,MAAAA,CAAAA,kCAAAA,EAAAA,oCAAAA,CAAAA;AAIT,SAASC,uCAAAA,CAAwCR,KAAAA,EAA6CK,mBAAAA,GAA+B,KAAA,EAAK;AACrI,EAAA,IAAIL,SAAS,IAAA,EAAM;AACf,IAAA,OAAOA,KAAAA;AACX,EAAA;AAEA,EAAA,OAAO;AAEH,IAAA,YAAA,EAAcA,MAAM,YAAA,CAAA;IACpB,eAAA,EAAiBS,qBAAAA,CAAsBT,KAAAA,CAAM,eAAA,CAAgB;AACjE,GAAA;AACJ;AAVgBQ,MAAAA,CAAAA,uCAAAA,EAAAA,yCAAAA,CAAAA","file":"KA2OXQFA.js","sourcesContent":["/* tslint:disable */\n/* eslint-disable */\n/**\n * JSON Ledger API HTTP endpoints\n * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)\n *\n * The version of the OpenAPI document: 3.4.3-SNAPSHOT\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nimport { mapValues } from '../runtime.js';\nimport type { JsContractEntry } from './JsContractEntry.js';\nimport {\n JsContractEntryFromJSON,\n JsContractEntryFromJSONTyped,\n JsContractEntryToJSON,\n JsContractEntryToJSONTyped,\n} from './JsContractEntry.js';\n\n/**\n * \n * @export\n * @interface JsGetActiveContractsResponse\n */\nexport interface JsGetActiveContractsResponse {\n /**\n * The workflow ID used in command submission which corresponds to the contract_entry. Only set if\n * the ``workflow_id`` for the command was set.\n * Must be a valid LedgerString (as described in ``value.proto``).\n * Optional\n * @type {string}\n * @memberof JsGetActiveContractsResponse\n */\n workflowId: string;\n /**\n * \n * @type {JsContractEntry}\n * @memberof JsGetActiveContractsResponse\n */\n contractEntry: JsContractEntry;\n}\n\n/**\n * Check if a given object implements the JsGetActiveContractsResponse interface.\n */\nexport function instanceOfJsGetActiveContractsResponse(value: object): value is JsGetActiveContractsResponse {\n if (!('workflowId' in value) || value['workflowId'] === undefined) return false;\n if (!('contractEntry' in value) || value['contractEntry'] === undefined) return false;\n return true;\n}\n\nexport function JsGetActiveContractsResponseFromJSON(json: any): JsGetActiveContractsResponse {\n return JsGetActiveContractsResponseFromJSONTyped(json, false);\n}\n\nexport function JsGetActiveContractsResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): JsGetActiveContractsResponse {\n if (json == null) {\n return json;\n }\n return {\n \n 'workflowId': json['workflowId'],\n 'contractEntry': JsContractEntryFromJSON(json['contractEntry']),\n };\n}\n\nexport function JsGetActiveContractsResponseToJSON(json: any): JsGetActiveContractsResponse {\n return JsGetActiveContractsResponseToJSONTyped(json, false);\n}\n\nexport function JsGetActiveContractsResponseToJSONTyped(value?: JsGetActiveContractsResponse | null, ignoreDiscriminator: boolean = false): any {\n if (value == null) {\n return value;\n }\n\n return {\n \n 'workflowId': value['workflowId'],\n 'contractEntry': JsContractEntryToJSON(value['contractEntry']),\n };\n}\n\n"]}
@@ -1,4 +1,4 @@
1
- import { DefaultApi } from './B42Y5JOK.js';
1
+ import { DefaultApi } from './GJFARMTH.js';
2
2
  import { JsActiveContractFromJSON } from './NIN7X4D3.js';
3
3
  import { CantonProtocolError, CantonTransportError } from './A7Z5O57E.js';
4
4
  import { __name } from './VUOMXK5T.js';
@@ -740,5 +740,5 @@ var CantonClient = class {
740
740
  };
741
741
 
742
742
  export { CantonClient };
743
- //# sourceMappingURL=HT5EFVYN.js.map
744
- //# sourceMappingURL=HT5EFVYN.js.map
743
+ //# sourceMappingURL=KN7C2KMD.js.map
744
+ //# sourceMappingURL=KN7C2KMD.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/client/canton-client.ts"],"names":["CantonClient","config","userId","DefaultApi","obj","key","undefined","pascal","charAt","toUpperCase","slice","camel","toLowerCase","err","resp","response","json","catch","context","body","CantonProtocolError","JSON","stringify","parties","includeCreatedEventBlob","Object","fromEntries","map","p","cumulative","identifierFilter","wildcardFilter","value","event","contractId","templateId","createdEventBlob","preparedTransaction","preparedTransactionHash","hashingSchemeVersion","connectedSynchronizers","getV2StateConnectedSynchronizers","synchronizers","s","synchronizerId","filter","id","once","CantonTransportError","uploadDar","dar","opts","bytes","byteOffset","byteLength","buffer","Blob","type","request","vetAllPackages","postV2Dars","skipIfVetted","code","skipped","reason","details","validateDar","then","postV2DarsValidate","listParties","getV2Parties","pageSize","pageToken","partyDetails","party","nextPageToken","allocateParty","partyIdHint","postV2Parties","allocatePartyRequest","identityProviderId","getPackageId","packageName","getPreferredPackagesRequest","packageVettingRequirements","postV2InteractiveSubmissionPreferredPackages","packageRef","packageReferences","find","ref","packageId","submit","actors","commands","commandId","randomUUID","ledgerEndResponse","getV2StateLedgerEnd","completionOffset","offset","jsCommands","actAs","readAs","disclosedContracts","postV2CommandsAsyncSubmit","waitForCommand","timeoutMs","poll","limit","streamIdleTimeoutMs","initialBackoffMs","backoffMs","initial","maxBackoffMs","max","beginExclusive","currentBackoff","deadline","Date","now","completionStreamRequest","rawResponse","postV2CommandsCompletionsRaw","responseText","raw","text","completions","parse","item","normalized","completionResponse","offsetCheckpoint","checkpoint","checkpointOffset","Math","completionWrapper","completion","completionCommandId","status","updateId","error","message","remainingTime","sleepTime","min","Promise","resolve","setTimeout","lastCheckedOffset","getEventsByContractIdRequest","eventFormat","filtersByParty","verbose","postV2EventsEventsByContractId","archived","created","createdEvent","createDisclosure","validated","fetchContractById","fetchEventsByContractId","archivedEvent","fetchTransactionByUpdateId","postV2UpdatesUpdateByIdRaw","getUpdateByIdRequest","updateFormat","updateResponse","fetchTransactionByOffset","postV2UpdatesUpdateByOffsetRaw","getUpdateByOffsetRequest","prepareForSigning","jsPrepareSubmissionRequest","verboseHashing","packageIdSelectionPreference","postV2InteractiveSubmissionPrepare","submitSigned","prepared","signatures","jsExecuteSubmissionRequest","partySignatures","sig","format","signature","signedBy","signingAlgorithmSpec","deduplicationPeriod","deduplicationDuration","seconds","nanos","submissionId","postV2InteractiveSubmissionExecute","getLedgerEndOffset","queryActiveContracts","queryActiveContractsByParties","templateIds","cumulativeFilter","postV2StateActiveContractsRaw","getActiveContractsRequest","activeAtOffset","rawJson","contractEntry","JsActiveContract","contract","JsActiveContractFromJSON","getUpdates","endInclusive","postV2UpdatesRaw","getUpdatesRequest","updateResponses","update","length","templateFilter","includeTransactions","transactionShape","notFoundMessage","Transaction"],"mappings":"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","file":"HT5EFVYN.js","sourcesContent":["import type { ContractId } from '@daml/types';\nimport { once } from 'es-toolkit';\nimport { randomUUID } from 'node:crypto';\n\nimport { CantonProtocolError, CantonTransportError } from '../errors';\nimport {\n DefaultApi,\n type PostV2CommandsAsyncSubmitRequest,\n type PostV2CommandsCompletionsRequest,\n type PostV2DarsRequest,\n type PostV2DarsValidateRequest,\n type PostV2EventsEventsByContractIdRequest,\n type PostV2InteractiveSubmissionExecuteRequest,\n type PostV2InteractiveSubmissionPreferredPackagesRequest,\n type PostV2InteractiveSubmissionPrepareRequest,\n} from '../open-api/apis/DefaultApi';\nimport {\n type ArchivedEvent,\n type Command,\n type CreatedEvent,\n type CumulativeFilter,\n type DisclosedContract,\n type JsActiveContract,\n JsActiveContractFromJSON,\n} from '../open-api/models';\nimport type { Configuration } from '../open-api/runtime';\nimport type {\n ExternalSignature,\n PreparedTransaction,\n SubmitActors,\n SubmitResult,\n WaitOptions,\n WaitResult,\n} from '../types';\nimport type {\n CantonTransaction,\n CantonUpdate,\n CantonUpdateResponse,\n ICantonClient,\n} from './interface';\n\n/**\n * CantonClient - The engine layer for Canton ledger operations.\n *\n * Responsibilities:\n * - Synchronizer discovery and caching\n * - Command submission and completion waiting\n * - Disclosed contract building\n * - JSON normalization (temporary workaround)\n *\n * This class uses composition (not inheritance) to wrap the generated API,\n * exposing only the minimal surface needed for ledger app operations.\n */\nexport class CantonClient implements ICantonClient {\n readonly #api: DefaultApi;\n readonly #userId: string;\n\n constructor(config: Configuration, userId: string = 'participant_admin') {\n this.#api = new DefaultApi(config);\n this.#userId = userId;\n }\n\n /**\n * Get a property from an object, trying PascalCase first then camelCase.\n * Canton API returns PascalCase but OpenAPI expects camelCase.\n */\n #getField<T>(obj: Record<string, unknown> | undefined, key: string): T | undefined {\n if (!obj) return undefined;\n const pascal = key.charAt(0).toUpperCase() + key.slice(1);\n const camel = key.charAt(0).toLowerCase() + key.slice(1);\n return (obj[pascal] ?? obj[camel]) as T | undefined;\n }\n\n /**\n * Try to extract error body from API response.\n * Returns the parsed body or null if extraction fails.\n */\n async #extractErrorBody(err: unknown): Promise<Record<string, unknown> | null> {\n if (err && typeof err === 'object' && 'response' in err) {\n const resp = (err as { response: Response }).response;\n if (resp && typeof resp.json === 'function') {\n return (await resp.json().catch(() => null)) as Record<string, unknown> | null;\n }\n }\n return null;\n }\n\n /**\n * Throw a CantonProtocolError with extracted error details from API response.\n * Handles the common pattern of extracting JSON error details from failed requests.\n *\n * @param err - The caught error\n * @param context - Description of the operation (e.g., \"DAR upload\", \"Party allocation\")\n * @throws CantonProtocolError with extracted error details, or re-throws original error\n */\n async #throwApiError(err: unknown, context: string): Promise<never> {\n const body = await this.#extractErrorBody(err);\n if (body) {\n throw new CantonProtocolError(`${context} failed: ${JSON.stringify(body)}`);\n }\n throw err;\n }\n\n /**\n * Build party-based filter object for event queries.\n */\n #buildPartyFilters(parties: string[], includeCreatedEventBlob: boolean) {\n return Object.fromEntries(\n parties.map((p) => [\n p,\n {\n cumulative: [\n {\n identifierFilter: {\n wildcardFilter: { value: { includeCreatedEventBlob } },\n },\n },\n ],\n },\n ]),\n );\n }\n\n /**\n * Validate and extract disclosure fields from a CreatedEvent.\n */\n #validateDisclosureEvent(\n event: { templateId?: string; contractId?: string; createdEventBlob?: string },\n contractId: ContractId<unknown>,\n ): { templateId: string; contractId: string; createdEventBlob: string } {\n if (!event.templateId) {\n throw new CantonProtocolError('Disclosure response missing templateId', {\n contractId,\n });\n }\n if (!event.contractId) {\n throw new CantonProtocolError('Disclosure response missing contractId', {\n contractId,\n });\n }\n if (!event.createdEventBlob) {\n throw new CantonProtocolError('Disclosure response missing createdEventBlob', {\n contractId,\n });\n }\n return {\n templateId: event.templateId,\n contractId: event.contractId,\n createdEventBlob: event.createdEventBlob,\n };\n }\n\n /**\n * Validate and extract prepared transaction fields from a prepare response.\n */\n #validatePrepareResponse(response: {\n preparedTransaction?: string;\n preparedTransactionHash?: string;\n hashingSchemeVersion?: string;\n }): {\n preparedTransaction: string;\n preparedTransactionHash: string;\n hashingSchemeVersion: string;\n } {\n if (!response.preparedTransaction) {\n throw new CantonProtocolError('Prepare response missing preparedTransaction');\n }\n if (!response.preparedTransactionHash) {\n throw new CantonProtocolError('Prepare response missing preparedTransactionHash');\n }\n if (!response.hashingSchemeVersion) {\n throw new CantonProtocolError('Prepare response missing hashingSchemeVersion');\n }\n return {\n preparedTransaction: response.preparedTransaction,\n preparedTransactionHash: response.preparedTransactionHash,\n hashingSchemeVersion: response.hashingSchemeVersion,\n };\n }\n\n // ─────────────────────────────────────────────────────────────────────────\n // Synchronizer Discovery\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * Returns all connected synchronizer IDs.\n */\n async connectedSynchronizers(): Promise<string[]> {\n const response = await this.#api.getV2StateConnectedSynchronizers();\n const synchronizers = response.connectedSynchronizers ?? [];\n return synchronizers.map((s) => s.synchronizerId).filter((id): id is string => !!id);\n }\n\n /**\n * Internal: ensures we have a cached synchronizer ID, fetching if needed.\n */\n #ensureSynchronizerId = once(async (): Promise<string> => {\n const [id] = await this.connectedSynchronizers();\n\n if (!id) {\n throw new CantonTransportError('No connected synchronizers found');\n }\n\n return id;\n });\n\n // ─────────────────────────────────────────────────────────────────────────\n // DAR Upload / Validation\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * Upload a DAR (Daml Archive) to the participant node.\n *\n * @param dar - Raw DAR bytes.\n * @param opts.vetAllPackages - Whether to vet all packages in the DAR.\n * @param opts.synchronizerId - Synchronizer to upload to (auto-detected if omitted).\n * @param opts.skipIfVetted - If true, silently succeeds when the DAR is already vetted.\n */\n async uploadDar(\n dar: Uint8Array<ArrayBuffer>,\n opts: { vetAllPackages?: boolean; synchronizerId?: string; skipIfVetted?: boolean } = {},\n ): Promise<object> {\n // Extract the underlying ArrayBuffer, handling views that don't start at offset 0\n const bytes =\n dar.byteOffset === 0 && dar.byteLength === dar.buffer.byteLength\n ? dar.buffer\n : dar.buffer.slice(dar.byteOffset, dar.byteOffset + dar.byteLength);\n const body = new Blob([bytes], { type: 'application/octet-stream' });\n const synchronizerId = opts.synchronizerId ?? (await this.#ensureSynchronizerId());\n const request: PostV2DarsRequest = {\n body,\n vetAllPackages: opts.vetAllPackages,\n synchronizerId,\n };\n\n try {\n return await this.#api.postV2Dars(request);\n } catch (err: unknown) {\n // If skipIfVetted, treat KNOWN_PACKAGE_VERSION as a no-op success\n if (opts.skipIfVetted) {\n const body = await this.#extractErrorBody(err);\n if (body) {\n if (body.code === 'KNOWN_PACKAGE_VERSION') {\n return { skipped: true, reason: 'already_vetted', details: body };\n }\n throw new CantonProtocolError(`DAR upload failed: ${JSON.stringify(body)}`);\n }\n }\n throw await this.#throwApiError(err, 'DAR upload');\n }\n }\n\n /**\n * Validate a DAR against the participant without uploading it.\n *\n * @param dar - Raw DAR bytes.\n * @param opts.synchronizerId - Synchronizer to validate against (auto-detected if omitted).\n */\n async validateDar(\n dar: Uint8Array<ArrayBuffer>,\n opts: { synchronizerId?: string } = {},\n ): Promise<void> {\n const bytes =\n dar.byteOffset === 0 && dar.byteLength === dar.buffer.byteLength\n ? dar.buffer\n : dar.buffer.slice(dar.byteOffset, dar.byteOffset + dar.byteLength);\n const body = new Blob([bytes], { type: 'application/octet-stream' });\n const request: PostV2DarsValidateRequest = {\n body,\n synchronizerId: opts.synchronizerId,\n };\n\n if (!request.synchronizerId) {\n return this.#ensureSynchronizerId().then((synchronizerId) =>\n this.#api.postV2DarsValidate({ ...request, synchronizerId }),\n );\n }\n\n return this.#api.postV2DarsValidate(request);\n }\n\n // ─────────────────────────────────────────────────────────────────────────\n // Party Management\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * List all known parties on the participant node.\n *\n * @param opts.pageSize - Maximum number of results per page\n * @param opts.pageToken - Pagination token from previous response\n * @returns Array of party IDs and pagination token\n */\n async listParties(\n opts: { pageSize?: number; pageToken?: string } = {},\n ): Promise<{ parties: string[]; nextPageToken: string }> {\n const response = await this.#api.getV2Parties({\n pageSize: opts.pageSize,\n pageToken: opts.pageToken,\n });\n\n return {\n parties: response.partyDetails?.map((p) => p.party) ?? [],\n nextPageToken: response.nextPageToken,\n };\n }\n\n /**\n * Allocate a new party on the participant node.\n *\n * @param partyIdHint - A hint for the party ID (e.g., \"alice\", \"bob\")\n * @param opts.userId - User who gets actAs rights (empty string = no user)\n * @param opts.synchronizerId - Synchronizer to allocate on (auto-detected if omitted)\n * @param opts.identityProviderId - Identity provider ID (empty string = default)\n * @returns The allocated party ID\n */\n async allocateParty(\n partyIdHint: string,\n opts: { userId?: string; synchronizerId?: string; identityProviderId?: string } = {},\n ): Promise<string> {\n const synchronizerId = opts.synchronizerId ?? (await this.#ensureSynchronizerId());\n\n let response;\n try {\n response = await this.#api.postV2Parties({\n allocatePartyRequest: {\n partyIdHint,\n synchronizerId,\n userId: opts.userId ?? '',\n identityProviderId: opts.identityProviderId ?? '',\n },\n });\n } catch (err: unknown) {\n throw await this.#throwApiError(err, 'Party allocation');\n }\n\n const party = response.partyDetails?.party;\n if (!party) {\n throw new CantonProtocolError('Party allocation response missing party ID');\n }\n\n return party;\n }\n\n /**\n * Get the package ID for a package by name.\n *\n * @param packageName - The package name (e.g., \"layerzero-oft\")\n * @param parties - Parties whose vetting state should be considered\n * @param opts.synchronizerId - Synchronizer to query (auto-detected if omitted)\n * @returns The package ID (hash)\n */\n async getPackageId(\n packageName: string,\n parties: string[],\n opts: { synchronizerId?: string } = {},\n ): Promise<string> {\n const synchronizerId = opts.synchronizerId ?? (await this.#ensureSynchronizerId());\n\n const request: PostV2InteractiveSubmissionPreferredPackagesRequest = {\n getPreferredPackagesRequest: {\n packageVettingRequirements: [\n {\n packageName,\n parties,\n },\n ],\n synchronizerId,\n },\n };\n\n let response;\n try {\n response = await this.#api.postV2InteractiveSubmissionPreferredPackages(request);\n } catch (err: unknown) {\n throw await this.#throwApiError(err, 'Package lookup');\n }\n\n const packageRef = response.packageReferences?.find(\n (ref) => ref.packageName === packageName,\n );\n if (!packageRef?.packageId) {\n throw new CantonProtocolError(\n `Package \"${packageName}\" not found or not vetted for parties`,\n );\n }\n\n return packageRef.packageId;\n }\n\n // ─────────────────────────────────────────────────────────────────────────\n // Command Submission\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * Submit a batch of commands atomically.\n *\n * @returns commandId and completionOffset for use with waitForCommand()\n */\n async submit(\n actors: SubmitActors,\n commands: Command[],\n opts: { disclosedContracts?: DisclosedContract[]; commandId?: string } = {},\n ): Promise<SubmitResult> {\n const synchronizerId = await this.#ensureSynchronizerId();\n const commandId = opts.commandId ?? randomUUID();\n\n // Snapshot ledger end before submission so waitForCommand knows where to start polling\n const ledgerEndResponse = await this.#api.getV2StateLedgerEnd();\n const completionOffset = ledgerEndResponse.offset;\n\n const request: PostV2CommandsAsyncSubmitRequest = {\n jsCommands: {\n commandId,\n actAs: actors.actAs,\n readAs: actors.readAs ?? actors.actAs,\n userId: this.#userId,\n synchronizerId,\n commands,\n disclosedContracts: opts.disclosedContracts,\n },\n };\n\n try {\n await this.#api.postV2CommandsAsyncSubmit(request);\n } catch (err: unknown) {\n throw await this.#throwApiError(err, 'Command submission');\n }\n\n return { commandId, completionOffset };\n }\n\n // ─────────────────────────────────────────────────────────────────────────\n // Completion Waiting / Reconciliation\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * Wait for a command to be accepted or rejected.\n *\n * Uses bounded exponential backoff to avoid hammering the participant.\n */\n async waitForCommand(commandId: string, opts: WaitOptions): Promise<WaitResult> {\n const { parties, timeoutMs = 30_000, poll = {} } = opts;\n\n const limit = poll.limit ?? 50;\n const streamIdleTimeoutMs = poll.streamIdleTimeoutMs ?? 1000;\n const initialBackoffMs = poll.backoffMs?.initial ?? 100;\n const maxBackoffMs = poll.backoffMs?.max ?? 5000;\n\n let beginExclusive = opts.beginExclusive ?? 0;\n let currentBackoff = initialBackoffMs;\n const deadline = Date.now() + timeoutMs;\n\n // Poll the completions stream until we find our commandId or timeout\n while (Date.now() < deadline) {\n const request: PostV2CommandsCompletionsRequest = {\n completionStreamRequest: {\n beginExclusive,\n parties,\n userId: this.#userId,\n },\n limit,\n streamIdleTimeoutMs,\n };\n\n const rawResponse = await this.#api.postV2CommandsCompletionsRaw(request);\n const responseText = await rawResponse.raw.text();\n const completions = JSON.parse(responseText) as unknown[];\n\n // Scan each completion for our commandId\n for (const item of completions) {\n const normalized = item as Record<string, unknown>;\n const completionResponse = this.#getField<Record<string, unknown>>(\n normalized,\n 'completionResponse',\n );\n if (!completionResponse) continue;\n\n // Handle offsetCheckpoint responses (no commandId)\n const offsetCheckpoint = this.#getField<Record<string, unknown>>(\n completionResponse,\n 'offsetCheckpoint',\n );\n if (offsetCheckpoint) {\n const checkpoint =\n this.#getField<Record<string, unknown>>(offsetCheckpoint, 'value') ??\n offsetCheckpoint;\n const checkpointOffset = this.#getField<number>(checkpoint, 'offset');\n if (checkpointOffset !== undefined) {\n beginExclusive = Math.max(beginExclusive, checkpointOffset);\n }\n continue;\n }\n\n // Navigate: completionResponse.completion.value\n const completionWrapper = this.#getField<Record<string, unknown>>(\n completionResponse,\n 'completion',\n );\n const completion =\n this.#getField<Record<string, unknown>>(completionWrapper, 'value') ??\n completionWrapper;\n if (!completion) continue;\n\n const offset = this.#getField<number>(completion, 'offset');\n const completionCommandId = this.#getField<string>(completion, 'commandId');\n\n // Found our command — check gRPC status to determine accept/reject\n if (completionCommandId === commandId) {\n const status = this.#getField<{\n code?: number;\n message?: string;\n details?: unknown;\n }>(completion, 'status');\n\n // code === 0 or status undefined means success (gRPC OK)\n if (!status || status.code === 0) {\n return {\n status: 'accepted',\n commandId,\n updateId: this.#getField<string>(completion, 'updateId') ?? '',\n offset: offset ?? 0,\n };\n } else {\n return {\n status: 'rejected',\n commandId,\n offset: offset ?? 0,\n error: {\n code: status.code,\n message: status.message ?? 'Unknown rejection',\n details: status.details,\n },\n };\n }\n }\n\n // Not our command — advance offset cursor past it\n if (offset !== undefined) {\n beginExclusive = Math.max(beginExclusive, offset);\n }\n }\n\n // Bounded exponential backoff\n const remainingTime = deadline - Date.now();\n const sleepTime = Math.min(currentBackoff, remainingTime, maxBackoffMs);\n if (sleepTime > 0) {\n await new Promise((resolve) => setTimeout(resolve, sleepTime));\n }\n currentBackoff = Math.min(currentBackoff * 2, maxBackoffMs);\n }\n\n return { status: 'timeout', commandId, lastCheckedOffset: beginExclusive };\n }\n\n // ─────────────────────────────────────────────────────────────────────────\n // Disclosed Contracts\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * Fetch active contract's created event by ID.\n * Returns undefined if contract doesn't exist or is archived.\n */\n async #fetchActiveContractEvent(\n contractId: ContractId<unknown>,\n parties: string[],\n includeCreatedEventBlob: boolean,\n ): Promise<CreatedEvent | undefined> {\n const request: PostV2EventsEventsByContractIdRequest = {\n getEventsByContractIdRequest: {\n contractId,\n eventFormat: {\n filtersByParty: this.#buildPartyFilters(parties, includeCreatedEventBlob),\n verbose: false,\n },\n },\n };\n\n const response = await this.#api.postV2EventsEventsByContractId(request);\n\n // If archived, contract is not active\n if (response.archived) return undefined;\n\n return response.created?.createdEvent;\n }\n\n /**\n * Build a disclosure for a contract.\n *\n * @param contractId - The contract ID to create disclosure for\n * @param parties - Parties that have visibility to the contract\n * @returns DisclosedContract if visible, undefined if not found\n * @throws CantonProtocolError if contract visible but blob missing (server/config mismatch)\n */\n async createDisclosure(\n contractId: ContractId<unknown>,\n parties: string[],\n ): Promise<DisclosedContract | undefined> {\n const synchronizerId = await this.#ensureSynchronizerId();\n const created = await this.#fetchActiveContractEvent(contractId, parties, true);\n\n if (!created) return undefined;\n\n const validated = this.#validateDisclosureEvent(created, contractId);\n return {\n ...validated,\n synchronizerId,\n };\n }\n\n // ─────────────────────────────────────────────────────────────────────────\n // Internal: Active Contract Queries (used by CantonSdk)\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * Fetch a single contract by ID.\n *\n * @param contractId The contract ID to fetch\n * @param parties Parties to use for filtering (required for non-admin tokens)\n */\n async fetchContractById(\n contractId: ContractId<unknown>,\n parties: string[],\n ): Promise<CreatedEvent | undefined> {\n return this.#fetchActiveContractEvent(contractId, parties, false);\n }\n\n /**\n * Fetch both the created and archived events for a contract by ID.\n * Unlike fetchContractById, this preserves archival information.\n */\n async fetchEventsByContractId(\n contractId: string,\n parties: string[],\n ): Promise<{ created: CreatedEvent | undefined; archived: ArchivedEvent | undefined }> {\n const request: PostV2EventsEventsByContractIdRequest = {\n getEventsByContractIdRequest: {\n contractId,\n eventFormat: {\n filtersByParty: this.#buildPartyFilters(parties, false),\n verbose: false,\n },\n },\n };\n\n const response = await this.#api.postV2EventsEventsByContractId(request);\n\n return {\n created: response.created?.createdEvent,\n archived: response.archived?.archivedEvent,\n };\n }\n\n /**\n * Fetch an update (transaction) by its ID.\n * @param updateId The update ID from a completion\n * @param parties Parties to use for the query filter\n * @returns The full update response\n */\n async fetchTransactionByUpdateId(\n updateId: string,\n parties: string[],\n ): Promise<CantonTransaction> {\n const response = await this.#api.postV2UpdatesUpdateByIdRaw({\n getUpdateByIdRequest: {\n updateId,\n updateFormat: this.#buildUpdateFormat(parties),\n },\n });\n\n const updateResponse: CantonUpdateResponse = await response.raw.json();\n return this.#parseTransactionFromUpdate(\n updateResponse,\n `Update ${updateId} is not a transaction`,\n );\n }\n\n /**\n * Fetch a transaction by its offset.\n * @param offset - The ledger offset\n * @param parties - Parties to use for the query filter\n * @returns The full transaction including recordTime\n */\n async fetchTransactionByOffset(offset: number, parties: string[]): Promise<CantonTransaction> {\n const response = await this.#api.postV2UpdatesUpdateByOffsetRaw({\n getUpdateByOffsetRequest: {\n offset,\n updateFormat: this.#buildUpdateFormat(parties),\n },\n });\n\n const updateResponse: CantonUpdateResponse = await response.raw.json();\n return this.#parseTransactionFromUpdate(\n updateResponse,\n `Update at offset ${offset} is not a transaction`,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────\n // External Party / Interactive Submission\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * Prepare commands for external party signing.\n *\n * Returns a typed PreparedTransaction that preserves the contract type\n * through the signing flow. After signing, use submitSigned() to submit.\n *\n * @typeparam T The contract payload type (phantom type for type safety)\n *\n * @example\n * ```ts\n * const prepared = await client.prepareForSigning<Oft>({ actAs: [party] }, [cmd]);\n * const signature = await sign(prepared.preparedTransactionHash);\n * await client.submitSigned(prepared, [signature]);\n * ```\n */\n async prepareForSigning(\n actors: SubmitActors,\n commands: Command[],\n opts: { disclosedContracts?: DisclosedContract[]; commandId?: string } = {},\n ): Promise<PreparedTransaction> {\n const synchronizerId = await this.#ensureSynchronizerId();\n const commandId = opts.commandId ?? randomUUID();\n\n const request: PostV2InteractiveSubmissionPrepareRequest = {\n jsPrepareSubmissionRequest: {\n userId: this.#userId,\n commandId,\n commands,\n actAs: actors.actAs,\n readAs: actors.readAs ?? actors.actAs,\n disclosedContracts: opts.disclosedContracts,\n synchronizerId,\n verboseHashing: false,\n packageIdSelectionPreference: [],\n },\n };\n\n const response = await this.#api.postV2InteractiveSubmissionPrepare(request);\n const validated = this.#validatePrepareResponse(response);\n\n return {\n ...validated,\n hashingSchemeVersion:\n validated.hashingSchemeVersion as PreparedTransaction['hashingSchemeVersion'],\n commandId,\n };\n }\n\n /**\n * Submit a pre-signed transaction.\n *\n * The generic type T flows from prepareForSigning() for type documentation.\n */\n async submitSigned(\n prepared: PreparedTransaction,\n signatures: ExternalSignature[],\n ): Promise<SubmitResult> {\n // Snapshot ledger end so the caller can poll for completion from this point\n const ledgerEndResponse = await this.#api.getV2StateLedgerEnd();\n const completionOffset = ledgerEndResponse.offset;\n\n const request: PostV2InteractiveSubmissionExecuteRequest = {\n jsExecuteSubmissionRequest: {\n preparedTransaction: prepared.preparedTransaction,\n // Map each ExternalSignature into the Canton per-party signature format\n partySignatures: {\n signatures: signatures.map((sig) => ({\n party: sig.party,\n signatures: [\n {\n format: sig.format,\n signature: sig.signature,\n signedBy: sig.signedBy,\n signingAlgorithmSpec: sig.signingAlgorithmSpec,\n },\n ],\n })),\n },\n deduplicationPeriod: {\n deduplicationDuration: {\n value: { seconds: 3600, nanos: 0 }, // 1 hour default\n },\n },\n submissionId: randomUUID(),\n userId: this.#userId,\n hashingSchemeVersion: prepared.hashingSchemeVersion,\n },\n };\n\n await this.#api.postV2InteractiveSubmissionExecute(request);\n\n return { commandId: prepared.commandId, completionOffset };\n }\n\n // ─────────────────────────────────────────────────────────────────────────\n // Active Contracts Query\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * Get the current ledger end offset.\n */\n async getLedgerEndOffset(): Promise<number> {\n const response = await this.#api.getV2StateLedgerEnd();\n return response.offset;\n }\n\n /**\n * Query active contracts at a given offset with optional template filtering.\n *\n * @param party - Party to query as\n * @param offset - Ledger offset for the snapshot\n * @param opts.templateIds - Optional template IDs to filter by\n * @param opts.limit - Maximum number of contracts to return\n */\n async queryActiveContracts(\n party: string,\n offset: number,\n opts?: { templateIds?: string[]; limit?: number },\n ): Promise<JsActiveContract[]> {\n return this.queryActiveContractsByParties([party], offset, opts?.templateIds ?? [], {\n limit: opts?.limit,\n });\n }\n\n /**\n * Query active contracts visible to any of the given parties.\n *\n * Single API call with all parties in filtersByParty.\n *\n * @param parties - Parties to query as (for visibility)\n * @param offset - Ledger offset for the snapshot\n * @param templateIds - Template IDs to filter by\n * @param opts.limit - Maximum number of contracts to return\n */\n async queryActiveContractsByParties(\n parties: string[],\n offset: number,\n templateIds: string[],\n opts?: { limit?: number },\n ): Promise<JsActiveContract[]> {\n const cumulativeFilter = this.#buildCumulativeFilters(templateIds);\n const filtersByParty = Object.fromEntries(\n parties.map((party) => [party, { cumulative: cumulativeFilter }]),\n );\n\n const rawResponse = await this.#api.postV2StateActiveContractsRaw({\n getActiveContractsRequest: {\n filter: { filtersByParty },\n verbose: true,\n activeAtOffset: offset,\n },\n limit: opts?.limit,\n });\n\n // Raw response is an array of streamed entries; extract and deserialize contracts\n type RawActiveContractsResponse = Array<{\n contractEntry?: { JsActiveContract?: Record<string, unknown> };\n }>;\n const rawJson: RawActiveContractsResponse = await rawResponse.raw.json();\n\n return rawJson\n .map((item) => item.contractEntry?.JsActiveContract)\n .filter((contract): contract is Record<string, unknown> => contract != null)\n .map((contract) => JsActiveContractFromJSON(contract));\n }\n\n /**\n * Stream transactions from a given offset.\n *\n * @param party - Party to query as\n * @param beginExclusive - Start offset (exclusive)\n * @param endInclusive - End offset (inclusive)\n * @param opts.templateIds - Optional template IDs to filter by\n * @param opts.limit - Maximum number of transactions to return\n */\n async getUpdates(\n party: string,\n beginExclusive: number,\n endInclusive: number,\n opts?: { templateIds?: string[]; limit?: number },\n ): Promise<CantonUpdate[]> {\n const rawResponse = await this.#api.postV2UpdatesRaw({\n getUpdatesRequest: {\n beginExclusive,\n endInclusive,\n filter: {\n filtersByParty: {\n [party]: { cumulative: this.#buildCumulativeFilters(opts?.templateIds) },\n },\n },\n verbose: true,\n },\n limit: opts?.limit,\n });\n\n const updateResponses: CantonUpdateResponse[] = await rawResponse.raw.json();\n\n return updateResponses.map((response) => response.update);\n }\n\n /**\n * Build cumulative filters for party-based queries.\n * If templateIds provided, filters by those templates; otherwise uses wildcard.\n */\n #buildCumulativeFilters(templateIds?: string[]): CumulativeFilter[] {\n if (templateIds?.length) {\n return templateIds.map((templateId) => ({\n identifierFilter: {\n templateFilter: { value: { templateId, includeCreatedEventBlob: false } },\n },\n }));\n }\n return [\n { identifierFilter: { wildcardFilter: { value: { includeCreatedEventBlob: false } } } },\n ];\n }\n\n /**\n * Build the standard update format for fetching transactions.\n */\n #buildUpdateFormat(parties: string[]) {\n return {\n includeTransactions: {\n eventFormat: {\n filtersByParty: this.#buildPartyFilters(parties, false),\n verbose: false,\n },\n transactionShape: 'TRANSACTION_SHAPE_LEDGER_EFFECTS' as const,\n },\n };\n }\n\n /**\n * Parse an update response and extract the transaction.\n * The response structure is: { update: { Transaction: { value: CantonTransaction } } }\n */\n #parseTransactionFromUpdate(\n json: CantonUpdateResponse,\n notFoundMessage: string,\n ): CantonTransaction {\n // Update can be a Transaction, Reassignment, TopologyTransaction, or OffsetCheckpoint\n if (!('Transaction' in json.update)) {\n throw new CantonProtocolError(notFoundMessage);\n }\n\n return json.update.Transaction.value;\n }\n}\n"]}
1
+ {"version":3,"sources":["../src/client/canton-client.ts"],"names":["CantonClient","config","userId","DefaultApi","obj","key","undefined","pascal","charAt","toUpperCase","slice","camel","toLowerCase","err","resp","response","json","catch","context","body","CantonProtocolError","JSON","stringify","parties","includeCreatedEventBlob","Object","fromEntries","map","p","cumulative","identifierFilter","wildcardFilter","value","event","contractId","templateId","createdEventBlob","preparedTransaction","preparedTransactionHash","hashingSchemeVersion","connectedSynchronizers","getV2StateConnectedSynchronizers","synchronizers","s","synchronizerId","filter","id","once","CantonTransportError","uploadDar","dar","opts","bytes","byteOffset","byteLength","buffer","Blob","type","request","vetAllPackages","postV2Dars","skipIfVetted","code","skipped","reason","details","validateDar","then","postV2DarsValidate","listParties","getV2Parties","pageSize","pageToken","partyDetails","party","nextPageToken","allocateParty","partyIdHint","postV2Parties","allocatePartyRequest","identityProviderId","getPackageId","packageName","getPreferredPackagesRequest","packageVettingRequirements","postV2InteractiveSubmissionPreferredPackages","packageRef","packageReferences","find","ref","packageId","submit","actors","commands","commandId","randomUUID","ledgerEndResponse","getV2StateLedgerEnd","completionOffset","offset","jsCommands","actAs","readAs","disclosedContracts","postV2CommandsAsyncSubmit","waitForCommand","timeoutMs","poll","limit","streamIdleTimeoutMs","initialBackoffMs","backoffMs","initial","maxBackoffMs","max","beginExclusive","currentBackoff","deadline","Date","now","completionStreamRequest","rawResponse","postV2CommandsCompletionsRaw","responseText","raw","text","completions","parse","item","normalized","completionResponse","offsetCheckpoint","checkpoint","checkpointOffset","Math","completionWrapper","completion","completionCommandId","status","updateId","error","message","remainingTime","sleepTime","min","Promise","resolve","setTimeout","lastCheckedOffset","getEventsByContractIdRequest","eventFormat","filtersByParty","verbose","postV2EventsEventsByContractId","archived","created","createdEvent","createDisclosure","validated","fetchContractById","fetchEventsByContractId","archivedEvent","fetchTransactionByUpdateId","postV2UpdatesUpdateByIdRaw","getUpdateByIdRequest","updateFormat","updateResponse","fetchTransactionByOffset","postV2UpdatesUpdateByOffsetRaw","getUpdateByOffsetRequest","prepareForSigning","jsPrepareSubmissionRequest","verboseHashing","packageIdSelectionPreference","postV2InteractiveSubmissionPrepare","submitSigned","prepared","signatures","jsExecuteSubmissionRequest","partySignatures","sig","format","signature","signedBy","signingAlgorithmSpec","deduplicationPeriod","deduplicationDuration","seconds","nanos","submissionId","postV2InteractiveSubmissionExecute","getLedgerEndOffset","queryActiveContracts","queryActiveContractsByParties","templateIds","cumulativeFilter","postV2StateActiveContractsRaw","getActiveContractsRequest","activeAtOffset","rawJson","contractEntry","JsActiveContract","contract","JsActiveContractFromJSON","getUpdates","endInclusive","postV2UpdatesRaw","getUpdatesRequest","updateResponses","update","length","templateFilter","includeTransactions","transactionShape","notFoundMessage","Transaction"],"mappings":"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","file":"KN7C2KMD.js","sourcesContent":["import type { ContractId } from '@daml/types';\nimport { once } from 'es-toolkit';\nimport { randomUUID } from 'node:crypto';\n\nimport { CantonProtocolError, CantonTransportError } from '../errors';\nimport {\n DefaultApi,\n type PostV2CommandsAsyncSubmitRequest,\n type PostV2CommandsCompletionsRequest,\n type PostV2DarsRequest,\n type PostV2DarsValidateRequest,\n type PostV2EventsEventsByContractIdRequest,\n type PostV2InteractiveSubmissionExecuteRequest,\n type PostV2InteractiveSubmissionPreferredPackagesRequest,\n type PostV2InteractiveSubmissionPrepareRequest,\n} from '../open-api/apis/DefaultApi';\nimport {\n type ArchivedEvent,\n type Command,\n type CreatedEvent,\n type CumulativeFilter,\n type DisclosedContract,\n type JsActiveContract,\n JsActiveContractFromJSON,\n} from '../open-api/models';\nimport type { Configuration } from '../open-api/runtime';\nimport type {\n ExternalSignature,\n PreparedTransaction,\n SubmitActors,\n SubmitResult,\n WaitOptions,\n WaitResult,\n} from '../types';\nimport type {\n CantonTransaction,\n CantonUpdate,\n CantonUpdateResponse,\n ICantonClient,\n} from './interface';\n\n/**\n * CantonClient - The engine layer for Canton ledger operations.\n *\n * Responsibilities:\n * - Synchronizer discovery and caching\n * - Command submission and completion waiting\n * - Disclosed contract building\n * - JSON normalization (temporary workaround)\n *\n * This class uses composition (not inheritance) to wrap the generated API,\n * exposing only the minimal surface needed for ledger app operations.\n */\nexport class CantonClient implements ICantonClient {\n readonly #api: DefaultApi;\n readonly #userId: string;\n\n constructor(config: Configuration, userId: string = 'participant_admin') {\n this.#api = new DefaultApi(config);\n this.#userId = userId;\n }\n\n /**\n * Get a property from an object, trying PascalCase first then camelCase.\n * Canton API returns PascalCase but OpenAPI expects camelCase.\n */\n #getField<T>(obj: Record<string, unknown> | undefined, key: string): T | undefined {\n if (!obj) return undefined;\n const pascal = key.charAt(0).toUpperCase() + key.slice(1);\n const camel = key.charAt(0).toLowerCase() + key.slice(1);\n return (obj[pascal] ?? obj[camel]) as T | undefined;\n }\n\n /**\n * Try to extract error body from API response.\n * Returns the parsed body or null if extraction fails.\n */\n async #extractErrorBody(err: unknown): Promise<Record<string, unknown> | null> {\n if (err && typeof err === 'object' && 'response' in err) {\n const resp = (err as { response: Response }).response;\n if (resp && typeof resp.json === 'function') {\n return (await resp.json().catch(() => null)) as Record<string, unknown> | null;\n }\n }\n return null;\n }\n\n /**\n * Throw a CantonProtocolError with extracted error details from API response.\n * Handles the common pattern of extracting JSON error details from failed requests.\n *\n * @param err - The caught error\n * @param context - Description of the operation (e.g., \"DAR upload\", \"Party allocation\")\n * @throws CantonProtocolError with extracted error details, or re-throws original error\n */\n async #throwApiError(err: unknown, context: string): Promise<never> {\n const body = await this.#extractErrorBody(err);\n if (body) {\n throw new CantonProtocolError(`${context} failed: ${JSON.stringify(body)}`);\n }\n throw err;\n }\n\n /**\n * Build party-based filter object for event queries.\n */\n #buildPartyFilters(parties: string[], includeCreatedEventBlob: boolean) {\n return Object.fromEntries(\n parties.map((p) => [\n p,\n {\n cumulative: [\n {\n identifierFilter: {\n wildcardFilter: { value: { includeCreatedEventBlob } },\n },\n },\n ],\n },\n ]),\n );\n }\n\n /**\n * Validate and extract disclosure fields from a CreatedEvent.\n */\n #validateDisclosureEvent(\n event: { templateId?: string; contractId?: string; createdEventBlob?: string },\n contractId: ContractId<unknown>,\n ): { templateId: string; contractId: string; createdEventBlob: string } {\n if (!event.templateId) {\n throw new CantonProtocolError('Disclosure response missing templateId', {\n contractId,\n });\n }\n if (!event.contractId) {\n throw new CantonProtocolError('Disclosure response missing contractId', {\n contractId,\n });\n }\n if (!event.createdEventBlob) {\n throw new CantonProtocolError('Disclosure response missing createdEventBlob', {\n contractId,\n });\n }\n return {\n templateId: event.templateId,\n contractId: event.contractId,\n createdEventBlob: event.createdEventBlob,\n };\n }\n\n /**\n * Validate and extract prepared transaction fields from a prepare response.\n */\n #validatePrepareResponse(response: {\n preparedTransaction?: string;\n preparedTransactionHash?: string;\n hashingSchemeVersion?: string;\n }): {\n preparedTransaction: string;\n preparedTransactionHash: string;\n hashingSchemeVersion: string;\n } {\n if (!response.preparedTransaction) {\n throw new CantonProtocolError('Prepare response missing preparedTransaction');\n }\n if (!response.preparedTransactionHash) {\n throw new CantonProtocolError('Prepare response missing preparedTransactionHash');\n }\n if (!response.hashingSchemeVersion) {\n throw new CantonProtocolError('Prepare response missing hashingSchemeVersion');\n }\n return {\n preparedTransaction: response.preparedTransaction,\n preparedTransactionHash: response.preparedTransactionHash,\n hashingSchemeVersion: response.hashingSchemeVersion,\n };\n }\n\n // ─────────────────────────────────────────────────────────────────────────\n // Synchronizer Discovery\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * Returns all connected synchronizer IDs.\n */\n async connectedSynchronizers(): Promise<string[]> {\n const response = await this.#api.getV2StateConnectedSynchronizers();\n const synchronizers = response.connectedSynchronizers ?? [];\n return synchronizers.map((s) => s.synchronizerId).filter((id): id is string => !!id);\n }\n\n /**\n * Internal: ensures we have a cached synchronizer ID, fetching if needed.\n */\n #ensureSynchronizerId = once(async (): Promise<string> => {\n const [id] = await this.connectedSynchronizers();\n\n if (!id) {\n throw new CantonTransportError('No connected synchronizers found');\n }\n\n return id;\n });\n\n // ─────────────────────────────────────────────────────────────────────────\n // DAR Upload / Validation\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * Upload a DAR (Daml Archive) to the participant node.\n *\n * @param dar - Raw DAR bytes.\n * @param opts.vetAllPackages - Whether to vet all packages in the DAR.\n * @param opts.synchronizerId - Synchronizer to upload to (auto-detected if omitted).\n * @param opts.skipIfVetted - If true, silently succeeds when the DAR is already vetted.\n */\n async uploadDar(\n dar: Uint8Array<ArrayBuffer>,\n opts: { vetAllPackages?: boolean; synchronizerId?: string; skipIfVetted?: boolean } = {},\n ): Promise<object> {\n // Extract the underlying ArrayBuffer, handling views that don't start at offset 0\n const bytes =\n dar.byteOffset === 0 && dar.byteLength === dar.buffer.byteLength\n ? dar.buffer\n : dar.buffer.slice(dar.byteOffset, dar.byteOffset + dar.byteLength);\n const body = new Blob([bytes], { type: 'application/octet-stream' });\n const synchronizerId = opts.synchronizerId ?? (await this.#ensureSynchronizerId());\n const request: PostV2DarsRequest = {\n body,\n vetAllPackages: opts.vetAllPackages,\n synchronizerId,\n };\n\n try {\n return await this.#api.postV2Dars(request);\n } catch (err: unknown) {\n // If skipIfVetted, treat KNOWN_PACKAGE_VERSION as a no-op success\n if (opts.skipIfVetted) {\n const body = await this.#extractErrorBody(err);\n if (body) {\n if (body.code === 'KNOWN_PACKAGE_VERSION') {\n return { skipped: true, reason: 'already_vetted', details: body };\n }\n throw new CantonProtocolError(`DAR upload failed: ${JSON.stringify(body)}`);\n }\n }\n throw await this.#throwApiError(err, 'DAR upload');\n }\n }\n\n /**\n * Validate a DAR against the participant without uploading it.\n *\n * @param dar - Raw DAR bytes.\n * @param opts.synchronizerId - Synchronizer to validate against (auto-detected if omitted).\n */\n async validateDar(\n dar: Uint8Array<ArrayBuffer>,\n opts: { synchronizerId?: string } = {},\n ): Promise<void> {\n const bytes =\n dar.byteOffset === 0 && dar.byteLength === dar.buffer.byteLength\n ? dar.buffer\n : dar.buffer.slice(dar.byteOffset, dar.byteOffset + dar.byteLength);\n const body = new Blob([bytes], { type: 'application/octet-stream' });\n const request: PostV2DarsValidateRequest = {\n body,\n synchronizerId: opts.synchronizerId,\n };\n\n if (!request.synchronizerId) {\n return this.#ensureSynchronizerId().then((synchronizerId) =>\n this.#api.postV2DarsValidate({ ...request, synchronizerId }),\n );\n }\n\n return this.#api.postV2DarsValidate(request);\n }\n\n // ─────────────────────────────────────────────────────────────────────────\n // Party Management\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * List all known parties on the participant node.\n *\n * @param opts.pageSize - Maximum number of results per page\n * @param opts.pageToken - Pagination token from previous response\n * @returns Array of party IDs and pagination token\n */\n async listParties(\n opts: { pageSize?: number; pageToken?: string } = {},\n ): Promise<{ parties: string[]; nextPageToken: string }> {\n const response = await this.#api.getV2Parties({\n pageSize: opts.pageSize,\n pageToken: opts.pageToken,\n });\n\n return {\n parties: response.partyDetails?.map((p) => p.party) ?? [],\n nextPageToken: response.nextPageToken,\n };\n }\n\n /**\n * Allocate a new party on the participant node.\n *\n * @param partyIdHint - A hint for the party ID (e.g., \"alice\", \"bob\")\n * @param opts.userId - User who gets actAs rights (empty string = no user)\n * @param opts.synchronizerId - Synchronizer to allocate on (auto-detected if omitted)\n * @param opts.identityProviderId - Identity provider ID (empty string = default)\n * @returns The allocated party ID\n */\n async allocateParty(\n partyIdHint: string,\n opts: { userId?: string; synchronizerId?: string; identityProviderId?: string } = {},\n ): Promise<string> {\n const synchronizerId = opts.synchronizerId ?? (await this.#ensureSynchronizerId());\n\n let response;\n try {\n response = await this.#api.postV2Parties({\n allocatePartyRequest: {\n partyIdHint,\n synchronizerId,\n userId: opts.userId ?? '',\n identityProviderId: opts.identityProviderId ?? '',\n },\n });\n } catch (err: unknown) {\n throw await this.#throwApiError(err, 'Party allocation');\n }\n\n const party = response.partyDetails?.party;\n if (!party) {\n throw new CantonProtocolError('Party allocation response missing party ID');\n }\n\n return party;\n }\n\n /**\n * Get the package ID for a package by name.\n *\n * @param packageName - The package name (e.g., \"layerzero-oft\")\n * @param parties - Parties whose vetting state should be considered\n * @param opts.synchronizerId - Synchronizer to query (auto-detected if omitted)\n * @returns The package ID (hash)\n */\n async getPackageId(\n packageName: string,\n parties: string[],\n opts: { synchronizerId?: string } = {},\n ): Promise<string> {\n const synchronizerId = opts.synchronizerId ?? (await this.#ensureSynchronizerId());\n\n const request: PostV2InteractiveSubmissionPreferredPackagesRequest = {\n getPreferredPackagesRequest: {\n packageVettingRequirements: [\n {\n packageName,\n parties,\n },\n ],\n synchronizerId,\n },\n };\n\n let response;\n try {\n response = await this.#api.postV2InteractiveSubmissionPreferredPackages(request);\n } catch (err: unknown) {\n throw await this.#throwApiError(err, 'Package lookup');\n }\n\n const packageRef = response.packageReferences?.find(\n (ref) => ref.packageName === packageName,\n );\n if (!packageRef?.packageId) {\n throw new CantonProtocolError(\n `Package \"${packageName}\" not found or not vetted for parties`,\n );\n }\n\n return packageRef.packageId;\n }\n\n // ─────────────────────────────────────────────────────────────────────────\n // Command Submission\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * Submit a batch of commands atomically.\n *\n * @returns commandId and completionOffset for use with waitForCommand()\n */\n async submit(\n actors: SubmitActors,\n commands: Command[],\n opts: { disclosedContracts?: DisclosedContract[]; commandId?: string } = {},\n ): Promise<SubmitResult> {\n const synchronizerId = await this.#ensureSynchronizerId();\n const commandId = opts.commandId ?? randomUUID();\n\n // Snapshot ledger end before submission so waitForCommand knows where to start polling\n const ledgerEndResponse = await this.#api.getV2StateLedgerEnd();\n const completionOffset = ledgerEndResponse.offset;\n\n const request: PostV2CommandsAsyncSubmitRequest = {\n jsCommands: {\n commandId,\n actAs: actors.actAs,\n readAs: actors.readAs ?? actors.actAs,\n userId: this.#userId,\n synchronizerId,\n commands,\n disclosedContracts: opts.disclosedContracts,\n },\n };\n\n try {\n await this.#api.postV2CommandsAsyncSubmit(request);\n } catch (err: unknown) {\n throw await this.#throwApiError(err, 'Command submission');\n }\n\n return { commandId, completionOffset };\n }\n\n // ─────────────────────────────────────────────────────────────────────────\n // Completion Waiting / Reconciliation\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * Wait for a command to be accepted or rejected.\n *\n * Uses bounded exponential backoff to avoid hammering the participant.\n */\n async waitForCommand(commandId: string, opts: WaitOptions): Promise<WaitResult> {\n const { parties, timeoutMs = 30_000, poll = {} } = opts;\n\n const limit = poll.limit ?? 50;\n const streamIdleTimeoutMs = poll.streamIdleTimeoutMs ?? 1000;\n const initialBackoffMs = poll.backoffMs?.initial ?? 100;\n const maxBackoffMs = poll.backoffMs?.max ?? 5000;\n\n let beginExclusive = opts.beginExclusive ?? 0;\n let currentBackoff = initialBackoffMs;\n const deadline = Date.now() + timeoutMs;\n\n // Poll the completions stream until we find our commandId or timeout\n while (Date.now() < deadline) {\n const request: PostV2CommandsCompletionsRequest = {\n completionStreamRequest: {\n beginExclusive,\n parties,\n userId: this.#userId,\n },\n limit,\n streamIdleTimeoutMs,\n };\n\n const rawResponse = await this.#api.postV2CommandsCompletionsRaw(request);\n const responseText = await rawResponse.raw.text();\n const completions = JSON.parse(responseText) as unknown[];\n\n // Scan each completion for our commandId\n for (const item of completions) {\n const normalized = item as Record<string, unknown>;\n const completionResponse = this.#getField<Record<string, unknown>>(\n normalized,\n 'completionResponse',\n );\n if (!completionResponse) continue;\n\n // Handle offsetCheckpoint responses (no commandId)\n const offsetCheckpoint = this.#getField<Record<string, unknown>>(\n completionResponse,\n 'offsetCheckpoint',\n );\n if (offsetCheckpoint) {\n const checkpoint =\n this.#getField<Record<string, unknown>>(offsetCheckpoint, 'value') ??\n offsetCheckpoint;\n const checkpointOffset = this.#getField<number>(checkpoint, 'offset');\n if (checkpointOffset !== undefined) {\n beginExclusive = Math.max(beginExclusive, checkpointOffset);\n }\n continue;\n }\n\n // Navigate: completionResponse.completion.value\n const completionWrapper = this.#getField<Record<string, unknown>>(\n completionResponse,\n 'completion',\n );\n const completion =\n this.#getField<Record<string, unknown>>(completionWrapper, 'value') ??\n completionWrapper;\n if (!completion) continue;\n\n const offset = this.#getField<number>(completion, 'offset');\n const completionCommandId = this.#getField<string>(completion, 'commandId');\n\n // Found our command — check gRPC status to determine accept/reject\n if (completionCommandId === commandId) {\n const status = this.#getField<{\n code?: number;\n message?: string;\n details?: unknown;\n }>(completion, 'status');\n\n // code === 0 or status undefined means success (gRPC OK)\n if (!status || status.code === 0) {\n return {\n status: 'accepted',\n commandId,\n updateId: this.#getField<string>(completion, 'updateId') ?? '',\n offset: offset ?? 0,\n };\n } else {\n return {\n status: 'rejected',\n commandId,\n offset: offset ?? 0,\n error: {\n code: status.code,\n message: status.message ?? 'Unknown rejection',\n details: status.details,\n },\n };\n }\n }\n\n // Not our command — advance offset cursor past it\n if (offset !== undefined) {\n beginExclusive = Math.max(beginExclusive, offset);\n }\n }\n\n // Bounded exponential backoff\n const remainingTime = deadline - Date.now();\n const sleepTime = Math.min(currentBackoff, remainingTime, maxBackoffMs);\n if (sleepTime > 0) {\n await new Promise((resolve) => setTimeout(resolve, sleepTime));\n }\n currentBackoff = Math.min(currentBackoff * 2, maxBackoffMs);\n }\n\n return { status: 'timeout', commandId, lastCheckedOffset: beginExclusive };\n }\n\n // ─────────────────────────────────────────────────────────────────────────\n // Disclosed Contracts\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * Fetch active contract's created event by ID.\n * Returns undefined if contract doesn't exist or is archived.\n */\n async #fetchActiveContractEvent(\n contractId: ContractId<unknown>,\n parties: string[],\n includeCreatedEventBlob: boolean,\n ): Promise<CreatedEvent | undefined> {\n const request: PostV2EventsEventsByContractIdRequest = {\n getEventsByContractIdRequest: {\n contractId,\n eventFormat: {\n filtersByParty: this.#buildPartyFilters(parties, includeCreatedEventBlob),\n verbose: false,\n },\n },\n };\n\n const response = await this.#api.postV2EventsEventsByContractId(request);\n\n // If archived, contract is not active\n if (response.archived) return undefined;\n\n return response.created?.createdEvent;\n }\n\n /**\n * Build a disclosure for a contract.\n *\n * @param contractId - The contract ID to create disclosure for\n * @param parties - Parties that have visibility to the contract\n * @returns DisclosedContract if visible, undefined if not found\n * @throws CantonProtocolError if contract visible but blob missing (server/config mismatch)\n */\n async createDisclosure(\n contractId: ContractId<unknown>,\n parties: string[],\n ): Promise<DisclosedContract | undefined> {\n const synchronizerId = await this.#ensureSynchronizerId();\n const created = await this.#fetchActiveContractEvent(contractId, parties, true);\n\n if (!created) return undefined;\n\n const validated = this.#validateDisclosureEvent(created, contractId);\n return {\n ...validated,\n synchronizerId,\n };\n }\n\n // ─────────────────────────────────────────────────────────────────────────\n // Internal: Active Contract Queries (used by CantonSdk)\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * Fetch a single contract by ID.\n *\n * @param contractId The contract ID to fetch\n * @param parties Parties to use for filtering (required for non-admin tokens)\n */\n async fetchContractById(\n contractId: ContractId<unknown>,\n parties: string[],\n ): Promise<CreatedEvent | undefined> {\n return this.#fetchActiveContractEvent(contractId, parties, false);\n }\n\n /**\n * Fetch both the created and archived events for a contract by ID.\n * Unlike fetchContractById, this preserves archival information.\n */\n async fetchEventsByContractId(\n contractId: string,\n parties: string[],\n ): Promise<{ created: CreatedEvent | undefined; archived: ArchivedEvent | undefined }> {\n const request: PostV2EventsEventsByContractIdRequest = {\n getEventsByContractIdRequest: {\n contractId,\n eventFormat: {\n filtersByParty: this.#buildPartyFilters(parties, false),\n verbose: false,\n },\n },\n };\n\n const response = await this.#api.postV2EventsEventsByContractId(request);\n\n return {\n created: response.created?.createdEvent,\n archived: response.archived?.archivedEvent,\n };\n }\n\n /**\n * Fetch an update (transaction) by its ID.\n * @param updateId The update ID from a completion\n * @param parties Parties to use for the query filter\n * @returns The full update response\n */\n async fetchTransactionByUpdateId(\n updateId: string,\n parties: string[],\n ): Promise<CantonTransaction> {\n const response = await this.#api.postV2UpdatesUpdateByIdRaw({\n getUpdateByIdRequest: {\n updateId,\n updateFormat: this.#buildUpdateFormat(parties),\n },\n });\n\n const updateResponse: CantonUpdateResponse = await response.raw.json();\n return this.#parseTransactionFromUpdate(\n updateResponse,\n `Update ${updateId} is not a transaction`,\n );\n }\n\n /**\n * Fetch a transaction by its offset.\n * @param offset - The ledger offset\n * @param parties - Parties to use for the query filter\n * @returns The full transaction including recordTime\n */\n async fetchTransactionByOffset(offset: number, parties: string[]): Promise<CantonTransaction> {\n const response = await this.#api.postV2UpdatesUpdateByOffsetRaw({\n getUpdateByOffsetRequest: {\n offset,\n updateFormat: this.#buildUpdateFormat(parties),\n },\n });\n\n const updateResponse: CantonUpdateResponse = await response.raw.json();\n return this.#parseTransactionFromUpdate(\n updateResponse,\n `Update at offset ${offset} is not a transaction`,\n );\n }\n\n // ─────────────────────────────────────────────────────────────────────────\n // External Party / Interactive Submission\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * Prepare commands for external party signing.\n *\n * Returns a typed PreparedTransaction that preserves the contract type\n * through the signing flow. After signing, use submitSigned() to submit.\n *\n * @typeparam T The contract payload type (phantom type for type safety)\n *\n * @example\n * ```ts\n * const prepared = await client.prepareForSigning<Oft>({ actAs: [party] }, [cmd]);\n * const signature = await sign(prepared.preparedTransactionHash);\n * await client.submitSigned(prepared, [signature]);\n * ```\n */\n async prepareForSigning(\n actors: SubmitActors,\n commands: Command[],\n opts: { disclosedContracts?: DisclosedContract[]; commandId?: string } = {},\n ): Promise<PreparedTransaction> {\n const synchronizerId = await this.#ensureSynchronizerId();\n const commandId = opts.commandId ?? randomUUID();\n\n const request: PostV2InteractiveSubmissionPrepareRequest = {\n jsPrepareSubmissionRequest: {\n userId: this.#userId,\n commandId,\n commands,\n actAs: actors.actAs,\n readAs: actors.readAs ?? actors.actAs,\n disclosedContracts: opts.disclosedContracts,\n synchronizerId,\n verboseHashing: false,\n packageIdSelectionPreference: [],\n },\n };\n\n const response = await this.#api.postV2InteractiveSubmissionPrepare(request);\n const validated = this.#validatePrepareResponse(response);\n\n return {\n ...validated,\n hashingSchemeVersion:\n validated.hashingSchemeVersion as PreparedTransaction['hashingSchemeVersion'],\n commandId,\n };\n }\n\n /**\n * Submit a pre-signed transaction.\n *\n * The generic type T flows from prepareForSigning() for type documentation.\n */\n async submitSigned(\n prepared: PreparedTransaction,\n signatures: ExternalSignature[],\n ): Promise<SubmitResult> {\n // Snapshot ledger end so the caller can poll for completion from this point\n const ledgerEndResponse = await this.#api.getV2StateLedgerEnd();\n const completionOffset = ledgerEndResponse.offset;\n\n const request: PostV2InteractiveSubmissionExecuteRequest = {\n jsExecuteSubmissionRequest: {\n preparedTransaction: prepared.preparedTransaction,\n // Map each ExternalSignature into the Canton per-party signature format\n partySignatures: {\n signatures: signatures.map((sig) => ({\n party: sig.party,\n signatures: [\n {\n format: sig.format,\n signature: sig.signature,\n signedBy: sig.signedBy,\n signingAlgorithmSpec: sig.signingAlgorithmSpec,\n },\n ],\n })),\n },\n deduplicationPeriod: {\n deduplicationDuration: {\n value: { seconds: 3600, nanos: 0 }, // 1 hour default\n },\n },\n submissionId: randomUUID(),\n userId: this.#userId,\n hashingSchemeVersion: prepared.hashingSchemeVersion,\n },\n };\n\n await this.#api.postV2InteractiveSubmissionExecute(request);\n\n return { commandId: prepared.commandId, completionOffset };\n }\n\n // ─────────────────────────────────────────────────────────────────────────\n // Active Contracts Query\n // ─────────────────────────────────────────────────────────────────────────\n\n /**\n * Get the current ledger end offset.\n */\n async getLedgerEndOffset(): Promise<number> {\n const response = await this.#api.getV2StateLedgerEnd();\n return response.offset;\n }\n\n /**\n * Query active contracts at a given offset with optional template filtering.\n *\n * @param party - Party to query as\n * @param offset - Ledger offset for the snapshot\n * @param opts.templateIds - Optional template IDs to filter by\n * @param opts.limit - Maximum number of contracts to return\n */\n async queryActiveContracts(\n party: string,\n offset: number,\n opts?: { templateIds?: string[]; limit?: number },\n ): Promise<JsActiveContract[]> {\n return this.queryActiveContractsByParties([party], offset, opts?.templateIds ?? [], {\n limit: opts?.limit,\n });\n }\n\n /**\n * Query active contracts visible to any of the given parties.\n *\n * Single API call with all parties in filtersByParty.\n *\n * @param parties - Parties to query as (for visibility)\n * @param offset - Ledger offset for the snapshot\n * @param templateIds - Template IDs to filter by\n * @param opts.limit - Maximum number of contracts to return\n */\n async queryActiveContractsByParties(\n parties: string[],\n offset: number,\n templateIds: string[],\n opts?: { limit?: number },\n ): Promise<JsActiveContract[]> {\n const cumulativeFilter = this.#buildCumulativeFilters(templateIds);\n const filtersByParty = Object.fromEntries(\n parties.map((party) => [party, { cumulative: cumulativeFilter }]),\n );\n\n const rawResponse = await this.#api.postV2StateActiveContractsRaw({\n getActiveContractsRequest: {\n filter: { filtersByParty },\n verbose: true,\n activeAtOffset: offset,\n },\n limit: opts?.limit,\n });\n\n // Raw response is an array of streamed entries; extract and deserialize contracts\n type RawActiveContractsResponse = Array<{\n contractEntry?: { JsActiveContract?: Record<string, unknown> };\n }>;\n const rawJson: RawActiveContractsResponse = await rawResponse.raw.json();\n\n return rawJson\n .map((item) => item.contractEntry?.JsActiveContract)\n .filter((contract): contract is Record<string, unknown> => contract != null)\n .map((contract) => JsActiveContractFromJSON(contract));\n }\n\n /**\n * Stream transactions from a given offset.\n *\n * @param party - Party to query as\n * @param beginExclusive - Start offset (exclusive)\n * @param endInclusive - End offset (inclusive)\n * @param opts.templateIds - Optional template IDs to filter by\n * @param opts.limit - Maximum number of transactions to return\n */\n async getUpdates(\n party: string,\n beginExclusive: number,\n endInclusive: number,\n opts?: { templateIds?: string[]; limit?: number },\n ): Promise<CantonUpdate[]> {\n const rawResponse = await this.#api.postV2UpdatesRaw({\n getUpdatesRequest: {\n beginExclusive,\n endInclusive,\n filter: {\n filtersByParty: {\n [party]: { cumulative: this.#buildCumulativeFilters(opts?.templateIds) },\n },\n },\n verbose: true,\n },\n limit: opts?.limit,\n });\n\n const updateResponses: CantonUpdateResponse[] = await rawResponse.raw.json();\n\n return updateResponses.map((response) => response.update);\n }\n\n /**\n * Build cumulative filters for party-based queries.\n * If templateIds provided, filters by those templates; otherwise uses wildcard.\n */\n #buildCumulativeFilters(templateIds?: string[]): CumulativeFilter[] {\n if (templateIds?.length) {\n return templateIds.map((templateId) => ({\n identifierFilter: {\n templateFilter: { value: { templateId, includeCreatedEventBlob: false } },\n },\n }));\n }\n return [\n { identifierFilter: { wildcardFilter: { value: { includeCreatedEventBlob: false } } } },\n ];\n }\n\n /**\n * Build the standard update format for fetching transactions.\n */\n #buildUpdateFormat(parties: string[]) {\n return {\n includeTransactions: {\n eventFormat: {\n filtersByParty: this.#buildPartyFilters(parties, false),\n verbose: false,\n },\n transactionShape: 'TRANSACTION_SHAPE_LEDGER_EFFECTS' as const,\n },\n };\n }\n\n /**\n * Parse an update response and extract the transaction.\n * The response structure is: { update: { Transaction: { value: CantonTransaction } } }\n */\n #parseTransactionFromUpdate(\n json: CantonUpdateResponse,\n notFoundMessage: string,\n ): CantonTransaction {\n // Update can be a Transaction, Reassignment, TopologyTransaction, or OffsetCheckpoint\n if (!('Transaction' in json.update)) {\n throw new CantonProtocolError(notFoundMessage);\n }\n\n return json.update.Transaction.value;\n }\n}\n"]}