@alephium/web3 2.0.8 → 3.0.0-test.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (493) hide show
  1. package/LICENSE +165 -0
  2. package/README.md +11 -1
  3. package/dist/{src → _cjs}/address/address.js +60 -77
  4. package/dist/_cjs/address/address.js.map +1 -0
  5. package/dist/{src → _cjs}/address/index.js +1 -17
  6. package/dist/_cjs/address/index.js.map +1 -0
  7. package/dist/_cjs/api/api-alephium.d.ts +1152 -0
  8. package/dist/{src → _cjs}/api/api-alephium.js +5 -756
  9. package/dist/_cjs/api/api-alephium.js.map +1 -0
  10. package/dist/_cjs/api/api-explorer.d.ts +586 -0
  11. package/dist/{src → _cjs}/api/api-explorer.js +14 -454
  12. package/dist/_cjs/api/api-explorer.js.map +1 -0
  13. package/dist/{src → _cjs}/api/explorer-provider.js +1 -18
  14. package/dist/_cjs/api/explorer-provider.js.map +1 -0
  15. package/dist/{src → _cjs}/api/index.js +18 -24
  16. package/dist/_cjs/api/index.js.map +1 -0
  17. package/dist/{src → _cjs}/api/node-provider.d.ts +1 -1
  18. package/dist/{src → _cjs}/api/node-provider.js +4 -26
  19. package/dist/_cjs/api/node-provider.js.map +1 -0
  20. package/dist/{src → _cjs}/api/types.js +25 -43
  21. package/dist/_cjs/api/types.js.map +1 -0
  22. package/dist/{src → _cjs}/api/utils.d.ts +1 -1
  23. package/dist/{src → _cjs}/api/utils.js +9 -21
  24. package/dist/_cjs/api/utils.js.map +1 -0
  25. package/dist/{src → _cjs}/block/block.js +20 -26
  26. package/dist/_cjs/block/block.js.map +1 -0
  27. package/dist/_cjs/block/index.d.ts +2 -0
  28. package/dist/_cjs/block/index.js +6 -0
  29. package/dist/_cjs/block/index.js.map +1 -0
  30. package/dist/{src → _cjs}/codec/array-codec.js +1 -17
  31. package/dist/_cjs/codec/array-codec.js.map +1 -0
  32. package/dist/{src → _cjs}/codec/asset-output-codec.js +1 -17
  33. package/dist/_cjs/codec/asset-output-codec.js.map +1 -0
  34. package/dist/{src → _cjs}/codec/bigint-codec.js +2 -33
  35. package/dist/_cjs/codec/bigint-codec.js.map +1 -0
  36. package/dist/{src → _cjs}/codec/bytestring-codec.d.ts +1 -1
  37. package/dist/{src → _cjs}/codec/bytestring-codec.js +1 -17
  38. package/dist/_cjs/codec/bytestring-codec.js.map +1 -0
  39. package/dist/{src → _cjs}/codec/checksum-codec.js +1 -17
  40. package/dist/_cjs/codec/checksum-codec.js.map +1 -0
  41. package/dist/{src → _cjs}/codec/codec.js +3 -19
  42. package/dist/_cjs/codec/codec.js.map +1 -0
  43. package/dist/{src → _cjs}/codec/compact-int-codec.js +2 -18
  44. package/dist/_cjs/codec/compact-int-codec.js.map +1 -0
  45. package/dist/{src → _cjs}/codec/contract-codec.js +1 -17
  46. package/dist/_cjs/codec/contract-codec.js.map +1 -0
  47. package/dist/{src → _cjs}/codec/contract-output-codec.js +1 -17
  48. package/dist/_cjs/codec/contract-output-codec.js.map +1 -0
  49. package/dist/_cjs/codec/contract-output-ref-codec.js +12 -0
  50. package/dist/_cjs/codec/contract-output-ref-codec.js.map +1 -0
  51. package/dist/_cjs/codec/either-codec.js +8 -0
  52. package/dist/_cjs/codec/either-codec.js.map +1 -0
  53. package/dist/{src → _cjs}/codec/hash.d.ts +1 -1
  54. package/dist/_cjs/codec/hash.js +20 -0
  55. package/dist/_cjs/codec/hash.js.map +1 -0
  56. package/dist/{src → _cjs}/codec/index.js +18 -24
  57. package/dist/_cjs/codec/index.js.map +1 -0
  58. package/dist/{src → _cjs}/codec/input-codec.js +1 -0
  59. package/dist/_cjs/codec/input-codec.js.map +1 -0
  60. package/dist/{src → _cjs}/codec/instr-codec.js +4 -21
  61. package/dist/_cjs/codec/instr-codec.js.map +1 -0
  62. package/dist/_cjs/codec/int-as-4bytes-codec.js +16 -0
  63. package/dist/_cjs/codec/int-as-4bytes-codec.js.map +1 -0
  64. package/dist/{src → _cjs}/codec/lockup-script-codec.d.ts +1 -1
  65. package/dist/{src → _cjs}/codec/lockup-script-codec.js +1 -17
  66. package/dist/_cjs/codec/lockup-script-codec.js.map +1 -0
  67. package/dist/{src → _cjs}/codec/method-codec.js +1 -17
  68. package/dist/_cjs/codec/method-codec.js.map +1 -0
  69. package/dist/_cjs/codec/option-codec.js +19 -0
  70. package/dist/_cjs/codec/option-codec.js.map +1 -0
  71. package/dist/_cjs/codec/output-codec.js +10 -0
  72. package/dist/_cjs/codec/output-codec.js.map +1 -0
  73. package/dist/_cjs/codec/public-key-like-codec.js +14 -0
  74. package/dist/_cjs/codec/public-key-like-codec.js.map +1 -0
  75. package/dist/{src → _cjs}/codec/reader.js +1 -17
  76. package/dist/_cjs/codec/reader.js.map +1 -0
  77. package/dist/_cjs/codec/script-codec.js +18 -0
  78. package/dist/_cjs/codec/script-codec.js.map +1 -0
  79. package/dist/{src → _cjs}/codec/signature-codec.d.ts +1 -1
  80. package/dist/_cjs/codec/signature-codec.js +8 -0
  81. package/dist/_cjs/codec/signature-codec.js.map +1 -0
  82. package/dist/{src → _cjs}/codec/timestamp-codec.js +1 -17
  83. package/dist/_cjs/codec/timestamp-codec.js.map +1 -0
  84. package/dist/_cjs/codec/token-codec.js +12 -0
  85. package/dist/_cjs/codec/token-codec.js.map +1 -0
  86. package/dist/{src → _cjs}/codec/transaction-codec.js +1 -17
  87. package/dist/_cjs/codec/transaction-codec.js.map +1 -0
  88. package/dist/{src → _cjs}/codec/unlock-script-codec.d.ts +1 -1
  89. package/dist/{src → _cjs}/codec/unlock-script-codec.js +1 -17
  90. package/dist/_cjs/codec/unlock-script-codec.js.map +1 -0
  91. package/dist/{src → _cjs}/codec/unsigned-tx-codec.js +1 -0
  92. package/dist/_cjs/codec/unsigned-tx-codec.js.map +1 -0
  93. package/dist/{src → _cjs}/codec/val.js +1 -17
  94. package/dist/_cjs/codec/val.js.map +1 -0
  95. package/dist/{src → _cjs}/constants.d.ts +0 -3
  96. package/dist/{src → _cjs}/constants.js +1 -20
  97. package/dist/_cjs/constants.js.map +1 -0
  98. package/dist/{src → _cjs}/contract/contract.js +89 -80
  99. package/dist/_cjs/contract/contract.js.map +1 -0
  100. package/dist/{src → _cjs}/contract/dapp-tx-builder.js +3 -19
  101. package/dist/_cjs/contract/dapp-tx-builder.js.map +1 -0
  102. package/dist/_cjs/contract/deployment.js +3 -0
  103. package/dist/_cjs/contract/deployment.js.map +1 -0
  104. package/dist/{src → _cjs}/contract/events.js +20 -26
  105. package/dist/_cjs/contract/events.js.map +1 -0
  106. package/dist/{src → _cjs}/contract/index.js +1 -17
  107. package/dist/_cjs/contract/index.js.map +1 -0
  108. package/dist/{src → _cjs}/contract/ralph.js +35 -69
  109. package/dist/_cjs/contract/ralph.js.map +1 -0
  110. package/dist/{src → _cjs}/contract/script-simulator.d.ts +0 -12
  111. package/dist/{src → _cjs}/contract/script-simulator.js +23 -64
  112. package/dist/_cjs/contract/script-simulator.js.map +1 -0
  113. package/dist/_cjs/debug.js +29 -0
  114. package/dist/_cjs/debug.js.map +1 -0
  115. package/dist/{src → _cjs}/error.js +1 -17
  116. package/dist/_cjs/error.js.map +1 -0
  117. package/dist/{src → _cjs}/exchange/exchange.js +8 -26
  118. package/dist/_cjs/exchange/exchange.js.map +1 -0
  119. package/dist/_cjs/exchange/index.d.ts +2 -0
  120. package/dist/{src → _cjs}/exchange/index.js +1 -17
  121. package/dist/_cjs/exchange/index.js.map +1 -0
  122. package/dist/{src → _cjs}/global.js +7 -26
  123. package/dist/_cjs/global.js.map +1 -0
  124. package/dist/{src → _cjs}/index.js +18 -27
  125. package/dist/_cjs/index.js.map +1 -0
  126. package/dist/_cjs/package.json +1 -0
  127. package/dist/{src → _cjs}/signer/index.js +1 -17
  128. package/dist/_cjs/signer/index.js.map +1 -0
  129. package/dist/{src → _cjs}/signer/signer.js +16 -63
  130. package/dist/_cjs/signer/signer.js.map +1 -0
  131. package/dist/{src → _cjs}/signer/tx-builder.js +4 -21
  132. package/dist/_cjs/signer/tx-builder.js.map +1 -0
  133. package/dist/{src → _cjs}/signer/types.js +6 -22
  134. package/dist/_cjs/signer/types.js.map +1 -0
  135. package/dist/{src → _cjs}/token/index.js +1 -17
  136. package/dist/_cjs/token/index.js.map +1 -0
  137. package/dist/{src → _cjs}/token/nft.d.ts +0 -1
  138. package/dist/{src → _cjs}/token/nft.js +5 -24
  139. package/dist/_cjs/token/nft.js.map +1 -0
  140. package/dist/{src → _cjs}/transaction/index.js +1 -17
  141. package/dist/_cjs/transaction/index.js.map +1 -0
  142. package/dist/{src → _cjs}/transaction/sign-verify.js +20 -27
  143. package/dist/_cjs/transaction/sign-verify.js.map +1 -0
  144. package/dist/{src → _cjs}/transaction/status.js +20 -26
  145. package/dist/_cjs/transaction/status.js.map +1 -0
  146. package/dist/{src → _cjs}/transaction/utils.js +3 -20
  147. package/dist/_cjs/transaction/utils.js.map +1 -0
  148. package/dist/{src → _cjs}/utils/bs58.d.ts +0 -1
  149. package/dist/{src → _cjs}/utils/bs58.js +4 -21
  150. package/dist/_cjs/utils/bs58.js.map +1 -0
  151. package/dist/_cjs/utils/djb2.js +11 -0
  152. package/dist/_cjs/utils/djb2.js.map +1 -0
  153. package/dist/{src → _cjs}/utils/index.js +1 -17
  154. package/dist/_cjs/utils/index.js.map +1 -0
  155. package/dist/{src → _cjs}/utils/number.d.ts +0 -2
  156. package/dist/{src → _cjs}/utils/number.fixture.js +1 -17
  157. package/dist/_cjs/utils/number.fixture.js.map +1 -0
  158. package/dist/{src → _cjs}/utils/number.js +10 -44
  159. package/dist/_cjs/utils/number.js.map +1 -0
  160. package/dist/_cjs/utils/sign.js +89 -0
  161. package/dist/_cjs/utils/sign.js.map +1 -0
  162. package/dist/{src → _cjs}/utils/subscription.js +1 -17
  163. package/dist/_cjs/utils/subscription.js.map +1 -0
  164. package/dist/{src → _cjs}/utils/utils.d.ts +7 -6
  165. package/dist/{src → _cjs}/utils/utils.js +60 -57
  166. package/dist/_cjs/utils/utils.js.map +1 -0
  167. package/dist/{src → _cjs}/utils/webcrypto.d.ts +1 -3
  168. package/dist/_cjs/utils/webcrypto.js +18 -0
  169. package/dist/_cjs/utils/webcrypto.js.map +1 -0
  170. package/dist/_esm/address/address.d.ts +36 -0
  171. package/dist/_esm/address/address.js +309 -0
  172. package/dist/_esm/address/address.js.map +1 -0
  173. package/dist/_esm/address/index.d.ts +1 -0
  174. package/dist/_esm/address/index.js +2 -0
  175. package/dist/_esm/address/index.js.map +1 -0
  176. package/dist/_esm/api/api-alephium.d.ts +1152 -0
  177. package/dist/_esm/api/api-alephium.js +797 -0
  178. package/dist/_esm/api/api-alephium.js.map +1 -0
  179. package/dist/_esm/api/api-explorer.d.ts +586 -0
  180. package/dist/_esm/api/api-explorer.js +577 -0
  181. package/dist/_esm/api/api-explorer.js.map +1 -0
  182. package/dist/_esm/api/explorer-provider.d.ts +21 -0
  183. package/dist/_esm/api/explorer-provider.js +48 -0
  184. package/dist/_esm/api/explorer-provider.js.map +1 -0
  185. package/dist/_esm/api/index.d.ts +6 -0
  186. package/dist/_esm/api/index.js +7 -0
  187. package/dist/_esm/api/index.js.map +1 -0
  188. package/dist/_esm/api/node-provider.d.ts +46 -0
  189. package/dist/_esm/api/node-provider.js +178 -0
  190. package/dist/_esm/api/node-provider.js.map +1 -0
  191. package/dist/_esm/api/types.d.ts +71 -0
  192. package/dist/_esm/api/types.js +219 -0
  193. package/dist/_esm/api/types.js.map +1 -0
  194. package/dist/_esm/api/utils.d.ts +10 -0
  195. package/dist/_esm/api/utils.js +37 -0
  196. package/dist/_esm/api/utils.js.map +1 -0
  197. package/dist/_esm/block/block.d.ts +27 -0
  198. package/dist/_esm/block/block.js +128 -0
  199. package/dist/_esm/block/block.js.map +1 -0
  200. package/dist/_esm/block/index.d.ts +2 -0
  201. package/dist/_esm/block/index.js +2 -0
  202. package/dist/_esm/block/index.js.map +1 -0
  203. package/dist/_esm/codec/array-codec.d.ts +8 -0
  204. package/dist/_esm/codec/array-codec.js +25 -0
  205. package/dist/_esm/codec/array-codec.js.map +1 -0
  206. package/dist/_esm/codec/asset-output-codec.d.ts +21 -0
  207. package/dist/_esm/codec/asset-output-codec.js +74 -0
  208. package/dist/_esm/codec/asset-output-codec.js.map +1 -0
  209. package/dist/_esm/codec/bigint-codec.d.ts +5 -0
  210. package/dist/_esm/codec/bigint-codec.js +62 -0
  211. package/dist/_esm/codec/bigint-codec.js.map +1 -0
  212. package/dist/_esm/codec/bytestring-codec.d.ts +10 -0
  213. package/dist/_esm/codec/bytestring-codec.js +16 -0
  214. package/dist/_esm/codec/bytestring-codec.js.map +1 -0
  215. package/dist/_esm/codec/checksum-codec.d.ts +8 -0
  216. package/dist/_esm/codec/checksum-codec.js +27 -0
  217. package/dist/_esm/codec/checksum-codec.js.map +1 -0
  218. package/dist/_esm/codec/codec.d.ts +57 -0
  219. package/dist/_esm/codec/codec.js +114 -0
  220. package/dist/_esm/codec/codec.js.map +1 -0
  221. package/dist/_esm/codec/compact-int-codec.d.ts +68 -0
  222. package/dist/_esm/codec/compact-int-codec.js +287 -0
  223. package/dist/_esm/codec/compact-int-codec.js.map +1 -0
  224. package/dist/_esm/codec/contract-codec.d.ts +19 -0
  225. package/dist/_esm/codec/contract-codec.js +47 -0
  226. package/dist/_esm/codec/contract-codec.js.map +1 -0
  227. package/dist/_esm/codec/contract-output-codec.d.ts +14 -0
  228. package/dist/_esm/codec/contract-output-codec.js +40 -0
  229. package/dist/_esm/codec/contract-output-codec.js.map +1 -0
  230. package/dist/_esm/codec/contract-output-ref-codec.d.ts +8 -0
  231. package/dist/_esm/codec/contract-output-ref-codec.js +9 -0
  232. package/dist/_esm/codec/contract-output-ref-codec.js.map +1 -0
  233. package/dist/_esm/codec/either-codec.d.ts +9 -0
  234. package/dist/_esm/codec/either-codec.js +5 -0
  235. package/dist/_esm/codec/either-codec.js.map +1 -0
  236. package/dist/_esm/codec/hash.d.ts +3 -0
  237. package/dist/_esm/codec/hash.js +15 -0
  238. package/dist/_esm/codec/hash.js.map +1 -0
  239. package/dist/_esm/codec/index.d.ts +24 -0
  240. package/dist/_esm/codec/index.js +25 -0
  241. package/dist/_esm/codec/index.js.map +1 -0
  242. package/dist/_esm/codec/input-codec.d.ts +15 -0
  243. package/dist/_esm/codec/input-codec.js +33 -0
  244. package/dist/_esm/codec/input-codec.js.map +1 -0
  245. package/dist/_esm/codec/instr-codec.d.ts +857 -0
  246. package/dist/_esm/codec/instr-codec.js +1138 -0
  247. package/dist/_esm/codec/instr-codec.js.map +1 -0
  248. package/dist/_esm/codec/int-as-4bytes-codec.d.ts +7 -0
  249. package/dist/_esm/codec/int-as-4bytes-codec.js +12 -0
  250. package/dist/_esm/codec/int-as-4bytes-codec.js.map +1 -0
  251. package/dist/_esm/codec/lockup-script-codec.d.ts +42 -0
  252. package/dist/_esm/codec/lockup-script-codec.js +28 -0
  253. package/dist/_esm/codec/lockup-script-codec.js.map +1 -0
  254. package/dist/_esm/codec/method-codec.d.ts +20 -0
  255. package/dist/_esm/codec/method-codec.js +54 -0
  256. package/dist/_esm/codec/method-codec.js.map +1 -0
  257. package/dist/_esm/codec/option-codec.d.ts +9 -0
  258. package/dist/_esm/codec/option-codec.js +16 -0
  259. package/dist/_esm/codec/option-codec.js.map +1 -0
  260. package/dist/_esm/codec/output-codec.d.ts +7 -0
  261. package/dist/_esm/codec/output-codec.js +7 -0
  262. package/dist/_esm/codec/output-codec.js.map +1 -0
  263. package/dist/_esm/codec/public-key-like-codec.d.ts +17 -0
  264. package/dist/_esm/codec/public-key-like-codec.js +11 -0
  265. package/dist/_esm/codec/public-key-like-codec.js.map +1 -0
  266. package/dist/_esm/codec/reader.d.ts +10 -0
  267. package/dist/_esm/codec/reader.js +38 -0
  268. package/dist/_esm/codec/reader.js.map +1 -0
  269. package/dist/_esm/codec/script-codec.d.ts +12 -0
  270. package/dist/_esm/codec/script-codec.js +14 -0
  271. package/dist/_esm/codec/script-codec.js.map +1 -0
  272. package/dist/_esm/codec/signature-codec.d.ts +5 -0
  273. package/dist/_esm/codec/signature-codec.js +5 -0
  274. package/dist/_esm/codec/signature-codec.js.map +1 -0
  275. package/dist/_esm/codec/timestamp-codec.d.ts +8 -0
  276. package/dist/_esm/codec/timestamp-codec.js +19 -0
  277. package/dist/_esm/codec/timestamp-codec.js.map +1 -0
  278. package/dist/_esm/codec/token-codec.d.ts +8 -0
  279. package/dist/_esm/codec/token-codec.js +9 -0
  280. package/dist/_esm/codec/token-codec.js.map +1 -0
  281. package/dist/_esm/codec/transaction-codec.d.ts +21 -0
  282. package/dist/_esm/codec/transaction-codec.js +82 -0
  283. package/dist/_esm/codec/transaction-codec.js.map +1 -0
  284. package/dist/_esm/codec/unlock-script-codec.d.ts +44 -0
  285. package/dist/_esm/codec/unlock-script-codec.js +49 -0
  286. package/dist/_esm/codec/unlock-script-codec.js.map +1 -0
  287. package/dist/_esm/codec/unsigned-tx-codec.d.ts +23 -0
  288. package/dist/_esm/codec/unsigned-tx-codec.js +57 -0
  289. package/dist/_esm/codec/unsigned-tx-codec.js.map +1 -0
  290. package/dist/_esm/codec/val.d.ts +27 -0
  291. package/dist/_esm/codec/val.js +14 -0
  292. package/dist/_esm/codec/val.js.map +1 -0
  293. package/dist/_esm/constants.d.ts +14 -0
  294. package/dist/_esm/constants.js +15 -0
  295. package/dist/_esm/constants.js.map +1 -0
  296. package/dist/_esm/contract/contract.d.ts +328 -0
  297. package/dist/_esm/contract/contract.js +1449 -0
  298. package/dist/_esm/contract/contract.js.map +1 -0
  299. package/dist/_esm/contract/dapp-tx-builder.d.ts +26 -0
  300. package/dist/_esm/contract/dapp-tx-builder.js +166 -0
  301. package/dist/_esm/contract/dapp-tx-builder.js.map +1 -0
  302. package/dist/_esm/contract/deployment.d.ts +21 -0
  303. package/dist/_esm/contract/deployment.js +2 -0
  304. package/dist/_esm/contract/deployment.js.map +1 -0
  305. package/dist/_esm/contract/events.d.ts +17 -0
  306. package/dist/_esm/contract/events.js +59 -0
  307. package/dist/_esm/contract/events.js.map +1 -0
  308. package/dist/_esm/contract/index.d.ts +6 -0
  309. package/dist/_esm/contract/index.js +7 -0
  310. package/dist/_esm/contract/index.js.map +1 -0
  311. package/dist/_esm/contract/ralph.d.ts +73 -0
  312. package/dist/_esm/contract/ralph.js +372 -0
  313. package/dist/_esm/contract/ralph.js.map +1 -0
  314. package/dist/_esm/contract/script-simulator.d.ts +15 -0
  315. package/dist/_esm/contract/script-simulator.js +712 -0
  316. package/dist/_esm/contract/script-simulator.js.map +1 -0
  317. package/dist/_esm/debug.d.ts +6 -0
  318. package/dist/_esm/debug.js +21 -0
  319. package/dist/_esm/debug.js.map +1 -0
  320. package/dist/_esm/error.d.ts +4 -0
  321. package/dist/_esm/error.js +16 -0
  322. package/dist/_esm/error.js.map +1 -0
  323. package/dist/_esm/exchange/exchange.d.ts +21 -0
  324. package/dist/_esm/exchange/exchange.js +137 -0
  325. package/dist/_esm/exchange/exchange.js.map +1 -0
  326. package/dist/_esm/exchange/index.d.ts +2 -0
  327. package/dist/_esm/exchange/index.js +2 -0
  328. package/dist/_esm/exchange/index.js.map +1 -0
  329. package/dist/_esm/global.d.ts +10 -0
  330. package/dist/_esm/global.js +49 -0
  331. package/dist/_esm/global.js.map +1 -0
  332. package/dist/_esm/index.d.ts +15 -0
  333. package/dist/_esm/index.js +16 -0
  334. package/dist/_esm/index.js.map +1 -0
  335. package/dist/_esm/package.json +1 -0
  336. package/dist/_esm/signer/index.d.ts +3 -0
  337. package/dist/_esm/signer/index.js +4 -0
  338. package/dist/_esm/signer/index.js.map +1 -0
  339. package/dist/_esm/signer/signer.d.ts +63 -0
  340. package/dist/_esm/signer/signer.js +279 -0
  341. package/dist/_esm/signer/signer.js.map +1 -0
  342. package/dist/_esm/signer/tx-builder.d.ts +22 -0
  343. package/dist/_esm/signer/tx-builder.js +270 -0
  344. package/dist/_esm/signer/tx-builder.js.map +1 -0
  345. package/dist/_esm/signer/types.d.ts +167 -0
  346. package/dist/_esm/signer/types.js +27 -0
  347. package/dist/_esm/signer/types.js.map +1 -0
  348. package/dist/_esm/token/index.d.ts +1 -0
  349. package/dist/_esm/token/index.js +2 -0
  350. package/dist/_esm/token/index.js.map +1 -0
  351. package/dist/_esm/token/nft.d.ts +8 -0
  352. package/dist/_esm/token/nft.js +95 -0
  353. package/dist/_esm/token/nft.js.map +1 -0
  354. package/dist/_esm/transaction/index.d.ts +3 -0
  355. package/dist/_esm/transaction/index.js +4 -0
  356. package/dist/_esm/transaction/index.js.map +1 -0
  357. package/dist/_esm/transaction/sign-verify.d.ts +3 -0
  358. package/dist/_esm/transaction/sign-verify.js +8 -0
  359. package/dist/_esm/transaction/sign-verify.js.map +1 -0
  360. package/dist/_esm/transaction/status.d.ts +12 -0
  361. package/dist/_esm/transaction/status.js +33 -0
  362. package/dist/_esm/transaction/status.js.map +1 -0
  363. package/dist/_esm/transaction/utils.d.ts +4 -0
  364. package/dist/_esm/transaction/utils.js +35 -0
  365. package/dist/_esm/transaction/utils.js.map +1 -0
  366. package/dist/_esm/utils/bs58.d.ts +5 -0
  367. package/dist/_esm/utils/bs58.js +25 -0
  368. package/dist/_esm/utils/bs58.js.map +1 -0
  369. package/dist/_esm/utils/djb2.d.ts +1 -0
  370. package/dist/_esm/utils/djb2.js +8 -0
  371. package/dist/_esm/utils/djb2.js.map +1 -0
  372. package/dist/_esm/utils/index.d.ts +7 -0
  373. package/dist/_esm/utils/index.js +8 -0
  374. package/dist/_esm/utils/index.js.map +1 -0
  375. package/dist/_esm/utils/number.d.ts +17 -0
  376. package/dist/_esm/utils/number.fixture.d.ts +12 -0
  377. package/dist/_esm/utils/number.fixture.js +170 -0
  378. package/dist/_esm/utils/number.fixture.js.map +1 -0
  379. package/dist/_esm/utils/number.js +104 -0
  380. package/dist/_esm/utils/number.js.map +1 -0
  381. package/dist/_esm/utils/sign.d.ts +3 -0
  382. package/dist/_esm/utils/sign.js +52 -0
  383. package/dist/_esm/utils/sign.js.map +1 -0
  384. package/dist/_esm/utils/subscription.d.ts +22 -0
  385. package/dist/_esm/utils/subscription.js +31 -0
  386. package/dist/_esm/utils/subscription.js.map +1 -0
  387. package/dist/_esm/utils/utils.d.ts +40 -0
  388. package/dist/_esm/utils/utils.js +116 -0
  389. package/dist/_esm/utils/utils.js.map +1 -0
  390. package/dist/_esm/utils/webcrypto.d.ts +4 -0
  391. package/dist/_esm/utils/webcrypto.js +14 -0
  392. package/dist/_esm/utils/webcrypto.js.map +1 -0
  393. package/package.json +34 -40
  394. package/src/address/address.ts +12 -17
  395. package/src/api/api-alephium.ts +4 -5
  396. package/src/api/api-explorer.ts +4 -5
  397. package/src/api/types.ts +3 -2
  398. package/src/api/utils.ts +13 -1
  399. package/src/block/index.ts +2 -1
  400. package/src/codec/hash.ts +2 -2
  401. package/src/contract/contract.ts +54 -15
  402. package/src/exchange/index.ts +1 -3
  403. package/src/index.ts +0 -4
  404. package/src/signer/signer.ts +17 -11
  405. package/src/token/nft.ts +0 -1
  406. package/src/utils/sign.ts +19 -20
  407. package/src/utils/utils.ts +9 -20
  408. package/src/utils/webcrypto.ts +4 -10
  409. package/tsconfig.build.json +9 -0
  410. package/dist/alephium-web3.min.js +0 -3
  411. package/dist/alephium-web3.min.js.LICENSE.txt +0 -12
  412. package/dist/alephium-web3.min.js.map +0 -1
  413. package/dist/scripts/check-versions.d.ts +0 -1
  414. package/dist/scripts/check-versions.js +0 -39
  415. package/dist/scripts/header.d.ts +0 -0
  416. package/dist/scripts/header.js +0 -18
  417. package/dist/src/api/api-alephium.d.ts +0 -2433
  418. package/dist/src/api/api-explorer.d.ts +0 -1472
  419. package/dist/src/block/index.d.ts +0 -1
  420. package/dist/src/block/index.js +0 -22
  421. package/dist/src/codec/contract-output-ref-codec.js +0 -28
  422. package/dist/src/codec/either-codec.js +0 -25
  423. package/dist/src/codec/hash.js +0 -40
  424. package/dist/src/codec/int-as-4bytes-codec.js +0 -32
  425. package/dist/src/codec/option-codec.js +0 -36
  426. package/dist/src/codec/output-codec.js +0 -26
  427. package/dist/src/codec/public-key-like-codec.js +0 -30
  428. package/dist/src/codec/script-codec.js +0 -34
  429. package/dist/src/codec/signature-codec.js +0 -24
  430. package/dist/src/codec/token-codec.js +0 -28
  431. package/dist/src/contract/deployment.js +0 -19
  432. package/dist/src/debug.js +0 -46
  433. package/dist/src/exchange/index.d.ts +0 -1
  434. package/dist/src/utils/djb2.js +0 -27
  435. package/dist/src/utils/sign.js +0 -96
  436. package/dist/src/utils/webcrypto.js +0 -41
  437. package/webpack.config.js +0 -56
  438. /package/dist/{src → _cjs}/address/address.d.ts +0 -0
  439. /package/dist/{src → _cjs}/address/index.d.ts +0 -0
  440. /package/dist/{src → _cjs}/api/explorer-provider.d.ts +0 -0
  441. /package/dist/{src → _cjs}/api/index.d.ts +0 -0
  442. /package/dist/{src → _cjs}/api/types.d.ts +0 -0
  443. /package/dist/{src → _cjs}/block/block.d.ts +0 -0
  444. /package/dist/{src → _cjs}/codec/array-codec.d.ts +0 -0
  445. /package/dist/{src → _cjs}/codec/asset-output-codec.d.ts +0 -0
  446. /package/dist/{src → _cjs}/codec/bigint-codec.d.ts +0 -0
  447. /package/dist/{src → _cjs}/codec/checksum-codec.d.ts +0 -0
  448. /package/dist/{src → _cjs}/codec/codec.d.ts +0 -0
  449. /package/dist/{src → _cjs}/codec/compact-int-codec.d.ts +0 -0
  450. /package/dist/{src → _cjs}/codec/contract-codec.d.ts +0 -0
  451. /package/dist/{src → _cjs}/codec/contract-output-codec.d.ts +0 -0
  452. /package/dist/{src → _cjs}/codec/contract-output-ref-codec.d.ts +0 -0
  453. /package/dist/{src → _cjs}/codec/either-codec.d.ts +0 -0
  454. /package/dist/{src → _cjs}/codec/index.d.ts +0 -0
  455. /package/dist/{src → _cjs}/codec/input-codec.d.ts +0 -0
  456. /package/dist/{src → _cjs}/codec/instr-codec.d.ts +0 -0
  457. /package/dist/{src → _cjs}/codec/int-as-4bytes-codec.d.ts +0 -0
  458. /package/dist/{src → _cjs}/codec/method-codec.d.ts +0 -0
  459. /package/dist/{src → _cjs}/codec/option-codec.d.ts +0 -0
  460. /package/dist/{src → _cjs}/codec/output-codec.d.ts +0 -0
  461. /package/dist/{src → _cjs}/codec/public-key-like-codec.d.ts +0 -0
  462. /package/dist/{src → _cjs}/codec/reader.d.ts +0 -0
  463. /package/dist/{src → _cjs}/codec/script-codec.d.ts +0 -0
  464. /package/dist/{src → _cjs}/codec/timestamp-codec.d.ts +0 -0
  465. /package/dist/{src → _cjs}/codec/token-codec.d.ts +0 -0
  466. /package/dist/{src → _cjs}/codec/transaction-codec.d.ts +0 -0
  467. /package/dist/{src → _cjs}/codec/unsigned-tx-codec.d.ts +0 -0
  468. /package/dist/{src → _cjs}/codec/val.d.ts +0 -0
  469. /package/dist/{src → _cjs}/contract/contract.d.ts +0 -0
  470. /package/dist/{src → _cjs}/contract/dapp-tx-builder.d.ts +0 -0
  471. /package/dist/{src → _cjs}/contract/deployment.d.ts +0 -0
  472. /package/dist/{src → _cjs}/contract/events.d.ts +0 -0
  473. /package/dist/{src → _cjs}/contract/index.d.ts +0 -0
  474. /package/dist/{src → _cjs}/contract/ralph.d.ts +0 -0
  475. /package/dist/{src → _cjs}/debug.d.ts +0 -0
  476. /package/dist/{src → _cjs}/error.d.ts +0 -0
  477. /package/dist/{src → _cjs}/exchange/exchange.d.ts +0 -0
  478. /package/dist/{src → _cjs}/global.d.ts +0 -0
  479. /package/dist/{src → _cjs}/index.d.ts +0 -0
  480. /package/dist/{src → _cjs}/signer/index.d.ts +0 -0
  481. /package/dist/{src → _cjs}/signer/signer.d.ts +0 -0
  482. /package/dist/{src → _cjs}/signer/tx-builder.d.ts +0 -0
  483. /package/dist/{src → _cjs}/signer/types.d.ts +0 -0
  484. /package/dist/{src → _cjs}/token/index.d.ts +0 -0
  485. /package/dist/{src → _cjs}/transaction/index.d.ts +0 -0
  486. /package/dist/{src → _cjs}/transaction/sign-verify.d.ts +0 -0
  487. /package/dist/{src → _cjs}/transaction/status.d.ts +0 -0
  488. /package/dist/{src → _cjs}/transaction/utils.d.ts +0 -0
  489. /package/dist/{src → _cjs}/utils/djb2.d.ts +0 -0
  490. /package/dist/{src → _cjs}/utils/index.d.ts +0 -0
  491. /package/dist/{src → _cjs}/utils/number.fixture.d.ts +0 -0
  492. /package/dist/{src → _cjs}/utils/sign.d.ts +0 -0
  493. /package/dist/{src → _cjs}/utils/subscription.d.ts +0 -0
@@ -1,21 +1,4 @@
1
1
  "use strict";
2
- /*
3
- Copyright 2018 - 2022 The Alephium Authors
4
- This file is part of the alephium project.
5
-
6
- The library is free software: you can redistribute it and/or modify
7
- it under the terms of the GNU Lesser General Public License as published by
8
- the Free Software Foundation, either version 3 of the License, or
9
- (at your option) any later version.
10
-
11
- The library is distributed in the hope that it will be useful,
12
- but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
- GNU Lesser General Public License for more details.
15
-
16
- You should have received a copy of the GNU Lesser General Public License
17
- along with the library. If not, see <http://www.gnu.org/licenses/>.
18
- */
19
2
  Object.defineProperty(exports, "__esModule", { value: true });
20
3
  exports.ScriptSimulator = void 0;
21
4
  const address_1 = require("../address");
@@ -24,7 +7,6 @@ const lockup_script_codec_1 = require("../codec/lockup-script-codec");
24
7
  const constants_1 = require("../constants");
25
8
  const utils_1 = require("../utils");
26
9
  class ScriptSimulator {
27
- // This function without errors is recommended for now as the simulator does not support all instructions
28
10
  static extractContractCalls(unsignedTx) {
29
11
  try {
30
12
  return this.extractContractCallsWithErrors(unsignedTx);
@@ -182,140 +164,120 @@ class ScriptSimulator {
182
164
  break;
183
165
  }
184
166
  case 'I256Add': {
185
- // unsafe
186
167
  const i256_2 = operandStack.popI256();
187
168
  const i256_1 = operandStack.popI256();
188
169
  binaryOp(i256_1, i256_2, (x, y) => x + y, operandStack.push);
189
170
  break;
190
171
  }
191
172
  case 'I256Sub': {
192
- // unsafe
193
173
  const i256_2 = operandStack.popI256();
194
174
  const i256_1 = operandStack.popI256();
195
175
  binaryOp(i256_1, i256_2, (x, y) => x - y, operandStack.push);
196
176
  break;
197
177
  }
198
178
  case 'I256Mul': {
199
- // unsafe
200
179
  const i256_2 = operandStack.popI256();
201
180
  const i256_1 = operandStack.popI256();
202
181
  binaryOp(i256_1, i256_2, (x, y) => x * y, operandStack.push);
203
182
  break;
204
183
  }
205
184
  case 'I256Div': {
206
- // unsafe
207
185
  const i256_2 = operandStack.popI256();
208
186
  const i256_1 = operandStack.popI256();
209
187
  binaryOp(i256_1, i256_2, (x, y) => x / y, operandStack.push);
210
188
  break;
211
189
  }
212
190
  case 'I256Eq': {
213
- // unsafe
214
191
  const i256_2 = operandStack.popI256();
215
192
  const i256_1 = operandStack.popI256();
216
193
  comparisonOp(i256_1, i256_2, (x, y) => x === y, operandStack.push);
217
194
  break;
218
195
  }
219
196
  case 'I256Neq': {
220
- // unsafe
221
197
  const i256_2 = operandStack.popI256();
222
198
  const i256_1 = operandStack.popI256();
223
199
  comparisonOp(i256_1, i256_2, (x, y) => x !== y, operandStack.push);
224
200
  break;
225
201
  }
226
202
  case 'I256Lt': {
227
- // unsafe
228
203
  const i256_2 = operandStack.popI256();
229
204
  const i256_1 = operandStack.popI256();
230
205
  comparisonOp(i256_1, i256_2, (x, y) => x < y, operandStack.push);
231
206
  break;
232
207
  }
233
208
  case 'I256Le': {
234
- // unsafe
235
209
  const i256_2 = operandStack.popI256();
236
210
  const i256_1 = operandStack.popI256();
237
211
  comparisonOp(i256_1, i256_2, (x, y) => x <= y, operandStack.push);
238
212
  break;
239
213
  }
240
214
  case 'I256Gt': {
241
- // unsafe
242
215
  const i256_2 = operandStack.popI256();
243
216
  const i256_1 = operandStack.popI256();
244
217
  comparisonOp(i256_1, i256_2, (x, y) => x > y, operandStack.push);
245
218
  break;
246
219
  }
247
220
  case 'I256Ge': {
248
- // unsafe
249
221
  const i256_2 = operandStack.popI256();
250
222
  const i256_1 = operandStack.popI256();
251
223
  comparisonOp(i256_1, i256_2, (x, y) => x >= y, operandStack.push);
252
224
  break;
253
225
  }
254
226
  case 'U256Add': {
255
- // unsafe
256
227
  const u256_2 = operandStack.popU256();
257
228
  const u256_1 = operandStack.popU256();
258
229
  binaryOp(u256_1, u256_2, (x, y) => x + y, operandStack.push);
259
230
  break;
260
231
  }
261
232
  case 'U256Sub': {
262
- // unsafe
263
233
  const u256_2 = operandStack.popU256();
264
234
  const u256_1 = operandStack.popU256();
265
235
  binaryOp(u256_1, u256_2, (x, y) => x - y, operandStack.push);
266
236
  break;
267
237
  }
268
238
  case 'U256Mul': {
269
- // unsafe
270
239
  const u256_2 = operandStack.popU256();
271
240
  const u256_1 = operandStack.popU256();
272
241
  binaryOp(u256_1, u256_2, (x, y) => x * y, operandStack.push);
273
242
  break;
274
243
  }
275
244
  case 'U256Div': {
276
- // unsafe
277
245
  const u256_2 = operandStack.popU256();
278
246
  const u256_1 = operandStack.popU256();
279
247
  binaryOp(u256_1, u256_2, (x, y) => x / y, operandStack.push);
280
248
  break;
281
249
  }
282
250
  case 'U256Eq': {
283
- // unsafe
284
251
  const u256_2 = operandStack.popU256();
285
252
  const u256_1 = operandStack.popU256();
286
253
  comparisonOp(u256_1, u256_2, (x, y) => x === y, operandStack.push);
287
254
  break;
288
255
  }
289
256
  case 'U256Neq': {
290
- // unsafe
291
257
  const u256_2 = operandStack.popU256();
292
258
  const u256_1 = operandStack.popU256();
293
259
  comparisonOp(u256_1, u256_2, (x, y) => x !== y, operandStack.push);
294
260
  break;
295
261
  }
296
262
  case 'U256Lt': {
297
- // unsafe
298
263
  const u256_2 = operandStack.popU256();
299
264
  const u256_1 = operandStack.popU256();
300
265
  comparisonOp(u256_1, u256_2, (x, y) => x < y, operandStack.push);
301
266
  break;
302
267
  }
303
268
  case 'U256Le': {
304
- // unsafe
305
269
  const u256_2 = operandStack.popU256();
306
270
  const u256_1 = operandStack.popU256();
307
271
  comparisonOp(u256_1, u256_2, (x, y) => x <= y, operandStack.push);
308
272
  break;
309
273
  }
310
274
  case 'U256Gt': {
311
- // unsafe
312
275
  const u256_2 = operandStack.popU256();
313
276
  const u256_1 = operandStack.popU256();
314
277
  comparisonOp(u256_1, u256_2, (x, y) => x > y, operandStack.push);
315
278
  break;
316
279
  }
317
280
  case 'U256Ge': {
318
- // unsafe
319
281
  const u256_2 = operandStack.popU256();
320
282
  const u256_1 = operandStack.popU256();
321
283
  comparisonOp(u256_1, u256_2, (x, y) => x >= y, operandStack.push);
@@ -450,8 +412,8 @@ class ScriptSimulator {
450
412
  case 'CallExternal':
451
413
  case 'CallExternalBySelector': {
452
414
  const contractId = operandStack.popByteVec();
453
- const returnLength = operandStack.popU256(); // method return length
454
- operandStack.popU256(); // method args length
415
+ const returnLength = operandStack.popU256();
416
+ operandStack.popU256();
455
417
  if (contractId.kind !== 'Symbol-ByteVec') {
456
418
  contractCalls.push({
457
419
  contractAddress: (0, address_1.addressFromContractId)((0, utils_1.binToHex)(contractId.value)),
@@ -502,10 +464,10 @@ class ScriptSimulator {
502
464
  break;
503
465
  }
504
466
  case 'ApproveAlph': {
505
- const amount = operandStack.popU256(); // amount
506
- const spender = operandStack.popAddress(); // spender
467
+ const amount = operandStack.popU256();
468
+ const spender = operandStack.popAddress();
507
469
  if (spender.kind.startsWith('Symbol')) {
508
- approved.setUnknown(); // The spender might be the caller
470
+ approved.setUnknown();
509
471
  }
510
472
  else if (spender === callerAddress) {
511
473
  approved.addApprovedAttoAlph(amount);
@@ -513,11 +475,11 @@ class ScriptSimulator {
513
475
  break;
514
476
  }
515
477
  case 'ApproveToken': {
516
- const amount = operandStack.popU256(); // amount
517
- const tokenId = operandStack.popByteVec(); // token
518
- const spender = operandStack.popAddress(); // spender
478
+ const amount = operandStack.popU256();
479
+ const tokenId = operandStack.popByteVec();
480
+ const spender = operandStack.popAddress();
519
481
  if (spender.kind.startsWith('Symbol')) {
520
- approved.setUnknown(); // The spender might be the caller
482
+ approved.setUnknown();
521
483
  }
522
484
  else if (spender === callerAddress) {
523
485
  approved.addApprovedToken(tokenId, amount);
@@ -525,29 +487,29 @@ class ScriptSimulator {
525
487
  break;
526
488
  }
527
489
  case 'CreateContractAndTransferToken': {
528
- operandStack.popAddress(); // token owner
490
+ operandStack.popAddress();
529
491
  }
530
492
  case 'CreateContractWithToken': {
531
- operandStack.popU256(); // token amount
493
+ operandStack.popU256();
532
494
  }
533
495
  case 'CreateContract': {
534
- operandStack.popByteVec(); // mutable fields
535
- operandStack.popByteVec(); // immutable fields
536
- operandStack.popByteVec(); // contract code
537
- operandStack.push({ kind: 'Symbol-ByteVec', value: undefined }); // new contract id
496
+ operandStack.popByteVec();
497
+ operandStack.popByteVec();
498
+ operandStack.popByteVec();
499
+ operandStack.push({ kind: 'Symbol-ByteVec', value: undefined });
538
500
  break;
539
501
  }
540
502
  case 'TransferAlph': {
541
- operandStack.popU256(); // amount
542
- operandStack.popAddress(); // recipient
543
- operandStack.popAddress(); // sender
503
+ operandStack.popU256();
504
+ operandStack.popAddress();
505
+ operandStack.popAddress();
544
506
  break;
545
507
  }
546
508
  case 'TransferToken': {
547
- operandStack.popU256(); // amount
548
- operandStack.popByteVec(); // token
549
- operandStack.popAddress(); // recipient
550
- operandStack.popAddress(); // sender
509
+ operandStack.popU256();
510
+ operandStack.popByteVec();
511
+ operandStack.popAddress();
512
+ operandStack.popAddress();
551
513
  break;
552
514
  }
553
515
  default:
@@ -581,11 +543,9 @@ function comparisonOp(x, y, op, push) {
581
543
  : { kind: 'Bool', value: op(x.value, y.value) };
582
544
  push(result);
583
545
  }
584
- // implement arrayEquals
585
546
  function arrayEquals(x, y) {
586
547
  return x.length === y.length && x.every((value, index) => value === y[`${index}`]);
587
548
  }
588
- // generate 32 bytes array with random numbers
589
549
  function random32Bytes() {
590
550
  const result = new Uint8Array(32);
591
551
  for (let i = 0; i < 32; i++) {
@@ -599,7 +559,6 @@ class Stack {
599
559
  this.push = (val) => {
600
560
  this.stack.push(val);
601
561
  };
602
- // TODO
603
562
  }
604
563
  pop() {
605
564
  const result = this.stack.pop();
@@ -647,7 +606,6 @@ class Stack {
647
606
  class LocalVariables {
648
607
  constructor() {
649
608
  this.locals = [];
650
- // TODO
651
609
  }
652
610
  get(index) {
653
611
  const result = this.locals[`${index}`];
@@ -755,3 +713,4 @@ class ApprovedAccumulator {
755
713
  }
756
714
  }
757
715
  }
716
+ //# sourceMappingURL=script-simulator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"script-simulator.js","sourceRoot":"","sources":["../../../src/contract/script-simulator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isDebugModeEnabled = isDebugModeEnabled;
4
+ exports.enableDebugMode = enableDebugMode;
5
+ exports.disableDebugMode = disableDebugMode;
6
+ exports.isContractDebugMessageEnabled = isContractDebugMessageEnabled;
7
+ exports.enableContractDebugMessage = enableContractDebugMessage;
8
+ exports.disableContractDebugMessage = disableContractDebugMessage;
9
+ let debugModeEnabled = false;
10
+ function isDebugModeEnabled() {
11
+ return debugModeEnabled;
12
+ }
13
+ function enableDebugMode() {
14
+ debugModeEnabled = true;
15
+ }
16
+ function disableDebugMode() {
17
+ debugModeEnabled = false;
18
+ }
19
+ let contractDebugMessageEnabled = true;
20
+ function isContractDebugMessageEnabled() {
21
+ return contractDebugMessageEnabled;
22
+ }
23
+ function enableContractDebugMessage() {
24
+ contractDebugMessageEnabled = true;
25
+ }
26
+ function disableContractDebugMessage() {
27
+ contractDebugMessageEnabled = false;
28
+ }
29
+ //# sourceMappingURL=debug.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debug.js","sourceRoot":"","sources":["../../src/debug.ts"],"names":[],"mappings":";;AAoBA,gDAEC;AAED,0CAEC;AAED,4CAEC;AAID,sEAEC;AAED,gEAEC;AAED,kEAEC;AA1BD,IAAI,gBAAgB,GAAG,KAAK,CAAA;AAE5B,SAAgB,kBAAkB;IAChC,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED,SAAgB,eAAe;IAC7B,gBAAgB,GAAG,IAAI,CAAA;AACzB,CAAC;AAED,SAAgB,gBAAgB;IAC9B,gBAAgB,GAAG,KAAK,CAAA;AAC1B,CAAC;AAED,IAAI,2BAA2B,GAAG,IAAI,CAAA;AAEtC,SAAgB,6BAA6B;IAC3C,OAAO,2BAA2B,CAAA;AACpC,CAAC;AAED,SAAgB,0BAA0B;IACxC,2BAA2B,GAAG,IAAI,CAAA;AACpC,CAAC;AAED,SAAgB,2BAA2B;IACzC,2BAA2B,GAAG,KAAK,CAAA;AACrC,CAAC"}
@@ -1,21 +1,4 @@
1
1
  "use strict";
2
- /*
3
- Copyright 2018 - 2022 The Alephium Authors
4
- This file is part of the alephium project.
5
-
6
- The library is free software: you can redistribute it and/or modify
7
- it under the terms of the GNU Lesser General Public License as published by
8
- the Free Software Foundation, either version 3 of the License, or
9
- (at your option) any later version.
10
-
11
- The library is distributed in the hope that it will be useful,
12
- but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
- GNU Lesser General Public License for more details.
15
-
16
- You should have received a copy of the GNU Lesser General Public License
17
- along with the library. If not, see <http://www.gnu.org/licenses/>.
18
- */
19
2
  Object.defineProperty(exports, "__esModule", { value: true });
20
3
  exports.TraceableError = void 0;
21
4
  class TraceableError extends Error {
@@ -34,3 +17,4 @@ class TraceableError extends Error {
34
17
  }
35
18
  }
36
19
  exports.TraceableError = TraceableError;
20
+ //# sourceMappingURL=error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../../src/error.ts"],"names":[],"mappings":";;;AAkBA,MAAa,cAAe,SAAQ,KAAK;IAGvC,YAAY,OAAgB,EAAE,UAAgB;QAC5C,MAAM,iBAAiB,GACrB,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,UAAU,EAAE,CAAA;QAC3G,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,GAAG,OAAO,YAAY,iBAAiB,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;QAC9E,IAAI,CAAC,KAAK,GAAG,UAAU,CAAA;QAEvB,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,CAAA;QAExC,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;YAC1B,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;QAC1C,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,IAAW,CAAA;YAC1B,MAAM,CAAC,SAAS,GAAG,WAAW,CAAA;QAChC,CAAC;IACH,CAAC;CACF;AAlBD,wCAkBC"}
@@ -1,23 +1,12 @@
1
1
  "use strict";
2
- /*
3
- Copyright 2018 - 2022 The Alephium Authors
4
- This file is part of the alephium project.
5
-
6
- The library is free software: you can redistribute it and/or modify
7
- it under the terms of the GNU Lesser General Public License as published by
8
- the Free Software Foundation, either version 3 of the License, or
9
- (at your option) any later version.
10
-
11
- The library is distributed in the hope that it will be useful,
12
- but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
- GNU Lesser General Public License for more details.
15
-
16
- You should have received a copy of the GNU Lesser General Public License
17
- along with the library. If not, see <http://www.gnu.org/licenses/>.
18
- */
19
2
  Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.isTransferTx = exports.getAddressFromUnlockScript = exports.getSenderAddress = exports.getDepositInfo = exports.getALPHDepositInfo = exports.isALPHTransferTx = exports.validateExchangeAddress = void 0;
3
+ exports.validateExchangeAddress = validateExchangeAddress;
4
+ exports.isALPHTransferTx = isALPHTransferTx;
5
+ exports.getALPHDepositInfo = getALPHDepositInfo;
6
+ exports.getDepositInfo = getDepositInfo;
7
+ exports.getSenderAddress = getSenderAddress;
8
+ exports.getAddressFromUnlockScript = getAddressFromUnlockScript;
9
+ exports.isTransferTx = isTransferTx;
21
10
  const address_1 = require("../address");
22
11
  const utils_1 = require("../utils");
23
12
  const unlock_script_codec_1 = require("../codec/unlock-script-codec");
@@ -35,11 +24,9 @@ function validateExchangeAddress(address) {
35
24
  throw new Error('Invalid address length');
36
25
  }
37
26
  }
38
- exports.validateExchangeAddress = validateExchangeAddress;
39
27
  function isALPHTransferTx(tx) {
40
28
  return isTransferTx(tx) && checkALPHOutput(tx);
41
29
  }
42
- exports.isALPHTransferTx = isALPHTransferTx;
43
30
  function getALPHDepositInfo(tx) {
44
31
  if (!isALPHTransferTx(tx))
45
32
  return [];
@@ -58,7 +45,6 @@ function getALPHDepositInfo(tx) {
58
45
  });
59
46
  return Array.from(result.entries()).map(([key, value]) => ({ targetAddress: key, depositAmount: value }));
60
47
  }
61
- exports.getALPHDepositInfo = getALPHDepositInfo;
62
48
  function getInputAddresses(tx) {
63
49
  const inputAddresses = [];
64
50
  for (const input of tx.unsigned.inputs) {
@@ -105,12 +91,9 @@ function getDepositInfo(tx) {
105
91
  })
106
92
  };
107
93
  }
108
- exports.getDepositInfo = getDepositInfo;
109
- // we assume that the tx is a simple transfer tx, i.e. isALPHTransferTx(tx) || isTokenTransferTx(tx)
110
94
  function getSenderAddress(tx) {
111
95
  return getAddressFromUnlockScript(tx.unsigned.inputs[0].unlockScript);
112
96
  }
113
- exports.getSenderAddress = getSenderAddress;
114
97
  var UnlockScriptType;
115
98
  (function (UnlockScriptType) {
116
99
  UnlockScriptType[UnlockScriptType["P2PKH"] = 0] = "P2PKH";
@@ -147,7 +130,6 @@ function getAddressFromUnlockScript(unlockScript) {
147
130
  }
148
131
  throw new Error('Invalid unlock script type');
149
132
  }
150
- exports.getAddressFromUnlockScript = getAddressFromUnlockScript;
151
133
  function checkALPHOutput(tx) {
152
134
  const outputs = tx.unsigned.fixedOutputs;
153
135
  return outputs.every((o) => o.tokens.length === 0);
@@ -161,4 +143,4 @@ function isTransferTx(tx) {
161
143
  }
162
144
  return true;
163
145
  }
164
- exports.isTransferTx = isTransferTx;
146
+ //# sourceMappingURL=exchange.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exchange.js","sourceRoot":"","sources":["../../../src/exchange/exchange.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { validateExchangeAddress, getSenderAddress, isALPHTransferTx, getALPHDepositInfo, getDepositInfo } from './exchange';
2
+ export type { BaseDepositInfo, TokenDepositInfo, DepositInfo } from './exchange';
@@ -1,21 +1,4 @@
1
1
  "use strict";
2
- /*
3
- Copyright 2018 - 2022 The Alephium Authors
4
- This file is part of the alephium project.
5
-
6
- The library is free software: you can redistribute it and/or modify
7
- it under the terms of the GNU Lesser General Public License as published by
8
- the Free Software Foundation, either version 3 of the License, or
9
- (at your option) any later version.
10
-
11
- The library is distributed in the hope that it will be useful,
12
- but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
- GNU Lesser General Public License for more details.
15
-
16
- You should have received a copy of the GNU Lesser General Public License
17
- along with the library. If not, see <http://www.gnu.org/licenses/>.
18
- */
19
2
  Object.defineProperty(exports, "__esModule", { value: true });
20
3
  exports.getDepositInfo = exports.getALPHDepositInfo = exports.isALPHTransferTx = exports.getSenderAddress = exports.validateExchangeAddress = void 0;
21
4
  var exchange_1 = require("./exchange");
@@ -24,3 +7,4 @@ Object.defineProperty(exports, "getSenderAddress", { enumerable: true, get: func
24
7
  Object.defineProperty(exports, "isALPHTransferTx", { enumerable: true, get: function () { return exchange_1.isALPHTransferTx; } });
25
8
  Object.defineProperty(exports, "getALPHDepositInfo", { enumerable: true, get: function () { return exchange_1.getALPHDepositInfo; } });
26
9
  Object.defineProperty(exports, "getDepositInfo", { enumerable: true, get: function () { return exchange_1.getDepositInfo; } });
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/exchange/index.ts"],"names":[],"mappings":";;;AAkBA,uCAMmB;AALjB,mHAAA,uBAAuB,OAAA;AACvB,4GAAA,gBAAgB,OAAA;AAChB,4GAAA,gBAAgB,OAAA;AAChB,8GAAA,kBAAkB,OAAA;AAClB,0GAAA,cAAc,OAAA"}
@@ -1,23 +1,11 @@
1
1
  "use strict";
2
- /*
3
- Copyright 2018 - 2022 The Alephium Authors
4
- This file is part of the alephium project.
5
-
6
- The library is free software: you can redistribute it and/or modify
7
- it under the terms of the GNU Lesser General Public License as published by
8
- the Free Software Foundation, either version 3 of the License, or
9
- (at your option) any later version.
10
-
11
- The library is distributed in the hope that it will be useful,
12
- but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
- GNU Lesser General Public License for more details.
15
-
16
- You should have received a copy of the GNU Lesser General Public License
17
- along with the library. If not, see <http://www.gnu.org/licenses/>.
18
- */
19
2
  Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.getDefaultExplorerProvider = exports.getDefaultNodeProvider = exports.getCurrentExplorerProvider = exports.setCurrentExplorerProvider = exports.getCurrentNodeProvider = exports.setCurrentNodeProvider = void 0;
3
+ exports.setCurrentNodeProvider = setCurrentNodeProvider;
4
+ exports.getCurrentNodeProvider = getCurrentNodeProvider;
5
+ exports.setCurrentExplorerProvider = setCurrentExplorerProvider;
6
+ exports.getCurrentExplorerProvider = getCurrentExplorerProvider;
7
+ exports.getDefaultNodeProvider = getDefaultNodeProvider;
8
+ exports.getDefaultExplorerProvider = getDefaultExplorerProvider;
21
9
  const api_1 = require("./api");
22
10
  let _currentNodeProvider = undefined;
23
11
  function setCurrentNodeProvider(provider, apiKey, customFetch) {
@@ -28,14 +16,12 @@ function setCurrentNodeProvider(provider, apiKey, customFetch) {
28
16
  _currentNodeProvider = provider;
29
17
  }
30
18
  }
31
- exports.setCurrentNodeProvider = setCurrentNodeProvider;
32
19
  function getCurrentNodeProvider() {
33
20
  if (typeof _currentNodeProvider === 'undefined') {
34
21
  throw Error('No node provider is set.');
35
22
  }
36
23
  return _currentNodeProvider;
37
24
  }
38
- exports.getCurrentNodeProvider = getCurrentNodeProvider;
39
25
  let _currentExplorerProvider = undefined;
40
26
  function setCurrentExplorerProvider(provider, apiKey, customFetch) {
41
27
  if (typeof provider == 'string') {
@@ -45,13 +31,9 @@ function setCurrentExplorerProvider(provider, apiKey, customFetch) {
45
31
  _currentExplorerProvider = provider;
46
32
  }
47
33
  }
48
- exports.setCurrentExplorerProvider = setCurrentExplorerProvider;
49
- // Different from `NodeProvider`, this may return `undefined`
50
- // as ExplorerProvider is not necessary for all applications
51
34
  function getCurrentExplorerProvider() {
52
35
  return _currentExplorerProvider;
53
36
  }
54
- exports.getCurrentExplorerProvider = getCurrentExplorerProvider;
55
37
  const DEFAULT_PROVIDER_URLS = {
56
38
  mainnet: {
57
39
  nodeUrl: 'https://node.mainnet.alephium.org',
@@ -69,8 +51,7 @@ const DEFAULT_PROVIDER_URLS = {
69
51
  function getDefaultNodeProvider(networkId) {
70
52
  return new api_1.NodeProvider(DEFAULT_PROVIDER_URLS[networkId].nodeUrl);
71
53
  }
72
- exports.getDefaultNodeProvider = getDefaultNodeProvider;
73
54
  function getDefaultExplorerProvider(networkId) {
74
55
  return new api_1.ExplorerProvider(DEFAULT_PROVIDER_URLS[networkId].explorerUrl);
75
56
  }
76
- exports.getDefaultExplorerProvider = getDefaultExplorerProvider;
57
+ //# sourceMappingURL=global.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"global.js","sourceRoot":"","sources":["../../src/global.ts"],"names":[],"mappings":";;AAyBA,wDAUC;AAED,wDAKC;AAMD,gEAUC;AAID,gEAEC;AAiBD,wDAEC;AAED,gEAEC;AArED,+BAAsD;AAGtD,IAAI,oBAAoB,GAA6B,SAAS,CAAA;AAI9D,SAAgB,sBAAsB,CACpC,QAA+B,EAC/B,MAAe,EACf,WAA0B;IAE1B,IAAI,OAAO,QAAQ,IAAI,QAAQ,EAAE,CAAC;QAChC,oBAAoB,GAAG,IAAI,kBAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA;IACxE,CAAC;SAAM,CAAC;QACN,oBAAoB,GAAG,QAAQ,CAAA;IACjC,CAAC;AACH,CAAC;AAED,SAAgB,sBAAsB;IACpC,IAAI,OAAO,oBAAoB,KAAK,WAAW,EAAE,CAAC;QAChD,MAAM,KAAK,CAAC,0BAA0B,CAAC,CAAA;IACzC,CAAC;IACD,OAAO,oBAAoB,CAAA;AAC7B,CAAC;AAED,IAAI,wBAAwB,GAAiC,SAAS,CAAA;AAItE,SAAgB,0BAA0B,CACxC,QAAmC,EACnC,MAAe,EACf,WAA0B;IAE1B,IAAI,OAAO,QAAQ,IAAI,QAAQ,EAAE,CAAC;QAChC,wBAAwB,GAAG,IAAI,sBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA;IAChF,CAAC;SAAM,CAAC;QACN,wBAAwB,GAAG,QAAQ,CAAA;IACrC,CAAC;AACH,CAAC;AAID,SAAgB,0BAA0B;IACxC,OAAO,wBAAwB,CAAA;AACjC,CAAC;AAED,MAAM,qBAAqB,GAAG;IAC5B,OAAO,EAAE;QACP,OAAO,EAAE,mCAAmC;QAC5C,WAAW,EAAE,sCAAsC;KACpD;IACD,OAAO,EAAE;QACP,OAAO,EAAE,mCAAmC;QAC5C,WAAW,EAAE,sCAAsC;KACpD;IACD,MAAM,EAAE;QACN,OAAO,EAAE,wBAAwB;QACjC,WAAW,EAAE,uBAAuB;KACrC;CACF,CAAA;AAED,SAAgB,sBAAsB,CAAC,SAAoB;IACzD,OAAO,IAAI,kBAAY,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAA;AACnE,CAAC;AAED,SAAgB,0BAA0B,CAAC,SAAoB;IAC7D,OAAO,IAAI,sBAAgB,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAA;AAC3E,CAAC"}