UNPKG

@radixdlt/tx-parser

Version:
30 lines 1.8 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ValidatorAllowDelegationFlag = exports.boolToBuf = exports.boolFromBufferReader = void 0; const _types_1 = require("./_types"); const neverthrow_1 = require("neverthrow"); const preparedStake_1 = require("./preparedStake"); const boolFromBufferReader = (bufferReader) => bufferReader .readNextBuffer(1) .map(b => b.readUInt8(0)) .andThen(i => i === 1 ? (0, neverthrow_1.ok)(true) : i === 0 ? (0, neverthrow_1.ok)(false) : (0, neverthrow_1.err)(new Error('Expected bool.'))); exports.boolFromBufferReader = boolFromBufferReader; const boolToBuf = (bool) => Buffer.from([bool ? 1 : 0]); exports.boolToBuf = boolToBuf; const makeValidatorAllowDelegationFlagFromBuffer = (bufferReader, lengthData) => (0, preparedStake_1.makeBaseValidatorSubstateFromBuffer)(_types_1.SubStateType.VALIDATOR_ALLOW_DELEGATION_FLAG)(bufferReader).andThen((base) => (0, exports.boolFromBufferReader)(bufferReader).map((isDelegationAllowed) => { const reserved = base.reserved; const validator = base.validator; return Object.assign(Object.assign({}, base), { isDelegationAllowed, toBuffer: () => Buffer.concat([ lengthData, base.toBuffer(), (0, exports.boolToBuf)(isDelegationAllowed), ]), toString: () => `${(0, _types_1.stringifySubstateType)(_types_1.SubStateType.VALIDATOR_ALLOW_DELEGATION_FLAG)} { reserved: ${reserved}, validator: 0x${validator.toString()}, is_delegation_allowed: ${isDelegationAllowed} }` }); })); exports.ValidatorAllowDelegationFlag = { fromBufferReader: (bufferReader, lengthData) => makeValidatorAllowDelegationFlagFromBuffer(bufferReader, lengthData), }; //# sourceMappingURL=validatorAllowDelegationFlag.js.map