diff options
Diffstat (limited to 'node_modules/cheerio/lib/load.js')
-rw-r--r-- | node_modules/cheerio/lib/load.js | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/node_modules/cheerio/lib/load.js b/node_modules/cheerio/lib/load.js new file mode 100644 index 0000000..2603cea --- /dev/null +++ b/node_modules/cheerio/lib/load.js @@ -0,0 +1,53 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.load = void 0; +var tslib_1 = require("tslib"); +var options_1 = tslib_1.__importStar(require("./options")); +var staticMethods = tslib_1.__importStar(require("./static")); +var cheerio_1 = require("./cheerio"); +var parse_1 = tslib_1.__importDefault(require("./parse")); +/** + * Create a querying function, bound to a document created from the provided + * markup. Note that similar to web browser contexts, this operation may + * introduce `<html>`, `<head>`, and `<body>` elements; set `isDocument` to + * `false` to switch to fragment mode and disable this. + * + * @param content - Markup to be loaded. + * @param options - Options for the created instance. + * @param isDocument - Allows parser to be switched to fragment mode. + * @returns The loaded document. + * @see {@link https://cheerio.js.org#loading} for additional usage information. + */ +function load(content, options, isDocument) { + if (isDocument === void 0) { isDocument = true; } + if (content == null) { + throw new Error('cheerio.load() expects a string'); + } + var internalOpts = tslib_1.__assign(tslib_1.__assign({}, options_1.default), options_1.flatten(options)); + var root = parse_1.default(content, internalOpts, isDocument); + /** Create an extended class here, so that extensions only live on one instance. */ + var LoadedCheerio = /** @class */ (function (_super) { + tslib_1.__extends(LoadedCheerio, _super); + function LoadedCheerio() { + return _super !== null && _super.apply(this, arguments) || this; + } + return LoadedCheerio; + }(cheerio_1.Cheerio)); + function initialize(selector, context, r, opts) { + if (r === void 0) { r = root; } + return new LoadedCheerio(selector, context, r, tslib_1.__assign(tslib_1.__assign({}, internalOpts), options_1.flatten(opts))); + } + // Add in static methods & properties + Object.assign(initialize, staticMethods, { + load: load, + // `_root` and `_options` are used in static methods. + _root: root, + _options: internalOpts, + // Add `fn` for plugins + fn: LoadedCheerio.prototype, + // Add the prototype here to maintain `instanceof` behavior. + prototype: LoadedCheerio.prototype, + }); + return initialize; +} +exports.load = load; |