123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- var Parser = require("./Parser.js");
- var DomHandler = require("domhandler");
-
- function defineProp(name, value) {
- delete module.exports[name];
- module.exports[name] = value;
- return value;
- }
-
- module.exports = {
- Parser: Parser,
- Tokenizer: require("./Tokenizer.js"),
- ElementType: require("domelementtype"),
- DomHandler: DomHandler,
- get FeedHandler() {
- return defineProp("FeedHandler", require("./FeedHandler.js"));
- },
- get Stream() {
- return defineProp("Stream", require("./Stream.js"));
- },
- get WritableStream() {
- return defineProp("WritableStream", require("./WritableStream.js"));
- },
- get ProxyHandler() {
- return defineProp("ProxyHandler", require("./ProxyHandler.js"));
- },
- get DomUtils() {
- return defineProp("DomUtils", require("domutils"));
- },
- get CollectingHandler() {
- return defineProp(
- "CollectingHandler",
- require("./CollectingHandler.js")
- );
- },
- // For legacy support
- DefaultHandler: DomHandler,
- get RssHandler() {
- return defineProp("RssHandler", this.FeedHandler);
- },
- //helper methods
- parseDOM: function(data, options) {
- var handler = new DomHandler(options);
- new Parser(handler, options).end(data);
- return handler.dom;
- },
- parseFeed: function(feed, options) {
- var handler = new module.exports.FeedHandler(options);
- new Parser(handler, options).end(feed);
- return handler.dom;
- },
- createDomStream: function(cb, options, elementCb) {
- var handler = new DomHandler(cb, options, elementCb);
- return new Parser(handler, options);
- },
- // List of all events that the parser emits
- EVENTS: {
- /* Format: eventname: number of arguments */
- attribute: 2,
- cdatastart: 0,
- cdataend: 0,
- text: 1,
- processinginstruction: 2,
- comment: 1,
- commentend: 0,
- closetag: 1,
- opentag: 2,
- opentagname: 1,
- error: 1,
- end: 0
- }
- };
|