@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.
- package/LICENSE +1 -1
- package/dist/aepp-sdk.browser-script.js +1 -1
- package/dist/aepp-sdk.browser-script.js.LICENSE.txt +12 -19
- package/dist/aepp-sdk.browser-script.js.map +1 -1
- package/dist/aepp-sdk.browser.js +1 -1
- package/dist/aepp-sdk.browser.js.map +1 -1
- package/dist/aepp-sdk.js +1 -1
- package/dist/aepp-sdk.js.map +1 -1
- package/es/AeSdk.d.ts +37 -0
- package/es/AeSdk.mjs +81 -0
- package/es/AeSdk.mjs.map +1 -0
- package/es/AeSdkAepp.d.ts +69 -0
- package/es/AeSdkAepp.mjs +175 -0
- package/es/AeSdkAepp.mjs.map +1 -0
- package/es/AeSdkBase.d.ts +212 -0
- package/es/AeSdkBase.mjs +310 -0
- package/es/AeSdkBase.mjs.map +1 -0
- package/es/AeSdkWallet.d.ts +103 -0
- package/es/AeSdkWallet.mjs +322 -0
- package/es/AeSdkWallet.mjs.map +1 -0
- package/es/Node.d.ts +44 -0
- package/es/Node.mjs +141 -0
- package/es/Node.mjs.map +1 -0
- package/es/account/Base.d.ts +65 -0
- package/es/account/Base.mjs +123 -0
- package/es/account/Base.mjs.map +1 -0
- package/es/account/Memory.d.ts +25 -0
- package/es/account/Memory.mjs +81 -0
- package/es/account/Memory.mjs.map +1 -0
- package/es/account/Rpc.d.ts +27 -0
- package/es/account/Rpc.mjs +79 -0
- package/es/account/Rpc.mjs.map +1 -0
- package/es/aens.d.ts +209 -0
- package/es/aens.mjs +332 -0
- package/es/aens.mjs.map +1 -0
- package/es/aepp-wallet-communication/connection/Browser.d.ts +32 -0
- package/es/aepp-wallet-communication/connection/Browser.mjs +70 -0
- package/es/aepp-wallet-communication/connection/Browser.mjs.map +1 -0
- package/es/aepp-wallet-communication/connection/BrowserRuntime.d.ts +17 -0
- package/es/aepp-wallet-communication/connection/BrowserRuntime.mjs +57 -0
- package/es/aepp-wallet-communication/connection/BrowserRuntime.mjs.map +1 -0
- package/es/aepp-wallet-communication/connection/BrowserWindowMessage.d.ts +35 -0
- package/es/aepp-wallet-communication/connection/BrowserWindowMessage.mjs +142 -0
- package/es/aepp-wallet-communication/connection/BrowserWindowMessage.mjs.map +1 -0
- package/es/aepp-wallet-communication/connection-proxy.d.ts +10 -0
- package/{src/utils/crypto-ts.ts → es/aepp-wallet-communication/connection-proxy.mjs} +15 -11
- package/es/aepp-wallet-communication/connection-proxy.mjs.map +1 -0
- package/es/aepp-wallet-communication/rpc/RpcClient.d.ts +33 -0
- package/es/aepp-wallet-communication/rpc/RpcClient.mjs +169 -0
- package/es/aepp-wallet-communication/rpc/RpcClient.mjs.map +1 -0
- package/es/aepp-wallet-communication/rpc/types.d.ts +77 -0
- package/es/aepp-wallet-communication/rpc/types.mjs +3 -0
- package/es/aepp-wallet-communication/rpc/types.mjs.map +1 -0
- package/es/aepp-wallet-communication/schema.d.ts +90 -46
- package/es/aepp-wallet-communication/schema.mjs +214 -0
- package/es/aepp-wallet-communication/schema.mjs.map +1 -0
- package/es/aepp-wallet-communication/wallet-detector.d.ts +24 -0
- package/es/aepp-wallet-communication/wallet-detector.mjs +63 -0
- package/es/aepp-wallet-communication/wallet-detector.mjs.map +1 -0
- package/es/apis/compiler/compiler.d.ts +92 -0
- package/es/apis/compiler/compiler.mjs +576 -0
- package/es/apis/compiler/compiler.mjs.map +1 -0
- package/es/apis/compiler/index.d.ts +2 -0
- package/es/apis/compiler/index.mjs +3 -0
- package/es/apis/compiler/index.mjs.map +1 -0
- package/es/apis/compiler/models/index.d.ts +248 -0
- package/es/apis/compiler/models/index.mjs +48 -0
- package/es/apis/compiler/models/index.mjs.map +1 -0
- package/es/apis/compiler/models/mappers.d.ts +23 -0
- package/es/apis/compiler/models/mappers.mjs +585 -0
- package/es/apis/compiler/models/mappers.mjs.map +1 -0
- package/es/apis/compiler/models/parameters.d.ts +13 -0
- package/es/apis/compiler/models/parameters.mjs +71 -0
- package/es/apis/compiler/models/parameters.mjs.map +1 -0
- package/es/apis/node/index.d.ts +2 -0
- package/es/apis/node/index.mjs +3 -0
- package/es/apis/node/index.mjs.map +1 -0
- package/es/apis/node/models/index.d.ts +1061 -0
- package/es/apis/node/models/index.mjs +2 -0
- package/es/apis/node/models/index.mjs.map +1 -0
- package/es/apis/node/models/mappers.d.ts +95 -0
- package/es/apis/node/models/mappers.mjs +4164 -0
- package/es/apis/node/models/mappers.mjs.map +1 -0
- package/es/apis/node/models/parameters.d.ts +17 -0
- package/es/apis/node/models/parameters.mjs +165 -0
- package/es/apis/node/models/parameters.mjs.map +1 -0
- package/es/apis/node/node.d.ts +215 -0
- package/es/apis/node/node.mjs +1165 -0
- package/es/apis/node/node.mjs.map +1 -0
- package/es/chain.d.ts +220 -0
- package/es/chain.mjs +524 -0
- package/es/chain.mjs.map +1 -0
- package/es/channel/handlers.d.ts +34 -0
- package/es/channel/handlers.mjs +147 -112
- package/es/channel/handlers.mjs.map +1 -1
- package/es/channel/index.d.ts +634 -0
- package/es/channel/index.mjs +898 -900
- package/es/channel/index.mjs.map +1 -1
- package/es/channel/internal.d.ts +100 -0
- package/es/channel/internal.mjs +97 -51
- package/es/channel/internal.mjs.map +1 -1
- package/es/contract/Compiler.d.ts +17 -0
- package/es/contract/Compiler.mjs +67 -0
- package/es/contract/Compiler.mjs.map +1 -0
- package/es/contract/aci.d.ts +125 -0
- package/es/contract/aci.mjs +199 -180
- package/es/contract/aci.mjs.map +1 -1
- package/es/contract/ga.d.ts +68 -0
- package/es/contract/ga.mjs +190 -0
- package/es/contract/ga.mjs.map +1 -0
- package/es/contract/methods.d.ts +68 -0
- package/es/contract/methods.mjs +101 -0
- package/es/contract/methods.mjs.map +1 -0
- package/es/index.d.ts +32 -0
- package/es/index.mjs +32 -40
- package/es/index.mjs.map +1 -1
- package/es/oracle.d.ts +154 -0
- package/es/oracle.mjs +288 -0
- package/es/oracle.mjs.map +1 -0
- package/es/spend.d.ts +61 -0
- package/es/spend.mjs +122 -0
- package/es/spend.mjs.map +1 -0
- package/es/tx/builder/constants.d.ts +41 -0
- package/es/tx/builder/constants.mjs +11 -19
- package/es/tx/builder/constants.mjs.map +1 -1
- package/es/tx/builder/field-types.d.ts +62 -0
- package/es/tx/builder/field-types.mjs +62 -10
- package/es/tx/builder/field-types.mjs.map +1 -1
- package/es/tx/builder/helpers.d.ts +131 -0
- package/es/tx/builder/helpers.mjs +71 -169
- package/es/tx/builder/helpers.mjs.map +1 -1
- package/es/tx/builder/index.d.ts +75 -0
- package/es/tx/builder/index.mjs +141 -323
- package/es/tx/builder/index.mjs.map +1 -1
- package/es/tx/builder/schema.d.ts +350 -0
- package/es/tx/builder/schema.mjs +173 -510
- package/es/tx/builder/schema.mjs.map +1 -1
- package/es/tx/index.d.ts +63 -0
- package/es/tx/index.mjs +171 -265
- package/es/tx/index.mjs.map +1 -1
- package/es/tx/min-fee.d.ts +20 -0
- package/es/tx/min-fee.mjs +148 -0
- package/es/tx/min-fee.mjs.map +1 -0
- package/es/tx/validator.d.ts +19 -0
- package/es/tx/validator.mjs +64 -71
- package/es/tx/validator.mjs.map +1 -1
- package/es/typings/@aeternity__argon2-browser/index.d.mjs +2 -0
- package/es/typings/@aeternity__argon2-browser/index.d.mjs.map +1 -0
- package/es/typings/@aeternity__uuid/index.d.mjs +2 -0
- package/es/typings/@aeternity__uuid/index.d.mjs.map +1 -0
- package/es/typings/bip32-path/index.d.mjs +2 -0
- package/es/typings/bip32-path/index.d.mjs.map +1 -0
- package/es/typings/blakejs/index.d.mjs.map +1 -1
- package/es/typings/tweetnacl-auth/index.d.mjs +2 -0
- package/es/typings/tweetnacl-auth/index.d.mjs.map +1 -0
- package/es/utils/amount-formatter.d.ts +42 -0
- package/es/utils/amount-formatter.mjs +28 -41
- package/es/utils/amount-formatter.mjs.map +1 -1
- package/es/utils/autorest.d.ts +6 -0
- package/es/utils/autorest.mjs +97 -0
- package/es/utils/autorest.mjs.map +1 -0
- package/es/utils/bignumber.d.ts +13 -0
- package/es/utils/bignumber.mjs +10 -8
- package/es/utils/bignumber.mjs.map +1 -1
- package/es/{bytes.d.ts → utils/bytes.d.ts} +10 -13
- package/es/utils/bytes.mjs +10 -14
- package/es/utils/bytes.mjs.map +1 -1
- package/es/utils/crypto.d.ts +103 -0
- package/es/utils/crypto.mjs +60 -68
- package/es/utils/crypto.mjs.map +1 -1
- package/es/utils/encoder.d.ts +26 -0
- package/es/utils/encoder.mjs +47 -51
- package/es/utils/encoder.mjs.map +1 -1
- package/es/{errors.d.ts → utils/errors.d.ts} +254 -57
- package/es/utils/errors.mjs +318 -125
- package/es/utils/errors.mjs.map +1 -1
- package/es/utils/hd-wallet.d.ts +34 -0
- package/es/utils/hd-wallet.mjs +27 -16
- package/es/utils/hd-wallet.mjs.map +1 -1
- package/es/utils/json-big.d.ts +5 -0
- package/es/utils/json-big.mjs +10 -14
- package/es/utils/json-big.mjs.map +1 -1
- package/es/utils/keystore.d.ts +51 -0
- package/es/utils/keystore.mjs +98 -193
- package/es/utils/keystore.mjs.map +1 -1
- package/es/{mptree.d.ts → utils/mptree.d.ts} +5 -8
- package/es/utils/mptree.mjs +13 -14
- package/es/utils/mptree.mjs.map +1 -1
- package/es/utils/other.d.ts +14 -0
- package/es/utils/other.mjs +21 -36
- package/es/utils/other.mjs.map +1 -1
- package/es/{semver-satisfies.d.ts → utils/semver-satisfies.d.ts} +0 -0
- package/es/utils/semver-satisfies.mjs.map +1 -1
- package/es/utils/string.d.ts +24 -0
- package/es/utils/string.mjs +8 -10
- package/es/utils/string.mjs.map +1 -1
- package/package.json +49 -39
- package/src/AeSdk.ts +65 -0
- package/src/AeSdkAepp.ts +167 -0
- package/src/AeSdkBase.ts +320 -0
- package/src/AeSdkWallet.ts +332 -0
- package/src/Node.ts +167 -0
- package/src/account/Base.ts +114 -0
- package/src/account/Memory.ts +83 -0
- package/src/account/Rpc.ts +67 -0
- package/src/aens.ts +391 -0
- package/src/aepp-wallet-communication/connection/Browser.ts +68 -0
- package/src/aepp-wallet-communication/connection/BrowserRuntime.ts +58 -0
- package/src/aepp-wallet-communication/connection/BrowserWindowMessage.ts +111 -0
- package/{es/utils/crypto-ts.mjs → src/aepp-wallet-communication/connection-proxy.ts} +16 -17
- package/src/aepp-wallet-communication/rpc/RpcClient.ts +137 -0
- package/src/aepp-wallet-communication/rpc/types.ts +66 -0
- package/src/aepp-wallet-communication/schema.ts +181 -0
- package/src/aepp-wallet-communication/wallet-detector.ts +71 -0
- package/src/apis/compiler/code-model-v4.yaml +2649 -0
- package/src/apis/compiler/compiler.ts +585 -0
- package/src/apis/compiler/index.ts +2 -0
- package/src/apis/compiler/models/index.ts +301 -0
- package/src/apis/compiler/models/mappers.ts +583 -0
- package/src/apis/compiler/models/parameters.ts +93 -0
- package/src/apis/node/code-model-v4.yaml +10046 -0
- package/src/apis/node/index.ts +2 -0
- package/src/apis/node/models/index.ts +1253 -0
- package/src/apis/node/models/mappers.ts +4278 -0
- package/src/apis/node/models/parameters.ts +188 -0
- package/src/apis/node/node.ts +1299 -0
- package/src/chain.ts +444 -0
- package/src/channel/{handlers.js → handlers.ts} +220 -128
- package/src/channel/index.ts +991 -0
- package/src/channel/internal.ts +345 -0
- package/src/contract/Compiler.ts +66 -0
- package/src/contract/aci.ts +529 -0
- package/src/contract/ga.ts +178 -0
- package/src/contract/methods.ts +118 -0
- package/src/index.ts +51 -0
- package/src/oracle.ts +342 -0
- package/src/spend.ts +152 -0
- package/src/tx/builder/{constants.js → constants.ts} +12 -16
- package/src/tx/builder/field-types.ts +111 -0
- package/src/tx/builder/helpers.ts +253 -0
- package/src/tx/builder/index.ts +394 -0
- package/src/tx/builder/schema.ts +771 -0
- package/src/tx/index.ts +199 -0
- package/src/tx/min-fee.ts +136 -0
- package/src/tx/validator.ts +226 -0
- package/src/typings/@aeternity__argon2-browser/index.d.ts +3 -0
- package/src/typings/@aeternity__uuid/index.d.ts +3 -0
- package/src/typings/bip32-path/index.d.ts +33 -0
- package/src/typings/tweetnacl-auth/index.d.ts +14 -0
- package/src/utils/amount-formatter.ts +29 -42
- package/src/utils/autorest.ts +90 -0
- package/src/utils/bignumber.ts +9 -11
- package/src/utils/bytes.ts +12 -14
- package/src/utils/crypto.ts +217 -0
- package/src/utils/encoder.ts +52 -55
- package/src/utils/errors.ts +268 -134
- package/src/utils/hd-wallet.ts +134 -0
- package/src/utils/json-big.ts +26 -0
- package/src/utils/keystore.ts +179 -0
- package/src/utils/mptree.ts +14 -14
- package/src/utils/other.ts +28 -43
- package/src/utils/string.ts +8 -10
- package/es/account/base.mjs +0 -179
- package/es/account/base.mjs.map +0 -1
- package/es/account/memory.mjs +0 -99
- package/es/account/memory.mjs.map +0 -1
- package/es/account/multiple.mjs +0 -179
- package/es/account/multiple.mjs.map +0 -1
- package/es/ae/aens.mjs +0 -404
- package/es/ae/aens.mjs.map +0 -1
- package/es/ae/aepp.mjs +0 -45
- package/es/ae/aepp.mjs.map +0 -1
- package/es/ae/contract.mjs +0 -159
- package/es/ae/contract.mjs.map +0 -1
- package/es/ae/index.mjs +0 -207
- package/es/ae/index.mjs.map +0 -1
- package/es/ae/oracle.mjs +0 -339
- package/es/ae/oracle.mjs.map +0 -1
- package/es/ae/universal.mjs +0 -45
- package/es/ae/universal.mjs.map +0 -1
- package/es/ae/wallet.mjs +0 -50
- package/es/ae/wallet.mjs.map +0 -1
- package/es/amount-formatter.d.ts +0 -58
- package/es/bignumber.d.ts +0 -18
- package/es/chain/index.mjs +0 -272
- package/es/chain/index.mjs.map +0 -1
- package/es/chain/node.mjs +0 -442
- package/es/chain/node.mjs.map +0 -1
- package/es/contract/compiler.mjs +0 -115
- package/es/contract/compiler.mjs.map +0 -1
- package/es/contract/ga/helpers.mjs +0 -30
- package/es/contract/ga/helpers.mjs.map +0 -1
- package/es/contract/ga/index.mjs +0 -178
- package/es/contract/ga/index.mjs.map +0 -1
- package/es/crypto-ts.d.ts +0 -9
- package/es/encoder.d.ts +0 -26
- package/es/node-pool/index.mjs +0 -188
- package/es/node-pool/index.mjs.map +0 -1
- package/es/node.mjs +0 -133
- package/es/node.mjs.map +0 -1
- package/es/other.d.ts +0 -31
- package/es/string.d.ts +0 -26
- package/es/tx/tx-object.mjs +0 -283
- package/es/tx/tx-object.mjs.map +0 -1
- package/es/tx/tx.mjs +0 -938
- package/es/tx/tx.mjs.map +0 -1
- package/es/utils/aepp-wallet-communication/connection/browser-runtime.mjs +0 -132
- package/es/utils/aepp-wallet-communication/connection/browser-runtime.mjs.map +0 -1
- package/es/utils/aepp-wallet-communication/connection/browser-window-message.mjs +0 -183
- package/es/utils/aepp-wallet-communication/connection/browser-window-message.mjs.map +0 -1
- package/es/utils/aepp-wallet-communication/connection/index.mjs +0 -87
- package/es/utils/aepp-wallet-communication/connection/index.mjs.map +0 -1
- package/es/utils/aepp-wallet-communication/content-script-bridge.mjs +0 -98
- package/es/utils/aepp-wallet-communication/content-script-bridge.mjs.map +0 -1
- package/es/utils/aepp-wallet-communication/helpers.mjs +0 -92
- package/es/utils/aepp-wallet-communication/helpers.mjs.map +0 -1
- package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.mjs +0 -375
- package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.mjs.map +0 -1
- package/es/utils/aepp-wallet-communication/rpc/rpc-client.mjs +0 -275
- package/es/utils/aepp-wallet-communication/rpc/rpc-client.mjs.map +0 -1
- package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.mjs +0 -541
- package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.mjs.map +0 -1
- package/es/utils/aepp-wallet-communication/schema.mjs +0 -102
- package/es/utils/aepp-wallet-communication/schema.mjs.map +0 -1
- package/es/utils/aepp-wallet-communication/wallet-detector.mjs +0 -110
- package/es/utils/aepp-wallet-communication/wallet-detector.mjs.map +0 -1
- package/es/utils/async-init.mjs +0 -64
- package/es/utils/async-init.mjs.map +0 -1
- package/es/utils/crypto-ts.mjs.map +0 -1
- package/es/utils/swagger.mjs +0 -164
- package/es/utils/swagger.mjs.map +0 -1
- package/src/account/base.js +0 -153
- package/src/account/memory.js +0 -83
- package/src/account/multiple.js +0 -162
- package/src/ae/aens.js +0 -361
- package/src/ae/aepp.js +0 -45
- package/src/ae/contract.js +0 -148
- package/src/ae/index.js +0 -168
- package/src/ae/oracle.js +0 -311
- package/src/ae/universal.js +0 -47
- package/src/ae/wallet.js +0 -50
- package/src/chain/index.js +0 -269
- package/src/chain/node.js +0 -320
- package/src/channel/index.js +0 -903
- package/src/channel/internal.js +0 -236
- package/src/contract/aci.js +0 -376
- package/src/contract/compiler.js +0 -100
- package/src/contract/ga/helpers.js +0 -19
- package/src/contract/ga/index.js +0 -150
- package/src/index.js +0 -89
- package/src/node-pool/index.js +0 -172
- package/src/node.js +0 -116
- package/src/tx/builder/field-types.js +0 -61
- package/src/tx/builder/helpers.js +0 -334
- package/src/tx/builder/index.js +0 -465
- package/src/tx/builder/schema.js +0 -1100
- package/src/tx/index.js +0 -301
- package/src/tx/tx-object.js +0 -187
- package/src/tx/tx.js +0 -631
- package/src/tx/validator.js +0 -181
- package/src/utils/aepp-wallet-communication/connection/browser-runtime.js +0 -119
- package/src/utils/aepp-wallet-communication/connection/browser-window-message.js +0 -165
- package/src/utils/aepp-wallet-communication/connection/index.js +0 -85
- package/src/utils/aepp-wallet-communication/content-script-bridge.js +0 -86
- package/src/utils/aepp-wallet-communication/helpers.js +0 -60
- package/src/utils/aepp-wallet-communication/rpc/aepp-rpc.js +0 -294
- package/src/utils/aepp-wallet-communication/rpc/rpc-client.js +0 -232
- package/src/utils/aepp-wallet-communication/rpc/wallet-rpc.js +0 -401
- package/src/utils/aepp-wallet-communication/schema.ts +0 -80
- package/src/utils/aepp-wallet-communication/wallet-detector.js +0 -92
- package/src/utils/async-init.js +0 -45
- package/src/utils/crypto.js +0 -219
- package/src/utils/hd-wallet.js +0 -100
- package/src/utils/json-big.js +0 -26
- package/src/utils/keystore.js +0 -219
- package/src/utils/swagger.js +0 -156
package/src/tx/index.js
DELETED
|
@@ -1,301 +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
|
-
* Tx module
|
|
20
|
-
* @module @aeternity/aepp-sdk/es/tx
|
|
21
|
-
* @export Tx
|
|
22
|
-
* @example import { Tx } from '@aeternity/aepp-sdk'
|
|
23
|
-
*/
|
|
24
|
-
|
|
25
|
-
import stampit from '@stamp/it'
|
|
26
|
-
import { required } from '@stamp/required'
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* Basic Tx Stamp
|
|
30
|
-
*
|
|
31
|
-
* Attempting to create instances from the Stamp without overwriting all
|
|
32
|
-
* abstract methods using composition will result in an exception.
|
|
33
|
-
*
|
|
34
|
-
* Tx is one of the three basic building blocks of an
|
|
35
|
-
* {@link module:@aeternity/aepp-sdk/es/ae--Ae} client and provides methods to
|
|
36
|
-
* create aeternity transactions.
|
|
37
|
-
* @function
|
|
38
|
-
* @alias module:@aeternity/aepp-sdk/es/tx
|
|
39
|
-
* @rtype Stamp
|
|
40
|
-
* @param {Object} [options={}] - Initializer object
|
|
41
|
-
* @return {Object} Tx instance
|
|
42
|
-
* @example Tx()
|
|
43
|
-
*/
|
|
44
|
-
const Tx = stampit(required({
|
|
45
|
-
methods: {
|
|
46
|
-
spendTx: required,
|
|
47
|
-
namePreclaimTx: required,
|
|
48
|
-
nameClaimTx: required,
|
|
49
|
-
nameTransferTx: required,
|
|
50
|
-
nameUpdateTx: required,
|
|
51
|
-
nameRevokeTx: required,
|
|
52
|
-
contractCreateTx: required,
|
|
53
|
-
contractCallTx: required,
|
|
54
|
-
oracleRegisterTx: required,
|
|
55
|
-
oracleExtendTx: required,
|
|
56
|
-
oraclePostQueryTx: required,
|
|
57
|
-
oracleRespondTx: required,
|
|
58
|
-
getAccountNonce: required,
|
|
59
|
-
channelCloseSoloTx: required,
|
|
60
|
-
channelSlashTx: required,
|
|
61
|
-
channelSettleTx: required,
|
|
62
|
-
channelSnapshotSoloTx: required,
|
|
63
|
-
gaAttachTx: required,
|
|
64
|
-
getVmVersion: required,
|
|
65
|
-
prepareTxParams: required
|
|
66
|
-
}
|
|
67
|
-
}))
|
|
68
|
-
|
|
69
|
-
/**
|
|
70
|
-
* Create a `spend_tx` transaction
|
|
71
|
-
* @function spendTx
|
|
72
|
-
* @instance
|
|
73
|
-
* @abstract
|
|
74
|
-
* @category async
|
|
75
|
-
* @rtype ({
|
|
76
|
-
* sender?: String,
|
|
77
|
-
* recipientId: String,
|
|
78
|
-
* amount: Number,
|
|
79
|
-
* fee?: Number,
|
|
80
|
-
* ttl?: Number,
|
|
81
|
-
* nonce?: Number,
|
|
82
|
-
* payload?: String
|
|
83
|
-
* }) => tx: Promise[String]
|
|
84
|
-
* @param {Object} options - The object to extract properties from
|
|
85
|
-
* @return {String} `spend_tx` transaction
|
|
86
|
-
*/
|
|
87
|
-
|
|
88
|
-
/**
|
|
89
|
-
* Create a `name_preclaim_tx` transaction
|
|
90
|
-
* @function namePreclaimTx
|
|
91
|
-
* @instance
|
|
92
|
-
* @abstract
|
|
93
|
-
* @category async
|
|
94
|
-
* @rtype ({
|
|
95
|
-
* account?: String, commitment: String, fee?: Number, ttl?: Number, nonce?: Number
|
|
96
|
-
* }) => tx: Promise[String]
|
|
97
|
-
* @param {Object} options - The object to extract properties from
|
|
98
|
-
* @return {String} `name_preclaim_tx` transaction
|
|
99
|
-
*/
|
|
100
|
-
|
|
101
|
-
/**
|
|
102
|
-
* Create a `name_claim_tx` transaction
|
|
103
|
-
* @function nameClaimTx
|
|
104
|
-
* @instance
|
|
105
|
-
* @abstract
|
|
106
|
-
* @category async
|
|
107
|
-
* @rtype ({
|
|
108
|
-
* account?: String, name: String, nameSalt: String, fee?: Number, ttl?: Number, nonce?: Number
|
|
109
|
-
* }) => tx: Promise[String]
|
|
110
|
-
* @param {Object} options - The object to extract properties from
|
|
111
|
-
* @return {String} `name_claim_tx` transaction
|
|
112
|
-
*/
|
|
113
|
-
|
|
114
|
-
/**
|
|
115
|
-
* Create a `name_transfer_tx` transaction
|
|
116
|
-
* @function nameTransferTx
|
|
117
|
-
* @instance
|
|
118
|
-
* @abstract
|
|
119
|
-
* @category async
|
|
120
|
-
* @rtype ({
|
|
121
|
-
* account?: String,
|
|
122
|
-
* nameId: String,
|
|
123
|
-
* recipientId: String,
|
|
124
|
-
* fee?: Number,
|
|
125
|
-
* ttl?: Number,
|
|
126
|
-
* nonce?: Number
|
|
127
|
-
* }) => tx: Promise[String]
|
|
128
|
-
* @param {Object} options - The object to extract properties from
|
|
129
|
-
* @return {String} `name_transfer_tx` transaction
|
|
130
|
-
*/
|
|
131
|
-
|
|
132
|
-
/**
|
|
133
|
-
* Create a `name_update_tx` transaction
|
|
134
|
-
* @function nameUpdateTx
|
|
135
|
-
* @instance
|
|
136
|
-
* @abstract
|
|
137
|
-
* @category async
|
|
138
|
-
* @rtype ({
|
|
139
|
-
* account?: String,
|
|
140
|
-
* nameId: String,
|
|
141
|
-
* pointers: Object,
|
|
142
|
-
* nameTtl: Number,
|
|
143
|
-
* clientTtl: Number,
|
|
144
|
-
* fee?: Number,
|
|
145
|
-
* ttl?: Number,
|
|
146
|
-
* nonce?: Number
|
|
147
|
-
* }) => tx: Promise[String]
|
|
148
|
-
* @param {Object} options - The object to extract properties from
|
|
149
|
-
* @return {String} `name_update_tx` transaction
|
|
150
|
-
*/
|
|
151
|
-
|
|
152
|
-
/**
|
|
153
|
-
* Create a `name_revoke_tx` transaction
|
|
154
|
-
* @function nameRevokeTx
|
|
155
|
-
* @instance
|
|
156
|
-
* @abstract
|
|
157
|
-
* @category async
|
|
158
|
-
* @rtype ({
|
|
159
|
-
* account?: String, nameId: String, fee?: Number, ttl?: Number, nonce?: Number
|
|
160
|
-
* }) => tx: Promise[String]
|
|
161
|
-
* @param {Object} options - The object to extract properties from
|
|
162
|
-
* @return {String} `name_revoke_tx` transaction
|
|
163
|
-
*/
|
|
164
|
-
|
|
165
|
-
/**
|
|
166
|
-
* Create a `contract_create_tx` transaction
|
|
167
|
-
* @function contractCreateTx
|
|
168
|
-
* @instance
|
|
169
|
-
* @abstract
|
|
170
|
-
* @category async
|
|
171
|
-
* @rtype ({
|
|
172
|
-
* owner: String,
|
|
173
|
-
* code: String,
|
|
174
|
-
* callData: String,
|
|
175
|
-
* vmVersion: Number,
|
|
176
|
-
* deposit: Number,
|
|
177
|
-
* amount: Number,
|
|
178
|
-
* gas: Number,
|
|
179
|
-
* gasPrice: Number,
|
|
180
|
-
* fee?: Number,
|
|
181
|
-
* ttl?: Number,
|
|
182
|
-
* nonce?: Number
|
|
183
|
-
* }) => tx: Promise[String]
|
|
184
|
-
* @param {Object} options - The object to extract properties from
|
|
185
|
-
* @return {String} `contract_create_tx` transaction
|
|
186
|
-
*/
|
|
187
|
-
|
|
188
|
-
/**
|
|
189
|
-
* Create a `contract_call_tx` transaction
|
|
190
|
-
* @function contractCallTx
|
|
191
|
-
* @instance
|
|
192
|
-
* @abstract
|
|
193
|
-
* @category async
|
|
194
|
-
* @rtype ({
|
|
195
|
-
* callerId: String,
|
|
196
|
-
* contract: String,
|
|
197
|
-
* callData: String,
|
|
198
|
-
* vmVersion: Number,
|
|
199
|
-
* amount: Number,
|
|
200
|
-
* gas: Number,
|
|
201
|
-
* gasPrice: Number,
|
|
202
|
-
* fee?: Number,
|
|
203
|
-
* ttl?: Number,
|
|
204
|
-
* nonce?: Number
|
|
205
|
-
* }) => tx: Promise[String]
|
|
206
|
-
* @param {Object} options - The object to extract properties from
|
|
207
|
-
* @return {String} `contract_call_tx` transaction
|
|
208
|
-
*/
|
|
209
|
-
|
|
210
|
-
/**
|
|
211
|
-
* Create a `oracle_register_tx` transaction
|
|
212
|
-
* @function oracleRegisterTx
|
|
213
|
-
* @instance
|
|
214
|
-
* @abstract
|
|
215
|
-
* @category async
|
|
216
|
-
* @rtype ({
|
|
217
|
-
* accountId: String,
|
|
218
|
-
* queryFormat: String,
|
|
219
|
-
* responseFormat: String,
|
|
220
|
-
* queryFee: String|Number,
|
|
221
|
-
* oracleTtl: Object,
|
|
222
|
-
* vmVersion: Number = ORACLE_VM_VERSION,
|
|
223
|
-
* fee?: Number,
|
|
224
|
-
* ttl?: Number,
|
|
225
|
-
* nonce?: Number
|
|
226
|
-
* }) => tx: Promise[String]
|
|
227
|
-
* @param {Object} options - The object to extract properties from
|
|
228
|
-
* @return {String} `oracle_register_tx` transaction
|
|
229
|
-
*/
|
|
230
|
-
|
|
231
|
-
/**
|
|
232
|
-
* Create a `oracle_extend_tx` transaction
|
|
233
|
-
* @function oracleExtendTx
|
|
234
|
-
* @instance
|
|
235
|
-
* @abstract
|
|
236
|
-
* @category async
|
|
237
|
-
* @rtype ({
|
|
238
|
-
* oracleId: String,
|
|
239
|
-
* callerId: String,
|
|
240
|
-
* oracleTtl: Object,
|
|
241
|
-
* fee?: Number,
|
|
242
|
-
* ttl: Number,
|
|
243
|
-
* nonce?: Number
|
|
244
|
-
* }) => tx: Promise[String]
|
|
245
|
-
* @param {Object} options - The object to extract properties from
|
|
246
|
-
* @return {String} `oracle_extend_tx` transaction
|
|
247
|
-
*/
|
|
248
|
-
|
|
249
|
-
/**
|
|
250
|
-
* Create a `oracle_post_query_tx` transaction
|
|
251
|
-
* @function oraclePostQuery
|
|
252
|
-
* @instance
|
|
253
|
-
* @abstract
|
|
254
|
-
* @category async
|
|
255
|
-
* @rtype ({
|
|
256
|
-
* oracleId: String,
|
|
257
|
-
* responseTtl: Object,
|
|
258
|
-
* query: String,
|
|
259
|
-
* queryTtl: Object,
|
|
260
|
-
* queryFee: String|Number,
|
|
261
|
-
* senderId: String,
|
|
262
|
-
* fee?: Number,
|
|
263
|
-
* ttl: Number,
|
|
264
|
-
* nonce?: Number
|
|
265
|
-
* }) => tx: Promise[String]
|
|
266
|
-
* @param {Object} options - The object to extract properties from
|
|
267
|
-
* @return {String} `oracle_post_query_tx` transaction
|
|
268
|
-
*/
|
|
269
|
-
|
|
270
|
-
/**
|
|
271
|
-
* Create a `oracle_respond_tx` transaction
|
|
272
|
-
* @function oracleRespondTx
|
|
273
|
-
* @instance
|
|
274
|
-
* @abstract
|
|
275
|
-
* @category async
|
|
276
|
-
* @rtype ({
|
|
277
|
-
* oracleId: String,
|
|
278
|
-
* callerId: String,
|
|
279
|
-
* responseTtl: Object,
|
|
280
|
-
* queryId: String,
|
|
281
|
-
* response: String,
|
|
282
|
-
* fee?: Number,
|
|
283
|
-
* ttl?: Number,
|
|
284
|
-
* nonce?: Number
|
|
285
|
-
* }) => tx: Promise[String]
|
|
286
|
-
* @param {Object} options - The object to extract properties from
|
|
287
|
-
* @return {String} `oracle_respond_tx` transaction
|
|
288
|
-
*/
|
|
289
|
-
|
|
290
|
-
/**
|
|
291
|
-
* Get Account Nonce
|
|
292
|
-
* @function getAccountNonce
|
|
293
|
-
* @instance
|
|
294
|
-
* @abstract
|
|
295
|
-
* @category async
|
|
296
|
-
* @rtype (address) => result: Number
|
|
297
|
-
* @param {String} address - Account public key
|
|
298
|
-
* @return {Number} Result
|
|
299
|
-
*/
|
|
300
|
-
|
|
301
|
-
export default Tx
|
package/src/tx/tx-object.js
DELETED
|
@@ -1,187 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* TxObject module
|
|
3
|
-
* @module @aeternity/aepp-sdk/es/tx/tx-object
|
|
4
|
-
* @export TxObject
|
|
5
|
-
* @example import TxObject from '@aeternity/aepp-sdk/es/tx/tx-object'
|
|
6
|
-
*/
|
|
7
|
-
import stampit from '@stamp/it'
|
|
8
|
-
import { buildTx, calculateFee, unpackTx } from './builder'
|
|
9
|
-
import { TX_TYPE } from './builder/schema'
|
|
10
|
-
import { encode } from './builder/helpers'
|
|
11
|
-
import { isHex } from '../utils/string'
|
|
12
|
-
import { InvalidTxError, TypeError, UnknownTxError, InvalidSignatureError } from '../utils/errors'
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* Build transaction from object
|
|
16
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
17
|
-
* @param {String} type Transaction type
|
|
18
|
-
* @param {Object} params Transaction params
|
|
19
|
-
* @param {Object} [options={}] Options
|
|
20
|
-
* @throws {Error} Arguments validation error's
|
|
21
|
-
* @return {{
|
|
22
|
-
* encodedTx: String, binary: Array<Buffer>, rlpEncoded: Buffer, params: Object, type: String
|
|
23
|
-
* }}
|
|
24
|
-
*/
|
|
25
|
-
const buildTransaction = (type, params, options = {}) => {
|
|
26
|
-
if (typeof params !== 'object') throw new TypeError('tx "params" should be an object')
|
|
27
|
-
if (typeof type !== 'string' || !Object.values(TX_TYPE).includes(type)) throw new UnknownTxError(`Unknown transaction type ${type}`)
|
|
28
|
-
const fee = calculateFee(params.fee, type, { gas: params.gas, params, vsn: params.vsn })
|
|
29
|
-
const { rlpEncoded, binary, tx: encodedTx, txObject } = buildTx(
|
|
30
|
-
{ ...params, fee }, type, { vsn: params.vsn, ...options }
|
|
31
|
-
)
|
|
32
|
-
return { rlpEncoded, binary, encodedTx, params: txObject, type }
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* Unpack transaction from RLP encoded binary or base64c string
|
|
37
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
38
|
-
* @param {Uint8Array|String} tx RLP encoded binary or base64c(rlpBinary) string
|
|
39
|
-
* @throws {Error} Arguments validation error's
|
|
40
|
-
* @return {{
|
|
41
|
-
* encodedTx: String, binary: Array<Buffer>, rlpEncoded: Buffer, type: String, params: Object
|
|
42
|
-
* }}
|
|
43
|
-
*/
|
|
44
|
-
const unpackTransaction = (tx) => {
|
|
45
|
-
if (!tx) throw new InvalidTxError(`Invalid transaction: ${tx}`)
|
|
46
|
-
if (typeof tx === 'string') {
|
|
47
|
-
const { txType: type, tx: params, rlpEncoded, binary } = unpackTx(tx)
|
|
48
|
-
return { encodedTx: tx, type, params, rlpEncoded, binary }
|
|
49
|
-
}
|
|
50
|
-
if (tx instanceof Uint8Array) {
|
|
51
|
-
const { txType: type, tx: params, rlpEncoded, binary } = unpackTx(tx, true)
|
|
52
|
-
return { encodedTx: encode(tx, 'tx'), type, params, rlpEncoded, binary }
|
|
53
|
-
}
|
|
54
|
-
throw new InvalidTxError(`"tx" should be a string or Uint8Array, got ${tx} instead`)
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
/**
|
|
58
|
-
* Helper which build or unpack transaction base on constructor arguments
|
|
59
|
-
* Need to provide one of arguments: [tx] -> unpack flow or [params, type] -> build flow
|
|
60
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
61
|
-
* @param {Buffer|String} [tx] Transaction rlp binary or vase64c string
|
|
62
|
-
* @param {Object} params Transaction params
|
|
63
|
-
* @param {String} type Transaction type
|
|
64
|
-
* @param {Object} [options={}] Options
|
|
65
|
-
* @throws {Error} Arguments validation error's
|
|
66
|
-
* @return {{
|
|
67
|
-
* encodedTx: String, binary: Array<Buffer>, rlpEncoded: Buffer, type: String, params: Object
|
|
68
|
-
* }}
|
|
69
|
-
*/
|
|
70
|
-
const initTransaction = ({ tx, params, type, options = {} } = {}) => {
|
|
71
|
-
if (params && type) return buildTransaction(type, params, options)
|
|
72
|
-
if (tx) return unpackTransaction(tx)
|
|
73
|
-
throw new InvalidTxError('Invalid TxObject arguments. Please provide one of { tx: "tx_asdasd23..." } or { type: "spendTx", params: {...} }')
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
/**
|
|
77
|
-
* Transaction Validator Stamp
|
|
78
|
-
* This stamp give us possibility to unpack and validate some of transaction properties,
|
|
79
|
-
* to make sure we can post it to the chain
|
|
80
|
-
* @function
|
|
81
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
82
|
-
* @rtype Stamp
|
|
83
|
-
* @param {Object} [options={}] - Initializer object
|
|
84
|
-
* @param {Buffer|String} [options.tx] - Rlp binary or base64c transaction
|
|
85
|
-
* @param {Object} [options.params] - Transaction params
|
|
86
|
-
* @param {String} [options.type] - Transaction type
|
|
87
|
-
* @param {Object} [options.options] - Build options
|
|
88
|
-
* @return {Object} TxObject instance
|
|
89
|
-
* @example TxObject({ params: {...}, type: 'spendTx' })
|
|
90
|
-
*/
|
|
91
|
-
export const TxObject = stampit({
|
|
92
|
-
init ({ tx, params, type, options = {} } = {}) {
|
|
93
|
-
this.options = options
|
|
94
|
-
this.signatures = []
|
|
95
|
-
Object.assign(this, initTransaction({ tx, params, type, options }))
|
|
96
|
-
|
|
97
|
-
if (this.type === TX_TYPE.signed) {
|
|
98
|
-
const { signatures, encodedTx: { txType, tx } } = this.params
|
|
99
|
-
this.signatures = signatures
|
|
100
|
-
this.params = tx
|
|
101
|
-
this.type = txType
|
|
102
|
-
this.isSigned = true
|
|
103
|
-
}
|
|
104
|
-
},
|
|
105
|
-
statics: {
|
|
106
|
-
/**
|
|
107
|
-
* Create txObject from base64c RLP encoded transaction string with 'tx_' prefix
|
|
108
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
109
|
-
* @static
|
|
110
|
-
* @param {String} tx Transaction string (tx_23fsdgsdfg...)
|
|
111
|
-
* @return {TxObject}
|
|
112
|
-
*/
|
|
113
|
-
fromString: (tx) => TxObject({ tx }),
|
|
114
|
-
/**
|
|
115
|
-
* Create txObject from transaction RLP binary
|
|
116
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
117
|
-
* @static
|
|
118
|
-
* @param {Buffer} tx Transaction RLP binary
|
|
119
|
-
* @return {TxObject}
|
|
120
|
-
*/
|
|
121
|
-
fromRlp: (tx) => TxObject({ tx })
|
|
122
|
-
},
|
|
123
|
-
methods: {
|
|
124
|
-
/**
|
|
125
|
-
* Rebuild transaction with new params and recalculate fee
|
|
126
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
127
|
-
* @param {Object} props Transaction properties for update
|
|
128
|
-
* @param options
|
|
129
|
-
* @return {TxObject}
|
|
130
|
-
*/
|
|
131
|
-
setProp (props = {}, options = {}) {
|
|
132
|
-
if (typeof props !== 'object') throw new TypeError('Props should be an object')
|
|
133
|
-
this.isSigned = false
|
|
134
|
-
this.signatures = []
|
|
135
|
-
Object.assign(
|
|
136
|
-
this,
|
|
137
|
-
buildTransaction(
|
|
138
|
-
this.type, { ...this.params, ...props, fee: null }, { ...this.options, ...options }
|
|
139
|
-
)
|
|
140
|
-
)
|
|
141
|
-
return this
|
|
142
|
-
},
|
|
143
|
-
/**
|
|
144
|
-
* Get signatures
|
|
145
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
146
|
-
* @return {Array} Array of signatures
|
|
147
|
-
*/
|
|
148
|
-
getSignatures () {
|
|
149
|
-
return this.signatures
|
|
150
|
-
},
|
|
151
|
-
/**
|
|
152
|
-
* Add signature
|
|
153
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
154
|
-
* @param {Buffer|String} signature Signature to add ( Can be: Buffer | Uint8Array | HexString )
|
|
155
|
-
* @return {void}
|
|
156
|
-
*/
|
|
157
|
-
addSignature (signature) {
|
|
158
|
-
signature = isHex(signature) ? Buffer.from(signature, 'hex') : signature
|
|
159
|
-
if (!Buffer.isBuffer(signature) && !(signature instanceof Uint8Array)) throw new InvalidSignatureError('Invalid signature, signature must be of type Buffer or Uint8Array')
|
|
160
|
-
Object.assign(
|
|
161
|
-
this,
|
|
162
|
-
buildTransaction(
|
|
163
|
-
TX_TYPE.signed,
|
|
164
|
-
{ encodedTx: this.rlpEncoded, signatures: [[...this.signatures, signature]] }
|
|
165
|
-
)
|
|
166
|
-
)
|
|
167
|
-
|
|
168
|
-
const { signatures, encodedTx: { txType, tx } } = this.params
|
|
169
|
-
this.signatures = signatures
|
|
170
|
-
this.params = tx
|
|
171
|
-
this.type = txType
|
|
172
|
-
this.isSigned = true
|
|
173
|
-
},
|
|
174
|
-
/**
|
|
175
|
-
* Calculate fee
|
|
176
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
177
|
-
* @param {Object} props
|
|
178
|
-
* @return {String} fee
|
|
179
|
-
*/
|
|
180
|
-
calculateMinFee (props = {}) {
|
|
181
|
-
const params = { ...this.params, ...props }
|
|
182
|
-
return calculateFee(0, this.type, { gas: params.gas, params, vsn: params.vsn })
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
})
|
|
186
|
-
|
|
187
|
-
export default TxObject
|