@aeternity/aepp-sdk 11.0.1 → 12.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (444) hide show
  1. package/LICENSE +1 -1
  2. package/dist/aepp-sdk.browser-script.js +1 -1
  3. package/dist/aepp-sdk.browser-script.js.LICENSE.txt +0 -22
  4. package/dist/aepp-sdk.browser-script.js.map +1 -1
  5. package/dist/aepp-sdk.browser.js +2 -1
  6. package/dist/aepp-sdk.browser.js.LICENSE.txt +1 -0
  7. package/dist/aepp-sdk.browser.js.map +1 -1
  8. package/dist/aepp-sdk.js +20765 -1
  9. package/dist/aepp-sdk.js.map +1 -1
  10. package/es/AeSdk.d.ts +37 -0
  11. package/es/AeSdk.mjs +81 -0
  12. package/es/AeSdk.mjs.map +1 -0
  13. package/es/AeSdkAepp.d.ts +70 -0
  14. package/es/AeSdkAepp.mjs +176 -0
  15. package/es/AeSdkAepp.mjs.map +1 -0
  16. package/es/AeSdkBase.d.ts +213 -0
  17. package/es/AeSdkBase.mjs +314 -0
  18. package/es/AeSdkBase.mjs.map +1 -0
  19. package/es/AeSdkWallet.d.ts +104 -0
  20. package/es/AeSdkWallet.mjs +326 -0
  21. package/es/AeSdkWallet.mjs.map +1 -0
  22. package/es/Node.d.ts +41 -0
  23. package/es/Node.mjs +147 -0
  24. package/es/Node.mjs.map +1 -0
  25. package/es/account/Base.d.ts +68 -0
  26. package/es/account/Base.mjs +123 -0
  27. package/es/account/Base.mjs.map +1 -0
  28. package/es/account/Memory.d.ts +26 -0
  29. package/es/account/Memory.mjs +103 -0
  30. package/es/account/Memory.mjs.map +1 -0
  31. package/es/account/Rpc.d.ts +27 -0
  32. package/es/account/Rpc.mjs +80 -0
  33. package/es/account/Rpc.mjs.map +1 -0
  34. package/es/aens.d.ts +222 -0
  35. package/es/aens.mjs +338 -0
  36. package/es/aens.mjs.map +1 -0
  37. package/es/aepp-wallet-communication/connection/Browser.d.ts +33 -0
  38. package/es/aepp-wallet-communication/connection/Browser.mjs +73 -0
  39. package/es/aepp-wallet-communication/connection/Browser.mjs.map +1 -0
  40. package/es/aepp-wallet-communication/connection/BrowserRuntime.d.ts +18 -0
  41. package/es/aepp-wallet-communication/connection/BrowserRuntime.mjs +58 -0
  42. package/es/aepp-wallet-communication/connection/BrowserRuntime.mjs.map +1 -0
  43. package/es/aepp-wallet-communication/connection/BrowserWindowMessage.d.ts +36 -0
  44. package/es/aepp-wallet-communication/connection/BrowserWindowMessage.mjs +146 -0
  45. package/es/aepp-wallet-communication/connection/BrowserWindowMessage.mjs.map +1 -0
  46. package/es/aepp-wallet-communication/connection-proxy.d.ts +11 -0
  47. package/{src/utils/crypto-ts.ts → es/aepp-wallet-communication/connection-proxy.mjs} +16 -11
  48. package/es/aepp-wallet-communication/connection-proxy.mjs.map +1 -0
  49. package/es/aepp-wallet-communication/rpc/RpcClient.d.ts +34 -0
  50. package/es/aepp-wallet-communication/rpc/RpcClient.mjs +169 -0
  51. package/es/aepp-wallet-communication/rpc/RpcClient.mjs.map +1 -0
  52. package/es/aepp-wallet-communication/rpc/types.d.ts +77 -0
  53. package/es/aepp-wallet-communication/rpc/types.mjs +3 -0
  54. package/es/aepp-wallet-communication/rpc/types.mjs.map +1 -0
  55. package/es/aepp-wallet-communication/schema.d.ts +105 -46
  56. package/es/aepp-wallet-communication/schema.mjs +251 -0
  57. package/es/aepp-wallet-communication/schema.mjs.map +1 -0
  58. package/es/aepp-wallet-communication/wallet-detector.d.ts +25 -0
  59. package/es/aepp-wallet-communication/wallet-detector.mjs +62 -0
  60. package/es/aepp-wallet-communication/wallet-detector.mjs.map +1 -0
  61. package/es/apis/compiler/compiler.d.ts +92 -0
  62. package/es/apis/compiler/compiler.mjs +576 -0
  63. package/es/apis/compiler/compiler.mjs.map +1 -0
  64. package/es/apis/compiler/index.d.ts +2 -0
  65. package/es/apis/compiler/index.mjs +3 -0
  66. package/es/apis/compiler/index.mjs.map +1 -0
  67. package/es/apis/compiler/models/index.d.ts +248 -0
  68. package/es/apis/compiler/models/index.mjs +48 -0
  69. package/es/apis/compiler/models/index.mjs.map +1 -0
  70. package/es/apis/compiler/models/mappers.d.ts +23 -0
  71. package/es/apis/compiler/models/mappers.mjs +585 -0
  72. package/es/apis/compiler/models/mappers.mjs.map +1 -0
  73. package/es/apis/compiler/models/parameters.d.ts +13 -0
  74. package/es/apis/compiler/models/parameters.mjs +71 -0
  75. package/es/apis/compiler/models/parameters.mjs.map +1 -0
  76. package/es/apis/node/index.d.ts +2 -0
  77. package/es/apis/node/index.mjs +3 -0
  78. package/es/apis/node/index.mjs.map +1 -0
  79. package/es/apis/node/models/index.d.ts +1065 -0
  80. package/es/apis/node/models/index.mjs +2 -0
  81. package/es/apis/node/models/index.mjs.map +1 -0
  82. package/es/apis/node/models/mappers.d.ts +95 -0
  83. package/es/apis/node/models/mappers.mjs +4166 -0
  84. package/es/apis/node/models/mappers.mjs.map +1 -0
  85. package/es/apis/node/models/parameters.d.ts +17 -0
  86. package/es/apis/node/models/parameters.mjs +165 -0
  87. package/es/apis/node/models/parameters.mjs.map +1 -0
  88. package/es/apis/node/node.d.ts +215 -0
  89. package/es/apis/node/node.mjs +1165 -0
  90. package/es/apis/node/node.mjs.map +1 -0
  91. package/es/chain.d.ts +248 -0
  92. package/es/chain.mjs +560 -0
  93. package/es/chain.mjs.map +1 -0
  94. package/es/channel/handlers.d.ts +34 -0
  95. package/es/channel/handlers.mjs +164 -131
  96. package/es/channel/handlers.mjs.map +1 -1
  97. package/es/channel/index.d.ts +625 -0
  98. package/es/channel/index.mjs +897 -902
  99. package/es/channel/index.mjs.map +1 -1
  100. package/es/channel/internal.d.ts +101 -0
  101. package/es/channel/internal.mjs +136 -85
  102. package/es/channel/internal.mjs.map +1 -1
  103. package/es/contract/Compiler.d.ts +18 -0
  104. package/es/contract/Compiler.mjs +68 -0
  105. package/es/contract/Compiler.mjs.map +1 -0
  106. package/es/contract/aci.d.ts +127 -0
  107. package/es/contract/aci.mjs +225 -193
  108. package/es/contract/aci.mjs.map +1 -1
  109. package/es/contract/ga.d.ts +69 -0
  110. package/es/contract/ga.mjs +195 -0
  111. package/es/contract/ga.mjs.map +1 -0
  112. package/es/contract/methods.d.ts +71 -0
  113. package/es/contract/methods.mjs +104 -0
  114. package/es/contract/methods.mjs.map +1 -0
  115. package/es/deprecated/index.d.ts +143 -0
  116. package/es/deprecated/index.mjs +162 -0
  117. package/es/deprecated/index.mjs.map +1 -0
  118. package/es/deprecated/methods.d.ts +18 -0
  119. package/es/deprecated/methods.mjs +26 -0
  120. package/es/deprecated/methods.mjs.map +1 -0
  121. package/es/index.d.ts +35 -0
  122. package/es/index.mjs +35 -40
  123. package/es/index.mjs.map +1 -1
  124. package/es/oracle.d.ts +161 -0
  125. package/es/oracle.mjs +306 -0
  126. package/es/oracle.mjs.map +1 -0
  127. package/es/spend.d.ts +62 -0
  128. package/es/spend.mjs +111 -0
  129. package/es/spend.mjs.map +1 -0
  130. package/es/tx/builder/address.d.ts +25 -0
  131. package/es/tx/builder/address.mjs +45 -0
  132. package/es/tx/builder/address.mjs.map +1 -0
  133. package/es/tx/builder/constants.d.ts +70 -0
  134. package/es/tx/builder/constants.mjs +61 -47
  135. package/es/tx/builder/constants.mjs.map +1 -1
  136. package/es/tx/builder/field-types/coin-amount.d.ts +13 -0
  137. package/es/tx/builder/field-types/coin-amount.mjs +26 -0
  138. package/es/tx/builder/field-types/coin-amount.mjs.map +1 -0
  139. package/es/tx/builder/field-types/deposit.d.ts +15 -0
  140. package/es/tx/builder/field-types/deposit.mjs +19 -0
  141. package/es/tx/builder/field-types/deposit.mjs.map +1 -0
  142. package/es/tx/builder/field-types/fee.d.ts +25 -0
  143. package/es/tx/builder/field-types/fee.mjs +150 -0
  144. package/es/tx/builder/field-types/fee.mjs.map +1 -0
  145. package/es/tx/builder/field-types/field.d.ts +6 -0
  146. package/es/tx/builder/field-types/field.mjs +15 -0
  147. package/es/tx/builder/field-types/field.mjs.map +1 -0
  148. package/es/tx/builder/field-types/gas-limit.d.ts +12 -0
  149. package/es/tx/builder/field-types/gas-limit.mjs +33 -0
  150. package/es/tx/builder/field-types/gas-limit.mjs.map +1 -0
  151. package/es/tx/builder/field-types/gas-price.d.ts +8 -0
  152. package/es/tx/builder/field-types/gas-price.mjs +18 -0
  153. package/es/tx/builder/field-types/gas-price.mjs.map +1 -0
  154. package/es/tx/builder/field-types/index.d.ts +70 -0
  155. package/es/tx/builder/field-types/index.mjs +25 -0
  156. package/es/tx/builder/field-types/index.mjs.map +1 -0
  157. package/es/tx/builder/field-types/name-fee.d.ts +20 -0
  158. package/es/tx/builder/field-types/name-fee.mjs +24 -0
  159. package/es/tx/builder/field-types/name-fee.mjs.map +1 -0
  160. package/es/tx/builder/field-types/name-id.d.ts +14 -0
  161. package/es/tx/builder/field-types/name-id.mjs +19 -0
  162. package/es/tx/builder/field-types/name-id.mjs.map +1 -0
  163. package/es/tx/builder/field-types/name.d.ts +13 -0
  164. package/es/tx/builder/field-types/name.mjs +18 -0
  165. package/es/tx/builder/field-types/name.mjs.map +1 -0
  166. package/es/tx/builder/field-types/short-u-int.d.ts +6 -0
  167. package/es/tx/builder/field-types/short-u-int.mjs +12 -0
  168. package/es/tx/builder/field-types/short-u-int.mjs.map +1 -0
  169. package/es/tx/builder/field-types/u-int.d.ts +8 -0
  170. package/es/tx/builder/field-types/u-int.mjs +14 -0
  171. package/es/tx/builder/field-types/u-int.mjs.map +1 -0
  172. package/es/tx/builder/helpers.d.ts +125 -0
  173. package/es/tx/builder/helpers.mjs +94 -198
  174. package/es/tx/builder/helpers.mjs.map +1 -1
  175. package/es/tx/builder/index.d.ts +88 -0
  176. package/es/tx/builder/index.mjs +167 -358
  177. package/es/tx/builder/index.mjs.map +1 -1
  178. package/es/tx/builder/schema.d.ts +1201 -0
  179. package/es/tx/builder/schema.mjs +175 -561
  180. package/es/tx/builder/schema.mjs.map +1 -1
  181. package/es/tx/index.d.ts +64 -0
  182. package/es/tx/index.mjs +151 -265
  183. package/es/tx/index.mjs.map +1 -1
  184. package/es/tx/validator.d.ts +20 -0
  185. package/es/tx/validator.mjs +104 -124
  186. package/es/tx/validator.mjs.map +1 -1
  187. package/es/typings/@aeternity__argon2-browser/index.d.mjs +2 -0
  188. package/es/typings/@aeternity__argon2-browser/index.d.mjs.map +1 -0
  189. package/es/typings/@aeternity__uuid/index.d.mjs +2 -0
  190. package/es/typings/@aeternity__uuid/index.d.mjs.map +1 -0
  191. package/es/typings/bip32-path/index.d.mjs +2 -0
  192. package/es/typings/bip32-path/index.d.mjs.map +1 -0
  193. package/es/typings/blakejs/index.d.mjs.map +1 -1
  194. package/es/typings/sha-js/index.d.mjs +2 -0
  195. package/es/typings/sha-js/index.d.mjs.map +1 -0
  196. package/es/typings/tweetnacl-auth/index.d.mjs +2 -0
  197. package/es/typings/tweetnacl-auth/index.d.mjs.map +1 -0
  198. package/es/utils/amount-formatter.d.ts +42 -0
  199. package/es/utils/amount-formatter.mjs +36 -49
  200. package/es/utils/amount-formatter.mjs.map +1 -1
  201. package/es/utils/autorest.d.ts +6 -0
  202. package/es/utils/autorest.mjs +97 -0
  203. package/es/utils/autorest.mjs.map +1 -0
  204. package/es/utils/bignumber.d.ts +13 -0
  205. package/es/utils/bignumber.mjs +11 -8
  206. package/es/utils/bignumber.mjs.map +1 -1
  207. package/es/{bytes.d.ts → utils/bytes.d.ts} +10 -13
  208. package/es/utils/bytes.mjs +11 -15
  209. package/es/utils/bytes.mjs.map +1 -1
  210. package/es/utils/crypto.d.ts +88 -0
  211. package/es/utils/crypto.mjs +64 -98
  212. package/es/utils/crypto.mjs.map +1 -1
  213. package/es/utils/encoder-types.d.ts +61 -0
  214. package/es/utils/encoder-types.mjs +36 -0
  215. package/es/utils/encoder-types.mjs.map +1 -0
  216. package/es/utils/encoder.d.ts +25 -0
  217. package/es/utils/encoder.mjs +71 -59
  218. package/es/utils/encoder.mjs.map +1 -1
  219. package/es/{errors.d.ts → utils/errors.d.ts} +246 -59
  220. package/es/utils/errors.mjs +313 -136
  221. package/es/utils/errors.mjs.map +1 -1
  222. package/es/utils/hd-wallet.d.ts +50 -0
  223. package/es/utils/hd-wallet.mjs +86 -45
  224. package/es/utils/hd-wallet.mjs.map +1 -1
  225. package/es/utils/json-big.d.ts +5 -0
  226. package/es/utils/json-big.mjs +12 -16
  227. package/es/utils/json-big.mjs.map +1 -1
  228. package/es/utils/keystore.d.ts +51 -0
  229. package/es/utils/keystore.mjs +101 -194
  230. package/es/utils/keystore.mjs.map +1 -1
  231. package/es/{mptree.d.ts → utils/mptree.d.ts} +6 -9
  232. package/es/utils/mptree.mjs +22 -18
  233. package/es/utils/mptree.mjs.map +1 -1
  234. package/es/utils/other.d.ts +20 -0
  235. package/es/utils/other.mjs +32 -35
  236. package/es/utils/other.mjs.map +1 -1
  237. package/es/utils/semver-satisfies.d.ts +1 -0
  238. package/es/utils/semver-satisfies.mjs +2 -2
  239. package/es/utils/semver-satisfies.mjs.map +1 -1
  240. package/es/utils/string.d.ts +24 -0
  241. package/es/utils/string.mjs +8 -10
  242. package/es/utils/string.mjs.map +1 -1
  243. package/package.json +55 -43
  244. package/src/AeSdk.ts +68 -0
  245. package/src/AeSdkAepp.ts +176 -0
  246. package/src/AeSdkBase.ts +338 -0
  247. package/src/AeSdkWallet.ts +348 -0
  248. package/src/Node.ts +173 -0
  249. package/src/account/Base.ts +124 -0
  250. package/src/account/Memory.ts +98 -0
  251. package/src/account/Rpc.ts +69 -0
  252. package/src/aens.ts +407 -0
  253. package/src/aepp-wallet-communication/connection/Browser.ts +71 -0
  254. package/src/aepp-wallet-communication/connection/BrowserRuntime.ts +59 -0
  255. package/src/aepp-wallet-communication/connection/BrowserWindowMessage.ts +122 -0
  256. package/{es/utils/crypto-ts.mjs → src/aepp-wallet-communication/connection-proxy.ts} +18 -18
  257. package/src/aepp-wallet-communication/rpc/RpcClient.ts +143 -0
  258. package/src/aepp-wallet-communication/rpc/types.ts +66 -0
  259. package/src/aepp-wallet-communication/schema.ts +224 -0
  260. package/src/aepp-wallet-communication/wallet-detector.ts +72 -0
  261. package/src/apis/compiler/code-model-v4.yaml +2649 -0
  262. package/src/apis/compiler/compiler.ts +585 -0
  263. package/src/apis/compiler/index.ts +2 -0
  264. package/src/apis/compiler/models/index.ts +301 -0
  265. package/src/apis/compiler/models/mappers.ts +583 -0
  266. package/src/apis/compiler/models/parameters.ts +93 -0
  267. package/src/apis/node/code-model-v4.yaml +10080 -0
  268. package/src/apis/node/index.ts +2 -0
  269. package/src/apis/node/models/index.ts +1257 -0
  270. package/src/apis/node/models/mappers.ts +4280 -0
  271. package/src/apis/node/models/parameters.ts +188 -0
  272. package/src/apis/node/node.ts +1299 -0
  273. package/src/chain.ts +502 -0
  274. package/src/channel/handlers.ts +817 -0
  275. package/src/channel/index.ts +1025 -0
  276. package/src/channel/internal.ts +361 -0
  277. package/src/contract/Compiler.ts +67 -0
  278. package/src/contract/aci.ts +538 -0
  279. package/src/contract/ga.ts +199 -0
  280. package/src/contract/methods.ts +123 -0
  281. package/src/deprecated/index.ts +172 -0
  282. package/src/deprecated/methods.ts +25 -0
  283. package/src/index.ts +56 -0
  284. package/src/oracle.ts +364 -0
  285. package/src/spend.ts +164 -0
  286. package/src/tx/builder/address.ts +50 -0
  287. package/src/tx/builder/constants.ts +126 -0
  288. package/src/tx/builder/field-types/coin-amount.ts +27 -0
  289. package/src/tx/builder/field-types/deposit.ts +21 -0
  290. package/src/tx/builder/field-types/fee.ts +143 -0
  291. package/src/tx/builder/field-types/field.ts +9 -0
  292. package/src/tx/builder/field-types/gas-limit.ts +41 -0
  293. package/src/tx/builder/field-types/gas-price.ts +16 -0
  294. package/src/tx/builder/field-types/index.ts +45 -0
  295. package/src/tx/builder/field-types/name-fee.ts +32 -0
  296. package/src/tx/builder/field-types/name-id.ts +20 -0
  297. package/src/tx/builder/field-types/name.ts +18 -0
  298. package/src/tx/builder/field-types/short-u-int.ts +11 -0
  299. package/src/tx/builder/field-types/u-int.ts +16 -0
  300. package/src/tx/builder/helpers.ts +248 -0
  301. package/src/tx/builder/index.ts +400 -0
  302. package/src/tx/builder/schema.ts +727 -0
  303. package/src/tx/index.ts +192 -0
  304. package/src/tx/validator.ts +230 -0
  305. package/src/typings/@aeternity__argon2-browser/index.d.ts +3 -0
  306. package/src/typings/@aeternity__uuid/index.d.ts +5 -0
  307. package/src/typings/bip32-path/index.d.ts +33 -0
  308. package/src/typings/blakejs/index.d.ts +4 -32
  309. package/src/typings/sha-js/index.d.ts +5 -0
  310. package/src/typings/tweetnacl-auth/index.d.ts +14 -0
  311. package/src/utils/amount-formatter.ts +56 -69
  312. package/src/utils/autorest.ts +93 -0
  313. package/src/utils/bignumber.ts +11 -12
  314. package/src/utils/bytes.ts +29 -31
  315. package/src/utils/crypto.ts +205 -0
  316. package/src/utils/encoder-types.ts +63 -0
  317. package/src/utils/encoder.ts +116 -71
  318. package/src/utils/errors.ts +482 -366
  319. package/src/utils/hd-wallet.ts +166 -0
  320. package/src/utils/json-big.ts +27 -0
  321. package/src/utils/keystore.ts +182 -0
  322. package/src/utils/mptree.ts +64 -61
  323. package/src/utils/other.ts +34 -41
  324. package/src/utils/semver-satisfies.ts +15 -11
  325. package/src/utils/string.ts +18 -20
  326. package/es/account/base.mjs +0 -179
  327. package/es/account/base.mjs.map +0 -1
  328. package/es/account/memory.mjs +0 -99
  329. package/es/account/memory.mjs.map +0 -1
  330. package/es/account/multiple.mjs +0 -179
  331. package/es/account/multiple.mjs.map +0 -1
  332. package/es/ae/aens.mjs +0 -404
  333. package/es/ae/aens.mjs.map +0 -1
  334. package/es/ae/aepp.mjs +0 -45
  335. package/es/ae/aepp.mjs.map +0 -1
  336. package/es/ae/contract.mjs +0 -159
  337. package/es/ae/contract.mjs.map +0 -1
  338. package/es/ae/index.mjs +0 -207
  339. package/es/ae/index.mjs.map +0 -1
  340. package/es/ae/oracle.mjs +0 -339
  341. package/es/ae/oracle.mjs.map +0 -1
  342. package/es/ae/universal.mjs +0 -45
  343. package/es/ae/universal.mjs.map +0 -1
  344. package/es/ae/wallet.mjs +0 -50
  345. package/es/ae/wallet.mjs.map +0 -1
  346. package/es/amount-formatter.d.ts +0 -58
  347. package/es/bignumber.d.ts +0 -18
  348. package/es/chain/index.mjs +0 -272
  349. package/es/chain/index.mjs.map +0 -1
  350. package/es/chain/node.mjs +0 -442
  351. package/es/chain/node.mjs.map +0 -1
  352. package/es/contract/compiler.mjs +0 -115
  353. package/es/contract/compiler.mjs.map +0 -1
  354. package/es/contract/ga/helpers.mjs +0 -30
  355. package/es/contract/ga/helpers.mjs.map +0 -1
  356. package/es/contract/ga/index.mjs +0 -178
  357. package/es/contract/ga/index.mjs.map +0 -1
  358. package/es/crypto-ts.d.ts +0 -9
  359. package/es/encoder.d.ts +0 -26
  360. package/es/node-pool/index.mjs +0 -188
  361. package/es/node-pool/index.mjs.map +0 -1
  362. package/es/node.mjs +0 -133
  363. package/es/node.mjs.map +0 -1
  364. package/es/other.d.ts +0 -31
  365. package/es/semver-satisfies.d.ts +0 -1
  366. package/es/string.d.ts +0 -26
  367. package/es/tx/builder/field-types.mjs +0 -74
  368. package/es/tx/builder/field-types.mjs.map +0 -1
  369. package/es/tx/tx-object.mjs +0 -283
  370. package/es/tx/tx-object.mjs.map +0 -1
  371. package/es/tx/tx.mjs +0 -938
  372. package/es/tx/tx.mjs.map +0 -1
  373. package/es/utils/aepp-wallet-communication/connection/browser-runtime.mjs +0 -132
  374. package/es/utils/aepp-wallet-communication/connection/browser-runtime.mjs.map +0 -1
  375. package/es/utils/aepp-wallet-communication/connection/browser-window-message.mjs +0 -183
  376. package/es/utils/aepp-wallet-communication/connection/browser-window-message.mjs.map +0 -1
  377. package/es/utils/aepp-wallet-communication/connection/index.mjs +0 -87
  378. package/es/utils/aepp-wallet-communication/connection/index.mjs.map +0 -1
  379. package/es/utils/aepp-wallet-communication/content-script-bridge.mjs +0 -98
  380. package/es/utils/aepp-wallet-communication/content-script-bridge.mjs.map +0 -1
  381. package/es/utils/aepp-wallet-communication/helpers.mjs +0 -92
  382. package/es/utils/aepp-wallet-communication/helpers.mjs.map +0 -1
  383. package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.mjs +0 -375
  384. package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.mjs.map +0 -1
  385. package/es/utils/aepp-wallet-communication/rpc/rpc-client.mjs +0 -275
  386. package/es/utils/aepp-wallet-communication/rpc/rpc-client.mjs.map +0 -1
  387. package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.mjs +0 -541
  388. package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.mjs.map +0 -1
  389. package/es/utils/aepp-wallet-communication/schema.mjs +0 -102
  390. package/es/utils/aepp-wallet-communication/schema.mjs.map +0 -1
  391. package/es/utils/aepp-wallet-communication/wallet-detector.mjs +0 -110
  392. package/es/utils/aepp-wallet-communication/wallet-detector.mjs.map +0 -1
  393. package/es/utils/async-init.mjs +0 -64
  394. package/es/utils/async-init.mjs.map +0 -1
  395. package/es/utils/crypto-ts.mjs.map +0 -1
  396. package/es/utils/swagger.mjs +0 -164
  397. package/es/utils/swagger.mjs.map +0 -1
  398. package/src/account/base.js +0 -153
  399. package/src/account/memory.js +0 -83
  400. package/src/account/multiple.js +0 -162
  401. package/src/ae/aens.js +0 -361
  402. package/src/ae/aepp.js +0 -45
  403. package/src/ae/contract.js +0 -148
  404. package/src/ae/index.js +0 -168
  405. package/src/ae/oracle.js +0 -311
  406. package/src/ae/universal.js +0 -47
  407. package/src/ae/wallet.js +0 -50
  408. package/src/chain/index.js +0 -269
  409. package/src/chain/node.js +0 -320
  410. package/src/channel/handlers.js +0 -673
  411. package/src/channel/index.js +0 -903
  412. package/src/channel/internal.js +0 -236
  413. package/src/contract/aci.js +0 -376
  414. package/src/contract/compiler.js +0 -100
  415. package/src/contract/ga/helpers.js +0 -19
  416. package/src/contract/ga/index.js +0 -150
  417. package/src/index.js +0 -89
  418. package/src/node-pool/index.js +0 -172
  419. package/src/node.js +0 -116
  420. package/src/tx/builder/constants.js +0 -100
  421. package/src/tx/builder/field-types.js +0 -61
  422. package/src/tx/builder/helpers.js +0 -334
  423. package/src/tx/builder/index.js +0 -465
  424. package/src/tx/builder/schema.js +0 -1100
  425. package/src/tx/index.js +0 -301
  426. package/src/tx/tx-object.js +0 -187
  427. package/src/tx/tx.js +0 -631
  428. package/src/tx/validator.js +0 -181
  429. package/src/utils/aepp-wallet-communication/connection/browser-runtime.js +0 -119
  430. package/src/utils/aepp-wallet-communication/connection/browser-window-message.js +0 -165
  431. package/src/utils/aepp-wallet-communication/connection/index.js +0 -85
  432. package/src/utils/aepp-wallet-communication/content-script-bridge.js +0 -86
  433. package/src/utils/aepp-wallet-communication/helpers.js +0 -60
  434. package/src/utils/aepp-wallet-communication/rpc/aepp-rpc.js +0 -294
  435. package/src/utils/aepp-wallet-communication/rpc/rpc-client.js +0 -232
  436. package/src/utils/aepp-wallet-communication/rpc/wallet-rpc.js +0 -401
  437. package/src/utils/aepp-wallet-communication/schema.ts +0 -80
  438. package/src/utils/aepp-wallet-communication/wallet-detector.js +0 -92
  439. package/src/utils/async-init.js +0 -45
  440. package/src/utils/crypto.js +0 -219
  441. package/src/utils/hd-wallet.js +0 -100
  442. package/src/utils/json-big.js +0 -26
  443. package/src/utils/keystore.js +0 -219
  444. package/src/utils/swagger.js +0 -156
@@ -1,465 +0,0 @@
1
- import BigNumber from 'bignumber.js'
2
- import { decode as rlpDecode, encode as rlpEncode } from 'rlp'
3
- import { AE_AMOUNT_FORMATS, formatAmount } from '../../utils/amount-formatter'
4
- import { hash } from '../../utils/crypto'
5
- import { Field } from './field-types'
6
-
7
- import {
8
- DEFAULT_FEE,
9
- FIELD_TYPES,
10
- OBJECT_ID_TX_TYPE,
11
- TX_DESERIALIZATION_SCHEMA,
12
- TX_FEE_BASE_GAS,
13
- TX_FEE_OTHER_GAS,
14
- TX_SERIALIZATION_SCHEMA,
15
- TX_TYPE,
16
- VSN
17
- } from './schema'
18
- import {
19
- readInt,
20
- readId,
21
- readPointers,
22
- writeId,
23
- writeInt,
24
- buildPointers,
25
- encode,
26
- decode
27
- } from './helpers'
28
- import { toBytes } from '../../utils/bytes'
29
- import MPTree from '../../utils/mptree'
30
- import { InvalidTxParamsError, SchemaNotFoundError } from '../../utils/errors'
31
-
32
- /**
33
- * JavaScript-based Transaction builder
34
- * @module @aeternity/aepp-sdk/es/tx/builder
35
- * @export TxBuilder
36
- * @example import { TxBuilder } from '@aeternity/aepp-sdk'
37
- */
38
-
39
- const ORACLE_TTL_TYPES = {
40
- delta: 'delta',
41
- block: 'block'
42
- }
43
-
44
- // SERIALIZE AND DESERIALIZE PART
45
- function deserializeField (value, type, prefix) {
46
- if (!value) return ''
47
- switch (type) {
48
- case FIELD_TYPES.ctVersion: {
49
- const [vm, , abi] = value
50
- return { vmVersion: readInt(Buffer.from([vm])), abiVersion: readInt(Buffer.from([abi])) }
51
- }
52
- case FIELD_TYPES.amount:
53
- case FIELD_TYPES.int:
54
- return readInt(value)
55
- case FIELD_TYPES.id:
56
- return readId(value)
57
- case FIELD_TYPES.ids:
58
- return value.map(readId)
59
- case FIELD_TYPES.bool:
60
- return value[0] === 1
61
- case FIELD_TYPES.binary:
62
- return encode(value, prefix)
63
- case FIELD_TYPES.stateTree:
64
- return encode(value, 'ss')
65
- case FIELD_TYPES.string:
66
- return value.toString()
67
- case FIELD_TYPES.payload:
68
- return encode(value, 'ba')
69
- case FIELD_TYPES.pointers:
70
- return readPointers(value)
71
- case FIELD_TYPES.rlpBinary:
72
- return unpackTx(value, true)
73
- case FIELD_TYPES.rlpBinaries:
74
- return value.map(v => unpackTx(v, true))
75
- case FIELD_TYPES.rawBinary:
76
- return value
77
- case FIELD_TYPES.hex:
78
- return value.toString('hex')
79
- case FIELD_TYPES.offChainUpdates:
80
- return value.map(v => unpackTx(v, true))
81
- case FIELD_TYPES.callStack:
82
- // TODO: fix this
83
- return [readInt(value)]
84
- case FIELD_TYPES.mptrees:
85
- return value.map(t => new MPTree(t))
86
- case FIELD_TYPES.callReturnType:
87
- switch (readInt(value)) {
88
- case '0': return 'ok'
89
- case '1': return 'error'
90
- case '2': return 'revert'
91
- default: return value
92
- }
93
- case FIELD_TYPES.sophiaCodeTypeInfo:
94
- return value
95
- .reduce(
96
- (acc, [funHash, fnName, argType, outType]) =>
97
- ({ ...acc, [fnName.toString()]: { funHash, argType, outType } }),
98
- {}
99
- )
100
- default:
101
- if (type.prototype instanceof Field) return type.deserialize(value)
102
- return value
103
- }
104
- }
105
-
106
- function serializeField (value, type, prefix, params) {
107
- switch (type) {
108
- case FIELD_TYPES.amount:
109
- case FIELD_TYPES.int:
110
- return writeInt(value)
111
- case FIELD_TYPES.id:
112
- return writeId(value)
113
- case FIELD_TYPES.ids:
114
- return value.map(writeId)
115
- case FIELD_TYPES.bool:
116
- return Buffer.from([value ? 1 : 0])
117
- case FIELD_TYPES.binary:
118
- return decode(value, prefix)
119
- case FIELD_TYPES.stateTree:
120
- return decode(value, 'ss')
121
- case FIELD_TYPES.hex:
122
- return Buffer.from(value, 'hex')
123
- case FIELD_TYPES.signatures:
124
- return value.map(Buffer.from)
125
- case FIELD_TYPES.payload:
126
- return typeof value === 'string' && value.split('_')[0] === 'ba'
127
- ? decode(value, 'ba')
128
- : toBytes(value)
129
- case FIELD_TYPES.string:
130
- return toBytes(value)
131
- case FIELD_TYPES.pointers:
132
- return buildPointers(value)
133
- case FIELD_TYPES.rlpBinary:
134
- return value.rlpEncoded ?? value
135
- case FIELD_TYPES.mptrees:
136
- return value.map(t => t.serialize())
137
- case FIELD_TYPES.ctVersion:
138
- return Buffer.from([...toBytes(value.vmVersion), 0, ...toBytes(value.abiVersion)])
139
- case FIELD_TYPES.callReturnType:
140
- switch (value) {
141
- case 'ok': return writeInt(0)
142
- case 'error': return writeInt(1)
143
- case 'revert': return writeInt(2)
144
- default: return value
145
- }
146
- default:
147
- if (type.prototype instanceof Field) return type.serialize(value, params)
148
- return value
149
- }
150
- }
151
-
152
- function validateField (value, type, prefix) {
153
- // All fields are required
154
- if (value === undefined || value === null) return 'Field is required'
155
-
156
- // Validate type of value
157
- switch (type) {
158
- case FIELD_TYPES.amount:
159
- case FIELD_TYPES.int: {
160
- if (isNaN(value) && !BigNumber.isBigNumber(value)) {
161
- return `${value} is not of type Number or BigNumber`
162
- }
163
- if (new BigNumber(value).lt(0)) return `${value} must be >= 0`
164
- return
165
- }
166
- case FIELD_TYPES.id: {
167
- const prefixes = Array.isArray(prefix) ? prefix : [prefix]
168
- if (!prefixes.includes(value.split('_')[0])) {
169
- return `'${value}' prefix doesn't match expected prefix '${prefix}'`
170
- }
171
- return
172
- }
173
- case FIELD_TYPES.ctVersion:
174
- if (!value?.abiVersion || !value?.vmVersion) {
175
- return 'Value must be an object with "vmVersion" and "abiVersion" fields'
176
- }
177
- return
178
- case FIELD_TYPES.pointers:
179
- if (!Array.isArray(value)) return 'Value must be of type Array'
180
- if (value.some(p => !p?.key || !p?.id)) {
181
- return 'Value must contains only object\'s like \'{key: "account_pubkey", id: "ak_lkamsflkalsdalksdlasdlasdlamd"}\''
182
- }
183
- if (value.length > 32) {
184
- return `Expected 32 pointers or less, got ${value.length} instead`
185
- }
186
- }
187
- }
188
-
189
- function transformParams (params, schema, { denomination } = {}) {
190
- params = schema
191
- .filter(([_, t]) => t === FIELD_TYPES.amount)
192
- .reduce(
193
- (acc, [key]) => ({ ...params, [key]: formatAmount(params[key], { denomination }) }),
194
- params
195
- )
196
- const schemaKeys = schema.map(([k]) => k)
197
- return Object
198
- .entries(params)
199
- .reduce(
200
- (acc, [key, value]) => {
201
- if (schemaKeys.includes(key)) acc[key] = value
202
- if (['oracleTtl', 'queryTtl', 'responseTtl'].includes(key)) {
203
- acc[`${key}Type`] = value.type === ORACLE_TTL_TYPES.delta ? 0 : 1
204
- acc[`${key}Value`] = value.value
205
- }
206
- return acc
207
- },
208
- {}
209
- )
210
- }
211
-
212
- // INTERFACE
213
-
214
- function getOracleRelativeTtl (params, txType) {
215
- const ttlKey = {
216
- [TX_TYPE.oracleRegister]: 'oracleTtl',
217
- [TX_TYPE.oracleExtend]: 'oracleTtl',
218
- [TX_TYPE.oracleQuery]: 'queryTtl',
219
- [TX_TYPE.oracleResponse]: 'responseTtl'
220
- }[txType]
221
-
222
- if (params[ttlKey] || params[`${ttlKey}Value`]) {
223
- return params[`${ttlKey}Value`] || params[ttlKey].value
224
- }
225
- return 1
226
- }
227
-
228
- /**
229
- * Calculate min fee
230
- * @function
231
- * @alias module:@aeternity/aepp-sdk/es/tx/builder/index
232
- * @rtype (txType, { gas = 0, params }) => String
233
- * @param {String} txType - Transaction type
234
- * @param {Options} options - Options object
235
- * @param {String|Number} options.gas - Gas amount
236
- * @param {Object} options.params - Tx params
237
- * @return {String|Number}
238
- * @example calculateMinFee('spendTx', { gas, params })
239
- */
240
- export function calculateMinFee (txType, { gas = 0, params, vsn }) {
241
- const multiplier = BigNumber(1e9) // 10^9 GAS_PRICE
242
- if (!params) return BigNumber(DEFAULT_FEE).times(multiplier).toString(10)
243
-
244
- let actualFee = buildFee(txType, { params: { ...params, fee: 0 }, multiplier, gas, vsn })
245
- let expected = BigNumber(0)
246
-
247
- while (!actualFee.eq(expected)) {
248
- actualFee = buildFee(txType, { params: { ...params, fee: actualFee }, multiplier, gas, vsn })
249
- expected = actualFee
250
- }
251
- return expected.toString(10)
252
- }
253
-
254
- /**
255
- * Calculate fee based on tx type and params
256
- * @param txType
257
- * @param params
258
- * @param gas
259
- * @param multiplier
260
- * @param vsn
261
- * @return {BigNumber}
262
- */
263
- function buildFee (txType, { params, gas = 0, multiplier, vsn }) {
264
- const { rlpEncoded: txWithOutFee } = buildTx({ ...params }, txType, { vsn })
265
- const txSize = txWithOutFee.length
266
- return TX_FEE_BASE_GAS(txType)
267
- .plus(TX_FEE_OTHER_GAS(txType, txSize, {
268
- relativeTtl: getOracleRelativeTtl(params, txType),
269
- innerTxSize: [TX_TYPE.gaMeta, TX_TYPE.payingFor].includes(txType)
270
- ? params.tx.tx.encodedTx.rlpEncoded.length
271
- : 0
272
- }))
273
- .times(multiplier)
274
- }
275
-
276
- /**
277
- * Calculate fee
278
- * @function
279
- * @alias module:@aeternity/aepp-sdk/es/tx/builder
280
- * @rtype (fee, txType, gas = 0) => String
281
- * @param {String|Number} fee - fee
282
- * @param {String} txType - Transaction type
283
- * @param {Options} options - Options object
284
- * @param {String|Number} options.gas - Gas amount
285
- * @param {Object} options.params - Tx params
286
- * @return {String|Number}
287
- * @example calculateFee(null, 'spendTx', { gas, params })
288
- */
289
- export function calculateFee (fee = 0, txType, { gas = 0, params, showWarning = true, vsn } = {}) {
290
- if (!params && showWarning) console.warn(`Can't build transaction fee, we will use DEFAULT_FEE(${DEFAULT_FEE})`)
291
-
292
- return fee || calculateMinFee(txType, { params, gas, vsn })
293
- }
294
-
295
- /**
296
- * Validate transaction params
297
- * @function
298
- * @alias module:@aeternity/aepp-sdk/es/tx/builder
299
- * @param {Object} params Object with tx params
300
- * @param {Array} schema Transaction schema
301
- * @param {Array} excludeKeys Array of keys to exclude for validation
302
- * @return {Object} Object with validation errors
303
- */
304
- export function validateParams (params, schema, { excludeKeys = [] }) {
305
- return Object.fromEntries(
306
- schema
307
- // TODO: allow optional keys in schema
308
- .filter(([key]) => !excludeKeys.includes(key) &&
309
- !['payload', 'nameFee', 'deposit'].includes(key))
310
- .map(([key, type, prefix]) => [key, validateField(params[key], type, prefix)])
311
- .filter(([, message]) => message)
312
- )
313
- }
314
-
315
- /**
316
- * Build binary transaction
317
- * @function
318
- * @alias module:@aeternity/aepp-sdk/es/tx/builder
319
- * @param {Object} params Object with tx params
320
- * @param {Array} schema Transaction schema
321
- * @param {Object} [options={}] options
322
- * @param {String[]} [options.excludeKeys=[]] Array of keys to exclude for validation and build
323
- * @param {String} [options.denomination='aettos'] Denomination of amounts
324
- * @throws {Error} Validation error
325
- * @return {Array} Array with binary fields of transaction
326
- */
327
- export function buildRawTx (
328
- params,
329
- schema,
330
- { excludeKeys = [], denomination = AE_AMOUNT_FORMATS.AETTOS } = {}
331
- ) {
332
- const filteredSchema = schema.filter(([key]) => !excludeKeys.includes(key))
333
-
334
- // Transform `amount` type fields to `aettos`
335
- params = transformParams(params, filteredSchema, { denomination })
336
- // Validation
337
- const valid = validateParams(params, schema, { excludeKeys })
338
- if (Object.keys(valid).length) {
339
- throw new InvalidTxParamsError('Transaction build error. ' + JSON.stringify(valid))
340
- }
341
-
342
- return filteredSchema
343
- .map(([key, fieldType, prefix]) => serializeField(params[key], fieldType, prefix, params))
344
- }
345
-
346
- /**
347
- * Unpack binary transaction
348
- * @function
349
- * @alias module:@aeternity/aepp-sdk/es/tx/builder
350
- * @param {Array} binary Array with binary transaction field's
351
- * @param {Array} schema Transaction schema
352
- * @return {Object} Object with transaction field's
353
- */
354
- export function unpackRawTx (binary, schema) {
355
- return schema
356
- .reduce(
357
- (
358
- acc,
359
- [key, fieldType, prefix],
360
- index
361
- ) => Object.assign(acc, { [key]: deserializeField(binary[index], fieldType, prefix) }),
362
- {}
363
- )
364
- }
365
-
366
- /**
367
- * Get transaction serialization/deserialization schema
368
- * @alias module:@aeternity/aepp-sdk/es/tx/builder
369
- * @param {{ vsn: String, objId: Number, type: String }}
370
- * @throws {Error} Schema not found error
371
- * @return {Object} Schema
372
- */
373
- const getSchema = ({ vsn, objId, type }) => {
374
- const isDeserialize = !!objId
375
- const firstKey = isDeserialize ? objId : type
376
- const schema = isDeserialize ? TX_DESERIALIZATION_SCHEMA : TX_SERIALIZATION_SCHEMA
377
-
378
- if (!schema[firstKey]) {
379
- throw new SchemaNotFoundError(`Transaction ${isDeserialize ? 'deserialization' : 'serialization'} not implemented for ${isDeserialize ? 'tag ' + objId : type}`)
380
- }
381
- if (!schema[firstKey][vsn]) {
382
- throw new SchemaNotFoundError(`Transaction ${isDeserialize ? 'deserialization' : 'serialization'} not implemented for ${isDeserialize ? 'tag ' + objId : type} version ${vsn}`)
383
- }
384
- return schema[firstKey][vsn]
385
- }
386
-
387
- /**
388
- * Build transaction hash
389
- * @function
390
- * @alias module:@aeternity/aepp-sdk/es/tx/builder
391
- * @param {Object} params Object with tx params
392
- * @param {String} type Transaction type
393
- * @param {Object} [options={}] options
394
- * @param {String[]} [options.excludeKeys] Array of keys to exclude for validation and build
395
- * @param {String} [options.prefix] Prefix of transaction
396
- * @throws {Error} Validation error
397
- * @returns {Object} object
398
- * @returns {String} object.tx Base64Check transaction hash with 'tx_' prefix
399
- * @returns {Buffer} object.rlpEncoded rlp encoded transaction
400
- * @returns {Array<Buffer>} object.binary binary transaction
401
- */
402
- export function buildTx (
403
- params,
404
- type,
405
- { excludeKeys = [], prefix = 'tx', vsn = VSN, denomination = AE_AMOUNT_FORMATS.AETTOS } = {}
406
- ) {
407
- const [schema, tag] = getSchema({ type, vsn })
408
- const binary = buildRawTx(
409
- { ...params, VSN: vsn, tag },
410
- schema,
411
- { excludeKeys, denomination: params.denomination || denomination }
412
- ).filter(e => e !== undefined)
413
-
414
- const rlpEncoded = rlpEncode(binary)
415
- const tx = encode(rlpEncoded, prefix)
416
-
417
- return { tx, rlpEncoded, binary, txObject: unpackRawTx(binary, schema) }
418
- }
419
-
420
- /**
421
- * Unpack transaction hash
422
- * @function
423
- * @alias module:@aeternity/aepp-sdk/es/tx/builder
424
- * @param {String|Buffer} encodedTx String or RLP encoded transaction array
425
- * (if fromRlpBinary flag is true)
426
- * @param {Boolean} fromRlpBinary Unpack from RLP encoded transaction (default: false)
427
- * @param {String} prefix - Prefix of data
428
- * @returns {Object} object
429
- * @returns {Object} object.tx Object with transaction param's
430
- * @returns {Buffer} object.rlpEncoded rlp encoded transaction
431
- * @returns {Array<Buffer>} object.binary binary transaction
432
- */
433
- export function unpackTx (encodedTx, fromRlpBinary = false, prefix = 'tx') {
434
- const rlpEncoded = fromRlpBinary ? encodedTx : decode(encodedTx, prefix)
435
- const binary = rlpDecode(rlpEncoded)
436
-
437
- const objId = readInt(binary[0])
438
- const vsn = readInt(binary[1])
439
- const [schema] = getSchema({ objId, vsn })
440
-
441
- return { txType: OBJECT_ID_TX_TYPE[objId], tx: unpackRawTx(binary, schema), rlpEncoded, binary }
442
- }
443
-
444
- /**
445
- * Build a transaction hash
446
- * @function
447
- * @alias module:@aeternity/aepp-sdk/es/tx/builder
448
- * @param {String | Buffer} rawTx base64 or rlp encoded transaction
449
- * @return {String} Transaction hash
450
- */
451
- export function buildTxHash (rawTx) {
452
- const data = typeof rawTx === 'string' && rawTx.startsWith('tx_') ? decode(rawTx, 'tx') : rawTx
453
- return encode(hash(data), 'th')
454
- }
455
-
456
- export default {
457
- calculateMinFee,
458
- calculateFee,
459
- unpackTx,
460
- unpackRawTx,
461
- buildTx,
462
- buildRawTx,
463
- validateParams,
464
- buildTxHash
465
- }