@aeternity/aepp-sdk 11.0.1 → 12.0.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 (376) 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 +12 -19
  4. package/dist/aepp-sdk.browser-script.js.map +1 -1
  5. package/dist/aepp-sdk.browser.js +1 -1
  6. package/dist/aepp-sdk.browser.js.map +1 -1
  7. package/dist/aepp-sdk.js +1 -1
  8. package/dist/aepp-sdk.js.map +1 -1
  9. package/es/AeSdk.d.ts +37 -0
  10. package/es/AeSdk.mjs +81 -0
  11. package/es/AeSdk.mjs.map +1 -0
  12. package/es/AeSdkAepp.d.ts +69 -0
  13. package/es/AeSdkAepp.mjs +175 -0
  14. package/es/AeSdkAepp.mjs.map +1 -0
  15. package/es/AeSdkBase.d.ts +212 -0
  16. package/es/AeSdkBase.mjs +310 -0
  17. package/es/AeSdkBase.mjs.map +1 -0
  18. package/es/AeSdkWallet.d.ts +103 -0
  19. package/es/AeSdkWallet.mjs +322 -0
  20. package/es/AeSdkWallet.mjs.map +1 -0
  21. package/es/Node.d.ts +44 -0
  22. package/es/Node.mjs +141 -0
  23. package/es/Node.mjs.map +1 -0
  24. package/es/account/Base.d.ts +65 -0
  25. package/es/account/Base.mjs +123 -0
  26. package/es/account/Base.mjs.map +1 -0
  27. package/es/account/Memory.d.ts +25 -0
  28. package/es/account/Memory.mjs +81 -0
  29. package/es/account/Memory.mjs.map +1 -0
  30. package/es/account/Rpc.d.ts +27 -0
  31. package/es/account/Rpc.mjs +79 -0
  32. package/es/account/Rpc.mjs.map +1 -0
  33. package/es/aens.d.ts +209 -0
  34. package/es/aens.mjs +332 -0
  35. package/es/aens.mjs.map +1 -0
  36. package/es/aepp-wallet-communication/connection/Browser.d.ts +32 -0
  37. package/es/aepp-wallet-communication/connection/Browser.mjs +70 -0
  38. package/es/aepp-wallet-communication/connection/Browser.mjs.map +1 -0
  39. package/es/aepp-wallet-communication/connection/BrowserRuntime.d.ts +17 -0
  40. package/es/aepp-wallet-communication/connection/BrowserRuntime.mjs +57 -0
  41. package/es/aepp-wallet-communication/connection/BrowserRuntime.mjs.map +1 -0
  42. package/es/aepp-wallet-communication/connection/BrowserWindowMessage.d.ts +35 -0
  43. package/es/aepp-wallet-communication/connection/BrowserWindowMessage.mjs +142 -0
  44. package/es/aepp-wallet-communication/connection/BrowserWindowMessage.mjs.map +1 -0
  45. package/es/aepp-wallet-communication/connection-proxy.d.ts +10 -0
  46. package/{src/utils/crypto-ts.ts → es/aepp-wallet-communication/connection-proxy.mjs} +15 -11
  47. package/es/aepp-wallet-communication/connection-proxy.mjs.map +1 -0
  48. package/es/aepp-wallet-communication/rpc/RpcClient.d.ts +33 -0
  49. package/es/aepp-wallet-communication/rpc/RpcClient.mjs +169 -0
  50. package/es/aepp-wallet-communication/rpc/RpcClient.mjs.map +1 -0
  51. package/es/aepp-wallet-communication/rpc/types.d.ts +77 -0
  52. package/es/aepp-wallet-communication/rpc/types.mjs +3 -0
  53. package/es/aepp-wallet-communication/rpc/types.mjs.map +1 -0
  54. package/es/aepp-wallet-communication/schema.d.ts +90 -46
  55. package/es/aepp-wallet-communication/schema.mjs +214 -0
  56. package/es/aepp-wallet-communication/schema.mjs.map +1 -0
  57. package/es/aepp-wallet-communication/wallet-detector.d.ts +24 -0
  58. package/es/aepp-wallet-communication/wallet-detector.mjs +63 -0
  59. package/es/aepp-wallet-communication/wallet-detector.mjs.map +1 -0
  60. package/es/apis/compiler/compiler.d.ts +92 -0
  61. package/es/apis/compiler/compiler.mjs +576 -0
  62. package/es/apis/compiler/compiler.mjs.map +1 -0
  63. package/es/apis/compiler/index.d.ts +2 -0
  64. package/es/apis/compiler/index.mjs +3 -0
  65. package/es/apis/compiler/index.mjs.map +1 -0
  66. package/es/apis/compiler/models/index.d.ts +248 -0
  67. package/es/apis/compiler/models/index.mjs +48 -0
  68. package/es/apis/compiler/models/index.mjs.map +1 -0
  69. package/es/apis/compiler/models/mappers.d.ts +23 -0
  70. package/es/apis/compiler/models/mappers.mjs +585 -0
  71. package/es/apis/compiler/models/mappers.mjs.map +1 -0
  72. package/es/apis/compiler/models/parameters.d.ts +13 -0
  73. package/es/apis/compiler/models/parameters.mjs +71 -0
  74. package/es/apis/compiler/models/parameters.mjs.map +1 -0
  75. package/es/apis/node/index.d.ts +2 -0
  76. package/es/apis/node/index.mjs +3 -0
  77. package/es/apis/node/index.mjs.map +1 -0
  78. package/es/apis/node/models/index.d.ts +1061 -0
  79. package/es/apis/node/models/index.mjs +2 -0
  80. package/es/apis/node/models/index.mjs.map +1 -0
  81. package/es/apis/node/models/mappers.d.ts +95 -0
  82. package/es/apis/node/models/mappers.mjs +4164 -0
  83. package/es/apis/node/models/mappers.mjs.map +1 -0
  84. package/es/apis/node/models/parameters.d.ts +17 -0
  85. package/es/apis/node/models/parameters.mjs +165 -0
  86. package/es/apis/node/models/parameters.mjs.map +1 -0
  87. package/es/apis/node/node.d.ts +215 -0
  88. package/es/apis/node/node.mjs +1165 -0
  89. package/es/apis/node/node.mjs.map +1 -0
  90. package/es/chain.d.ts +220 -0
  91. package/es/chain.mjs +524 -0
  92. package/es/chain.mjs.map +1 -0
  93. package/es/channel/handlers.d.ts +34 -0
  94. package/es/channel/handlers.mjs +147 -112
  95. package/es/channel/handlers.mjs.map +1 -1
  96. package/es/channel/index.d.ts +634 -0
  97. package/es/channel/index.mjs +898 -900
  98. package/es/channel/index.mjs.map +1 -1
  99. package/es/channel/internal.d.ts +100 -0
  100. package/es/channel/internal.mjs +97 -51
  101. package/es/channel/internal.mjs.map +1 -1
  102. package/es/contract/Compiler.d.ts +17 -0
  103. package/es/contract/Compiler.mjs +67 -0
  104. package/es/contract/Compiler.mjs.map +1 -0
  105. package/es/contract/aci.d.ts +125 -0
  106. package/es/contract/aci.mjs +199 -180
  107. package/es/contract/aci.mjs.map +1 -1
  108. package/es/contract/ga.d.ts +68 -0
  109. package/es/contract/ga.mjs +190 -0
  110. package/es/contract/ga.mjs.map +1 -0
  111. package/es/contract/methods.d.ts +68 -0
  112. package/es/contract/methods.mjs +101 -0
  113. package/es/contract/methods.mjs.map +1 -0
  114. package/es/index.d.ts +32 -0
  115. package/es/index.mjs +32 -40
  116. package/es/index.mjs.map +1 -1
  117. package/es/oracle.d.ts +154 -0
  118. package/es/oracle.mjs +288 -0
  119. package/es/oracle.mjs.map +1 -0
  120. package/es/spend.d.ts +61 -0
  121. package/es/spend.mjs +122 -0
  122. package/es/spend.mjs.map +1 -0
  123. package/es/tx/builder/constants.d.ts +41 -0
  124. package/es/tx/builder/constants.mjs +11 -19
  125. package/es/tx/builder/constants.mjs.map +1 -1
  126. package/es/tx/builder/field-types.d.ts +62 -0
  127. package/es/tx/builder/field-types.mjs +62 -10
  128. package/es/tx/builder/field-types.mjs.map +1 -1
  129. package/es/tx/builder/helpers.d.ts +131 -0
  130. package/es/tx/builder/helpers.mjs +71 -169
  131. package/es/tx/builder/helpers.mjs.map +1 -1
  132. package/es/tx/builder/index.d.ts +75 -0
  133. package/es/tx/builder/index.mjs +141 -323
  134. package/es/tx/builder/index.mjs.map +1 -1
  135. package/es/tx/builder/schema.d.ts +350 -0
  136. package/es/tx/builder/schema.mjs +173 -510
  137. package/es/tx/builder/schema.mjs.map +1 -1
  138. package/es/tx/index.d.ts +63 -0
  139. package/es/tx/index.mjs +171 -265
  140. package/es/tx/index.mjs.map +1 -1
  141. package/es/tx/min-fee.d.ts +20 -0
  142. package/es/tx/min-fee.mjs +148 -0
  143. package/es/tx/min-fee.mjs.map +1 -0
  144. package/es/tx/validator.d.ts +19 -0
  145. package/es/tx/validator.mjs +64 -71
  146. package/es/tx/validator.mjs.map +1 -1
  147. package/es/typings/@aeternity__argon2-browser/index.d.mjs +2 -0
  148. package/es/typings/@aeternity__argon2-browser/index.d.mjs.map +1 -0
  149. package/es/typings/@aeternity__uuid/index.d.mjs +2 -0
  150. package/es/typings/@aeternity__uuid/index.d.mjs.map +1 -0
  151. package/es/typings/bip32-path/index.d.mjs +2 -0
  152. package/es/typings/bip32-path/index.d.mjs.map +1 -0
  153. package/es/typings/blakejs/index.d.mjs.map +1 -1
  154. package/es/typings/tweetnacl-auth/index.d.mjs +2 -0
  155. package/es/typings/tweetnacl-auth/index.d.mjs.map +1 -0
  156. package/es/utils/amount-formatter.d.ts +42 -0
  157. package/es/utils/amount-formatter.mjs +28 -41
  158. package/es/utils/amount-formatter.mjs.map +1 -1
  159. package/es/utils/autorest.d.ts +6 -0
  160. package/es/utils/autorest.mjs +97 -0
  161. package/es/utils/autorest.mjs.map +1 -0
  162. package/es/utils/bignumber.d.ts +13 -0
  163. package/es/utils/bignumber.mjs +10 -8
  164. package/es/utils/bignumber.mjs.map +1 -1
  165. package/es/{bytes.d.ts → utils/bytes.d.ts} +10 -13
  166. package/es/utils/bytes.mjs +10 -14
  167. package/es/utils/bytes.mjs.map +1 -1
  168. package/es/utils/crypto.d.ts +103 -0
  169. package/es/utils/crypto.mjs +60 -68
  170. package/es/utils/crypto.mjs.map +1 -1
  171. package/es/utils/encoder.d.ts +26 -0
  172. package/es/utils/encoder.mjs +47 -51
  173. package/es/utils/encoder.mjs.map +1 -1
  174. package/es/{errors.d.ts → utils/errors.d.ts} +254 -57
  175. package/es/utils/errors.mjs +318 -125
  176. package/es/utils/errors.mjs.map +1 -1
  177. package/es/utils/hd-wallet.d.ts +34 -0
  178. package/es/utils/hd-wallet.mjs +27 -16
  179. package/es/utils/hd-wallet.mjs.map +1 -1
  180. package/es/utils/json-big.d.ts +5 -0
  181. package/es/utils/json-big.mjs +10 -14
  182. package/es/utils/json-big.mjs.map +1 -1
  183. package/es/utils/keystore.d.ts +51 -0
  184. package/es/utils/keystore.mjs +98 -193
  185. package/es/utils/keystore.mjs.map +1 -1
  186. package/es/{mptree.d.ts → utils/mptree.d.ts} +5 -8
  187. package/es/utils/mptree.mjs +13 -14
  188. package/es/utils/mptree.mjs.map +1 -1
  189. package/es/utils/other.d.ts +14 -0
  190. package/es/utils/other.mjs +21 -36
  191. package/es/utils/other.mjs.map +1 -1
  192. package/es/{semver-satisfies.d.ts → utils/semver-satisfies.d.ts} +0 -0
  193. package/es/utils/semver-satisfies.mjs.map +1 -1
  194. package/es/utils/string.d.ts +24 -0
  195. package/es/utils/string.mjs +8 -10
  196. package/es/utils/string.mjs.map +1 -1
  197. package/package.json +49 -39
  198. package/src/AeSdk.ts +65 -0
  199. package/src/AeSdkAepp.ts +167 -0
  200. package/src/AeSdkBase.ts +320 -0
  201. package/src/AeSdkWallet.ts +332 -0
  202. package/src/Node.ts +167 -0
  203. package/src/account/Base.ts +114 -0
  204. package/src/account/Memory.ts +83 -0
  205. package/src/account/Rpc.ts +67 -0
  206. package/src/aens.ts +391 -0
  207. package/src/aepp-wallet-communication/connection/Browser.ts +68 -0
  208. package/src/aepp-wallet-communication/connection/BrowserRuntime.ts +58 -0
  209. package/src/aepp-wallet-communication/connection/BrowserWindowMessage.ts +111 -0
  210. package/{es/utils/crypto-ts.mjs → src/aepp-wallet-communication/connection-proxy.ts} +16 -17
  211. package/src/aepp-wallet-communication/rpc/RpcClient.ts +137 -0
  212. package/src/aepp-wallet-communication/rpc/types.ts +66 -0
  213. package/src/aepp-wallet-communication/schema.ts +181 -0
  214. package/src/aepp-wallet-communication/wallet-detector.ts +71 -0
  215. package/src/apis/compiler/code-model-v4.yaml +2649 -0
  216. package/src/apis/compiler/compiler.ts +585 -0
  217. package/src/apis/compiler/index.ts +2 -0
  218. package/src/apis/compiler/models/index.ts +301 -0
  219. package/src/apis/compiler/models/mappers.ts +583 -0
  220. package/src/apis/compiler/models/parameters.ts +93 -0
  221. package/src/apis/node/code-model-v4.yaml +10046 -0
  222. package/src/apis/node/index.ts +2 -0
  223. package/src/apis/node/models/index.ts +1253 -0
  224. package/src/apis/node/models/mappers.ts +4278 -0
  225. package/src/apis/node/models/parameters.ts +188 -0
  226. package/src/apis/node/node.ts +1299 -0
  227. package/src/chain.ts +444 -0
  228. package/src/channel/{handlers.js → handlers.ts} +220 -128
  229. package/src/channel/index.ts +991 -0
  230. package/src/channel/internal.ts +345 -0
  231. package/src/contract/Compiler.ts +66 -0
  232. package/src/contract/aci.ts +529 -0
  233. package/src/contract/ga.ts +178 -0
  234. package/src/contract/methods.ts +118 -0
  235. package/src/index.ts +51 -0
  236. package/src/oracle.ts +342 -0
  237. package/src/spend.ts +152 -0
  238. package/src/tx/builder/{constants.js → constants.ts} +12 -16
  239. package/src/tx/builder/field-types.ts +111 -0
  240. package/src/tx/builder/helpers.ts +253 -0
  241. package/src/tx/builder/index.ts +394 -0
  242. package/src/tx/builder/schema.ts +771 -0
  243. package/src/tx/index.ts +199 -0
  244. package/src/tx/min-fee.ts +136 -0
  245. package/src/tx/validator.ts +226 -0
  246. package/src/typings/@aeternity__argon2-browser/index.d.ts +3 -0
  247. package/src/typings/@aeternity__uuid/index.d.ts +3 -0
  248. package/src/typings/bip32-path/index.d.ts +33 -0
  249. package/src/typings/tweetnacl-auth/index.d.ts +14 -0
  250. package/src/utils/amount-formatter.ts +29 -42
  251. package/src/utils/autorest.ts +90 -0
  252. package/src/utils/bignumber.ts +9 -11
  253. package/src/utils/bytes.ts +12 -14
  254. package/src/utils/crypto.ts +217 -0
  255. package/src/utils/encoder.ts +52 -55
  256. package/src/utils/errors.ts +268 -134
  257. package/src/utils/hd-wallet.ts +134 -0
  258. package/src/utils/json-big.ts +26 -0
  259. package/src/utils/keystore.ts +179 -0
  260. package/src/utils/mptree.ts +14 -14
  261. package/src/utils/other.ts +28 -43
  262. package/src/utils/string.ts +8 -10
  263. package/es/account/base.mjs +0 -179
  264. package/es/account/base.mjs.map +0 -1
  265. package/es/account/memory.mjs +0 -99
  266. package/es/account/memory.mjs.map +0 -1
  267. package/es/account/multiple.mjs +0 -179
  268. package/es/account/multiple.mjs.map +0 -1
  269. package/es/ae/aens.mjs +0 -404
  270. package/es/ae/aens.mjs.map +0 -1
  271. package/es/ae/aepp.mjs +0 -45
  272. package/es/ae/aepp.mjs.map +0 -1
  273. package/es/ae/contract.mjs +0 -159
  274. package/es/ae/contract.mjs.map +0 -1
  275. package/es/ae/index.mjs +0 -207
  276. package/es/ae/index.mjs.map +0 -1
  277. package/es/ae/oracle.mjs +0 -339
  278. package/es/ae/oracle.mjs.map +0 -1
  279. package/es/ae/universal.mjs +0 -45
  280. package/es/ae/universal.mjs.map +0 -1
  281. package/es/ae/wallet.mjs +0 -50
  282. package/es/ae/wallet.mjs.map +0 -1
  283. package/es/amount-formatter.d.ts +0 -58
  284. package/es/bignumber.d.ts +0 -18
  285. package/es/chain/index.mjs +0 -272
  286. package/es/chain/index.mjs.map +0 -1
  287. package/es/chain/node.mjs +0 -442
  288. package/es/chain/node.mjs.map +0 -1
  289. package/es/contract/compiler.mjs +0 -115
  290. package/es/contract/compiler.mjs.map +0 -1
  291. package/es/contract/ga/helpers.mjs +0 -30
  292. package/es/contract/ga/helpers.mjs.map +0 -1
  293. package/es/contract/ga/index.mjs +0 -178
  294. package/es/contract/ga/index.mjs.map +0 -1
  295. package/es/crypto-ts.d.ts +0 -9
  296. package/es/encoder.d.ts +0 -26
  297. package/es/node-pool/index.mjs +0 -188
  298. package/es/node-pool/index.mjs.map +0 -1
  299. package/es/node.mjs +0 -133
  300. package/es/node.mjs.map +0 -1
  301. package/es/other.d.ts +0 -31
  302. package/es/string.d.ts +0 -26
  303. package/es/tx/tx-object.mjs +0 -283
  304. package/es/tx/tx-object.mjs.map +0 -1
  305. package/es/tx/tx.mjs +0 -938
  306. package/es/tx/tx.mjs.map +0 -1
  307. package/es/utils/aepp-wallet-communication/connection/browser-runtime.mjs +0 -132
  308. package/es/utils/aepp-wallet-communication/connection/browser-runtime.mjs.map +0 -1
  309. package/es/utils/aepp-wallet-communication/connection/browser-window-message.mjs +0 -183
  310. package/es/utils/aepp-wallet-communication/connection/browser-window-message.mjs.map +0 -1
  311. package/es/utils/aepp-wallet-communication/connection/index.mjs +0 -87
  312. package/es/utils/aepp-wallet-communication/connection/index.mjs.map +0 -1
  313. package/es/utils/aepp-wallet-communication/content-script-bridge.mjs +0 -98
  314. package/es/utils/aepp-wallet-communication/content-script-bridge.mjs.map +0 -1
  315. package/es/utils/aepp-wallet-communication/helpers.mjs +0 -92
  316. package/es/utils/aepp-wallet-communication/helpers.mjs.map +0 -1
  317. package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.mjs +0 -375
  318. package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.mjs.map +0 -1
  319. package/es/utils/aepp-wallet-communication/rpc/rpc-client.mjs +0 -275
  320. package/es/utils/aepp-wallet-communication/rpc/rpc-client.mjs.map +0 -1
  321. package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.mjs +0 -541
  322. package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.mjs.map +0 -1
  323. package/es/utils/aepp-wallet-communication/schema.mjs +0 -102
  324. package/es/utils/aepp-wallet-communication/schema.mjs.map +0 -1
  325. package/es/utils/aepp-wallet-communication/wallet-detector.mjs +0 -110
  326. package/es/utils/aepp-wallet-communication/wallet-detector.mjs.map +0 -1
  327. package/es/utils/async-init.mjs +0 -64
  328. package/es/utils/async-init.mjs.map +0 -1
  329. package/es/utils/crypto-ts.mjs.map +0 -1
  330. package/es/utils/swagger.mjs +0 -164
  331. package/es/utils/swagger.mjs.map +0 -1
  332. package/src/account/base.js +0 -153
  333. package/src/account/memory.js +0 -83
  334. package/src/account/multiple.js +0 -162
  335. package/src/ae/aens.js +0 -361
  336. package/src/ae/aepp.js +0 -45
  337. package/src/ae/contract.js +0 -148
  338. package/src/ae/index.js +0 -168
  339. package/src/ae/oracle.js +0 -311
  340. package/src/ae/universal.js +0 -47
  341. package/src/ae/wallet.js +0 -50
  342. package/src/chain/index.js +0 -269
  343. package/src/chain/node.js +0 -320
  344. package/src/channel/index.js +0 -903
  345. package/src/channel/internal.js +0 -236
  346. package/src/contract/aci.js +0 -376
  347. package/src/contract/compiler.js +0 -100
  348. package/src/contract/ga/helpers.js +0 -19
  349. package/src/contract/ga/index.js +0 -150
  350. package/src/index.js +0 -89
  351. package/src/node-pool/index.js +0 -172
  352. package/src/node.js +0 -116
  353. package/src/tx/builder/field-types.js +0 -61
  354. package/src/tx/builder/helpers.js +0 -334
  355. package/src/tx/builder/index.js +0 -465
  356. package/src/tx/builder/schema.js +0 -1100
  357. package/src/tx/index.js +0 -301
  358. package/src/tx/tx-object.js +0 -187
  359. package/src/tx/tx.js +0 -631
  360. package/src/tx/validator.js +0 -181
  361. package/src/utils/aepp-wallet-communication/connection/browser-runtime.js +0 -119
  362. package/src/utils/aepp-wallet-communication/connection/browser-window-message.js +0 -165
  363. package/src/utils/aepp-wallet-communication/connection/index.js +0 -85
  364. package/src/utils/aepp-wallet-communication/content-script-bridge.js +0 -86
  365. package/src/utils/aepp-wallet-communication/helpers.js +0 -60
  366. package/src/utils/aepp-wallet-communication/rpc/aepp-rpc.js +0 -294
  367. package/src/utils/aepp-wallet-communication/rpc/rpc-client.js +0 -232
  368. package/src/utils/aepp-wallet-communication/rpc/wallet-rpc.js +0 -401
  369. package/src/utils/aepp-wallet-communication/schema.ts +0 -80
  370. package/src/utils/aepp-wallet-communication/wallet-detector.js +0 -92
  371. package/src/utils/async-init.js +0 -45
  372. package/src/utils/crypto.js +0 -219
  373. package/src/utils/hd-wallet.js +0 -100
  374. package/src/utils/json-big.js +0 -26
  375. package/src/utils/keystore.js +0 -219
  376. package/src/utils/swagger.js +0 -156
@@ -1,148 +0,0 @@
1
- /*
2
- * ISC License (ISC)
3
- * Copyright (c) 2021 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
- /**
19
- * Contract module - routines to interact with the æternity contract
20
- *
21
- * High level documentation of the contracts are available at
22
- * https://github.com/aeternity/protocol/tree/master/contracts and
23
- *
24
- * @module @aeternity/aepp-sdk/es/ae/contract
25
- * @export Contract
26
- * @example import { Contract } from '@aeternity/aepp-sdk'
27
- */
28
-
29
- import Ae from './'
30
- import ContractCompilerHttp from '../contract/compiler'
31
- import getContractInstance from '../contract/aci'
32
- import { AMOUNT, MIN_GAS_PRICE } from '../tx/builder/schema'
33
- import { decode, produceNameId } from '../tx/builder/helpers'
34
-
35
- /**
36
- * Utility method to create a delegate signature for a contract
37
- * @function
38
- * @alias module:@aeternity/aepp-sdk/es/ae/contract
39
- * @category async
40
- * @param {String[]} ids The list of id's to prepend
41
- * @param {Object} [opt={}] options
42
- * @param {{ onAccount: String | Object }} [opt={}] opt Options
43
- * @return {Promise<String>} Signature in hex representation
44
- */
45
- async function delegateSignatureCommon (ids = [], opt = {}) {
46
- const signature = await this.sign(
47
- Buffer.concat([
48
- Buffer.from(this.getNetworkId(opt)),
49
- ...ids.map(e => decode(e))
50
- ]),
51
- opt
52
- )
53
- return Buffer.from(signature).toString('hex')
54
- }
55
-
56
- /**
57
- * Helper to generate a signature to delegate pre-claim/claim/transfer/revoke of a name to
58
- * a contract.
59
- * @function
60
- * @alias module:@aeternity/aepp-sdk/es/ae/contract
61
- * @category async
62
- * @param {String} contractId Contract Id
63
- * @param {String} [name] The name
64
- * @param {{ onAccount: String | Object }} [opt={}] opt Options
65
- * @return {Promise<String>} Signature for delegation
66
- * @example
67
- * const aeSdk = await Universal({ ... })
68
- * const contractId = 'ct_asd2ks...' // contract address
69
- * const name = 'example.chain' // AENS name
70
- * const onAccount = await aeSdk.address() // Sign with a specific account
71
- * // Preclaim signature
72
- * const params = { contractId }
73
- * const preclaimSig = await aeSdk.createAensDelegationSignature(params, { onAccount: current })
74
- * // Claim, transfer and revoke signature
75
- * const params = { contractId, name }
76
- * const aensDelegationSig = await contract.createAensDelegationSignature(
77
- * params, name, { onAccount: current }
78
- * )
79
- */
80
- async function createAensDelegationSignature ({ contractId, name }, opt = {}) {
81
- return this.delegateSignatureCommon(
82
- [await this.address(opt), ...name ? [produceNameId(name)] : [], contractId],
83
- opt
84
- )
85
- }
86
-
87
- /**
88
- * Helper to generate a signature to delegate register/extend/respond of a Oracle to a contract.
89
- * @function
90
- * @alias module:@aeternity/aepp-sdk/es/ae/contract
91
- * @category async
92
- * @param {String} contractId Contract Id
93
- * @param {String} [queryId] Oracle Query Id
94
- * @param {{ onAccount: String | Object }} [opt={}] opt Options
95
- * @return {Promise<String>} Signature for delegation
96
- * @example
97
- * const aeSdk = await Universal({ ... })
98
- * const contractId = 'ct_asd2ks...' // contract address
99
- * const queryId = 'oq_...' // Oracle Query Id
100
- * const onAccount = await aeSdk.address() // Sign with a specific account
101
- * // Oracle register and extend signature
102
- * const params = { contractId }
103
- * const oracleDelegationSig = await contract.createOracleDelegationSignature(params, { onAccount })
104
- * // Oracle respond signature
105
- * const params = { contractId, queryId }
106
- * const respondSig = await contract.createOracleDelegationSignature(params, queryId)
107
- */
108
- async function createOracleDelegationSignature ({ contractId, queryId }, opt = {}) {
109
- return this.delegateSignatureCommon([queryId ?? await this.address(opt), contractId], opt)
110
- }
111
-
112
- /**
113
- * Contract Stamp
114
- *
115
- * Provide contract implementation
116
- * {@link module:@aeternity/aepp-sdk/es/ae--Ae} clients.
117
- * @function
118
- * @alias module:@aeternity/aepp-sdk/es/ae/contract
119
- * @rtype Stamp
120
- * @param {Object} [options={}] - Initializer object
121
- * @return {Object} Contract instance
122
- * @example
123
- * import { Transaction, MemoryAccount, ChainNode } from '@aeternity/aepp-sdk
124
- *
125
- * const ContractWithAE = await Contract
126
- * .compose(Transaction, MemoryAccount, ChainNode) // AE implementation
127
- * const client = await ContractWithAe({ url, internalUrl, compilerUrl, keypair, ... })
128
- *
129
- */
130
- export default Ae.compose(ContractCompilerHttp, {
131
- methods: {
132
- getContractInstance,
133
- // Delegation for contract
134
- delegateSignatureCommon,
135
- // AENS
136
- createAensDelegationSignature,
137
- // Oracle
138
- createOracleDelegationSignature
139
- },
140
- deepProps: {
141
- Ae: {
142
- defaults: {
143
- gasPrice: MIN_GAS_PRICE,
144
- amount: AMOUNT
145
- }
146
- }
147
- }
148
- })
package/src/ae/index.js DELETED
@@ -1,168 +0,0 @@
1
- /*
2
- * ISC License (ISC)
3
- * Copyright (c) 2018 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
- /**
19
- * Ae module
20
- * @module @aeternity/aepp-sdk/es/ae
21
- * @export Ae
22
- * @example import { Ae } from '@aeternity/aepp-sdk'
23
- */
24
-
25
- import stampit from '@stamp/it'
26
- import Tx from '../tx'
27
- import Chain from '../chain'
28
- import AccountBase from '../account/base'
29
- import TxBuilder from '../tx/builder'
30
- import BigNumber from 'bignumber.js'
31
- import { AE_AMOUNT_FORMATS } from '../utils/amount-formatter'
32
- import { ArgumentError } from '../utils/errors'
33
-
34
- /**
35
- * Sign and post a transaction to the chain
36
- * @instance
37
- * @category async
38
- * @rtype (tx: String, options: Object) => Promise[String]
39
- * @param {String} tx - Transaction
40
- * @param {Object} [options={}] options - Options
41
- * @param {Object} [options.verify=true] - Verify transaction before broadcast, throw error if not
42
- * valid
43
- * @return {Object} Transaction
44
- */
45
- async function send (tx, options = {}) {
46
- const opt = { ...this.Ae.defaults, ...options }
47
- const { contractId, authFun } = options.innerTx
48
- ? { contractId: false }
49
- : await this.getAccount(await this.address(opt))
50
- const signed = contractId
51
- ? await this.signUsingGA(tx, { ...opt, authFun })
52
- : await this.signTransaction(tx, opt)
53
- return opt.innerTx
54
- ? { hash: TxBuilder.buildTxHash(signed), rawTx: signed }
55
- : this.sendTransaction(signed, opt)
56
- }
57
-
58
- async function signUsingGA (tx, { authData, authFun, ...options } = {}) {
59
- return this.createMetaTx(tx, authData, authFun, options)
60
- }
61
-
62
- /**
63
- * Send tokens to another account
64
- * @instance
65
- * @category async
66
- * @rtype (amount: Number|String, recipientIdOrName: String, options?: Object) => Promise[String]
67
- * @param {Number|String} amount - Amount to spend
68
- * @param {String} recipientIdOrName - Address or name of recipient account
69
- * @param {Object} [options] - Options
70
- * @return {Object} Transaction
71
- */
72
- async function spend (amount, recipientIdOrName, options) {
73
- const opt = { ...this.Ae.defaults, ...options }
74
- return this.send(
75
- await this.spendTx({
76
- ...opt,
77
- senderId: await this.address(opt),
78
- recipientId: await this.resolveName(recipientIdOrName, 'account_pubkey', opt),
79
- amount
80
- }),
81
- opt
82
- )
83
- }
84
-
85
- // TODO: Rename to spendFraction
86
- /**
87
- * Send a fraction of token balance to another account
88
- * @instance
89
- * @category async
90
- * @rtype (fraction: Number|String, recipientIdOrName: String, options?: Object) => Promise[String]
91
- * @param {Number|String} fraction - Fraction of balance to spend (between 0 and 1)
92
- * @param {String} recipientIdOrName - Address or name of recipient account
93
- * @param {Object} [options] - Options
94
- * @return {Object} Transaction
95
- */
96
- async function transferFunds (fraction, recipientIdOrName, options) {
97
- if (fraction < 0 || fraction > 1) {
98
- throw new ArgumentError('fraction', 'a number between 0 and 1', fraction)
99
- }
100
- const opt = { ...this.Ae.defaults, ...options }
101
- const recipientId = await this.resolveName(recipientIdOrName, 'account_pubkey', opt)
102
- const senderId = await this.address(opt)
103
- const balance = new BigNumber(await this.balance(senderId))
104
- const desiredAmount = balance.times(fraction).integerValue(BigNumber.ROUND_HALF_UP)
105
- const { tx: { fee } } = TxBuilder.unpackTx(
106
- await this.spendTx({ ...opt, senderId, recipientId, amount: desiredAmount })
107
- )
108
- // Reducing of the amount may reduce transaction fee, so this is not completely accurate
109
- const amount = desiredAmount.plus(fee).gt(balance) ? balance.minus(fee) : desiredAmount
110
- return this.send(await this.spendTx({ ...opt, senderId, recipientId, amount }), opt)
111
- }
112
-
113
- /**
114
- * Submit transaction of another account paying for it (fee and gas)
115
- * @instance
116
- * @category async
117
- * @rtype (transaction: String, options?: Object) => Promise[String]
118
- * @param {String} transaction - tx_<base64>-encoded transaction
119
- * @param {Object} [options]
120
- * @return {Object} Transaction
121
- */
122
- async function payForTransaction (transaction, options) {
123
- const opt = { ...this.Ae.defaults, ...options }
124
- return this.send(
125
- await this.payingForTx({
126
- ...opt,
127
- payerId: await this.address(opt),
128
- tx: transaction
129
- }),
130
- opt
131
- )
132
- }
133
-
134
- /**
135
- * Remove all listeners for RPC
136
- * @instance
137
- * @return {void}
138
- */
139
- function destroyInstance () {
140
- const destroyMethods = ['destroyClient', 'destroyServer'] // Array with destroy function's
141
- destroyMethods.forEach(m => this[m] && typeof this[m] === 'function' && this[m]())
142
- }
143
-
144
- /**
145
- * Basic Ae Stamp
146
- *
147
- * Attempting to create instances from the Stamp without overwriting all
148
- * abstract methods using composition will result in an exception.
149
- *
150
- * Ae objects are the composition of three basic building blocks:
151
- * * {@link module:@aeternity/aepp-sdk/es/tx--Tx}
152
- * * {@link module:@aeternity/aepp-sdk/es/account--Account}
153
- * * {@link module:@aeternity/aepp-sdk/es/chain--Chain}
154
- * Only by providing the joint functionality of those three, most more advanced
155
- * operations, i.e. the ones with actual use value on the chain, become
156
- * available.
157
- * @function
158
- * @alias module:@aeternity/aepp-sdk/es/ae
159
- * @rtype Stamp
160
- * @param {Object} [options={}] - Initializer object
161
- * @return {Object} Ae instance
162
- */
163
- const Ae = stampit(Tx, AccountBase, Chain, {
164
- methods: { send, spend, transferFunds, payForTransaction, destroyInstance, signUsingGA },
165
- deepProps: { Ae: { defaults: { denomination: AE_AMOUNT_FORMATS.AETTOS } } }
166
- })
167
-
168
- export default Ae
package/src/ae/oracle.js DELETED
@@ -1,311 +0,0 @@
1
- /*
2
- * ISC License (ISC)
3
- * Copyright (c) 2018 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
- /**
19
- * Oracle module - routines to interact with the æternity oracle system
20
- *
21
- * The high-level description of the oracle system is
22
- * https://github.com/aeternity/protocol/blob/master/ORACLE.md in the protocol
23
- * repository.
24
- * @module @aeternity/aepp-sdk/es/ae/oracle
25
- * @export Oracle
26
- * @example import { Oracle } from '@aeternity/aepp-sdk'
27
- */
28
-
29
- import Ae from './'
30
- import { pause } from '../utils/other'
31
- import { oracleQueryId, decode } from '../tx/builder/helpers'
32
- import { unpackTx } from '../tx/builder'
33
- import { ORACLE_TTL, QUERY_FEE, QUERY_TTL, RESPONSE_TTL } from '../tx/builder/schema'
34
- import { RequestTimedOutError } from '../utils/errors'
35
-
36
- /**
37
- * Constructor for Oracle Object (helper object for using Oracle)
38
- * @alias module:@aeternity/aepp-sdk/es/ae/oracle
39
- * @instance
40
- * @function
41
- * @category async
42
- * @param {String} oracleId Oracle public key
43
- * @return {Promise<Object>} Oracle object
44
- */
45
- async function getOracleObject (oracleId) {
46
- const oracle = await this.api.getOracleByPubkey(oracleId)
47
- const { oracleQueries: queries } = await this.api.getOracleQueriesByPubkey(oracleId)
48
- return {
49
- ...oracle,
50
- queries,
51
- pollQueries: this.pollForQueries.bind(this, oracleId),
52
- postQuery: this.postQueryToOracle.bind(this, oracleId),
53
- respondToQuery: this.respondToQuery.bind(this, oracleId),
54
- extendOracle: this.extendOracleTtl.bind(this, oracleId),
55
- getQuery: this.getQueryObject.bind(this, oracleId)
56
- }
57
- }
58
-
59
- /**
60
- * Poll for oracle queries
61
- * @alias module:@aeternity/aepp-sdk/es/ae/oracle
62
- * @instance
63
- * @function
64
- * @param {String} oracleId Oracle public key
65
- * @param {Function} onQuery OnQuery callback
66
- * @param {Object} [options] Options object
67
- * @param {Number} [options.interval] Poll interval(default: 5000)
68
- * @return {Function} stopPolling - Stop polling function
69
- */
70
- function pollForQueries (
71
- oracleId,
72
- onQuery,
73
- { interval = this._getPollInterval('microblock') } = {}
74
- ) {
75
- const knownQueryIds = new Set()
76
- const checkNewQueries = async () => {
77
- const queries = ((await this.api.getOracleQueriesByPubkey(oracleId)).oracleQueries || [])
78
- .filter(({ id }) => !knownQueryIds.has(id))
79
- queries.forEach(({ id }) => knownQueryIds.add(id))
80
- if (queries.length) onQuery(queries)
81
- }
82
-
83
- let stopped
84
- (async () => {
85
- while (!stopped) { // eslint-disable-line no-unmodified-loop-condition
86
- // TODO: allow to handle this error somehow
87
- await checkNewQueries().catch(console.error)
88
- await pause(interval)
89
- }
90
- })()
91
- return () => { stopped = true }
92
- }
93
-
94
- /**
95
- * Constructor for OracleQuery Object (helper object for using OracleQuery)
96
- * @alias module:@aeternity/aepp-sdk/es/ae/oracle
97
- * @instance
98
- * @function
99
- * @category async
100
- * @param {String} oracleId Oracle public key
101
- * @param {String} queryId Oracle Query id
102
- * @return {Promise<Object>} OracleQuery object
103
- */
104
- async function getQueryObject (oracleId, queryId) {
105
- const q = await this.api.getOracleQueryByPubkeyAndQueryId(oracleId, queryId)
106
- return {
107
- ...q,
108
- decodedQuery: decode(q.query).toString(),
109
- decodedResponse: decode(q.response).toString(),
110
- respond: this.respondToQuery.bind(this, oracleId, queryId),
111
- pollForResponse: this.pollForQueryResponse.bind(this, oracleId, queryId),
112
- /**
113
- * @deprecated use TxBuilderHelper.decode instead
114
- * @param data
115
- * @returns {Buffer}
116
- */
117
- decode: (data) => decode(data)
118
- }
119
- }
120
-
121
- /**
122
- * Poll for oracle query response
123
- * @alias module:@aeternity/aepp-sdk/es/ae/oracle
124
- * @instance
125
- * @function
126
- * @category async
127
- * @param {String} oracleId Oracle public key
128
- * @param {String} queryId Oracle Query id
129
- * @param {Object} [options] Options object
130
- * @param {Object} [options.attempts] Poll attempt's(default: 20)
131
- * @param {Object} [options.interval] Poll interval(default: 5000)
132
- * @return {Promise<Object>} OracleQuery object
133
- */
134
- export async function pollForQueryResponse (
135
- oracleId,
136
- queryId,
137
- { attempts = 20, interval = this._getPollInterval('microblock') } = {}
138
- ) {
139
- for (let i = 0; i < attempts; i++) {
140
- if (i) await pause(interval)
141
- const { response } = await this.api.getOracleQueryByPubkeyAndQueryId(oracleId, queryId)
142
- const responseBuffer = decode(response, 'or')
143
- if (responseBuffer.length) {
144
- return String(responseBuffer)
145
- }
146
- }
147
- throw new RequestTimedOutError((attempts - 1) * interval)
148
- }
149
-
150
- /**
151
- * Register oracle
152
- * @alias module:@aeternity/aepp-sdk/es/ae/oracle
153
- * @instance
154
- * @function
155
- * @category async
156
- * @param {String} queryFormat Format of query
157
- * @param {String} responseFormat Format of query response
158
- * @param {Object} [options={}] Options
159
- * @param {String|Number} [options.queryFee] Oracle query Fee
160
- * @param {Object} [options.oracleTtl] OracleTtl object {type: 'delta|block', value: 'number'}
161
- * @param {Number} [options.abiVersion] Always 0 (do not use virtual machine)
162
- * @param {Number|String} [options.fee] Transaction fee
163
- * @param {Number|String} [options.ttl] Transaction time to leave
164
- * @return {Promise<Object>} Oracle object
165
- */
166
- async function registerOracle (queryFormat, responseFormat, options = {}) {
167
- const opt = { ...this.Ae.defaults, ...options } // Preset VmVersion for oracle
168
- const accountId = await this.address(opt)
169
-
170
- const oracleRegisterTx = await this.oracleRegisterTx({
171
- ...opt,
172
- accountId,
173
- queryFormat,
174
- responseFormat
175
- })
176
- return {
177
- ...await this.send(oracleRegisterTx, opt),
178
- ...await this.getOracleObject(`ok_${accountId.slice(3)}`)
179
- }
180
- }
181
-
182
- /**
183
- * Post query to oracle
184
- * @alias module:@aeternity/aepp-sdk/es/ae/oracle
185
- * @instance
186
- * @function
187
- * @category async
188
- * @param {String} oracleId Oracle public key
189
- * @param {String} query Oracle query object
190
- * @param {Object} [options={}]
191
- * @param {String|Number} [options.queryTtl] queryTtl Oracle query time to leave
192
- * @param {String|Number} [options.responseTtl] queryFee Oracle query response time to leave
193
- * @param {String|Number} [options.queryFee] queryFee Oracle query fee
194
- * @param {Number} [options.fee] fee Transaction fee
195
- * @param {Number} [options.ttl] Transaction time to leave
196
- * @return {Promise<Object>} Query object
197
- */
198
- async function postQueryToOracle (oracleId, query, options = {}) {
199
- const queryFee = options.queryFee || (await this.api.getOracleByPubkey(oracleId)).queryFee
200
- const opt = { ...this.Ae.defaults, queryFee, ...options }
201
- const senderId = await this.address(opt)
202
-
203
- const oracleRegisterTx = await this.oraclePostQueryTx({
204
- ...opt,
205
- oracleId,
206
- senderId,
207
- query
208
- })
209
- const queryId = oracleQueryId(senderId, unpackTx(oracleRegisterTx).tx.nonce, oracleId)
210
- return {
211
- ...await this.send(oracleRegisterTx, opt),
212
- ...await this.getQueryObject(oracleId, queryId)
213
- }
214
- }
215
-
216
- /**
217
- * Extend oracle ttl
218
- * @alias module:@aeternity/aepp-sdk/es/ae/oracle
219
- * @instance
220
- * @function
221
- * @category async
222
- * @param {String} oracleId Oracle public key
223
- * @param {String} oracleTtl Oracle time to leave for extend
224
- * @param {Object} [options={}]
225
- * @param {Number} [options.fee] fee Transaction fee
226
- * @param {Number} [options.ttl] Transaction time to leave
227
- * @return {Promise<Object>} Oracle object
228
- */
229
- async function extendOracleTtl (oracleId, oracleTtl, options = {}) {
230
- const opt = { ...this.Ae.defaults, ...options }
231
- const callerId = await this.address(opt)
232
-
233
- const oracleExtendTx = await this.oracleExtendTx({
234
- ...opt,
235
- oracleId,
236
- callerId,
237
- oracleTtl
238
- })
239
- return {
240
- ...await this.send(oracleExtendTx, opt),
241
- ...await this.getOracleObject(oracleId)
242
- }
243
- }
244
-
245
- /**
246
- * Extend oracle ttl
247
- * @alias module:@aeternity/aepp-sdk/es/ae/oracle
248
- * @instance
249
- * @function
250
- * @category async
251
- * @param {String} oracleId Oracle public key
252
- * @param {String} queryId Oracle query id
253
- * @param {String} response Oracle query response
254
- * @param {Object} [options={}]
255
- * @param {Number} [options.responseTtl] responseTtl Query response time to leave
256
- * @param {Number} [options.fee] Transaction fee
257
- * @param {Number} [options.ttl] Transaction time to leave
258
- * @return {Promise<Object>} Oracle object
259
- */
260
- async function respondToQuery (oracleId, queryId, response, options = {}) {
261
- const opt = { ...this.Ae.defaults, ...options }
262
- const callerId = await this.address(opt)
263
-
264
- const oracleRespondTx = await this.oracleRespondTx({
265
- ...opt,
266
- oracleId,
267
- queryId,
268
- callerId,
269
- response
270
- })
271
- return {
272
- ...await this.send(oracleRespondTx, opt),
273
- ...await this.getOracleObject(oracleId)
274
- }
275
- }
276
-
277
- /**
278
- * Oracle Stamp
279
- *
280
- * Oracle provides oracle-system related methods atop
281
- * {@link module:@aeternity/aepp-sdk/es/ae--Ae} clients.
282
- * @function
283
- * @alias module:@aeternity/aepp-sdk/es/ae/oracle
284
- * @rtype Stamp
285
- * @param {Object} [options={}] - Initializer object
286
- * @return {Object} Oracle instance
287
- */
288
- const Oracle = Ae.compose({
289
- methods: {
290
- registerOracle,
291
- respondToQuery,
292
- extendOracleTtl,
293
- postQueryToOracle,
294
- pollForQueryResponse,
295
- pollForQueries,
296
- getOracleObject,
297
- getQueryObject
298
- },
299
- deepProps: {
300
- Ae: {
301
- defaults: {
302
- queryFee: QUERY_FEE,
303
- oracleTtl: ORACLE_TTL,
304
- queryTtl: QUERY_TTL,
305
- responseTtl: RESPONSE_TTL
306
- }
307
- }
308
- }
309
- })
310
-
311
- export default Oracle
@@ -1,47 +0,0 @@
1
- /*
2
- * ISC License (ISC)
3
- * Copyright (c) 2018 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
- /**
19
- * Universal module
20
- * @module @aeternity/aepp-sdk/es/ae/universal
21
- * @export Universal
22
- * @example import { Universal } from '@aeternity/aepp-sdk'
23
- */
24
-
25
- import Ae from './'
26
- import Chain from '../chain/node'
27
- import Aens from './aens'
28
- import Transaction from '../tx/tx'
29
- import Oracle from './oracle'
30
- import GeneralizedAccount from '../contract/ga'
31
- import AccountMultiple from '../account/multiple'
32
- import Contract from './contract'
33
-
34
- /**
35
- * Universal Stamp
36
- *
37
- * Universal provides Ae base functionality with Contract and Aens
38
- * {@link module:@aeternity/aepp-sdk/es/ae--Ae} clients.
39
- * @function
40
- * @alias module:@aeternity/aepp-sdk/es/ae/universal
41
- * @rtype Stamp
42
- * @param {Object} [options={}] - Initializer object
43
- * @return {Object} Universal instance
44
- */
45
- export default Ae.compose(
46
- AccountMultiple, Chain, Transaction, Aens, Contract, Oracle, GeneralizedAccount
47
- )