UNPKG

618 BJavaScriptView Raw
1'use strict';
2
3var fromParse5 = require('hast-util-from-parse5');
4var Parser5 = require('parse5/lib/parser');
5var xtend = require('xtend');
6
7module.exports = parse;
8
9function parse(options) {
10 var settings = xtend(options, this.data('settings'));
11 var position = typeof settings.position === 'boolean' ? settings.position : true;
12 var parse5 = new Parser5({locationInfo: position});
13
14 this.Parser = parser;
15
16 function parser(doc, file) {
17 var fn = settings.fragment ? 'parseFragment' : 'parse';
18
19 return fromParse5(parse5[fn](String(file)), {
20 file: file,
21 verbose: settings.verbose
22 });
23 }
24}