UNPKG

@radixdlt/tx-parser

Version:
41 lines 1.27 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.TxSignature = void 0; const neverthrow_1 = require("neverthrow"); const uint256_1 = require("@radixdlt/uint256"); const tokens_1 = require("./tokens"); const fromBufferReader = (bufferReader) => (0, neverthrow_1.combine)([ bufferReader.readNextBuffer(1), bufferReader.readNextBuffer(32), bufferReader.readNextBuffer(32), ]) .map(resList => { const v = resList[0].readUInt8(0); const uint256FromBuffer = (b) => { const hex = b.toString('hex'); return new uint256_1.UInt256(hex, 16); }; const r = uint256FromBuffer(resList[1]); const s = uint256FromBuffer(resList[2]); return { v, r, s, }; }) .map(partial => { const buffer = Buffer.concat([ Buffer.from([partial.v]), (0, tokens_1.amountToBuffer)(partial.r), (0, tokens_1.amountToBuffer)(partial.s), ]); return Object.assign(Object.assign({}, partial), { toBuffer: () => buffer, toString: () => `Signature: { v: ${partial.v}, r: ${partial.r.toString(16)}, s: ${partial.s.toString(16)} }` }); }); exports.TxSignature = { fromBufferReader, }; //# sourceMappingURL=txSignature.js.map