@aeternity/aepp-sdk 13.0.0-alpha.1 → 13.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 (394) hide show
  1. package/README.md +1 -1
  2. package/bin/aesophia_cli +0 -0
  3. package/dist/aepp-sdk.browser-script.js +1 -1
  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 +1833 -1543
  8. package/dist/aepp-sdk.js.map +1 -1
  9. package/es/AeSdk.mjs.map +1 -1
  10. package/es/AeSdkAepp.d.ts +5 -4
  11. package/es/AeSdkAepp.mjs +13 -17
  12. package/es/AeSdkAepp.mjs.map +1 -1
  13. package/es/AeSdkBase.mjs.map +1 -1
  14. package/es/AeSdkMethods.d.ts +11 -12
  15. package/es/AeSdkMethods.mjs +6 -8
  16. package/es/AeSdkMethods.mjs.map +1 -1
  17. package/es/AeSdkWallet.mjs +1 -1
  18. package/es/AeSdkWallet.mjs.map +1 -1
  19. package/es/Node.d.ts +5 -1
  20. package/es/Node.mjs +11 -5
  21. package/es/Node.mjs.map +1 -1
  22. package/es/account/Base.d.ts +11 -6
  23. package/es/account/Base.mjs +0 -17
  24. package/es/account/Base.mjs.map +1 -1
  25. package/es/account/Generalized.mjs +12 -25
  26. package/es/account/Generalized.mjs.map +1 -1
  27. package/es/account/Ledger.mjs.map +1 -1
  28. package/es/account/LedgerFactory.mjs.map +1 -1
  29. package/es/account/Memory.d.ts +2 -1
  30. package/es/account/Memory.mjs +9 -21
  31. package/es/account/Memory.mjs.map +1 -1
  32. package/es/account/Rpc.mjs.map +1 -1
  33. package/es/aens.d.ts +12 -14
  34. package/es/aens.mjs +17 -31
  35. package/es/aens.mjs.map +1 -1
  36. package/es/aepp-wallet-communication/connection/Browser.mjs +0 -16
  37. package/es/aepp-wallet-communication/connection/Browser.mjs.map +1 -1
  38. package/es/aepp-wallet-communication/connection/BrowserRuntime.mjs +0 -16
  39. package/es/aepp-wallet-communication/connection/BrowserRuntime.mjs.map +1 -1
  40. package/es/aepp-wallet-communication/connection/BrowserWindowMessage.mjs +0 -16
  41. package/es/aepp-wallet-communication/connection/BrowserWindowMessage.mjs.map +1 -1
  42. package/es/aepp-wallet-communication/connection-proxy.mjs +0 -17
  43. package/es/aepp-wallet-communication/connection-proxy.mjs.map +1 -1
  44. package/es/aepp-wallet-communication/rpc/RpcClient.mjs +4 -5
  45. package/es/aepp-wallet-communication/rpc/RpcClient.mjs.map +1 -1
  46. package/es/aepp-wallet-communication/rpc/types.d.ts +6 -2
  47. package/es/aepp-wallet-communication/rpc/types.mjs.map +1 -1
  48. package/es/aepp-wallet-communication/schema.mjs.map +1 -1
  49. package/es/aepp-wallet-communication/wallet-detector.mjs +0 -16
  50. package/es/aepp-wallet-communication/wallet-detector.mjs.map +1 -1
  51. package/es/apis/compiler/compiler.d.ts +1 -1
  52. package/es/apis/compiler/compiler.mjs +4 -20
  53. package/es/apis/compiler/compiler.mjs.map +1 -1
  54. package/es/apis/compiler/models/index.d.ts +3 -2
  55. package/es/apis/compiler/models/index.mjs.map +1 -1
  56. package/es/apis/compiler/models/mappers.d.ts +1 -1
  57. package/es/apis/compiler/models/mappers.mjs +19 -2
  58. package/es/apis/compiler/models/mappers.mjs.map +1 -1
  59. package/es/apis/node/models/index.d.ts +15 -15
  60. package/es/apis/node/models/index.mjs.map +1 -1
  61. package/es/apis/node/models/mappers.d.ts +1 -1
  62. package/es/apis/node/models/mappers.mjs +2 -1
  63. package/es/apis/node/models/mappers.mjs.map +1 -1
  64. package/es/apis/node/models/parameters.d.ts +2 -2
  65. package/es/apis/node/models/parameters.mjs +2 -2
  66. package/es/apis/node/models/parameters.mjs.map +1 -1
  67. package/es/apis/node/node.mjs +3 -19
  68. package/es/apis/node/node.mjs.map +1 -1
  69. package/es/chain.d.ts +8 -8
  70. package/es/chain.mjs +20 -23
  71. package/es/chain.mjs.map +1 -1
  72. package/es/channel/Base.d.ts +25 -12
  73. package/es/channel/Base.mjs +23 -26
  74. package/es/channel/Base.mjs.map +1 -1
  75. package/es/channel/Contract.mjs +8 -21
  76. package/es/channel/Contract.mjs.map +1 -1
  77. package/es/channel/Spend.d.ts +4 -2
  78. package/es/channel/Spend.mjs +0 -16
  79. package/es/channel/Spend.mjs.map +1 -1
  80. package/es/channel/handlers.mjs +6 -18
  81. package/es/channel/handlers.mjs.map +1 -1
  82. package/es/channel/internal.d.ts +19 -2
  83. package/es/channel/internal.mjs +19 -19
  84. package/es/channel/internal.mjs.map +1 -1
  85. package/es/contract/Contract.d.ts +30 -85
  86. package/es/contract/Contract.mjs +197 -215
  87. package/es/contract/Contract.mjs.map +1 -1
  88. package/es/contract/compiler/Base.d.ts +10 -14
  89. package/es/contract/compiler/Base.mjs.map +1 -1
  90. package/es/contract/compiler/Cli.mjs +5 -11
  91. package/es/contract/compiler/Cli.mjs.map +1 -1
  92. package/es/contract/compiler/Http.mjs +6 -30
  93. package/es/contract/compiler/Http.mjs.map +1 -1
  94. package/es/contract/compiler/HttpNode.mjs.map +1 -1
  95. package/es/contract/compiler/getFileSystem.mjs.map +1 -1
  96. package/es/contract/delegation-signature.d.ts +43 -0
  97. package/es/contract/delegation-signature.mjs +45 -0
  98. package/es/contract/delegation-signature.mjs.map +1 -0
  99. package/es/contract/ga.d.ts +23 -7
  100. package/es/contract/ga.mjs +52 -27
  101. package/es/contract/ga.mjs.map +1 -1
  102. package/es/index-browser.d.ts +5 -4
  103. package/es/index-browser.mjs +7 -21
  104. package/es/index-browser.mjs.map +1 -1
  105. package/es/oracle.d.ts +12 -17
  106. package/es/oracle.mjs +28 -48
  107. package/es/oracle.mjs.map +1 -1
  108. package/es/spend.d.ts +19 -27
  109. package/es/spend.mjs +20 -43
  110. package/es/spend.mjs.map +1 -1
  111. package/es/tx/builder/SchemaTypes.d.ts +37 -0
  112. package/es/tx/builder/SchemaTypes.mjs +2 -0
  113. package/es/tx/builder/SchemaTypes.mjs.map +1 -0
  114. package/es/tx/builder/constants.d.ts +4 -2
  115. package/es/tx/builder/constants.mjs +2 -0
  116. package/es/tx/builder/constants.mjs.map +1 -1
  117. package/es/tx/builder/field-types/abi-version.d.ts +11 -2
  118. package/es/tx/builder/field-types/abi-version.mjs +24 -4
  119. package/es/tx/builder/field-types/abi-version.mjs.map +1 -1
  120. package/es/tx/builder/field-types/address.mjs.map +1 -1
  121. package/es/tx/builder/field-types/array.d.ts +1 -1
  122. package/es/tx/builder/field-types/array.mjs.map +1 -1
  123. package/es/tx/builder/field-types/boolean.mjs.map +1 -1
  124. package/es/tx/builder/field-types/coin-amount.d.ts +3 -4
  125. package/es/tx/builder/field-types/coin-amount.mjs +4 -5
  126. package/es/tx/builder/field-types/coin-amount.mjs.map +1 -1
  127. package/es/tx/builder/field-types/ct-version.d.ts +22 -3
  128. package/es/tx/builder/field-types/ct-version.mjs +32 -4
  129. package/es/tx/builder/field-types/ct-version.mjs.map +1 -1
  130. package/es/tx/builder/field-types/deposit.d.ts +2 -1
  131. package/es/tx/builder/field-types/deposit.mjs +3 -2
  132. package/es/tx/builder/field-types/deposit.mjs.map +1 -1
  133. package/es/tx/builder/field-types/encoded.d.ts +1 -1
  134. package/es/tx/builder/field-types/encoded.mjs.map +1 -1
  135. package/es/tx/builder/field-types/entry.mjs +3 -0
  136. package/es/tx/builder/field-types/entry.mjs.map +1 -1
  137. package/es/tx/builder/field-types/enumeration.mjs.map +1 -1
  138. package/es/tx/builder/field-types/fee.d.ts +3 -1
  139. package/es/tx/builder/field-types/fee.mjs +5 -1
  140. package/es/tx/builder/field-types/fee.mjs.map +1 -1
  141. package/es/tx/builder/field-types/field.mjs.map +1 -1
  142. package/es/tx/builder/field-types/gas-limit.d.ts +3 -2
  143. package/es/tx/builder/field-types/gas-limit.mjs +4 -2
  144. package/es/tx/builder/field-types/gas-limit.mjs.map +1 -1
  145. package/es/tx/builder/field-types/gas-price.d.ts +3 -1
  146. package/es/tx/builder/field-types/gas-price.mjs.map +1 -1
  147. package/es/tx/builder/field-types/index.d.ts +52 -13
  148. package/es/tx/builder/field-types/index.mjs +10 -2
  149. package/es/tx/builder/field-types/index.mjs.map +1 -1
  150. package/es/tx/builder/field-types/map.d.ts +13 -0
  151. package/es/tx/builder/field-types/map.mjs +49 -0
  152. package/es/tx/builder/field-types/map.mjs.map +1 -0
  153. package/es/tx/builder/field-types/mptree.d.ts +7 -2
  154. package/es/tx/builder/field-types/mptree.mjs +5 -7
  155. package/es/tx/builder/field-types/mptree.mjs.map +1 -1
  156. package/es/tx/builder/field-types/name-fee.d.ts +1 -1
  157. package/es/tx/builder/field-types/name-fee.mjs +2 -2
  158. package/es/tx/builder/field-types/name-fee.mjs.map +1 -1
  159. package/es/tx/builder/field-types/name-id.mjs.map +1 -1
  160. package/es/tx/builder/field-types/name.mjs.map +1 -1
  161. package/es/tx/builder/field-types/nonce.d.ts +14 -0
  162. package/es/tx/builder/field-types/nonce.mjs +29 -0
  163. package/es/tx/builder/field-types/nonce.mjs.map +1 -0
  164. package/es/tx/builder/field-types/pointers.mjs.map +1 -1
  165. package/es/tx/builder/field-types/raw.mjs.map +1 -1
  166. package/es/tx/builder/field-types/short-u-int-const.d.ts +4 -2
  167. package/es/tx/builder/field-types/short-u-int-const.mjs +12 -8
  168. package/es/tx/builder/field-types/short-u-int-const.mjs.map +1 -1
  169. package/es/tx/builder/field-types/short-u-int.mjs.map +1 -1
  170. package/es/tx/builder/field-types/string.mjs.map +1 -1
  171. package/es/tx/builder/field-types/ttl.d.ts +11 -0
  172. package/es/tx/builder/field-types/ttl.mjs +21 -0
  173. package/es/tx/builder/field-types/ttl.mjs.map +1 -0
  174. package/es/tx/builder/field-types/u-int.mjs.map +1 -1
  175. package/es/tx/builder/field-types/wrapped.d.ts +14 -0
  176. package/es/tx/builder/field-types/wrapped.mjs +22 -0
  177. package/es/tx/builder/field-types/wrapped.mjs.map +1 -0
  178. package/es/tx/builder/helpers.mjs.map +1 -1
  179. package/es/tx/builder/index.d.ts +20 -20
  180. package/es/tx/builder/index.mjs +54 -64
  181. package/es/tx/builder/index.mjs.map +1 -1
  182. package/es/tx/builder/schema.d.ts +2735 -2865
  183. package/es/tx/builder/schema.generated.d.ts +2011 -0
  184. package/es/tx/builder/schema.generated.mjs +2 -0
  185. package/es/tx/builder/schema.generated.mjs.map +1 -0
  186. package/es/tx/builder/schema.mjs +459 -155
  187. package/es/tx/builder/schema.mjs.map +1 -1
  188. package/es/tx/execution-cost.d.ts +35 -0
  189. package/es/tx/execution-cost.mjs +123 -0
  190. package/es/tx/execution-cost.mjs.map +1 -0
  191. package/es/tx/transaction-signer.d.ts +6 -0
  192. package/es/tx/transaction-signer.mjs +27 -0
  193. package/es/tx/transaction-signer.mjs.map +1 -0
  194. package/es/tx/validator.mjs +60 -109
  195. package/es/tx/validator.mjs.map +1 -1
  196. package/es/utils/amount-formatter.mjs +0 -16
  197. package/es/utils/amount-formatter.mjs.map +1 -1
  198. package/es/utils/autorest.d.ts +3 -2
  199. package/es/utils/autorest.mjs +43 -11
  200. package/es/utils/autorest.mjs.map +1 -1
  201. package/es/utils/bytes.mjs +0 -16
  202. package/es/utils/bytes.mjs.map +1 -1
  203. package/es/utils/crypto.mjs +0 -16
  204. package/es/utils/crypto.mjs.map +1 -1
  205. package/es/utils/encoder.mjs.map +1 -1
  206. package/es/utils/errors.d.ts +14 -31
  207. package/es/utils/errors.mjs +3 -33
  208. package/es/utils/errors.mjs.map +1 -1
  209. package/es/utils/hd-wallet.mjs.map +1 -1
  210. package/es/utils/json-big.mjs.map +1 -1
  211. package/es/utils/keystore.mjs.map +1 -1
  212. package/es/utils/other.d.ts +1 -1
  213. package/es/utils/other.mjs.map +1 -1
  214. package/es/utils/semver-satisfies.mjs.map +1 -1
  215. package/es/utils/string.mjs +0 -17
  216. package/es/utils/string.mjs.map +1 -1
  217. package/package.json +34 -30
  218. package/src/AeSdkAepp.ts +16 -14
  219. package/src/AeSdkMethods.ts +11 -16
  220. package/src/AeSdkWallet.ts +1 -1
  221. package/src/Node.ts +17 -6
  222. package/src/account/Base.ts +11 -22
  223. package/src/account/Generalized.ts +9 -24
  224. package/src/account/Memory.ts +14 -21
  225. package/src/aens.ts +31 -47
  226. package/src/aepp-wallet-communication/connection/Browser.ts +0 -17
  227. package/src/aepp-wallet-communication/connection/BrowserRuntime.ts +0 -17
  228. package/src/aepp-wallet-communication/connection/BrowserWindowMessage.ts +0 -17
  229. package/src/aepp-wallet-communication/connection-proxy.ts +0 -17
  230. package/src/aepp-wallet-communication/rpc/types.ts +7 -2
  231. package/src/aepp-wallet-communication/wallet-detector.ts +0 -17
  232. package/src/apis/compiler/compiler.ts +3 -27
  233. package/src/apis/compiler/models/index.ts +3 -2
  234. package/src/apis/compiler/models/mappers.ts +15 -2
  235. package/src/apis/node/models/index.ts +16 -15
  236. package/src/apis/node/models/mappers.ts +2 -1
  237. package/src/apis/node/models/parameters.ts +2 -2
  238. package/src/apis/node/node.ts +3 -27
  239. package/src/chain.ts +29 -28
  240. package/src/channel/Base.ts +33 -33
  241. package/src/channel/Contract.ts +8 -23
  242. package/src/channel/Spend.ts +2 -17
  243. package/src/channel/handlers.ts +5 -18
  244. package/src/channel/internal.ts +40 -22
  245. package/src/contract/Contract.ts +161 -170
  246. package/src/contract/compiler/Base.ts +10 -14
  247. package/src/contract/compiler/Cli.ts +5 -11
  248. package/src/contract/compiler/Http.ts +6 -25
  249. package/src/contract/delegation-signature.ts +56 -0
  250. package/src/contract/ga.ts +53 -32
  251. package/src/index-browser.ts +15 -21
  252. package/src/oracle.ts +46 -56
  253. package/src/spend.ts +33 -67
  254. package/src/tx/builder/SchemaTypes.ts +79 -0
  255. package/src/tx/builder/constants.ts +2 -0
  256. package/src/tx/builder/field-types/abi-version.ts +29 -6
  257. package/src/tx/builder/field-types/array.ts +1 -1
  258. package/src/tx/builder/field-types/coin-amount.ts +6 -4
  259. package/src/tx/builder/field-types/ct-version.ts +37 -4
  260. package/src/tx/builder/field-types/deposit.ts +3 -1
  261. package/src/tx/builder/field-types/encoded.ts +1 -1
  262. package/src/tx/builder/field-types/entry.ts +8 -3
  263. package/src/tx/builder/field-types/fee.ts +6 -4
  264. package/src/tx/builder/field-types/gas-limit.ts +2 -2
  265. package/src/tx/builder/field-types/index.ts +15 -1
  266. package/src/tx/builder/field-types/map.ts +45 -0
  267. package/src/tx/builder/field-types/mptree.ts +4 -3
  268. package/src/tx/builder/field-types/name-fee.ts +2 -1
  269. package/src/tx/builder/field-types/nonce.ts +40 -0
  270. package/src/tx/builder/field-types/short-u-int-const.ts +18 -8
  271. package/src/tx/builder/field-types/ttl.ts +24 -0
  272. package/src/tx/builder/field-types/wrapped.ts +32 -0
  273. package/src/tx/builder/index.ts +57 -71
  274. package/src/tx/builder/schema.generated.ts +2013 -0
  275. package/src/tx/builder/schema.ts +544 -624
  276. package/src/tx/execution-cost.ts +146 -0
  277. package/src/tx/transaction-signer.ts +27 -0
  278. package/src/tx/validator.ts +60 -91
  279. package/src/utils/amount-formatter.ts +0 -16
  280. package/src/utils/autorest.ts +52 -11
  281. package/src/utils/bytes.ts +0 -16
  282. package/src/utils/crypto.ts +0 -16
  283. package/src/utils/errors.ts +16 -45
  284. package/src/utils/string.ts +0 -17
  285. package/types-legacy/ts4.2/AeSdkAepp.d.ts +5 -4
  286. package/types-legacy/ts4.2/AeSdkMethods.d.ts +11 -12
  287. package/types-legacy/ts4.2/Node.d.ts +5 -1
  288. package/types-legacy/ts4.2/account/Base.d.ts +11 -6
  289. package/types-legacy/ts4.2/account/Memory.d.ts +2 -1
  290. package/types-legacy/ts4.2/aens.d.ts +12 -14
  291. package/types-legacy/ts4.2/aepp-wallet-communication/rpc/types.d.ts +6 -2
  292. package/types-legacy/ts4.2/apis/compiler/compiler.d.ts +1 -1
  293. package/types-legacy/ts4.2/apis/compiler/models/index.d.ts +3 -2
  294. package/types-legacy/ts4.2/apis/compiler/models/mappers.d.ts +1 -1
  295. package/types-legacy/ts4.2/apis/node/models/index.d.ts +15 -15
  296. package/types-legacy/ts4.2/apis/node/models/mappers.d.ts +1 -1
  297. package/types-legacy/ts4.2/apis/node/models/parameters.d.ts +2 -2
  298. package/types-legacy/ts4.2/chain.d.ts +8 -8
  299. package/types-legacy/ts4.2/channel/Base.d.ts +25 -12
  300. package/types-legacy/ts4.2/channel/Spend.d.ts +4 -2
  301. package/types-legacy/ts4.2/channel/internal.d.ts +22 -2
  302. package/types-legacy/ts4.2/contract/Contract.d.ts +29 -84
  303. package/types-legacy/ts4.2/contract/compiler/Base.d.ts +10 -14
  304. package/types-legacy/ts4.2/contract/delegation-signature.d.ts +43 -0
  305. package/types-legacy/ts4.2/contract/ga.d.ts +23 -7
  306. package/types-legacy/ts4.2/index-browser.d.ts +5 -4
  307. package/types-legacy/ts4.2/oracle.d.ts +12 -17
  308. package/types-legacy/ts4.2/spend.d.ts +19 -27
  309. package/types-legacy/ts4.2/tx/builder/SchemaTypes.d.ts +37 -0
  310. package/types-legacy/ts4.2/tx/builder/constants.d.ts +4 -2
  311. package/types-legacy/ts4.2/tx/builder/field-types/abi-version.d.ts +11 -2
  312. package/types-legacy/ts4.2/tx/builder/field-types/array.d.ts +1 -1
  313. package/types-legacy/ts4.2/tx/builder/field-types/coin-amount.d.ts +3 -4
  314. package/types-legacy/ts4.2/tx/builder/field-types/ct-version.d.ts +33 -3
  315. package/types-legacy/ts4.2/tx/builder/field-types/deposit.d.ts +2 -1
  316. package/types-legacy/ts4.2/tx/builder/field-types/encoded.d.ts +1 -1
  317. package/types-legacy/ts4.2/tx/builder/field-types/fee.d.ts +3 -1
  318. package/types-legacy/ts4.2/tx/builder/field-types/gas-limit.d.ts +3 -2
  319. package/types-legacy/ts4.2/tx/builder/field-types/gas-price.d.ts +3 -1
  320. package/types-legacy/ts4.2/tx/builder/field-types/index.d.ts +52 -13
  321. package/types-legacy/ts4.2/tx/builder/field-types/map.d.ts +13 -0
  322. package/types-legacy/ts4.2/tx/builder/field-types/mptree.d.ts +7 -2
  323. package/types-legacy/ts4.2/tx/builder/field-types/name-fee.d.ts +1 -1
  324. package/types-legacy/ts4.2/tx/builder/field-types/nonce.d.ts +14 -0
  325. package/types-legacy/ts4.2/tx/builder/field-types/short-u-int-const.d.ts +4 -2
  326. package/types-legacy/ts4.2/tx/builder/field-types/ttl.d.ts +11 -0
  327. package/types-legacy/ts4.2/tx/builder/field-types/wrapped.d.ts +14 -0
  328. package/types-legacy/ts4.2/tx/builder/index.d.ts +23 -20
  329. package/types-legacy/ts4.2/tx/builder/schema.d.ts +2962 -4629
  330. package/types-legacy/ts4.2/tx/builder/schema.generated.d.ts +2011 -0
  331. package/types-legacy/ts4.2/tx/execution-cost.d.ts +35 -0
  332. package/types-legacy/ts4.2/tx/transaction-signer.d.ts +6 -0
  333. package/types-legacy/ts4.2/utils/autorest.d.ts +3 -2
  334. package/types-legacy/ts4.2/utils/errors.d.ts +14 -31
  335. package/types-legacy/ts4.2/utils/other.d.ts +1 -1
  336. package/types-legacy/ts4.5/AeSdkAepp.d.ts +5 -4
  337. package/types-legacy/ts4.5/AeSdkMethods.d.ts +11 -12
  338. package/types-legacy/ts4.5/Node.d.ts +5 -1
  339. package/types-legacy/ts4.5/account/Base.d.ts +11 -6
  340. package/types-legacy/ts4.5/account/Memory.d.ts +2 -1
  341. package/types-legacy/ts4.5/aens.d.ts +12 -14
  342. package/types-legacy/ts4.5/aepp-wallet-communication/rpc/types.d.ts +6 -2
  343. package/types-legacy/ts4.5/apis/compiler/compiler.d.ts +1 -1
  344. package/types-legacy/ts4.5/apis/compiler/models/index.d.ts +3 -2
  345. package/types-legacy/ts4.5/apis/compiler/models/mappers.d.ts +1 -1
  346. package/types-legacy/ts4.5/apis/node/models/index.d.ts +15 -15
  347. package/types-legacy/ts4.5/apis/node/models/mappers.d.ts +1 -1
  348. package/types-legacy/ts4.5/apis/node/models/parameters.d.ts +2 -2
  349. package/types-legacy/ts4.5/chain.d.ts +8 -8
  350. package/types-legacy/ts4.5/channel/Base.d.ts +25 -12
  351. package/types-legacy/ts4.5/channel/Spend.d.ts +4 -2
  352. package/types-legacy/ts4.5/channel/internal.d.ts +22 -2
  353. package/types-legacy/ts4.5/contract/Contract.d.ts +29 -84
  354. package/types-legacy/ts4.5/contract/compiler/Base.d.ts +10 -14
  355. package/types-legacy/ts4.5/contract/delegation-signature.d.ts +43 -0
  356. package/types-legacy/ts4.5/contract/ga.d.ts +23 -7
  357. package/types-legacy/ts4.5/index-browser.d.ts +5 -4
  358. package/types-legacy/ts4.5/oracle.d.ts +12 -17
  359. package/types-legacy/ts4.5/spend.d.ts +19 -27
  360. package/types-legacy/ts4.5/tx/builder/SchemaTypes.d.ts +37 -0
  361. package/types-legacy/ts4.5/tx/builder/constants.d.ts +4 -2
  362. package/types-legacy/ts4.5/tx/builder/field-types/abi-version.d.ts +11 -2
  363. package/types-legacy/ts4.5/tx/builder/field-types/array.d.ts +1 -1
  364. package/types-legacy/ts4.5/tx/builder/field-types/coin-amount.d.ts +3 -4
  365. package/types-legacy/ts4.5/tx/builder/field-types/ct-version.d.ts +33 -3
  366. package/types-legacy/ts4.5/tx/builder/field-types/deposit.d.ts +2 -1
  367. package/types-legacy/ts4.5/tx/builder/field-types/encoded.d.ts +1 -1
  368. package/types-legacy/ts4.5/tx/builder/field-types/fee.d.ts +3 -1
  369. package/types-legacy/ts4.5/tx/builder/field-types/gas-limit.d.ts +3 -2
  370. package/types-legacy/ts4.5/tx/builder/field-types/gas-price.d.ts +3 -1
  371. package/types-legacy/ts4.5/tx/builder/field-types/index.d.ts +52 -13
  372. package/types-legacy/ts4.5/tx/builder/field-types/map.d.ts +13 -0
  373. package/types-legacy/ts4.5/tx/builder/field-types/mptree.d.ts +7 -2
  374. package/types-legacy/ts4.5/tx/builder/field-types/name-fee.d.ts +1 -1
  375. package/types-legacy/ts4.5/tx/builder/field-types/nonce.d.ts +14 -0
  376. package/types-legacy/ts4.5/tx/builder/field-types/short-u-int-const.d.ts +4 -2
  377. package/types-legacy/ts4.5/tx/builder/field-types/ttl.d.ts +11 -0
  378. package/types-legacy/ts4.5/tx/builder/field-types/wrapped.d.ts +14 -0
  379. package/types-legacy/ts4.5/tx/builder/index.d.ts +23 -20
  380. package/types-legacy/ts4.5/tx/builder/schema.d.ts +2962 -4629
  381. package/types-legacy/ts4.5/tx/builder/schema.generated.d.ts +2011 -0
  382. package/types-legacy/ts4.5/tx/execution-cost.d.ts +35 -0
  383. package/types-legacy/ts4.5/tx/transaction-signer.d.ts +6 -0
  384. package/types-legacy/ts4.5/utils/autorest.d.ts +3 -2
  385. package/types-legacy/ts4.5/utils/errors.d.ts +14 -31
  386. package/types-legacy/ts4.5/utils/other.d.ts +1 -1
  387. package/es/tx/index.d.ts +0 -19
  388. package/es/tx/index.mjs +0 -115
  389. package/es/tx/index.mjs.map +0 -1
  390. package/src/apis/compiler/code-model-v4.yaml +0 -2442
  391. package/src/apis/node/code-model-v4.yaml +0 -10080
  392. package/src/tx/index.ts +0 -129
  393. package/types-legacy/ts4.2/tx/index.d.ts +0 -19
  394. package/types-legacy/ts4.5/tx/index.d.ts +0 -19
@@ -1,19 +1,3 @@
1
- /*
2
- * ISC License (ISC)
3
- * Copyright (c) 2022 aeternity developers
4
- *
5
- * Permission to use, copy, modify, and/or distribute this software for any
6
- * purpose with or without fee is hereby granted, provided that the above
7
- * copyright notice and this permission notice appear in all copies.
8
- *
9
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
10
- * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
11
- * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
12
- * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13
- * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
14
- * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15
- * PERFORMANCE OF THIS SOFTWARE.
16
- */
17
1
  import { RestError } from '@azure/core-rest-pipeline';
18
2
  import {
19
3
  Compiler as CompilerApi,
@@ -60,7 +44,7 @@ export default class CompilerHttp extends CompilerBase {
60
44
  }
61
45
  if (Array.isArray(body)) {
62
46
  message += `\n${body
63
- .map((e) => `${e.type}:${e.pos.line}:${e.pos.col}: ${e.message}${e.context != null ? `(${e.context})` : ''}`)
47
+ .map((e) => `${e.type}:${e.pos.line}:${e.pos.col}: ${e.message}${e.context != null ? ` (${e.context})` : ''}`)
64
48
  .join('\n')}`;
65
49
  }
66
50
  return message;
@@ -68,9 +52,10 @@ export default class CompilerHttp extends CompilerBase {
68
52
  ],
69
53
  });
70
54
  if (ignoreVersion !== true) {
71
- const versionPromise = this.api.apiVersion().then(({ apiVersion }) => apiVersion);
55
+ const versionPromise = this.api.apiVersion()
56
+ .then(({ apiVersion }) => apiVersion, (error) => error);
72
57
  this.api.pipeline.addPolicy(
73
- genVersionCheckPolicy('compiler', '/api-version', versionPromise, '7.0.1', '8.0.0'),
58
+ genVersionCheckPolicy('compiler', '/api-version', versionPromise, '7.1.1', '8.0.0'),
74
59
  );
75
60
  }
76
61
  }
@@ -80,13 +65,9 @@ export default class CompilerHttp extends CompilerBase {
80
65
  fileSystem?: Record<string, string>,
81
66
  ): Promise<{ bytecode: Encoded.ContractBytearray; aci: Aci }> {
82
67
  try {
83
- const [bytecode, aci] = await Promise.all([
84
- this.api.compileContract({ code: sourceCode, options: { fileSystem } })
85
- .then((res) => res.bytecode as Encoded.ContractBytearray),
86
- this.api.generateACI({ code: sourceCode, options: { fileSystem } }),
87
- ]);
68
+ const res = await this.api.compileContract({ code: sourceCode, options: { fileSystem } });
88
69
  // TODO: should be fixed when the compiledAci interface gets updated
89
- return { bytecode, aci: aci as Aci };
70
+ return res as { bytecode: Encoded.ContractBytearray; aci: Aci };
90
71
  } catch (error) {
91
72
  if (error instanceof RestError && error.statusCode === 400) {
92
73
  throw new CompilerError(error.message.replace(/^aci error:/, 'compile error:'));
@@ -0,0 +1,56 @@
1
+ import { decode, Encoded } from '../utils/encoder';
2
+ import { AensName } from '../tx/builder/constants';
3
+ import AccountBase from '../account/Base';
4
+ import { concatBuffers } from '../utils/other';
5
+ import { isNameValid, produceNameId } from '../tx/builder/helpers';
6
+ import Node from '../Node';
7
+
8
+ /**
9
+ * Helper to generate a signature to delegate
10
+ * - pre-claim/claim/transfer/revoke of a name to a contract.
11
+ * - register/extend/respond of an Oracle to a contract.
12
+ * @category contract
13
+ * @param contractAddress - Address of contract to delegate access
14
+ * @param ids - The list of id's to prepend
15
+ * @param options - Options
16
+ * @param options.omitAddress - Prepend delegation signature with an account address
17
+ * @param options.onAccount - Account to use
18
+ * @param options.onNode - Node to use
19
+ * @returns Signature
20
+ * @example
21
+ * ```js
22
+ * const aeSdk = new AeSdk({ ... })
23
+ * const contractAddress = 'ct_asd2ks...'
24
+ * const aensName = 'example.chain'
25
+ * const onAccount = new MemoryAccount(...) // Sign with a specific account
26
+ * // Preclaim signature
27
+ * const preclaimSig = await aeSdk.createDelegationSignature(contractAddress, [], { onAccount })
28
+ * // Claim, transfer and revoke signature
29
+ * const aensDelegationSig = await aeSdk
30
+ * .createDelegationSignature(contractAddress, [aensName], { onAccount })
31
+ *
32
+ * const oracleQueryId = 'oq_...'
33
+ * const onAccount = new MemoryAccount(...) // Sign with a specific account
34
+ * // Oracle register and extend signature
35
+ * const oracleDelegationSig = await aeSdk
36
+ * .createDelegationSignature(contractAddress, [], { onAccount })
37
+ * // Oracle respond signature
38
+ * const respondSig = await aeSdk
39
+ * .createDelegationSignature(contractAddress, [oracleQueryId], { onAccount, omitAddress: true })
40
+ * ```
41
+ */
42
+ export default async function createDelegationSignature(
43
+ contractAddress: Encoded.ContractAddress,
44
+ ids: Array<Encoded.Any | AensName>,
45
+ options: { omitAddress?: boolean; onAccount: AccountBase; onNode: Node },
46
+ ): Promise<Uint8Array> {
47
+ return options.onAccount.sign(
48
+ concatBuffers([
49
+ Buffer.from(await options.onNode.getNetworkId()),
50
+ ...options.omitAddress === true ? [] : [decode(options.onAccount.address)],
51
+ ...ids.map((e) => (isNameValid(e) ? produceNameId(e) : e)).map((e) => decode(e)),
52
+ decode(contractAddress),
53
+ ]),
54
+ options,
55
+ );
56
+ }
@@ -1,36 +1,21 @@
1
- /*
2
- * ISC License (ISC)
3
- * Copyright (c) 2022 aeternity developers
4
- *
5
- * Permission to use, copy, modify, and/or distribute this software for any
6
- * purpose with or without fee is hereby granted, provided that the above
7
- * copyright notice and this permission notice appear in all copies.
8
- *
9
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
10
- * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
11
- * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
12
- * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13
- * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
14
- * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15
- * PERFORMANCE OF THIS SOFTWARE.
16
- */
17
-
18
1
  /**
19
2
  * Generalized Account module - routines to use generalized account
20
3
  */
21
4
 
22
- import { Tag } from '../tx/builder/constants';
23
- import { buildContractIdByContractTx } from '../tx/builder';
24
- import { _buildTx, BuildTxOptions } from '../tx';
5
+ import { ConsensusProtocolVersion, Int, Tag } from '../tx/builder/constants';
6
+ import {
7
+ buildContractIdByContractTx, buildTx, buildTxAsync, BuildTxOptions, unpackTx,
8
+ } from '../tx/builder';
25
9
  import { hash } from '../utils/crypto';
26
- import { decode, Encoded } from '../utils/encoder';
27
- import { IllegalArgumentError } from '../utils/errors';
10
+ import {
11
+ decode, encode, Encoded, Encoding,
12
+ } from '../utils/encoder';
13
+ import { ArgumentError, IllegalArgumentError } from '../utils/errors';
28
14
  import { concatBuffers } from '../utils/other';
29
15
  import AccountBase from '../account/Base';
30
16
  import Contract from './Contract';
31
- import { send, SendOptions } from '../spend';
32
17
  import Node from '../Node';
33
- import { getAccount } from '../chain';
18
+ import { sendTransaction, SendTransactionOptions, getAccount } from '../chain';
34
19
  import CompilerBase from './compiler/Base';
35
20
 
36
21
  /**
@@ -63,8 +48,9 @@ export async function createGeneralizedAccount(
63
48
  onAccount, onCompiler, onNode, bytecode, aci, sourceCodePath, sourceCode, fileSystem,
64
49
  });
65
50
 
66
- const tx = await _buildTx(Tag.GaAttachTx, {
51
+ const tx = await buildTxAsync({
67
52
  ...options,
53
+ tag: Tag.GaAttachTx,
68
54
  onNode,
69
55
  code: await contract.$compile(),
70
56
  gasLimit: options.gasLimit ?? await contract._estimateGas('init', args, options),
@@ -73,7 +59,7 @@ export async function createGeneralizedAccount(
73
59
  authFun: hash(authFnName),
74
60
  });
75
61
  const contractId = buildContractIdByContractTx(tx);
76
- const { hash: transaction, rawTx } = await send(tx, {
62
+ const { hash: transaction, rawTx } = await sendTransaction(tx, {
77
63
  onNode, onAccount, onCompiler, ...options,
78
64
  });
79
65
 
@@ -87,7 +73,7 @@ export async function createGeneralizedAccount(
87
73
 
88
74
  interface CreateGeneralizedAccountOptions extends
89
75
  BuildTxOptions<Tag.GaAttachTx, 'authFun' | 'callData' | 'code' | 'ownerId' | 'gasLimit'>,
90
- SendOptions,
76
+ SendTransactionOptions,
91
77
  Pick<
92
78
  Parameters<typeof Contract.initialize>[0],
93
79
  'bytecode' | 'aci' | 'sourceCodePath' | 'sourceCode' | 'fileSystem'
@@ -99,18 +85,53 @@ interface CreateGeneralizedAccountOptions extends
99
85
  }
100
86
 
101
87
  /**
102
- * Build a transaction hash the same as `Auth.tx_hash`
88
+ * Build a transaction hash the same as `Auth.tx_hash` by GaMetaTx payload
103
89
  * @category contract
104
90
  * @param transaction - tx-encoded transaction
105
91
  * @param options - Options
92
+ * @param options.fee - GaMetaTx fee, required in Ceres
93
+ * @param options.gasPrice - GaMetaTx gasPrice, required in Ceres
106
94
  * @param options.onNode - Node to use
107
95
  * @returns Transaction hash
108
96
  */
109
97
  export async function buildAuthTxHash(
98
+ transaction: Encoded.Transaction,
99
+ { fee, gasPrice, onNode }: { fee?: Int; gasPrice?: Int; onNode: Node },
100
+ ): Promise<Buffer> {
101
+ const { nodeNetworkId, consensusProtocolVersion } = await onNode.getNodeInfo();
102
+ let payload = hash(concatBuffers([Buffer.from(nodeNetworkId), decode(transaction)]));
103
+ if (consensusProtocolVersion === ConsensusProtocolVersion.Ceres) {
104
+ if (fee == null) throw new ArgumentError('fee', 'provided (in Ceres)', fee);
105
+ if (gasPrice == null) throw new ArgumentError('gasPrice', 'provided (in Ceres)', gasPrice);
106
+ payload = hash(decode(buildTx({
107
+ tag: Tag.GaMetaTxAuthData,
108
+ fee,
109
+ gasPrice,
110
+ txHash: encode(payload, Encoding.TxHash),
111
+ })));
112
+ }
113
+ return payload;
114
+ }
115
+
116
+ /**
117
+ * Build a transaction hash the same as `Auth.tx_hash` by GaMetaTx
118
+ * @category contract
119
+ * @param transaction - tx-encoded signed GaMeta transaction
120
+ * @param options - Options
121
+ * @param options.onNode - Node to use
122
+ * @returns Transaction hash
123
+ */
124
+ export async function buildAuthTxHashByGaMetaTx(
110
125
  transaction: Encoded.Transaction,
111
126
  { onNode }: { onNode: Node },
112
- ): Promise<Uint8Array> {
113
- return new Uint8Array(hash(
114
- concatBuffers([Buffer.from(await onNode.getNetworkId()), decode(transaction)]),
115
- ));
127
+ ): Promise<Buffer> {
128
+ const txParams = unpackTx(transaction, Tag.SignedTx);
129
+ if (txParams.encodedTx.tag !== Tag.GaMetaTx) {
130
+ throw new ArgumentError('transaction', 'to include GaMetaTx', Tag[txParams.encodedTx.tag]);
131
+ }
132
+ return buildAuthTxHash(buildTx(txParams.encodedTx.tx.encodedTx), {
133
+ fee: txParams.encodedTx.fee,
134
+ gasPrice: txParams.encodedTx.gasPrice,
135
+ onNode,
136
+ });
116
137
  }
@@ -1,32 +1,26 @@
1
- /*
2
- * ISC License (ISC)
3
- * Copyright (c) 2022 aeternity developers
4
- *
5
- * Permission to use, copy, modify, and/or distribute this software for any
6
- * purpose with or without fee is hereby granted, provided that the above
7
- * copyright notice and this permission notice appear in all copies.
8
- *
9
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
10
- * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
11
- * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
12
- * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13
- * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
14
- * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15
- * PERFORMANCE OF THIS SOFTWARE.
16
- */
17
-
1
+ // TODO: avoid `export * from`
18
2
  export * from './chain';
19
3
  export * from './utils/crypto';
20
4
  export * from './utils/keystore';
21
5
  export * from './utils/bytes';
22
- export * from './tx';
23
- export * from './tx/builder';
6
+ export {
7
+ buildTx, buildTxAsync, buildTxHash, unpackTx, buildContractIdByContractTx,
8
+ } from './tx/builder';
24
9
  export * from './tx/builder/helpers';
25
10
  export * from './tx/builder/constants';
26
- export * from './tx/builder/schema';
11
+ // TODO: move to constants
12
+ export {
13
+ ORACLE_TTL_TYPES, ORACLE_TTL, QUERY_TTL, RESPONSE_TTL, DRY_RUN_ACCOUNT, CallReturnType,
14
+ } from './tx/builder/schema';
15
+ export {
16
+ getExecutionCost, getExecutionCostBySignedTx, getExecutionCostUsingNode,
17
+ } from './tx/execution-cost';
18
+ export { default as getTransactionSignerAddress } from './tx/transaction-signer';
27
19
  export * from './utils/amount-formatter';
28
20
  export * from './utils/hd-wallet';
29
- export { encode, decode, Encoding } from './utils/encoder';
21
+ export {
22
+ encode, decode, Encoding, Encoded,
23
+ } from './utils/encoder';
30
24
  export * from './aens';
31
25
  export { default as Contract } from './contract/Contract';
32
26
  export type { ContractMethodsBase } from './contract/Contract';
package/src/oracle.ts CHANGED
@@ -1,20 +1,3 @@
1
- /*
2
- * ISC License (ISC)
3
- * Copyright (c) 2022 aeternity developers
4
- *
5
- * Permission to use, copy, modify, and/or distribute this software for any
6
- * purpose with or without fee is hereby granted, provided that the above
7
- * copyright notice and this permission notice appear in all copies.
8
- *
9
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
10
- * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
11
- * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
12
- * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13
- * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
14
- * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15
- * PERFORMANCE OF THIS SOFTWARE.
16
- */
17
-
18
1
  /**
19
2
  * Oracle methods - routines to interact with the æternity oracle system
20
3
  *
@@ -23,15 +6,12 @@
23
6
  * repository.
24
7
  */
25
8
 
26
- import BigNumber from 'bignumber.js';
27
- import { send, SendOptions } from './spend';
28
9
  import { mapObject, pause } from './utils/other';
29
10
  import { oracleQueryId } from './tx/builder/helpers';
30
- import { unpackTx } from './tx/builder';
11
+ import { unpackTx, buildTxAsync, BuildTxOptions } from './tx/builder';
31
12
  import {
32
13
  ORACLE_TTL,
33
14
  ORACLE_TTL_TYPES,
34
- QUERY_FEE,
35
15
  QUERY_TTL,
36
16
  RESPONSE_TTL,
37
17
  } from './tx/builder/schema';
@@ -40,8 +20,9 @@ import { RequestTimedOutError } from './utils/errors';
40
20
  import {
41
21
  decode, encode, Encoded, Encoding,
42
22
  } from './utils/encoder';
43
- import { _getPollInterval, getHeight } from './chain';
44
- import { _buildTx, BuildTxOptions } from './tx';
23
+ import {
24
+ _getPollInterval, getHeight, sendTransaction, SendTransactionOptions,
25
+ } from './chain';
45
26
  import Node from './Node';
46
27
  import AccountBase from './account/Base';
47
28
 
@@ -59,7 +40,7 @@ type OracleQueries = Awaited<ReturnType<Node['getOracleQueriesByPubkey']>>['orac
59
40
  */
60
41
  export function pollForQueries(
61
42
  oracleId: Encoded.OracleAddress,
62
- onQuery: (queries: OracleQueries) => void,
43
+ onQuery: (query: OracleQueries[number]) => void,
63
44
  { interval, onNode, ...options }: { interval?: number; onNode: Node }
64
45
  & Parameters<typeof _getPollInterval>[1],
65
46
  ): () => void {
@@ -68,8 +49,10 @@ export function pollForQueries(
68
49
  const checkNewQueries = async (): Promise<void> => {
69
50
  const queries = ((await onNode.getOracleQueriesByPubkey(oracleId)).oracleQueries ?? [])
70
51
  .filter(({ id }) => !knownQueryIds.has(id));
71
- queries.forEach(({ id }) => knownQueryIds.add(id));
72
- if (queries.length > 0) onQuery(queries);
52
+ queries.forEach((query) => {
53
+ knownQueryIds.add(query.id);
54
+ onQuery(query);
55
+ });
73
56
  };
74
57
 
75
58
  let stopped = false;
@@ -135,7 +118,7 @@ export async function getQueryObject(
135
118
  decodedResponse: decode(record.response as Encoded.OracleResponse).toString(),
136
119
  respond: async (response, opt) => (
137
120
  // eslint-disable-next-line @typescript-eslint/no-use-before-define
138
- respondToQuery(oracleId, queryId, response, { ...options, ...opt })
121
+ respondToQuery(queryId, response, { ...options, ...opt })
139
122
  ),
140
123
  pollForResponse: async (opt) => pollForQueryResponse(oracleId, queryId, { ...options, ...opt }),
141
124
  };
@@ -144,7 +127,7 @@ export async function getQueryObject(
144
127
  interface GetQueryObjectReturnType extends Awaited<ReturnType<Node['getOracleQueryByPubkeyAndQueryId']>> {
145
128
  decodedQuery: string;
146
129
  decodedResponse: string;
147
- respond: (response: string, options?: Parameters<typeof respondToQuery>[3]) =>
130
+ respond: (response: string, options?: Parameters<typeof respondToQuery>[2]) =>
148
131
  ReturnType<typeof respondToQuery>;
149
132
  pollForResponse: (options?: Parameters<typeof pollForQueryResponse>[2]) =>
150
133
  ReturnType<typeof pollForQueryResponse>;
@@ -167,16 +150,19 @@ export async function postQueryToOracle(
167
150
  oracleId: Encoded.OracleAddress,
168
151
  query: string,
169
152
  options: PostQueryToOracleOptions,
170
- ): Promise<Awaited<ReturnType<typeof send>> & Awaited<ReturnType<typeof getQueryObject>>> {
153
+ ): Promise<
154
+ Awaited<ReturnType<typeof sendTransaction>> & Awaited<ReturnType<typeof getQueryObject>>
155
+ > {
171
156
  options.queryFee ??= (await options.onNode.getOracleByPubkey(oracleId)).queryFee.toString();
172
157
  const senderId = options.onAccount.address;
173
158
 
174
- const oracleQueryTx = await _buildTx(Tag.OracleQueryTx, {
159
+ const oracleQueryTx = await buildTxAsync({
175
160
  queryTtlType: QUERY_TTL.type,
176
161
  queryTtlValue: QUERY_TTL.value,
177
162
  responseTtlType: RESPONSE_TTL.type,
178
163
  responseTtlValue: RESPONSE_TTL.value,
179
164
  ...options,
165
+ tag: Tag.OracleQueryTx,
180
166
  oracleId,
181
167
  senderId,
182
168
  query,
@@ -184,12 +170,12 @@ export async function postQueryToOracle(
184
170
  const { nonce } = unpackTx(oracleQueryTx, Tag.OracleQueryTx);
185
171
  const queryId = oracleQueryId(senderId, nonce, oracleId);
186
172
  return {
187
- ...await send(oracleQueryTx, options),
173
+ ...await sendTransaction(oracleQueryTx, options),
188
174
  ...await getQueryObject(oracleId, queryId, options),
189
175
  };
190
176
  }
191
177
 
192
- type PostQueryToOracleOptionsType = Parameters<typeof send>[1]
178
+ type PostQueryToOracleOptionsType = Parameters<typeof sendTransaction>[1]
193
179
  & Parameters<typeof getQueryObject>[2]
194
180
  & BuildTxOptions<Tag.OracleQueryTx, 'oracleId' | 'senderId' | 'query' | 'queryTtlType' | 'queryTtlValue' | 'responseTtlType' | 'responseTtlValue'>
195
181
  & {
@@ -203,7 +189,6 @@ interface PostQueryToOracleOptions extends PostQueryToOracleOptionsType {}
203
189
  /**
204
190
  * Extend oracle ttl
205
191
  * @category oracle
206
- * @param oracleId - Oracle public key
207
192
  * @param options - Options object
208
193
  * @param options.fee - fee Transaction fee
209
194
  * @param options.ttl - Transaction time to leave
@@ -211,25 +196,25 @@ interface PostQueryToOracleOptions extends PostQueryToOracleOptionsType {}
211
196
  * @param options.oracleTtlValue - Oracle time to leave for extend
212
197
  * @returns Oracle object
213
198
  */
214
- export async function extendOracleTtl(
215
- oracleId: Encoded.OracleAddress,
216
- options: ExtendOracleTtlOptions,
217
- ): Promise<Awaited<ReturnType<typeof send>> & Awaited<ReturnType<typeof getOracleObject>>> {
218
- const oracleExtendTx = await _buildTx(Tag.OracleExtendTx, {
199
+ export async function extendOracleTtl(options: ExtendOracleTtlOptions): Promise<
200
+ Awaited<ReturnType<typeof sendTransaction>> & Awaited<ReturnType<typeof getOracleObject>>
201
+ > {
202
+ const oracleId = encode(decode(options.onAccount.address), Encoding.OracleAddress);
203
+ const oracleExtendTx = await buildTxAsync({
219
204
  oracleTtlType: ORACLE_TTL.type,
220
205
  oracleTtlValue: ORACLE_TTL.value,
221
206
  ...options,
222
- callerId: options.onAccount.address,
207
+ tag: Tag.OracleExtendTx,
223
208
  oracleId,
224
209
  });
225
210
  return {
226
- ...await send(oracleExtendTx, options),
211
+ ...await sendTransaction(oracleExtendTx, options),
227
212
  // eslint-disable-next-line @typescript-eslint/no-use-before-define
228
213
  ...await getOracleObject(oracleId, options),
229
214
  };
230
215
  }
231
216
 
232
- type ExtendOracleTtlOptionsType = SendOptions & Parameters<typeof getOracleObject>[1]
217
+ type ExtendOracleTtlOptionsType = SendTransactionOptions & Parameters<typeof getOracleObject>[1]
233
218
  & BuildTxOptions<Tag.OracleExtendTx, 'oracleTtlType' | 'oracleTtlValue' | 'callerId' | 'oracleId'>
234
219
  & { oracleTtlType?: ORACLE_TTL_TYPES; oracleTtlValue?: number };
235
220
  interface ExtendOracleTtlOptions extends ExtendOracleTtlOptionsType {}
@@ -237,7 +222,6 @@ interface ExtendOracleTtlOptions extends ExtendOracleTtlOptionsType {}
237
222
  /**
238
223
  * Extend oracle ttl
239
224
  * @category oracle
240
- * @param oracleId - Oracle public key
241
225
  * @param queryId - Oracle query id
242
226
  * @param response - Oracle query response
243
227
  * @param options - Options object
@@ -247,28 +231,30 @@ interface ExtendOracleTtlOptions extends ExtendOracleTtlOptionsType {}
247
231
  * @returns Oracle object
248
232
  */
249
233
  export async function respondToQuery(
250
- oracleId: Encoded.OracleAddress,
251
234
  queryId: Encoded.OracleQueryId,
252
235
  response: string,
253
236
  options: RespondToQueryOptions,
254
- ): Promise<Awaited<ReturnType<typeof send>> & Awaited<ReturnType<typeof getOracleObject>>> {
255
- const oracleRespondTx = await _buildTx(Tag.OracleResponseTx, {
237
+ ): Promise<
238
+ Awaited<ReturnType<typeof sendTransaction>> & Awaited<ReturnType<typeof getOracleObject>>
239
+ > {
240
+ const oracleId = encode(decode(options.onAccount.address), Encoding.OracleAddress);
241
+ const oracleRespondTx = await buildTxAsync({
256
242
  responseTtlType: RESPONSE_TTL.type,
257
243
  responseTtlValue: RESPONSE_TTL.value,
258
244
  ...options,
259
- callerId: options.onAccount.address,
245
+ tag: Tag.OracleResponseTx,
260
246
  oracleId,
261
247
  queryId,
262
248
  response,
263
249
  });
264
250
  return {
265
- ...await send(oracleRespondTx, options),
251
+ ...await sendTransaction(oracleRespondTx, options),
266
252
  // eslint-disable-next-line @typescript-eslint/no-use-before-define
267
253
  ...await getOracleObject(oracleId, options),
268
254
  };
269
255
  }
270
256
 
271
- type RespondToQueryOptionsType = SendOptions & Parameters<typeof getOracleObject>[1]
257
+ type RespondToQueryOptionsType = SendTransactionOptions & Parameters<typeof getOracleObject>[1]
272
258
  & BuildTxOptions<Tag.OracleResponseTx, 'callerId' | 'oracleId' | 'queryId' | 'response' | 'responseTtlType' | 'responseTtlValue'>
273
259
  & { responseTtlType?: ORACLE_TTL_TYPES; responseTtlValue?: number };
274
260
  interface RespondToQueryOptions extends RespondToQueryOptionsType {}
@@ -302,7 +288,10 @@ export async function getOracleObject(
302
288
  if (lastArg != null && typeof lastArg === 'object' && lastArg.constructor === Object) {
303
289
  Object.assign(lastArg, { ...options, ...lastArg });
304
290
  } else args.push(options);
305
- return handler(oracleId, ...args);
291
+ return handler(
292
+ ...['extendOracle', 'respondToQuery'].includes(name) ? [] : [oracleId],
293
+ ...args,
294
+ );
306
295
  },
307
296
  ],
308
297
  ),
@@ -337,27 +326,28 @@ export async function registerOracle(
337
326
  queryFormat: string,
338
327
  responseFormat: string,
339
328
  options: RegisterOracleOptions,
340
- ): Promise<Awaited<ReturnType<typeof send>> & Awaited<ReturnType<typeof getOracleObject>>> {
329
+ ): Promise<
330
+ Awaited<ReturnType<typeof sendTransaction>> & Awaited<ReturnType<typeof getOracleObject>>
331
+ > {
341
332
  const accountId = options.onAccount.address;
342
- const oracleRegisterTx = await _buildTx(Tag.OracleRegisterTx, {
343
- queryFee: QUERY_FEE,
333
+ const oracleRegisterTx = await buildTxAsync({
344
334
  oracleTtlValue: ORACLE_TTL.value,
345
335
  oracleTtlType: ORACLE_TTL.type,
346
336
  ...options,
337
+ tag: Tag.OracleRegisterTx,
347
338
  accountId,
348
339
  queryFormat,
349
340
  responseFormat,
350
341
  });
351
342
  return {
352
- ...await send(oracleRegisterTx, options),
343
+ ...await sendTransaction(oracleRegisterTx, options),
353
344
  ...await getOracleObject(encode(decode(accountId), Encoding.OracleAddress), options),
354
345
  };
355
346
  }
356
347
 
357
- type RegisterOracleOptionsType = SendOptions & Parameters<typeof getOracleObject>[1]
358
- & BuildTxOptions<Tag.OracleRegisterTx, 'accountId' | 'queryFormat' | 'responseFormat' | 'queryFee' | 'oracleTtlType' | 'oracleTtlValue'>
348
+ type RegisterOracleOptionsType = SendTransactionOptions & Parameters<typeof getOracleObject>[1]
349
+ & BuildTxOptions<Tag.OracleRegisterTx, 'accountId' | 'queryFormat' | 'responseFormat' | 'oracleTtlType' | 'oracleTtlValue'>
359
350
  & {
360
- queryFee?: number | string | BigNumber;
361
351
  oracleTtlType?: ORACLE_TTL_TYPES;
362
352
  oracleTtlValue?: number;
363
353
  };