@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,11 +1,6 @@
1
- import _buffer from "buffer";
2
- const {
3
- Buffer: _Buffer
4
- } = _buffer;
5
-
6
1
  /*
7
2
  * ISC License (ISC)
8
- * Copyright 2021 aeternity developers
3
+ * Copyright (c) 2022 aeternity developers
9
4
  *
10
5
  * Permission to use, copy, modify, and/or distribute this software for any
11
6
  * purpose with or without fee is hereby granted, provided that the above
@@ -19,18 +14,23 @@ const {
19
14
  * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
20
15
  * PERFORMANCE OF THIS SOFTWARE.
21
16
  */
22
- import _aeternityBlakejs from '@aeternity/blakejs';
23
- const {
24
- blake2b
25
- } = _aeternityBlakejs;
17
+
18
+ import BrowserConnection from './connection/Browser';
26
19
 
27
20
  /**
28
- * Calculate 256bits Blake2b hash of `input`
29
- * @rtype (input: String) => hash: String
30
- * @param {Data} input - Data to hash
31
- * @return {Buffer} Hash
21
+ * Browser connection proxy
22
+ * Provide functionality to easily forward messages from one connection to another and back
23
+ * @category aepp wallet communication
24
+ * @param con1 - first connection
25
+ * @param con2 - second connection
26
+ * @returns a function to stop proxying
32
27
  */
33
- export function hash(input) {
34
- return _Buffer.from(blake2b(input, undefined, 32)); // 256 bits
35
- }
36
- //# sourceMappingURL=crypto-ts.mjs.map
28
+ export default (con1: BrowserConnection, con2: BrowserConnection): () => void => {
29
+ con1.connect((msg: any) => con2.sendMessage(msg), () => con2.disconnect());
30
+ con2.connect((msg: any) => con1.sendMessage(msg), () => con1.disconnect());
31
+
32
+ return () => {
33
+ con1.disconnect();
34
+ con2.disconnect();
35
+ };
36
+ };
@@ -0,0 +1,143 @@
1
+ import { RpcError, RpcInternalError, RpcMethodNotFoundError } from '../schema';
2
+ import BrowserConnection from '../connection/Browser';
3
+ import { InvalidRpcMessageError, MissingCallbackError } from '../../utils/errors';
4
+
5
+ interface JsonRpcRequest {
6
+ jsonrpc: '2.0';
7
+ id: number;
8
+ method: string;
9
+ params?: any;
10
+ }
11
+
12
+ interface JsonRpcResponse {
13
+ jsonrpc: '2.0';
14
+ id: number;
15
+ method: string;
16
+ result?: any;
17
+ error?: {
18
+ code: number;
19
+ message: string;
20
+ data?: any;
21
+ };
22
+ }
23
+
24
+ type RpcApiHandler = (p?: any) => any | undefined;
25
+ type RpcApi<Api> = { [k in keyof Api]: RpcApiHandler };
26
+ type WithOrigin<Api extends RpcApi<Api>> = {
27
+ [k in keyof Api]: (p: Parameters<Api[k]>[0], origin: string) => ReturnType<Api[k]>
28
+ };
29
+
30
+ /**
31
+ * Contain functionality for using RPC conection
32
+ * @category aepp wallet communication
33
+ * @param connection - Connection object
34
+ * @param onDisconnect - Disconnect callback
35
+ * @param methods - Object containing handlers for each request by name
36
+ */
37
+ export default class RpcClient <
38
+ RemoteApi extends RpcApi<RemoteApi>, LocalApi extends RpcApi<LocalApi>,
39
+ > {
40
+ connection: BrowserConnection;
41
+
42
+ #callbacks = new Map<number, { resolve: (v: any) => void; reject: (e: Error) => void }>();
43
+
44
+ #messageId = 0;
45
+
46
+ #methods: WithOrigin<LocalApi>;
47
+
48
+ constructor(
49
+ connection: BrowserConnection,
50
+ onDisconnect: () => void,
51
+ methods: WithOrigin<LocalApi>,
52
+ ) {
53
+ this.connection = connection;
54
+ this.#methods = methods;
55
+ connection.connect(this.#handleMessage.bind(this), onDisconnect);
56
+ }
57
+
58
+ async #handleMessage(msg: JsonRpcRequest | JsonRpcResponse, origin: string): Promise<void> {
59
+ if (msg?.jsonrpc !== '2.0') throw new InvalidRpcMessageError(JSON.stringify(msg));
60
+ if ('result' in msg || 'error' in msg) {
61
+ this.#processResponse(msg);
62
+ return;
63
+ }
64
+
65
+ const request = msg as JsonRpcRequest;
66
+ let result; let
67
+ error;
68
+ try {
69
+ if (!(request.method in this.#methods)) throw new RpcMethodNotFoundError();
70
+ const methodName = request.method as keyof LocalApi;
71
+ result = await this.#methods[methodName](request.params, origin);
72
+ } catch (e) {
73
+ error = e instanceof RpcError ? e : new RpcInternalError();
74
+ }
75
+ if (request.id != null) {
76
+ this.#sendResponse(request.id, request.method as keyof LocalApi, result, error);
77
+ }
78
+ }
79
+
80
+ #sendRequest(
81
+ id: number | undefined,
82
+ method: keyof RemoteApi | keyof LocalApi,
83
+ params?: any,
84
+ ): void {
85
+ this.connection.sendMessage({
86
+ jsonrpc: '2.0',
87
+ ...id != null ? { id } : {},
88
+ method,
89
+ ...params != null ? { params } : {},
90
+ });
91
+ }
92
+
93
+ #sendResponse(
94
+ id: number,
95
+ method: keyof RemoteApi | keyof LocalApi, // TODO: remove as far it is not required in JSON RPC
96
+ result?: any,
97
+ error?: any,
98
+ ): void {
99
+ this.connection.sendMessage({
100
+ jsonrpc: '2.0',
101
+ id,
102
+ method,
103
+ ...error != null ? { error } : { result },
104
+ });
105
+ }
106
+
107
+ /**
108
+ * Make a request
109
+ * @param name - Method name
110
+ * @param params - Method params
111
+ * @returns Promise which will be resolved after receiving response message
112
+ */
113
+ async request<Name extends keyof RemoteApi>(
114
+ name: Name,
115
+ params: Parameters<RemoteApi[Name]>[0],
116
+ ): Promise<ReturnType<RemoteApi[Name]>> {
117
+ this.#sendRequest(this.#messageId += 1, name, params);
118
+ return new Promise((resolve, reject) => {
119
+ this.#callbacks.set(this.#messageId, { resolve, reject });
120
+ });
121
+ }
122
+
123
+ /**
124
+ * Make a notification
125
+ * @param name - Method name
126
+ * @param params - Method params
127
+ */
128
+ notify<Name extends keyof RemoteApi>(name: Name, params: Parameters<RemoteApi[Name]>[0]): void {
129
+ this.#sendRequest(undefined, name, params);
130
+ }
131
+
132
+ /**
133
+ * Process response message
134
+ * @param msg - Message object
135
+ */
136
+ #processResponse({ id, error, result }: { id: number; error?: any; result?: any }): void {
137
+ const callbacks = this.#callbacks.get(id);
138
+ if (callbacks == null) throw new MissingCallbackError(id);
139
+ if (error != null) callbacks.reject(RpcError.deserialize(error));
140
+ else callbacks.resolve(result);
141
+ this.#callbacks.delete(id);
142
+ }
143
+ }
@@ -0,0 +1,66 @@
1
+ import { send } from '../../spend';
2
+ import { Encoded } from '../../utils/encoder';
3
+ import { METHODS, SUBSCRIPTION_TYPES, WALLET_TYPE } from '../schema';
4
+
5
+ export interface WalletInfo {
6
+ id: string;
7
+ name: string;
8
+ networkId: string;
9
+ origin: string;
10
+ type: WALLET_TYPE;
11
+ }
12
+
13
+ export interface Accounts {
14
+ connected: { [pub: Encoded.AccountAddress]: {} };
15
+ current: { [pub: Encoded.AccountAddress]: {} };
16
+ }
17
+
18
+ export interface Node {
19
+ name: string;
20
+ url: string;
21
+ }
22
+
23
+ export interface Network {
24
+ networkId: string;
25
+ node?: Node;
26
+ }
27
+
28
+ type Icons = Array<{ src: string; sizes?: string; type?: string; purpose?: string }>;
29
+
30
+ export const RPC_VERSION = 1;
31
+
32
+ export interface WalletApi {
33
+ [METHODS.connect]: (
34
+ p: { name: string; icons?: Icons; version: typeof RPC_VERSION; connectNode: boolean }
35
+ ) => Promise<WalletInfo & { node?: Node }>;
36
+
37
+ [METHODS.closeConnection]: (p: any) => void;
38
+
39
+ [METHODS.subscribeAddress]: (
40
+ p: { type: SUBSCRIPTION_TYPES; value: 'connected' | 'current' }
41
+ ) => Promise<{ subscription: Array<'connected' | 'current'>; address: Accounts }>;
42
+
43
+ [METHODS.address]: () => Promise<Encoded.AccountAddress[]>;
44
+
45
+ [METHODS.sign]: ((
46
+ p: { tx: Encoded.Transaction; onAccount: Encoded.AccountAddress; returnSigned: boolean }
47
+ ) => Promise<{
48
+ /**
49
+ * @deprecated this is not a hash at all, will be removed later at the same time
50
+ * as dropping ability to broadcast transaction by wallet
51
+ */
52
+ transactionHash?: Awaited<ReturnType<typeof send>>;
53
+ signedTransaction?: Encoded.Transaction;
54
+ }>);
55
+
56
+ [METHODS.signMessage]: (
57
+ p: { message: string; onAccount: Encoded.AccountAddress }
58
+ ) => Promise<{ signature: string }>;
59
+ }
60
+
61
+ export interface AeppApi {
62
+ [METHODS.updateAddress]: (a: Accounts) => void;
63
+ [METHODS.updateNetwork]: (a: Network) => void;
64
+ [METHODS.readyToConnect]: (w: WalletInfo) => void;
65
+ [METHODS.closeConnection]: (p: any) => void;
66
+ }
@@ -0,0 +1,224 @@
1
+ // eslint-disable-next-line max-classes-per-file
2
+ import { Encoded } from '../utils/encoder';
3
+ import { BaseError, InternalError } from '../utils/errors';
4
+
5
+ /**
6
+ * @category aepp wallet communication
7
+ */
8
+ export const enum MESSAGE_DIRECTION {
9
+ to_waellet = 'to_waellet',
10
+ to_aepp = 'to_aepp',
11
+ }
12
+
13
+ /**
14
+ * @category aepp wallet communication
15
+ */
16
+ export const enum WALLET_TYPE {
17
+ window = 'window',
18
+ extension = 'extension',
19
+ }
20
+
21
+ /**
22
+ * @category aepp wallet communication
23
+ */
24
+ export const enum SUBSCRIPTION_TYPES {
25
+ subscribe = 'subscribe',
26
+ unsubscribe = 'unsubscribe',
27
+ }
28
+
29
+ /**
30
+ * @category aepp wallet communication
31
+ */
32
+ export const enum METHODS {
33
+ readyToConnect = 'connection.announcePresence',
34
+ updateAddress = 'address.update',
35
+ address = 'address.get',
36
+ connect = 'connection.open',
37
+ sign = 'transaction.sign',
38
+ signMessage = 'message.sign',
39
+ subscribeAddress = 'address.subscribe',
40
+ updateNetwork = 'networkId.update',
41
+ closeConnection = 'connection.close',
42
+ }
43
+
44
+ /**
45
+ * @category aepp wallet communication
46
+ */
47
+ export const enum RPC_STATUS {
48
+ CONNECTED = 'CONNECTED',
49
+ DISCONNECTED = 'DISCONNECTED',
50
+ WAITING_FOR_CONNECTION_REQUEST = 'WAITING_FOR_CONNECTION_REQUEST',
51
+ }
52
+
53
+ interface RpcErrorAsJson {
54
+ code: number;
55
+ message: string;
56
+ data?: any;
57
+ }
58
+
59
+ const rpcErrors: Array<(new (data?: any) => RpcError) & { code: number }> = [];
60
+
61
+ /**
62
+ * @category exception
63
+ */
64
+ export abstract class RpcError extends BaseError {
65
+ static code: number;
66
+
67
+ code: number;
68
+
69
+ data?: any;
70
+
71
+ toJSON(): RpcErrorAsJson {
72
+ return {
73
+ code: this.code,
74
+ message: this.message,
75
+ data: this.data,
76
+ };
77
+ }
78
+
79
+ static deserialize(json: RpcErrorAsJson): RpcError {
80
+ const RpcErr = rpcErrors.find((cl) => cl.code === json.code);
81
+ if (RpcErr == null) throw new InternalError(`Can't find RpcError with code: ${json.code}`);
82
+ return new RpcErr(json.data);
83
+ }
84
+ }
85
+
86
+ /**
87
+ * @category exception
88
+ */
89
+ export class RpcInvalidTransactionError extends RpcError {
90
+ static code = 2;
91
+
92
+ code = 2;
93
+
94
+ constructor(data?: any) {
95
+ super('Invalid transaction');
96
+ this.data = data;
97
+ this.name = 'RpcInvalidTransactionError';
98
+ }
99
+ }
100
+ rpcErrors.push(RpcInvalidTransactionError);
101
+
102
+ /**
103
+ * @category exception
104
+ */
105
+ export class RpcBroadcastError extends RpcError {
106
+ static code = 3;
107
+
108
+ code = 3;
109
+
110
+ constructor(data?: any) {
111
+ super('Broadcast failed');
112
+ this.data = data;
113
+ this.name = 'RpcBroadcastError';
114
+ }
115
+ }
116
+ rpcErrors.push(RpcBroadcastError);
117
+
118
+ /**
119
+ * @category exception
120
+ */
121
+ export class RpcRejectedByUserError extends RpcError {
122
+ static code = 4;
123
+
124
+ code = 4;
125
+
126
+ constructor(data?: any) {
127
+ super('Operation rejected by user');
128
+ this.data = data;
129
+ this.name = 'RpcRejectedByUserError';
130
+ }
131
+ }
132
+ rpcErrors.push(RpcRejectedByUserError);
133
+
134
+ /**
135
+ * @category exception
136
+ */
137
+ export class RpcUnsupportedProtocolError extends RpcError {
138
+ static code = 5;
139
+
140
+ code = 5;
141
+
142
+ constructor() {
143
+ super('Unsupported Protocol Version');
144
+ this.name = 'RpcUnsupportedProtocolError';
145
+ }
146
+ }
147
+ rpcErrors.push(RpcUnsupportedProtocolError);
148
+
149
+ /**
150
+ * @category exception
151
+ */
152
+ export class RpcConnectionDenyError extends RpcError {
153
+ static code = 9;
154
+
155
+ code = 9;
156
+
157
+ constructor(data?: any) {
158
+ super('Wallet deny your connection request');
159
+ this.data = data;
160
+ this.name = 'RpcConnectionDenyError';
161
+ }
162
+ }
163
+ rpcErrors.push(RpcConnectionDenyError);
164
+
165
+ /**
166
+ * @category exception
167
+ */
168
+ export class RpcNotAuthorizeError extends RpcError {
169
+ static code = 10;
170
+
171
+ code = 10;
172
+
173
+ constructor() {
174
+ super('You are not connected to the wallet');
175
+ this.name = 'RpcNotAuthorizeError';
176
+ }
177
+ }
178
+ rpcErrors.push(RpcNotAuthorizeError);
179
+
180
+ /**
181
+ * @category exception
182
+ */
183
+ export class RpcPermissionDenyError extends RpcError {
184
+ static code = 11;
185
+
186
+ code = 11;
187
+
188
+ constructor(address: Encoded.AccountAddress) {
189
+ super(`You are not subscribed for account ${address}`);
190
+ this.data = address;
191
+ this.name = 'RpcPermissionDenyError';
192
+ }
193
+ }
194
+ rpcErrors.push(RpcPermissionDenyError);
195
+
196
+ /**
197
+ * @category exception
198
+ */
199
+ export class RpcInternalError extends RpcError {
200
+ static code = 12;
201
+
202
+ code = 12;
203
+
204
+ constructor() {
205
+ super('The peer failed to execute your request due to unknown error');
206
+ this.name = 'RpcInternalError';
207
+ }
208
+ }
209
+ rpcErrors.push(RpcInternalError);
210
+
211
+ /**
212
+ * @category exception
213
+ */
214
+ export class RpcMethodNotFoundError extends RpcError {
215
+ static code = -32601;
216
+
217
+ code = -32601;
218
+
219
+ constructor() {
220
+ super('Method not found');
221
+ this.name = 'RpcMethodNotFoundError';
222
+ }
223
+ }
224
+ rpcErrors.push(RpcMethodNotFoundError);
@@ -0,0 +1,72 @@
1
+ /*
2
+ * ISC License (ISC)
3
+ * Copyright (c) 2022 aeternity developers
4
+ *
5
+ * Permission to use, copy, modify, and/or distribute this software for any
6
+ * purpose with or without fee is hereby granted, provided that the above
7
+ * copyright notice and this permission notice appear in all copies.
8
+ *
9
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
10
+ * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
11
+ * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
12
+ * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13
+ * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
14
+ * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15
+ * PERFORMANCE OF THIS SOFTWARE.
16
+ */
17
+
18
+ import BrowserConnection from './connection/Browser';
19
+ import BrowserWindowMessageConnection from './connection/BrowserWindowMessage';
20
+ import { MESSAGE_DIRECTION, METHODS } from './schema';
21
+ import { UnsupportedPlatformError } from '../utils/errors';
22
+
23
+ interface Wallet {
24
+ info: {
25
+ id: string;
26
+ type: string;
27
+ origin: string;
28
+ };
29
+ getConnection: () => BrowserWindowMessageConnection;
30
+ }
31
+ interface Wallets { [key: string]: Wallet }
32
+
33
+ /**
34
+ * A function to detect available wallets
35
+ * @category aepp wallet communication
36
+ * @param connection - connection to use to detect wallets
37
+ * @param onDetected - call-back function which trigger on new wallet
38
+ * @returns a function to stop scanning
39
+ */
40
+ export default (
41
+ connection: BrowserConnection,
42
+ onDetected: ({ wallets, newWallet }: { wallets: Wallets; newWallet?: Wallet }) => void,
43
+ ): () => void => {
44
+ if (window == null) throw new UnsupportedPlatformError('Window object not found, you can run wallet detector only in browser');
45
+ const wallets: Wallets = {};
46
+
47
+ connection.connect((
48
+ { method, params }: { method: string; params: Wallet['info'] },
49
+ origin: string,
50
+ source: Window,
51
+ ) => {
52
+ if (method !== METHODS.readyToConnect || wallets[params.id] != null) return;
53
+
54
+ const wallet = {
55
+ info: params,
56
+ getConnection() {
57
+ const isExtension = params.type === 'extension';
58
+ return new BrowserWindowMessageConnection({
59
+ sendDirection: isExtension ? MESSAGE_DIRECTION.to_waellet : undefined,
60
+ receiveDirection: isExtension ? MESSAGE_DIRECTION.to_aepp : undefined,
61
+ target: source,
62
+ origin: isExtension ? window.origin : params.origin,
63
+ });
64
+ },
65
+ };
66
+ wallets[wallet.info.id] = wallet;
67
+ onDetected({ wallets, newWallet: wallet });
68
+ }, () => {});
69
+ if (Object.keys(wallets).length > 0) onDetected({ wallets });
70
+
71
+ return () => connection.disconnect();
72
+ };