Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | 38x 38x 38x 30x 30x 30x 28x 27x 26x 26x 26x 28x | import { Cardano, Serialization } from '@cardano-sdk/core'; import { HexBlob } from '@cardano-sdk/util'; import { TxMetadataModel } from './types'; export const mapTxMetadata = (metadataModel: Pick<TxMetadataModel, 'bytes' | 'key'>[]): Cardano.TxMetadata => metadataModel.reduce((map, metadatum) => { const { bytes, key } = metadatum; if (bytes && key) { const biKey = BigInt(key); const metadata = Serialization.GeneralTransactionMetadata.fromCbor(HexBlob.fromBytes(bytes)).toCore(); if (metadata) { const datum = metadata.get(biKey); if (datum) map.set(biKey, datum); } } return map; }, new Map<bigint, Cardano.Metadatum>()); |