UNPKG

libxslt-wasm

Version:

JavaScript bindings for libxslt compiled to WebAssembly

36 lines (35 loc) 1.57 kB
import { xmlParserOption } from "../internal/libxml2.js"; const xmlOptionsMap = { recover: xmlParserOption.RECOVER.value, noEnt: xmlParserOption.NOENT.value, dtdLoad: xmlParserOption.DTDLOAD.value, dtdAttr: xmlParserOption.DTDATTR.value, dtdValid: xmlParserOption.DTDVALID.value, noError: xmlParserOption.NOERROR.value, noWarning: xmlParserOption.NOWARNING.value, pedantic: xmlParserOption.PEDANTIC.value, noBlanks: xmlParserOption.NOBLANKS.value, sax1: xmlParserOption.SAX1.value, xInclude: xmlParserOption.XINCLUDE.value, noNet: xmlParserOption.NONET.value, noDict: xmlParserOption.NODICT.value, nsClean: xmlParserOption.NSCLEAN.value, noCData: xmlParserOption.NOCDATA.value, noXIncNode: xmlParserOption.NOXINCNODE.value, compact: xmlParserOption.COMPACT.value, old10: xmlParserOption.OLD10.value, noBaseFix: xmlParserOption.NOBASEFIX.value, huge: xmlParserOption.HUGE.value, oldSax: xmlParserOption.OLDSAX.value, ignoreEnc: xmlParserOption.IGNORE_ENC.value, bigLines: xmlParserOption.BIG_LINES.value, noXxe: xmlParserOption.NO_XXE.value, unzip: xmlParserOption.UNZIP.value, noSysCatalog: xmlParserOption.NO_SYS_CATALOG.value, catalogPi: xmlParserOption.CATALOG_PI.value, }; const isXmlOption = (key) => key in xmlOptionsMap; const parseXmlOptions = (xmlOptions) => { return Object.entries(xmlOptions).reduce((acc, [key, value]) => value && isXmlOption(key) ? acc | xmlOptionsMap[key] : acc, 0); }; export { xmlOptionsMap, isXmlOption, parseXmlOptions };