UNPKG

asn1-ts

Version:

ASN.1 encoding and decoding, including BER, CER, and DER.

14 lines (13 loc) 647 B
import isPrintableCharacter from "../../../validators/isPrintableCharacter.mjs"; import convertBytesToText from "../../../utils/convertBytesToText.mjs"; import { ASN1CharactersError } from "../../../errors.mjs"; import { printableStringCharacters } from "../../../values.mjs"; export default function decodePrintableString(value) { for (const char of value) { if (!isPrintableCharacter(char)) { throw new ASN1CharactersError(`PrintableString can only contain these characters: ${printableStringCharacters}. ` + `Encountered character code ${char}.`); } } return convertBytesToText(value); }