@aeternity/aepp-sdk 8.2.1 → 10.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/CHANGELOG.md +216 -337
- package/README.md +16 -9
- package/dist/aepp-sdk.browser-script.js +1 -1
- package/dist/aepp-sdk.browser-script.js.LICENSE.txt +0 -9
- 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.js +36 -120
- package/es/account/base.js.map +1 -1
- package/es/account/memory.js +17 -19
- package/es/account/memory.js.map +1 -1
- package/es/account/multiple.js +79 -156
- package/es/account/multiple.js.map +1 -1
- package/es/ae/aens.js +205 -626
- package/es/ae/aens.js.map +1 -1
- package/es/ae/contract.js +114 -918
- package/es/ae/contract.js.map +1 -1
- package/es/ae/index.js +90 -250
- package/es/ae/index.js.map +1 -1
- package/es/ae/oracle.js +136 -504
- package/es/ae/oracle.js.map +1 -1
- package/es/ae/universal.js.map +1 -1
- package/es/chain/index.js +12 -27
- package/es/chain/index.js.map +1 -1
- package/es/chain/node.js +289 -1020
- package/es/chain/node.js.map +1 -1
- package/es/channel/handlers.js +597 -1086
- package/es/channel/handlers.js.map +1 -1
- package/es/channel/index.js +238 -465
- package/es/channel/index.js.map +1 -1
- package/es/channel/internal.js +129 -301
- package/es/channel/internal.js.map +1 -1
- package/es/contract/aci/index.js +328 -495
- package/es/contract/aci/index.js.map +1 -1
- package/es/contract/aci/transformation.js +35 -711
- package/es/contract/aci/transformation.js.map +1 -1
- package/es/contract/compiler.js +131 -203
- package/es/contract/compiler.js.map +1 -1
- package/es/contract/ga/helpers.js +17 -122
- package/es/contract/ga/helpers.js.map +1 -1
- package/es/contract/ga/index.js +108 -249
- package/es/contract/ga/index.js.map +1 -1
- package/es/contract/index.js +7 -3
- package/es/contract/index.js.map +1 -1
- package/es/index.js +3 -3
- package/es/index.js.map +1 -1
- package/es/node-pool/index.js +57 -74
- package/es/node-pool/index.js.map +1 -1
- package/es/node.js +65 -161
- package/es/node.js.map +1 -1
- package/es/other.d.ts +1 -1
- package/es/tx/builder/helpers.js +62 -115
- package/es/tx/builder/helpers.js.map +1 -1
- package/es/tx/builder/index.js +218 -309
- package/es/tx/builder/index.js.map +1 -1
- package/es/tx/builder/schema.js +586 -573
- package/es/tx/builder/schema.js.map +1 -1
- package/es/tx/index.js +102 -13
- package/es/tx/index.js.map +1 -1
- package/es/tx/tx-object.js +114 -138
- package/es/tx/tx-object.js.map +1 -1
- package/es/tx/tx.js +810 -1586
- package/es/tx/tx.js.map +1 -1
- package/es/tx/validator.js +191 -426
- package/es/tx/validator.js.map +1 -1
- package/es/utils/aepp-wallet-communication/connection/browser-runtime.js +20 -23
- package/es/utils/aepp-wallet-communication/connection/browser-runtime.js.map +1 -1
- package/es/utils/aepp-wallet-communication/connection/browser-window-message.js +53 -80
- package/es/utils/aepp-wallet-communication/connection/browser-window-message.js.map +1 -1
- package/es/utils/aepp-wallet-communication/connection/index.js +2 -1
- package/es/utils/aepp-wallet-communication/connection/index.js.map +1 -1
- package/es/utils/aepp-wallet-communication/content-script-bridge.js +24 -19
- package/es/utils/aepp-wallet-communication/content-script-bridge.js.map +1 -1
- package/es/utils/aepp-wallet-communication/helpers.js +60 -105
- package/es/utils/aepp-wallet-communication/helpers.js.map +1 -1
- package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.js +191 -514
- package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.js.map +1 -1
- package/es/utils/aepp-wallet-communication/rpc/rpc-client.js +78 -93
- package/es/utils/aepp-wallet-communication/rpc/rpc-client.js.map +1 -1
- package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.js +381 -613
- package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.js.map +1 -1
- package/es/utils/aepp-wallet-communication/schema.js +43 -39
- package/es/utils/aepp-wallet-communication/schema.js.map +1 -1
- package/es/utils/aepp-wallet-communication/wallet-detector.js +32 -58
- package/es/utils/aepp-wallet-communication/wallet-detector.js.map +1 -1
- package/es/utils/amount-formatter.js +41 -61
- package/es/utils/amount-formatter.js.map +1 -1
- package/es/utils/async-init.js +28 -64
- package/es/utils/async-init.js.map +1 -1
- package/es/utils/bignumber.js +3 -11
- package/es/utils/bignumber.js.map +1 -1
- package/es/utils/bytes.js +5 -9
- package/es/utils/bytes.js.map +1 -1
- package/es/utils/crypto.js +41 -106
- package/es/utils/crypto.js.map +1 -1
- package/es/utils/hd-wallet.js +45 -81
- package/es/utils/hd-wallet.js.map +1 -1
- package/es/utils/json-big.js +16 -49
- package/es/utils/json-big.js.map +1 -1
- package/es/utils/keystore.js +81 -246
- package/es/utils/keystore.js.map +1 -1
- package/es/utils/mptree.js +88 -134
- package/es/utils/mptree.js.map +1 -1
- package/es/utils/other.js +10 -60
- package/es/utils/other.js.map +1 -1
- package/es/utils/semver-satisfies.js +9 -28
- package/es/utils/semver-satisfies.js.map +1 -1
- package/es/utils/string.js +4 -13
- package/es/utils/string.js.map +1 -1
- package/es/utils/swagger.js +87 -224
- package/es/utils/swagger.js.map +1 -1
- package/package.json +51 -44
- package/src/account/base.js +11 -10
- package/src/account/multiple.js +24 -18
- package/src/ae/aens.js +64 -61
- package/src/ae/contract.js +71 -248
- package/src/ae/index.js +34 -9
- package/src/ae/oracle.js +30 -22
- package/src/ae/universal.js +3 -1
- package/src/chain/index.js +10 -16
- package/src/chain/node.js +38 -38
- package/src/channel/handlers.js +10 -4
- package/src/channel/index.js +44 -20
- package/src/contract/aci/index.js +234 -112
- package/src/contract/aci/transformation.js +30 -422
- package/src/contract/compiler.js +50 -5
- package/src/contract/ga/helpers.js +6 -14
- package/src/contract/ga/index.js +28 -28
- package/src/contract/index.js +6 -2
- package/src/index.js +4 -4
- package/src/node-pool/index.js +24 -13
- package/src/node.js +29 -30
- package/src/tx/builder/helpers.js +31 -56
- package/src/tx/builder/index.js +67 -28
- package/src/tx/builder/schema.js +79 -121
- package/src/tx/index.js +101 -12
- package/src/tx/tx-object.js +25 -8
- package/src/tx/tx.js +229 -150
- package/src/tx/validator.js +134 -202
- package/src/utils/aepp-wallet-communication/connection/browser-runtime.js +3 -2
- package/src/utils/aepp-wallet-communication/connection/browser-window-message.js +25 -7
- package/src/utils/aepp-wallet-communication/connection/index.js +2 -1
- package/src/utils/aepp-wallet-communication/content-script-bridge.js +10 -4
- package/src/utils/aepp-wallet-communication/helpers.js +4 -2
- package/src/utils/aepp-wallet-communication/rpc/aepp-rpc.js +33 -12
- package/src/utils/aepp-wallet-communication/rpc/rpc-client.js +9 -5
- package/src/utils/aepp-wallet-communication/rpc/wallet-rpc.js +59 -29
- package/src/utils/aepp-wallet-communication/schema.js +1 -3
- package/src/utils/aepp-wallet-communication/wallet-detector.js +4 -1
- package/src/utils/amount-formatter.ts +1 -1
- package/src/utils/bignumber.ts +2 -1
- package/src/utils/crypto.js +4 -68
- package/src/utils/keystore.js +10 -2
- package/src/utils/other.ts +1 -1
- package/src/utils/semver-satisfies.ts +1 -1
- package/src/utils/swagger.js +22 -10
- package/src/contract/aci/helpers.js +0 -140
package/es/tx/builder/schema.js
CHANGED
|
@@ -1,13 +1,3 @@
|
|
|
1
|
-
import _defineProperty from "@babel/runtime-corejs3/helpers/defineProperty";
|
|
2
|
-
import _slicedToArray from "@babel/runtime-corejs3/helpers/slicedToArray";
|
|
3
|
-
|
|
4
|
-
var _PROTOCOL_VERSIONS$IR, _OBJECT_ID_TX_TYPE, _VALIDATION_MESSAGE, _context4, _context5, _context6, _context7, _context8, _context9, _context10, _context11, _context12, _context13, _context14, _context15, _context16, _context17, _context18, _context19, _context20, _context21, _context22, _context23, _context24, _context25, _context26, _context27, _context28, _context29, _context30, _context31, _context32, _context33, _context34, _context35, _context36, _context37, _context38, _context39, _context40, _context41, _context42, _context43, _context44, _context45, _context46, _context47, _context48, _context49, _TX_SERIALIZATION_SCH, _TX_DESERIALIZATION_S;
|
|
5
|
-
|
|
6
|
-
import _reduceInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/reduce";
|
|
7
|
-
import _Object$entries from "@babel/runtime-corejs3/core-js-stable/object/entries";
|
|
8
|
-
import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/concat";
|
|
9
|
-
import _JSON$stringify from "@babel/runtime-corejs3/core-js-stable/json/stringify";
|
|
10
|
-
|
|
11
1
|
/**
|
|
12
2
|
* Transaction Schema for TxBuilder
|
|
13
3
|
* @module @aeternity/aepp-sdk/es/tx/builder/schema
|
|
@@ -17,61 +7,65 @@ import _JSON$stringify from "@babel/runtime-corejs3/core-js-stable/json/stringif
|
|
|
17
7
|
// # RLP version number
|
|
18
8
|
// # https://github.com/aeternity/protocol/blob/master/serializations.md#binary-serialization
|
|
19
9
|
import BigNumber from 'bignumber.js';
|
|
20
|
-
export
|
|
21
|
-
export
|
|
10
|
+
export const VSN = 1;
|
|
11
|
+
export const VSN_2 = 2; // # TRANSACTION DEFAULT TTL
|
|
22
12
|
|
|
23
|
-
export
|
|
13
|
+
export const TX_TTL = 0; // # ORACLE
|
|
24
14
|
|
|
25
|
-
export
|
|
26
|
-
export
|
|
15
|
+
export const QUERY_FEE = 30000;
|
|
16
|
+
export const ORACLE_TTL = {
|
|
27
17
|
type: 'delta',
|
|
28
18
|
value: 500
|
|
29
19
|
};
|
|
30
|
-
export
|
|
20
|
+
export const QUERY_TTL = {
|
|
31
21
|
type: 'delta',
|
|
32
22
|
value: 10
|
|
33
23
|
};
|
|
34
|
-
export
|
|
24
|
+
export const RESPONSE_TTL = {
|
|
35
25
|
type: 'delta',
|
|
36
26
|
value: 10
|
|
37
27
|
}; // # CONTRACT
|
|
38
28
|
|
|
39
|
-
export
|
|
40
|
-
export
|
|
41
|
-
export
|
|
42
|
-
export
|
|
43
|
-
export
|
|
44
|
-
export
|
|
29
|
+
export const DEPOSIT = 0;
|
|
30
|
+
export const AMOUNT = 0;
|
|
31
|
+
export const GAS = 25000;
|
|
32
|
+
export const MIN_GAS_PRICE = 1e9;
|
|
33
|
+
export const MAX_AUTH_FUN_GAS = 50000;
|
|
34
|
+
export const DRY_RUN_ACCOUNT = {
|
|
45
35
|
pub: 'ak_11111111111111111111111111111111273Yts',
|
|
46
36
|
amount: '100000000000000000000000000000000000'
|
|
47
37
|
}; // # AENS
|
|
48
38
|
|
|
49
|
-
export
|
|
39
|
+
export const NAME_TTL = 180000; // # max number of block into the future that the name is going to be available
|
|
50
40
|
// # https://github.com/aeternity/protocol/blob/epoch-v0.22.0/AENS.md#update
|
|
51
41
|
// # https://github.com/aeternity/protocol/blob/44a93d3aab957ca820183c3520b9daf6b0fedff4/AENS.md#aens-entry
|
|
52
42
|
|
|
53
|
-
export
|
|
54
|
-
export
|
|
55
|
-
export
|
|
56
|
-
export
|
|
43
|
+
export const NAME_MAX_TTL = 36000;
|
|
44
|
+
export const NAME_MAX_CLIENT_TTL = 84600;
|
|
45
|
+
export const CLIENT_TTL = NAME_MAX_CLIENT_TTL;
|
|
46
|
+
export const NAME_FEE = 0; // # see https://github.com/aeternity/aeternity/blob/72e440b8731422e335f879a31ecbbee7ac23a1cf/apps/aecore/src/aec_governance.erl#L67
|
|
57
47
|
|
|
58
|
-
export
|
|
59
|
-
|
|
48
|
+
export const NAME_FEE_MULTIPLIER = 1e14; // 100000000000000
|
|
49
|
+
|
|
50
|
+
export const NAME_FEE_BID_INCREMENT = 0.05; // # the increment is in percentage
|
|
60
51
|
// # see https://github.com/aeternity/aeternity/blob/72e440b8731422e335f879a31ecbbee7ac23a1cf/apps/aecore/src/aec_governance.erl#L272
|
|
61
52
|
|
|
62
|
-
export
|
|
53
|
+
export const NAME_BID_TIMEOUT_BLOCKS = 480; // # ~1 day
|
|
54
|
+
// # this is the max length for a domain that requires a base fee to be paid
|
|
63
55
|
|
|
64
|
-
export
|
|
56
|
+
export const NAME_MAX_LENGTH_FEE = 31;
|
|
57
|
+
export const NAME_BID_MAX_LENGTH = 12; // # this is the max length for a domain to be part of a bid
|
|
65
58
|
|
|
66
|
-
export
|
|
59
|
+
export const POINTER_KEY_BY_PREFIX = {
|
|
67
60
|
ak: 'account_pubkey',
|
|
68
61
|
ok: 'oracle_pubkey',
|
|
69
62
|
ct: 'contract_pubkey',
|
|
70
63
|
ch: 'channel'
|
|
71
|
-
}; // #
|
|
64
|
+
}; // # https://github.com/aeternity/aeternity/blob/72e440b8731422e335f879a31ecbbee7ac23a1cf/apps/aecore/src/aec_governance.erl#L290
|
|
65
|
+
// # https://github.com/aeternity/protocol/blob/master/AENS.md#protocol-fees-and-protection-times
|
|
72
66
|
// # bid ranges:
|
|
73
67
|
|
|
74
|
-
export
|
|
68
|
+
export const NAME_BID_RANGES = {
|
|
75
69
|
31: BigNumber(3).times(NAME_FEE_MULTIPLIER),
|
|
76
70
|
30: BigNumber(5).times(NAME_FEE_MULTIPLIER),
|
|
77
71
|
29: BigNumber(8).times(NAME_FEE_MULTIPLIER),
|
|
@@ -106,7 +100,7 @@ export var NAME_BID_RANGES = {
|
|
|
106
100
|
}; // # ref: https://github.com/aeternity/aeternity/blob/72e440b8731422e335f879a31ecbbee7ac23a1cf/apps/aecore/src/aec_governance.erl#L273
|
|
107
101
|
// # name bid timeouts
|
|
108
102
|
|
|
109
|
-
export
|
|
103
|
+
export const NAME_BID_TIMEOUTS = {
|
|
110
104
|
13: BigNumber(0),
|
|
111
105
|
12: BigNumber(NAME_BID_TIMEOUT_BLOCKS),
|
|
112
106
|
// # 480 blocks
|
|
@@ -118,80 +112,70 @@ export var NAME_BID_TIMEOUTS = {
|
|
|
118
112
|
// # see https://github.com/aeternity/protocol/blob/master/serializations.md#the-id-type
|
|
119
113
|
// # <<Tag:1/unsigned-integer-unit:8, Hash:32/binary-unit:8>>
|
|
120
114
|
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
115
|
+
const ID_TAG_ACCOUNT = 1;
|
|
116
|
+
const ID_TAG_NAME = 2;
|
|
117
|
+
const ID_TAG_COMMITMENT = 3;
|
|
118
|
+
const ID_TAG_ORACLE = 4;
|
|
119
|
+
const ID_TAG_CONTRACT = 5;
|
|
120
|
+
const ID_TAG_CHANNEL = 6; // # OBJECT tags
|
|
127
121
|
// # see https://github.com/aeternity/protocol/blob/master/serializations.md#binary-serialization
|
|
128
122
|
|
|
129
|
-
|
|
130
|
-
export
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
var _context;
|
|
186
|
-
|
|
187
|
-
return _reduceInstanceProperty(_context = _Object$entries(obj)).call(_context, function (acc, _ref) {
|
|
188
|
-
var _ref2 = _slicedToArray(_ref, 2),
|
|
189
|
-
key = _ref2[0],
|
|
190
|
-
v = _ref2[1];
|
|
191
|
-
|
|
192
|
-
return (acc[v] = key) && acc;
|
|
193
|
-
}, {});
|
|
194
|
-
};
|
|
123
|
+
const OBJECT_TAG_ACCOUNT = 10;
|
|
124
|
+
export const OBJECT_TAG_SIGNED_TRANSACTION = 11;
|
|
125
|
+
const OBJECT_TAG_SPEND_TRANSACTION = 12;
|
|
126
|
+
const OBJECT_TAG_ORACLE_REGISTER_TRANSACTION = 22;
|
|
127
|
+
const OBJECT_TAG_ORACLE_QUERY_TRANSACTION = 23;
|
|
128
|
+
const OBJECT_TAG_ORACLE_RESPONSE_TRANSACTION = 24;
|
|
129
|
+
const OBJECT_TAG_ORACLE_EXTEND_TRANSACTION = 25;
|
|
130
|
+
const OBJECT_TAG_NAME_SERVICE_CLAIM_TRANSACTION = 32;
|
|
131
|
+
const OBJECT_TAG_NAME_SERVICE_PRECLAIM_TRANSACTION = 33;
|
|
132
|
+
const OBJECT_TAG_NAME_SERVICE_UPDATE_TRANSACTION = 34;
|
|
133
|
+
const OBJECT_TAG_NAME_SERVICE_REVOKE_TRANSACTION = 35;
|
|
134
|
+
const OBJECT_TAG_NAME_SERVICE_TRANSFER_TRANSACTION = 36;
|
|
135
|
+
const OBJECT_TAG_CONTRACT = 40;
|
|
136
|
+
const OBJECT_TAG_CONTRACT_CALL = 41;
|
|
137
|
+
const OBJECT_TAG_CONTRACT_CREATE_TRANSACTION = 42;
|
|
138
|
+
const OBJECT_TAG_CONTRACT_CALL_TRANSACTION = 43;
|
|
139
|
+
const OBJECT_TAG_CHANNEL_CREATE_TX = 50;
|
|
140
|
+
const OBJECT_TAG_CHANNEL_DEPOSIT_TX = 51;
|
|
141
|
+
const OBJECT_TAG_CHANNEL_WITHRAW_TX = 52;
|
|
142
|
+
const OBJECT_TAG_CHANNEL_CLOSE_MUTUAL_TX = 53;
|
|
143
|
+
const OBJECT_TAG_CHANNEL_CLOSE_SOLO_TX = 54;
|
|
144
|
+
const OBJECT_TAG_CHANNEL_SLASH_TX = 55;
|
|
145
|
+
const OBJECT_TAG_CHANNEL_SETTLE_TX = 56;
|
|
146
|
+
const OBJECT_TAG_CHANNEL_FORCE_PROGRESS_TX = 521;
|
|
147
|
+
const OBJECT_TAG_CHANNEL_OFFCHAIN_TX = 57;
|
|
148
|
+
const OBJECT_TAG_CHANNEL = 58;
|
|
149
|
+
const OBJECT_TAG_CHANNEL_SNAPSHOT_SOLO_TX = 59;
|
|
150
|
+
const OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX = 570;
|
|
151
|
+
const OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX = 571;
|
|
152
|
+
const OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX = 572;
|
|
153
|
+
const OBJECT_TAG_CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX = 573;
|
|
154
|
+
const OBJECT_TAG_CHANNEL_OFFCHAIN_CALL_CONTRACT_TX = 574;
|
|
155
|
+
const OBJECT_TAG_CHANNEL_RECONNECT_TX = 575;
|
|
156
|
+
const OBJECT_TAG_PROOF_OF_INCLUSION = 60;
|
|
157
|
+
const OBJECT_TAG_STATE_TREES = 62;
|
|
158
|
+
const OBJECT_TAG_MERKLE_PATRICIA_TREE = 63;
|
|
159
|
+
const OBJECT_TAG_MERKLE_PATRICIA_TREE_VALUE = 64;
|
|
160
|
+
const OBJECT_TAG_CONTRACTS_TREE = 621;
|
|
161
|
+
const OBJECT_TAG_CONTRACT_CALLS_TREE = 622;
|
|
162
|
+
const OBJECT_TAG_CHANNELS_TREE = 623;
|
|
163
|
+
const OBJECT_TAG_NAMESERVICE_TREE = 624;
|
|
164
|
+
const OBJECT_TAG_ORACLES_TREE = 625;
|
|
165
|
+
const OBJECT_TAG_ACCOUNTS_TREE = 626;
|
|
166
|
+
const OBJECT_TAG_GA_ATTACH = 80;
|
|
167
|
+
const OBJECT_TAG_GA_META = 81;
|
|
168
|
+
const OBJECT_TAG_PAYING_FOR = 82;
|
|
169
|
+
const OBJECT_TAG_SOPHIA_BYTE_CODE = 70;
|
|
170
|
+
|
|
171
|
+
const TX_FIELD = (name, type, prefix) => [name, type, prefix];
|
|
172
|
+
|
|
173
|
+
const TX_SCHEMA_FIELD = (schema, objectId) => [schema, objectId];
|
|
174
|
+
|
|
175
|
+
const revertObject = obj => Object.entries(obj).reduce((acc, _ref) => {
|
|
176
|
+
let [key, v] = _ref;
|
|
177
|
+
return (acc[v] = key) && acc;
|
|
178
|
+
}, {});
|
|
195
179
|
/**
|
|
196
180
|
* @constant
|
|
197
181
|
* @description Object with transaction types
|
|
@@ -212,7 +196,7 @@ var revertObject = function revertObject(obj) {
|
|
|
212
196
|
*/
|
|
213
197
|
|
|
214
198
|
|
|
215
|
-
export
|
|
199
|
+
export const TX_TYPE = {
|
|
216
200
|
account: 'account',
|
|
217
201
|
signed: 'signedTx',
|
|
218
202
|
spend: 'spendTx',
|
|
@@ -263,10 +247,11 @@ export var TX_TYPE = {
|
|
|
263
247
|
// GA ACCOUNTS
|
|
264
248
|
gaAttach: 'gaAttach',
|
|
265
249
|
gaMeta: 'gaMeta',
|
|
250
|
+
payingFor: 'payingFor',
|
|
266
251
|
sophiaByteCode: 'sophiaByteCode'
|
|
267
252
|
}; // # see https://github.com/aeternity/protocol/blob/minerva/contracts/contract_vms.md#virtual-machines-on-the-%C3%A6ternity-blockchain
|
|
268
253
|
|
|
269
|
-
export
|
|
254
|
+
export const VM_VERSIONS = {
|
|
270
255
|
NO_VM: 0,
|
|
271
256
|
SOPHIA: 1,
|
|
272
257
|
SOPHIA_IMPROVEMENTS_MINERVA: 3,
|
|
@@ -276,28 +261,88 @@ export var VM_VERSIONS = {
|
|
|
276
261
|
FATE_2: 7
|
|
277
262
|
}; // # see https://github.com/aeternity/protocol/blob/minerva/contracts/contract_vms.md#virtual-machines-on-the-%C3%A6ternity-blockchain
|
|
278
263
|
|
|
279
|
-
export
|
|
264
|
+
export const ABI_VERSIONS = {
|
|
280
265
|
NO_ABI: 0,
|
|
281
266
|
SOPHIA: 1,
|
|
282
267
|
FATE: 3
|
|
283
268
|
};
|
|
284
|
-
export
|
|
269
|
+
export const PROTOCOL_VERSIONS = {
|
|
285
270
|
IRIS: 5
|
|
286
271
|
}; // First abi/vm by default
|
|
287
272
|
|
|
288
|
-
export
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
273
|
+
export const PROTOCOL_VM_ABI = {
|
|
274
|
+
[PROTOCOL_VERSIONS.IRIS]: {
|
|
275
|
+
[TX_TYPE.contractCreate]: {
|
|
276
|
+
vmVersion: [VM_VERSIONS.FATE_2],
|
|
277
|
+
abiVersion: [ABI_VERSIONS.FATE]
|
|
278
|
+
},
|
|
279
|
+
// TODO: Ensure that AEVM is still available here
|
|
280
|
+
[TX_TYPE.contractCall]: {
|
|
281
|
+
vmVersion: [VM_VERSIONS.FATE_2, VM_VERSIONS.FATE, VM_VERSIONS.SOPHIA_IMPROVEMENTS_LIMA, VM_VERSIONS.SOPHIA_IMPROVEMENTS_FORTUNA, VM_VERSIONS.SOPHIA, VM_VERSIONS.SOPHIA_IMPROVEMENTS_MINERVA],
|
|
282
|
+
abiVersion: [ABI_VERSIONS.FATE, ABI_VERSIONS.SOPHIA]
|
|
283
|
+
},
|
|
284
|
+
[TX_TYPE.oracleRegister]: {
|
|
285
|
+
vmVersion: [],
|
|
286
|
+
abiVersion: [ABI_VERSIONS.NO_ABI, ABI_VERSIONS.SOPHIA]
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
};
|
|
290
|
+
export const OBJECT_ID_TX_TYPE = {
|
|
291
|
+
[OBJECT_TAG_ACCOUNT]: TX_TYPE.account,
|
|
292
|
+
[OBJECT_TAG_SIGNED_TRANSACTION]: TX_TYPE.signed,
|
|
293
|
+
[OBJECT_TAG_SPEND_TRANSACTION]: TX_TYPE.spend,
|
|
294
|
+
// AENS
|
|
295
|
+
[OBJECT_TAG_NAME_SERVICE_CLAIM_TRANSACTION]: TX_TYPE.nameClaim,
|
|
296
|
+
[OBJECT_TAG_NAME_SERVICE_PRECLAIM_TRANSACTION]: TX_TYPE.namePreClaim,
|
|
297
|
+
[OBJECT_TAG_NAME_SERVICE_UPDATE_TRANSACTION]: TX_TYPE.nameUpdate,
|
|
298
|
+
[OBJECT_TAG_NAME_SERVICE_REVOKE_TRANSACTION]: TX_TYPE.nameRevoke,
|
|
299
|
+
[OBJECT_TAG_NAME_SERVICE_TRANSFER_TRANSACTION]: TX_TYPE.nameTransfer,
|
|
300
|
+
// CONTRACT
|
|
301
|
+
[OBJECT_TAG_CONTRACT]: TX_TYPE.contract,
|
|
302
|
+
[OBJECT_TAG_CONTRACT_CREATE_TRANSACTION]: TX_TYPE.contractCreate,
|
|
303
|
+
[OBJECT_TAG_CONTRACT_CALL_TRANSACTION]: TX_TYPE.contractCall,
|
|
304
|
+
[OBJECT_TAG_CONTRACT_CALL]: TX_TYPE.contractCallResult,
|
|
305
|
+
// ORACLE
|
|
306
|
+
[OBJECT_TAG_ORACLE_REGISTER_TRANSACTION]: TX_TYPE.oracleRegister,
|
|
307
|
+
[OBJECT_TAG_ORACLE_EXTEND_TRANSACTION]: TX_TYPE.oracleExtend,
|
|
308
|
+
[OBJECT_TAG_ORACLE_QUERY_TRANSACTION]: TX_TYPE.oracleQuery,
|
|
309
|
+
[OBJECT_TAG_ORACLE_RESPONSE_TRANSACTION]: TX_TYPE.oracleResponse,
|
|
310
|
+
// STATE CHANNEL
|
|
311
|
+
[OBJECT_TAG_CHANNEL_CREATE_TX]: TX_TYPE.channelCreate,
|
|
312
|
+
[OBJECT_TAG_CHANNEL_CLOSE_MUTUAL_TX]: TX_TYPE.channelCloseMutual,
|
|
313
|
+
[OBJECT_TAG_CHANNEL_CLOSE_SOLO_TX]: TX_TYPE.channelCloseSolo,
|
|
314
|
+
[OBJECT_TAG_CHANNEL_SLASH_TX]: TX_TYPE.channelSlash,
|
|
315
|
+
[OBJECT_TAG_CHANNEL_FORCE_PROGRESS_TX]: TX_TYPE.channelForceProgress,
|
|
316
|
+
[OBJECT_TAG_CHANNEL_DEPOSIT_TX]: TX_TYPE.channelDeposit,
|
|
317
|
+
[OBJECT_TAG_CHANNEL_WITHRAW_TX]: TX_TYPE.channelWithdraw,
|
|
318
|
+
[OBJECT_TAG_CHANNEL_SETTLE_TX]: TX_TYPE.channelSettle,
|
|
319
|
+
[OBJECT_TAG_CHANNEL_OFFCHAIN_TX]: TX_TYPE.channelOffChain,
|
|
320
|
+
[OBJECT_TAG_CHANNEL]: TX_TYPE.channel,
|
|
321
|
+
[OBJECT_TAG_CHANNEL_SNAPSHOT_SOLO_TX]: TX_TYPE.channelSnapshotSolo,
|
|
322
|
+
[OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX]: TX_TYPE.channelOffChainUpdateTransfer,
|
|
323
|
+
[OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX]: TX_TYPE.channelOffChainUpdateDeposit,
|
|
324
|
+
[OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX]: TX_TYPE.channelOffChainUpdateWithdrawal,
|
|
325
|
+
[OBJECT_TAG_CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX]: TX_TYPE.channelOffChainCreateContract,
|
|
326
|
+
[OBJECT_TAG_CHANNEL_OFFCHAIN_CALL_CONTRACT_TX]: TX_TYPE.channelOffChainCallContract,
|
|
327
|
+
[OBJECT_TAG_CHANNEL_RECONNECT_TX]: TX_TYPE.channelReconnect,
|
|
328
|
+
[OBJECT_TAG_PROOF_OF_INCLUSION]: TX_TYPE.proofOfInclusion,
|
|
329
|
+
[OBJECT_TAG_STATE_TREES]: TX_TYPE.stateTrees,
|
|
330
|
+
[OBJECT_TAG_MERKLE_PATRICIA_TREE]: TX_TYPE.merklePatriciaTree,
|
|
331
|
+
[OBJECT_TAG_MERKLE_PATRICIA_TREE_VALUE]: TX_TYPE.merklePatriciaTreeValue,
|
|
332
|
+
[OBJECT_TAG_CONTRACTS_TREE]: TX_TYPE.contractsTree,
|
|
333
|
+
[OBJECT_TAG_CONTRACT_CALLS_TREE]: TX_TYPE.contractCallsTree,
|
|
334
|
+
[OBJECT_TAG_CHANNELS_TREE]: TX_TYPE.channelsTree,
|
|
335
|
+
[OBJECT_TAG_NAMESERVICE_TREE]: TX_TYPE.nameserviceTree,
|
|
336
|
+
[OBJECT_TAG_ORACLES_TREE]: TX_TYPE.oraclesTree,
|
|
337
|
+
[OBJECT_TAG_ACCOUNTS_TREE]: TX_TYPE.accountsTree,
|
|
338
|
+
// GA Accounts
|
|
339
|
+
[OBJECT_TAG_GA_ATTACH]: TX_TYPE.gaAttach,
|
|
340
|
+
[OBJECT_TAG_GA_META]: TX_TYPE.gaMeta,
|
|
341
|
+
[OBJECT_TAG_PAYING_FOR]: TX_TYPE.payingFor,
|
|
342
|
+
[OBJECT_TAG_SOPHIA_BYTE_CODE]: TX_TYPE.sophiaByteCode
|
|
343
|
+
};
|
|
344
|
+
export const FIELD_TYPES = {
|
|
345
|
+
int: 'int',
|
|
301
346
|
amount: 'amount',
|
|
302
347
|
id: 'id',
|
|
303
348
|
ids: 'ids',
|
|
@@ -322,45 +367,50 @@ export var FIELD_TYPES = {
|
|
|
322
367
|
stateTree: 'stateTree'
|
|
323
368
|
}; // FEE CALCULATION
|
|
324
369
|
|
|
325
|
-
export
|
|
326
|
-
export
|
|
327
|
-
export
|
|
328
|
-
export
|
|
370
|
+
export const BASE_GAS = 15000;
|
|
371
|
+
export const GAS_PER_BYTE = 20;
|
|
372
|
+
export const DEFAULT_FEE = 20000;
|
|
373
|
+
export const KEY_BLOCK_INTERVAL = 3; // MAP WITH FEE CALCULATION https://github.com/aeternity/protocol/blob/master/consensus/consensus.md#gas
|
|
374
|
+
|
|
375
|
+
export const TX_FEE_BASE_GAS = txType => {
|
|
376
|
+
const factor = {
|
|
377
|
+
[TX_TYPE.channelForceProgress]: 30,
|
|
378
|
+
[TX_TYPE.channelOffChain]: 0,
|
|
379
|
+
[TX_TYPE.channelOffChainCallContract]: 0,
|
|
380
|
+
[TX_TYPE.channelOffChainCreateContract]: 0,
|
|
381
|
+
[TX_TYPE.channelOffChainUpdateDeposit]: 0,
|
|
382
|
+
[TX_TYPE.channelOffChainUpdateWithdrawal]: 0,
|
|
383
|
+
[TX_TYPE.channelOffChainUpdateTransfer]: 0,
|
|
384
|
+
[TX_TYPE.contractCreate]: 5,
|
|
385
|
+
[TX_TYPE.contractCall]: 12,
|
|
386
|
+
[TX_TYPE.gaAttach]: 5,
|
|
387
|
+
[TX_TYPE.gaMeta]: 5,
|
|
388
|
+
[TX_TYPE.payingFor]: 1 / 5
|
|
389
|
+
}[txType] || 1;
|
|
390
|
+
return new BigNumber(factor * BASE_GAS);
|
|
391
|
+
};
|
|
392
|
+
export const TX_FEE_OTHER_GAS = (txType, txSize, _ref2) => {
|
|
393
|
+
let {
|
|
394
|
+
relativeTtl,
|
|
395
|
+
innerTxSize
|
|
396
|
+
} = _ref2;
|
|
329
397
|
|
|
330
|
-
export var TX_FEE_BASE_GAS = function TX_FEE_BASE_GAS(txType) {
|
|
331
398
|
switch (txType) {
|
|
332
|
-
|
|
333
|
-
case TX_TYPE.
|
|
334
|
-
case TX_TYPE.
|
|
335
|
-
|
|
336
|
-
|
|
399
|
+
case TX_TYPE.oracleRegister:
|
|
400
|
+
case TX_TYPE.oracleExtend:
|
|
401
|
+
case TX_TYPE.oracleQuery:
|
|
402
|
+
case TX_TYPE.oracleResponse:
|
|
403
|
+
return new BigNumber(txSize).times(GAS_PER_BYTE).plus(Math.ceil(32000 * relativeTtl / Math.floor(60 * 24 * 365 / KEY_BLOCK_INTERVAL)));
|
|
337
404
|
|
|
338
405
|
case TX_TYPE.gaMeta:
|
|
339
|
-
case TX_TYPE.
|
|
340
|
-
return BigNumber(
|
|
406
|
+
case TX_TYPE.payingFor:
|
|
407
|
+
return new BigNumber(txSize).minus(innerTxSize).times(GAS_PER_BYTE);
|
|
341
408
|
|
|
342
409
|
default:
|
|
343
|
-
return BigNumber(
|
|
410
|
+
return new BigNumber(txSize).times(GAS_PER_BYTE);
|
|
344
411
|
}
|
|
345
412
|
};
|
|
346
|
-
export
|
|
347
|
-
return function (_ref3) {
|
|
348
|
-
var txSize = _ref3.txSize,
|
|
349
|
-
relativeTtl = _ref3.relativeTtl;
|
|
350
|
-
|
|
351
|
-
switch (txType) {
|
|
352
|
-
case TX_TYPE.oracleRegister:
|
|
353
|
-
case TX_TYPE.oracleExtend:
|
|
354
|
-
case TX_TYPE.oracleQuery:
|
|
355
|
-
case TX_TYPE.oracleResponse:
|
|
356
|
-
return BigNumber(txSize).times(GAS_PER_BYTE).plus(Math.ceil(32000 * relativeTtl / Math.floor(60 * 24 * 365 / KEY_BLOCK_INTERVAL)));
|
|
357
|
-
|
|
358
|
-
default:
|
|
359
|
-
return BigNumber(txSize).times(GAS_PER_BYTE);
|
|
360
|
-
}
|
|
361
|
-
};
|
|
362
|
-
};
|
|
363
|
-
export var ID_TAG = {
|
|
413
|
+
export const ID_TAG = {
|
|
364
414
|
account: ID_TAG_ACCOUNT,
|
|
365
415
|
name: ID_TAG_NAME,
|
|
366
416
|
commitment: ID_TAG_COMMITMENT,
|
|
@@ -368,7 +418,7 @@ export var ID_TAG = {
|
|
|
368
418
|
contract: ID_TAG_CONTRACT,
|
|
369
419
|
channel: ID_TAG_CHANNEL
|
|
370
420
|
};
|
|
371
|
-
export
|
|
421
|
+
export const PREFIX_ID_TAG = {
|
|
372
422
|
ak: ID_TAG.account,
|
|
373
423
|
nm: ID_TAG.name,
|
|
374
424
|
cm: ID_TAG.commitment,
|
|
@@ -376,426 +426,389 @@ export var PREFIX_ID_TAG = {
|
|
|
376
426
|
ct: ID_TAG.contract,
|
|
377
427
|
ch: ID_TAG.channel
|
|
378
428
|
};
|
|
379
|
-
export
|
|
380
|
-
|
|
381
|
-
var VALIDATION_ERROR = function VALIDATION_ERROR(msg) {
|
|
382
|
-
return msg;
|
|
383
|
-
};
|
|
384
|
-
|
|
385
|
-
export var VALIDATION_MESSAGE = (_VALIDATION_MESSAGE = {}, _defineProperty(_VALIDATION_MESSAGE, FIELD_TYPES["int"], function (_ref4) {
|
|
386
|
-
var value = _ref4.value,
|
|
387
|
-
isMinusValue = _ref4.isMinusValue;
|
|
388
|
-
return isMinusValue ? VALIDATION_ERROR("".concat(value, " must be >= 0")) : VALIDATION_ERROR("".concat(value, " is not of type Number or BigNumber"));
|
|
389
|
-
}), _defineProperty(_VALIDATION_MESSAGE, FIELD_TYPES.amount, function (_ref5) {
|
|
390
|
-
var value = _ref5.value,
|
|
391
|
-
isMinusValue = _ref5.isMinusValue;
|
|
392
|
-
return isMinusValue ? VALIDATION_ERROR("".concat(value, " must be >= 0")) : VALIDATION_ERROR("".concat(value, " is not of type Number or BigNumber"));
|
|
393
|
-
}), _defineProperty(_VALIDATION_MESSAGE, FIELD_TYPES.id, function (_ref6) {
|
|
394
|
-
var _context2;
|
|
395
|
-
|
|
396
|
-
var value = _ref6.value,
|
|
397
|
-
prefix = _ref6.prefix;
|
|
398
|
-
return VALIDATION_ERROR(_concatInstanceProperty(_context2 = "'".concat(value, "' prefix doesn't match expected prefix '")).call(_context2, prefix, "' or ID_TAG for prefix not found"));
|
|
399
|
-
}), _defineProperty(_VALIDATION_MESSAGE, FIELD_TYPES.binary, function (_ref7) {
|
|
400
|
-
var _context3;
|
|
401
|
-
|
|
402
|
-
var prefix = _ref7.prefix,
|
|
403
|
-
value = _ref7.value;
|
|
404
|
-
return VALIDATION_ERROR(_concatInstanceProperty(_context3 = "'".concat(value, "' prefix doesn't match expected prefix '")).call(_context3, prefix, "'"));
|
|
405
|
-
}), _defineProperty(_VALIDATION_MESSAGE, FIELD_TYPES.string, function (_ref8) {
|
|
406
|
-
var value = _ref8.value;
|
|
407
|
-
return VALIDATION_ERROR('Not a string');
|
|
408
|
-
}), _defineProperty(_VALIDATION_MESSAGE, FIELD_TYPES.pointers, function (_ref9) {
|
|
409
|
-
var value = _ref9.value;
|
|
410
|
-
return VALIDATION_ERROR('Value must be of type Array and contains only object\'s like \'{key: "account_pubkey", id: "ak_lkamsflkalsdalksdlasdlasdlamd"}\'');
|
|
411
|
-
}), _defineProperty(_VALIDATION_MESSAGE, FIELD_TYPES.ctVersion, function (_ref10) {
|
|
412
|
-
var value = _ref10.value;
|
|
413
|
-
return VALIDATION_ERROR('Value must be an object with "vmVersion" and "abiVersion" fields');
|
|
414
|
-
}), _VALIDATION_MESSAGE);
|
|
415
|
-
var BASE_TX = [TX_FIELD('tag', FIELD_TYPES["int"]), TX_FIELD('VSN', FIELD_TYPES["int"])];
|
|
416
|
-
export var CONTRACT_BYTE_CODE_LIMA = _concatInstanceProperty(_context4 = []).call(_context4, BASE_TX, [TX_FIELD('sourceCodeHash', FIELD_TYPES.rawBinary), TX_FIELD('typeInfo', FIELD_TYPES.sophiaCodeTypeInfo), TX_FIELD('byteCode', FIELD_TYPES.rawBinary), TX_FIELD('compilerVersion', FIELD_TYPES.string), TX_FIELD('payable', FIELD_TYPES.bool)]);
|
|
417
|
-
|
|
418
|
-
var ACCOUNT_TX_2 = _concatInstanceProperty(_context5 = []).call(_context5, BASE_TX, [TX_FIELD('flags', FIELD_TYPES["int"]), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('balance', FIELD_TYPES["int"]), TX_FIELD('gaContract', FIELD_TYPES.id, ['ct', 'nm']), TX_FIELD('gaAuthFun', FIELD_TYPES.binary, 'cb')]);
|
|
419
|
-
|
|
420
|
-
var SPEND_TX = _concatInstanceProperty(_context6 = []).call(_context6, BASE_TX, [TX_FIELD('senderId', FIELD_TYPES.id, 'ak'), TX_FIELD('recipientId', FIELD_TYPES.id, ['ak', 'nm']), TX_FIELD('amount', FIELD_TYPES.amount), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('payload', FIELD_TYPES.payload)]);
|
|
421
|
-
|
|
422
|
-
var SIGNED_TX = _concatInstanceProperty(_context7 = []).call(_context7, BASE_TX, [TX_FIELD('signatures', FIELD_TYPES.signatures), TX_FIELD('encodedTx', FIELD_TYPES.rlpBinary)]);
|
|
423
|
-
|
|
424
|
-
var NAME_PRE_CLAIM_TX = _concatInstanceProperty(_context8 = []).call(_context8, BASE_TX, [TX_FIELD('accountId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('commitmentId', FIELD_TYPES.id, 'cm'), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"])]);
|
|
425
|
-
|
|
426
|
-
var NAME_CLAIM_TX_2 = _concatInstanceProperty(_context9 = []).call(_context9, BASE_TX, [TX_FIELD('accountId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('name', FIELD_TYPES.binary, 'nm'), TX_FIELD('nameSalt', FIELD_TYPES["int"]), TX_FIELD('nameFee', FIELD_TYPES.amount), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"])]);
|
|
427
|
-
|
|
428
|
-
var NAME_UPDATE_TX = _concatInstanceProperty(_context10 = []).call(_context10, BASE_TX, [TX_FIELD('accountId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('nameId', FIELD_TYPES.id, 'nm'), TX_FIELD('nameTtl', FIELD_TYPES["int"]), TX_FIELD('pointers', FIELD_TYPES.pointers), TX_FIELD('clientTtl', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"])]);
|
|
429
|
-
|
|
430
|
-
var NAME_TRANSFER_TX = _concatInstanceProperty(_context11 = []).call(_context11, BASE_TX, [TX_FIELD('accountId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('nameId', FIELD_TYPES.id, 'nm'), TX_FIELD('recipientId', FIELD_TYPES.id, ['ak', 'nm']), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"])]);
|
|
431
|
-
|
|
432
|
-
var NAME_REVOKE_TX = _concatInstanceProperty(_context12 = []).call(_context12, BASE_TX, [TX_FIELD('accountId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('nameId', FIELD_TYPES.id, 'nm'), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"])]);
|
|
433
|
-
|
|
434
|
-
var CONTRACT_TX = _concatInstanceProperty(_context13 = []).call(_context13, BASE_TX, [TX_FIELD('owner', FIELD_TYPES.id, 'ak'), TX_FIELD('ctVersion', FIELD_TYPES["int"]), TX_FIELD('code', FIELD_TYPES.binary, 'cb'), TX_FIELD('log', FIELD_TYPES.binary, 'cb'), TX_FIELD('active', FIELD_TYPES.bool), TX_FIELD('referers', FIELD_TYPES.ids, 'ak'), TX_FIELD('deposit', FIELD_TYPES.amount)]);
|
|
435
|
-
|
|
436
|
-
var GA_ATTACH_TX = _concatInstanceProperty(_context14 = []).call(_context14, BASE_TX, [TX_FIELD('ownerId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('code', FIELD_TYPES.binary, 'cb'), TX_FIELD('authFun', FIELD_TYPES.rawBinary), TX_FIELD('ctVersion', FIELD_TYPES.ctVersion), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('gas', FIELD_TYPES["int"]), TX_FIELD('gasPrice', FIELD_TYPES["int"]), TX_FIELD('callData', FIELD_TYPES.binary, 'cb')]);
|
|
437
|
-
|
|
438
|
-
var GA_META_TX_2 = _concatInstanceProperty(_context15 = []).call(_context15, BASE_TX, [TX_FIELD('gaId', FIELD_TYPES.id, 'ak'), TX_FIELD('authData', FIELD_TYPES.binary, 'cb'), TX_FIELD('abiVersion', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('gas', FIELD_TYPES["int"]), TX_FIELD('gasPrice', FIELD_TYPES["int"]), TX_FIELD('tx', FIELD_TYPES.rlpBinary)]);
|
|
439
|
-
|
|
440
|
-
var CONTRACT_CREATE_TX = _concatInstanceProperty(_context16 = []).call(_context16, BASE_TX, [TX_FIELD('ownerId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('code', FIELD_TYPES.binary, 'cb'), TX_FIELD('ctVersion', FIELD_TYPES.ctVersion), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('deposit', FIELD_TYPES.amount), TX_FIELD('amount', FIELD_TYPES.amount), TX_FIELD('gas', FIELD_TYPES["int"]), TX_FIELD('gasPrice', FIELD_TYPES["int"]), TX_FIELD('callData', FIELD_TYPES.binary, 'cb')]);
|
|
441
|
-
|
|
442
|
-
var CONTRACT_CALL_TX = _concatInstanceProperty(_context17 = []).call(_context17, BASE_TX, [TX_FIELD('callerId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('contractId', FIELD_TYPES.id, ['ct', 'nm']), TX_FIELD('abiVersion', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('amount', FIELD_TYPES.amount), TX_FIELD('gas', FIELD_TYPES["int"]), TX_FIELD('gasPrice', FIELD_TYPES["int"]), TX_FIELD('callData', FIELD_TYPES.binary, 'cb')]);
|
|
443
|
-
|
|
444
|
-
var CONTRACT_CALL_RESULT_TX = _concatInstanceProperty(_context18 = []).call(_context18, BASE_TX, [TX_FIELD('callerId', FIELD_TYPES.id, 'ak'), TX_FIELD('callerNonce', FIELD_TYPES["int"]), TX_FIELD('height', FIELD_TYPES["int"]), TX_FIELD('contractId', FIELD_TYPES.id, 'ct'), TX_FIELD('gasPrice', FIELD_TYPES["int"]), TX_FIELD('gasUsed', FIELD_TYPES["int"]), TX_FIELD('returnValue', FIELD_TYPES.binary, 'cb'), TX_FIELD('returnType', FIELD_TYPES.callReturnType), // TODO: add serialization for <log> :: [ { <address> :: id, [ <topics> :: binary() ], <data> :: binary() } ]
|
|
445
|
-
TX_FIELD('log', FIELD_TYPES.rawBinary)]);
|
|
446
|
-
|
|
447
|
-
var ORACLE_REGISTER_TX = _concatInstanceProperty(_context19 = []).call(_context19, BASE_TX, [TX_FIELD('accountId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES["int"]), TX_FIELD('queryFormat', FIELD_TYPES.string), TX_FIELD('responseFormat', FIELD_TYPES.string), TX_FIELD('queryFee', FIELD_TYPES.amount), TX_FIELD('oracleTtlType', FIELD_TYPES["int"]), TX_FIELD('oracleTtlValue', FIELD_TYPES["int"]), TX_FIELD('fee', FIELD_TYPES["int"]), TX_FIELD('ttl', FIELD_TYPES["int"]), TX_FIELD('abiVersion', FIELD_TYPES["int"])]);
|
|
429
|
+
export const ID_TAG_PREFIX = revertObject(PREFIX_ID_TAG);
|
|
448
430
|
|
|
449
|
-
|
|
431
|
+
const VALIDATION_ERROR = msg => msg;
|
|
450
432
|
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
var CONTRACT_CALLS_TREE_TX = _concatInstanceProperty(_context45 = []).call(_context45, BASE_TX, [TX_FIELD('calls', FIELD_TYPES.rlpBinary)]);
|
|
500
|
-
|
|
501
|
-
var CHANNELS_TREE_TX = _concatInstanceProperty(_context46 = []).call(_context46, BASE_TX, [TX_FIELD('channels', FIELD_TYPES.rlpBinary)]);
|
|
502
|
-
|
|
503
|
-
var NAMESERVICE_TREE_TX = _concatInstanceProperty(_context47 = []).call(_context47, BASE_TX, [TX_FIELD('mtree', FIELD_TYPES.rlpBinary)]);
|
|
504
|
-
|
|
505
|
-
var ORACLES_TREE_TX = _concatInstanceProperty(_context48 = []).call(_context48, BASE_TX, [TX_FIELD('otree', FIELD_TYPES.rlpBinary)]);
|
|
506
|
-
|
|
507
|
-
var ACCOUNTS_TREE_TX = _concatInstanceProperty(_context49 = []).call(_context49, BASE_TX, [TX_FIELD('accounts', FIELD_TYPES.rlpBinary)]);
|
|
508
|
-
|
|
509
|
-
export var TX_SERIALIZATION_SCHEMA = (_TX_SERIALIZATION_SCH = {}, _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.account, {
|
|
510
|
-
2: TX_SCHEMA_FIELD(ACCOUNT_TX_2, OBJECT_TAG_ACCOUNT)
|
|
511
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.signed, {
|
|
512
|
-
1: TX_SCHEMA_FIELD(SIGNED_TX, OBJECT_TAG_SIGNED_TRANSACTION)
|
|
513
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.spend, {
|
|
514
|
-
1: TX_SCHEMA_FIELD(SPEND_TX, OBJECT_TAG_SPEND_TRANSACTION)
|
|
515
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.namePreClaim, {
|
|
516
|
-
1: TX_SCHEMA_FIELD(NAME_PRE_CLAIM_TX, OBJECT_TAG_NAME_SERVICE_PRECLAIM_TRANSACTION)
|
|
517
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.nameClaim, {
|
|
518
|
-
2: TX_SCHEMA_FIELD(NAME_CLAIM_TX_2, OBJECT_TAG_NAME_SERVICE_CLAIM_TRANSACTION)
|
|
519
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.nameUpdate, {
|
|
520
|
-
1: TX_SCHEMA_FIELD(NAME_UPDATE_TX, OBJECT_TAG_NAME_SERVICE_UPDATE_TRANSACTION)
|
|
521
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.nameTransfer, {
|
|
522
|
-
1: TX_SCHEMA_FIELD(NAME_TRANSFER_TX, OBJECT_TAG_NAME_SERVICE_TRANSFER_TRANSACTION)
|
|
523
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.nameRevoke, {
|
|
524
|
-
1: TX_SCHEMA_FIELD(NAME_REVOKE_TX, OBJECT_TAG_NAME_SERVICE_REVOKE_TRANSACTION)
|
|
525
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.contract, {
|
|
526
|
-
1: TX_SCHEMA_FIELD(CONTRACT_TX, OBJECT_TAG_CONTRACT)
|
|
527
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.contractCreate, {
|
|
528
|
-
1: TX_SCHEMA_FIELD(CONTRACT_CREATE_TX, OBJECT_TAG_CONTRACT_CREATE_TRANSACTION)
|
|
529
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.contractCall, {
|
|
530
|
-
1: TX_SCHEMA_FIELD(CONTRACT_CALL_TX, OBJECT_TAG_CONTRACT_CALL_TRANSACTION)
|
|
531
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.contractCallResult, {
|
|
532
|
-
1: TX_SCHEMA_FIELD(CONTRACT_CALL_RESULT_TX, OBJECT_TAG_CONTRACT_CALL)
|
|
533
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.oracleRegister, {
|
|
534
|
-
1: TX_SCHEMA_FIELD(ORACLE_REGISTER_TX, OBJECT_TAG_ORACLE_REGISTER_TRANSACTION)
|
|
535
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.oracleExtend, {
|
|
536
|
-
1: TX_SCHEMA_FIELD(ORACLE_EXTEND_TX, OBJECT_TAG_ORACLE_EXTEND_TRANSACTION)
|
|
537
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.oracleQuery, {
|
|
538
|
-
1: TX_SCHEMA_FIELD(ORACLE_QUERY_TX, OBJECT_TAG_ORACLE_QUERY_TRANSACTION)
|
|
539
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.oracleResponse, {
|
|
540
|
-
1: TX_SCHEMA_FIELD(ORACLE_RESPOND_TX, OBJECT_TAG_ORACLE_RESPONSE_TRANSACTION)
|
|
541
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelCreate, {
|
|
542
|
-
2: TX_SCHEMA_FIELD(CHANNEL_CREATE_TX_2, OBJECT_TAG_CHANNEL_CREATE_TX)
|
|
543
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelCloseMutual, {
|
|
544
|
-
1: TX_SCHEMA_FIELD(CHANNEL_CLOSE_MUTUAL_TX, OBJECT_TAG_CHANNEL_CLOSE_MUTUAL_TX)
|
|
545
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelCloseSolo, {
|
|
546
|
-
1: TX_SCHEMA_FIELD(CHANNEL_CLOSE_SOLO_TX, OBJECT_TAG_CHANNEL_CLOSE_SOLO_TX)
|
|
547
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelSlash, {
|
|
548
|
-
1: TX_SCHEMA_FIELD(CHANNEL_SLASH_TX, OBJECT_TAG_CHANNEL_SLASH_TX)
|
|
549
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelDeposit, {
|
|
550
|
-
1: TX_SCHEMA_FIELD(CHANNEL_DEPOSIT_TX, OBJECT_TAG_CHANNEL_DEPOSIT_TX)
|
|
551
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelWithdraw, {
|
|
552
|
-
1: TX_SCHEMA_FIELD(CHANNEL_WITHDRAW_TX, OBJECT_TAG_CHANNEL_WITHRAW_TX)
|
|
553
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelSettle, {
|
|
554
|
-
1: TX_SCHEMA_FIELD(CHANNEL_SETTLE_TX, OBJECT_TAG_CHANNEL_SETTLE_TX)
|
|
555
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelForceProgress, {
|
|
556
|
-
1: TX_SCHEMA_FIELD(CHANNEL_FORCE_PROGRESS_TX, OBJECT_TAG_CHANNEL_FORCE_PROGRESS_TX)
|
|
557
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelOffChain, {
|
|
558
|
-
2: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_TX_2, OBJECT_TAG_CHANNEL_OFFCHAIN_TX)
|
|
559
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channel, {
|
|
560
|
-
3: TX_SCHEMA_FIELD(CHANNEL_TX_3, OBJECT_TAG_CHANNEL)
|
|
561
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelSnapshotSolo, {
|
|
562
|
-
1: TX_SCHEMA_FIELD(CHANNEL_SNAPSHOT_SOLO_TX, OBJECT_TAG_CHANNEL_SNAPSHOT_SOLO_TX)
|
|
563
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelOffChainUpdateTransfer, {
|
|
564
|
-
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX)
|
|
565
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelOffChainUpdateDeposit, {
|
|
566
|
-
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX)
|
|
567
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelOffChainUpdateWithdrawal, {
|
|
568
|
-
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX)
|
|
569
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelOffChainCreateContract, {
|
|
570
|
-
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX)
|
|
571
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelOffChainCallContract, {
|
|
572
|
-
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_CALL_CONTRACT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_CALL_CONTRACT_TX)
|
|
573
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelReconnect, {
|
|
574
|
-
1: TX_SCHEMA_FIELD(CHANNEL_RECONNECT_TX, OBJECT_TAG_CHANNEL_RECONNECT_TX)
|
|
575
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.proofOfInclusion, {
|
|
576
|
-
1: TX_SCHEMA_FIELD(PROOF_OF_INCLUSION_TX, OBJECT_TAG_PROOF_OF_INCLUSION)
|
|
577
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.stateTrees, {
|
|
578
|
-
1: TX_SCHEMA_FIELD(STATE_TREES_TX, OBJECT_TAG_STATE_TREES)
|
|
579
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.merklePatriciaTree, {
|
|
580
|
-
1: TX_SCHEMA_FIELD(MERKLE_PATRICIA_TREE_TX, OBJECT_TAG_MERKLE_PATRICIA_TREE)
|
|
581
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.merklePatriciaTreeValue, {
|
|
582
|
-
1: TX_SCHEMA_FIELD(MERKLE_PATRICIA_TREE_VALUE_TX, OBJECT_TAG_MERKLE_PATRICIA_TREE_VALUE)
|
|
583
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.contractsTree, {
|
|
584
|
-
1: TX_SCHEMA_FIELD(CONTRACTS_TREE_TX, OBJECT_TAG_CONTRACTS_TREE)
|
|
585
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.contractCallsTree, {
|
|
586
|
-
1: TX_SCHEMA_FIELD(CONTRACT_CALLS_TREE_TX, OBJECT_TAG_CONTRACT_CALLS_TREE)
|
|
587
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.channelsTree, {
|
|
588
|
-
1: TX_SCHEMA_FIELD(CHANNELS_TREE_TX, OBJECT_TAG_CHANNELS_TREE)
|
|
589
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.nameserviceTree, {
|
|
590
|
-
1: TX_SCHEMA_FIELD(NAMESERVICE_TREE_TX, OBJECT_TAG_NAMESERVICE_TREE)
|
|
591
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.oraclesTree, {
|
|
592
|
-
1: TX_SCHEMA_FIELD(ORACLES_TREE_TX, OBJECT_TAG_ORACLES_TREE)
|
|
593
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.accountsTree, {
|
|
594
|
-
1: TX_SCHEMA_FIELD(ACCOUNTS_TREE_TX, OBJECT_TAG_ACCOUNTS_TREE)
|
|
595
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.gaAttach, {
|
|
596
|
-
1: TX_SCHEMA_FIELD(GA_ATTACH_TX, OBJECT_TAG_GA_ATTACH)
|
|
597
|
-
}), _defineProperty(_TX_SERIALIZATION_SCH, TX_TYPE.gaMeta, {
|
|
598
|
-
2: TX_SCHEMA_FIELD(GA_META_TX_2, OBJECT_TAG_GA_META)
|
|
599
|
-
}), _TX_SERIALIZATION_SCH);
|
|
600
|
-
export var TX_DESERIALIZATION_SCHEMA = (_TX_DESERIALIZATION_S = {}, _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_ACCOUNT, {
|
|
601
|
-
2: TX_SCHEMA_FIELD(ACCOUNT_TX_2, OBJECT_TAG_ACCOUNT)
|
|
602
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_SIGNED_TRANSACTION, {
|
|
603
|
-
1: TX_SCHEMA_FIELD(SIGNED_TX, OBJECT_TAG_SIGNED_TRANSACTION)
|
|
604
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_SPEND_TRANSACTION, {
|
|
605
|
-
1: TX_SCHEMA_FIELD(SPEND_TX, OBJECT_TAG_SPEND_TRANSACTION)
|
|
606
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_NAME_SERVICE_PRECLAIM_TRANSACTION, {
|
|
607
|
-
1: TX_SCHEMA_FIELD(NAME_PRE_CLAIM_TX, OBJECT_TAG_NAME_SERVICE_PRECLAIM_TRANSACTION)
|
|
608
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_NAME_SERVICE_CLAIM_TRANSACTION, {
|
|
609
|
-
2: TX_SCHEMA_FIELD(NAME_CLAIM_TX_2, OBJECT_TAG_NAME_SERVICE_CLAIM_TRANSACTION)
|
|
610
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_NAME_SERVICE_UPDATE_TRANSACTION, {
|
|
611
|
-
1: TX_SCHEMA_FIELD(NAME_UPDATE_TX, OBJECT_TAG_NAME_SERVICE_UPDATE_TRANSACTION)
|
|
612
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_NAME_SERVICE_TRANSFER_TRANSACTION, {
|
|
613
|
-
1: TX_SCHEMA_FIELD(NAME_TRANSFER_TX, OBJECT_TAG_NAME_SERVICE_TRANSFER_TRANSACTION)
|
|
614
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_NAME_SERVICE_REVOKE_TRANSACTION, {
|
|
615
|
-
1: TX_SCHEMA_FIELD(NAME_REVOKE_TX, OBJECT_TAG_NAME_SERVICE_REVOKE_TRANSACTION)
|
|
616
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CONTRACT, {
|
|
617
|
-
1: TX_SCHEMA_FIELD(CONTRACT_TX, OBJECT_TAG_CONTRACT)
|
|
618
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CONTRACT_CREATE_TRANSACTION, {
|
|
619
|
-
1: TX_SCHEMA_FIELD(CONTRACT_CREATE_TX, OBJECT_TAG_CONTRACT_CREATE_TRANSACTION)
|
|
620
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CONTRACT_CALL_TRANSACTION, {
|
|
621
|
-
1: TX_SCHEMA_FIELD(CONTRACT_CALL_TX, OBJECT_TAG_CONTRACT_CALL_TRANSACTION)
|
|
622
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CONTRACT_CALL, {
|
|
623
|
-
1: TX_SCHEMA_FIELD(CONTRACT_CALL_RESULT_TX, OBJECT_TAG_CONTRACT_CALL)
|
|
624
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_ORACLE_REGISTER_TRANSACTION, {
|
|
625
|
-
1: TX_SCHEMA_FIELD(ORACLE_REGISTER_TX, OBJECT_TAG_ORACLE_REGISTER_TRANSACTION)
|
|
626
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_ORACLE_EXTEND_TRANSACTION, {
|
|
627
|
-
1: TX_SCHEMA_FIELD(ORACLE_EXTEND_TX, OBJECT_TAG_ORACLE_EXTEND_TRANSACTION)
|
|
628
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_ORACLE_QUERY_TRANSACTION, {
|
|
629
|
-
1: TX_SCHEMA_FIELD(ORACLE_QUERY_TX, OBJECT_TAG_ORACLE_QUERY_TRANSACTION)
|
|
630
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_ORACLE_RESPONSE_TRANSACTION, {
|
|
631
|
-
1: TX_SCHEMA_FIELD(ORACLE_RESPOND_TX, OBJECT_TAG_ORACLE_RESPONSE_TRANSACTION)
|
|
632
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CHANNEL_CREATE_TX, {
|
|
633
|
-
2: TX_SCHEMA_FIELD(CHANNEL_CREATE_TX_2, OBJECT_TAG_CHANNEL_CREATE_TX)
|
|
634
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CHANNEL_CLOSE_MUTUAL_TX, {
|
|
635
|
-
1: TX_SCHEMA_FIELD(CHANNEL_CLOSE_MUTUAL_TX, OBJECT_TAG_CHANNEL_CLOSE_MUTUAL_TX)
|
|
636
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CHANNEL_CLOSE_SOLO_TX, {
|
|
637
|
-
1: TX_SCHEMA_FIELD(CHANNEL_CLOSE_SOLO_TX, OBJECT_TAG_CHANNEL_CLOSE_SOLO_TX)
|
|
638
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CHANNEL_SLASH_TX, {
|
|
639
|
-
1: TX_SCHEMA_FIELD(CHANNEL_SLASH_TX, OBJECT_TAG_CHANNEL_SLASH_TX)
|
|
640
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CHANNEL_DEPOSIT_TX, {
|
|
641
|
-
1: TX_SCHEMA_FIELD(CHANNEL_DEPOSIT_TX, OBJECT_TAG_CHANNEL_DEPOSIT_TX)
|
|
642
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CHANNEL_WITHRAW_TX, {
|
|
643
|
-
1: TX_SCHEMA_FIELD(CHANNEL_WITHDRAW_TX, OBJECT_TAG_CHANNEL_WITHRAW_TX)
|
|
644
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CHANNEL_SETTLE_TX, {
|
|
645
|
-
1: TX_SCHEMA_FIELD(CHANNEL_SETTLE_TX, OBJECT_TAG_CHANNEL_SETTLE_TX)
|
|
646
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CHANNEL_OFFCHAIN_TX, {
|
|
647
|
-
2: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_TX_2, OBJECT_TAG_CHANNEL_OFFCHAIN_TX)
|
|
648
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CHANNEL, {
|
|
649
|
-
3: TX_SCHEMA_FIELD(CHANNEL_TX_3, OBJECT_TAG_CHANNEL)
|
|
650
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CHANNEL_SNAPSHOT_SOLO_TX, {
|
|
651
|
-
1: TX_SCHEMA_FIELD(CHANNEL_SNAPSHOT_SOLO_TX, OBJECT_TAG_CHANNEL_SNAPSHOT_SOLO_TX)
|
|
652
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX, {
|
|
653
|
-
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX)
|
|
654
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX, {
|
|
655
|
-
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX)
|
|
656
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX, {
|
|
657
|
-
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX)
|
|
658
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX, {
|
|
659
|
-
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX)
|
|
660
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CHANNEL_OFFCHAIN_CALL_CONTRACT_TX, {
|
|
661
|
-
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_CALL_CONTRACT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_CALL_CONTRACT_TX)
|
|
662
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CHANNEL_RECONNECT_TX, {
|
|
663
|
-
1: TX_SCHEMA_FIELD(CHANNEL_RECONNECT_TX, OBJECT_TAG_CHANNEL_RECONNECT_TX)
|
|
664
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_PROOF_OF_INCLUSION, {
|
|
665
|
-
1: TX_SCHEMA_FIELD(PROOF_OF_INCLUSION_TX, OBJECT_TAG_PROOF_OF_INCLUSION)
|
|
666
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_STATE_TREES, {
|
|
667
|
-
1: TX_SCHEMA_FIELD(STATE_TREES_TX, OBJECT_TAG_STATE_TREES)
|
|
668
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_MERKLE_PATRICIA_TREE, {
|
|
669
|
-
1: TX_SCHEMA_FIELD(MERKLE_PATRICIA_TREE_TX, OBJECT_TAG_MERKLE_PATRICIA_TREE)
|
|
670
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_MERKLE_PATRICIA_TREE_VALUE, {
|
|
671
|
-
1: TX_SCHEMA_FIELD(MERKLE_PATRICIA_TREE_VALUE_TX, OBJECT_TAG_MERKLE_PATRICIA_TREE_VALUE)
|
|
672
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CONTRACTS_TREE, {
|
|
673
|
-
1: TX_SCHEMA_FIELD(CONTRACTS_TREE_TX, OBJECT_TAG_CONTRACTS_TREE)
|
|
674
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CONTRACT_CALLS_TREE, {
|
|
675
|
-
1: TX_SCHEMA_FIELD(CONTRACT_CALLS_TREE_TX, OBJECT_TAG_CONTRACT_CALLS_TREE)
|
|
676
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CHANNELS_TREE, {
|
|
677
|
-
1: TX_SCHEMA_FIELD(CHANNELS_TREE_TX, OBJECT_TAG_CHANNELS_TREE)
|
|
678
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_NAMESERVICE_TREE, {
|
|
679
|
-
1: TX_SCHEMA_FIELD(NAMESERVICE_TREE_TX, OBJECT_TAG_NAMESERVICE_TREE)
|
|
680
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_ORACLES_TREE, {
|
|
681
|
-
1: TX_SCHEMA_FIELD(ORACLES_TREE_TX, OBJECT_TAG_ORACLES_TREE)
|
|
682
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_ACCOUNTS_TREE, {
|
|
683
|
-
1: TX_SCHEMA_FIELD(ACCOUNTS_TREE_TX, OBJECT_TAG_ACCOUNTS_TREE)
|
|
684
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_GA_ATTACH, {
|
|
685
|
-
1: TX_SCHEMA_FIELD(GA_ATTACH_TX, OBJECT_TAG_GA_ATTACH)
|
|
686
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_GA_META, {
|
|
687
|
-
2: TX_SCHEMA_FIELD(GA_META_TX_2, OBJECT_TAG_GA_META)
|
|
688
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_CHANNEL_FORCE_PROGRESS_TX, {
|
|
689
|
-
1: TX_SCHEMA_FIELD(CHANNEL_FORCE_PROGRESS_TX, OBJECT_TAG_CHANNEL_FORCE_PROGRESS_TX)
|
|
690
|
-
}), _defineProperty(_TX_DESERIALIZATION_S, OBJECT_TAG_SOPHIA_BYTE_CODE, {
|
|
691
|
-
3: TX_SCHEMA_FIELD(CONTRACT_BYTE_CODE_LIMA, OBJECT_TAG_SOPHIA_BYTE_CODE)
|
|
692
|
-
}), _TX_DESERIALIZATION_S); // VERIFICATION SCHEMA
|
|
693
|
-
|
|
694
|
-
var ERROR_TYPE = {
|
|
695
|
-
ERROR: 'error',
|
|
696
|
-
WARNING: 'warning'
|
|
697
|
-
};
|
|
698
|
-
|
|
699
|
-
var VERIFICATION_FIELD = function VERIFICATION_FIELD(msg, verificationFn, error) {
|
|
700
|
-
return [msg, verificationFn, error];
|
|
433
|
+
export const VALIDATION_MESSAGE = {
|
|
434
|
+
[FIELD_TYPES.int]: _ref3 => {
|
|
435
|
+
let {
|
|
436
|
+
value,
|
|
437
|
+
isMinusValue
|
|
438
|
+
} = _ref3;
|
|
439
|
+
return isMinusValue ? VALIDATION_ERROR(`${value} must be >= 0`) : VALIDATION_ERROR(`${value} is not of type Number or BigNumber`);
|
|
440
|
+
},
|
|
441
|
+
[FIELD_TYPES.amount]: _ref4 => {
|
|
442
|
+
let {
|
|
443
|
+
value,
|
|
444
|
+
isMinusValue
|
|
445
|
+
} = _ref4;
|
|
446
|
+
return isMinusValue ? VALIDATION_ERROR(`${value} must be >= 0`) : VALIDATION_ERROR(`${value} is not of type Number or BigNumber`);
|
|
447
|
+
},
|
|
448
|
+
[FIELD_TYPES.id]: _ref5 => {
|
|
449
|
+
let {
|
|
450
|
+
value,
|
|
451
|
+
prefix
|
|
452
|
+
} = _ref5;
|
|
453
|
+
return VALIDATION_ERROR(`'${value}' prefix doesn't match expected prefix '${prefix}' or ID_TAG for prefix not found`);
|
|
454
|
+
},
|
|
455
|
+
[FIELD_TYPES.binary]: _ref6 => {
|
|
456
|
+
let {
|
|
457
|
+
prefix,
|
|
458
|
+
value
|
|
459
|
+
} = _ref6;
|
|
460
|
+
return VALIDATION_ERROR(`'${value}' prefix doesn't match expected prefix '${prefix}'`);
|
|
461
|
+
},
|
|
462
|
+
[FIELD_TYPES.string]: _ref7 => {
|
|
463
|
+
let {
|
|
464
|
+
value
|
|
465
|
+
} = _ref7;
|
|
466
|
+
return VALIDATION_ERROR('Not a string');
|
|
467
|
+
},
|
|
468
|
+
[FIELD_TYPES.pointers]: _ref8 => {
|
|
469
|
+
let {
|
|
470
|
+
value
|
|
471
|
+
} = _ref8;
|
|
472
|
+
return VALIDATION_ERROR('Value must be of type Array and contains only object\'s like \'{key: "account_pubkey", id: "ak_lkamsflkalsdalksdlasdlasdlamd"}\'');
|
|
473
|
+
},
|
|
474
|
+
[FIELD_TYPES.ctVersion]: _ref9 => {
|
|
475
|
+
let {
|
|
476
|
+
value
|
|
477
|
+
} = _ref9;
|
|
478
|
+
return VALIDATION_ERROR('Value must be an object with "vmVersion" and "abiVersion" fields');
|
|
479
|
+
}
|
|
701
480
|
};
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
481
|
+
const BASE_TX = [TX_FIELD('tag', FIELD_TYPES.int), TX_FIELD('VSN', FIELD_TYPES.int)];
|
|
482
|
+
export const CONTRACT_BYTE_CODE_LIMA = [...BASE_TX, TX_FIELD('sourceCodeHash', FIELD_TYPES.rawBinary), TX_FIELD('typeInfo', FIELD_TYPES.sophiaCodeTypeInfo), TX_FIELD('byteCode', FIELD_TYPES.rawBinary), TX_FIELD('compilerVersion', FIELD_TYPES.string), TX_FIELD('payable', FIELD_TYPES.bool)];
|
|
483
|
+
const ACCOUNT_TX_2 = [...BASE_TX, TX_FIELD('flags', FIELD_TYPES.int), TX_FIELD('nonce', FIELD_TYPES.int), TX_FIELD('balance', FIELD_TYPES.int), TX_FIELD('gaContract', FIELD_TYPES.id, ['ct', 'nm']), TX_FIELD('gaAuthFun', FIELD_TYPES.binary, 'cb')];
|
|
484
|
+
const SPEND_TX = [...BASE_TX, TX_FIELD('senderId', FIELD_TYPES.id, 'ak'), TX_FIELD('recipientId', FIELD_TYPES.id, ['ak', 'nm']), TX_FIELD('amount', FIELD_TYPES.amount), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('ttl', FIELD_TYPES.int), TX_FIELD('nonce', FIELD_TYPES.int), TX_FIELD('payload', FIELD_TYPES.payload)];
|
|
485
|
+
const SIGNED_TX = [...BASE_TX, TX_FIELD('signatures', FIELD_TYPES.signatures), TX_FIELD('encodedTx', FIELD_TYPES.rlpBinary)];
|
|
486
|
+
const NAME_PRE_CLAIM_TX = [...BASE_TX, TX_FIELD('accountId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES.int), TX_FIELD('commitmentId', FIELD_TYPES.id, 'cm'), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('ttl', FIELD_TYPES.int)];
|
|
487
|
+
const NAME_CLAIM_TX_2 = [...BASE_TX, TX_FIELD('accountId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES.int), TX_FIELD('name', FIELD_TYPES.binary, 'nm'), TX_FIELD('nameSalt', FIELD_TYPES.int), TX_FIELD('nameFee', FIELD_TYPES.amount), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('ttl', FIELD_TYPES.int)];
|
|
488
|
+
const NAME_UPDATE_TX = [...BASE_TX, TX_FIELD('accountId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES.int), TX_FIELD('nameId', FIELD_TYPES.id, 'nm'), TX_FIELD('nameTtl', FIELD_TYPES.int), TX_FIELD('pointers', FIELD_TYPES.pointers), TX_FIELD('clientTtl', FIELD_TYPES.int), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('ttl', FIELD_TYPES.int)];
|
|
489
|
+
const NAME_TRANSFER_TX = [...BASE_TX, TX_FIELD('accountId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES.int), TX_FIELD('nameId', FIELD_TYPES.id, 'nm'), TX_FIELD('recipientId', FIELD_TYPES.id, ['ak', 'nm']), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('ttl', FIELD_TYPES.int)];
|
|
490
|
+
const NAME_REVOKE_TX = [...BASE_TX, TX_FIELD('accountId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES.int), TX_FIELD('nameId', FIELD_TYPES.id, 'nm'), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('ttl', FIELD_TYPES.int)];
|
|
491
|
+
const CONTRACT_TX = [...BASE_TX, TX_FIELD('owner', FIELD_TYPES.id, 'ak'), TX_FIELD('ctVersion', FIELD_TYPES.int), TX_FIELD('code', FIELD_TYPES.binary, 'cb'), TX_FIELD('log', FIELD_TYPES.binary, 'cb'), TX_FIELD('active', FIELD_TYPES.bool), TX_FIELD('referers', FIELD_TYPES.ids, 'ak'), TX_FIELD('deposit', FIELD_TYPES.amount)];
|
|
492
|
+
const GA_ATTACH_TX = [...BASE_TX, TX_FIELD('ownerId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES.int), TX_FIELD('code', FIELD_TYPES.binary, 'cb'), TX_FIELD('authFun', FIELD_TYPES.rawBinary), TX_FIELD('ctVersion', FIELD_TYPES.ctVersion), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('ttl', FIELD_TYPES.int), TX_FIELD('gas', FIELD_TYPES.int), TX_FIELD('gasPrice', FIELD_TYPES.int), TX_FIELD('callData', FIELD_TYPES.binary, 'cb')];
|
|
493
|
+
const GA_META_TX_2 = [...BASE_TX, TX_FIELD('gaId', FIELD_TYPES.id, 'ak'), TX_FIELD('authData', FIELD_TYPES.binary, 'cb'), TX_FIELD('abiVersion', FIELD_TYPES.int), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('gas', FIELD_TYPES.int), TX_FIELD('gasPrice', FIELD_TYPES.int), TX_FIELD('tx', FIELD_TYPES.rlpBinary)];
|
|
494
|
+
const PAYING_FOR_TX = [...BASE_TX, TX_FIELD('payerId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES.int), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('tx', FIELD_TYPES.rlpBinary)];
|
|
495
|
+
const CONTRACT_CREATE_TX = [...BASE_TX, TX_FIELD('ownerId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES.int), TX_FIELD('code', FIELD_TYPES.binary, 'cb'), TX_FIELD('ctVersion', FIELD_TYPES.ctVersion), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('ttl', FIELD_TYPES.int), TX_FIELD('deposit', FIELD_TYPES.amount), TX_FIELD('amount', FIELD_TYPES.amount), TX_FIELD('gas', FIELD_TYPES.int), TX_FIELD('gasPrice', FIELD_TYPES.int), TX_FIELD('callData', FIELD_TYPES.binary, 'cb')];
|
|
496
|
+
const CONTRACT_CALL_TX = [...BASE_TX, TX_FIELD('callerId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES.int), TX_FIELD('contractId', FIELD_TYPES.id, ['ct', 'nm']), TX_FIELD('abiVersion', FIELD_TYPES.int), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('ttl', FIELD_TYPES.int), TX_FIELD('amount', FIELD_TYPES.amount), TX_FIELD('gas', FIELD_TYPES.int), TX_FIELD('gasPrice', FIELD_TYPES.int), TX_FIELD('callData', FIELD_TYPES.binary, 'cb')];
|
|
497
|
+
const CONTRACT_CALL_RESULT_TX = [...BASE_TX, TX_FIELD('callerId', FIELD_TYPES.id, 'ak'), TX_FIELD('callerNonce', FIELD_TYPES.int), TX_FIELD('height', FIELD_TYPES.int), TX_FIELD('contractId', FIELD_TYPES.id, 'ct'), TX_FIELD('gasPrice', FIELD_TYPES.int), TX_FIELD('gasUsed', FIELD_TYPES.int), TX_FIELD('returnValue', FIELD_TYPES.binary, 'cb'), TX_FIELD('returnType', FIELD_TYPES.callReturnType), // TODO: add serialization for
|
|
498
|
+
// <log> :: [ { <address> :: id, [ <topics> :: binary() ], <data> :: binary() } ]
|
|
499
|
+
TX_FIELD('log', FIELD_TYPES.rawBinary)];
|
|
500
|
+
const ORACLE_REGISTER_TX = [...BASE_TX, TX_FIELD('accountId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES.int), TX_FIELD('queryFormat', FIELD_TYPES.string), TX_FIELD('responseFormat', FIELD_TYPES.string), TX_FIELD('queryFee', FIELD_TYPES.amount), TX_FIELD('oracleTtlType', FIELD_TYPES.int), TX_FIELD('oracleTtlValue', FIELD_TYPES.int), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('ttl', FIELD_TYPES.int), TX_FIELD('abiVersion', FIELD_TYPES.int)];
|
|
501
|
+
const ORACLE_EXTEND_TX = [...BASE_TX, TX_FIELD('oracleId', FIELD_TYPES.id, ['ok', 'nm']), TX_FIELD('nonce', FIELD_TYPES.int), TX_FIELD('oracleTtlType', FIELD_TYPES.int), TX_FIELD('oracleTtlValue', FIELD_TYPES.int), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('ttl', FIELD_TYPES.int)];
|
|
502
|
+
const ORACLE_QUERY_TX = [...BASE_TX, TX_FIELD('senderId', FIELD_TYPES.id, 'ak'), TX_FIELD('nonce', FIELD_TYPES.int), TX_FIELD('oracleId', FIELD_TYPES.id, ['ok', 'nm']), TX_FIELD('query', FIELD_TYPES.string), TX_FIELD('queryFee', FIELD_TYPES.amount), TX_FIELD('queryTtlType', FIELD_TYPES.int), TX_FIELD('queryTtlValue', FIELD_TYPES.int), TX_FIELD('responseTtlType', FIELD_TYPES.int), TX_FIELD('responseTtlValue', FIELD_TYPES.int), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('ttl', FIELD_TYPES.int)];
|
|
503
|
+
const ORACLE_RESPOND_TX = [...BASE_TX, TX_FIELD('oracleId', FIELD_TYPES.id, 'ok'), TX_FIELD('nonce', FIELD_TYPES.int), TX_FIELD('queryId', FIELD_TYPES.binary, 'oq'), TX_FIELD('response', FIELD_TYPES.string), TX_FIELD('responseTtlType', FIELD_TYPES.int), TX_FIELD('responseTtlValue', FIELD_TYPES.int), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('ttl', FIELD_TYPES.int)];
|
|
504
|
+
const CHANNEL_CREATE_TX_2 = [...BASE_TX, TX_FIELD('initiator', FIELD_TYPES.id, 'ak'), TX_FIELD('initiatorAmount', FIELD_TYPES.int), TX_FIELD('responder', FIELD_TYPES.id, 'ak'), TX_FIELD('responderAmount', FIELD_TYPES.int), TX_FIELD('channelReserve', FIELD_TYPES.int), TX_FIELD('lockPeriod', FIELD_TYPES.int), TX_FIELD('ttl', FIELD_TYPES.int), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('initiatorDelegateIds', FIELD_TYPES.string), TX_FIELD('responderDelegateIds', FIELD_TYPES.string), TX_FIELD('stateHash', FIELD_TYPES.binary, 'st'), TX_FIELD('nonce', FIELD_TYPES.int)];
|
|
505
|
+
const CHANNEL_DEPOSIT_TX = [...BASE_TX, TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('fromId', FIELD_TYPES.id, 'ak'), TX_FIELD('amount', FIELD_TYPES.int), TX_FIELD('ttl', FIELD_TYPES.int), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('stateHash', FIELD_TYPES.binary, 'st'), TX_FIELD('round', FIELD_TYPES.int), TX_FIELD('nonce', FIELD_TYPES.int)];
|
|
506
|
+
const CHANNEL_WITHDRAW_TX = [...BASE_TX, TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('toId', FIELD_TYPES.id, 'ak'), TX_FIELD('amount', FIELD_TYPES.int), TX_FIELD('ttl', FIELD_TYPES.int), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('stateHash', FIELD_TYPES.binary, 'st'), TX_FIELD('round', FIELD_TYPES.int), TX_FIELD('nonce', FIELD_TYPES.int)];
|
|
507
|
+
const CHANNEL_CLOSE_MUTUAL_TX = [...BASE_TX, TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('fromId', FIELD_TYPES.id, 'ak'), TX_FIELD('initiatorAmountFinal', FIELD_TYPES.int), TX_FIELD('responderAmountFinal', FIELD_TYPES.int), TX_FIELD('ttl', FIELD_TYPES.int), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('nonce', FIELD_TYPES.int)];
|
|
508
|
+
const CHANNEL_CLOSE_SOLO_TX = [...BASE_TX, TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('fromId', FIELD_TYPES.id, 'ak'), TX_FIELD('payload', FIELD_TYPES.binary, 'tx'), TX_FIELD('poi', FIELD_TYPES.binary, 'pi'), TX_FIELD('ttl', FIELD_TYPES.int), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('nonce', FIELD_TYPES.int)];
|
|
509
|
+
const CHANNEL_SLASH_TX = [...BASE_TX, TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('fromId', FIELD_TYPES.id, 'ak'), TX_FIELD('payload', FIELD_TYPES.binary, 'tx'), TX_FIELD('poi', FIELD_TYPES.binary, 'pi'), TX_FIELD('ttl', FIELD_TYPES.int), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('nonce', FIELD_TYPES.int)];
|
|
510
|
+
const CHANNEL_SETTLE_TX = [...BASE_TX, TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('fromId', FIELD_TYPES.id, 'ak'), TX_FIELD('initiatorAmountFinal', FIELD_TYPES.int), TX_FIELD('responderAmountFinal', FIELD_TYPES.int), TX_FIELD('ttl', FIELD_TYPES.int), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('nonce', FIELD_TYPES.int)];
|
|
511
|
+
const CHANNEL_FORCE_PROGRESS_TX = [...BASE_TX, TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('fromId', FIELD_TYPES.id, 'ak'), TX_FIELD('payload', FIELD_TYPES.binary, 'tx'), TX_FIELD('round', FIELD_TYPES.int), TX_FIELD('update', FIELD_TYPES.binary), TX_FIELD('stateHash', FIELD_TYPES.binary), TX_FIELD('offChainTrees', FIELD_TYPES.stateTree), TX_FIELD('ttl', FIELD_TYPES.int), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('nonce', FIELD_TYPES.int)];
|
|
512
|
+
const CHANNEL_OFFCHAIN_TX_2 = [...BASE_TX, TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('round', FIELD_TYPES.int), TX_FIELD('stateHash', FIELD_TYPES.binary, 'st')];
|
|
513
|
+
const CHANNEL_TX_3 = [...BASE_TX, TX_FIELD('initiator', FIELD_TYPES.id, 'ak'), TX_FIELD('responder', FIELD_TYPES.id, 'ak'), TX_FIELD('channelAmount', FIELD_TYPES.int), TX_FIELD('initiatorAmount', FIELD_TYPES.int), TX_FIELD('responderAmount', FIELD_TYPES.int), TX_FIELD('channelReserve', FIELD_TYPES.int), TX_FIELD('initiatorDelegateIds', FIELD_TYPES.ids), TX_FIELD('responderDelegateIds', FIELD_TYPES.ids), TX_FIELD('stateHash', FIELD_TYPES.hex), TX_FIELD('round', FIELD_TYPES.int), TX_FIELD('soloRound', FIELD_TYPES.int), TX_FIELD('lockPeriod', FIELD_TYPES.int), TX_FIELD('lockedUntil', FIELD_TYPES.int), TX_FIELD('initiatorAuth', FIELD_TYPES.binary, 'cb'), TX_FIELD('responderAuth', FIELD_TYPES.binary, 'cb')];
|
|
514
|
+
const CHANNEL_SNAPSHOT_SOLO_TX = [...BASE_TX, TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('fromId', FIELD_TYPES.id, 'ak'), TX_FIELD('payload', FIELD_TYPES.binary, 'tx'), TX_FIELD('ttl', FIELD_TYPES.int), TX_FIELD('fee', FIELD_TYPES.int), TX_FIELD('nonce', FIELD_TYPES.int)];
|
|
515
|
+
const CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX = [...BASE_TX, TX_FIELD('owner', FIELD_TYPES.id, 'ak'), TX_FIELD('ctVersion', FIELD_TYPES.int), TX_FIELD('code', FIELD_TYPES.binary, 'cb'), TX_FIELD('deposit', FIELD_TYPES.int), TX_FIELD('callData', FIELD_TYPES.binary, 'cb')];
|
|
516
|
+
const CHANNEL_OFFCHAIN_CALL_CONTRACT_TX = [...BASE_TX, TX_FIELD('caller', FIELD_TYPES.id, 'ak'), TX_FIELD('contract', FIELD_TYPES.id, 'ct'), TX_FIELD('abiVersion', FIELD_TYPES.int), TX_FIELD('amount', FIELD_TYPES.int), TX_FIELD('callData', FIELD_TYPES.binary, 'cb'), TX_FIELD('callStack', FIELD_TYPES.callStack), TX_FIELD('gasPrice', FIELD_TYPES.int), TX_FIELD('gasLimit', FIELD_TYPES.int)];
|
|
517
|
+
const CHANNEL_RECONNECT_TX = [...BASE_TX, TX_FIELD('channelId', FIELD_TYPES.id, 'ch'), TX_FIELD('round', FIELD_TYPES.int), TX_FIELD('role', FIELD_TYPES.string), TX_FIELD('pubkey', FIELD_TYPES.id, 'ak')];
|
|
518
|
+
const CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX = [...BASE_TX, TX_FIELD('from', FIELD_TYPES.id, 'ak'), TX_FIELD('to', FIELD_TYPES.id, 'ak'), TX_FIELD('amount', FIELD_TYPES.int)];
|
|
519
|
+
const CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX = [...BASE_TX, TX_FIELD('from', FIELD_TYPES.id, 'ak'), TX_FIELD('amount', FIELD_TYPES.int)];
|
|
520
|
+
const CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX = [...BASE_TX, TX_FIELD('from', FIELD_TYPES.id, 'ak'), TX_FIELD('amount', FIELD_TYPES.int)];
|
|
521
|
+
const PROOF_OF_INCLUSION_TX = [...BASE_TX, TX_FIELD('accounts', FIELD_TYPES.mptrees), TX_FIELD('calls', FIELD_TYPES.mptrees), TX_FIELD('channels', FIELD_TYPES.mptrees), TX_FIELD('contracts', FIELD_TYPES.mptrees), TX_FIELD('ns', FIELD_TYPES.mptrees), TX_FIELD('oracles', FIELD_TYPES.mptrees)];
|
|
522
|
+
const STATE_TREES_TX = [...BASE_TX, TX_FIELD('contracts', FIELD_TYPES.rlpBinary), TX_FIELD('calls', FIELD_TYPES.rlpBinary), TX_FIELD('channels', FIELD_TYPES.rlpBinary), TX_FIELD('ns', FIELD_TYPES.rlpBinary), TX_FIELD('oracles', FIELD_TYPES.rlpBinary), TX_FIELD('accounts', FIELD_TYPES.rlpBinary)];
|
|
523
|
+
const MERKLE_PATRICIA_TREE_TX = [...BASE_TX, TX_FIELD('values', FIELD_TYPES.rlpBinaries)];
|
|
524
|
+
const MERKLE_PATRICIA_TREE_VALUE_TX = [...BASE_TX, TX_FIELD('key', FIELD_TYPES.hex), TX_FIELD('value', FIELD_TYPES.rawBinary)];
|
|
525
|
+
const CONTRACTS_TREE_TX = [...BASE_TX, TX_FIELD('contracts', FIELD_TYPES.rlpBinary)];
|
|
526
|
+
const CONTRACT_CALLS_TREE_TX = [...BASE_TX, TX_FIELD('calls', FIELD_TYPES.rlpBinary)];
|
|
527
|
+
const CHANNELS_TREE_TX = [...BASE_TX, TX_FIELD('channels', FIELD_TYPES.rlpBinary)];
|
|
528
|
+
const NAMESERVICE_TREE_TX = [...BASE_TX, TX_FIELD('mtree', FIELD_TYPES.rlpBinary)];
|
|
529
|
+
const ORACLES_TREE_TX = [...BASE_TX, TX_FIELD('otree', FIELD_TYPES.rlpBinary)];
|
|
530
|
+
const ACCOUNTS_TREE_TX = [...BASE_TX, TX_FIELD('accounts', FIELD_TYPES.rlpBinary)];
|
|
531
|
+
export const TX_SERIALIZATION_SCHEMA = {
|
|
532
|
+
[TX_TYPE.account]: {
|
|
533
|
+
2: TX_SCHEMA_FIELD(ACCOUNT_TX_2, OBJECT_TAG_ACCOUNT)
|
|
534
|
+
},
|
|
535
|
+
[TX_TYPE.signed]: {
|
|
536
|
+
1: TX_SCHEMA_FIELD(SIGNED_TX, OBJECT_TAG_SIGNED_TRANSACTION)
|
|
537
|
+
},
|
|
538
|
+
[TX_TYPE.spend]: {
|
|
539
|
+
1: TX_SCHEMA_FIELD(SPEND_TX, OBJECT_TAG_SPEND_TRANSACTION)
|
|
540
|
+
},
|
|
541
|
+
[TX_TYPE.namePreClaim]: {
|
|
542
|
+
1: TX_SCHEMA_FIELD(NAME_PRE_CLAIM_TX, OBJECT_TAG_NAME_SERVICE_PRECLAIM_TRANSACTION)
|
|
543
|
+
},
|
|
544
|
+
[TX_TYPE.nameClaim]: {
|
|
545
|
+
2: TX_SCHEMA_FIELD(NAME_CLAIM_TX_2, OBJECT_TAG_NAME_SERVICE_CLAIM_TRANSACTION)
|
|
546
|
+
},
|
|
547
|
+
[TX_TYPE.nameUpdate]: {
|
|
548
|
+
1: TX_SCHEMA_FIELD(NAME_UPDATE_TX, OBJECT_TAG_NAME_SERVICE_UPDATE_TRANSACTION)
|
|
549
|
+
},
|
|
550
|
+
[TX_TYPE.nameTransfer]: {
|
|
551
|
+
1: TX_SCHEMA_FIELD(NAME_TRANSFER_TX, OBJECT_TAG_NAME_SERVICE_TRANSFER_TRANSACTION)
|
|
552
|
+
},
|
|
553
|
+
[TX_TYPE.nameRevoke]: {
|
|
554
|
+
1: TX_SCHEMA_FIELD(NAME_REVOKE_TX, OBJECT_TAG_NAME_SERVICE_REVOKE_TRANSACTION)
|
|
555
|
+
},
|
|
556
|
+
[TX_TYPE.contract]: {
|
|
557
|
+
1: TX_SCHEMA_FIELD(CONTRACT_TX, OBJECT_TAG_CONTRACT)
|
|
558
|
+
},
|
|
559
|
+
[TX_TYPE.contractCreate]: {
|
|
560
|
+
1: TX_SCHEMA_FIELD(CONTRACT_CREATE_TX, OBJECT_TAG_CONTRACT_CREATE_TRANSACTION)
|
|
561
|
+
},
|
|
562
|
+
[TX_TYPE.contractCall]: {
|
|
563
|
+
1: TX_SCHEMA_FIELD(CONTRACT_CALL_TX, OBJECT_TAG_CONTRACT_CALL_TRANSACTION)
|
|
564
|
+
},
|
|
565
|
+
[TX_TYPE.contractCallResult]: {
|
|
566
|
+
1: TX_SCHEMA_FIELD(CONTRACT_CALL_RESULT_TX, OBJECT_TAG_CONTRACT_CALL)
|
|
567
|
+
},
|
|
568
|
+
[TX_TYPE.oracleRegister]: {
|
|
569
|
+
1: TX_SCHEMA_FIELD(ORACLE_REGISTER_TX, OBJECT_TAG_ORACLE_REGISTER_TRANSACTION)
|
|
570
|
+
},
|
|
571
|
+
[TX_TYPE.oracleExtend]: {
|
|
572
|
+
1: TX_SCHEMA_FIELD(ORACLE_EXTEND_TX, OBJECT_TAG_ORACLE_EXTEND_TRANSACTION)
|
|
573
|
+
},
|
|
574
|
+
[TX_TYPE.oracleQuery]: {
|
|
575
|
+
1: TX_SCHEMA_FIELD(ORACLE_QUERY_TX, OBJECT_TAG_ORACLE_QUERY_TRANSACTION)
|
|
576
|
+
},
|
|
577
|
+
[TX_TYPE.oracleResponse]: {
|
|
578
|
+
1: TX_SCHEMA_FIELD(ORACLE_RESPOND_TX, OBJECT_TAG_ORACLE_RESPONSE_TRANSACTION)
|
|
579
|
+
},
|
|
580
|
+
[TX_TYPE.channelCreate]: {
|
|
581
|
+
2: TX_SCHEMA_FIELD(CHANNEL_CREATE_TX_2, OBJECT_TAG_CHANNEL_CREATE_TX)
|
|
582
|
+
},
|
|
583
|
+
[TX_TYPE.channelCloseMutual]: {
|
|
584
|
+
1: TX_SCHEMA_FIELD(CHANNEL_CLOSE_MUTUAL_TX, OBJECT_TAG_CHANNEL_CLOSE_MUTUAL_TX)
|
|
585
|
+
},
|
|
586
|
+
[TX_TYPE.channelCloseSolo]: {
|
|
587
|
+
1: TX_SCHEMA_FIELD(CHANNEL_CLOSE_SOLO_TX, OBJECT_TAG_CHANNEL_CLOSE_SOLO_TX)
|
|
588
|
+
},
|
|
589
|
+
[TX_TYPE.channelSlash]: {
|
|
590
|
+
1: TX_SCHEMA_FIELD(CHANNEL_SLASH_TX, OBJECT_TAG_CHANNEL_SLASH_TX)
|
|
591
|
+
},
|
|
592
|
+
[TX_TYPE.channelDeposit]: {
|
|
593
|
+
1: TX_SCHEMA_FIELD(CHANNEL_DEPOSIT_TX, OBJECT_TAG_CHANNEL_DEPOSIT_TX)
|
|
594
|
+
},
|
|
595
|
+
[TX_TYPE.channelWithdraw]: {
|
|
596
|
+
1: TX_SCHEMA_FIELD(CHANNEL_WITHDRAW_TX, OBJECT_TAG_CHANNEL_WITHRAW_TX)
|
|
597
|
+
},
|
|
598
|
+
[TX_TYPE.channelSettle]: {
|
|
599
|
+
1: TX_SCHEMA_FIELD(CHANNEL_SETTLE_TX, OBJECT_TAG_CHANNEL_SETTLE_TX)
|
|
600
|
+
},
|
|
601
|
+
[TX_TYPE.channelForceProgress]: {
|
|
602
|
+
1: TX_SCHEMA_FIELD(CHANNEL_FORCE_PROGRESS_TX, OBJECT_TAG_CHANNEL_FORCE_PROGRESS_TX)
|
|
603
|
+
},
|
|
604
|
+
[TX_TYPE.channelOffChain]: {
|
|
605
|
+
2: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_TX_2, OBJECT_TAG_CHANNEL_OFFCHAIN_TX)
|
|
606
|
+
},
|
|
607
|
+
[TX_TYPE.channel]: {
|
|
608
|
+
3: TX_SCHEMA_FIELD(CHANNEL_TX_3, OBJECT_TAG_CHANNEL)
|
|
609
|
+
},
|
|
610
|
+
[TX_TYPE.channelSnapshotSolo]: {
|
|
611
|
+
1: TX_SCHEMA_FIELD(CHANNEL_SNAPSHOT_SOLO_TX, OBJECT_TAG_CHANNEL_SNAPSHOT_SOLO_TX)
|
|
612
|
+
},
|
|
613
|
+
[TX_TYPE.channelOffChainUpdateTransfer]: {
|
|
614
|
+
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX)
|
|
615
|
+
},
|
|
616
|
+
[TX_TYPE.channelOffChainUpdateDeposit]: {
|
|
617
|
+
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX)
|
|
618
|
+
},
|
|
619
|
+
[TX_TYPE.channelOffChainUpdateWithdrawal]: {
|
|
620
|
+
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX)
|
|
621
|
+
},
|
|
622
|
+
[TX_TYPE.channelOffChainCreateContract]: {
|
|
623
|
+
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX)
|
|
624
|
+
},
|
|
625
|
+
[TX_TYPE.channelOffChainCallContract]: {
|
|
626
|
+
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_CALL_CONTRACT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_CALL_CONTRACT_TX)
|
|
627
|
+
},
|
|
628
|
+
[TX_TYPE.channelReconnect]: {
|
|
629
|
+
1: TX_SCHEMA_FIELD(CHANNEL_RECONNECT_TX, OBJECT_TAG_CHANNEL_RECONNECT_TX)
|
|
630
|
+
},
|
|
631
|
+
[TX_TYPE.proofOfInclusion]: {
|
|
632
|
+
1: TX_SCHEMA_FIELD(PROOF_OF_INCLUSION_TX, OBJECT_TAG_PROOF_OF_INCLUSION)
|
|
633
|
+
},
|
|
634
|
+
[TX_TYPE.stateTrees]: {
|
|
635
|
+
1: TX_SCHEMA_FIELD(STATE_TREES_TX, OBJECT_TAG_STATE_TREES)
|
|
636
|
+
},
|
|
637
|
+
[TX_TYPE.merklePatriciaTree]: {
|
|
638
|
+
1: TX_SCHEMA_FIELD(MERKLE_PATRICIA_TREE_TX, OBJECT_TAG_MERKLE_PATRICIA_TREE)
|
|
639
|
+
},
|
|
640
|
+
[TX_TYPE.merklePatriciaTreeValue]: {
|
|
641
|
+
1: TX_SCHEMA_FIELD(MERKLE_PATRICIA_TREE_VALUE_TX, OBJECT_TAG_MERKLE_PATRICIA_TREE_VALUE)
|
|
642
|
+
},
|
|
643
|
+
[TX_TYPE.contractsTree]: {
|
|
644
|
+
1: TX_SCHEMA_FIELD(CONTRACTS_TREE_TX, OBJECT_TAG_CONTRACTS_TREE)
|
|
645
|
+
},
|
|
646
|
+
[TX_TYPE.contractCallsTree]: {
|
|
647
|
+
1: TX_SCHEMA_FIELD(CONTRACT_CALLS_TREE_TX, OBJECT_TAG_CONTRACT_CALLS_TREE)
|
|
648
|
+
},
|
|
649
|
+
[TX_TYPE.channelsTree]: {
|
|
650
|
+
1: TX_SCHEMA_FIELD(CHANNELS_TREE_TX, OBJECT_TAG_CHANNELS_TREE)
|
|
651
|
+
},
|
|
652
|
+
[TX_TYPE.nameserviceTree]: {
|
|
653
|
+
1: TX_SCHEMA_FIELD(NAMESERVICE_TREE_TX, OBJECT_TAG_NAMESERVICE_TREE)
|
|
654
|
+
},
|
|
655
|
+
[TX_TYPE.oraclesTree]: {
|
|
656
|
+
1: TX_SCHEMA_FIELD(ORACLES_TREE_TX, OBJECT_TAG_ORACLES_TREE)
|
|
657
|
+
},
|
|
658
|
+
[TX_TYPE.accountsTree]: {
|
|
659
|
+
1: TX_SCHEMA_FIELD(ACCOUNTS_TREE_TX, OBJECT_TAG_ACCOUNTS_TREE)
|
|
660
|
+
},
|
|
661
|
+
[TX_TYPE.gaAttach]: {
|
|
662
|
+
1: TX_SCHEMA_FIELD(GA_ATTACH_TX, OBJECT_TAG_GA_ATTACH)
|
|
663
|
+
},
|
|
664
|
+
[TX_TYPE.gaMeta]: {
|
|
665
|
+
2: TX_SCHEMA_FIELD(GA_META_TX_2, OBJECT_TAG_GA_META)
|
|
666
|
+
},
|
|
667
|
+
[TX_TYPE.payingFor]: {
|
|
668
|
+
1: TX_SCHEMA_FIELD(PAYING_FOR_TX, OBJECT_TAG_PAYING_FOR)
|
|
669
|
+
}
|
|
714
670
|
};
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
},
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
},
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
},
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
671
|
+
export const TX_DESERIALIZATION_SCHEMA = {
|
|
672
|
+
[OBJECT_TAG_ACCOUNT]: {
|
|
673
|
+
2: TX_SCHEMA_FIELD(ACCOUNT_TX_2, OBJECT_TAG_ACCOUNT)
|
|
674
|
+
},
|
|
675
|
+
[OBJECT_TAG_SIGNED_TRANSACTION]: {
|
|
676
|
+
1: TX_SCHEMA_FIELD(SIGNED_TX, OBJECT_TAG_SIGNED_TRANSACTION)
|
|
677
|
+
},
|
|
678
|
+
[OBJECT_TAG_SPEND_TRANSACTION]: {
|
|
679
|
+
1: TX_SCHEMA_FIELD(SPEND_TX, OBJECT_TAG_SPEND_TRANSACTION)
|
|
680
|
+
},
|
|
681
|
+
[OBJECT_TAG_NAME_SERVICE_PRECLAIM_TRANSACTION]: {
|
|
682
|
+
1: TX_SCHEMA_FIELD(NAME_PRE_CLAIM_TX, OBJECT_TAG_NAME_SERVICE_PRECLAIM_TRANSACTION)
|
|
683
|
+
},
|
|
684
|
+
[OBJECT_TAG_NAME_SERVICE_CLAIM_TRANSACTION]: {
|
|
685
|
+
2: TX_SCHEMA_FIELD(NAME_CLAIM_TX_2, OBJECT_TAG_NAME_SERVICE_CLAIM_TRANSACTION)
|
|
686
|
+
},
|
|
687
|
+
[OBJECT_TAG_NAME_SERVICE_UPDATE_TRANSACTION]: {
|
|
688
|
+
1: TX_SCHEMA_FIELD(NAME_UPDATE_TX, OBJECT_TAG_NAME_SERVICE_UPDATE_TRANSACTION)
|
|
689
|
+
},
|
|
690
|
+
[OBJECT_TAG_NAME_SERVICE_TRANSFER_TRANSACTION]: {
|
|
691
|
+
1: TX_SCHEMA_FIELD(NAME_TRANSFER_TX, OBJECT_TAG_NAME_SERVICE_TRANSFER_TRANSACTION)
|
|
692
|
+
},
|
|
693
|
+
[OBJECT_TAG_NAME_SERVICE_REVOKE_TRANSACTION]: {
|
|
694
|
+
1: TX_SCHEMA_FIELD(NAME_REVOKE_TX, OBJECT_TAG_NAME_SERVICE_REVOKE_TRANSACTION)
|
|
695
|
+
},
|
|
696
|
+
[OBJECT_TAG_CONTRACT]: {
|
|
697
|
+
1: TX_SCHEMA_FIELD(CONTRACT_TX, OBJECT_TAG_CONTRACT)
|
|
698
|
+
},
|
|
699
|
+
[OBJECT_TAG_CONTRACT_CREATE_TRANSACTION]: {
|
|
700
|
+
1: TX_SCHEMA_FIELD(CONTRACT_CREATE_TX, OBJECT_TAG_CONTRACT_CREATE_TRANSACTION)
|
|
701
|
+
},
|
|
702
|
+
[OBJECT_TAG_CONTRACT_CALL_TRANSACTION]: {
|
|
703
|
+
1: TX_SCHEMA_FIELD(CONTRACT_CALL_TX, OBJECT_TAG_CONTRACT_CALL_TRANSACTION)
|
|
704
|
+
},
|
|
705
|
+
[OBJECT_TAG_CONTRACT_CALL]: {
|
|
706
|
+
1: TX_SCHEMA_FIELD(CONTRACT_CALL_RESULT_TX, OBJECT_TAG_CONTRACT_CALL)
|
|
707
|
+
},
|
|
708
|
+
[OBJECT_TAG_ORACLE_REGISTER_TRANSACTION]: {
|
|
709
|
+
1: TX_SCHEMA_FIELD(ORACLE_REGISTER_TX, OBJECT_TAG_ORACLE_REGISTER_TRANSACTION)
|
|
710
|
+
},
|
|
711
|
+
[OBJECT_TAG_ORACLE_EXTEND_TRANSACTION]: {
|
|
712
|
+
1: TX_SCHEMA_FIELD(ORACLE_EXTEND_TX, OBJECT_TAG_ORACLE_EXTEND_TRANSACTION)
|
|
713
|
+
},
|
|
714
|
+
[OBJECT_TAG_ORACLE_QUERY_TRANSACTION]: {
|
|
715
|
+
1: TX_SCHEMA_FIELD(ORACLE_QUERY_TX, OBJECT_TAG_ORACLE_QUERY_TRANSACTION)
|
|
716
|
+
},
|
|
717
|
+
[OBJECT_TAG_ORACLE_RESPONSE_TRANSACTION]: {
|
|
718
|
+
1: TX_SCHEMA_FIELD(ORACLE_RESPOND_TX, OBJECT_TAG_ORACLE_RESPONSE_TRANSACTION)
|
|
719
|
+
},
|
|
720
|
+
[OBJECT_TAG_CHANNEL_CREATE_TX]: {
|
|
721
|
+
2: TX_SCHEMA_FIELD(CHANNEL_CREATE_TX_2, OBJECT_TAG_CHANNEL_CREATE_TX)
|
|
722
|
+
},
|
|
723
|
+
[OBJECT_TAG_CHANNEL_CLOSE_MUTUAL_TX]: {
|
|
724
|
+
1: TX_SCHEMA_FIELD(CHANNEL_CLOSE_MUTUAL_TX, OBJECT_TAG_CHANNEL_CLOSE_MUTUAL_TX)
|
|
725
|
+
},
|
|
726
|
+
[OBJECT_TAG_CHANNEL_CLOSE_SOLO_TX]: {
|
|
727
|
+
1: TX_SCHEMA_FIELD(CHANNEL_CLOSE_SOLO_TX, OBJECT_TAG_CHANNEL_CLOSE_SOLO_TX)
|
|
728
|
+
},
|
|
729
|
+
[OBJECT_TAG_CHANNEL_SLASH_TX]: {
|
|
730
|
+
1: TX_SCHEMA_FIELD(CHANNEL_SLASH_TX, OBJECT_TAG_CHANNEL_SLASH_TX)
|
|
731
|
+
},
|
|
732
|
+
[OBJECT_TAG_CHANNEL_DEPOSIT_TX]: {
|
|
733
|
+
1: TX_SCHEMA_FIELD(CHANNEL_DEPOSIT_TX, OBJECT_TAG_CHANNEL_DEPOSIT_TX)
|
|
734
|
+
},
|
|
735
|
+
[OBJECT_TAG_CHANNEL_WITHRAW_TX]: {
|
|
736
|
+
1: TX_SCHEMA_FIELD(CHANNEL_WITHDRAW_TX, OBJECT_TAG_CHANNEL_WITHRAW_TX)
|
|
737
|
+
},
|
|
738
|
+
[OBJECT_TAG_CHANNEL_SETTLE_TX]: {
|
|
739
|
+
1: TX_SCHEMA_FIELD(CHANNEL_SETTLE_TX, OBJECT_TAG_CHANNEL_SETTLE_TX)
|
|
740
|
+
},
|
|
741
|
+
[OBJECT_TAG_CHANNEL_OFFCHAIN_TX]: {
|
|
742
|
+
2: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_TX_2, OBJECT_TAG_CHANNEL_OFFCHAIN_TX)
|
|
743
|
+
},
|
|
744
|
+
[OBJECT_TAG_CHANNEL]: {
|
|
745
|
+
3: TX_SCHEMA_FIELD(CHANNEL_TX_3, OBJECT_TAG_CHANNEL)
|
|
746
|
+
},
|
|
747
|
+
[OBJECT_TAG_CHANNEL_SNAPSHOT_SOLO_TX]: {
|
|
748
|
+
1: TX_SCHEMA_FIELD(CHANNEL_SNAPSHOT_SOLO_TX, OBJECT_TAG_CHANNEL_SNAPSHOT_SOLO_TX)
|
|
749
|
+
},
|
|
750
|
+
[OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX]: {
|
|
751
|
+
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_TRANSFER_TX)
|
|
752
|
+
},
|
|
753
|
+
[OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX]: {
|
|
754
|
+
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_DEPOSIT_TX)
|
|
755
|
+
},
|
|
756
|
+
[OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX]: {
|
|
757
|
+
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_UPDATE_WITHDRAWAL_TX)
|
|
758
|
+
},
|
|
759
|
+
[OBJECT_TAG_CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX]: {
|
|
760
|
+
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_CREATE_CONTRACT_TX)
|
|
761
|
+
},
|
|
762
|
+
[OBJECT_TAG_CHANNEL_OFFCHAIN_CALL_CONTRACT_TX]: {
|
|
763
|
+
1: TX_SCHEMA_FIELD(CHANNEL_OFFCHAIN_CALL_CONTRACT_TX, OBJECT_TAG_CHANNEL_OFFCHAIN_CALL_CONTRACT_TX)
|
|
764
|
+
},
|
|
765
|
+
[OBJECT_TAG_CHANNEL_RECONNECT_TX]: {
|
|
766
|
+
1: TX_SCHEMA_FIELD(CHANNEL_RECONNECT_TX, OBJECT_TAG_CHANNEL_RECONNECT_TX)
|
|
767
|
+
},
|
|
768
|
+
[OBJECT_TAG_PROOF_OF_INCLUSION]: {
|
|
769
|
+
1: TX_SCHEMA_FIELD(PROOF_OF_INCLUSION_TX, OBJECT_TAG_PROOF_OF_INCLUSION)
|
|
770
|
+
},
|
|
771
|
+
[OBJECT_TAG_STATE_TREES]: {
|
|
772
|
+
1: TX_SCHEMA_FIELD(STATE_TREES_TX, OBJECT_TAG_STATE_TREES)
|
|
773
|
+
},
|
|
774
|
+
[OBJECT_TAG_MERKLE_PATRICIA_TREE]: {
|
|
775
|
+
1: TX_SCHEMA_FIELD(MERKLE_PATRICIA_TREE_TX, OBJECT_TAG_MERKLE_PATRICIA_TREE)
|
|
776
|
+
},
|
|
777
|
+
[OBJECT_TAG_MERKLE_PATRICIA_TREE_VALUE]: {
|
|
778
|
+
1: TX_SCHEMA_FIELD(MERKLE_PATRICIA_TREE_VALUE_TX, OBJECT_TAG_MERKLE_PATRICIA_TREE_VALUE)
|
|
779
|
+
},
|
|
780
|
+
[OBJECT_TAG_CONTRACTS_TREE]: {
|
|
781
|
+
1: TX_SCHEMA_FIELD(CONTRACTS_TREE_TX, OBJECT_TAG_CONTRACTS_TREE)
|
|
782
|
+
},
|
|
783
|
+
[OBJECT_TAG_CONTRACT_CALLS_TREE]: {
|
|
784
|
+
1: TX_SCHEMA_FIELD(CONTRACT_CALLS_TREE_TX, OBJECT_TAG_CONTRACT_CALLS_TREE)
|
|
785
|
+
},
|
|
786
|
+
[OBJECT_TAG_CHANNELS_TREE]: {
|
|
787
|
+
1: TX_SCHEMA_FIELD(CHANNELS_TREE_TX, OBJECT_TAG_CHANNELS_TREE)
|
|
788
|
+
},
|
|
789
|
+
[OBJECT_TAG_NAMESERVICE_TREE]: {
|
|
790
|
+
1: TX_SCHEMA_FIELD(NAMESERVICE_TREE_TX, OBJECT_TAG_NAMESERVICE_TREE)
|
|
791
|
+
},
|
|
792
|
+
[OBJECT_TAG_ORACLES_TREE]: {
|
|
793
|
+
1: TX_SCHEMA_FIELD(ORACLES_TREE_TX, OBJECT_TAG_ORACLES_TREE)
|
|
794
|
+
},
|
|
795
|
+
[OBJECT_TAG_ACCOUNTS_TREE]: {
|
|
796
|
+
1: TX_SCHEMA_FIELD(ACCOUNTS_TREE_TX, OBJECT_TAG_ACCOUNTS_TREE)
|
|
797
|
+
},
|
|
798
|
+
[OBJECT_TAG_GA_ATTACH]: {
|
|
799
|
+
1: TX_SCHEMA_FIELD(GA_ATTACH_TX, OBJECT_TAG_GA_ATTACH)
|
|
800
|
+
},
|
|
801
|
+
[OBJECT_TAG_GA_META]: {
|
|
802
|
+
2: TX_SCHEMA_FIELD(GA_META_TX_2, OBJECT_TAG_GA_META)
|
|
803
|
+
},
|
|
804
|
+
[OBJECT_TAG_PAYING_FOR]: {
|
|
805
|
+
1: TX_SCHEMA_FIELD(PAYING_FOR_TX, OBJECT_TAG_PAYING_FOR)
|
|
806
|
+
},
|
|
807
|
+
[OBJECT_TAG_CHANNEL_FORCE_PROGRESS_TX]: {
|
|
808
|
+
1: TX_SCHEMA_FIELD(CHANNEL_FORCE_PROGRESS_TX, OBJECT_TAG_CHANNEL_FORCE_PROGRESS_TX)
|
|
809
|
+
},
|
|
810
|
+
[OBJECT_TAG_SOPHIA_BYTE_CODE]: {
|
|
811
|
+
3: TX_SCHEMA_FIELD(CONTRACT_BYTE_CODE_LIMA, OBJECT_TAG_SOPHIA_BYTE_CODE)
|
|
765
812
|
}
|
|
766
813
|
};
|
|
767
|
-
export var SIGNATURE_VERIFICATION_SCHEMA = [VERIFICATION_FIELD(function () {
|
|
768
|
-
return 'The signature cannot be verified, please verify that you used the correct network id and the correct private key for the sender address';
|
|
769
|
-
}, VALIDATORS.signature, ERRORS.invalidSignature)];
|
|
770
|
-
export var CONTRACT_VERIFICATION_SCHEMA = [VERIFICATION_FIELD(function (_ref11) {
|
|
771
|
-
var ctVersion = _ref11.ctVersion,
|
|
772
|
-
consensusProtocolVersion = _ref11.consensusProtocolVersion,
|
|
773
|
-
txType = _ref11.txType;
|
|
774
|
-
return "Wrong abi/vm version, Supported is: ".concat(PROTOCOL_VM_ABI[consensusProtocolVersion] ? _JSON$stringify(PROTOCOL_VM_ABI[consensusProtocolVersion][txType]) : ' None for this protocol ' + consensusProtocolVersion);
|
|
775
|
-
}, VALIDATORS.vmAndAbiVersion, ERRORS.vmAndAbiVersion), VERIFICATION_FIELD(function () {
|
|
776
|
-
return "The gasPrice must be bigger then ".concat(MIN_GAS_PRICE);
|
|
777
|
-
}, VALIDATORS.minGasPrice, ERRORS.minGasPrice)];
|
|
778
|
-
export var NAME_CLAIM_VERIFICATION_SCHEMA = [VERIFICATION_FIELD(function (_ref12) {
|
|
779
|
-
var balance = _ref12.balance;
|
|
780
|
-
return "The account balance ".concat(balance, " is not enough to execute the transaction");
|
|
781
|
-
}, VALIDATORS.insufficientBalanceForFeeNameFee, ERRORS.insufficientBalanceForFeeNameFee)];
|
|
782
|
-
export var BASE_VERIFICATION_SCHEMA = [VERIFICATION_FIELD(function (_ref13) {
|
|
783
|
-
var minFee = _ref13.minFee;
|
|
784
|
-
return "The fee for the transaction is too low, the minimum fee for this transaction is ".concat(minFee);
|
|
785
|
-
}, VALIDATORS.insufficientFee, ERRORS.insufficientFee), VERIFICATION_FIELD(function (_ref14) {
|
|
786
|
-
var height = _ref14.height;
|
|
787
|
-
return "The TTL is already expired, the current height is ".concat(height);
|
|
788
|
-
}, VALIDATORS.expiredTTL, ERRORS.expiredTTL), VERIFICATION_FIELD(function (_ref15) {
|
|
789
|
-
var balance = _ref15.balance;
|
|
790
|
-
return "The account balance ".concat(balance, " is not enough to execute the transaction");
|
|
791
|
-
}, VALIDATORS.insufficientBalanceForAmountFee, ERRORS.insufficientBalanceForAmountFee), VERIFICATION_FIELD(function (_ref16) {
|
|
792
|
-
var balance = _ref16.balance;
|
|
793
|
-
return "The account balance ".concat(balance, " is not enough to execute the transaction");
|
|
794
|
-
}, VALIDATORS.insufficientBalanceForAmount, ERRORS.insufficientBalanceForAmount), VERIFICATION_FIELD(function (_ref17) {
|
|
795
|
-
var accountNonce = _ref17.accountNonce;
|
|
796
|
-
return "The nonce is invalid (already used). Next valid nonce is ".concat(accountNonce + 1, ")");
|
|
797
|
-
}, VALIDATORS.nonceUsed, ERRORS.nonceUsed), VERIFICATION_FIELD(function (_ref18) {
|
|
798
|
-
var accountNonce = _ref18.accountNonce;
|
|
799
|
-
return "The nonce is technically valid but will not be processed immediately by the node (next valid nonce is ".concat(accountNonce + 1, ")");
|
|
800
|
-
}, VALIDATORS.nonceHigh, ERRORS.nonceHigh)];
|
|
801
814
|
//# sourceMappingURL=schema.js.map
|