UNPKG

@aeternity/aepp-calldata

Version:
44 lines (33 loc) 840 B
const int2ByteArray = (value) => { const bigInt = BigInt(value) if (bigInt < 256n) { return new Uint8Array([Number(bigInt)]) } return new Uint8Array([ ...int2ByteArray(bigInt >> 8n), Number(bigInt & 0xffn) ]) } const byteArrayToHexArray = (data) => { return [...data].map(x => x.toString(16).padStart(2, '0')) } const byteArray2Int = (data) => { if (data.length === 0) { return 0n } const hex = byteArrayToHexArray(data) return BigInt('0x' + hex.join('')) } const byteArray2IntBE = (data) => { const hex = byteArrayToHexArray(data).reverse() return BigInt('0x' + hex.join('')) } const byteArray2Hex = (data) => { return byteArrayToHexArray(data).join('') } export { int2ByteArray, byteArray2Int, byteArray2IntBE, byteArray2Hex, }