mirror of
https://github.com/XRPLF/rippled.git
synced 2025-12-06 17:27:55 +00:00
91 lines
3.4 KiB
JavaScript
91 lines
3.4 KiB
JavaScript
var ST = require("./serializedtypes");
|
|
|
|
var REQUIRED = exports.REQUIRED = 0,
|
|
OPTIONAL = exports.OPTIONAL = 1,
|
|
DEFAULT = exports.DEFAULT = 2;
|
|
|
|
ST.Int16.id = 1;
|
|
ST.Int32.id = 2;
|
|
ST.Int64.id = 3;
|
|
ST.Hash128.id = 4;
|
|
ST.Hash256.id = 5;
|
|
ST.Amount.id = 6;
|
|
ST.VariableLength.id = 7;
|
|
ST.Account.id = 8;
|
|
ST.Object.id = 14;
|
|
ST.Array.id = 15;
|
|
ST.Int8.id = 16;
|
|
ST.Hash160.id = 17;
|
|
ST.PathSet.id = 18;
|
|
ST.Vector256.id = 19;
|
|
|
|
var base = [
|
|
[ 'TransactionType' , REQUIRED, 2, ST.Int16 ],
|
|
[ 'Flags' , OPTIONAL, 2, ST.Int32 ],
|
|
[ 'SourceTag' , OPTIONAL, 3, ST.Int32 ],
|
|
[ 'Account' , REQUIRED, 1, ST.Account ],
|
|
[ 'Sequence' , REQUIRED, 4, ST.Int32 ],
|
|
[ 'Fee' , REQUIRED, 8, ST.Amount ],
|
|
[ 'OperationLimit' , OPTIONAL, 29, ST.Int32 ],
|
|
[ 'SigningPubKey' , REQUIRED, 3, ST.VariableLength ],
|
|
[ 'TxnSignature' , OPTIONAL, 4, ST.VariableLength ]
|
|
];
|
|
|
|
exports.tx = {
|
|
AccountSet: [3].concat(base, [
|
|
[ 'EmailHash' , OPTIONAL, 1, ST.Hash128 ],
|
|
[ 'WalletLocator' , OPTIONAL, 7, ST.Hash256 ],
|
|
[ 'WalletSize' , OPTIONAL, 12, ST.Int32 ],
|
|
[ 'MessageKey' , OPTIONAL, 2, ST.VariableLength ],
|
|
[ 'Domain' , OPTIONAL, 7, ST.VariableLength ],
|
|
[ 'TransferRate' , OPTIONAL, 11, ST.Int32 ]
|
|
]),
|
|
TrustSet: [20].concat(base, [
|
|
[ 'LimitAmount' , OPTIONAL, 3, ST.Amount ],
|
|
[ 'QualityIn' , OPTIONAL, 20, ST.Int32 ],
|
|
[ 'QualityOut' , OPTIONAL, 21, ST.Int32 ]
|
|
]),
|
|
OfferCreate: [7].concat(base, [
|
|
[ 'TakerPays' , REQUIRED, 4, ST.Amount ],
|
|
[ 'TakerGets' , REQUIRED, 5, ST.Amount ],
|
|
[ 'Expiration' , OPTIONAL, 10, ST.Int32 ]
|
|
]),
|
|
OfferCancel: [8].concat(base, [
|
|
[ 'OfferSequence' , REQUIRED, 25, ST.Int32 ]
|
|
]),
|
|
SetRegularKey: [5].concat(base, [
|
|
[ 'RegularKey' , REQUIRED, 8, ST.Account ]
|
|
]),
|
|
Payment: [0].concat(base, [
|
|
[ 'Destination' , REQUIRED, 3, ST.Account ],
|
|
[ 'Amount' , REQUIRED, 1, ST.Amount ],
|
|
[ 'SendMax' , OPTIONAL, 9, ST.Amount ],
|
|
[ 'Paths' , DEFAULT , 1, ST.PathSet ],
|
|
[ 'InvoiceID' , OPTIONAL, 17, ST.Hash256 ],
|
|
[ 'DestinationTag' , OPTIONAL, 14, ST.Int32 ]
|
|
]),
|
|
Contract: [9].concat(base, [
|
|
[ 'Expiration' , REQUIRED, 10, ST.Int32 ],
|
|
[ 'BondAmount' , REQUIRED, 23, ST.Int32 ],
|
|
[ 'StampEscrow' , REQUIRED, 22, ST.Int32 ],
|
|
[ 'RippleEscrow' , REQUIRED, 17, ST.Amount ],
|
|
[ 'CreateCode' , OPTIONAL, 11, ST.VariableLength ],
|
|
[ 'FundCode' , OPTIONAL, 8, ST.VariableLength ],
|
|
[ 'RemoveCode' , OPTIONAL, 9, ST.VariableLength ],
|
|
[ 'ExpireCode' , OPTIONAL, 10, ST.VariableLength ]
|
|
]),
|
|
RemoveContract: [10].concat(base, [
|
|
[ 'Target' , REQUIRED, 7, ST.Account ]
|
|
]),
|
|
EnableFeature: [100].concat(base, [
|
|
[ 'Feature' , REQUIRED, 19, ST.Hash256 ]
|
|
]),
|
|
SetFee: [101].concat(base, [
|
|
[ 'Features' , REQUIRED, 9, ST.Array ],
|
|
[ 'BaseFee' , REQUIRED, 5, ST.Int64 ],
|
|
[ 'ReferenceFeeUnits' , REQUIRED, 30, ST.Int32 ],
|
|
[ 'ReserveBase' , REQUIRED, 31, ST.Int32 ],
|
|
[ 'ReserveIncrement' , REQUIRED, 32, ST.Int32 ]
|
|
])
|
|
};
|