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
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/wasm/index.ts"],"names":[],"mappings":"AAwBA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,qBAAqB,GAAG,qCAAqC,CAAC;AACpE,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAC9B,wCAAwC,EACxC,MAAM,CAAC,IAAI,CAAC,GAAG,CAChB,CAAC,QAAQ,EAAE,CAAC;AASb,IAAI,aAAuC,CAAC;AAC5C,IAAI,eAAkD,CAAC;AAEvD,SAAS,aAAa;IACpB,OAAO,CACL,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,OAAO,CAAC,QAAQ,EAAE,IAAI,KAAK,QAAQ,CAC7E,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,iBAAiB;IAC9B,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,aAAa,CAAC;IACvB,CAAC;IACD,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,eAAe,GAAG,eAAe,EAAE,CAAC;IACtC,CAAC;IACD,aAAa,GAAG,MAAM,eAAe,CAAC;IACtC,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,KAAK,UAAU,eAAe;IAC5B,IAAI,aAAa,EAAE,EAAE,CAAC;QACpB,OAAO,gBAAgB,EAAE,CAAC;IAC5B,CAAC;IACD,OAAO,MAAM,CAAC,mCAAmC,CAAC,CAAC;AACrD,CAAC;AAED,KAAK,UAAU,gBAAgB;IAC7B,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,cAAc,EAAE,CAAC;IACjD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC/C,OAAO,OAAO,CAAC,oCAAoC,CAAiB,CAAC;AACvE,CAAC;AAED,KAAK,UAAU,cAAc;IAC3B,MAAM,UAAU,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAU,CAAC;IACtD,IAAI,SAAkB,CAAC;IACvB,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,CAAC,MAAM,MAAM,CAAC,SAAmB,CAAC,CAAe,CAAC;YAC9D,OAAO,GAAG,CAAC;QACb,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,SAAS,GAAG,KAAK,CAAC;QACpB,CAAC;IACH,CAAC;IACD,MAAM,SAAS,IAAI,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;AAC/E,CAAC;AAED,SAAS,oBAAoB,CAC3B,QAAsB;IAEtB,OAAO,OAAO,QAAQ,CAAC,OAAO,KAAK,UAAU,CAAC;AAChD,CAAC;AAmBD,MAAM,OAAO,WAAW;IACd,OAAO,CAAqB;IAC5B,WAAW,CAAU;IACrB,WAAW,CAAiB;IAC5B,YAAY,CAAgB;IAEpC,YAAY,UAA8B,EAAE;QAC1C,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,WAAW,GAAG,iBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACpD,CAAC;IAED,SAAS,CAAC,OAA2B;QACnC,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,WAAW,GAAG,iBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,cAAc,CAAC,GAAY;QACzB,IAAI,CAAC,WAAW,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAC1C,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,OAAe,EACf,kBAA0B,EAC1B,gBAAiC,EACjC,gBAAwB;QAExB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,OAAO,gBAAgB,CACrB,IAAI,CAAC,qBAAqB,CACxB,YAAY,CAAC,OAAO,CAAC,EACrB,YAAY,CAAC,kBAAkB,CAAC,EAChC,QAAQ,CAAC,gBAAgB,CAAC,EAC1B,YAAY,CAAC,gBAAgB,CAAC,CAC/B,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,OAAe,EACf,YAAoB,EACpB,gBAAiC,EACjC,gBAAwB;QAExB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,OAAO,gBAAgB,CACrB,IAAI,CAAC,qBAAqB,CACxB,YAAY,CAAC,OAAO,CAAC,EACrB,YAAY,CAAC,YAAY,CAAC,EAC1B,QAAQ,CAAC,gBAAgB,CAAC,EAC1B,YAAY,CAAC,gBAAgB,CAAC,CAC/B,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,OAAe,EACf,YAAoB,EACpB,KAAa,EACb,gBAAiC,EACjC,gBAAwB;QAExB,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAC/B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,OAAO,gBAAgB,CACrB,IAAI,CAAC,oBAAoB,CACvB,YAAY,CAAC,OAAO,CAAC,EACrB,YAAY,CAAC,YAAY,CAAC,EAC1B,KAAK,EACL,QAAQ,CAAC,gBAAgB,CAAC,EAC1B,YAAY,CAAC,gBAAgB,CAAC,CAC/B,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,gBAAiC,EACjC,gBAAwB,EACxB,SAAiB,EACjB,QAAgB;QAEhB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,uBAAuB,CACzC,QAAQ,CAAC,gBAAgB,CAAC,EAC1B,YAAY,CAAC,gBAAgB,CAAC,EAC9B,YAAY,CAAC,SAAS,CAAC,EACvB,YAAY,CAAC,QAAQ,CAAC,CACvB,CAAC;QACF,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,UAAkB;QAC5C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,OAAO,eAAe,CACpB,IAAI,CAAC,wBAAwB,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CACxD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,OAAwB,EACxB,gBAAwB,EACxB,QAAgB;QAEhB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,OAAO,YAAY,CACjB,IAAI,CAAC,oBAAoB,CACvB,QAAQ,CAAC,OAAO,CAAC,EACjB,YAAY,CAAC,gBAAgB,CAAC,EAC9B,YAAY,CAAC,QAAQ,CAAC,CACvB,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,QAA2B;QAC/C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,OAAO,YAAY,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,sBAAsB,CAC1B,QAA2B,EAC3B,KAAa;QAEb,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,MAAM,QAAQ,GAAa,IAAI,CAAC,wBAAwB,CACtD,QAAQ,CAAC,KAAK,EAAE,EAChB,KAAK,CACN,CAAC;QACF,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,yBAAyB,CAC7B,MAAuC;QAEvC,MAAM,OAAO,GAIT;YACF,GAAG,EAAE,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC;YAClC,KAAK,EAAE,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC;SACzC,CAAC;QACF,IAAI,MAAM,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACxC,OAAO,CAAC,cAAc,GAAG,YAAY,CACnC,MAAM,CAAC,cAAc,EACrB,gBAAgB,CACjB,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,MAAM,QAAQ,GACZ,MAAM,IAAI,CAAC,4BAA4B,CAAC,OAAO,CAAC,CAAC;QACnD,OAAO,+BAA+B,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,mBAAmB,CACvB,MAAiC;QAEjC,MAAM,OAAO,GAAG;YACd,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;YAC3C,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC;YAC9C,aAAa,EAAE,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAClD,YAAY,CAAC,OAAO,CAAC,CACtB;SACF,CAAC;QACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,MAAM,SAAS,GACb,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAC5C,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,2BAA2B,CAC/B,MAAyC;QAEzC,MAAM,OAAO,GAAG;YACd,gBAAgB,EAAE,6BAA6B,CAAC,MAAM,CAAC,gBAAgB,CAAC;YACxE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC;SAChD,CAAC;QACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,MAAM,YAAY,GAChB,IAAI,CAAC,8BAA8B,CAAC,OAAO,CAAC,CAAC;QAC/C,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,+BAA+B,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7E,CAAC;IAED,KAAK,CAAC,8BAA8B,CAClC,MAAsC;QAEtC,MAAM,OAAO,GAAG;YACd,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,KAAK,EAAE,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC;YACxC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;YACrC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC;SACjD,CAAC;QACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,MAAM,SAAS,GACb,MAAM,IAAI,CAAC,kCAAkC,CAAC,OAAO,CAAC,CAAC;QACzD,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,6BAA6B,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,KAAK,CAAC,kCAAkC,CACtC,MAA0C;QAE1C,MAAM,OAAO,GAAG;YACd,gBAAgB,EAAE,6BAA6B,CAAC,MAAM,CAAC,gBAAgB,CAAC;YACxE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC;SAC7D,CAAC;QACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,MAAM,SAAS,GACb,IAAI,CAAC,sCAAsC,CAAC,OAAO,CAAC,CAAC;QACvD,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,8BAA8B,CAAC,KAAK,CAAC,CAAC,CAAC;IACzE,CAAC;IAED,KAAK,CAAC,2BAA2B,CAC/B,OAAmB,EACnB,OAAmB,EACnB,QAAoB,EACpB,QAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,OAAO,IAAI,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,yBAAyB,CAC7B,OAAmB,EACnB,OAAmB,EACnB,QAAoB,EACpB,QAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,OAAO,IAAI,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACzE,CAAC;IAEO,KAAK,CAAC,WAAW;QACvB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QACvC,CAAC;QACD,MAAM,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAEO,KAAK,CAAC,aAAa;QACzB,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;IAC5B,CAAC;IAEO,WAAW;QACjB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAEO,KAAK,CAAC,UAAU;QACtB,MAAM,QAAQ,GAAG,MAAM,iBAAiB,EAAE,CAAC;QAC3C,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;YAC7B,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC/C,IAAI,SAAkB,CAAC;QACvB,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC;YACjD,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC,CAAC;gBACtD,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;gBAC7B,OAAO;YACT,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,SAAS,GAAG,KAAK,CAAC;gBAClB,IAAI,GAAG,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChC,sBAAsB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;gBAC3C,CAAC;YACH,CAAC;QACH,CAAC;QACD,MAAM,IAAI,KAAK,CACb,qCAAqC,WAAW,CAAC,SAAS,CAAC,EAAE,CAC9D,CAAC;IACJ,CAAC;IAEO,oBAAoB;QAC1B,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC9B,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC/C,IAAI,UAAU,IAAI,UAAU,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;YAClD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACxB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,oBAAoB;QAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;QACrC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,IAAI,qBAAqB,CAAC;QACxE,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,GAAG,CAAC,YAAY,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACxE,CAAC;QACD,MAAM,SAAS,GACb,IAAI,CAAC,OAAO,CAAC,YAAY;YACzB,CAAC,OAAO,UAAU,KAAK,WAAW;gBAChC,CAAC,CAAE,UAAgC;gBACnC,CAAC,CAAC,SAAS,CAAC,CAAC;QACjB,MAAM,MAAM,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC;QAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;YACpC,CAAC,CAAC,GAAG,MAAM,GAAG,OAAO,EAAE;YACvB,CAAC,CAAC,GAAG,MAAM,IAAI,OAAO,EAAE,CAAC;QAC3B,OAAO,IAAI,GAAG,CAAC,YAAY,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACvE,CAAC;CACF;AAED,MAAM,cAAc,GAAG,IAAI,WAAW,EAAE,CAAC;AAEzC,SAAS,OAAO;IACd,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,OAAO,OAAO,EAAE,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,UAA8B,EAAE;IACnE,OAAO,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc;IAClC,OAAO,OAAO,EAAE,CAAC,cAAc,EAAE,CAAC;AACpC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAAe,EACf,kBAA0B,EAC1B,gBAAiC,EACjC,gBAAwB;IAExB,OAAO,OAAO,EAAE,CAAC,mBAAmB,CAClC,OAAO,EACP,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,CACjB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAAe,EACf,YAAoB,EACpB,gBAAiC,EACjC,gBAAwB;IAExB,OAAO,OAAO,EAAE,CAAC,mBAAmB,CAClC,OAAO,EACP,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,CACjB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,OAAe,EACf,YAAoB,EACpB,KAAa,EACb,gBAAiC,EACjC,gBAAwB;IAExB,OAAO,OAAO,EAAE,CAAC,kBAAkB,CACjC,OAAO,EACP,YAAY,EACZ,KAAK,EACL,gBAAgB,EAChB,gBAAgB,CACjB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,gBAAiC,EACjC,gBAAwB,EACxB,SAAiB,EACjB,QAAgB;IAEhB,OAAO,OAAO,EAAE,CAAC,oBAAoB,CACnC,gBAAgB,EAChB,gBAAgB,EAChB,SAAS,EACT,QAAQ,CACT,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,UAAkB;IAElB,OAAO,OAAO,EAAE,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,OAAwB,EACxB,gBAAwB,EACxB,QAAgB;IAEhB,OAAO,OAAO,EAAE,CAAC,kBAAkB,CAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC;AAC3E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,QAA2B;IAE3B,OAAO,OAAO,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,QAA2B,EAC3B,KAAa;IAEb,OAAO,OAAO,EAAE,CAAC,sBAAsB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,MAAuC;IAEvC,OAAO,OAAO,EAAE,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,MAAiC;IAEjC,OAAO,OAAO,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,MAAyC;IAEzC,OAAO,OAAO,EAAE,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,MAAsC;IAEtC,OAAO,OAAO,EAAE,CAAC,8BAA8B,CAAC,MAAM,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kCAAkC,CACtD,MAA0C;IAE1C,OAAO,OAAO,EAAE,CAAC,kCAAkC,CAAC,MAAM,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,OAAmB,EACnB,OAAmB,EACnB,QAAoB,EACpB,QAAoB;IAEpB,OAAO,OAAO,EAAE,CAAC,2BAA2B,CAC1C,OAAO,EACP,OAAO,EACP,QAAQ,EACR,QAAQ,CACT,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,OAAmB,EACnB,OAAmB,EACnB,QAAoB,EACpB,QAAoB;IAEpB,OAAO,OAAO,EAAE,CAAC,yBAAyB,CACxC,OAAO,EACP,OAAO,EACP,QAAQ,EACR,QAAQ,CACT,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAY;IACrC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAC3B,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAClD,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa;IACxC,OAAO,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC;AACnD,CAAC;AAED,SAAS,sBAAsB,CAAC,GAAW,EAAE,KAAc;IACzD,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACzE,OAAO;IACT,CAAC;IACD,OAAO,CAAC,IAAI,CACV,oCAAoC,GAAG,wCAAwC,EAC/E,KAAK,CACN,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,eAAe,CAAC;IACzB,CAAC;IACD,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC,OAAO,CAAC;IACvB,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC;AAOD,SAAS,gBAAgB,CAAC,KAAc;IACtC,MAAM,SAAS,GAAG,KAA0B,CAAC;IAC7C,IACE,CAAC,SAAS;QACV,OAAO,SAAS,CAAC,MAAM,KAAK,QAAQ;QACpC,OAAO,SAAS,CAAC,KAAK,KAAK,QAAQ,EACnC,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO;QACL,MAAM,EAAE,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC;QACtC,KAAK,EAAE,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC;KACrC,CAAC;AACJ,CAAC;AAkBD,SAAS,eAAe,CAAC,KAAc;IACrC,MAAM,GAAG,GAAG,KAAyB,CAAC;IACtC,IACE,CAAC,GAAG;QACJ,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ;QACnC,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,EAC9B,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IACD,MAAM,SAAS,GAAG,GAAG,CAAC,gBAAgB,CAAC;IACvC,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;IACD,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,CAAC;IACjD,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO;QACL,WAAW,EAAE,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC;QAC1C,eAAe,EAAE,YAAY,CAAC,GAAG,CAAC,eAAe,CAAC;QAClD,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC;QAChC,KAAK,EAAE,YAAY,CAAC,WAAW,CAAC;QAChC,gBAAgB,EAAE;YAChB,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC,OAAO,IAAI,CAAC,CAAC;YACzC,OAAO,EAAE,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC;YACxC,KAAK,EAAE,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC;YACpC,EAAE,EAAE,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9B,IAAI,EAAE,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC;SACnC;KACF,CAAC;AACJ,CAAC;AAqED,SAAS,WAAW,CAAC,IAAuB,EAAE,KAAa;IACzD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,oCAAoC,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC3B,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CACb,GAAG,KAAK,qBAAqB,GAAG,6BAA6B,CAC9D,CAAC;QACJ,CAAC;QACD,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;IACpB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAqB;IAC9C,OAAO;QACL,WAAW,EAAE,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC;QAC3C,QAAQ,EAAE,KAAK,CAAC,OAAO;QACvB,QAAQ,EAAE,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,aAAa,CAAC;KACpD,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAuB;IAClD,OAAO;QACL,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,aAAa,EAAE,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC;QAC/C,gBAAgB,EAAE,YAAY,CAAC,KAAK,CAAC,eAAe,CAAC;QACrD,cAAc,EAAE,KAAK,CAAC,aAAa;YACjC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,aAAa,CAAC;YACnC,CAAC,CAAC,SAAS;QACb,QAAQ,EAAE,KAAK,CAAC,OAAO;QACvB,qBAAqB,EAAE,KAAK,CAAC,mBAAmB;QAChD,QAAQ,EAAE,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,KAAK,UAAU,CAAC;QAC9D,SAAS,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK;KACnC,CAAC;AACJ,CAAC;AAED,SAAS,6BAA6B,CACpC,KAA2B;IAE3B,OAAO;QACL,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,eAAe,EAAE,YAAY,CAAC,KAAK,CAAC,eAAe,CAAC;QACpD,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAC5D,mBAAmB,EAAE,KAAK,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC;QACpE,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC;KAC/C,CAAC;AACJ,CAAC;AAED,SAAS,+BAA+B,CACtC,GAA4B;IAE5B,OAAO;QACL,YAAY,EAAE,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC;QACxC,eAAe,EAAE,YAAY,CAAC,GAAG,CAAC,eAAe,CAAC;QAClD,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAC1D,mBAAmB,EAAE,GAAG,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACzD,QAAQ,CAAC,KAAK,CAAC,CAChB;QACD,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;KACvD,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAmB;IAChD,OAAO;QACL,WAAW,EAAE,KAAK,CAAC,UAAU;QAC7B,IAAI,EAAE,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC;QAC9B,EAAE,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC;QAChC,gBAAgB,EAAE,KAAK,CAAC,cAAc;KACvC,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAAC,GAAoB;IACnD,OAAO;QACL,UAAU,EAAE,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC;QACrC,IAAI,EAAE,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;QAC5B,EAAE,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;QAC1B,cAAc,EAAE,QAAQ,CAAC,GAAG,CAAC,gBAAgB,CAAC;KAC/C,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAkB;IAC9C,OAAO;QACL,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC;KAChD,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,GAAmB;IACjD,OAAO;QACL,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;QAC9B,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC;KAChD,CAAC;AACJ,CAAC;AAED,SAAS,gCAAgC,CACvC,GAA6B;IAE7B,OAAO;QACL,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,uBAAuB,CAAC;QACnD,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,uBAAuB,CAAC;KACxD,CAAC;AACJ,CAAC;AAED,SAAS,+BAA+B,CACtC,GAA4B;IAE5B,OAAO;QACL,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;QAC9B,MAAM,EAAE,gCAAgC,CAAC,GAAG,CAAC,MAAM,CAAC;KACrD,CAAC;AACJ,CAAC;AAED,SAAS,2BAA2B,CAClC,KAAyB;IAEzB,OAAO;QACL,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,KAAK,EAAE,qBAAqB,CAAC,KAAK,CAAC,KAAK,CAAC;QACzC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;KAC7D,CAAC;AACJ,CAAC;AAED,SAAS,6BAA6B,CACpC,GAA0B;IAE1B,OAAO;QACL,SAAS,EAAE,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC;QAClC,KAAK,EAAE,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC;QACzC,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;KAC3D,CAAC;AACJ,CAAC;AAED,SAAS,iCAAiC,CACxC,KAA+B;IAE/B,OAAO;QACL,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC;KACtD,CAAC;AACJ,CAAC;AAED,SAAS,8BAA8B,CACrC,GAA2B;IAE3B,OAAO;QACL,KAAK,EAAE,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC;QACzC,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAC1D,SAAS,EAAE,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC;KACnC,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAa;IAC5C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,kBAAkB,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,+BAA+B,kBAAkB,GAAG,CAAC,EAAE,CAAC,CAAC;IAC3E,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,KAAsB,EAAE,KAAa;IACzD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,2BAA2B,CAAC,CAAC;QACvD,CAAC;QACD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,uBAAuB,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,KAAK,GAAG,EAAE,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,uBAAuB,CAAC,CAAC;IACnD,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,KAAK,EAAE,CAAC;QAC7D,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,wCAAwC,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/wasm/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,gBAAgB;AAChB,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,wBAAwB;AACxB,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,EACd,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,yBAAyB,EACzB,mBAAmB,EACnB,2BAA2B,EAC3B,8BAA8B,EAC9B,kCAAkC,EAClC,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,gBAAgB,CAAC;AAKxB,SAAS;AACT,OAAO,EACL,kBAAkB,EAElB,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,aAAa,CAAC"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * WASM bindings loader with support for both browser and Node.js environments.
3
+ * Handles lazy loading and caching of WASM modules.
4
+ */
5
+ export declare const DEFAULT_WASM_FILENAME = "assets/wasm/web/zerc20_wasm_bg.wasm";
6
+ /**
7
+ * Absolute URL for the bundled browser WASM binary (resolved relative to this package).
8
+ */
9
+ export declare const BUNDLED_WASM_URL: string;
10
+ type WebWasmBindings = typeof import("../assets/wasm/web/zerc20_wasm.js");
11
+ type CommonWasmBindings = Omit<WebWasmBindings, "default" | "initSync"> & Partial<Pick<WebWasmBindings, "default" | "initSync">>;
12
+ export type WasmBindings = CommonWasmBindings;
13
+ export type WebInitFn = NonNullable<WebWasmBindings["default"]>;
14
+ /**
15
+ * Options for creating a WasmBindingsLoader.
16
+ */
17
+ export interface WasmBindingsLoaderOptions {
18
+ /** Custom resolver function for loading bindings (for testing) */
19
+ resolver?: () => Promise<WasmBindings>;
20
+ }
21
+ /**
22
+ * Detects if the current runtime is Node.js.
23
+ */
24
+ export declare function isNodeRuntime(): boolean;
25
+ /**
26
+ * Loader for WASM bindings with caching support.
27
+ * Manages lazy loading and caching of WASM modules for both browser and Node.js.
28
+ */
29
+ export declare class WasmBindingsLoader {
30
+ private cache;
31
+ private promise;
32
+ private readonly resolver;
33
+ constructor(options?: WasmBindingsLoaderOptions);
34
+ /**
35
+ * Gets or loads the WASM bindings with caching.
36
+ * Returns cached bindings if available, otherwise loads them.
37
+ */
38
+ getOrLoad(): Promise<WasmBindings>;
39
+ /**
40
+ * Returns true if bindings are already cached.
41
+ */
42
+ isCached(): boolean;
43
+ /**
44
+ * Resets the loader to its initial state.
45
+ * Useful for testing to ensure clean state between tests.
46
+ */
47
+ reset(): void;
48
+ /**
49
+ * Primes the cache with pre-loaded bindings.
50
+ * Useful for testing or when bindings are loaded externally.
51
+ */
52
+ prime(bindings: WasmBindings): void;
53
+ }
54
+ /**
55
+ * Checks if the bindings require explicit initialization (browser environment).
56
+ */
57
+ export declare function requiresExplicitInit(bindings: WasmBindings): bindings is WasmBindings & {
58
+ default: WebInitFn;
59
+ };
60
+ /**
61
+ * Gets or loads the WASM bindings with caching.
62
+ * Returns cached bindings if available, otherwise loads them.
63
+ */
64
+ export declare function getOrLoadBindings(): Promise<WasmBindings>;
65
+ /**
66
+ * Resets the default WASM bindings loader to its initial state.
67
+ * Useful for testing to ensure clean state between tests.
68
+ */
69
+ export declare function resetBindingsLoader(): void;
70
+ /**
71
+ * Returns the default WASM bindings loader instance.
72
+ * Useful when you need direct access to the loader.
73
+ */
74
+ export declare function getDefaultBindingsLoader(): WasmBindingsLoader;
75
+ export {};
76
+ //# sourceMappingURL=loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/wasm/loader.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,eAAO,MAAM,qBAAqB,wCAAwC,CAAC;AAE3E;;GAEG;AACH,eAAO,MAAM,gBAAgB,QAGjB,CAAC;AAMb,KAAK,eAAe,GAAG,cAAc,mCAAmC,CAAC,CAAC;AAC1E,KAAK,kBAAkB,GAAG,IAAI,CAAC,eAAe,EAAE,SAAS,GAAG,UAAU,CAAC,GACrE,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC;AACzD,MAAM,MAAM,YAAY,GAAG,kBAAkB,CAAC;AAC9C,MAAM,MAAM,SAAS,GAAG,WAAW,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC;AAGhE;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,kEAAkE;IAClE,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,YAAY,CAAC,CAAC;CACxC;AAMD;;GAEG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAEvC;AAMD;;;GAGG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,OAAO,CAAoC;IACnD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA8B;gBAE3C,OAAO,GAAE,yBAA8B;IAInD;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC,YAAY,CAAC;IAWxC;;OAEG;IACH,QAAQ,IAAI,OAAO;IAInB;;;OAGG;IACH,KAAK,IAAI,IAAI;IAKb;;;OAGG;IACH,KAAK,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;CAIpC;AA+CD;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,YAAY,GACrB,QAAQ,IAAI,YAAY,GAAG;IAAE,OAAO,EAAE,SAAS,CAAA;CAAE,CAEnD;AAQD;;;GAGG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,YAAY,CAAC,CAE/D;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,kBAAkB,CAE7D"}
@@ -0,0 +1,145 @@
1
+ /**
2
+ * WASM bindings loader with support for both browser and Node.js environments.
3
+ * Handles lazy loading and caching of WASM modules.
4
+ */
5
+ // ============================================================================
6
+ // Constants
7
+ // ============================================================================
8
+ export const DEFAULT_WASM_FILENAME = "assets/wasm/web/zerc20_wasm_bg.wasm";
9
+ /**
10
+ * Absolute URL for the bundled browser WASM binary (resolved relative to this package).
11
+ */
12
+ export const BUNDLED_WASM_URL = new URL("../assets/wasm/web/zerc20_wasm_bg.wasm", import.meta.url).toString();
13
+ // ============================================================================
14
+ // Runtime Detection
15
+ // ============================================================================
16
+ /**
17
+ * Detects if the current runtime is Node.js.
18
+ */
19
+ export function isNodeRuntime() {
20
+ return typeof process !== "undefined" && typeof process.versions?.node === "string";
21
+ }
22
+ // ============================================================================
23
+ // WasmBindingsLoader Class
24
+ // ============================================================================
25
+ /**
26
+ * Loader for WASM bindings with caching support.
27
+ * Manages lazy loading and caching of WASM modules for both browser and Node.js.
28
+ */
29
+ export class WasmBindingsLoader {
30
+ cache;
31
+ promise;
32
+ resolver;
33
+ constructor(options = {}) {
34
+ this.resolver = options.resolver ?? (() => resolveBindings());
35
+ }
36
+ /**
37
+ * Gets or loads the WASM bindings with caching.
38
+ * Returns cached bindings if available, otherwise loads them.
39
+ */
40
+ async getOrLoad() {
41
+ if (this.cache) {
42
+ return this.cache;
43
+ }
44
+ if (!this.promise) {
45
+ this.promise = this.resolver();
46
+ }
47
+ this.cache = await this.promise;
48
+ return this.cache;
49
+ }
50
+ /**
51
+ * Returns true if bindings are already cached.
52
+ */
53
+ isCached() {
54
+ return this.cache !== undefined;
55
+ }
56
+ /**
57
+ * Resets the loader to its initial state.
58
+ * Useful for testing to ensure clean state between tests.
59
+ */
60
+ reset() {
61
+ this.cache = undefined;
62
+ this.promise = undefined;
63
+ }
64
+ /**
65
+ * Primes the cache with pre-loaded bindings.
66
+ * Useful for testing or when bindings are loaded externally.
67
+ */
68
+ prime(bindings) {
69
+ this.cache = bindings;
70
+ this.promise = Promise.resolve(bindings);
71
+ }
72
+ }
73
+ // ============================================================================
74
+ // Internal Loading Functions
75
+ // ============================================================================
76
+ /**
77
+ * Resolves the appropriate WASM bindings based on the runtime environment.
78
+ */
79
+ async function resolveBindings() {
80
+ if (isNodeRuntime()) {
81
+ return loadNodeBindings();
82
+ }
83
+ return import("../assets/wasm/web/zerc20_wasm.js");
84
+ }
85
+ /**
86
+ * Loads WASM bindings for Node.js environment using require.
87
+ */
88
+ async function loadNodeBindings() {
89
+ const { createRequire } = await loadNodeModule();
90
+ const require = createRequire(import.meta.url);
91
+ return require("../assets/wasm/node/zerc20_wasm.js");
92
+ }
93
+ /**
94
+ * Dynamically imports the Node.js module system.
95
+ * Tries "node:module" first, falls back to "module".
96
+ */
97
+ async function loadNodeModule() {
98
+ const specifiers = ["node:module", "module"];
99
+ let lastError;
100
+ for (const specifier of specifiers) {
101
+ try {
102
+ const mod = (await import(specifier));
103
+ return mod;
104
+ }
105
+ catch (error) {
106
+ lastError = error;
107
+ }
108
+ }
109
+ throw lastError ?? new Error("failed to load node:module for wasm bindings");
110
+ }
111
+ // ============================================================================
112
+ // Type Guards
113
+ // ============================================================================
114
+ /**
115
+ * Checks if the bindings require explicit initialization (browser environment).
116
+ */
117
+ export function requiresExplicitInit(bindings) {
118
+ return typeof bindings.default === "function";
119
+ }
120
+ // ============================================================================
121
+ // Default Singleton & Backward-Compatible Functions
122
+ // ============================================================================
123
+ const defaultLoader = new WasmBindingsLoader();
124
+ /**
125
+ * Gets or loads the WASM bindings with caching.
126
+ * Returns cached bindings if available, otherwise loads them.
127
+ */
128
+ export async function getOrLoadBindings() {
129
+ return defaultLoader.getOrLoad();
130
+ }
131
+ /**
132
+ * Resets the default WASM bindings loader to its initial state.
133
+ * Useful for testing to ensure clean state between tests.
134
+ */
135
+ export function resetBindingsLoader() {
136
+ defaultLoader.reset();
137
+ }
138
+ /**
139
+ * Returns the default WASM bindings loader instance.
140
+ * Useful when you need direct access to the loader.
141
+ */
142
+ export function getDefaultBindingsLoader() {
143
+ return defaultLoader;
144
+ }
145
+ //# sourceMappingURL=loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/wasm/loader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ import type { SingleWithdrawWasm, WithdrawNovaWasm } from "../assets/wasm/web/zerc20_wasm.js";
2
+ import type { AggregationTreeState, BurnArtifacts, ChainEvents, FetchAggregationTreeStateParams, FetchLocalTeleportProofsParams, FetchTransferEventsParams, GenerateGlobalTeleportProofsParams, GlobalTeleportProofWithEvent, LocalTeleportProof, SecretAndTweak, SeparateEventsByEligibilityParams, SeparatedChainEvents } from "../types.js";
3
+ import type { WasmRuntimeOptions } from "./types.js";
4
+ /**
5
+ * WasmRuntime manages the lifecycle and operations of the zERC20 WASM module.
6
+ *
7
+ * It handles:
8
+ * - WASM initialization with fallback URL resolution
9
+ * - Cryptographic derivation operations
10
+ * - Aggregation tree and transfer event operations
11
+ * - Zero-knowledge proof program creation
12
+ */
13
+ export declare class WasmRuntime {
14
+ private locator;
15
+ private overrideUrl?;
16
+ private initPromise?;
17
+ private wasmBindings?;
18
+ /**
19
+ * Create a new WASM runtime instance.
20
+ * @remarks
21
+ * - In Node.js, the WASM bindings are loaded from the bundled node build.
22
+ * - In browsers, the runtime lazily initializes on first use; call {@link ready} to pre-initialize.
23
+ */
24
+ constructor(options?: WasmRuntimeOptions);
25
+ /**
26
+ * Replace the locator options used to resolve the WASM binary.
27
+ * @remarks This resets any in-flight initialization so a subsequent call will re-initialize.
28
+ */
29
+ configure(options: WasmRuntimeOptions): void;
30
+ /**
31
+ * Override the resolved WASM URL.
32
+ * @remarks This takes precedence over `baseUrl`/`wasmFilename` resolution.
33
+ */
34
+ setOverrideUrl(url?: string): void;
35
+ /**
36
+ * Ensure the WASM runtime is initialized and ready to use.
37
+ * @remarks
38
+ * This is optional in Node.js (bindings are available immediately), but recommended in browsers
39
+ * to surface initialization errors early.
40
+ */
41
+ ready(): Promise<void>;
42
+ getSeedMessage(): Promise<string>;
43
+ derivePaymentAdvice(seedHex: string, paymentAdviceIdHex: string, recipientChainId: bigint | number, recipientAddress: string): Promise<SecretAndTweak>;
44
+ deriveInvoiceSingle(seedHex: string, invoiceIdHex: string, recipientChainId: bigint | number, recipientAddress: string): Promise<SecretAndTweak>;
45
+ deriveInvoiceBatch(seedHex: string, invoiceIdHex: string, subId: number, recipientChainId: bigint | number, recipientAddress: string): Promise<SecretAndTweak>;
46
+ buildFullBurnAddress(recipientChainId: bigint | number, recipientAddress: string, secretHex: string, tweakHex: string): Promise<BurnArtifacts>;
47
+ decodeFullBurnAddress(payloadHex: string): Promise<BurnArtifacts>;
48
+ generalRecipientFr(chainId: bigint | number, recipientAddress: string, tweakHex: string): Promise<string>;
49
+ aggregationRoot(snapshot: readonly string[]): Promise<string>;
50
+ aggregationMerkleProof(snapshot: readonly string[], index: number): Promise<string[]>;
51
+ fetchAggregationTreeState(params: FetchAggregationTreeStateParams): Promise<AggregationTreeState>;
52
+ fetchTransferEvents(params: FetchTransferEventsParams): Promise<ChainEvents[]>;
53
+ separateEventsByEligibility(params: SeparateEventsByEligibilityParams): Promise<SeparatedChainEvents[]>;
54
+ fetchLocalTeleportMerkleProofs(params: FetchLocalTeleportProofsParams): Promise<LocalTeleportProof[]>;
55
+ generateGlobalTeleportMerkleProofs(params: GenerateGlobalTeleportProofsParams): Promise<GlobalTeleportProofWithEvent[]>;
56
+ createSingleWithdrawProgram(localPk: Uint8Array, localVk: Uint8Array, globalPk: Uint8Array, globalVk: Uint8Array): Promise<SingleWithdrawWasm>;
57
+ createWithdrawNovaProgram(localPp: Uint8Array, localVp: Uint8Array, globalPp: Uint8Array, globalVp: Uint8Array): Promise<WithdrawNovaWasm>;
58
+ private ensureReady;
59
+ private readyBindings;
60
+ private getBindings;
61
+ private initialize;
62
+ private resolveCandidateUrls;
63
+ private resolveConfiguredUrl;
64
+ }
65
+ //# sourceMappingURL=runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/wasm/runtime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,227 @@
1
+ import { normalizeHex, toBigInt } from "../utils/hex.js";
2
+ import { BUNDLED_WASM_URL, DEFAULT_WASM_FILENAME, getOrLoadBindings, requiresExplicitInit, } from "./loader.js";
3
+ import { asBurnArtifacts, asSecretAndTweak, deserializeAggregationTreeState, deserializeChainEvents, deserializeGlobalTeleportProof, deserializeLocalTeleportProof, deserializeSeparatedChainEvents, serializeAggregationTreeState, serializeChainEvents, serializeChainLocalTeleportProofs, serializeHubEntry, serializeIndexedEvent, serializeTokenEntry, } from "./serialization.js";
4
+ import { assertValidInvoiceSubId, ensureTrailingSlash, formatError, logWasmFallbackWarning, normalizeOverride, toSafeNumber, } from "./helpers.js";
5
+ /**
6
+ * WasmRuntime manages the lifecycle and operations of the zERC20 WASM module.
7
+ *
8
+ * It handles:
9
+ * - WASM initialization with fallback URL resolution
10
+ * - Cryptographic derivation operations
11
+ * - Aggregation tree and transfer event operations
12
+ * - Zero-knowledge proof program creation
13
+ */
14
+ export class WasmRuntime {
15
+ locator;
16
+ overrideUrl;
17
+ initPromise;
18
+ wasmBindings;
19
+ /**
20
+ * Create a new WASM runtime instance.
21
+ * @remarks
22
+ * - In Node.js, the WASM bindings are loaded from the bundled node build.
23
+ * - In browsers, the runtime lazily initializes on first use; call {@link ready} to pre-initialize.
24
+ */
25
+ constructor(options = {}) {
26
+ this.locator = { ...options };
27
+ this.overrideUrl = normalizeOverride(options.url);
28
+ }
29
+ /**
30
+ * Replace the locator options used to resolve the WASM binary.
31
+ * @remarks This resets any in-flight initialization so a subsequent call will re-initialize.
32
+ */
33
+ configure(options) {
34
+ this.locator = { ...options };
35
+ this.overrideUrl = normalizeOverride(options.url);
36
+ this.initPromise = undefined;
37
+ }
38
+ /**
39
+ * Override the resolved WASM URL.
40
+ * @remarks This takes precedence over `baseUrl`/`wasmFilename` resolution.
41
+ */
42
+ setOverrideUrl(url) {
43
+ this.overrideUrl = normalizeOverride(url);
44
+ this.initPromise = undefined;
45
+ }
46
+ /**
47
+ * Ensure the WASM runtime is initialized and ready to use.
48
+ * @remarks
49
+ * This is optional in Node.js (bindings are available immediately), but recommended in browsers
50
+ * to surface initialization errors early.
51
+ */
52
+ async ready() {
53
+ await this.ensureReady();
54
+ }
55
+ async getSeedMessage() {
56
+ const wasm = await this.readyBindings();
57
+ return wasm.seed_message();
58
+ }
59
+ async derivePaymentAdvice(seedHex, paymentAdviceIdHex, recipientChainId, recipientAddress) {
60
+ const wasm = await this.readyBindings();
61
+ return asSecretAndTweak(wasm.derive_payment_advice(normalizeHex(seedHex), normalizeHex(paymentAdviceIdHex), toBigInt(recipientChainId), normalizeHex(recipientAddress)));
62
+ }
63
+ async deriveInvoiceSingle(seedHex, invoiceIdHex, recipientChainId, recipientAddress) {
64
+ const wasm = await this.readyBindings();
65
+ return asSecretAndTweak(wasm.derive_invoice_single(normalizeHex(seedHex), normalizeHex(invoiceIdHex), toBigInt(recipientChainId), normalizeHex(recipientAddress)));
66
+ }
67
+ async deriveInvoiceBatch(seedHex, invoiceIdHex, subId, recipientChainId, recipientAddress) {
68
+ assertValidInvoiceSubId(subId);
69
+ const wasm = await this.readyBindings();
70
+ return asSecretAndTweak(wasm.derive_invoice_batch(normalizeHex(seedHex), normalizeHex(invoiceIdHex), subId, toBigInt(recipientChainId), normalizeHex(recipientAddress)));
71
+ }
72
+ async buildFullBurnAddress(recipientChainId, recipientAddress, secretHex, tweakHex) {
73
+ const wasm = await this.readyBindings();
74
+ const result = wasm.build_full_burn_address(toBigInt(recipientChainId), normalizeHex(recipientAddress), normalizeHex(secretHex), normalizeHex(tweakHex));
75
+ return asBurnArtifacts(result);
76
+ }
77
+ async decodeFullBurnAddress(payloadHex) {
78
+ const wasm = await this.readyBindings();
79
+ return asBurnArtifacts(wasm.decode_full_burn_address(normalizeHex(payloadHex)));
80
+ }
81
+ async generalRecipientFr(chainId, recipientAddress, tweakHex) {
82
+ const wasm = await this.readyBindings();
83
+ return normalizeHex(wasm.general_recipient_fr(toBigInt(chainId), normalizeHex(recipientAddress), normalizeHex(tweakHex)));
84
+ }
85
+ async aggregationRoot(snapshot) {
86
+ const wasm = await this.readyBindings();
87
+ return normalizeHex(wasm.aggregation_root(snapshot.slice()));
88
+ }
89
+ async aggregationMerkleProof(snapshot, index) {
90
+ const wasm = await this.readyBindings();
91
+ const siblings = wasm.aggregation_merkle_proof(snapshot.slice(), index);
92
+ return siblings.map((value) => normalizeHex(value));
93
+ }
94
+ async fetchAggregationTreeState(params) {
95
+ const payload = {
96
+ hub: serializeHubEntry(params.hub),
97
+ token: serializeTokenEntry(params.token),
98
+ };
99
+ if (params.eventBlockSpan !== undefined) {
100
+ payload.eventBlockSpan = toSafeNumber(params.eventBlockSpan, "eventBlockSpan");
101
+ }
102
+ const wasm = await this.readyBindings();
103
+ const rawState = await wasm.fetch_aggregation_tree_state(payload);
104
+ return deserializeAggregationTreeState(rawState);
105
+ }
106
+ async fetchTransferEvents(params) {
107
+ const payload = {
108
+ indexerUrl: params.indexerUrl,
109
+ indexerFetchLimit: params.indexerFetchLimit,
110
+ tokens: params.tokens.map(serializeTokenEntry),
111
+ burnAddresses: params.burnAddresses.map((address) => normalizeHex(address)),
112
+ };
113
+ const wasm = await this.readyBindings();
114
+ const rawEvents = await wasm.fetch_transfer_events(payload);
115
+ return rawEvents.map((entry) => deserializeChainEvents(entry));
116
+ }
117
+ async separateEventsByEligibility(params) {
118
+ const payload = {
119
+ aggregationState: serializeAggregationTreeState(params.aggregationState),
120
+ events: params.events.map(serializeChainEvents),
121
+ };
122
+ const wasm = await this.readyBindings();
123
+ const rawSeparated = wasm.separate_events_by_eligibility(payload);
124
+ return rawSeparated.map((entry) => deserializeSeparatedChainEvents(entry));
125
+ }
126
+ async fetchLocalTeleportMerkleProofs(params) {
127
+ const payload = {
128
+ indexerUrl: params.indexerUrl,
129
+ token: serializeTokenEntry(params.token),
130
+ treeIndex: toBigInt(params.treeIndex),
131
+ events: params.events.map(serializeIndexedEvent),
132
+ };
133
+ const wasm = await this.readyBindings();
134
+ const rawProofs = await wasm.fetch_local_teleport_merkle_proofs(payload);
135
+ return rawProofs.map((proof) => deserializeLocalTeleportProof(proof));
136
+ }
137
+ async generateGlobalTeleportMerkleProofs(params) {
138
+ const payload = {
139
+ aggregationState: serializeAggregationTreeState(params.aggregationState),
140
+ proofs: params.chains.map(serializeChainLocalTeleportProofs),
141
+ };
142
+ const wasm = await this.readyBindings();
143
+ const rawProofs = wasm.generate_global_teleport_merkle_proofs(payload);
144
+ return rawProofs.map((proof) => deserializeGlobalTeleportProof(proof));
145
+ }
146
+ async createSingleWithdrawProgram(localPk, localVk, globalPk, globalVk) {
147
+ const wasm = await this.readyBindings();
148
+ return new wasm.SingleWithdrawWasm(localPk, localVk, globalPk, globalVk);
149
+ }
150
+ async createWithdrawNovaProgram(localPp, localVp, globalPp, globalVp) {
151
+ const wasm = await this.readyBindings();
152
+ return new wasm.WithdrawNovaWasm(localPp, localVp, globalPp, globalVp);
153
+ }
154
+ async ensureReady() {
155
+ if (!this.initPromise) {
156
+ this.initPromise = this.initialize();
157
+ }
158
+ await this.initPromise;
159
+ }
160
+ async readyBindings() {
161
+ await this.ensureReady();
162
+ return this.getBindings();
163
+ }
164
+ getBindings() {
165
+ if (!this.wasmBindings) {
166
+ throw new Error("zerc20 wasm bindings are not initialized");
167
+ }
168
+ return this.wasmBindings;
169
+ }
170
+ async initialize() {
171
+ const bindings = await getOrLoadBindings();
172
+ if (!requiresExplicitInit(bindings)) {
173
+ this.wasmBindings = bindings;
174
+ return;
175
+ }
176
+ const candidates = this.resolveCandidateUrls();
177
+ let lastError;
178
+ for (let idx = 0; idx < candidates.length; idx++) {
179
+ const candidate = candidates[idx];
180
+ try {
181
+ await bindings.default({ module_or_path: candidate });
182
+ this.wasmBindings = bindings;
183
+ return;
184
+ }
185
+ catch (error) {
186
+ lastError = error;
187
+ if (idx < candidates.length - 1) {
188
+ logWasmFallbackWarning(candidate, error);
189
+ }
190
+ }
191
+ }
192
+ throw new Error(`failed to initialize zerc20 wasm: ${formatError(lastError)}`);
193
+ }
194
+ resolveCandidateUrls() {
195
+ const urls = [];
196
+ if (this.overrideUrl) {
197
+ urls.push(this.overrideUrl);
198
+ }
199
+ const configured = this.resolveConfiguredUrl();
200
+ if (configured && configured !== this.overrideUrl) {
201
+ urls.push(configured);
202
+ }
203
+ if (!urls.includes(BUNDLED_WASM_URL)) {
204
+ urls.push(BUNDLED_WASM_URL);
205
+ }
206
+ return urls;
207
+ }
208
+ resolveConfiguredUrl() {
209
+ const baseUrl = this.locator.baseUrl;
210
+ if (!baseUrl) {
211
+ return undefined;
212
+ }
213
+ const wasmFilename = this.locator.wasmFilename ?? DEFAULT_WASM_FILENAME;
214
+ if (/^https?:\/\//i.test(baseUrl)) {
215
+ return new URL(wasmFilename, ensureTrailingSlash(baseUrl)).toString();
216
+ }
217
+ const globalRef = this.locator.globalObject ??
218
+ (typeof globalThis !== "undefined" ? globalThis : undefined);
219
+ const origin = globalRef?.location?.origin;
220
+ if (!origin) {
221
+ throw new Error("WasmRuntime requires a global location.origin when baseUrl is relative");
222
+ }
223
+ const prefix = baseUrl.startsWith("/") ? `${origin}${baseUrl}` : `${origin}/${baseUrl}`;
224
+ return new URL(wasmFilename, ensureTrailingSlash(prefix)).toString();
225
+ }
226
+ }
227
+ //# sourceMappingURL=runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/wasm/runtime.ts"],"names":[],"mappings":"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"}