@aeternity/aepp-sdk 11.0.0 → 12.1.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 (442) 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 +20764 -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 +138 -88
  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 +122 -0
  135. package/es/tx/builder/constants.mjs.map +1 -0
  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 -240
  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 -664
  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 -108
  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 +118 -0
  218. package/es/utils/encoder.mjs.map +1 -0
  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 +56 -42
  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 +170 -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 +146 -0
  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/node-pool/index.mjs +0 -188
  360. package/es/node-pool/index.mjs.map +0 -1
  361. package/es/node.mjs +0 -133
  362. package/es/node.mjs.map +0 -1
  363. package/es/other.d.ts +0 -31
  364. package/es/semver-satisfies.d.ts +0 -1
  365. package/es/string.d.ts +0 -26
  366. package/es/tx/builder/field-types.mjs +0 -74
  367. package/es/tx/builder/field-types.mjs.map +0 -1
  368. package/es/tx/tx-object.mjs +0 -283
  369. package/es/tx/tx-object.mjs.map +0 -1
  370. package/es/tx/tx.mjs +0 -938
  371. package/es/tx/tx.mjs.map +0 -1
  372. package/es/utils/aepp-wallet-communication/connection/browser-runtime.mjs +0 -132
  373. package/es/utils/aepp-wallet-communication/connection/browser-runtime.mjs.map +0 -1
  374. package/es/utils/aepp-wallet-communication/connection/browser-window-message.mjs +0 -183
  375. package/es/utils/aepp-wallet-communication/connection/browser-window-message.mjs.map +0 -1
  376. package/es/utils/aepp-wallet-communication/connection/index.mjs +0 -87
  377. package/es/utils/aepp-wallet-communication/connection/index.mjs.map +0 -1
  378. package/es/utils/aepp-wallet-communication/content-script-bridge.mjs +0 -98
  379. package/es/utils/aepp-wallet-communication/content-script-bridge.mjs.map +0 -1
  380. package/es/utils/aepp-wallet-communication/helpers.mjs +0 -92
  381. package/es/utils/aepp-wallet-communication/helpers.mjs.map +0 -1
  382. package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.mjs +0 -375
  383. package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.mjs.map +0 -1
  384. package/es/utils/aepp-wallet-communication/rpc/rpc-client.mjs +0 -275
  385. package/es/utils/aepp-wallet-communication/rpc/rpc-client.mjs.map +0 -1
  386. package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.mjs +0 -541
  387. package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.mjs.map +0 -1
  388. package/es/utils/aepp-wallet-communication/schema.mjs +0 -102
  389. package/es/utils/aepp-wallet-communication/schema.mjs.map +0 -1
  390. package/es/utils/aepp-wallet-communication/wallet-detector.mjs +0 -110
  391. package/es/utils/aepp-wallet-communication/wallet-detector.mjs.map +0 -1
  392. package/es/utils/async-init.mjs +0 -64
  393. package/es/utils/async-init.mjs.map +0 -1
  394. package/es/utils/crypto-ts.mjs.map +0 -1
  395. package/es/utils/swagger.mjs +0 -164
  396. package/es/utils/swagger.mjs.map +0 -1
  397. package/src/account/base.js +0 -153
  398. package/src/account/memory.js +0 -83
  399. package/src/account/multiple.js +0 -162
  400. package/src/ae/aens.js +0 -361
  401. package/src/ae/aepp.js +0 -45
  402. package/src/ae/contract.js +0 -148
  403. package/src/ae/index.js +0 -168
  404. package/src/ae/oracle.js +0 -311
  405. package/src/ae/universal.js +0 -47
  406. package/src/ae/wallet.js +0 -50
  407. package/src/chain/index.js +0 -269
  408. package/src/chain/node.js +0 -320
  409. package/src/channel/handlers.js +0 -673
  410. package/src/channel/index.js +0 -898
  411. package/src/channel/internal.js +0 -237
  412. package/src/contract/aci.js +0 -376
  413. package/src/contract/compiler.js +0 -100
  414. package/src/contract/ga/helpers.js +0 -19
  415. package/src/contract/ga/index.js +0 -150
  416. package/src/index.js +0 -89
  417. package/src/node-pool/index.js +0 -172
  418. package/src/node.js +0 -116
  419. package/src/tx/builder/field-types.js +0 -61
  420. package/src/tx/builder/helpers.js +0 -380
  421. package/src/tx/builder/index.js +0 -465
  422. package/src/tx/builder/schema.js +0 -1197
  423. package/src/tx/index.js +0 -301
  424. package/src/tx/tx-object.js +0 -187
  425. package/src/tx/tx.js +0 -631
  426. package/src/tx/validator.js +0 -181
  427. package/src/utils/aepp-wallet-communication/connection/browser-runtime.js +0 -119
  428. package/src/utils/aepp-wallet-communication/connection/browser-window-message.js +0 -165
  429. package/src/utils/aepp-wallet-communication/connection/index.js +0 -85
  430. package/src/utils/aepp-wallet-communication/content-script-bridge.js +0 -86
  431. package/src/utils/aepp-wallet-communication/helpers.js +0 -60
  432. package/src/utils/aepp-wallet-communication/rpc/aepp-rpc.js +0 -294
  433. package/src/utils/aepp-wallet-communication/rpc/rpc-client.js +0 -232
  434. package/src/utils/aepp-wallet-communication/rpc/wallet-rpc.js +0 -401
  435. package/src/utils/aepp-wallet-communication/schema.ts +0 -80
  436. package/src/utils/aepp-wallet-communication/wallet-detector.js +0 -92
  437. package/src/utils/async-init.js +0 -45
  438. package/src/utils/crypto.js +0 -229
  439. package/src/utils/hd-wallet.js +0 -100
  440. package/src/utils/json-big.js +0 -26
  441. package/src/utils/keystore.js +0 -219
  442. 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
- }