html-dom-parser
Version:
HTML to DOM parser.
1 lines • 1.31 kB
Source Map (JSON)
{"version":3,"file":"html-to-dom.mjs","names":[],"sources":["../../src/server/html-to-dom.ts"],"sourcesContent":["import { DomHandler } from 'domhandler';\nimport { Parser } from 'htmlparser2';\n\nimport type { HTMLDOMParserOptions } from '../types';\nimport { unsetRootParent } from './utilities';\n\n/**\n * Parses HTML string to DOM nodes in Node.js.\n *\n * This is the same method as `require('htmlparser2').parseDOM`\n *\n * @see https://github.com/fb55/htmlparser2/blob/v9.0.0/src/index.ts#L44-L46\n * @see https://github.com/fb55/domhandler/tree/v5.0.3#readme\n *\n * @param html - HTML markup.\n * @param options - Parser options.\n * @returns - DOM nodes.\n */\nexport default function HTMLDOMParser(\n html: string,\n options?: HTMLDOMParserOptions,\n) {\n if (typeof html !== 'string') {\n throw new TypeError('First argument must be a string.');\n }\n\n if (!html) {\n return [];\n }\n\n const handler = new DomHandler(undefined, options);\n new Parser(handler, options).end(html);\n return unsetRootParent(handler.dom);\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAkBA,SAAwB,cACtB,MACA,SACA;CACA,IAAI,OAAO,SAAS,UAClB,MAAM,IAAI,UAAU,kCAAkC;CAGxD,IAAI,CAAC,MACH,OAAO,CAAC;CAGV,MAAM,UAAU,IAAI,WAAW,KAAA,GAAW,OAAO;CACjD,IAAI,OAAO,SAAS,OAAO,EAAE,IAAI,IAAI;CACrC,OAAO,gBAAgB,QAAQ,GAAG;AACpC"}