@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
@@ -0,0 +1,314 @@
1
+ import _defineProperty from "@babel/runtime-corejs3/helpers/defineProperty";
2
+ import * as chainMethods from "./chain.mjs";
3
+ import * as txMethods from "./tx/index.mjs";
4
+ import * as aensMethods from "./aens.mjs";
5
+ import * as spendMethods from "./spend.mjs";
6
+ import * as oracleMethods from "./oracle.mjs";
7
+ import * as contractMethods from "./contract/methods.mjs";
8
+ import * as contractGaMethods from "./contract/ga.mjs";
9
+ import * as deprecatedMethods from "./deprecated/methods.mjs";
10
+ import { _buildTx } from "./tx/index.mjs";
11
+ import { mapObject } from "./utils/other.mjs";
12
+ import { getNetworkId } from "./Node.mjs";
13
+ import { AE_AMOUNT_FORMATS } from "./utils/amount-formatter.mjs";
14
+ import { AMOUNT } from "./tx/builder/schema.mjs";
15
+ import MemoryAccount from "./account/Memory.mjs";
16
+ import { isAccountBase } from "./account/Base.mjs";
17
+ import { CompilerError, DuplicateNodeError, NodeNotFoundError, NotImplementedError, TypeError } from "./utils/errors.mjs";
18
+ import Compiler from "./contract/Compiler.mjs";
19
+
20
+ function getValueOrErrorProxy(valueCb) {
21
+ try {
22
+ return valueCb();
23
+ } catch (error) {
24
+ return new Proxy({}, Object.fromEntries(['get', 'set', 'has'].map(name => [name, () => {
25
+ throw error;
26
+ }])));
27
+ }
28
+ }
29
+ /**
30
+ * Basic AeSdk class
31
+ *
32
+ * AeSdkBase objects are the composition of:
33
+ * - chain methods
34
+ * - tx methods
35
+ * - aens methods
36
+ * - spend methods
37
+ * - oracle methods
38
+ * - contract methods
39
+ * - contract ga methods
40
+ * Only by providing the joint functionality of them, most more advanced
41
+ * operations, i.e. the ones with actual use value on the chain, become
42
+ * available.
43
+ */
44
+
45
+
46
+ class AeSdkBase {
47
+ /**
48
+ * @param options - Options
49
+ * @param options.nodes - Array of nodes
50
+ * @param options.compilerUrl - Url for compiler API
51
+ * @param options.ignoreVersion - Don't check node or compiler version
52
+ */
53
+ constructor() {
54
+ let {
55
+ nodes = [],
56
+ compilerUrl,
57
+ ignoreVersion = false,
58
+ ...options
59
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
60
+
61
+ _defineProperty(this, "_options", {
62
+ denomination: AE_AMOUNT_FORMATS.AETTOS,
63
+ amount: AMOUNT
64
+ });
65
+
66
+ _defineProperty(this, "pool", new Map());
67
+
68
+ _defineProperty(this, "getNetworkId", getNetworkId);
69
+
70
+ Object.assign(this._options, options);
71
+ nodes.forEach((_ref, i) => {
72
+ let {
73
+ name,
74
+ instance
75
+ } = _ref;
76
+ return this.addNode(name, instance, i === 0);
77
+ });
78
+
79
+ if (compilerUrl == null) {
80
+ this.compilerApi = getValueOrErrorProxy(() => {
81
+ throw new CompilerError('You can\'t use Compiler API. Compiler is not ready!');
82
+ });
83
+ } else this.setCompilerUrl(compilerUrl, {
84
+ ignoreVersion
85
+ });
86
+ }
87
+
88
+ setCompilerUrl(compilerUrl) {
89
+ let {
90
+ ignoreVersion = false
91
+ } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
92
+ this.compilerApi = new Compiler(compilerUrl, {
93
+ ignoreVersion
94
+ });
95
+ }
96
+
97
+ get api() {
98
+ this.ensureNodeConnected();
99
+ return this.pool.get(this.selectedNodeName);
100
+ }
101
+ /**
102
+ * Add Node
103
+ * @param name - Node name
104
+ * @param node - Node instance
105
+ * @param select - Select this node as current
106
+ * @example
107
+ * ```js
108
+ * // add and select new node with name 'testNode'
109
+ * aeSdkBase.addNode('testNode', new Node({ url }), true)
110
+ * ```
111
+ */
112
+
113
+
114
+ addNode(name, node) {
115
+ let select = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
116
+ if (this.pool.has(name)) throw new DuplicateNodeError(name);
117
+ this.pool.set(name, node);
118
+
119
+ if (select || this.selectedNodeName == null) {
120
+ this.selectNode(name);
121
+ }
122
+ }
123
+ /**
124
+ * Select Node
125
+ * @param name - Node name
126
+ * @example
127
+ * nodePool.selectNode('testNode')
128
+ */
129
+
130
+
131
+ selectNode(name) {
132
+ if (!this.pool.has(name)) throw new NodeNotFoundError(`Node with name ${name} not in pool`);
133
+ this.selectedNodeName = name;
134
+ }
135
+ /**
136
+ * Get NetworkId of current Node
137
+ * @example
138
+ * nodePool.getNetworkId()
139
+ */
140
+
141
+
142
+ /**
143
+ * Check if you have selected node
144
+ * @example
145
+ * nodePool.isNodeConnected()
146
+ */
147
+ isNodeConnected() {
148
+ return this.selectedNodeName != null;
149
+ }
150
+
151
+ ensureNodeConnected() {
152
+ if (!this.isNodeConnected()) {
153
+ throw new NodeNotFoundError('You can\'t use Node API. Node is not connected or not defined!');
154
+ }
155
+ }
156
+ /**
157
+ * Get information about node
158
+ * @example
159
+ * ```js
160
+ * nodePool.getNodeInfo() // { name, version, networkId, protocol, ... }
161
+ * ```
162
+ */
163
+
164
+
165
+ async getNodeInfo() {
166
+ this.ensureNodeConnected();
167
+ return {
168
+ name: this.selectedNodeName,
169
+ ...(await this.api.getNodeInfo())
170
+ };
171
+ }
172
+ /**
173
+ * Get array of available nodes
174
+ * @example
175
+ * nodePool.getNodesInPool()
176
+ */
177
+
178
+
179
+ async getNodesInPool() {
180
+ return Promise.all(Array.from(this.pool.entries()).map(async _ref2 => {
181
+ let [name, node] = _ref2;
182
+ return {
183
+ name,
184
+ ...(await node.getNodeInfo())
185
+ };
186
+ }));
187
+ } // eslint-disable-next-line class-methods-use-this
188
+
189
+
190
+ addresses() {
191
+ return [];
192
+ }
193
+
194
+ async address() {
195
+ let {
196
+ onAccount
197
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
198
+ return this._resolveAccount(onAccount).address();
199
+ }
200
+
201
+ async sign(data) {
202
+ let {
203
+ onAccount,
204
+ ...options
205
+ } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
206
+ return this._resolveAccount(onAccount).sign(data, options);
207
+ }
208
+
209
+ async signTransaction(tx) {
210
+ let {
211
+ onAccount,
212
+ ...options
213
+ } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
214
+ return this._resolveAccount(onAccount).signTransaction(tx, { ...options,
215
+ networkId: await this.getNetworkId(options)
216
+ });
217
+ }
218
+
219
+ async signMessage(message) {
220
+ let {
221
+ onAccount,
222
+ ...options
223
+ } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
224
+ return this._resolveAccount(onAccount).signMessage(message, options);
225
+ }
226
+
227
+ async verifyMessage(message, signature) {
228
+ let {
229
+ onAccount,
230
+ ...options
231
+ } = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
232
+ return this._resolveAccount(onAccount).verifyMessage(message, signature, options);
233
+ }
234
+ /**
235
+ * Resolves an account
236
+ * @param account - ak-address, instance of AccountBase, or keypair
237
+ */
238
+ // eslint-disable-next-line class-methods-use-this
239
+
240
+
241
+ _resolveAccount(account) {
242
+ switch (account !== null && typeof account) {
243
+ case 'string':
244
+ throw new NotImplementedError('Address in AccountResolver');
245
+
246
+ case 'object':
247
+ return isAccountBase(account) ? account : new MemoryAccount({
248
+ keypair: account
249
+ });
250
+
251
+ default:
252
+ throw new TypeError('Account should be an address (ak-prefixed string), ' + `keypair, or instance of AccountBase, got ${String(account)} instead`);
253
+ }
254
+ }
255
+
256
+ _getOptions() {
257
+ return { ...this._options,
258
+ onNode: getValueOrErrorProxy(() => this.api),
259
+ onAccount: getValueOrErrorProxy(() => this._resolveAccount()),
260
+ onCompiler: getValueOrErrorProxy(() => this.compilerApi)
261
+ };
262
+ }
263
+
264
+ async buildTx(txType, options) {
265
+ // @ts-expect-error TODO: need to figure out what's wrong here
266
+ return _buildTx(txType, { ...this._getOptions(),
267
+ ...options
268
+ });
269
+ }
270
+
271
+ }
272
+
273
+ const {
274
+ _buildTx: _,
275
+ ...txMethodsOther
276
+ } = txMethods;
277
+ const {
278
+ InvalidTxError: _2,
279
+ ...chainMethodsOther
280
+ } = chainMethods;
281
+ const methods = { ...chainMethodsOther,
282
+ ...txMethodsOther,
283
+ ...aensMethods,
284
+ ...spendMethods,
285
+ ...oracleMethods,
286
+ ...contractMethods,
287
+ ...contractGaMethods,
288
+ ...deprecatedMethods
289
+ };
290
+ Object.assign(AeSdkBase.prototype, mapObject(methods, _ref3 => {
291
+ let [name, handler] = _ref3;
292
+ return [name, function methodWrapper() {
293
+ const instanceOptions = this._getOptions();
294
+
295
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
296
+ args[_key] = arguments[_key];
297
+ }
298
+
299
+ const lastArg = args[args.length - 1];
300
+
301
+ if (lastArg != null && typeof lastArg === 'object' && lastArg.constructor === Object) {
302
+ args[args.length - 1] = { ...instanceOptions,
303
+ ...lastArg,
304
+ ...(lastArg.onAccount != null && {
305
+ onAccount: this._resolveAccount(lastArg.onAccount)
306
+ })
307
+ };
308
+ } else args.push(instanceOptions);
309
+
310
+ return handler(...args);
311
+ }];
312
+ }));
313
+ export default AeSdkBase;
314
+ //# sourceMappingURL=AeSdkBase.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AeSdkBase.mjs","names":["chainMethods","txMethods","aensMethods","spendMethods","oracleMethods","contractMethods","contractGaMethods","deprecatedMethods","_buildTx","mapObject","getNetworkId","AE_AMOUNT_FORMATS","AMOUNT","MemoryAccount","isAccountBase","CompilerError","DuplicateNodeError","NodeNotFoundError","NotImplementedError","TypeError","Compiler","getValueOrErrorProxy","valueCb","error","Proxy","Object","fromEntries","map","name","AeSdkBase","constructor","nodes","compilerUrl","ignoreVersion","options","denomination","AETTOS","amount","Map","assign","_options","forEach","i","instance","addNode","compilerApi","setCompilerUrl","api","ensureNodeConnected","pool","get","selectedNodeName","node","select","has","set","selectNode","isNodeConnected","getNodeInfo","getNodesInPool","Promise","all","Array","from","entries","addresses","address","onAccount","_resolveAccount","sign","data","signTransaction","tx","networkId","signMessage","message","verifyMessage","signature","account","keypair","String","_getOptions","onNode","onCompiler","buildTx","txType","_","txMethodsOther","InvalidTxError","_2","chainMethodsOther","methods","prototype","handler","methodWrapper","instanceOptions","args","lastArg","length","push"],"sources":["../src/AeSdkBase.ts"],"sourcesContent":["import * as chainMethods from './chain';\nimport * as txMethods from './tx';\nimport * as aensMethods from './aens';\nimport * as spendMethods from './spend';\nimport * as oracleMethods from './oracle';\nimport * as contractMethods from './contract/methods';\nimport * as contractGaMethods from './contract/ga';\nimport * as deprecatedMethods from './deprecated/methods';\nimport { _buildTx } from './tx';\nimport { mapObject } from './utils/other';\nimport Node, { getNetworkId } from './Node';\nimport { AE_AMOUNT_FORMATS } from './utils/amount-formatter';\nimport { AMOUNT } from './tx/builder/schema';\nimport { Tag } from './tx/builder/constants';\nimport MemoryAccount, { Keypair } from './account/Memory';\nimport AccountBase, { isAccountBase } from './account/Base';\nimport {\n CompilerError,\n DuplicateNodeError,\n NodeNotFoundError,\n NotImplementedError,\n TypeError,\n} from './utils/errors';\nimport { Encoded } from './utils/encoder';\nimport Compiler from './contract/Compiler';\n\nexport type Account = Keypair | AccountBase | any;\n\ntype NodeInfo = Awaited<ReturnType<Node['getNodeInfo']>> & { name: string };\n\nfunction getValueOrErrorProxy<Value extends object>(valueCb: () => Value): Value {\n try {\n return valueCb();\n } catch (error) {\n return new Proxy(\n {},\n Object.fromEntries(['get', 'set', 'has'].map((name) => [name, () => { throw error; }])),\n ) as Value;\n }\n}\n\n/**\n * Basic AeSdk class\n *\n * AeSdkBase objects are the composition of:\n * - chain methods\n * - tx methods\n * - aens methods\n * - spend methods\n * - oracle methods\n * - contract methods\n * - contract ga methods\n * Only by providing the joint functionality of them, most more advanced\n * operations, i.e. the ones with actual use value on the chain, become\n * available.\n */\nclass AeSdkBase {\n _options: {\n denomination: AE_AMOUNT_FORMATS;\n amount: number;\n [key: string]: any;\n } = { denomination: AE_AMOUNT_FORMATS.AETTOS, amount: AMOUNT };\n\n pool: Map<string, Node> = new Map();\n\n selectedNodeName?: string;\n\n compilerApi: Compiler;\n\n /**\n * @param options - Options\n * @param options.nodes - Array of nodes\n * @param options.compilerUrl - Url for compiler API\n * @param options.ignoreVersion - Don't check node or compiler version\n */\n constructor(\n {\n nodes = [], compilerUrl, ignoreVersion = false, ...options\n }:\n {\n nodes?: Array<{ name: string; instance: Node }>;\n compilerUrl?: string;\n ignoreVersion?: boolean;\n [key: string]: any; // TODO: consider combining all possible options instead\n } = {},\n ) {\n Object.assign(this._options, options);\n\n nodes.forEach(({ name, instance }, i) => this.addNode(name, instance, i === 0));\n\n if (compilerUrl == null) {\n this.compilerApi = getValueOrErrorProxy(() => {\n throw new CompilerError('You can\\'t use Compiler API. Compiler is not ready!');\n });\n } else this.setCompilerUrl(compilerUrl, { ignoreVersion });\n }\n\n setCompilerUrl(\n compilerUrl: string,\n { ignoreVersion = false }: { ignoreVersion?: boolean } = {},\n ): void {\n this.compilerApi = new Compiler(compilerUrl, { ignoreVersion });\n }\n\n get api(): Node {\n this.ensureNodeConnected();\n return this.pool.get(this.selectedNodeName) as Node;\n }\n\n /**\n * Add Node\n * @param name - Node name\n * @param node - Node instance\n * @param select - Select this node as current\n * @example\n * ```js\n * // add and select new node with name 'testNode'\n * aeSdkBase.addNode('testNode', new Node({ url }), true)\n * ```\n */\n addNode(name: string, node: Node, select = false): void {\n if (this.pool.has(name)) throw new DuplicateNodeError(name);\n\n this.pool.set(name, node);\n if (select || this.selectedNodeName == null) {\n this.selectNode(name);\n }\n }\n\n /**\n * Select Node\n * @param name - Node name\n * @example\n * nodePool.selectNode('testNode')\n */\n selectNode(name: string): void {\n if (!this.pool.has(name)) throw new NodeNotFoundError(`Node with name ${name} not in pool`);\n this.selectedNodeName = name;\n }\n\n /**\n * Get NetworkId of current Node\n * @example\n * nodePool.getNetworkId()\n */\n readonly getNetworkId = getNetworkId;\n\n /**\n * Check if you have selected node\n * @example\n * nodePool.isNodeConnected()\n */\n isNodeConnected(): this is AeSdkBase & { selectedNodeName: string } {\n return this.selectedNodeName != null;\n }\n\n protected ensureNodeConnected(): asserts this is AeSdkBase & { selectedNodeName: string } {\n if (!this.isNodeConnected()) {\n throw new NodeNotFoundError('You can\\'t use Node API. Node is not connected or not defined!');\n }\n }\n\n /**\n * Get information about node\n * @example\n * ```js\n * nodePool.getNodeInfo() // { name, version, networkId, protocol, ... }\n * ```\n */\n async getNodeInfo(): Promise<NodeInfo> {\n this.ensureNodeConnected();\n return {\n name: this.selectedNodeName,\n ...await this.api.getNodeInfo(),\n };\n }\n\n /**\n * Get array of available nodes\n * @example\n * nodePool.getNodesInPool()\n */\n async getNodesInPool(): Promise<NodeInfo[]> {\n return Promise.all(\n Array.from(this.pool.entries()).map(async ([name, node]) => ({\n name,\n ...await node.getNodeInfo(),\n })),\n );\n }\n\n // eslint-disable-next-line class-methods-use-this\n addresses(): Encoded.AccountAddress[] {\n return [];\n }\n\n async address({ onAccount }: { onAccount?: Account } = {}): Promise<Encoded.AccountAddress> {\n return this._resolveAccount(onAccount).address();\n }\n\n async sign(\n data: string | Uint8Array,\n { onAccount, ...options }: { onAccount?: Account } = {},\n ): Promise<Uint8Array> {\n return this._resolveAccount(onAccount).sign(data, options);\n }\n\n async signTransaction(\n tx: Encoded.Transaction,\n { onAccount, ...options }: { onAccount?: Account } & Parameters<AccountBase['signTransaction']>[1] = {},\n ): Promise<Encoded.Transaction> {\n return this._resolveAccount(onAccount)\n .signTransaction(tx, { ...options, networkId: await this.getNetworkId(options) });\n }\n\n async signMessage(\n message: string,\n { onAccount, ...options }: { onAccount?: Account } & Parameters<AccountBase['signMessage']>[1] = {},\n ): Promise<string | Uint8Array> {\n return this._resolveAccount(onAccount).signMessage(message, options);\n }\n\n async verifyMessage(\n message: string,\n signature: string | Uint8Array,\n { onAccount, ...options }: { onAccount?: Account } & Parameters<AccountBase['verifyMessage']>[2] = {},\n ): Promise<boolean> {\n return this._resolveAccount(onAccount).verifyMessage(message, signature, options);\n }\n\n /**\n * Resolves an account\n * @param account - ak-address, instance of AccountBase, or keypair\n */\n // eslint-disable-next-line class-methods-use-this\n _resolveAccount(account?: Account): AccountBase {\n switch (account !== null && typeof account) {\n case 'string':\n throw new NotImplementedError('Address in AccountResolver');\n case 'object':\n return isAccountBase(account) ? account : new MemoryAccount({ keypair: account });\n default:\n throw new TypeError(\n 'Account should be an address (ak-prefixed string), '\n + `keypair, or instance of AccountBase, got ${String(account)} instead`,\n );\n }\n }\n\n _getOptions(): {\n onNode: Node;\n onAccount: AccountBase;\n onCompiler: Compiler;\n } {\n return {\n ...this._options,\n onNode: getValueOrErrorProxy(() => this.api),\n onAccount: getValueOrErrorProxy(() => this._resolveAccount()),\n onCompiler: getValueOrErrorProxy(() => this.compilerApi),\n };\n }\n\n async buildTx<TxType extends Tag>(\n txType: TxType,\n options: Omit<Parameters<typeof _buildTx<TxType>>[1], 'onNode'> & { onNode?: Node },\n ): Promise<Encoded.Transaction> {\n // @ts-expect-error TODO: need to figure out what's wrong here\n return _buildTx<TxType>(txType, {\n ...this._getOptions(),\n ...options,\n });\n }\n}\n\nconst { _buildTx: _, ...txMethodsOther } = txMethods;\nconst { InvalidTxError: _2, ...chainMethodsOther } = chainMethods;\n\nconst methods = {\n ...chainMethodsOther,\n ...txMethodsOther,\n ...aensMethods,\n ...spendMethods,\n ...oracleMethods,\n ...contractMethods,\n ...contractGaMethods,\n ...deprecatedMethods,\n} as const;\n\ntype RequiredKeys<T> = {\n [K in keyof T]-?: {} extends Pick<T, K> ? never : K\n}[keyof T];\n\ntype OptionalIfNotRequired<T extends [any]> = RequiredKeys<T[0]> extends never ? T | [] : T;\n\ntype MakeOptional<Args extends any[]> = Args extends [infer Head, ...infer Tail]\n ? Tail extends []\n ? Head extends object\n ? OptionalIfNotRequired<[Omit<Head, 'onNode' | 'onCompiler' | 'onAccount'>\n & {\n onNode?: Node;\n onCompiler?: Compiler;\n onAccount?: AccountBase | Encoded.AccountAddress | Keypair;\n }]>\n : [Head]\n : [Head, ...MakeOptional<Tail>]\n : never;\n\ntype TransformMethods <Methods extends { [key: string]: Function }> =\n {\n [Name in keyof Methods]:\n Methods[Name] extends (...args: infer Args) => infer Ret\n ? (...args: MakeOptional<Args>) => Ret\n : never\n };\n\ninterface AeSdkBaseMethods extends TransformMethods<typeof methods> {}\n\nObject.assign(AeSdkBase.prototype, mapObject<Function, Function>(\n methods,\n ([name, handler]) => [\n name,\n function methodWrapper(...args: any[]) {\n const instanceOptions = this._getOptions();\n const lastArg = args[args.length - 1];\n if (lastArg != null && typeof lastArg === 'object' && lastArg.constructor === Object) {\n args[args.length - 1] = {\n ...instanceOptions,\n ...lastArg,\n ...lastArg.onAccount != null && { onAccount: this._resolveAccount(lastArg.onAccount) },\n };\n } else args.push(instanceOptions);\n return handler(...args);\n },\n ],\n));\n\nexport default AeSdkBase as new (options?: ConstructorParameters<typeof AeSdkBase>[0]) =>\nAeSdkBase & AeSdkBaseMethods;\n"],"mappings":"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"}
@@ -0,0 +1,104 @@
1
+ import AeSdk from './AeSdk';
2
+ import { Account } from './AeSdkBase';
3
+ import RpcClient from './aepp-wallet-communication/rpc/RpcClient';
4
+ import { METHODS, RPC_STATUS, WALLET_TYPE } from './aepp-wallet-communication/schema';
5
+ import AccountBase from './account/Base';
6
+ import BrowserConnection from './aepp-wallet-communication/connection/Browser';
7
+ import { Accounts, AeppApi, Network, WalletApi, WalletInfo } from './aepp-wallet-communication/rpc/types';
8
+ import { Encoded } from './utils/encoder';
9
+ declare type RpcClientWallet = RpcClient<AeppApi, WalletApi>;
10
+ declare type OnConnection = (clientId: string, params: Omit<Parameters<WalletApi[METHODS.connect]>[0], 'version'>, origin: string) => void;
11
+ declare type OnSubscription = (clientId: string, params: Parameters<WalletApi[METHODS.subscribeAddress]>[0], origin: string) => void;
12
+ declare type OnSign = (clientId: string, params: Parameters<WalletApi[METHODS.sign]>[0], origin: string) => Promise<{
13
+ tx?: Encoded.Transaction;
14
+ onAccount?: Account;
15
+ } | undefined> | Promise<void>;
16
+ declare type OnDisconnect = (clientId: string, params: Parameters<WalletApi[METHODS.closeConnection]>[0]) => void;
17
+ declare type OnAskAccounts = (clientId: string, params: undefined, origin: string) => void;
18
+ declare type OnMessageSign = (clientId: string, params: Parameters<WalletApi[METHODS.signMessage]>[0], origin: string) => Promise<{
19
+ onAccount?: Account;
20
+ } | undefined> | Promise<void>;
21
+ interface RpcClientsInfo {
22
+ id: string;
23
+ status: RPC_STATUS;
24
+ connectNode: boolean;
25
+ addressSubscription: Set<'connected' | 'current'>;
26
+ rpc: RpcClientWallet;
27
+ }
28
+ /**
29
+ * Contain functionality for aepp interaction and managing multiple aepps
30
+ * @category aepp wallet communication
31
+ */
32
+ export default class AeSdkWallet extends AeSdk {
33
+ id: string;
34
+ _type: WALLET_TYPE;
35
+ name: string;
36
+ _clients: Map<string, RpcClientsInfo>;
37
+ onConnection: OnConnection;
38
+ onSubscription: OnSubscription;
39
+ onSign: OnSign;
40
+ onDisconnect: OnDisconnect;
41
+ onAskAccounts: OnAskAccounts;
42
+ onMessageSign: OnMessageSign;
43
+ /**
44
+ * @param options - Options
45
+ * @param options.name - Wallet name
46
+ * @param options.id - Wallet id
47
+ * @param options.type - Wallet type
48
+ * @param options.onConnection - Call-back function for incoming AEPP connection
49
+ * @param options.onSubscription - Call-back function for incoming AEPP account subscription
50
+ * @param options.onSign - Call-back function for incoming AEPP sign request
51
+ * @param options.onAskAccounts - Call-back function for incoming AEPP get address request
52
+ * @param options.onMessageSign - Call-back function for incoming AEPP sign message request
53
+ * @param options.onDisconnect - Call-back function for disconnect event
54
+ */
55
+ constructor({ name, id, type, onConnection, onSubscription, onSign, onDisconnect, onAskAccounts, onMessageSign, ...options }: {
56
+ id: string;
57
+ type: WALLET_TYPE;
58
+ name: string;
59
+ onConnection: OnConnection;
60
+ onSubscription: OnSubscription;
61
+ onSign: OnSign;
62
+ onDisconnect: OnDisconnect;
63
+ onAskAccounts: OnAskAccounts;
64
+ onMessageSign: OnMessageSign;
65
+ } & ConstructorParameters<typeof AeSdk>[0]);
66
+ _pushAccountsToApps(): void;
67
+ selectAccount(address: Encoded.AccountAddress): void;
68
+ addAccount(account: AccountBase, options?: Parameters<AeSdk['addAccount']>[1]): Promise<void>;
69
+ _getNode(): {
70
+ node: Network['node'];
71
+ };
72
+ selectNode(name: string): Promise<void>;
73
+ _getClient(clientId: string): RpcClientsInfo;
74
+ _isRpcClientSubscribed(clientId: string): boolean;
75
+ _isRpcClientConnected(clientId: string): boolean;
76
+ _disconnectRpcClient(clientId: string): void;
77
+ /**
78
+ * Remove specific RpcClient by ID
79
+ * @param id - Client ID
80
+ */
81
+ removeRpcClient(id: string): void;
82
+ /**
83
+ * Add new client by AEPP connection
84
+ * @param clientConnection - AEPP connection object
85
+ * @returns Client ID
86
+ */
87
+ addRpcClient(clientConnection: BrowserConnection): string;
88
+ /**
89
+ * Send shareWalletInfo message to notify AEPP about wallet
90
+ * @param clientId - ID of RPC client send message to
91
+ */
92
+ shareWalletInfo(clientId: string): Promise<void>;
93
+ /**
94
+ * Get Wallet info object
95
+ * @returns Object with wallet information
96
+ */
97
+ getWalletInfo(): Promise<WalletInfo>;
98
+ /**
99
+ * Get Wallet accounts
100
+ * @returns Object with accounts information (\{ connected: Object, current: Object \})
101
+ */
102
+ getAccounts(): Accounts;
103
+ }
104
+ export {};