UNPKG

@li0ard/tsemrtd

Version:

simple library for eMRTD. supports browsers, node, bun and more!

22 lines (21 loc) 708 B
import { TLV } from "@li0ard/tinytlv"; import { Enums, Interfaces, Utils } from "./index"; /** * Class for working with COM (Manifest) */ export class COM { /** * Get LDS and Unicode versions and data groups tags * @param data Data of EF.COM file */ static load(data) { let tlv = TLV.parse(data); if (parseInt(tlv.tag, 16) != Enums.TAGS.COM) throw new Error(`Invalid COM tag "0x${tlv.tag}", expected 0x${Enums.TAGS.COM.toString(16)}`); return { ldsVersion: Utils.bytesToAscii(tlv.childs[0].byteValue), unicodeVersion: Utils.bytesToAscii(tlv.childs[1].byteValue), tags: tlv.childs[2].byteValue }; } }