@aeternity/aepp-sdk 9.0.1 → 11.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/README.md +15 -14
- package/dist/aepp-sdk.browser-script.js +1 -1
- package/dist/aepp-sdk.browser-script.js.LICENSE.txt +7 -36
- 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/account/base.mjs +179 -0
- package/es/account/base.mjs.map +1 -0
- package/es/account/memory.mjs +99 -0
- package/es/account/memory.mjs.map +1 -0
- package/es/account/multiple.mjs +179 -0
- package/es/account/multiple.mjs.map +1 -0
- package/es/ae/aens.mjs +404 -0
- package/es/ae/aens.mjs.map +1 -0
- package/es/ae/{aepp.js → aepp.mjs} +9 -9
- package/es/ae/aepp.mjs.map +1 -0
- package/es/ae/contract.mjs +159 -0
- package/es/ae/contract.mjs.map +1 -0
- package/es/ae/index.mjs +207 -0
- package/es/ae/index.mjs.map +1 -0
- package/es/ae/oracle.mjs +339 -0
- package/es/ae/oracle.mjs.map +1 -0
- package/es/ae/{universal.js → universal.mjs} +10 -10
- package/es/ae/universal.mjs.map +1 -0
- package/es/ae/{wallet.js → wallet.mjs} +10 -10
- package/es/ae/wallet.mjs.map +1 -0
- package/es/aepp-wallet-communication/schema.d.ts +74 -0
- package/es/bignumber.d.ts +1 -7
- package/es/chain/{index.js → index.mjs} +29 -9
- package/es/chain/index.mjs.map +1 -0
- package/es/chain/node.mjs +442 -0
- package/es/chain/node.mjs.map +1 -0
- package/es/channel/handlers.mjs +1110 -0
- package/es/channel/handlers.mjs.map +1 -0
- package/es/channel/{index.js → index.mjs} +245 -472
- package/es/channel/index.mjs.map +1 -0
- package/es/channel/internal.mjs +283 -0
- package/es/channel/internal.mjs.map +1 -0
- package/es/contract/aci.mjs +477 -0
- package/es/contract/aci.mjs.map +1 -0
- package/es/contract/compiler.mjs +115 -0
- package/es/contract/compiler.mjs.map +1 -0
- package/es/contract/ga/helpers.mjs +30 -0
- package/es/contract/ga/helpers.mjs.map +1 -0
- package/es/contract/ga/index.mjs +178 -0
- package/es/contract/ga/index.mjs.map +1 -0
- package/es/errors.d.ts +284 -0
- package/es/index.mjs +57 -0
- package/es/index.mjs.map +1 -0
- package/es/node-pool/index.mjs +188 -0
- package/es/node-pool/index.mjs.map +1 -0
- package/es/node.mjs +133 -0
- package/es/node.mjs.map +1 -0
- package/es/other.d.ts +1 -1
- package/es/tx/builder/field-types.mjs +74 -0
- package/es/tx/builder/field-types.mjs.map +1 -0
- package/es/tx/builder/helpers.mjs +363 -0
- package/es/tx/builder/helpers.mjs.map +1 -0
- package/es/tx/builder/index.mjs +606 -0
- package/es/tx/builder/index.mjs.map +1 -0
- package/es/tx/builder/schema.mjs +760 -0
- package/es/tx/builder/schema.mjs.map +1 -0
- package/es/tx/{index.js → index.mjs} +107 -15
- package/es/tx/index.mjs.map +1 -0
- package/es/tx/tx-object.mjs +283 -0
- package/es/tx/tx-object.mjs.map +1 -0
- package/es/tx/tx.mjs +938 -0
- package/es/tx/tx.mjs.map +1 -0
- package/es/tx/validator.mjs +247 -0
- package/es/tx/validator.mjs.map +1 -0
- package/es/typings/blakejs/index.d.mjs +2 -0
- package/es/typings/blakejs/{index.d.js.map → index.d.mjs.map} +1 -1
- package/es/utils/aepp-wallet-communication/connection/{browser-runtime.js → browser-runtime.mjs} +27 -29
- package/es/utils/aepp-wallet-communication/connection/browser-runtime.mjs.map +1 -0
- package/es/utils/aepp-wallet-communication/connection/browser-window-message.mjs +183 -0
- package/es/utils/aepp-wallet-communication/connection/browser-window-message.mjs.map +1 -0
- package/es/utils/aepp-wallet-communication/connection/{index.js → index.mjs} +7 -3
- package/es/utils/aepp-wallet-communication/connection/index.mjs.map +1 -0
- package/es/utils/aepp-wallet-communication/{content-script-bridge.js → content-script-bridge.mjs} +29 -23
- package/es/utils/aepp-wallet-communication/content-script-bridge.mjs.map +1 -0
- package/es/utils/aepp-wallet-communication/helpers.mjs +92 -0
- package/es/utils/aepp-wallet-communication/helpers.mjs.map +1 -0
- package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.mjs +375 -0
- package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.mjs.map +1 -0
- package/es/utils/aepp-wallet-communication/rpc/rpc-client.mjs +275 -0
- package/es/utils/aepp-wallet-communication/rpc/rpc-client.mjs.map +1 -0
- package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.mjs +541 -0
- package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.mjs.map +1 -0
- package/es/utils/aepp-wallet-communication/schema.mjs +102 -0
- package/es/utils/aepp-wallet-communication/schema.mjs.map +1 -0
- package/es/utils/aepp-wallet-communication/wallet-detector.mjs +110 -0
- package/es/utils/aepp-wallet-communication/wallet-detector.mjs.map +1 -0
- package/es/utils/amount-formatter.mjs +139 -0
- package/es/utils/amount-formatter.mjs.map +1 -0
- package/es/utils/async-init.mjs +64 -0
- package/es/utils/async-init.mjs.map +1 -0
- package/es/utils/bignumber.mjs +21 -0
- package/es/utils/bignumber.mjs.map +1 -0
- package/es/utils/{bytes.js → bytes.mjs} +16 -12
- package/es/utils/bytes.mjs.map +1 -0
- package/es/utils/{crypto-ts.js → crypto-ts.mjs} +11 -3
- package/es/utils/crypto-ts.mjs.map +1 -0
- package/es/utils/crypto.mjs +239 -0
- package/es/utils/crypto.mjs.map +1 -0
- package/es/utils/errors.mjs +689 -0
- package/es/utils/errors.mjs.map +1 -0
- package/es/utils/hd-wallet.mjs +111 -0
- package/es/utils/hd-wallet.mjs.map +1 -0
- package/es/utils/json-big.mjs +45 -0
- package/es/utils/json-big.mjs.map +1 -0
- package/es/utils/keystore.mjs +240 -0
- package/es/utils/keystore.mjs.map +1 -0
- package/es/utils/mptree.mjs +161 -0
- package/es/utils/mptree.mjs.map +1 -0
- package/es/utils/other.mjs +43 -0
- package/es/utils/other.mjs.map +1 -0
- package/es/utils/semver-satisfies.mjs +16 -0
- package/es/utils/semver-satisfies.mjs.map +1 -0
- package/es/utils/{string.js → string.mjs} +5 -14
- package/es/utils/string.mjs.map +1 -0
- package/es/utils/swagger.mjs +164 -0
- package/es/utils/swagger.mjs.map +1 -0
- package/package.json +55 -62
- package/src/account/base.js +3 -1
- package/src/account/memory.js +13 -8
- package/src/account/multiple.js +31 -22
- package/src/ae/aens.js +75 -77
- package/src/ae/aepp.js +2 -2
- package/src/ae/contract.js +27 -291
- package/src/ae/index.js +9 -7
- package/src/ae/oracle.js +51 -28
- package/src/ae/universal.js +4 -2
- package/src/ae/wallet.js +2 -2
- package/src/chain/index.js +29 -6
- package/src/chain/node.js +95 -67
- package/src/channel/handlers.js +30 -21
- package/src/channel/index.js +44 -20
- package/src/channel/internal.js +30 -24
- package/src/contract/aci.js +376 -0
- package/src/contract/compiler.js +41 -91
- package/src/contract/ga/helpers.js +10 -13
- package/src/contract/ga/index.js +42 -33
- package/src/index.js +9 -10
- package/src/node-pool/index.js +29 -17
- package/src/node.js +33 -36
- package/src/tx/builder/field-types.js +61 -0
- package/src/tx/builder/helpers.js +126 -84
- package/src/tx/builder/index.js +83 -41
- package/src/tx/builder/schema.js +50 -40
- package/src/tx/index.js +101 -12
- package/src/tx/tx-object.js +35 -15
- package/src/tx/tx.js +232 -153
- package/src/tx/validator.js +34 -12
- package/src/utils/aepp-wallet-communication/connection/browser-runtime.js +11 -5
- package/src/utils/aepp-wallet-communication/connection/browser-window-message.js +35 -13
- package/src/utils/aepp-wallet-communication/connection/index.js +2 -1
- package/src/utils/aepp-wallet-communication/content-script-bridge.js +14 -7
- package/src/utils/aepp-wallet-communication/helpers.js +6 -14
- package/src/utils/aepp-wallet-communication/rpc/aepp-rpc.js +107 -60
- package/src/utils/aepp-wallet-communication/rpc/rpc-client.js +24 -11
- package/src/utils/aepp-wallet-communication/rpc/wallet-rpc.js +98 -56
- package/src/utils/aepp-wallet-communication/schema.ts +80 -0
- package/src/utils/aepp-wallet-communication/wallet-detector.js +6 -2
- package/src/utils/amount-formatter.ts +4 -3
- package/src/utils/async-init.js +10 -6
- package/src/utils/bignumber.ts +3 -10
- package/src/utils/bytes.ts +3 -2
- package/src/utils/crypto-ts.ts +2 -2
- package/src/utils/crypto.js +10 -144
- package/src/utils/errors.ts +683 -0
- package/src/utils/hd-wallet.js +11 -26
- package/src/utils/keystore.js +57 -53
- package/src/utils/mptree.ts +12 -6
- package/src/utils/other.ts +1 -1
- package/src/utils/semver-satisfies.ts +1 -1
- package/src/utils/swagger.js +75 -45
- package/es/account/base.js +0 -259
- package/es/account/base.js.map +0 -1
- package/es/account/memory.js +0 -86
- package/es/account/memory.js.map +0 -1
- package/es/account/multiple.js +0 -267
- package/es/account/multiple.js.map +0 -1
- package/es/ae/aens.js +0 -829
- package/es/ae/aens.js.map +0 -1
- package/es/ae/aepp.js.map +0 -1
- package/es/ae/contract.js +0 -985
- package/es/ae/contract.js.map +0 -1
- package/es/ae/index.js +0 -442
- package/es/ae/index.js.map +0 -1
- package/es/ae/oracle.js +0 -690
- package/es/ae/oracle.js.map +0 -1
- package/es/ae/universal.js.map +0 -1
- package/es/ae/wallet.js.map +0 -1
- package/es/chain/index.js.map +0 -1
- package/es/chain/node.js +0 -1119
- package/es/chain/node.js.map +0 -1
- package/es/channel/handlers.js +0 -1601
- package/es/channel/handlers.js.map +0 -1
- package/es/channel/index.js.map +0 -1
- package/es/channel/internal.js +0 -438
- package/es/channel/internal.js.map +0 -1
- package/es/contract/aci/helpers.js +0 -298
- package/es/contract/aci/helpers.js.map +0 -1
- package/es/contract/aci/index.js +0 -517
- package/es/contract/aci/index.js.map +0 -1
- package/es/contract/aci/transformation.js +0 -742
- package/es/contract/aci/transformation.js.map +0 -1
- package/es/contract/compiler.js +0 -316
- package/es/contract/compiler.js.map +0 -1
- package/es/contract/ga/helpers.js +0 -120
- package/es/contract/ga/helpers.js.map +0 -1
- package/es/contract/ga/index.js +0 -307
- package/es/contract/ga/index.js.map +0 -1
- package/es/contract/index.js +0 -158
- package/es/contract/index.js.map +0 -1
- package/es/index.js +0 -57
- package/es/index.js.map +0 -1
- package/es/node-pool/index.js +0 -204
- package/es/node-pool/index.js.map +0 -1
- package/es/node.js +0 -228
- package/es/node.js.map +0 -1
- package/es/tx/builder/helpers.js +0 -355
- package/es/tx/builder/helpers.js.map +0 -1
- package/es/tx/builder/index.js +0 -686
- package/es/tx/builder/index.js.map +0 -1
- package/es/tx/builder/schema.js +0 -695
- package/es/tx/builder/schema.js.map +0 -1
- package/es/tx/index.js.map +0 -1
- package/es/tx/tx-object.js +0 -297
- package/es/tx/tx-object.js.map +0 -1
- package/es/tx/tx.js +0 -1757
- package/es/tx/tx.js.map +0 -1
- package/es/tx/validator.js +0 -344
- package/es/tx/validator.js.map +0 -1
- package/es/typings/blakejs/index.d.js +0 -2
- package/es/utils/aepp-wallet-communication/connection/browser-runtime.js.map +0 -1
- package/es/utils/aepp-wallet-communication/connection/browser-window-message.js +0 -211
- package/es/utils/aepp-wallet-communication/connection/browser-window-message.js.map +0 -1
- package/es/utils/aepp-wallet-communication/connection/index.js.map +0 -1
- package/es/utils/aepp-wallet-communication/content-script-bridge.js.map +0 -1
- package/es/utils/aepp-wallet-communication/helpers.js +0 -148
- package/es/utils/aepp-wallet-communication/helpers.js.map +0 -1
- package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.js +0 -652
- package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.js.map +0 -1
- package/es/utils/aepp-wallet-communication/rpc/rpc-client.js +0 -285
- package/es/utils/aepp-wallet-communication/rpc/rpc-client.js.map +0 -1
- package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.js +0 -763
- package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.js.map +0 -1
- package/es/utils/aepp-wallet-communication/schema.js +0 -103
- package/es/utils/aepp-wallet-communication/schema.js.map +0 -1
- package/es/utils/aepp-wallet-communication/wallet-detector.js +0 -135
- package/es/utils/aepp-wallet-communication/wallet-detector.js.map +0 -1
- package/es/utils/amount-formatter.js +0 -152
- package/es/utils/amount-formatter.js.map +0 -1
- package/es/utils/async-init.js +0 -103
- package/es/utils/async-init.js.map +0 -1
- package/es/utils/bignumber.js +0 -36
- package/es/utils/bignumber.js.map +0 -1
- package/es/utils/bytes.js.map +0 -1
- package/es/utils/crypto-ts.js.map +0 -1
- package/es/utils/crypto.js +0 -358
- package/es/utils/crypto.js.map +0 -1
- package/es/utils/hd-wallet.js +0 -148
- package/es/utils/hd-wallet.js.map +0 -1
- package/es/utils/json-big.js +0 -78
- package/es/utils/json-big.js.map +0 -1
- package/es/utils/keystore.js +0 -393
- package/es/utils/keystore.js.map +0 -1
- package/es/utils/mptree.js +0 -198
- package/es/utils/mptree.js.map +0 -1
- package/es/utils/other.js +0 -93
- package/es/utils/other.js.map +0 -1
- package/es/utils/semver-satisfies.js +0 -35
- package/es/utils/semver-satisfies.js.map +0 -1
- package/es/utils/string.js.map +0 -1
- package/es/utils/swagger.js +0 -269
- package/es/utils/swagger.js.map +0 -1
- package/src/contract/aci/helpers.js +0 -140
- package/src/contract/aci/index.js +0 -191
- package/src/contract/aci/transformation.js +0 -464
- package/src/contract/index.js +0 -159
- package/src/utils/aepp-wallet-communication/schema.js +0 -110
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/tx/builder/schema.js"],"names":["BigNumber","VSN","VSN_2","TX_TTL","QUERY_FEE","ORACLE_TTL","type","value","QUERY_TTL","RESPONSE_TTL","DEPOSIT","AMOUNT","GAS","MIN_GAS_PRICE","MAX_AUTH_FUN_GAS","DRY_RUN_ACCOUNT","pub","amount","NAME_TTL","NAME_MAX_TTL","NAME_MAX_CLIENT_TTL","CLIENT_TTL","NAME_FEE","NAME_FEE_MULTIPLIER","NAME_FEE_BID_INCREMENT","NAME_BID_TIMEOUT_BLOCKS","NAME_MAX_LENGTH_FEE","NAME_BID_MAX_LENGTH","NAME_ID_KEY","ak","ok","ct","ch","NAME_BID_RANGES","times","NAME_BID_TIMEOUTS","ID_TAG_ACCOUNT","ID_TAG_NAME","ID_TAG_COMMITMENT","ID_TAG_ORACLE","ID_TAG_CONTRACT","ID_TAG_CHANNEL","OBJECT_TAG_ACCOUNT","OBJECT_TAG_SIGNED_TRANSACTION","OBJECT_TAG_SPEND_TRANSACTION","OBJECT_TAG_ORACLE_REGISTER_TRANSACTION","OBJECT_TAG_ORACLE_QUERY_TRANSACTION","OBJECT_TAG_ORACLE_RESPONSE_TRANSACTION","OBJECT_TAG_ORACLE_EXTEND_TRANSACTION","OBJECT_TAG_NAME_SERVICE_CLAIM_TRANSACTION","OBJECT_TAG_NAME_SERVICE_PRECLAIM_TRANSACTION","OBJECT_TAG_NAME_SERVICE_UPDATE_TRANSACTION","OBJECT_TAG_NAME_SERVICE_REVOKE_TRANSACTION","OBJECT_TAG_NAME_SERVICE_TRANSFER_TRANSACTION","OBJECT_TAG_CONTRACT","OBJECT_TAG_CONTRACT_CALL","OBJECT_TAG_CONTRACT_CREATE_TRANSACTION","OBJECT_TAG_CONTRACT_CALL_TRANSACTION","OBJECT_TAG_CHANNEL_CREATE_TX","OBJECT_TAG_CHANNEL_DEPOSIT_TX","OBJECT_TAG_CHANNEL_WITHRAW_TX","OBJECT_TAG_CHANNEL_CLOSE_MUTUAL_TX","OBJECT_TAG_CHANNEL_CLOSE_SOLO_TX","OBJECT_TAG_CHANNEL_SLASH_TX","OBJECT_TAG_CHANNEL_SETTLE_TX","OBJECT_TAG_CHANNEL_FORCE_PROGRESS_TX","OBJECT_TAG_CHANNEL_OFFCHAIN_TX","OBJECT_TAG_CHANNEL","OBJECT_TAG_CHANNEL_SNAPSHOT_SOLO_TX","OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX","OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX","OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX","OBJECT_TAG_CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX","OBJECT_TAG_CHANNEL_OFFCHAIN_CALL_CONTRACT_TX","OBJECT_TAG_CHANNEL_RECONNECT_TX","OBJECT_TAG_PROOF_OF_INCLUSION","OBJECT_TAG_STATE_TREES","OBJECT_TAG_MERKLE_PATRICIA_TREE","OBJECT_TAG_MERKLE_PATRICIA_TREE_VALUE","OBJECT_TAG_CONTRACTS_TREE","OBJECT_TAG_CONTRACT_CALLS_TREE","OBJECT_TAG_CHANNELS_TREE","OBJECT_TAG_NAMESERVICE_TREE","OBJECT_TAG_ORACLES_TREE","OBJECT_TAG_ACCOUNTS_TREE","OBJECT_TAG_GA_ATTACH","OBJECT_TAG_GA_META","OBJECT_TAG_PAYING_FOR","OBJECT_TAG_SOPHIA_BYTE_CODE","TX_FIELD","name","prefix","TX_SCHEMA_FIELD","schema","objectId","revertObject","obj","acc","key","v","TX_TYPE","account","signed","spend","nameClaim","namePreClaim","nameUpdate","nameRevoke","nameTransfer","contract","contractCreate","contractCall","contractCallResult","oracleRegister","oracleExtend","oracleQuery","oracleResponse","channelCreate","channelCloseMutual","channelCloseSolo","channelSlash","channelDeposit","channelWithdraw","channelSettle","channelOffChain","channelForceProgress","channel","channelSnapshotSolo","channelOffChainUpdateTransfer","channelOffChainUpdateDeposit","channelOffChainUpdateWithdrawal","channelOffChainCreateContract","channelOffChainCallContract","channelReconnect","proofOfInclusion","stateTrees","merklePatriciaTree","merklePatriciaTreeValue","contractsTree","contractCallsTree","channelsTree","nameserviceTree","oraclesTree","accountsTree","gaAttach","gaMeta","payingFor","sophiaByteCode","VM_VERSIONS","NO_VM","SOPHIA","SOPHIA_IMPROVEMENTS_MINERVA","SOPHIA_IMPROVEMENTS_FORTUNA","FATE","SOPHIA_IMPROVEMENTS_LIMA","FATE_2","ABI_VERSIONS","NO_ABI","PROTOCOL_VERSIONS","IRIS","PROTOCOL_VM_ABI","vmVersion","abiVersion","OBJECT_ID_TX_TYPE","FIELD_TYPES","id","ids","string","binary","rlpBinary","rlpBinaries","rawBinary","bool","hex","signatures","pointers","offChainUpdates","callStack","mptrees","callReturnType","ctVersion","sophiaCodeTypeInfo","payload","any","stateTree","BASE_GAS","GAS_PER_BYTE","DEFAULT_FEE","KEY_BLOCK_INTERVAL","TX_FEE_BASE_GAS","txType","factor","TX_FEE_OTHER_GAS","txSize","relativeTtl","innerTxSize","plus","Math","ceil","floor","minus","ID_TAG","commitment","oracle","PREFIX_ID_TAG","nm","cm","ID_TAG_PREFIX","VALIDATION_ERROR","msg","VALIDATION_MESSAGE","isMinusValue","BASE_TX","CONTRACT_BYTE_CODE_LIMA","ACCOUNT_TX_2","SPEND_TX","SIGNED_TX","NAME_PRE_CLAIM_TX","NAME_CLAIM_TX_2","NAME_UPDATE_TX","NAME_TRANSFER_TX","NAME_REVOKE_TX","CONTRACT_TX","GA_ATTACH_TX","GA_META_TX_2","PAYING_FOR_TX","CONTRACT_CREATE_TX","CONTRACT_CALL_TX","CONTRACT_CALL_RESULT_TX","ORACLE_REGISTER_TX","ORACLE_EXTEND_TX","ORACLE_QUERY_TX","ORACLE_RESPOND_TX","CHANNEL_CREATE_TX_2","CHANNEL_DEPOSIT_TX","CHANNEL_WITHDRAW_TX","CHANNEL_CLOSE_MUTUAL_TX","CHANNEL_CLOSE_SOLO_TX","CHANNEL_SLASH_TX","CHANNEL_SETTLE_TX","CHANNEL_FORCE_PROGRESS_TX","CHANNEL_OFFCHAIN_TX_2","CHANNEL_TX_3","CHANNEL_SNAPSHOT_SOLO_TX","CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX","CHANNEL_OFFCHAIN_CALL_CONTRACT_TX","CHANNEL_RECONNECT_TX","CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX","CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX","CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX","PROOF_OF_INCLUSION_TX","STATE_TREES_TX","MERKLE_PATRICIA_TREE_TX","MERKLE_PATRICIA_TREE_VALUE_TX","CONTRACTS_TREE_TX","CONTRACT_CALLS_TREE_TX","CHANNELS_TREE_TX","NAMESERVICE_TREE_TX","ORACLES_TREE_TX","ACCOUNTS_TREE_TX","TX_SERIALIZATION_SCHEMA","TX_DESERIALIZATION_SCHEMA"],"mappings":"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","sourcesContent":["/**\n * Transaction Schema for TxBuilder\n * @module @aeternity/aepp-sdk/es/tx/builder/schema\n * @export TxSchema\n * @example import { SCHEMA } from '@aeternity/aepp-sdk'\n */\n// # RLP version number\n// # https://github.com/aeternity/protocol/blob/master/serializations.md#binary-serialization\n\nimport BigNumber from 'bignumber.js'\n\nexport const VSN = 1\nexport const VSN_2 = 2\n\n// # TRANSACTION DEFAULT TTL\nexport const TX_TTL = 0\n// # ORACLE\nexport const QUERY_FEE = 30000\nexport const ORACLE_TTL = { type: 'delta', value: 500 }\nexport const QUERY_TTL = { type: 'delta', value: 10 }\nexport const RESPONSE_TTL = { type: 'delta', value: 10 }\n// # CONTRACT\nexport const DEPOSIT = 0\nexport const AMOUNT = 0\nexport const GAS = 25000\nexport const MIN_GAS_PRICE = 1e9\nexport const MAX_AUTH_FUN_GAS = 50000\nexport const DRY_RUN_ACCOUNT = { pub: 'ak_11111111111111111111111111111111273Yts', amount: '100000000000000000000000000000000000' }\n// # AENS\nexport const NAME_TTL = 180000\n// # max number of block into the future that the name is going to be available\n// # https://github.com/aeternity/protocol/blob/epoch-v0.22.0/AENS.md#update\n// # https://github.com/aeternity/protocol/blob/44a93d3aab957ca820183c3520b9daf6b0fedff4/AENS.md#aens-entry\nexport const NAME_MAX_TTL = 36000\nexport const NAME_MAX_CLIENT_TTL = 84600\nexport const CLIENT_TTL = NAME_MAX_CLIENT_TTL\nexport const NAME_FEE = 0\n// # see https://github.com/aeternity/aeternity/blob/72e440b8731422e335f879a31ecbbee7ac23a1cf/apps/aecore/src/aec_governance.erl#L67\nexport const NAME_FEE_MULTIPLIER = 1e14 // 100000000000000\nexport const NAME_FEE_BID_INCREMENT = 0.05 // # the increment is in percentage\n// # see https://github.com/aeternity/aeternity/blob/72e440b8731422e335f879a31ecbbee7ac23a1cf/apps/aecore/src/aec_governance.erl#L272\nexport const NAME_BID_TIMEOUT_BLOCKS = 480 // # ~1 day\nexport const NAME_MAX_LENGTH_FEE = 31 // # this is the max length for a domain that requires a base fee to be paid\nexport const NAME_BID_MAX_LENGTH = 12 // # this is the max length for a domain to be part of a bid\nexport const NAME_ID_KEY = {\n ak: 'account_pubkey',\n ok: 'oracle_pubkey',\n ct: 'contract_pubkey',\n ch: 'channel'\n}\n// # ref: https://github.com/aeternity/aeternity/blob/72e440b8731422e335f879a31ecbbee7ac23a1cf/apps/aecore/src/aec_governance.erl#L290\n// # bid ranges:\nexport const NAME_BID_RANGES = {\n 31: BigNumber(3).times(NAME_FEE_MULTIPLIER),\n 30: BigNumber(5).times(NAME_FEE_MULTIPLIER),\n 29: BigNumber(8).times(NAME_FEE_MULTIPLIER),\n 28: BigNumber(13).times(NAME_FEE_MULTIPLIER),\n 27: BigNumber(21).times(NAME_FEE_MULTIPLIER),\n 26: BigNumber(34).times(NAME_FEE_MULTIPLIER),\n 25: BigNumber(55).times(NAME_FEE_MULTIPLIER),\n 24: BigNumber(89).times(NAME_FEE_MULTIPLIER),\n 23: BigNumber(144).times(NAME_FEE_MULTIPLIER),\n 22: BigNumber(233).times(NAME_FEE_MULTIPLIER),\n 21: BigNumber(377).times(NAME_FEE_MULTIPLIER),\n 20: BigNumber(610).times(NAME_FEE_MULTIPLIER),\n 19: BigNumber(987).times(NAME_FEE_MULTIPLIER),\n 18: BigNumber(1597).times(NAME_FEE_MULTIPLIER),\n 17: BigNumber(2584).times(NAME_FEE_MULTIPLIER),\n 16: BigNumber(4181).times(NAME_FEE_MULTIPLIER),\n 15: BigNumber(6765).times(NAME_FEE_MULTIPLIER),\n 14: BigNumber(10946).times(NAME_FEE_MULTIPLIER),\n 13: BigNumber(17711).times(NAME_FEE_MULTIPLIER),\n 12: BigNumber(28657).times(NAME_FEE_MULTIPLIER),\n 11: BigNumber(46368).times(NAME_FEE_MULTIPLIER),\n 10: BigNumber(75025).times(NAME_FEE_MULTIPLIER),\n 9: BigNumber(121393).times(NAME_FEE_MULTIPLIER),\n 8: BigNumber(196418).times(NAME_FEE_MULTIPLIER),\n 7: BigNumber(317811).times(NAME_FEE_MULTIPLIER),\n 6: BigNumber(514229).times(NAME_FEE_MULTIPLIER),\n 5: BigNumber(832040).times(NAME_FEE_MULTIPLIER),\n 4: BigNumber(1346269).times(NAME_FEE_MULTIPLIER),\n 3: BigNumber(2178309).times(NAME_FEE_MULTIPLIER),\n 2: BigNumber(3524578).times(NAME_FEE_MULTIPLIER),\n 1: BigNumber(5702887).times(NAME_FEE_MULTIPLIER)\n}\n\n// # ref: https://github.com/aeternity/aeternity/blob/72e440b8731422e335f879a31ecbbee7ac23a1cf/apps/aecore/src/aec_governance.erl#L273\n// # name bid timeouts\nexport const NAME_BID_TIMEOUTS = {\n 13: BigNumber(0),\n 12: BigNumber(NAME_BID_TIMEOUT_BLOCKS), // # 480 blocks\n 8: BigNumber(31).times(NAME_BID_TIMEOUT_BLOCKS), // # 14880 blocks\n 4: BigNumber(62).times(NAME_BID_TIMEOUT_BLOCKS) // # 29760 blocks\n}\n\n// # Tag constant for ids (type uint8)\n// # see https://github.com/aeternity/protocol/blob/master/serializations.md#the-id-type\n// # <<Tag:1/unsigned-integer-unit:8, Hash:32/binary-unit:8>>\nconst ID_TAG_ACCOUNT = 1\nconst ID_TAG_NAME = 2\nconst ID_TAG_COMMITMENT = 3\nconst ID_TAG_ORACLE = 4\nconst ID_TAG_CONTRACT = 5\nconst ID_TAG_CHANNEL = 6\n\n// # OBJECT tags\n// # see https://github.com/aeternity/protocol/blob/master/serializations.md#binary-serialization\nconst OBJECT_TAG_ACCOUNT = 10\nexport const OBJECT_TAG_SIGNED_TRANSACTION = 11\nconst OBJECT_TAG_SPEND_TRANSACTION = 12\nconst OBJECT_TAG_ORACLE_REGISTER_TRANSACTION = 22\nconst OBJECT_TAG_ORACLE_QUERY_TRANSACTION = 23\nconst OBJECT_TAG_ORACLE_RESPONSE_TRANSACTION = 24\nconst OBJECT_TAG_ORACLE_EXTEND_TRANSACTION = 25\nconst OBJECT_TAG_NAME_SERVICE_CLAIM_TRANSACTION = 32\nconst OBJECT_TAG_NAME_SERVICE_PRECLAIM_TRANSACTION = 33\nconst OBJECT_TAG_NAME_SERVICE_UPDATE_TRANSACTION = 34\nconst OBJECT_TAG_NAME_SERVICE_REVOKE_TRANSACTION = 35\nconst OBJECT_TAG_NAME_SERVICE_TRANSFER_TRANSACTION = 36\nconst OBJECT_TAG_CONTRACT = 40\nconst OBJECT_TAG_CONTRACT_CALL = 41\nconst OBJECT_TAG_CONTRACT_CREATE_TRANSACTION = 42\nconst OBJECT_TAG_CONTRACT_CALL_TRANSACTION = 43\nconst OBJECT_TAG_CHANNEL_CREATE_TX = 50\nconst OBJECT_TAG_CHANNEL_DEPOSIT_TX = 51\nconst OBJECT_TAG_CHANNEL_WITHRAW_TX = 52\nconst OBJECT_TAG_CHANNEL_CLOSE_MUTUAL_TX = 53\nconst OBJECT_TAG_CHANNEL_CLOSE_SOLO_TX = 54\nconst OBJECT_TAG_CHANNEL_SLASH_TX = 55\nconst OBJECT_TAG_CHANNEL_SETTLE_TX = 56\nconst OBJECT_TAG_CHANNEL_FORCE_PROGRESS_TX = 521\nconst OBJECT_TAG_CHANNEL_OFFCHAIN_TX = 57\nconst OBJECT_TAG_CHANNEL = 58\nconst OBJECT_TAG_CHANNEL_SNAPSHOT_SOLO_TX = 59\nconst OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX = 570\nconst OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX = 571\nconst OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX = 572\nconst OBJECT_TAG_CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX = 573\nconst OBJECT_TAG_CHANNEL_OFFCHAIN_CALL_CONTRACT_TX = 574\nconst OBJECT_TAG_CHANNEL_RECONNECT_TX = 575\nconst OBJECT_TAG_PROOF_OF_INCLUSION = 60\nconst OBJECT_TAG_STATE_TREES = 62\nconst OBJECT_TAG_MERKLE_PATRICIA_TREE = 63\nconst OBJECT_TAG_MERKLE_PATRICIA_TREE_VALUE = 64\nconst OBJECT_TAG_CONTRACTS_TREE = 621\nconst OBJECT_TAG_CONTRACT_CALLS_TREE = 622\nconst OBJECT_TAG_CHANNELS_TREE = 623\nconst OBJECT_TAG_NAMESERVICE_TREE = 624\nconst OBJECT_TAG_ORACLES_TREE = 625\nconst OBJECT_TAG_ACCOUNTS_TREE = 626\nconst OBJECT_TAG_GA_ATTACH = 80\nconst OBJECT_TAG_GA_META = 81\nconst OBJECT_TAG_PAYING_FOR = 82\nconst OBJECT_TAG_SOPHIA_BYTE_CODE = 70\n\nconst TX_FIELD = (name, type, prefix) => [name, type, prefix]\nconst TX_SCHEMA_FIELD = (schema, objectId) => [schema, objectId]\n\nconst revertObject = (obj) => Object.entries(obj).reduce((acc, [key, v]) => (acc[v] = key) && acc, {})\n\n/**\n * @constant\n * @description Object with transaction types\n * @alias module:@aeternity/aepp-sdk/es/tx/builder/schema\n * @property {String} signed\n * @property {String} spend\n * @property {String} nameClaim\n * @property {String} namePreClaim\n * @property {String} nameUpdate\n * @property {String} nameRevoke\n * @property {String} nameTransfer\n * @property {String} contractCreate\n * @property {String} contractCall\n * @property {String} oracleRegister\n * @property {String} oracleExtend\n * @property {String} oracleQuery\n * @property {String} oracleResponse\n */\nexport const TX_TYPE = {\n account: 'account',\n signed: 'signedTx',\n spend: 'spendTx',\n // AENS\n nameClaim: 'nameClaimTx',\n namePreClaim: 'namePreClaimTx',\n nameUpdate: 'nameUpdateTx',\n nameRevoke: 'nameRevokeTx',\n nameTransfer: 'nameTransfer',\n // CONTRACT\n contract: 'contract',\n contractCreate: 'contractCreateTx',\n contractCall: 'contractCallTx',\n contractCallResult: 'contractCallResult',\n // ORACLE\n oracleRegister: 'oracleRegister',\n oracleExtend: 'oracleExtend',\n oracleQuery: 'oracleQuery',\n oracleResponse: 'oracleResponse',\n // STATE CHANNEL\n channelCreate: 'channelCreate',\n channelCloseMutual: 'channelCloseMutual',\n channelCloseSolo: 'channelCloseSolo',\n channelSlash: 'channelSlash',\n channelDeposit: 'channelDeposit',\n channelWithdraw: 'channelWithdraw',\n channelSettle: 'channelSettle',\n channelOffChain: 'channelOffChain',\n channelForceProgress: 'channelForceProgress',\n channel: 'channel',\n channelSnapshotSolo: 'channelSnapshotSolo',\n channelOffChainUpdateTransfer: 'channelOffChainUpdateTransfer',\n channelOffChainUpdateDeposit: 'channelOffChainUpdateDeposit',\n channelOffChainUpdateWithdrawal: 'channelOffChainUpdateWithdrawal',\n channelOffChainCreateContract: 'channelOffChainCreateContract',\n channelOffChainCallContract: 'channelOffChainCallContract',\n channelReconnect: 'channelReconnect',\n proofOfInclusion: 'proofOfInclusion',\n stateTrees: 'stateTrees',\n merklePatriciaTree: 'merklePatriciaTree',\n merklePatriciaTreeValue: 'merklePatriciaTreeValue',\n contractsTree: 'contractsTree',\n contractCallsTree: 'contractCallsTree',\n channelsTree: 'channelsTree',\n nameserviceTree: 'nameserviceTree',\n oraclesTree: 'oraclesTree',\n accountsTree: 'accountsTree',\n // GA ACCOUNTS\n gaAttach: 'gaAttach',\n gaMeta: 'gaMeta',\n payingFor: 'payingFor',\n sophiaByteCode: 'sophiaByteCode'\n}\n\n// # see https://github.com/aeternity/protocol/blob/minerva/contracts/contract_vms.md#virtual-machines-on-the-%C3%A6ternity-blockchain\nexport const VM_VERSIONS = {\n NO_VM: 0,\n SOPHIA: 1,\n SOPHIA_IMPROVEMENTS_MINERVA: 3,\n SOPHIA_IMPROVEMENTS_FORTUNA: 4,\n FATE: 5,\n SOPHIA_IMPROVEMENTS_LIMA: 6,\n FATE_2: 7\n}\n// # see https://github.com/aeternity/protocol/blob/minerva/contracts/contract_vms.md#virtual-machines-on-the-%C3%A6ternity-blockchain\nexport const ABI_VERSIONS = {\n NO_ABI: 0,\n SOPHIA: 1,\n FATE: 3\n}\n\nexport const PROTOCOL_VERSIONS = {\n IRIS: 5\n}\n\n// First abi/vm by default\nexport const PROTOCOL_VM_ABI = {\n [PROTOCOL_VERSIONS.IRIS]: {\n [TX_TYPE.contractCreate]: {\n vmVersion: [VM_VERSIONS.FATE_2], abiVersion: [ABI_VERSIONS.FATE]\n },\n // TODO: Ensure that AEVM is still available here\n [TX_TYPE.contractCall]: {\n vmVersion: [\n VM_VERSIONS.FATE_2,\n VM_VERSIONS.FATE,\n VM_VERSIONS.SOPHIA_IMPROVEMENTS_LIMA,\n VM_VERSIONS.SOPHIA_IMPROVEMENTS_FORTUNA,\n VM_VERSIONS.SOPHIA,\n VM_VERSIONS.SOPHIA_IMPROVEMENTS_MINERVA\n ],\n abiVersion: [ABI_VERSIONS.FATE, ABI_VERSIONS.SOPHIA]\n },\n [TX_TYPE.oracleRegister]: {\n vmVersion: [], abiVersion: [ABI_VERSIONS.NO_ABI, ABI_VERSIONS.SOPHIA]\n }\n }\n}\n\nexport const OBJECT_ID_TX_TYPE = {\n [OBJECT_TAG_ACCOUNT]: TX_TYPE.account,\n [OBJECT_TAG_SIGNED_TRANSACTION]: TX_TYPE.signed,\n [OBJECT_TAG_SPEND_TRANSACTION]: TX_TYPE.spend,\n // AENS\n [OBJECT_TAG_NAME_SERVICE_CLAIM_TRANSACTION]: TX_TYPE.nameClaim,\n [OBJECT_TAG_NAME_SERVICE_PRECLAIM_TRANSACTION]: TX_TYPE.namePreClaim,\n [OBJECT_TAG_NAME_SERVICE_UPDATE_TRANSACTION]: TX_TYPE.nameUpdate,\n [OBJECT_TAG_NAME_SERVICE_REVOKE_TRANSACTION]: TX_TYPE.nameRevoke,\n [OBJECT_TAG_NAME_SERVICE_TRANSFER_TRANSACTION]: TX_TYPE.nameTransfer,\n // CONTRACT\n [OBJECT_TAG_CONTRACT]: TX_TYPE.contract,\n [OBJECT_TAG_CONTRACT_CREATE_TRANSACTION]: TX_TYPE.contractCreate,\n [OBJECT_TAG_CONTRACT_CALL_TRANSACTION]: TX_TYPE.contractCall,\n [OBJECT_TAG_CONTRACT_CALL]: TX_TYPE.contractCallResult,\n // ORACLE\n [OBJECT_TAG_ORACLE_REGISTER_TRANSACTION]: TX_TYPE.oracleRegister,\n [OBJECT_TAG_ORACLE_EXTEND_TRANSACTION]: TX_TYPE.oracleExtend,\n [OBJECT_TAG_ORACLE_QUERY_TRANSACTION]: TX_TYPE.oracleQuery,\n [OBJECT_TAG_ORACLE_RESPONSE_TRANSACTION]: TX_TYPE.oracleResponse,\n // STATE CHANNEL\n [OBJECT_TAG_CHANNEL_CREATE_TX]: TX_TYPE.channelCreate,\n [OBJECT_TAG_CHANNEL_CLOSE_MUTUAL_TX]: TX_TYPE.channelCloseMutual,\n [OBJECT_TAG_CHANNEL_CLOSE_SOLO_TX]: TX_TYPE.channelCloseSolo,\n [OBJECT_TAG_CHANNEL_SLASH_TX]: TX_TYPE.channelSlash,\n [OBJECT_TAG_CHANNEL_FORCE_PROGRESS_TX]: TX_TYPE.channelForceProgress,\n [OBJECT_TAG_CHANNEL_DEPOSIT_TX]: TX_TYPE.channelDeposit,\n [OBJECT_TAG_CHANNEL_WITHRAW_TX]: TX_TYPE.channelWithdraw,\n [OBJECT_TAG_CHANNEL_SETTLE_TX]: TX_TYPE.channelSettle,\n [OBJECT_TAG_CHANNEL_OFFCHAIN_TX]: TX_TYPE.channelOffChain,\n [OBJECT_TAG_CHANNEL]: TX_TYPE.channel,\n [OBJECT_TAG_CHANNEL_SNAPSHOT_SOLO_TX]: TX_TYPE.channelSnapshotSolo,\n [OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX]: TX_TYPE.channelOffChainUpdateTransfer,\n [OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX]: TX_TYPE.channelOffChainUpdateDeposit,\n [OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX]: TX_TYPE.channelOffChainUpdateWithdrawal,\n [OBJECT_TAG_CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX]: TX_TYPE.channelOffChainCreateContract,\n [OBJECT_TAG_CHANNEL_OFFCHAIN_CALL_CONTRACT_TX]: TX_TYPE.channelOffChainCallContract,\n [OBJECT_TAG_CHANNEL_RECONNECT_TX]: TX_TYPE.channelReconnect,\n [OBJECT_TAG_PROOF_OF_INCLUSION]: TX_TYPE.proofOfInclusion,\n [OBJECT_TAG_STATE_TREES]: TX_TYPE.stateTrees,\n [OBJECT_TAG_MERKLE_PATRICIA_TREE]: TX_TYPE.merklePatriciaTree,\n [OBJECT_TAG_MERKLE_PATRICIA_TREE_VALUE]: TX_TYPE.merklePatriciaTreeValue,\n [OBJECT_TAG_CONTRACTS_TREE]: TX_TYPE.contractsTree,\n [OBJECT_TAG_CONTRACT_CALLS_TREE]: TX_TYPE.contractCallsTree,\n [OBJECT_TAG_CHANNELS_TREE]: TX_TYPE.channelsTree,\n [OBJECT_TAG_NAMESERVICE_TREE]: TX_TYPE.nameserviceTree,\n [OBJECT_TAG_ORACLES_TREE]: TX_TYPE.oraclesTree,\n [OBJECT_TAG_ACCOUNTS_TREE]: TX_TYPE.accountsTree,\n // GA Accounts\n [OBJECT_TAG_GA_ATTACH]: TX_TYPE.gaAttach,\n [OBJECT_TAG_GA_META]: TX_TYPE.gaMeta,\n [OBJECT_TAG_PAYING_FOR]: TX_TYPE.payingFor,\n [OBJECT_TAG_SOPHIA_BYTE_CODE]: TX_TYPE.sophiaByteCode\n}\n\nexport const FIELD_TYPES = {\n int: 'int',\n amount: 'amount',\n id: 'id',\n ids: 'ids',\n string: 'string',\n binary: 'binary',\n rlpBinary: 'rlpBinary',\n rlpBinaries: 'rlpBinaries',\n rawBinary: 'rawBinary',\n bool: 'bool',\n hex: 'hex',\n signatures: 'signatures',\n pointers: 'pointers',\n offChainUpdates: 'offChainUpdates',\n callStack: 'callStack',\n proofOfInclusion: 'proofOfInclusion',\n mptrees: 'mptrees',\n callReturnType: 'callReturnType',\n ctVersion: 'ctVersion',\n sophiaCodeTypeInfo: 'sophiaCodeTypeInfo',\n payload: 'payload',\n any: 'any',\n stateTree: 'stateTree'\n}\n\n// FEE CALCULATION\nexport const BASE_GAS = 15000\nexport const GAS_PER_BYTE = 20\nexport const DEFAULT_FEE = 20000\nexport const KEY_BLOCK_INTERVAL = 3\n\n// MAP WITH FEE CALCULATION https://github.com/aeternity/protocol/blob/master/consensus/consensus.md#gas\nexport const TX_FEE_BASE_GAS = (txType) => {\n const factor = ({\n [TX_TYPE.channelForceProgress]: 30,\n [TX_TYPE.channelOffChain]: 0,\n [TX_TYPE.channelOffChainCallContract]: 0,\n [TX_TYPE.channelOffChainCreateContract]: 0,\n [TX_TYPE.channelOffChainUpdateDeposit]: 0,\n [TX_TYPE.channelOffChainUpdateWithdrawal]: 0,\n [TX_TYPE.channelOffChainUpdateTransfer]: 0,\n [TX_TYPE.contractCreate]: 5,\n [TX_TYPE.contractCall]: 12,\n [TX_TYPE.gaAttach]: 5,\n [TX_TYPE.gaMeta]: 5,\n [TX_TYPE.payingFor]: 1 / 5\n })[txType] || 1\n return new BigNumber(factor * BASE_GAS)\n}\n\nexport const TX_FEE_OTHER_GAS = (txType, txSize, { relativeTtl, innerTxSize }) => {\n switch (txType) {\n case TX_TYPE.oracleRegister:\n case TX_TYPE.oracleExtend:\n case TX_TYPE.oracleQuery:\n case TX_TYPE.oracleResponse:\n return new BigNumber(txSize)\n .times(GAS_PER_BYTE)\n .plus(\n Math.ceil(32000 * relativeTtl / Math.floor(60 * 24 * 365 / KEY_BLOCK_INTERVAL))\n )\n case TX_TYPE.gaMeta:\n case TX_TYPE.payingFor:\n return new BigNumber(txSize).minus(innerTxSize).times(GAS_PER_BYTE)\n default:\n return new BigNumber(txSize).times(GAS_PER_BYTE)\n }\n}\n\nexport const ID_TAG = {\n account: ID_TAG_ACCOUNT,\n name: ID_TAG_NAME,\n commitment: ID_TAG_COMMITMENT,\n oracle: ID_TAG_ORACLE,\n contract: ID_TAG_CONTRACT,\n channel: ID_TAG_CHANNEL\n}\nexport const PREFIX_ID_TAG = {\n ak: ID_TAG.account,\n nm: ID_TAG.name,\n cm: ID_TAG.commitment,\n ok: ID_TAG.oracle,\n ct: ID_TAG.contract,\n ch: ID_TAG.channel\n}\nexport const ID_TAG_PREFIX = revertObject(PREFIX_ID_TAG)\nconst VALIDATION_ERROR = (msg) => msg\n\nexport const VALIDATION_MESSAGE = {\n [FIELD_TYPES.int]: ({ value, isMinusValue }) => isMinusValue ? VALIDATION_ERROR(`${value} must be >= 0`) : VALIDATION_ERROR(`${value} is not of type Number or BigNumber`),\n [FIELD_TYPES.amount]: ({ value, isMinusValue }) => isMinusValue ? VALIDATION_ERROR(`${value} must be >= 0`) : VALIDATION_ERROR(`${value} is not of type Number or BigNumber`),\n [FIELD_TYPES.id]: ({ value, prefix }) => VALIDATION_ERROR(`'${value}' prefix doesn't match expected prefix '${prefix}' or ID_TAG for prefix not found`),\n [FIELD_TYPES.binary]: ({ prefix, value }) => VALIDATION_ERROR(`'${value}' prefix doesn't match expected prefix '${prefix}'`),\n [FIELD_TYPES.string]: ({ value }) => VALIDATION_ERROR('Not a string'),\n [FIELD_TYPES.pointers]: ({ value }) => VALIDATION_ERROR('Value must be of type Array and contains only object\\'s like \\'{key: \"account_pubkey\", id: \"ak_lkamsflkalsdalksdlasdlasdlamd\"}\\''),\n [FIELD_TYPES.ctVersion]: ({ value }) => VALIDATION_ERROR('Value must be an object with \"vmVersion\" and \"abiVersion\" fields')\n}\n\nconst BASE_TX = [\n TX_FIELD('tag', FIELD_TYPES.int),\n TX_FIELD('VSN', FIELD_TYPES.int)\n]\n\nexport const CONTRACT_BYTE_CODE_LIMA = [\n ...BASE_TX,\n TX_FIELD('sourceCodeHash', FIELD_TYPES.rawBinary),\n TX_FIELD('typeInfo', FIELD_TYPES.sophiaCodeTypeInfo),\n TX_FIELD('byteCode', FIELD_TYPES.rawBinary),\n TX_FIELD('compilerVersion', FIELD_TYPES.string),\n TX_FIELD('payable', FIELD_TYPES.bool)\n]\n\nconst ACCOUNT_TX_2 = [\n ...BASE_TX,\n TX_FIELD('flags', FIELD_TYPES.int),\n TX_FIELD('nonce', FIELD_TYPES.int),\n TX_FIELD('balance', FIELD_TYPES.int),\n TX_FIELD('gaContract', FIELD_TYPES.id, ['ct', 'nm']),\n TX_FIELD('gaAuthFun', FIELD_TYPES.binary, 'cb')\n]\n\nconst SPEND_TX = [\n ...BASE_TX,\n TX_FIELD('senderId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('recipientId', FIELD_TYPES.id, ['ak', 'nm']),\n TX_FIELD('amount', FIELD_TYPES.amount),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('ttl', FIELD_TYPES.int),\n TX_FIELD('nonce', FIELD_TYPES.int),\n TX_FIELD('payload', FIELD_TYPES.payload)\n]\n\nconst SIGNED_TX = [\n ...BASE_TX,\n TX_FIELD('signatures', FIELD_TYPES.signatures),\n TX_FIELD('encodedTx', FIELD_TYPES.rlpBinary)\n]\n\nconst NAME_PRE_CLAIM_TX = [\n ...BASE_TX,\n TX_FIELD('accountId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('nonce', FIELD_TYPES.int),\n TX_FIELD('commitmentId', FIELD_TYPES.id, 'cm'),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('ttl', FIELD_TYPES.int)\n]\n\nconst NAME_CLAIM_TX_2 = [\n ...BASE_TX,\n TX_FIELD('accountId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('nonce', FIELD_TYPES.int),\n TX_FIELD('name', FIELD_TYPES.binary, 'nm'),\n TX_FIELD('nameSalt', FIELD_TYPES.int),\n TX_FIELD('nameFee', FIELD_TYPES.amount),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('ttl', FIELD_TYPES.int)\n]\n\nconst NAME_UPDATE_TX = [\n ...BASE_TX,\n TX_FIELD('accountId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('nonce', FIELD_TYPES.int),\n TX_FIELD('nameId', FIELD_TYPES.id, 'nm'),\n TX_FIELD('nameTtl', FIELD_TYPES.int),\n TX_FIELD('pointers', FIELD_TYPES.pointers),\n TX_FIELD('clientTtl', FIELD_TYPES.int),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('ttl', FIELD_TYPES.int)\n]\n\nconst NAME_TRANSFER_TX = [\n ...BASE_TX,\n TX_FIELD('accountId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('nonce', FIELD_TYPES.int),\n TX_FIELD('nameId', FIELD_TYPES.id, 'nm'),\n TX_FIELD('recipientId', FIELD_TYPES.id, ['ak', 'nm']),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('ttl', FIELD_TYPES.int)\n]\n\nconst NAME_REVOKE_TX = [\n ...BASE_TX,\n TX_FIELD('accountId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('nonce', FIELD_TYPES.int),\n TX_FIELD('nameId', FIELD_TYPES.id, 'nm'),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('ttl', FIELD_TYPES.int)\n]\n\nconst CONTRACT_TX = [\n ...BASE_TX,\n TX_FIELD('owner', FIELD_TYPES.id, 'ak'),\n TX_FIELD('ctVersion', FIELD_TYPES.int),\n TX_FIELD('code', FIELD_TYPES.binary, 'cb'),\n TX_FIELD('log', FIELD_TYPES.binary, 'cb'),\n TX_FIELD('active', FIELD_TYPES.bool),\n TX_FIELD('referers', FIELD_TYPES.ids, 'ak'),\n TX_FIELD('deposit', FIELD_TYPES.amount)\n]\n\nconst GA_ATTACH_TX = [\n ...BASE_TX,\n TX_FIELD('ownerId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('nonce', FIELD_TYPES.int),\n TX_FIELD('code', FIELD_TYPES.binary, 'cb'),\n TX_FIELD('authFun', FIELD_TYPES.rawBinary),\n TX_FIELD('ctVersion', FIELD_TYPES.ctVersion),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('ttl', FIELD_TYPES.int),\n TX_FIELD('gas', FIELD_TYPES.int),\n TX_FIELD('gasPrice', FIELD_TYPES.int),\n TX_FIELD('callData', FIELD_TYPES.binary, 'cb')\n]\n\nconst GA_META_TX_2 = [\n ...BASE_TX,\n TX_FIELD('gaId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('authData', FIELD_TYPES.binary, 'cb'),\n TX_FIELD('abiVersion', FIELD_TYPES.int),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('gas', FIELD_TYPES.int),\n TX_FIELD('gasPrice', FIELD_TYPES.int),\n TX_FIELD('tx', FIELD_TYPES.rlpBinary)\n]\n\nconst PAYING_FOR_TX = [\n ...BASE_TX,\n TX_FIELD('payerId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('nonce', FIELD_TYPES.int),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('tx', FIELD_TYPES.rlpBinary)\n]\n\nconst CONTRACT_CREATE_TX = [\n ...BASE_TX,\n TX_FIELD('ownerId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('nonce', FIELD_TYPES.int),\n TX_FIELD('code', FIELD_TYPES.binary, 'cb'),\n TX_FIELD('ctVersion', FIELD_TYPES.ctVersion),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('ttl', FIELD_TYPES.int),\n TX_FIELD('deposit', FIELD_TYPES.amount),\n TX_FIELD('amount', FIELD_TYPES.amount),\n TX_FIELD('gas', FIELD_TYPES.int),\n TX_FIELD('gasPrice', FIELD_TYPES.int),\n TX_FIELD('callData', FIELD_TYPES.binary, 'cb')\n]\n\nconst CONTRACT_CALL_TX = [\n ...BASE_TX,\n TX_FIELD('callerId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('nonce', FIELD_TYPES.int),\n TX_FIELD('contractId', FIELD_TYPES.id, ['ct', 'nm']),\n TX_FIELD('abiVersion', FIELD_TYPES.int),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('ttl', FIELD_TYPES.int),\n TX_FIELD('amount', FIELD_TYPES.amount),\n TX_FIELD('gas', FIELD_TYPES.int),\n TX_FIELD('gasPrice', FIELD_TYPES.int),\n TX_FIELD('callData', FIELD_TYPES.binary, 'cb')\n]\n\nconst CONTRACT_CALL_RESULT_TX = [\n ...BASE_TX,\n TX_FIELD('callerId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('callerNonce', FIELD_TYPES.int),\n TX_FIELD('height', FIELD_TYPES.int),\n TX_FIELD('contractId', FIELD_TYPES.id, 'ct'),\n TX_FIELD('gasPrice', FIELD_TYPES.int),\n TX_FIELD('gasUsed', FIELD_TYPES.int),\n TX_FIELD('returnValue', FIELD_TYPES.binary, 'cb'),\n TX_FIELD('returnType', FIELD_TYPES.callReturnType),\n // TODO: add serialization for <log> :: [ { <address> :: id, [ <topics> :: binary() ], <data> :: binary() } ]\n TX_FIELD('log', FIELD_TYPES.rawBinary)\n]\n\nconst ORACLE_REGISTER_TX = [\n ...BASE_TX,\n TX_FIELD('accountId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('nonce', FIELD_TYPES.int),\n TX_FIELD('queryFormat', FIELD_TYPES.string),\n TX_FIELD('responseFormat', FIELD_TYPES.string),\n TX_FIELD('queryFee', FIELD_TYPES.amount),\n TX_FIELD('oracleTtlType', FIELD_TYPES.int),\n TX_FIELD('oracleTtlValue', FIELD_TYPES.int),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('ttl', FIELD_TYPES.int),\n TX_FIELD('abiVersion', FIELD_TYPES.int)\n]\n\nconst ORACLE_EXTEND_TX = [\n ...BASE_TX,\n TX_FIELD('oracleId', FIELD_TYPES.id, ['ok', 'nm']),\n TX_FIELD('nonce', FIELD_TYPES.int),\n TX_FIELD('oracleTtlType', FIELD_TYPES.int),\n TX_FIELD('oracleTtlValue', FIELD_TYPES.int),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('ttl', FIELD_TYPES.int)\n]\n\nconst ORACLE_QUERY_TX = [\n ...BASE_TX,\n TX_FIELD('senderId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('nonce', FIELD_TYPES.int),\n TX_FIELD('oracleId', FIELD_TYPES.id, ['ok', 'nm']),\n TX_FIELD('query', FIELD_TYPES.string),\n TX_FIELD('queryFee', FIELD_TYPES.amount),\n TX_FIELD('queryTtlType', FIELD_TYPES.int),\n TX_FIELD('queryTtlValue', FIELD_TYPES.int),\n TX_FIELD('responseTtlType', FIELD_TYPES.int),\n TX_FIELD('responseTtlValue', FIELD_TYPES.int),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('ttl', FIELD_TYPES.int)\n]\nconst ORACLE_RESPOND_TX = [\n ...BASE_TX,\n TX_FIELD('oracleId', FIELD_TYPES.id, 'ok'),\n TX_FIELD('nonce', FIELD_TYPES.int),\n TX_FIELD('queryId', FIELD_TYPES.binary, 'oq'),\n TX_FIELD('response', FIELD_TYPES.string),\n TX_FIELD('responseTtlType', FIELD_TYPES.int),\n TX_FIELD('responseTtlValue', FIELD_TYPES.int),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('ttl', FIELD_TYPES.int)\n]\n\nconst CHANNEL_CREATE_TX_2 = [\n ...BASE_TX,\n TX_FIELD('initiator', FIELD_TYPES.id, 'ak'),\n TX_FIELD('initiatorAmount', FIELD_TYPES.int),\n TX_FIELD('responder', FIELD_TYPES.id, 'ak'),\n TX_FIELD('responderAmount', FIELD_TYPES.int),\n TX_FIELD('channelReserve', FIELD_TYPES.int),\n TX_FIELD('lockPeriod', FIELD_TYPES.int),\n TX_FIELD('ttl', FIELD_TYPES.int),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('initiatorDelegateIds', FIELD_TYPES.string),\n TX_FIELD('responderDelegateIds', FIELD_TYPES.string),\n TX_FIELD('stateHash', FIELD_TYPES.binary, 'st'),\n TX_FIELD('nonce', FIELD_TYPES.int)\n]\n\nconst CHANNEL_DEPOSIT_TX = [\n ...BASE_TX,\n TX_FIELD('channelId', FIELD_TYPES.id, 'ch'),\n TX_FIELD('fromId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('amount', FIELD_TYPES.int),\n TX_FIELD('ttl', FIELD_TYPES.int),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('stateHash', FIELD_TYPES.binary, 'st'),\n TX_FIELD('round', FIELD_TYPES.int),\n TX_FIELD('nonce', FIELD_TYPES.int)\n]\n\nconst CHANNEL_WITHDRAW_TX = [\n ...BASE_TX,\n TX_FIELD('channelId', FIELD_TYPES.id, 'ch'),\n TX_FIELD('toId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('amount', FIELD_TYPES.int),\n TX_FIELD('ttl', FIELD_TYPES.int),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('stateHash', FIELD_TYPES.binary, 'st'),\n TX_FIELD('round', FIELD_TYPES.int),\n TX_FIELD('nonce', FIELD_TYPES.int)\n]\n\nconst CHANNEL_CLOSE_MUTUAL_TX = [\n ...BASE_TX,\n TX_FIELD('channelId', FIELD_TYPES.id, 'ch'),\n TX_FIELD('fromId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('initiatorAmountFinal', FIELD_TYPES.int),\n TX_FIELD('responderAmountFinal', FIELD_TYPES.int),\n TX_FIELD('ttl', FIELD_TYPES.int),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('nonce', FIELD_TYPES.int)\n]\n\nconst CHANNEL_CLOSE_SOLO_TX = [\n ...BASE_TX,\n TX_FIELD('channelId', FIELD_TYPES.id, 'ch'),\n TX_FIELD('fromId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('payload', FIELD_TYPES.binary, 'tx'),\n TX_FIELD('poi', FIELD_TYPES.binary, 'pi'),\n TX_FIELD('ttl', FIELD_TYPES.int),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('nonce', FIELD_TYPES.int)\n]\n\nconst CHANNEL_SLASH_TX = [\n ...BASE_TX,\n TX_FIELD('channelId', FIELD_TYPES.id, 'ch'),\n TX_FIELD('fromId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('payload', FIELD_TYPES.binary, 'tx'),\n TX_FIELD('poi', FIELD_TYPES.binary, 'pi'),\n TX_FIELD('ttl', FIELD_TYPES.int),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('nonce', FIELD_TYPES.int)\n]\n\nconst CHANNEL_SETTLE_TX = [\n ...BASE_TX,\n TX_FIELD('channelId', FIELD_TYPES.id, 'ch'),\n TX_FIELD('fromId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('initiatorAmountFinal', FIELD_TYPES.int),\n TX_FIELD('responderAmountFinal', FIELD_TYPES.int),\n TX_FIELD('ttl', FIELD_TYPES.int),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('nonce', FIELD_TYPES.int)\n]\n\nconst CHANNEL_FORCE_PROGRESS_TX = [\n ...BASE_TX,\n TX_FIELD('channelId', FIELD_TYPES.id, 'ch'),\n TX_FIELD('fromId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('payload', FIELD_TYPES.binary, 'tx'),\n TX_FIELD('round', FIELD_TYPES.int),\n TX_FIELD('update', FIELD_TYPES.binary),\n TX_FIELD('stateHash', FIELD_TYPES.binary),\n TX_FIELD('offChainTrees', FIELD_TYPES.stateTree),\n TX_FIELD('ttl', FIELD_TYPES.int),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('nonce', FIELD_TYPES.int)\n]\n\nconst CHANNEL_OFFCHAIN_TX_2 = [\n ...BASE_TX,\n TX_FIELD('channelId', FIELD_TYPES.id, 'ch'),\n TX_FIELD('round', FIELD_TYPES.int),\n TX_FIELD('stateHash', FIELD_TYPES.binary, 'st')\n]\n\nconst CHANNEL_TX_3 = [\n ...BASE_TX,\n TX_FIELD('initiator', FIELD_TYPES.id, 'ak'),\n TX_FIELD('responder', FIELD_TYPES.id, 'ak'),\n TX_FIELD('channelAmount', FIELD_TYPES.int),\n TX_FIELD('initiatorAmount', FIELD_TYPES.int),\n TX_FIELD('responderAmount', FIELD_TYPES.int),\n TX_FIELD('channelReserve', FIELD_TYPES.int),\n TX_FIELD('initiatorDelegateIds', FIELD_TYPES.ids),\n TX_FIELD('responderDelegateIds', FIELD_TYPES.ids),\n TX_FIELD('stateHash', FIELD_TYPES.hex),\n TX_FIELD('round', FIELD_TYPES.int),\n TX_FIELD('soloRound', FIELD_TYPES.int),\n TX_FIELD('lockPeriod', FIELD_TYPES.int),\n TX_FIELD('lockedUntil', FIELD_TYPES.int),\n TX_FIELD('initiatorAuth', FIELD_TYPES.binary, 'cb'),\n TX_FIELD('responderAuth', FIELD_TYPES.binary, 'cb')\n]\n\nconst CHANNEL_SNAPSHOT_SOLO_TX = [\n ...BASE_TX,\n TX_FIELD('channelId', FIELD_TYPES.id, 'ch'),\n TX_FIELD('fromId', FIELD_TYPES.id, 'ak'),\n TX_FIELD('payload', FIELD_TYPES.binary, 'tx'),\n TX_FIELD('ttl', FIELD_TYPES.int),\n TX_FIELD('fee', FIELD_TYPES.int),\n TX_FIELD('nonce', FIELD_TYPES.int)\n]\n\nconst CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX = [\n ...BASE_TX,\n TX_FIELD('owner', FIELD_TYPES.id, 'ak'),\n TX_FIELD('ctVersion', FIELD_TYPES.int),\n TX_FIELD('code', FIELD_TYPES.binary, 'cb'),\n TX_FIELD('deposit', FIELD_TYPES.int),\n TX_FIELD('callData', FIELD_TYPES.binary, 'cb')\n]\n\nconst CHANNEL_OFFCHAIN_CALL_CONTRACT_TX = [\n ...BASE_TX,\n TX_FIELD('caller', FIELD_TYPES.id, 'ak'),\n TX_FIELD('contract', FIELD_TYPES.id, 'ct'),\n TX_FIELD('abiVersion', FIELD_TYPES.int),\n TX_FIELD('amount', FIELD_TYPES.int),\n TX_FIELD('callData', FIELD_TYPES.binary, 'cb'),\n TX_FIELD('callStack', FIELD_TYPES.callStack),\n TX_FIELD('gasPrice', FIELD_TYPES.int),\n TX_FIELD('gasLimit', FIELD_TYPES.int)\n]\n\nconst CHANNEL_RECONNECT_TX = [\n ...BASE_TX,\n TX_FIELD('channelId', FIELD_TYPES.id, 'ch'),\n TX_FIELD('round', FIELD_TYPES.int),\n TX_FIELD('role', FIELD_TYPES.string),\n TX_FIELD('pubkey', FIELD_TYPES.id, 'ak')\n]\n\nconst CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX = [\n ...BASE_TX,\n TX_FIELD('from', FIELD_TYPES.id, 'ak'),\n TX_FIELD('to', FIELD_TYPES.id, 'ak'),\n TX_FIELD('amount', FIELD_TYPES.int)\n]\n\nconst CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX = [\n ...BASE_TX,\n TX_FIELD('from', FIELD_TYPES.id, 'ak'),\n TX_FIELD('amount', FIELD_TYPES.int)\n]\n\nconst CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX = [\n ...BASE_TX,\n TX_FIELD('from', FIELD_TYPES.id, 'ak'),\n TX_FIELD('amount', FIELD_TYPES.int)\n]\n\nconst PROOF_OF_INCLUSION_TX = [\n ...BASE_TX,\n TX_FIELD('accounts', FIELD_TYPES.mptrees),\n TX_FIELD('calls', FIELD_TYPES.mptrees),\n TX_FIELD('channels', FIELD_TYPES.mptrees),\n TX_FIELD('contracts', FIELD_TYPES.mptrees),\n TX_FIELD('ns', FIELD_TYPES.mptrees),\n TX_FIELD('oracles', FIELD_TYPES.mptrees)\n]\n\nconst STATE_TREES_TX = [\n ...BASE_TX,\n TX_FIELD('contracts', FIELD_TYPES.rlpBinary),\n TX_FIELD('calls', FIELD_TYPES.rlpBinary),\n TX_FIELD('channels', FIELD_TYPES.rlpBinary),\n TX_FIELD('ns', FIELD_TYPES.rlpBinary),\n TX_FIELD('oracles', FIELD_TYPES.rlpBinary),\n TX_FIELD('accounts', FIELD_TYPES.rlpBinary)\n]\n\nconst MERKLE_PATRICIA_TREE_TX = [\n ...BASE_TX,\n TX_FIELD('values', FIELD_TYPES.rlpBinaries)\n]\n\nconst MERKLE_PATRICIA_TREE_VALUE_TX = [\n ...BASE_TX,\n TX_FIELD('key', FIELD_TYPES.hex),\n TX_FIELD('value', FIELD_TYPES.rawBinary)\n]\n\nconst CONTRACTS_TREE_TX = [\n ...BASE_TX,\n TX_FIELD('contracts', FIELD_TYPES.rlpBinary)\n]\n\nconst CONTRACT_CALLS_TREE_TX = [\n ...BASE_TX,\n TX_FIELD('calls', FIELD_TYPES.rlpBinary)\n]\n\nconst CHANNELS_TREE_TX = [\n ...BASE_TX,\n TX_FIELD('channels', FIELD_TYPES.rlpBinary)\n]\n\nconst NAMESERVICE_TREE_TX = [\n ...BASE_TX,\n TX_FIELD('mtree', FIELD_TYPES.rlpBinary)\n]\n\nconst ORACLES_TREE_TX = [\n ...BASE_TX,\n TX_FIELD('otree', FIELD_TYPES.rlpBinary)\n]\n\nconst ACCOUNTS_TREE_TX = [\n ...BASE_TX,\n TX_FIELD('accounts', FIELD_TYPES.rlpBinary)\n]\n\nexport const TX_SERIALIZATION_SCHEMA = {\n [TX_TYPE.account]: {\n 2: TX_SCHEMA_FIELD(ACCOUNT_TX_2, OBJECT_TAG_ACCOUNT)\n },\n [TX_TYPE.signed]: {\n 1: TX_SCHEMA_FIELD(SIGNED_TX, OBJECT_TAG_SIGNED_TRANSACTION)\n },\n [TX_TYPE.spend]: {\n 1: TX_SCHEMA_FIELD(SPEND_TX, OBJECT_TAG_SPEND_TRANSACTION)\n },\n [TX_TYPE.namePreClaim]: {\n 1: TX_SCHEMA_FIELD(NAME_PRE_CLAIM_TX, OBJECT_TAG_NAME_SERVICE_PRECLAIM_TRANSACTION)\n },\n [TX_TYPE.nameClaim]: {\n 2: TX_SCHEMA_FIELD(NAME_CLAIM_TX_2, OBJECT_TAG_NAME_SERVICE_CLAIM_TRANSACTION)\n },\n [TX_TYPE.nameUpdate]: {\n 1: TX_SCHEMA_FIELD(NAME_UPDATE_TX, OBJECT_TAG_NAME_SERVICE_UPDATE_TRANSACTION)\n },\n [TX_TYPE.nameTransfer]: {\n 1: TX_SCHEMA_FIELD(NAME_TRANSFER_TX, OBJECT_TAG_NAME_SERVICE_TRANSFER_TRANSACTION)\n },\n [TX_TYPE.nameRevoke]: {\n 1: TX_SCHEMA_FIELD(NAME_REVOKE_TX, OBJECT_TAG_NAME_SERVICE_REVOKE_TRANSACTION)\n },\n [TX_TYPE.contract]: {\n 1: TX_SCHEMA_FIELD(CONTRACT_TX, OBJECT_TAG_CONTRACT)\n },\n [TX_TYPE.contractCreate]: {\n 1: TX_SCHEMA_FIELD(CONTRACT_CREATE_TX, OBJECT_TAG_CONTRACT_CREATE_TRANSACTION)\n },\n [TX_TYPE.contractCall]: {\n 1: TX_SCHEMA_FIELD(CONTRACT_CALL_TX, OBJECT_TAG_CONTRACT_CALL_TRANSACTION)\n },\n [TX_TYPE.contractCallResult]: {\n 1: TX_SCHEMA_FIELD(CONTRACT_CALL_RESULT_TX, OBJECT_TAG_CONTRACT_CALL)\n },\n [TX_TYPE.oracleRegister]: {\n 1: TX_SCHEMA_FIELD(ORACLE_REGISTER_TX, OBJECT_TAG_ORACLE_REGISTER_TRANSACTION)\n },\n [TX_TYPE.oracleExtend]: {\n 1: TX_SCHEMA_FIELD(ORACLE_EXTEND_TX, OBJECT_TAG_ORACLE_EXTEND_TRANSACTION)\n },\n [TX_TYPE.oracleQuery]: {\n 1: TX_SCHEMA_FIELD(ORACLE_QUERY_TX, OBJECT_TAG_ORACLE_QUERY_TRANSACTION)\n },\n [TX_TYPE.oracleResponse]: {\n 1: TX_SCHEMA_FIELD(ORACLE_RESPOND_TX, OBJECT_TAG_ORACLE_RESPONSE_TRANSACTION)\n },\n [TX_TYPE.channelCreate]: {\n 2: TX_SCHEMA_FIELD(CHANNEL_CREATE_TX_2, OBJECT_TAG_CHANNEL_CREATE_TX)\n },\n [TX_TYPE.channelCloseMutual]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_CLOSE_MUTUAL_TX, OBJECT_TAG_CHANNEL_CLOSE_MUTUAL_TX)\n },\n [TX_TYPE.channelCloseSolo]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_CLOSE_SOLO_TX, OBJECT_TAG_CHANNEL_CLOSE_SOLO_TX)\n },\n [TX_TYPE.channelSlash]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_SLASH_TX, OBJECT_TAG_CHANNEL_SLASH_TX)\n },\n [TX_TYPE.channelDeposit]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_DEPOSIT_TX, OBJECT_TAG_CHANNEL_DEPOSIT_TX)\n },\n [TX_TYPE.channelWithdraw]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_WITHDRAW_TX, OBJECT_TAG_CHANNEL_WITHRAW_TX)\n },\n [TX_TYPE.channelSettle]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_SETTLE_TX, OBJECT_TAG_CHANNEL_SETTLE_TX)\n },\n [TX_TYPE.channelForceProgress]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_FORCE_PROGRESS_TX, OBJECT_TAG_CHANNEL_FORCE_PROGRESS_TX)\n },\n [TX_TYPE.channelOffChain]: {\n 2: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_TX_2, OBJECT_TAG_CHANNEL_OFFCHAIN_TX)\n },\n [TX_TYPE.channel]: {\n 3: TX_SCHEMA_FIELD(CHANNEL_TX_3, OBJECT_TAG_CHANNEL)\n },\n [TX_TYPE.channelSnapshotSolo]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_SNAPSHOT_SOLO_TX, OBJECT_TAG_CHANNEL_SNAPSHOT_SOLO_TX)\n },\n [TX_TYPE.channelOffChainUpdateTransfer]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX)\n },\n [TX_TYPE.channelOffChainUpdateDeposit]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX)\n },\n [TX_TYPE.channelOffChainUpdateWithdrawal]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX)\n },\n [TX_TYPE.channelOffChainCreateContract]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX)\n },\n [TX_TYPE.channelOffChainCallContract]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_CALL_CONTRACT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_CALL_CONTRACT_TX)\n },\n [TX_TYPE.channelReconnect]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_RECONNECT_TX, OBJECT_TAG_CHANNEL_RECONNECT_TX)\n },\n [TX_TYPE.proofOfInclusion]: {\n 1: TX_SCHEMA_FIELD(PROOF_OF_INCLUSION_TX, OBJECT_TAG_PROOF_OF_INCLUSION)\n },\n [TX_TYPE.stateTrees]: {\n 1: TX_SCHEMA_FIELD(STATE_TREES_TX, OBJECT_TAG_STATE_TREES)\n },\n [TX_TYPE.merklePatriciaTree]: {\n 1: TX_SCHEMA_FIELD(MERKLE_PATRICIA_TREE_TX, OBJECT_TAG_MERKLE_PATRICIA_TREE)\n },\n [TX_TYPE.merklePatriciaTreeValue]: {\n 1: TX_SCHEMA_FIELD(MERKLE_PATRICIA_TREE_VALUE_TX, OBJECT_TAG_MERKLE_PATRICIA_TREE_VALUE)\n },\n [TX_TYPE.contractsTree]: {\n 1: TX_SCHEMA_FIELD(CONTRACTS_TREE_TX, OBJECT_TAG_CONTRACTS_TREE)\n },\n [TX_TYPE.contractCallsTree]: {\n 1: TX_SCHEMA_FIELD(CONTRACT_CALLS_TREE_TX, OBJECT_TAG_CONTRACT_CALLS_TREE)\n },\n [TX_TYPE.channelsTree]: {\n 1: TX_SCHEMA_FIELD(CHANNELS_TREE_TX, OBJECT_TAG_CHANNELS_TREE)\n },\n [TX_TYPE.nameserviceTree]: {\n 1: TX_SCHEMA_FIELD(NAMESERVICE_TREE_TX, OBJECT_TAG_NAMESERVICE_TREE)\n },\n [TX_TYPE.oraclesTree]: {\n 1: TX_SCHEMA_FIELD(ORACLES_TREE_TX, OBJECT_TAG_ORACLES_TREE)\n },\n [TX_TYPE.accountsTree]: {\n 1: TX_SCHEMA_FIELD(ACCOUNTS_TREE_TX, OBJECT_TAG_ACCOUNTS_TREE)\n },\n [TX_TYPE.gaAttach]: {\n 1: TX_SCHEMA_FIELD(GA_ATTACH_TX, OBJECT_TAG_GA_ATTACH)\n },\n [TX_TYPE.gaMeta]: {\n 2: TX_SCHEMA_FIELD(GA_META_TX_2, OBJECT_TAG_GA_META)\n },\n [TX_TYPE.payingFor]: {\n 1: TX_SCHEMA_FIELD(PAYING_FOR_TX, OBJECT_TAG_PAYING_FOR)\n }\n}\n\nexport const TX_DESERIALIZATION_SCHEMA = {\n [OBJECT_TAG_ACCOUNT]: {\n 2: TX_SCHEMA_FIELD(ACCOUNT_TX_2, OBJECT_TAG_ACCOUNT)\n },\n [OBJECT_TAG_SIGNED_TRANSACTION]: {\n 1: TX_SCHEMA_FIELD(SIGNED_TX, OBJECT_TAG_SIGNED_TRANSACTION)\n },\n [OBJECT_TAG_SPEND_TRANSACTION]: {\n 1: TX_SCHEMA_FIELD(SPEND_TX, OBJECT_TAG_SPEND_TRANSACTION)\n },\n [OBJECT_TAG_NAME_SERVICE_PRECLAIM_TRANSACTION]: {\n 1: TX_SCHEMA_FIELD(NAME_PRE_CLAIM_TX, OBJECT_TAG_NAME_SERVICE_PRECLAIM_TRANSACTION)\n },\n [OBJECT_TAG_NAME_SERVICE_CLAIM_TRANSACTION]: {\n 2: TX_SCHEMA_FIELD(NAME_CLAIM_TX_2, OBJECT_TAG_NAME_SERVICE_CLAIM_TRANSACTION)\n },\n [OBJECT_TAG_NAME_SERVICE_UPDATE_TRANSACTION]: {\n 1: TX_SCHEMA_FIELD(NAME_UPDATE_TX, OBJECT_TAG_NAME_SERVICE_UPDATE_TRANSACTION)\n },\n [OBJECT_TAG_NAME_SERVICE_TRANSFER_TRANSACTION]: {\n 1: TX_SCHEMA_FIELD(NAME_TRANSFER_TX, OBJECT_TAG_NAME_SERVICE_TRANSFER_TRANSACTION)\n },\n [OBJECT_TAG_NAME_SERVICE_REVOKE_TRANSACTION]: {\n 1: TX_SCHEMA_FIELD(NAME_REVOKE_TX, OBJECT_TAG_NAME_SERVICE_REVOKE_TRANSACTION)\n },\n [OBJECT_TAG_CONTRACT]: {\n 1: TX_SCHEMA_FIELD(CONTRACT_TX, OBJECT_TAG_CONTRACT)\n },\n [OBJECT_TAG_CONTRACT_CREATE_TRANSACTION]: {\n 1: TX_SCHEMA_FIELD(CONTRACT_CREATE_TX, OBJECT_TAG_CONTRACT_CREATE_TRANSACTION)\n },\n [OBJECT_TAG_CONTRACT_CALL_TRANSACTION]: {\n 1: TX_SCHEMA_FIELD(CONTRACT_CALL_TX, OBJECT_TAG_CONTRACT_CALL_TRANSACTION)\n },\n [OBJECT_TAG_CONTRACT_CALL]: {\n 1: TX_SCHEMA_FIELD(CONTRACT_CALL_RESULT_TX, OBJECT_TAG_CONTRACT_CALL)\n },\n [OBJECT_TAG_ORACLE_REGISTER_TRANSACTION]: {\n 1: TX_SCHEMA_FIELD(ORACLE_REGISTER_TX, OBJECT_TAG_ORACLE_REGISTER_TRANSACTION)\n },\n [OBJECT_TAG_ORACLE_EXTEND_TRANSACTION]: {\n 1: TX_SCHEMA_FIELD(ORACLE_EXTEND_TX, OBJECT_TAG_ORACLE_EXTEND_TRANSACTION)\n },\n [OBJECT_TAG_ORACLE_QUERY_TRANSACTION]: {\n 1: TX_SCHEMA_FIELD(ORACLE_QUERY_TX, OBJECT_TAG_ORACLE_QUERY_TRANSACTION)\n },\n [OBJECT_TAG_ORACLE_RESPONSE_TRANSACTION]: {\n 1: TX_SCHEMA_FIELD(ORACLE_RESPOND_TX, OBJECT_TAG_ORACLE_RESPONSE_TRANSACTION)\n },\n [OBJECT_TAG_CHANNEL_CREATE_TX]: {\n 2: TX_SCHEMA_FIELD(CHANNEL_CREATE_TX_2, OBJECT_TAG_CHANNEL_CREATE_TX)\n },\n [OBJECT_TAG_CHANNEL_CLOSE_MUTUAL_TX]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_CLOSE_MUTUAL_TX, OBJECT_TAG_CHANNEL_CLOSE_MUTUAL_TX)\n },\n [OBJECT_TAG_CHANNEL_CLOSE_SOLO_TX]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_CLOSE_SOLO_TX, OBJECT_TAG_CHANNEL_CLOSE_SOLO_TX)\n },\n [OBJECT_TAG_CHANNEL_SLASH_TX]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_SLASH_TX, OBJECT_TAG_CHANNEL_SLASH_TX)\n },\n [OBJECT_TAG_CHANNEL_DEPOSIT_TX]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_DEPOSIT_TX, OBJECT_TAG_CHANNEL_DEPOSIT_TX)\n },\n [OBJECT_TAG_CHANNEL_WITHRAW_TX]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_WITHDRAW_TX, OBJECT_TAG_CHANNEL_WITHRAW_TX)\n },\n [OBJECT_TAG_CHANNEL_SETTLE_TX]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_SETTLE_TX, OBJECT_TAG_CHANNEL_SETTLE_TX)\n },\n [OBJECT_TAG_CHANNEL_OFFCHAIN_TX]: {\n 2: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_TX_2, OBJECT_TAG_CHANNEL_OFFCHAIN_TX)\n },\n [OBJECT_TAG_CHANNEL]: {\n 3: TX_SCHEMA_FIELD(CHANNEL_TX_3, OBJECT_TAG_CHANNEL)\n },\n [OBJECT_TAG_CHANNEL_SNAPSHOT_SOLO_TX]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_SNAPSHOT_SOLO_TX, OBJECT_TAG_CHANNEL_SNAPSHOT_SOLO_TX)\n },\n [OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX)\n },\n [OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX)\n },\n [OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX)\n },\n [OBJECT_TAG_CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX)\n },\n [OBJECT_TAG_CHANNEL_OFFCHAIN_CALL_CONTRACT_TX]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_CALL_CONTRACT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_CALL_CONTRACT_TX)\n },\n [OBJECT_TAG_CHANNEL_RECONNECT_TX]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_RECONNECT_TX, OBJECT_TAG_CHANNEL_RECONNECT_TX)\n },\n [OBJECT_TAG_PROOF_OF_INCLUSION]: {\n 1: TX_SCHEMA_FIELD(PROOF_OF_INCLUSION_TX, OBJECT_TAG_PROOF_OF_INCLUSION)\n },\n [OBJECT_TAG_STATE_TREES]: {\n 1: TX_SCHEMA_FIELD(STATE_TREES_TX, OBJECT_TAG_STATE_TREES)\n },\n [OBJECT_TAG_MERKLE_PATRICIA_TREE]: {\n 1: TX_SCHEMA_FIELD(MERKLE_PATRICIA_TREE_TX, OBJECT_TAG_MERKLE_PATRICIA_TREE)\n },\n [OBJECT_TAG_MERKLE_PATRICIA_TREE_VALUE]: {\n 1: TX_SCHEMA_FIELD(MERKLE_PATRICIA_TREE_VALUE_TX, OBJECT_TAG_MERKLE_PATRICIA_TREE_VALUE)\n },\n [OBJECT_TAG_CONTRACTS_TREE]: {\n 1: TX_SCHEMA_FIELD(CONTRACTS_TREE_TX, OBJECT_TAG_CONTRACTS_TREE)\n },\n [OBJECT_TAG_CONTRACT_CALLS_TREE]: {\n 1: TX_SCHEMA_FIELD(CONTRACT_CALLS_TREE_TX, OBJECT_TAG_CONTRACT_CALLS_TREE)\n },\n [OBJECT_TAG_CHANNELS_TREE]: {\n 1: TX_SCHEMA_FIELD(CHANNELS_TREE_TX, OBJECT_TAG_CHANNELS_TREE)\n },\n [OBJECT_TAG_NAMESERVICE_TREE]: {\n 1: TX_SCHEMA_FIELD(NAMESERVICE_TREE_TX, OBJECT_TAG_NAMESERVICE_TREE)\n },\n [OBJECT_TAG_ORACLES_TREE]: {\n 1: TX_SCHEMA_FIELD(ORACLES_TREE_TX, OBJECT_TAG_ORACLES_TREE)\n },\n [OBJECT_TAG_ACCOUNTS_TREE]: {\n 1: TX_SCHEMA_FIELD(ACCOUNTS_TREE_TX, OBJECT_TAG_ACCOUNTS_TREE)\n },\n [OBJECT_TAG_GA_ATTACH]: {\n 1: TX_SCHEMA_FIELD(GA_ATTACH_TX, OBJECT_TAG_GA_ATTACH)\n },\n [OBJECT_TAG_GA_META]: {\n 2: TX_SCHEMA_FIELD(GA_META_TX_2, OBJECT_TAG_GA_META)\n },\n [OBJECT_TAG_PAYING_FOR]: {\n 1: TX_SCHEMA_FIELD(PAYING_FOR_TX, OBJECT_TAG_PAYING_FOR)\n },\n [OBJECT_TAG_CHANNEL_FORCE_PROGRESS_TX]: {\n 1: TX_SCHEMA_FIELD(CHANNEL_FORCE_PROGRESS_TX, OBJECT_TAG_CHANNEL_FORCE_PROGRESS_TX)\n },\n [OBJECT_TAG_SOPHIA_BYTE_CODE]: {\n 3: TX_SCHEMA_FIELD(CONTRACT_BYTE_CODE_LIMA, OBJECT_TAG_SOPHIA_BYTE_CODE)\n }\n}\n"],"file":"schema.js"}
|
package/es/tx/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/tx/index.js"],"names":["stampit","required","Tx","methods","spendTx","namePreclaimTx","nameClaimTx","nameTransferTx","nameUpdateTx","nameRevokeTx","contractCreateTx","contractCallTx","oracleRegisterTx","oracleExtendTx","oraclePostQueryTx","oracleRespondTx","getAccountNonce","channelCloseSoloTx","channelSlashTx","channelSettleTx","channelSnapshotSoloTx","gaAttachTx","getVmVersion","prepareTxParams"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AAEA,OAAOA,OAAP,MAAoB,WAApB;AACA,SAASC,QAAT,QAAyB,iBAAzB;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AACA,IAAMC,EAAE,GAAGF,OAAO,CAACC,QAAQ,CAAC;AAC1BE,EAAAA,OAAO,EAAE;AACPC,IAAAA,OAAO,EAAEH,QADF;AAEPI,IAAAA,cAAc,EAAEJ,QAFT;AAGPK,IAAAA,WAAW,EAAEL,QAHN;AAIPM,IAAAA,cAAc,EAAEN,QAJT;AAKPO,IAAAA,YAAY,EAAEP,QALP;AAMPQ,IAAAA,YAAY,EAAER,QANP;AAOPS,IAAAA,gBAAgB,EAAET,QAPX;AAQPU,IAAAA,cAAc,EAAEV,QART;AASPW,IAAAA,gBAAgB,EAAEX,QATX;AAUPY,IAAAA,cAAc,EAAEZ,QAVT;AAWPa,IAAAA,iBAAiB,EAAEb,QAXZ;AAYPc,IAAAA,eAAe,EAAEd,QAZV;AAaPe,IAAAA,eAAe,EAAEf,QAbV;AAcPgB,IAAAA,kBAAkB,EAAEhB,QAdb;AAePiB,IAAAA,cAAc,EAAEjB,QAfT;AAgBPkB,IAAAA,eAAe,EAAElB,QAhBV;AAiBPmB,IAAAA,qBAAqB,EAAEnB,QAjBhB;AAkBPoB,IAAAA,UAAU,EAAEpB,QAlBL;AAmBPqB,IAAAA,YAAY,EAAErB,QAnBP;AAoBPsB,IAAAA,eAAe,EAAEtB;AApBV;AADiB,CAAD,CAAT,CAAlB;AAyBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,eAAeC,EAAf","sourcesContent":["/*\n * ISC License (ISC)\n * Copyright (c) 2018 aeternity developers\n *\n * Permission to use, copy, modify, and/or distribute this software for any\n * purpose with or without fee is hereby granted, provided that the above\n * copyright notice and this permission notice appear in all copies.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\n * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\n * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\n * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\n * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\n * PERFORMANCE OF THIS SOFTWARE.\n */\n\n/**\n * Tx module\n * @module @aeternity/aepp-sdk/es/tx\n * @export Tx\n * @example import { Tx } from '@aeternity/aepp-sdk'\n */\n\nimport stampit from '@stamp/it'\nimport { required } from '@stamp/required'\n\n/**\n * Basic Tx Stamp\n *\n * Attempting to create instances from the Stamp without overwriting all\n * abstract methods using composition will result in an exception.\n *\n * Tx is one of the three basic building blocks of an\n * {@link module:@aeternity/aepp-sdk/es/ae--Ae} client and provides methods to\n * create aeternity transactions.\n * @function\n * @alias module:@aeternity/aepp-sdk/es/tx\n * @rtype Stamp\n * @param {Object} [options={}] - Initializer object\n * @return {Object} Tx instance\n * @example Tx()\n */\nconst Tx = stampit(required({\n methods: {\n spendTx: required,\n namePreclaimTx: required,\n nameClaimTx: required,\n nameTransferTx: required,\n nameUpdateTx: required,\n nameRevokeTx: required,\n contractCreateTx: required,\n contractCallTx: required,\n oracleRegisterTx: required,\n oracleExtendTx: required,\n oraclePostQueryTx: required,\n oracleRespondTx: required,\n getAccountNonce: required,\n channelCloseSoloTx: required,\n channelSlashTx: required,\n channelSettleTx: required,\n channelSnapshotSoloTx: required,\n gaAttachTx: required,\n getVmVersion: required,\n prepareTxParams: required\n }\n}))\n\n/**\n * Create a `spend_tx` transaction\n * @function spendTx\n * @instance\n * @abstract\n * @category async\n * @rtype ({sender?: String, recipientId: String, amount: Number, fee?: Number, ttl?: Number, nonce?: Number, payload?: String}) => tx: Promise[String]\n * @param {Object} options - The object to extract properties from\n * @return {String} `spend_tx` transaction\n */\n\n/**\n * Create a `name_preclaim_tx` transaction\n * @function namePreclaimTx\n * @instance\n * @abstract\n * @category async\n * @rtype ({account?: String, commitment: String, fee?: Number, ttl?: Number, nonce?: Number}) => tx: Promise[String]\n * @param {Object} options - The object to extract properties from\n * @return {String} `name_preclaim_tx` transaction\n */\n\n/**\n * Create a `name_claim_tx` transaction\n * @function nameClaimTx\n * @instance\n * @abstract\n * @category async\n * @rtype ({account?: String, name: String, nameSalt: String, fee?: Number, ttl?: Number, nonce?: Number}) => tx: Promise[String]\n * @param {Object} options - The object to extract properties from\n * @return {String} `name_claim_tx` transaction\n */\n\n/**\n * Create a `name_transfer_tx` transaction\n * @function nameTransferTx\n * @instance\n * @abstract\n * @category async\n * @rtype ({account?: String, nameId: String, recipientId: String, fee?: Number, ttl?: Number, nonce?: Number}) => tx: Promise[String]\n * @param {Object} options - The object to extract properties from\n * @return {String} `name_transfer_tx` transaction\n */\n\n/**\n * Create a `name_update_tx` transaction\n * @function nameUpdateTx\n * @instance\n * @abstract\n * @category async\n * @rtype ({account?: String, nameId: String, pointers: Object, nameTtl: Number, clientTtl: Number, fee?: Number, ttl?: Number, nonce?: Number}) => tx: Promise[String]\n * @param {Object} options - The object to extract properties from\n * @return {String} `name_update_tx` transaction\n */\n\n/**\n * Create a `name_revoke_tx` transaction\n * @function nameRevokeTx\n * @instance\n * @abstract\n * @category async\n * @rtype ({account?: String, nameId: String, fee?: Number, ttl?: Number, nonce?: Number}) => tx: Promise[String]\n * @param {Object} options - The object to extract properties from\n * @return {String} `name_revoke_tx` transaction\n */\n\n/**\n * Create a `contract_create_tx` transaction\n * @function contractCreateTx\n * @instance\n * @abstract\n * @category async\n * @rtype ({owner: String, code: String, callData: String, vmVersion: Number, deposit: Number, amount: Number, gas: Number, gasPrice: Number, fee?: Number, ttl?: Number, nonce?: Number}) => tx: Promise[String]\n * @param {Object} options - The object to extract properties from\n * @return {String} `contract_create_tx` transaction\n */\n\n/**\n * Create a `contract_call_tx` transaction\n * @function contractCallTx\n * @instance\n * @abstract\n * @category async\n * @rtype ({callerId: String, contract: String, callData: String, vmVersion: Number, amount: Number, gas: Number, gasPrice: Number, fee?: Number, ttl?: Number, nonce?: Number}) => tx: Promise[String]\n * @param {Object} options - The object to extract properties from\n * @return {String} `contract_call_tx` transaction\n */\n\n/**\n * Create a `oracle_register_tx` transaction\n * @function oracleRegisterTx\n * @instance\n * @abstract\n * @category async\n * @rtype ({ accountId: String, queryFormat: String, responseFormat: String, queryFee: String|Number, oracleTtl: Object, vmVersion: Number = ORACLE_VM_VERSION, fee?: Number, ttl?: Number, nonce?: Number }) => tx: Promise[String]\n * @param {Object} options - The object to extract properties from\n * @return {String} `oracle_register_tx` transaction\n */\n\n/**\n * Create a `oracle_extend_tx` transaction\n * @function oracleExtendTx\n * @instance\n * @abstract\n * @category async\n * @rtype ({ oracleId: String, callerId: String, oracleTtl: Object, fee?: Number, ttl: Number, nonce?: Number}) => tx: Promise[String]\n * @param {Object} options - The object to extract properties from\n * @return {String} `oracle_extend_tx` transaction\n */\n\n/**\n * Create a `oracle_post_query_tx` transaction\n * @function oraclePostQuery\n * @instance\n * @abstract\n * @category async\n * @rtype ({ oracleId: String, responseTtl: Object, query: String, queryTtl: Object, queryFee: String|Number, senderId: String, fee?: Number, ttl: Number, nonce?: Number}) => tx: Promise[String]\n * @param {Object} options - The object to extract properties from\n * @return {String} `oracle_post_query_tx` transaction\n */\n\n/**\n * Create a `oracle_respond_tx` transaction\n * @function oracleRespondTx\n * @instance\n * @abstract\n * @category async\n * @rtype ({ oracleId: String, callerId: String, responseTtl: Object, queryId: String, response: String, fee?: Number, ttl?: Number, nonce?: Number}) => tx: Promise[String]\n * @param {Object} options - The object to extract properties from\n * @return {String} `oracle_respond_tx` transaction\n */\n\n/**\n * Get Account Nonce\n * @function getAccountNonce\n * @instance\n * @abstract\n * @category async\n * @rtype (address) => result: Number\n * @param {String} address - Account public key\n * @return {Number} Result\n */\n\nexport default Tx\n"],"file":"index.js"}
|
package/es/tx/tx-object.js
DELETED
|
@@ -1,297 +0,0 @@
|
|
|
1
|
-
import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
|
|
2
|
-
import _Object$getOwnPropertySymbols from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols";
|
|
3
|
-
import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
|
|
4
|
-
import _Object$getOwnPropertyDescriptor from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor";
|
|
5
|
-
import _forEachInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/for-each";
|
|
6
|
-
import _Object$getOwnPropertyDescriptors from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors";
|
|
7
|
-
import _Object$defineProperties from "@babel/runtime-corejs3/core-js-stable/object/define-properties";
|
|
8
|
-
import _Object$defineProperty from "@babel/runtime-corejs3/core-js-stable/object/define-property";
|
|
9
|
-
import _toConsumableArray from "@babel/runtime-corejs3/helpers/toConsumableArray";
|
|
10
|
-
import _defineProperty from "@babel/runtime-corejs3/helpers/defineProperty";
|
|
11
|
-
import _typeof from "@babel/runtime-corejs3/helpers/typeof";
|
|
12
|
-
|
|
13
|
-
function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); if (enumerableOnly) { symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
14
|
-
|
|
15
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { var _context3; _forEachInstanceProperty(_context3 = ownKeys(Object(source), true)).call(_context3, function (key) { _defineProperty(target, key, source[key]); }); } else if (_Object$getOwnPropertyDescriptors) { _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)); } else { var _context4; _forEachInstanceProperty(_context4 = ownKeys(Object(source))).call(_context4, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
16
|
-
|
|
17
|
-
import _includesInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/includes";
|
|
18
|
-
import _Object$values from "@babel/runtime-corejs3/core-js-stable/object/values";
|
|
19
|
-
import _Object$assign from "@babel/runtime-corejs3/core-js-stable/object/assign";
|
|
20
|
-
import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/concat";
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* TxObject module
|
|
24
|
-
* @module @aeternity/aepp-sdk/es/tx/tx-object
|
|
25
|
-
* @export TxObject
|
|
26
|
-
* @example import TxObject from '@aeternity/aepp-sdk/es/tx/tx-object'
|
|
27
|
-
*/
|
|
28
|
-
import stampit from '@stamp/it';
|
|
29
|
-
import { buildTx, calculateFee, unpackTx } from './builder';
|
|
30
|
-
import { TX_TYPE } from './builder/schema';
|
|
31
|
-
import { encode } from './builder/helpers';
|
|
32
|
-
import { isHex } from '../utils/string';
|
|
33
|
-
/**
|
|
34
|
-
* Build transaction from object
|
|
35
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
36
|
-
* @param {String} type Transaction type
|
|
37
|
-
* @param {Object} params Transaction params
|
|
38
|
-
* @param {Object} [options={}] Options
|
|
39
|
-
* @throws {Error} Arguments validation error's
|
|
40
|
-
* @return {{ encodedTx: String, binary: Array<Buffer>, rlpEncoded: Buffer, params: Object, type: String }}
|
|
41
|
-
*/
|
|
42
|
-
|
|
43
|
-
var buildTransaction = function buildTransaction(type, params) {
|
|
44
|
-
var _context;
|
|
45
|
-
|
|
46
|
-
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
47
|
-
if (_typeof(params) !== 'object') throw new Error('"params" should be an object');
|
|
48
|
-
if (typeof type !== 'string' || !_includesInstanceProperty(_context = _Object$values(TX_TYPE)).call(_context, type)) throw new Error("Unknown transaction type ".concat(type));
|
|
49
|
-
var fee = calculateFee(params.fee, type, {
|
|
50
|
-
gas: params.gas,
|
|
51
|
-
params: params,
|
|
52
|
-
vsn: params.vsn
|
|
53
|
-
});
|
|
54
|
-
|
|
55
|
-
var _buildTx = buildTx(_objectSpread(_objectSpread({}, params), {}, {
|
|
56
|
-
fee: fee
|
|
57
|
-
}), type, _objectSpread({
|
|
58
|
-
vsn: params.vsn
|
|
59
|
-
}, options)),
|
|
60
|
-
rlpEncoded = _buildTx.rlpEncoded,
|
|
61
|
-
binary = _buildTx.binary,
|
|
62
|
-
encodedTx = _buildTx.tx,
|
|
63
|
-
txObject = _buildTx.txObject;
|
|
64
|
-
|
|
65
|
-
return {
|
|
66
|
-
rlpEncoded: rlpEncoded,
|
|
67
|
-
binary: binary,
|
|
68
|
-
encodedTx: encodedTx,
|
|
69
|
-
params: txObject,
|
|
70
|
-
type: type
|
|
71
|
-
};
|
|
72
|
-
};
|
|
73
|
-
/**
|
|
74
|
-
* Unpack transaction from RLP encoded binary or base64c string
|
|
75
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
76
|
-
* @param {Buffer|String} tx RLP encoded binary or base64c(rlpBinary) string
|
|
77
|
-
* @throws {Error} Arguments validation error's
|
|
78
|
-
* @return {{ encodedTx: String, binary: Array<Buffer>, rlpEncoded: Buffer, type: String, params: Object }}
|
|
79
|
-
*/
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
var unpackTransaction = function unpackTransaction(tx) {
|
|
83
|
-
if (!tx) throw new Error("Invalid transaction: ".concat(tx));
|
|
84
|
-
|
|
85
|
-
if (typeof tx === 'string') {
|
|
86
|
-
var _unpackTx = unpackTx(tx),
|
|
87
|
-
type = _unpackTx.txType,
|
|
88
|
-
params = _unpackTx.tx,
|
|
89
|
-
rlpEncoded = _unpackTx.rlpEncoded,
|
|
90
|
-
binary = _unpackTx.binary;
|
|
91
|
-
|
|
92
|
-
return {
|
|
93
|
-
encodedTx: tx,
|
|
94
|
-
type: type,
|
|
95
|
-
params: params,
|
|
96
|
-
rlpEncoded: rlpEncoded,
|
|
97
|
-
binary: binary
|
|
98
|
-
};
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
if (Buffer.isBuffer(tx)) {
|
|
102
|
-
var _unpackTx2 = unpackTx(tx, true),
|
|
103
|
-
_type = _unpackTx2.txType,
|
|
104
|
-
_params = _unpackTx2.tx,
|
|
105
|
-
_rlpEncoded = _unpackTx2.rlpEncoded,
|
|
106
|
-
_binary = _unpackTx2.binary;
|
|
107
|
-
|
|
108
|
-
return {
|
|
109
|
-
encodedTx: encode(tx, 'tx'),
|
|
110
|
-
type: _type,
|
|
111
|
-
params: _params,
|
|
112
|
-
rlpEncoded: _rlpEncoded,
|
|
113
|
-
binary: _binary
|
|
114
|
-
};
|
|
115
|
-
}
|
|
116
|
-
};
|
|
117
|
-
/**
|
|
118
|
-
* Helper which build or unpack transaction base on constructor arguments
|
|
119
|
-
* Need to provide one of arguments: [tx] -> unpack flow or [params, type] -> build flow
|
|
120
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
121
|
-
* @param {Buffer|String} [tx] Transaction rlp binary or vase64c string
|
|
122
|
-
* @param {Object} params Transaction params
|
|
123
|
-
* @param {String} type Transaction type
|
|
124
|
-
* @param {Object} [options={}] Options
|
|
125
|
-
* @throws {Error} Arguments validation error's
|
|
126
|
-
* @return {{encodedTx: String, binary: Array<Buffer>, rlpEncoded: Buffer, type: String, params: Object}}
|
|
127
|
-
*/
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
var initTransaction = function initTransaction() {
|
|
131
|
-
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
132
|
-
tx = _ref.tx,
|
|
133
|
-
params = _ref.params,
|
|
134
|
-
type = _ref.type,
|
|
135
|
-
_ref$options = _ref.options,
|
|
136
|
-
options = _ref$options === void 0 ? {} : _ref$options;
|
|
137
|
-
|
|
138
|
-
if (params && type) return buildTransaction(type, params, options);
|
|
139
|
-
if (tx) return unpackTransaction(tx);
|
|
140
|
-
throw new Error('Invalid TxObject arguments. Please provide one of { tx: "tx_asdasd23..." } or { type: "spendTx", params: {...} }');
|
|
141
|
-
};
|
|
142
|
-
/**
|
|
143
|
-
* Transaction Validator Stamp
|
|
144
|
-
* This stamp give us possibility to unpack and validate some of transaction properties,
|
|
145
|
-
* to make sure we can post it to the chain
|
|
146
|
-
* @function
|
|
147
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
148
|
-
* @rtype Stamp
|
|
149
|
-
* @param {Object} [options={}] - Initializer object
|
|
150
|
-
* @param {Buffer|String} [options.tx] - Rlp binary or base64c transaction
|
|
151
|
-
* @param {Object} [options.params] - Transaction params
|
|
152
|
-
* @param {String} [options.type] - Transaction type
|
|
153
|
-
* @param {Object} [options.options] - Build options
|
|
154
|
-
* @return {Object} TxObject instance
|
|
155
|
-
* @example TxObject({ params: {...}, type: 'spendTx' })
|
|
156
|
-
*/
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
export var TxObject = stampit({
|
|
160
|
-
init: function init() {
|
|
161
|
-
var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
162
|
-
tx = _ref2.tx,
|
|
163
|
-
params = _ref2.params,
|
|
164
|
-
type = _ref2.type,
|
|
165
|
-
_ref2$options = _ref2.options,
|
|
166
|
-
options = _ref2$options === void 0 ? {} : _ref2$options;
|
|
167
|
-
|
|
168
|
-
this.options = options;
|
|
169
|
-
this.signatures = [];
|
|
170
|
-
|
|
171
|
-
_Object$assign(this, initTransaction({
|
|
172
|
-
tx: tx,
|
|
173
|
-
params: params,
|
|
174
|
-
type: type,
|
|
175
|
-
options: options
|
|
176
|
-
}));
|
|
177
|
-
|
|
178
|
-
if (this.type === TX_TYPE.signed) {
|
|
179
|
-
var _this$params = this.params,
|
|
180
|
-
signatures = _this$params.signatures,
|
|
181
|
-
_this$params$encodedT = _this$params.encodedTx,
|
|
182
|
-
txType = _this$params$encodedT.txType,
|
|
183
|
-
_tx = _this$params$encodedT.tx;
|
|
184
|
-
this.signatures = signatures;
|
|
185
|
-
this.params = _tx;
|
|
186
|
-
this.type = txType;
|
|
187
|
-
this.isSigned = true;
|
|
188
|
-
}
|
|
189
|
-
},
|
|
190
|
-
statics: {
|
|
191
|
-
/**
|
|
192
|
-
* Create txObject from base64c RLP encoded transaction string with 'tx_' prefix
|
|
193
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
194
|
-
* @static
|
|
195
|
-
* @param {String} tx Transaction string (tx_23fsdgsdfg...)
|
|
196
|
-
* @return {TxObject}
|
|
197
|
-
*/
|
|
198
|
-
fromString: function fromString(tx) {
|
|
199
|
-
return TxObject({
|
|
200
|
-
tx: tx
|
|
201
|
-
});
|
|
202
|
-
},
|
|
203
|
-
|
|
204
|
-
/**
|
|
205
|
-
* Create txObject from transaction RLP binary
|
|
206
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
207
|
-
* @static
|
|
208
|
-
* @param {Buffer} tx Transaction RLP binary
|
|
209
|
-
* @return {TxObject}
|
|
210
|
-
*/
|
|
211
|
-
fromRlp: function fromRlp(tx) {
|
|
212
|
-
return TxObject({
|
|
213
|
-
tx: tx
|
|
214
|
-
});
|
|
215
|
-
}
|
|
216
|
-
},
|
|
217
|
-
methods: {
|
|
218
|
-
/**
|
|
219
|
-
* Rebuild transaction with new params and recalculate fee
|
|
220
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
221
|
-
* @param {Object} props Transaction properties for update
|
|
222
|
-
* @param options
|
|
223
|
-
* @return {TxObject}
|
|
224
|
-
*/
|
|
225
|
-
setProp: function setProp() {
|
|
226
|
-
var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
227
|
-
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
228
|
-
if (_typeof(props) !== 'object') throw new Error('Props should be an object');
|
|
229
|
-
this.isSigned = false;
|
|
230
|
-
this.signatures = [];
|
|
231
|
-
|
|
232
|
-
_Object$assign(this, buildTransaction(this.type, _objectSpread(_objectSpread(_objectSpread({}, this.params), props), {}, {
|
|
233
|
-
fee: null
|
|
234
|
-
}), _objectSpread(_objectSpread({}, this.options), options)));
|
|
235
|
-
|
|
236
|
-
return this;
|
|
237
|
-
},
|
|
238
|
-
|
|
239
|
-
/**
|
|
240
|
-
* Get signatures
|
|
241
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
242
|
-
* @return {Array} Array of signatures
|
|
243
|
-
*/
|
|
244
|
-
getSignatures: function getSignatures() {
|
|
245
|
-
if (!this.isSigned) throw new Error('Signature not found, transaction is not signed');
|
|
246
|
-
return this.signatures;
|
|
247
|
-
},
|
|
248
|
-
|
|
249
|
-
/**
|
|
250
|
-
* Add signature
|
|
251
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
252
|
-
* @param {Buffer|String} signature Signature to add ( Can be: Buffer | Uint8Array | HexString )
|
|
253
|
-
* @return {void}
|
|
254
|
-
*/
|
|
255
|
-
addSignature: function addSignature(signature) {
|
|
256
|
-
var _context2;
|
|
257
|
-
|
|
258
|
-
signature = isHex(signature) ? Buffer.from(signature, 'hex') : signature;
|
|
259
|
-
if (!Buffer.isBuffer(signature) && !(signature instanceof Uint8Array)) throw new Error('Invalid signature, signature must be of type Buffer or Uint8Array');
|
|
260
|
-
|
|
261
|
-
_Object$assign(this, buildTransaction(TX_TYPE.signed, {
|
|
262
|
-
encodedTx: this.rlpEncoded,
|
|
263
|
-
signatures: [_concatInstanceProperty(_context2 = []).call(_context2, _toConsumableArray(this.signatures), [signature])]
|
|
264
|
-
}));
|
|
265
|
-
|
|
266
|
-
var _this$params2 = this.params,
|
|
267
|
-
signatures = _this$params2.signatures,
|
|
268
|
-
_this$params2$encoded = _this$params2.encodedTx,
|
|
269
|
-
txType = _this$params2$encoded.txType,
|
|
270
|
-
tx = _this$params2$encoded.tx;
|
|
271
|
-
this.signatures = signatures;
|
|
272
|
-
this.params = tx;
|
|
273
|
-
this.type = txType;
|
|
274
|
-
this.isSigned = true;
|
|
275
|
-
},
|
|
276
|
-
|
|
277
|
-
/**
|
|
278
|
-
* Calculate fee
|
|
279
|
-
* @alias module:@aeternity/aepp-sdk/es/tx/tx-object
|
|
280
|
-
* @param {Object} props
|
|
281
|
-
* @return {String} fee
|
|
282
|
-
*/
|
|
283
|
-
calculateMinFee: function calculateMinFee() {
|
|
284
|
-
var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
285
|
-
|
|
286
|
-
var params = _objectSpread(_objectSpread({}, this.params), props);
|
|
287
|
-
|
|
288
|
-
return calculateFee(0, this.type, {
|
|
289
|
-
gas: params.gas,
|
|
290
|
-
params: params,
|
|
291
|
-
vsn: params.vsn
|
|
292
|
-
});
|
|
293
|
-
}
|
|
294
|
-
}
|
|
295
|
-
});
|
|
296
|
-
export default TxObject;
|
|
297
|
-
//# sourceMappingURL=tx-object.js.map
|
package/es/tx/tx-object.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/tx/tx-object.js"],"names":["stampit","buildTx","calculateFee","unpackTx","TX_TYPE","encode","isHex","buildTransaction","type","params","options","Error","fee","gas","vsn","rlpEncoded","binary","encodedTx","tx","txObject","unpackTransaction","txType","Buffer","isBuffer","initTransaction","TxObject","init","signatures","signed","isSigned","statics","fromString","fromRlp","methods","setProp","props","getSignatures","addSignature","signature","from","Uint8Array","calculateMinFee"],"mappings":"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","sourcesContent":["/**\n * TxObject module\n * @module @aeternity/aepp-sdk/es/tx/tx-object\n * @export TxObject\n * @example import TxObject from '@aeternity/aepp-sdk/es/tx/tx-object'\n */\nimport stampit from '@stamp/it'\nimport { buildTx, calculateFee, unpackTx } from './builder'\nimport { TX_TYPE } from './builder/schema'\nimport { encode } from './builder/helpers'\nimport { isHex } from '../utils/string'\n\n/**\n * Build transaction from object\n * @alias module:@aeternity/aepp-sdk/es/tx/tx-object\n * @param {String} type Transaction type\n * @param {Object} params Transaction params\n * @param {Object} [options={}] Options\n * @throws {Error} Arguments validation error's\n * @return {{ encodedTx: String, binary: Array<Buffer>, rlpEncoded: Buffer, params: Object, type: String }}\n */\nconst buildTransaction = (type, params, options = {}) => {\n if (typeof params !== 'object') throw new Error('\"params\" should be an object')\n if (typeof type !== 'string' || !Object.values(TX_TYPE).includes(type)) throw new Error(`Unknown transaction type ${type}`)\n const fee = calculateFee(params.fee, type, { gas: params.gas, params, vsn: params.vsn })\n const { rlpEncoded, binary, tx: encodedTx, txObject } = buildTx({ ...params, fee }, type, { vsn: params.vsn, ...options })\n return { rlpEncoded, binary, encodedTx, params: txObject, type }\n}\n\n/**\n * Unpack transaction from RLP encoded binary or base64c string\n * @alias module:@aeternity/aepp-sdk/es/tx/tx-object\n * @param {Buffer|String} tx RLP encoded binary or base64c(rlpBinary) string\n * @throws {Error} Arguments validation error's\n * @return {{ encodedTx: String, binary: Array<Buffer>, rlpEncoded: Buffer, type: String, params: Object }}\n */\nconst unpackTransaction = (tx) => {\n if (!tx) throw new Error(`Invalid transaction: ${tx}`)\n if (typeof tx === 'string') {\n const { txType: type, tx: params, rlpEncoded, binary } = unpackTx(tx)\n return { encodedTx: tx, type, params, rlpEncoded, binary }\n }\n if (Buffer.isBuffer(tx)) {\n const { txType: type, tx: params, rlpEncoded, binary } = unpackTx(tx, true)\n return { encodedTx: encode(tx, 'tx'), type, params, rlpEncoded, binary }\n }\n}\n\n/**\n * Helper which build or unpack transaction base on constructor arguments\n * Need to provide one of arguments: [tx] -> unpack flow or [params, type] -> build flow\n * @alias module:@aeternity/aepp-sdk/es/tx/tx-object\n * @param {Buffer|String} [tx] Transaction rlp binary or vase64c string\n * @param {Object} params Transaction params\n * @param {String} type Transaction type\n * @param {Object} [options={}] Options\n * @throws {Error} Arguments validation error's\n * @return {{encodedTx: String, binary: Array<Buffer>, rlpEncoded: Buffer, type: String, params: Object}}\n */\nconst initTransaction = ({ tx, params, type, options = {} } = {}) => {\n if (params && type) return buildTransaction(type, params, options)\n if (tx) return unpackTransaction(tx)\n throw new Error('Invalid TxObject arguments. Please provide one of { tx: \"tx_asdasd23...\" } or { type: \"spendTx\", params: {...} }')\n}\n\n/**\n * Transaction Validator Stamp\n * This stamp give us possibility to unpack and validate some of transaction properties,\n * to make sure we can post it to the chain\n * @function\n * @alias module:@aeternity/aepp-sdk/es/tx/tx-object\n * @rtype Stamp\n * @param {Object} [options={}] - Initializer object\n * @param {Buffer|String} [options.tx] - Rlp binary or base64c transaction\n * @param {Object} [options.params] - Transaction params\n * @param {String} [options.type] - Transaction type\n * @param {Object} [options.options] - Build options\n * @return {Object} TxObject instance\n * @example TxObject({ params: {...}, type: 'spendTx' })\n */\nexport const TxObject = stampit({\n init ({ tx, params, type, options = {} } = {}) {\n this.options = options\n this.signatures = []\n Object.assign(this, initTransaction({ tx, params, type, options }))\n\n if (this.type === TX_TYPE.signed) {\n const { signatures, encodedTx: { txType, tx } } = this.params\n this.signatures = signatures\n this.params = tx\n this.type = txType\n this.isSigned = true\n }\n },\n statics: {\n /**\n * Create txObject from base64c RLP encoded transaction string with 'tx_' prefix\n * @alias module:@aeternity/aepp-sdk/es/tx/tx-object\n * @static\n * @param {String} tx Transaction string (tx_23fsdgsdfg...)\n * @return {TxObject}\n */\n fromString: (tx) => TxObject({ tx }),\n /**\n * Create txObject from transaction RLP binary\n * @alias module:@aeternity/aepp-sdk/es/tx/tx-object\n * @static\n * @param {Buffer} tx Transaction RLP binary\n * @return {TxObject}\n */\n fromRlp: (tx) => TxObject({ tx })\n },\n methods: {\n /**\n * Rebuild transaction with new params and recalculate fee\n * @alias module:@aeternity/aepp-sdk/es/tx/tx-object\n * @param {Object} props Transaction properties for update\n * @param options\n * @return {TxObject}\n */\n setProp (props = {}, options = {}) {\n if (typeof props !== 'object') throw new Error('Props should be an object')\n this.isSigned = false\n this.signatures = []\n Object.assign(this, buildTransaction(this.type, { ...this.params, ...props, fee: null }, { ...this.options, ...options }))\n return this\n },\n /**\n * Get signatures\n * @alias module:@aeternity/aepp-sdk/es/tx/tx-object\n * @return {Array} Array of signatures\n */\n getSignatures () {\n if (!this.isSigned) throw new Error('Signature not found, transaction is not signed')\n return this.signatures\n },\n /**\n * Add signature\n * @alias module:@aeternity/aepp-sdk/es/tx/tx-object\n * @param {Buffer|String} signature Signature to add ( Can be: Buffer | Uint8Array | HexString )\n * @return {void}\n */\n addSignature (signature) {\n signature = isHex(signature) ? Buffer.from(signature, 'hex') : signature\n if (!Buffer.isBuffer(signature) && !(signature instanceof Uint8Array)) throw new Error('Invalid signature, signature must be of type Buffer or Uint8Array')\n Object.assign(this, buildTransaction(TX_TYPE.signed, { encodedTx: this.rlpEncoded, signatures: [[...this.signatures, signature]] }))\n\n const { signatures, encodedTx: { txType, tx } } = this.params\n this.signatures = signatures\n this.params = tx\n this.type = txType\n this.isSigned = true\n },\n /**\n * Calculate fee\n * @alias module:@aeternity/aepp-sdk/es/tx/tx-object\n * @param {Object} props\n * @return {String} fee\n */\n calculateMinFee (props = {}) {\n const params = { ...this.params, ...props }\n return calculateFee(0, this.type, { gas: params.gas, params, vsn: params.vsn })\n }\n }\n})\n\nexport default TxObject\n"],"file":"tx-object.js"}
|