zerc20-client-sdk 0.1.13 → 0.1.14

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 (404) hide show
  1. package/README.md +261 -0
  2. package/dist/constants.d.ts +15 -0
  3. package/dist/constants.d.ts.map +1 -1
  4. package/dist/constants.js +15 -0
  5. package/dist/constants.js.map +1 -1
  6. package/dist/decider/__tests__/prover.test.d.ts +2 -0
  7. package/dist/decider/__tests__/prover.test.d.ts.map +1 -0
  8. package/dist/decider/__tests__/prover.test.js +246 -0
  9. package/dist/decider/__tests__/prover.test.js.map +1 -0
  10. package/dist/decider/prover.d.ts +36 -4
  11. package/dist/decider/prover.d.ts.map +1 -1
  12. package/dist/decider/prover.js +48 -38
  13. package/dist/decider/prover.js.map +1 -1
  14. package/dist/ic/__tests__/candid.test.d.ts +2 -0
  15. package/dist/ic/__tests__/candid.test.d.ts.map +1 -0
  16. package/dist/ic/__tests__/candid.test.js +44 -0
  17. package/dist/ic/__tests__/candid.test.js.map +1 -0
  18. package/dist/ic/__tests__/client.test.d.ts +2 -0
  19. package/dist/ic/__tests__/client.test.d.ts.map +1 -0
  20. package/dist/ic/__tests__/client.test.js +522 -0
  21. package/dist/ic/__tests__/client.test.js.map +1 -0
  22. package/dist/ic/__tests__/config.test.d.ts +2 -0
  23. package/dist/ic/__tests__/config.test.d.ts.map +1 -0
  24. package/dist/ic/__tests__/config.test.js +72 -0
  25. package/dist/ic/__tests__/config.test.js.map +1 -0
  26. package/dist/ic/__tests__/connections.test.d.ts +2 -0
  27. package/dist/ic/__tests__/connections.test.d.ts.map +1 -0
  28. package/dist/ic/__tests__/connections.test.js +385 -0
  29. package/dist/ic/__tests__/connections.test.js.map +1 -0
  30. package/dist/ic/__tests__/invoice.test.d.ts +2 -0
  31. package/dist/ic/__tests__/invoice.test.d.ts.map +1 -0
  32. package/dist/ic/__tests__/invoice.test.js +95 -0
  33. package/dist/ic/__tests__/invoice.test.js.map +1 -0
  34. package/dist/ic/authorization.d.ts +28 -0
  35. package/dist/ic/authorization.d.ts.map +1 -1
  36. package/dist/ic/authorization.js +24 -0
  37. package/dist/ic/authorization.js.map +1 -1
  38. package/dist/ic/candid.d.ts +72 -0
  39. package/dist/ic/candid.d.ts.map +1 -0
  40. package/dist/ic/candid.js +35 -0
  41. package/dist/ic/candid.js.map +1 -0
  42. package/dist/ic/client.d.ts +57 -59
  43. package/dist/ic/client.d.ts.map +1 -1
  44. package/dist/ic/client.js +59 -81
  45. package/dist/ic/client.js.map +1 -1
  46. package/dist/ic/config.d.ts +27 -0
  47. package/dist/ic/config.d.ts.map +1 -1
  48. package/dist/ic/config.js +27 -0
  49. package/dist/ic/config.js.map +1 -1
  50. package/dist/ic/connections.d.ts +99 -4
  51. package/dist/ic/connections.d.ts.map +1 -1
  52. package/dist/ic/connections.js +222 -30
  53. package/dist/ic/connections.js.map +1 -1
  54. package/dist/ic/encryption.d.ts +33 -0
  55. package/dist/ic/encryption.d.ts.map +1 -1
  56. package/dist/ic/encryption.js +21 -0
  57. package/dist/ic/encryption.js.map +1 -1
  58. package/dist/ic/errors.d.ts +15 -0
  59. package/dist/ic/errors.d.ts.map +1 -1
  60. package/dist/ic/errors.js +15 -0
  61. package/dist/ic/errors.js.map +1 -1
  62. package/dist/ic/idl.d.ts +26 -0
  63. package/dist/ic/idl.d.ts.map +1 -0
  64. package/dist/ic/idl.js +84 -0
  65. package/dist/ic/idl.js.map +1 -0
  66. package/dist/ic/index.d.ts +1 -1
  67. package/dist/ic/index.d.ts.map +1 -1
  68. package/dist/ic/index.js +1 -1
  69. package/dist/ic/index.js.map +1 -1
  70. package/dist/ic/invoice.d.ts.map +1 -1
  71. package/dist/ic/invoice.js.map +1 -1
  72. package/dist/ic/types.d.ts +42 -0
  73. package/dist/ic/types.d.ts.map +1 -1
  74. package/dist/index.d.ts +1 -0
  75. package/dist/index.d.ts.map +1 -1
  76. package/dist/index.js +1 -0
  77. package/dist/index.js.map +1 -1
  78. package/dist/onchain/__tests__/contracts.test.d.ts +2 -0
  79. package/dist/onchain/__tests__/contracts.test.d.ts.map +1 -0
  80. package/dist/onchain/__tests__/contracts.test.js +42 -0
  81. package/dist/onchain/__tests__/contracts.test.js.map +1 -0
  82. package/dist/onchain/contracts.d.ts +22 -0
  83. package/dist/onchain/contracts.d.ts.map +1 -1
  84. package/dist/onchain/contracts.js +22 -0
  85. package/dist/onchain/contracts.js.map +1 -1
  86. package/dist/operations/__tests__/invoice.test.d.ts +2 -0
  87. package/dist/operations/__tests__/invoice.test.d.ts.map +1 -0
  88. package/dist/operations/__tests__/invoice.test.js +261 -0
  89. package/dist/operations/__tests__/invoice.test.js.map +1 -0
  90. package/dist/operations/__tests__/privateSend.test.d.ts +2 -0
  91. package/dist/operations/__tests__/privateSend.test.d.ts.map +1 -0
  92. package/dist/operations/__tests__/privateSend.test.js +135 -0
  93. package/dist/operations/__tests__/privateSend.test.js.map +1 -0
  94. package/dist/operations/__tests__/reexports.test.d.ts +2 -0
  95. package/dist/operations/__tests__/reexports.test.d.ts.map +1 -0
  96. package/dist/operations/__tests__/reexports.test.js +22 -0
  97. package/dist/operations/__tests__/reexports.test.js.map +1 -0
  98. package/dist/operations/__tests__/scanner.test.d.ts +2 -0
  99. package/dist/operations/__tests__/scanner.test.d.ts.map +1 -0
  100. package/dist/operations/__tests__/scanner.test.js +201 -0
  101. package/dist/operations/__tests__/scanner.test.js.map +1 -0
  102. package/dist/operations/__tests__/teleport.test.d.ts +2 -0
  103. package/dist/operations/__tests__/teleport.test.d.ts.map +1 -0
  104. package/dist/operations/__tests__/teleport.test.js +35 -0
  105. package/dist/operations/__tests__/teleport.test.js.map +1 -0
  106. package/dist/operations/__tests__/teleportProof.test.d.ts +2 -0
  107. package/dist/operations/__tests__/teleportProof.test.d.ts.map +1 -0
  108. package/dist/operations/__tests__/teleportProof.test.js +126 -0
  109. package/dist/operations/__tests__/teleportProof.test.js.map +1 -0
  110. package/dist/operations/invoice.d.ts +44 -0
  111. package/dist/operations/invoice.d.ts.map +1 -1
  112. package/dist/operations/invoice.js +30 -0
  113. package/dist/operations/invoice.js.map +1 -1
  114. package/dist/operations/liquidityManager/__tests__/balance.test.d.ts +2 -0
  115. package/dist/operations/liquidityManager/__tests__/balance.test.d.ts.map +1 -0
  116. package/dist/operations/liquidityManager/__tests__/balance.test.js +104 -0
  117. package/dist/operations/liquidityManager/__tests__/balance.test.js.map +1 -0
  118. package/dist/operations/liquidityManager/__tests__/crossUnwrap.test.d.ts +2 -0
  119. package/dist/operations/liquidityManager/__tests__/crossUnwrap.test.d.ts.map +1 -0
  120. package/dist/operations/liquidityManager/__tests__/crossUnwrap.test.js +198 -0
  121. package/dist/operations/liquidityManager/__tests__/crossUnwrap.test.js.map +1 -0
  122. package/dist/operations/liquidityManager/__tests__/helpers.test.d.ts +2 -0
  123. package/dist/operations/liquidityManager/__tests__/helpers.test.d.ts.map +1 -0
  124. package/dist/operations/liquidityManager/__tests__/helpers.test.js +126 -0
  125. package/dist/operations/liquidityManager/__tests__/helpers.test.js.map +1 -0
  126. package/dist/operations/liquidityManager/__tests__/unwrap.test.d.ts +2 -0
  127. package/dist/operations/liquidityManager/__tests__/unwrap.test.d.ts.map +1 -0
  128. package/dist/operations/liquidityManager/__tests__/unwrap.test.js +224 -0
  129. package/dist/operations/liquidityManager/__tests__/unwrap.test.js.map +1 -0
  130. package/dist/operations/liquidityManager/__tests__/wrap.test.d.ts +2 -0
  131. package/dist/operations/liquidityManager/__tests__/wrap.test.d.ts.map +1 -0
  132. package/dist/operations/liquidityManager/__tests__/wrap.test.js +144 -0
  133. package/dist/operations/liquidityManager/__tests__/wrap.test.js.map +1 -0
  134. package/dist/operations/liquidityManager/balance.d.ts +19 -0
  135. package/dist/operations/liquidityManager/balance.d.ts.map +1 -0
  136. package/dist/operations/liquidityManager/balance.js +62 -0
  137. package/dist/operations/liquidityManager/balance.js.map +1 -0
  138. package/dist/operations/liquidityManager/crossUnwrap.d.ts +73 -0
  139. package/dist/operations/liquidityManager/crossUnwrap.d.ts.map +1 -0
  140. package/dist/operations/liquidityManager/crossUnwrap.js +189 -0
  141. package/dist/operations/liquidityManager/crossUnwrap.js.map +1 -0
  142. package/dist/operations/liquidityManager/helpers.d.ts +15521 -0
  143. package/dist/operations/liquidityManager/helpers.d.ts.map +1 -0
  144. package/dist/operations/liquidityManager/helpers.js +81 -0
  145. package/dist/operations/liquidityManager/helpers.js.map +1 -0
  146. package/dist/operations/liquidityManager/index.d.ts +12 -0
  147. package/dist/operations/liquidityManager/index.d.ts.map +1 -0
  148. package/dist/operations/liquidityManager/index.js +9 -0
  149. package/dist/operations/liquidityManager/index.js.map +1 -0
  150. package/dist/operations/liquidityManager/types.d.ts +90 -0
  151. package/dist/operations/liquidityManager/types.d.ts.map +1 -0
  152. package/dist/operations/liquidityManager/types.js +5 -0
  153. package/dist/operations/liquidityManager/types.js.map +1 -0
  154. package/dist/operations/liquidityManager/unwrap.d.ts +54 -0
  155. package/dist/operations/liquidityManager/unwrap.d.ts.map +1 -0
  156. package/dist/operations/liquidityManager/unwrap.js +80 -0
  157. package/dist/operations/liquidityManager/unwrap.js.map +1 -0
  158. package/dist/operations/liquidityManager/wrap.d.ts +38 -0
  159. package/dist/operations/liquidityManager/wrap.d.ts.map +1 -0
  160. package/dist/operations/liquidityManager/wrap.js +53 -0
  161. package/dist/operations/liquidityManager/wrap.js.map +1 -0
  162. package/dist/operations/liquidityManager.d.ts +3 -104
  163. package/dist/operations/liquidityManager.d.ts.map +1 -1
  164. package/dist/operations/liquidityManager.js +3 -343
  165. package/dist/operations/liquidityManager.js.map +1 -1
  166. package/dist/operations/privateSend.d.ts +26 -0
  167. package/dist/operations/privateSend.d.ts.map +1 -1
  168. package/dist/operations/privateSend.js +11 -0
  169. package/dist/operations/privateSend.js.map +1 -1
  170. package/dist/operations/receive/__tests__/announcementStatus.test.d.ts +2 -0
  171. package/dist/operations/receive/__tests__/announcementStatus.test.d.ts.map +1 -0
  172. package/dist/operations/receive/__tests__/announcementStatus.test.js +223 -0
  173. package/dist/operations/receive/__tests__/announcementStatus.test.js.map +1 -0
  174. package/dist/operations/receive/__tests__/cache.test.d.ts +2 -0
  175. package/dist/operations/receive/__tests__/cache.test.d.ts.map +1 -0
  176. package/dist/operations/receive/__tests__/cache.test.js +339 -0
  177. package/dist/operations/receive/__tests__/cache.test.js.map +1 -0
  178. package/dist/operations/receive/__tests__/helpers.test.d.ts +2 -0
  179. package/dist/operations/receive/__tests__/helpers.test.d.ts.map +1 -0
  180. package/dist/operations/receive/__tests__/helpers.test.js +80 -0
  181. package/dist/operations/receive/__tests__/helpers.test.js.map +1 -0
  182. package/dist/operations/receive/__tests__/redeemContext.test.d.ts +2 -0
  183. package/dist/operations/receive/__tests__/redeemContext.test.d.ts.map +1 -0
  184. package/dist/operations/receive/__tests__/redeemContext.test.js +230 -0
  185. package/dist/operations/receive/__tests__/redeemContext.test.js.map +1 -0
  186. package/dist/operations/receive/announcementStatus.d.ts +12 -0
  187. package/dist/operations/receive/announcementStatus.d.ts.map +1 -0
  188. package/dist/operations/receive/announcementStatus.js +56 -0
  189. package/dist/operations/receive/announcementStatus.js.map +1 -0
  190. package/dist/operations/receive/cache.d.ts +69 -0
  191. package/dist/operations/receive/cache.d.ts.map +1 -0
  192. package/dist/operations/receive/cache.js +105 -0
  193. package/dist/operations/receive/cache.js.map +1 -0
  194. package/dist/operations/receive/helpers.d.ts +16 -0
  195. package/dist/operations/receive/helpers.d.ts.map +1 -0
  196. package/dist/operations/receive/helpers.js +33 -0
  197. package/dist/operations/receive/helpers.js.map +1 -0
  198. package/dist/operations/receive/index.d.ts +9 -0
  199. package/dist/operations/receive/index.d.ts.map +1 -0
  200. package/dist/operations/receive/index.js +9 -0
  201. package/dist/operations/receive/index.js.map +1 -0
  202. package/dist/operations/receive/redeemContext.d.ts +16 -0
  203. package/dist/operations/receive/redeemContext.d.ts.map +1 -0
  204. package/dist/operations/receive/redeemContext.js +107 -0
  205. package/dist/operations/receive/redeemContext.js.map +1 -0
  206. package/dist/operations/receive/types.d.ts +141 -0
  207. package/dist/operations/receive/types.d.ts.map +1 -0
  208. package/dist/operations/receive/types.js +5 -0
  209. package/dist/operations/receive/types.js.map +1 -0
  210. package/dist/operations/receive.d.ts +5 -66
  211. package/dist/operations/receive.d.ts.map +1 -1
  212. package/dist/operations/receive.js +5 -173
  213. package/dist/operations/receive.js.map +1 -1
  214. package/dist/operations/scanner.d.ts +37 -0
  215. package/dist/operations/scanner.d.ts.map +1 -1
  216. package/dist/operations/scanner.js +21 -0
  217. package/dist/operations/scanner.js.map +1 -1
  218. package/dist/operations/teleport.d.ts +5 -0
  219. package/dist/operations/teleport.d.ts.map +1 -1
  220. package/dist/operations/teleport.js +5 -0
  221. package/dist/operations/teleport.js.map +1 -1
  222. package/dist/operations/teleportProof.d.ts +34 -0
  223. package/dist/operations/teleportProof.d.ts.map +1 -1
  224. package/dist/operations/teleportProof.js +16 -0
  225. package/dist/operations/teleportProof.js.map +1 -1
  226. package/dist/registry/__tests__/helpers.test.d.ts +2 -0
  227. package/dist/registry/__tests__/helpers.test.d.ts.map +1 -0
  228. package/dist/registry/__tests__/helpers.test.js +98 -0
  229. package/dist/registry/__tests__/helpers.test.js.map +1 -0
  230. package/dist/registry/__tests__/loader.test.d.ts +2 -0
  231. package/dist/registry/__tests__/loader.test.d.ts.map +1 -0
  232. package/dist/registry/__tests__/loader.test.js +300 -0
  233. package/dist/registry/__tests__/loader.test.js.map +1 -0
  234. package/dist/registry/__tests__/normalize.test.d.ts +2 -0
  235. package/dist/registry/__tests__/normalize.test.d.ts.map +1 -0
  236. package/dist/registry/__tests__/normalize.test.js +180 -0
  237. package/dist/registry/__tests__/normalize.test.js.map +1 -0
  238. package/dist/registry/__tests__/parsing.test.d.ts +2 -0
  239. package/dist/registry/__tests__/parsing.test.d.ts.map +1 -0
  240. package/dist/registry/__tests__/parsing.test.js +188 -0
  241. package/dist/registry/__tests__/parsing.test.js.map +1 -0
  242. package/dist/registry/helpers.d.ts +14 -0
  243. package/dist/registry/helpers.d.ts.map +1 -0
  244. package/dist/registry/helpers.js +29 -0
  245. package/dist/registry/helpers.js.map +1 -0
  246. package/dist/registry/index.d.ts +13 -0
  247. package/dist/registry/index.d.ts.map +1 -0
  248. package/dist/registry/index.js +15 -0
  249. package/dist/registry/index.js.map +1 -0
  250. package/dist/registry/loader.d.ts +57 -0
  251. package/dist/registry/loader.d.ts.map +1 -0
  252. package/dist/registry/loader.js +188 -0
  253. package/dist/registry/loader.js.map +1 -0
  254. package/dist/registry/normalize.d.ts +29 -0
  255. package/dist/registry/normalize.d.ts.map +1 -0
  256. package/dist/registry/normalize.js +81 -0
  257. package/dist/registry/normalize.js.map +1 -0
  258. package/dist/registry/parsing.d.ts +55 -0
  259. package/dist/registry/parsing.d.ts.map +1 -0
  260. package/dist/registry/parsing.js +139 -0
  261. package/dist/registry/parsing.js.map +1 -0
  262. package/dist/registry/tokens.d.ts +6 -42
  263. package/dist/registry/tokens.d.ts.map +1 -1
  264. package/dist/registry/tokens.js +6 -231
  265. package/dist/registry/tokens.js.map +1 -1
  266. package/dist/registry/types.d.ts +81 -0
  267. package/dist/registry/types.d.ts.map +1 -0
  268. package/dist/registry/types.js +2 -0
  269. package/dist/registry/types.js.map +1 -0
  270. package/dist/sdk.d.ts +57 -0
  271. package/dist/sdk.d.ts.map +1 -1
  272. package/dist/sdk.js +21 -0
  273. package/dist/sdk.js.map +1 -1
  274. package/dist/sdk.publicApi.test.d.ts +2 -0
  275. package/dist/sdk.publicApi.test.d.ts.map +1 -0
  276. package/dist/sdk.publicApi.test.js +78 -0
  277. package/dist/sdk.publicApi.test.js.map +1 -0
  278. package/dist/types.d.ts +159 -0
  279. package/dist/types.d.ts.map +1 -1
  280. package/dist/utils/__tests__/branded.test.d.ts +2 -0
  281. package/dist/utils/__tests__/branded.test.d.ts.map +1 -0
  282. package/dist/utils/__tests__/branded.test.js +293 -0
  283. package/dist/utils/__tests__/branded.test.js.map +1 -0
  284. package/dist/utils/__tests__/fees.test.d.ts +2 -0
  285. package/dist/utils/__tests__/fees.test.d.ts.map +1 -0
  286. package/dist/utils/__tests__/fees.test.js +84 -0
  287. package/dist/utils/__tests__/fees.test.js.map +1 -0
  288. package/dist/utils/__tests__/hex.test.d.ts +2 -0
  289. package/dist/utils/__tests__/hex.test.d.ts.map +1 -0
  290. package/dist/utils/__tests__/hex.test.js +252 -0
  291. package/dist/utils/__tests__/hex.test.js.map +1 -0
  292. package/dist/utils/__tests__/http.test.d.ts +2 -0
  293. package/dist/utils/__tests__/http.test.d.ts.map +1 -0
  294. package/dist/utils/__tests__/http.test.js +295 -0
  295. package/dist/utils/__tests__/http.test.js.map +1 -0
  296. package/dist/utils/branded.d.ts +154 -0
  297. package/dist/utils/branded.d.ts.map +1 -0
  298. package/dist/utils/branded.js +177 -0
  299. package/dist/utils/branded.js.map +1 -0
  300. package/dist/utils/fees.d.ts +6 -0
  301. package/dist/utils/fees.d.ts.map +1 -1
  302. package/dist/utils/fees.js +4 -0
  303. package/dist/utils/fees.js.map +1 -1
  304. package/dist/utils/hex.d.ts +37 -0
  305. package/dist/utils/hex.d.ts.map +1 -1
  306. package/dist/utils/hex.js +30 -0
  307. package/dist/utils/hex.js.map +1 -1
  308. package/dist/utils/http.d.ts +100 -0
  309. package/dist/utils/http.d.ts.map +1 -1
  310. package/dist/utils/http.js +158 -0
  311. package/dist/utils/http.js.map +1 -1
  312. package/dist/utils/merkle.d.ts +26 -0
  313. package/dist/utils/merkle.d.ts.map +1 -1
  314. package/dist/utils/merkle.js +26 -0
  315. package/dist/utils/merkle.js.map +1 -1
  316. package/dist/wasm/__tests__/artifacts.test.d.ts +2 -0
  317. package/dist/wasm/__tests__/artifacts.test.d.ts.map +1 -0
  318. package/dist/wasm/__tests__/artifacts.test.js +437 -0
  319. package/dist/wasm/__tests__/artifacts.test.js.map +1 -0
  320. package/dist/wasm/__tests__/functions.test.d.ts +2 -0
  321. package/dist/wasm/__tests__/functions.test.d.ts.map +1 -0
  322. package/dist/wasm/__tests__/functions.test.js +34 -0
  323. package/dist/wasm/__tests__/functions.test.js.map +1 -0
  324. package/dist/wasm/__tests__/helpers.test.d.ts +2 -0
  325. package/dist/wasm/__tests__/helpers.test.d.ts.map +1 -0
  326. package/dist/wasm/__tests__/helpers.test.js +128 -0
  327. package/dist/wasm/__tests__/helpers.test.js.map +1 -0
  328. package/dist/wasm/__tests__/loader.test.d.ts +2 -0
  329. package/dist/wasm/__tests__/loader.test.d.ts.map +1 -0
  330. package/dist/wasm/__tests__/loader.test.js +201 -0
  331. package/dist/wasm/__tests__/loader.test.js.map +1 -0
  332. package/dist/wasm/__tests__/runtime.test.d.ts +2 -0
  333. package/dist/wasm/__tests__/runtime.test.d.ts.map +1 -0
  334. package/dist/wasm/__tests__/runtime.test.js +335 -0
  335. package/dist/wasm/__tests__/runtime.test.js.map +1 -0
  336. package/dist/wasm/__tests__/serialization.test.d.ts +2 -0
  337. package/dist/wasm/__tests__/serialization.test.d.ts.map +1 -0
  338. package/dist/wasm/__tests__/serialization.test.js +226 -0
  339. package/dist/wasm/__tests__/serialization.test.js.map +1 -0
  340. package/dist/wasm/__tests__/validation.test.js +15 -15
  341. package/dist/wasm/__tests__/validation.test.js.map +1 -1
  342. package/dist/wasm/artifacts.d.ts +121 -3
  343. package/dist/wasm/artifacts.d.ts.map +1 -1
  344. package/dist/wasm/artifacts.js +175 -50
  345. package/dist/wasm/artifacts.js.map +1 -1
  346. package/dist/wasm/functions.d.ts +77 -0
  347. package/dist/wasm/functions.d.ts.map +1 -0
  348. package/dist/wasm/functions.js +120 -0
  349. package/dist/wasm/functions.js.map +1 -0
  350. package/dist/wasm/helpers.d.ts +32 -0
  351. package/dist/wasm/helpers.d.ts.map +1 -0
  352. package/dist/wasm/helpers.js +79 -0
  353. package/dist/wasm/helpers.js.map +1 -0
  354. package/dist/wasm/index.d.ts +13 -68
  355. package/dist/wasm/index.d.ts.map +1 -1
  356. package/dist/wasm/index.js +14 -514
  357. package/dist/wasm/index.js.map +1 -1
  358. package/dist/wasm/loader.d.ts +76 -0
  359. package/dist/wasm/loader.d.ts.map +1 -0
  360. package/dist/wasm/loader.js +145 -0
  361. package/dist/wasm/loader.js.map +1 -0
  362. package/dist/wasm/runtime.d.ts +65 -0
  363. package/dist/wasm/runtime.d.ts.map +1 -0
  364. package/dist/wasm/runtime.js +227 -0
  365. package/dist/wasm/runtime.js.map +1 -0
  366. package/dist/wasm/serialization.d.ts +113 -0
  367. package/dist/wasm/serialization.d.ts.map +1 -0
  368. package/dist/wasm/serialization.js +188 -0
  369. package/dist/wasm/serialization.js.map +1 -0
  370. package/dist/wasm/types.d.ts +30 -0
  371. package/dist/wasm/types.d.ts.map +1 -0
  372. package/dist/wasm/types.js +2 -0
  373. package/dist/wasm/types.js.map +1 -0
  374. package/dist/zkp/__tests__/proofService.test.d.ts +2 -0
  375. package/dist/zkp/__tests__/proofService.test.d.ts.map +1 -0
  376. package/dist/zkp/__tests__/proofService.test.js +283 -0
  377. package/dist/zkp/__tests__/proofService.test.js.map +1 -0
  378. package/dist/zkp/__tests__/proofUtils.test.js +86 -0
  379. package/dist/zkp/__tests__/proofUtils.test.js.map +1 -1
  380. package/dist/zkp/__tests__/runNovaProver.test.js +13 -1
  381. package/dist/zkp/__tests__/runNovaProver.test.js.map +1 -1
  382. package/dist/zkp/__tests__/workerClient.test.d.ts +2 -0
  383. package/dist/zkp/__tests__/workerClient.test.d.ts.map +1 -0
  384. package/dist/zkp/__tests__/workerClient.test.js +415 -0
  385. package/dist/zkp/__tests__/workerClient.test.js.map +1 -0
  386. package/dist/zkp/index.d.ts +1 -1
  387. package/dist/zkp/index.d.ts.map +1 -1
  388. package/dist/zkp/index.js +1 -1
  389. package/dist/zkp/index.js.map +1 -1
  390. package/dist/zkp/proofService.d.ts +27 -0
  391. package/dist/zkp/proofService.d.ts.map +1 -1
  392. package/dist/zkp/proofService.js +29 -21
  393. package/dist/zkp/proofService.js.map +1 -1
  394. package/dist/zkp/proofUtils.d.ts +36 -0
  395. package/dist/zkp/proofUtils.d.ts.map +1 -1
  396. package/dist/zkp/proofUtils.js +50 -0
  397. package/dist/zkp/proofUtils.js.map +1 -1
  398. package/dist/zkp/workerClient.d.ts +65 -0
  399. package/dist/zkp/workerClient.d.ts.map +1 -1
  400. package/dist/zkp/workerClient.js +135 -61
  401. package/dist/zkp/workerClient.js.map +1 -1
  402. package/dist/zkp/workerTypes.d.ts +27 -0
  403. package/dist/zkp/workerTypes.d.ts.map +1 -1
  404. package/package.json +7 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proofService.test.js","sourceRoot":"","sources":["../../../src/zkp/__tests__/proofService.test.ts"],"names":[],"mappings":"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"}
@@ -16,4 +16,90 @@ describe("appendDummySteps", () => {
16
16
  expect(steps[0].isDummy).toBe(true);
17
17
  });
18
18
  });
19
+ describe("sortProofsByLeafIndex", () => {
20
+ const createEvent = (from, value) => ({
21
+ from,
22
+ to: "0x" + "00".repeat(20),
23
+ value,
24
+ eventIndex: 0n,
25
+ ethBlockNumber: 0n,
26
+ });
27
+ const createProof = (leafIndex) => ({
28
+ leafIndex,
29
+ siblings: [],
30
+ });
31
+ test("returns empty arrays when given empty input", () => {
32
+ const result = proofUtils.sortProofsByLeafIndex([], []);
33
+ expect(result.events).toEqual([]);
34
+ expect(result.proofs).toEqual([]);
35
+ });
36
+ test("returns single element unchanged", () => {
37
+ const events = [createEvent("0x1111", 100n)];
38
+ const proofs = [createProof(5n)];
39
+ const result = proofUtils.sortProofsByLeafIndex(events, proofs);
40
+ expect(result.events).toHaveLength(1);
41
+ expect(result.proofs).toHaveLength(1);
42
+ expect(result.proofs[0].leafIndex).toBe(5n);
43
+ });
44
+ test("sorts events and proofs by leaf index ascending", () => {
45
+ const events = [
46
+ createEvent("0x3333", 300n),
47
+ createEvent("0x1111", 100n),
48
+ createEvent("0x2222", 200n),
49
+ ];
50
+ const proofs = [createProof(10n), createProof(2n), createProof(5n)];
51
+ const result = proofUtils.sortProofsByLeafIndex(events, proofs);
52
+ expect(result.proofs.map((p) => p.leafIndex)).toEqual([2n, 5n, 10n]);
53
+ expect(result.events.map((e) => e.value)).toEqual([100n, 200n, 300n]);
54
+ });
55
+ test("maintains correspondence between events and proofs after sorting", () => {
56
+ const events = [
57
+ createEvent("0xAAA", 1000n),
58
+ createEvent("0xBBB", 2000n),
59
+ createEvent("0xCCC", 3000n),
60
+ ];
61
+ const proofs = [createProof(99n), createProof(1n), createProof(50n)];
62
+ const result = proofUtils.sortProofsByLeafIndex(events, proofs);
63
+ // Event with value 2000n had proof with leafIndex 1n, should be first
64
+ expect(result.events[0].value).toBe(2000n);
65
+ expect(result.proofs[0].leafIndex).toBe(1n);
66
+ // Event with value 3000n had proof with leafIndex 50n, should be second
67
+ expect(result.events[1].value).toBe(3000n);
68
+ expect(result.proofs[1].leafIndex).toBe(50n);
69
+ // Event with value 1000n had proof with leafIndex 99n, should be third
70
+ expect(result.events[2].value).toBe(1000n);
71
+ expect(result.proofs[2].leafIndex).toBe(99n);
72
+ });
73
+ test("handles already sorted input", () => {
74
+ const events = [
75
+ createEvent("0x1111", 100n),
76
+ createEvent("0x2222", 200n),
77
+ createEvent("0x3333", 300n),
78
+ ];
79
+ const proofs = [createProof(1n), createProof(2n), createProof(3n)];
80
+ const result = proofUtils.sortProofsByLeafIndex(events, proofs);
81
+ expect(result.proofs.map((p) => p.leafIndex)).toEqual([1n, 2n, 3n]);
82
+ expect(result.events.map((e) => e.value)).toEqual([100n, 200n, 300n]);
83
+ });
84
+ test("handles reverse sorted input", () => {
85
+ const events = [
86
+ createEvent("0x3333", 300n),
87
+ createEvent("0x2222", 200n),
88
+ createEvent("0x1111", 100n),
89
+ ];
90
+ const proofs = [createProof(3n), createProof(2n), createProof(1n)];
91
+ const result = proofUtils.sortProofsByLeafIndex(events, proofs);
92
+ expect(result.proofs.map((p) => p.leafIndex)).toEqual([1n, 2n, 3n]);
93
+ expect(result.events.map((e) => e.value)).toEqual([100n, 200n, 300n]);
94
+ });
95
+ test("does not mutate original arrays", () => {
96
+ const events = [createEvent("0x2222", 200n), createEvent("0x1111", 100n)];
97
+ const proofs = [createProof(20n), createProof(10n)];
98
+ proofUtils.sortProofsByLeafIndex(events, proofs);
99
+ expect(proofs[0].leafIndex).toBe(20n);
100
+ expect(proofs[1].leafIndex).toBe(10n);
101
+ expect(events[0].value).toBe(200n);
102
+ expect(events[1].value).toBe(100n);
103
+ });
104
+ });
19
105
  //# sourceMappingURL=proofUtils.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"proofUtils.test.js","sourceRoot":"","sources":["../../../src/zkp/__tests__/proofUtils.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,KAAK,UAAU,MAAM,kBAAkB,CAAC;AAE/C,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,IAAI,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAClE,MAAM,KAAK,GAAU,EAAE,CAAC;QAExB,UAAU,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAEnC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACxC,MAAM,SAAS,GAAG,EAAE,IAAI,MAAM,CAAC,2BAA2B,CAAC,CAAC;QAC5D,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACxC,MAAM,iBAAiB,GAAG,CAAC,SAAS,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC,QAAQ,EAAE,CAAC;QACnE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACnD,MAAM,gBAAgB,GAAG,CAAC,SAAS,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;QACrD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACvD,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,2BAA2B,CAAC,CAAC;QACpE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"proofUtils.test.js","sourceRoot":"","sources":["../../../src/zkp/__tests__/proofUtils.test.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,18 @@ const __dirname = path.dirname(__filename);
12
12
  const repoRoot = path.resolve(__dirname, "../../../../");
13
13
  const wasmPath = path.join(repoRoot, "sdk", "src", "assets", "wasm", "zerc20_wasm_bg.wasm");
14
14
  const frontendArtifactsPath = path.join(repoRoot, "public", "artifacts");
15
+ // Check if required artifacts exist
16
+ const REQUIRED_ARTIFACTS = [
17
+ "withdraw_local_groth16_pk.bin",
18
+ "withdraw_local_groth16_vk.bin",
19
+ "withdraw_global_groth16_pk.bin",
20
+ "withdraw_global_groth16_vk.bin",
21
+ "withdraw_local_nova_pp.bin",
22
+ "withdraw_local_nova_vp.bin",
23
+ "withdraw_global_nova_pp.bin",
24
+ "withdraw_global_nova_vp.bin",
25
+ ];
26
+ const artifactsAvailable = REQUIRED_ARTIFACTS.every((filename) => existsSync(path.join(frontendArtifactsPath, filename)));
15
27
  const originalFetch = globalThis.fetch;
16
28
  let proofs;
17
29
  function readArtifact(filename) {
@@ -86,7 +98,7 @@ afterAll(() => {
86
98
  }
87
99
  proofs = undefined;
88
100
  });
89
- describe("runNovaProver (dummy steps)", () => {
101
+ describe.skipIf(!artifactsAvailable)("runNovaProver (dummy steps)", () => {
90
102
  it("produces a withdraw nova proof using deterministic dummy steps", async () => {
91
103
  const result = await proofs.runNovaProver({
92
104
  aggregationState: {
@@ -1 +1 @@
1
- {"version":3,"file":"runNovaProver.test.js","sourceRoot":"","sources":["../../../src/zkp/__tests__/runNovaProver.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runNovaProver.test.js","sourceRoot":"","sources":["../../../src/zkp/__tests__/runNovaProver.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=workerClient.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workerClient.test.d.ts","sourceRoot":"","sources":["../../../src/zkp/__tests__/workerClient.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,415 @@
1
+ import { afterEach, beforeEach, describe, expect, test, vi } from "vitest";
2
+ import { ZkpWorkerClient, canUseZkpWorker, disableZkpWorker, resetZkpWorker, getDefaultZkpWorkerClient, } from "../workerClient.js";
3
+ // Mock Worker class for Node.js environment
4
+ class MockWorker {
5
+ onmessage = null;
6
+ onerror = null;
7
+ messageListeners = [];
8
+ errorListeners = [];
9
+ terminated = false;
10
+ addEventListener(type, listener) {
11
+ if (type === "message") {
12
+ this.messageListeners.push(listener);
13
+ }
14
+ else if (type === "error") {
15
+ this.errorListeners.push(listener);
16
+ }
17
+ }
18
+ postMessage(_message) {
19
+ // Mock implementation - do nothing by default
20
+ }
21
+ terminate() {
22
+ this.terminated = true;
23
+ }
24
+ // Test helpers
25
+ simulateMessage(data) {
26
+ const event = { data };
27
+ this.messageListeners.forEach((listener) => listener(event));
28
+ }
29
+ simulateError(error) {
30
+ const event = { error };
31
+ this.errorListeners.forEach((listener) => listener(event));
32
+ }
33
+ }
34
+ describe("ZkpWorkerClient", () => {
35
+ let mockWorker;
36
+ beforeEach(() => {
37
+ mockWorker = new MockWorker();
38
+ vi.stubGlobal("Worker", MockWorker);
39
+ });
40
+ afterEach(() => {
41
+ vi.unstubAllGlobals();
42
+ });
43
+ describe("constructor", () => {
44
+ test("creates client with default options", () => {
45
+ const client = new ZkpWorkerClient();
46
+ expect(client.canUse()).toBe(true);
47
+ });
48
+ test("creates client with custom worker factory", () => {
49
+ const customWorker = new MockWorker();
50
+ const client = new ZkpWorkerClient({
51
+ createWorker: () => customWorker,
52
+ });
53
+ expect(client.canUse()).toBe(true);
54
+ });
55
+ });
56
+ describe("canUse", () => {
57
+ test("returns true when Worker is available and not failed", () => {
58
+ const client = new ZkpWorkerClient();
59
+ expect(client.canUse()).toBe(true);
60
+ });
61
+ test("returns false when Worker is not available", () => {
62
+ vi.stubGlobal("Worker", undefined);
63
+ const client = new ZkpWorkerClient();
64
+ expect(client.canUse()).toBe(false);
65
+ });
66
+ test("returns false after disable is called", () => {
67
+ const client = new ZkpWorkerClient();
68
+ client.disable();
69
+ expect(client.canUse()).toBe(false);
70
+ });
71
+ });
72
+ describe("runJob", () => {
73
+ test("creates worker on first job", async () => {
74
+ let workerCreated = false;
75
+ const client = new ZkpWorkerClient({
76
+ createWorker: () => {
77
+ workerCreated = true;
78
+ const worker = new MockWorker();
79
+ // Auto-respond with success
80
+ setTimeout(() => {
81
+ worker.simulateMessage({
82
+ id: 0,
83
+ type: "result",
84
+ result: { test: "data" },
85
+ });
86
+ }, 0);
87
+ return worker;
88
+ },
89
+ });
90
+ const promise = client.runJob("singleTeleport", {});
91
+ expect(workerCreated).toBe(true);
92
+ await expect(promise).resolves.toEqual({ test: "data" });
93
+ });
94
+ test("reuses existing worker for subsequent jobs", async () => {
95
+ let createCount = 0;
96
+ const sharedWorker = new MockWorker();
97
+ const client = new ZkpWorkerClient({
98
+ createWorker: () => {
99
+ createCount++;
100
+ return sharedWorker;
101
+ },
102
+ });
103
+ // Start first job
104
+ const promise1 = client.runJob("singleTeleport", {});
105
+ expect(createCount).toBe(1);
106
+ // Start second job
107
+ const promise2 = client.runJob("nova", {});
108
+ expect(createCount).toBe(1); // Still 1, worker reused
109
+ // Respond to both jobs
110
+ sharedWorker.simulateMessage({ id: 0, type: "result", result: "result1" });
111
+ sharedWorker.simulateMessage({ id: 1, type: "result", result: "result2" });
112
+ await expect(promise1).resolves.toBe("result1");
113
+ await expect(promise2).resolves.toBe("result2");
114
+ });
115
+ test("increments job IDs", async () => {
116
+ const postedMessages = [];
117
+ const testWorker = new MockWorker();
118
+ testWorker.postMessage = (msg) => postedMessages.push(msg);
119
+ const client = new ZkpWorkerClient({
120
+ createWorker: () => testWorker,
121
+ });
122
+ client.runJob("singleTeleport", {});
123
+ client.runJob("nova", {});
124
+ client.runJob("singleTeleport", {});
125
+ expect(postedMessages).toHaveLength(3);
126
+ expect(postedMessages[0].id).toBe(0);
127
+ expect(postedMessages[1].id).toBe(1);
128
+ expect(postedMessages[2].id).toBe(2);
129
+ });
130
+ test("throws when worker previously failed", async () => {
131
+ const client = new ZkpWorkerClient({
132
+ createWorker: () => new MockWorker(),
133
+ });
134
+ client.disable();
135
+ await expect(client.runJob("singleTeleport", {})).rejects.toThrow("ZKP worker previously failed and has been disabled");
136
+ });
137
+ test("throws when Worker API is not available", async () => {
138
+ vi.stubGlobal("Worker", undefined);
139
+ const client = new ZkpWorkerClient();
140
+ await expect(client.runJob("singleTeleport", {})).rejects.toThrow("Web Worker API is not available");
141
+ });
142
+ test("resolves with result on success message", async () => {
143
+ const testWorker = new MockWorker();
144
+ const client = new ZkpWorkerClient({
145
+ createWorker: () => testWorker,
146
+ });
147
+ const promise = client.runJob("singleTeleport", {});
148
+ testWorker.simulateMessage({
149
+ id: 0,
150
+ type: "result",
151
+ result: { proofCalldata: "0x123", publicInputs: [], treeDepth: 20 },
152
+ });
153
+ await expect(promise).resolves.toEqual({
154
+ proofCalldata: "0x123",
155
+ publicInputs: [],
156
+ treeDepth: 20,
157
+ });
158
+ });
159
+ test("rejects with error on error message", async () => {
160
+ const testWorker = new MockWorker();
161
+ const client = new ZkpWorkerClient({
162
+ createWorker: () => testWorker,
163
+ });
164
+ const promise = client.runJob("singleTeleport", {});
165
+ testWorker.simulateMessage({
166
+ id: 0,
167
+ type: "error",
168
+ error: { message: "Proof generation failed" },
169
+ });
170
+ await expect(promise).rejects.toThrow("Proof generation failed");
171
+ });
172
+ test("rejects with default message when error has no message", async () => {
173
+ const testWorker = new MockWorker();
174
+ const client = new ZkpWorkerClient({
175
+ createWorker: () => testWorker,
176
+ });
177
+ const promise = client.runJob("singleTeleport", {});
178
+ testWorker.simulateMessage({
179
+ id: 0,
180
+ type: "error",
181
+ error: {},
182
+ });
183
+ await expect(promise).rejects.toThrow("ZKP worker failure");
184
+ });
185
+ test("rejects on unexpected message type", async () => {
186
+ const testWorker = new MockWorker();
187
+ const client = new ZkpWorkerClient({
188
+ createWorker: () => testWorker,
189
+ });
190
+ const promise = client.runJob("singleTeleport", {});
191
+ testWorker.simulateMessage({
192
+ id: 0,
193
+ type: "unknown",
194
+ });
195
+ await expect(promise).rejects.toThrow("unexpected message type");
196
+ });
197
+ test("ignores messages with unknown job ID", async () => {
198
+ const testWorker = new MockWorker();
199
+ const client = new ZkpWorkerClient({
200
+ createWorker: () => testWorker,
201
+ });
202
+ const promise = client.runJob("singleTeleport", {});
203
+ // Message with unknown ID should be ignored
204
+ testWorker.simulateMessage({
205
+ id: 999,
206
+ type: "result",
207
+ result: "wrong",
208
+ });
209
+ // Original job should still be pending
210
+ testWorker.simulateMessage({
211
+ id: 0,
212
+ type: "result",
213
+ result: "correct",
214
+ });
215
+ await expect(promise).resolves.toBe("correct");
216
+ });
217
+ test("ignores invalid messages", async () => {
218
+ const testWorker = new MockWorker();
219
+ const client = new ZkpWorkerClient({
220
+ createWorker: () => testWorker,
221
+ });
222
+ const promise = client.runJob("singleTeleport", {});
223
+ // Invalid messages should be ignored
224
+ testWorker.simulateMessage(null);
225
+ testWorker.simulateMessage("string");
226
+ testWorker.simulateMessage(123);
227
+ // Valid message should still work
228
+ testWorker.simulateMessage({
229
+ id: 0,
230
+ type: "result",
231
+ result: "success",
232
+ });
233
+ await expect(promise).resolves.toBe("success");
234
+ });
235
+ });
236
+ describe("disable", () => {
237
+ test("terminates worker", async () => {
238
+ const testWorker = new MockWorker();
239
+ const client = new ZkpWorkerClient({
240
+ createWorker: () => testWorker,
241
+ });
242
+ // Create worker by running a job
243
+ const promise = client.runJob("singleTeleport", {});
244
+ expect(testWorker.terminated).toBe(false);
245
+ client.disable();
246
+ expect(testWorker.terminated).toBe(true);
247
+ // Await rejection to prevent unhandled rejection
248
+ await expect(promise).rejects.toThrow("ZKP worker disabled");
249
+ });
250
+ test("rejects pending jobs with provided error", async () => {
251
+ const testWorker = new MockWorker();
252
+ const client = new ZkpWorkerClient({
253
+ createWorker: () => testWorker,
254
+ });
255
+ const promise1 = client.runJob("singleTeleport", {});
256
+ const promise2 = client.runJob("nova", {});
257
+ const customError = new Error("Custom disable reason");
258
+ client.disable(customError);
259
+ await expect(promise1).rejects.toThrow("Custom disable reason");
260
+ await expect(promise2).rejects.toThrow("Custom disable reason");
261
+ });
262
+ test("rejects pending jobs with default error when none provided", async () => {
263
+ const testWorker = new MockWorker();
264
+ const client = new ZkpWorkerClient({
265
+ createWorker: () => testWorker,
266
+ });
267
+ const promise = client.runJob("singleTeleport", {});
268
+ client.disable();
269
+ await expect(promise).rejects.toThrow("ZKP worker disabled");
270
+ });
271
+ test("sets failed state", () => {
272
+ const client = new ZkpWorkerClient();
273
+ expect(client.canUse()).toBe(true);
274
+ client.disable();
275
+ expect(client.canUse()).toBe(false);
276
+ });
277
+ });
278
+ describe("reset", () => {
279
+ test("terminates existing worker", () => {
280
+ const testWorker = new MockWorker();
281
+ const client = new ZkpWorkerClient({
282
+ createWorker: () => testWorker,
283
+ });
284
+ client.runJob("singleTeleport", {});
285
+ expect(testWorker.terminated).toBe(false);
286
+ client.reset();
287
+ expect(testWorker.terminated).toBe(true);
288
+ });
289
+ test("clears failed state", () => {
290
+ const client = new ZkpWorkerClient();
291
+ client.disable();
292
+ expect(client.canUse()).toBe(false);
293
+ client.reset();
294
+ expect(client.canUse()).toBe(true);
295
+ });
296
+ test("resets job ID counter", async () => {
297
+ const postedMessages = [];
298
+ let workerInstance = new MockWorker();
299
+ const client = new ZkpWorkerClient({
300
+ createWorker: () => {
301
+ workerInstance = new MockWorker();
302
+ workerInstance.postMessage = (msg) => postedMessages.push(msg);
303
+ return workerInstance;
304
+ },
305
+ });
306
+ client.runJob("singleTeleport", {});
307
+ client.runJob("nova", {});
308
+ expect(postedMessages[1].id).toBe(1);
309
+ client.reset();
310
+ postedMessages.length = 0;
311
+ client.runJob("singleTeleport", {});
312
+ expect(postedMessages[0].id).toBe(0);
313
+ });
314
+ test("clears pending jobs", async () => {
315
+ const testWorker = new MockWorker();
316
+ const client = new ZkpWorkerClient({
317
+ createWorker: () => testWorker,
318
+ });
319
+ // Start jobs
320
+ const promise1 = client.runJob("singleTeleport", {});
321
+ const promise2 = client.runJob("nova", {});
322
+ // Catch rejections to prevent unhandled rejection
323
+ promise1.catch(() => { });
324
+ promise2.catch(() => { });
325
+ // Reset should not throw
326
+ expect(() => client.reset()).not.toThrow();
327
+ });
328
+ });
329
+ describe("worker error handling", () => {
330
+ test("rejects all pending jobs on worker error", async () => {
331
+ const testWorker = new MockWorker();
332
+ const client = new ZkpWorkerClient({
333
+ createWorker: () => testWorker,
334
+ });
335
+ const promise1 = client.runJob("singleTeleport", {});
336
+ const promise2 = client.runJob("nova", {});
337
+ testWorker.simulateError(new Error("Worker crashed"));
338
+ await expect(promise1).rejects.toThrow("Worker crashed");
339
+ await expect(promise2).rejects.toThrow("Worker crashed");
340
+ });
341
+ test("uses default error when error event has no error", async () => {
342
+ const testWorker = new MockWorker();
343
+ const client = new ZkpWorkerClient({
344
+ createWorker: () => testWorker,
345
+ });
346
+ const promise = client.runJob("singleTeleport", {});
347
+ testWorker.simulateError();
348
+ await expect(promise).rejects.toThrow("ZKP worker error");
349
+ });
350
+ test("marks client as failed after error", async () => {
351
+ const testWorker = new MockWorker();
352
+ const client = new ZkpWorkerClient({
353
+ createWorker: () => testWorker,
354
+ });
355
+ const promise = client.runJob("singleTeleport", {});
356
+ expect(client.canUse()).toBe(true);
357
+ testWorker.simulateError(new Error("crash"));
358
+ expect(client.canUse()).toBe(false);
359
+ // Await rejection to prevent unhandled rejection
360
+ await expect(promise).rejects.toThrow("crash");
361
+ });
362
+ test("terminates worker after error", async () => {
363
+ const testWorker = new MockWorker();
364
+ const client = new ZkpWorkerClient({
365
+ createWorker: () => testWorker,
366
+ });
367
+ const promise = client.runJob("singleTeleport", {});
368
+ expect(testWorker.terminated).toBe(false);
369
+ testWorker.simulateError(new Error("crash"));
370
+ expect(testWorker.terminated).toBe(true);
371
+ // Await rejection to prevent unhandled rejection
372
+ await expect(promise).rejects.toThrow("crash");
373
+ });
374
+ });
375
+ });
376
+ describe("module-level functions (backward compatibility)", () => {
377
+ afterEach(() => {
378
+ resetZkpWorker();
379
+ });
380
+ describe("canUseZkpWorker", () => {
381
+ test("returns true initially when Worker is available", () => {
382
+ vi.stubGlobal("Worker", MockWorker);
383
+ expect(canUseZkpWorker()).toBe(true);
384
+ vi.unstubAllGlobals();
385
+ });
386
+ test("returns false after disableZkpWorker", () => {
387
+ vi.stubGlobal("Worker", MockWorker);
388
+ disableZkpWorker();
389
+ expect(canUseZkpWorker()).toBe(false);
390
+ vi.unstubAllGlobals();
391
+ });
392
+ });
393
+ describe("resetZkpWorker", () => {
394
+ test("restores canUse after disable", () => {
395
+ vi.stubGlobal("Worker", MockWorker);
396
+ disableZkpWorker();
397
+ expect(canUseZkpWorker()).toBe(false);
398
+ resetZkpWorker();
399
+ expect(canUseZkpWorker()).toBe(true);
400
+ vi.unstubAllGlobals();
401
+ });
402
+ });
403
+ describe("getDefaultZkpWorkerClient", () => {
404
+ test("returns the default client instance", () => {
405
+ const client = getDefaultZkpWorkerClient();
406
+ expect(client).toBeInstanceOf(ZkpWorkerClient);
407
+ });
408
+ test("returns the same instance on multiple calls", () => {
409
+ const client1 = getDefaultZkpWorkerClient();
410
+ const client2 = getDefaultZkpWorkerClient();
411
+ expect(client1).toBe(client2);
412
+ });
413
+ });
414
+ });
415
+ //# sourceMappingURL=workerClient.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workerClient.test.js","sourceRoot":"","sources":["../../../src/zkp/__tests__/workerClient.test.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  export { ProofService } from "./proofService.js";
2
- export { canUseZkpWorker, disableZkpWorker } from "./workerClient.js";
2
+ export { ZkpWorkerClient, type ZkpWorkerClientOptions, canUseZkpWorker, disableZkpWorker, resetZkpWorker, getDefaultZkpWorkerClient, } from "./workerClient.js";
3
3
  //# sourceMappingURL=index.d.ts.map