mirror of
https://github.com/idanoo/GoScrobble
synced 2025-07-01 21:52:19 +00:00
0.2.0 - Mid migration
This commit is contained in:
parent
139e6a915e
commit
7e38fdbd7d
42393 changed files with 5358157 additions and 62 deletions
51
web/node_modules/domutils/lib/helpers.d.ts
generated
vendored
Normal file
51
web/node_modules/domutils/lib/helpers.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,51 @@
|
|||
import { Node } from "domhandler";
|
||||
/**
|
||||
* Given an array of nodes, remove any member that is contained by another.
|
||||
*
|
||||
* @param nodes Nodes to filter.
|
||||
* @returns Remaining nodes that aren't subtrees of each other.
|
||||
*/
|
||||
export declare function removeSubsets(nodes: Node[]): Node[];
|
||||
export declare const enum DocumentPosition {
|
||||
DISCONNECTED = 1,
|
||||
PRECEDING = 2,
|
||||
FOLLOWING = 4,
|
||||
CONTAINS = 8,
|
||||
CONTAINED_BY = 16
|
||||
}
|
||||
/**
|
||||
* Compare the position of one node against another node in any other document.
|
||||
* The return value is a bitmask with the following values:
|
||||
*
|
||||
* Document order:
|
||||
* > There is an ordering, document order, defined on all the nodes in the
|
||||
* > document corresponding to the order in which the first character of the
|
||||
* > XML representation of each node occurs in the XML representation of the
|
||||
* > document after expansion of general entities. Thus, the document element
|
||||
* > node will be the first node. Element nodes occur before their children.
|
||||
* > Thus, document order orders element nodes in order of the occurrence of
|
||||
* > their start-tag in the XML (after expansion of entities). The attribute
|
||||
* > nodes of an element occur after the element and before its children. The
|
||||
* > relative order of attribute nodes is implementation-dependent./
|
||||
*
|
||||
* Source:
|
||||
* http://www.w3.org/TR/DOM-Level-3-Core/glossary.html#dt-document-order
|
||||
*
|
||||
* @param nodeA The first node to use in the comparison
|
||||
* @param nodeB The second node to use in the comparison
|
||||
* @returns A bitmask describing the input nodes' relative position.
|
||||
*
|
||||
* See http://dom.spec.whatwg.org/#dom-node-comparedocumentposition for
|
||||
* a description of these values.
|
||||
*/
|
||||
export declare function compareDocumentPosition(nodeA: Node, nodeB: Node): number;
|
||||
/**
|
||||
* Sort an array of nodes based on their relative position in the document and
|
||||
* remove any duplicate nodes. If the array contains nodes that do not belong
|
||||
* to the same document, sort order is unspecified.
|
||||
*
|
||||
* @param nodes Array of DOM nodes.
|
||||
* @returns Collection of unique nodes, sorted in document order.
|
||||
*/
|
||||
export declare function uniqueSort<T extends Node>(nodes: T[]): T[];
|
||||
//# sourceMappingURL=helpers.d.ts.map
|
1
web/node_modules/domutils/lib/helpers.d.ts.map
generated
vendored
Normal file
1
web/node_modules/domutils/lib/helpers.d.ts.map
generated
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../src/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,IAAI,EAAE,MAAM,YAAY,CAAC;AAE/C;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,CA6BnD;AAGD,0BAAkB,gBAAgB;IAC9B,YAAY,IAAI;IAChB,SAAS,IAAI;IACb,SAAS,IAAI;IACb,QAAQ,IAAI;IACZ,YAAY,KAAK;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,GAAG,MAAM,CA4CxE;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAc1D"}
|
125
web/node_modules/domutils/lib/helpers.js
generated
vendored
Normal file
125
web/node_modules/domutils/lib/helpers.js
generated
vendored
Normal file
|
@ -0,0 +1,125 @@
|
|||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.uniqueSort = exports.compareDocumentPosition = exports.removeSubsets = void 0;
|
||||
var domhandler_1 = require("domhandler");
|
||||
/**
|
||||
* Given an array of nodes, remove any member that is contained by another.
|
||||
*
|
||||
* @param nodes Nodes to filter.
|
||||
* @returns Remaining nodes that aren't subtrees of each other.
|
||||
*/
|
||||
function removeSubsets(nodes) {
|
||||
var idx = nodes.length;
|
||||
/*
|
||||
* Check if each node (or one of its ancestors) is already contained in the
|
||||
* array.
|
||||
*/
|
||||
while (--idx >= 0) {
|
||||
var node = nodes[idx];
|
||||
/*
|
||||
* Remove the node if it is not unique.
|
||||
* We are going through the array from the end, so we only
|
||||
* have to check nodes that preceed the node under consideration in the array.
|
||||
*/
|
||||
if (idx > 0 && nodes.lastIndexOf(node, idx - 1) >= 0) {
|
||||
nodes.splice(idx, 1);
|
||||
continue;
|
||||
}
|
||||
for (var ancestor = node.parent; ancestor; ancestor = ancestor.parent) {
|
||||
if (nodes.includes(ancestor)) {
|
||||
nodes.splice(idx, 1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return nodes;
|
||||
}
|
||||
exports.removeSubsets = removeSubsets;
|
||||
/**
|
||||
* Compare the position of one node against another node in any other document.
|
||||
* The return value is a bitmask with the following values:
|
||||
*
|
||||
* Document order:
|
||||
* > There is an ordering, document order, defined on all the nodes in the
|
||||
* > document corresponding to the order in which the first character of the
|
||||
* > XML representation of each node occurs in the XML representation of the
|
||||
* > document after expansion of general entities. Thus, the document element
|
||||
* > node will be the first node. Element nodes occur before their children.
|
||||
* > Thus, document order orders element nodes in order of the occurrence of
|
||||
* > their start-tag in the XML (after expansion of entities). The attribute
|
||||
* > nodes of an element occur after the element and before its children. The
|
||||
* > relative order of attribute nodes is implementation-dependent./
|
||||
*
|
||||
* Source:
|
||||
* http://www.w3.org/TR/DOM-Level-3-Core/glossary.html#dt-document-order
|
||||
*
|
||||
* @param nodeA The first node to use in the comparison
|
||||
* @param nodeB The second node to use in the comparison
|
||||
* @returns A bitmask describing the input nodes' relative position.
|
||||
*
|
||||
* See http://dom.spec.whatwg.org/#dom-node-comparedocumentposition for
|
||||
* a description of these values.
|
||||
*/
|
||||
function compareDocumentPosition(nodeA, nodeB) {
|
||||
var aParents = [];
|
||||
var bParents = [];
|
||||
if (nodeA === nodeB) {
|
||||
return 0;
|
||||
}
|
||||
var current = domhandler_1.hasChildren(nodeA) ? nodeA : nodeA.parent;
|
||||
while (current) {
|
||||
aParents.unshift(current);
|
||||
current = current.parent;
|
||||
}
|
||||
current = domhandler_1.hasChildren(nodeB) ? nodeB : nodeB.parent;
|
||||
while (current) {
|
||||
bParents.unshift(current);
|
||||
current = current.parent;
|
||||
}
|
||||
var maxIdx = Math.min(aParents.length, bParents.length);
|
||||
var idx = 0;
|
||||
while (idx < maxIdx && aParents[idx] === bParents[idx]) {
|
||||
idx++;
|
||||
}
|
||||
if (idx === 0) {
|
||||
return 1 /* DISCONNECTED */;
|
||||
}
|
||||
var sharedParent = aParents[idx - 1];
|
||||
var siblings = sharedParent.children;
|
||||
var aSibling = aParents[idx];
|
||||
var bSibling = bParents[idx];
|
||||
if (siblings.indexOf(aSibling) > siblings.indexOf(bSibling)) {
|
||||
if (sharedParent === nodeB) {
|
||||
return 4 /* FOLLOWING */ | 16 /* CONTAINED_BY */;
|
||||
}
|
||||
return 4 /* FOLLOWING */;
|
||||
}
|
||||
if (sharedParent === nodeA) {
|
||||
return 2 /* PRECEDING */ | 8 /* CONTAINS */;
|
||||
}
|
||||
return 2 /* PRECEDING */;
|
||||
}
|
||||
exports.compareDocumentPosition = compareDocumentPosition;
|
||||
/**
|
||||
* Sort an array of nodes based on their relative position in the document and
|
||||
* remove any duplicate nodes. If the array contains nodes that do not belong
|
||||
* to the same document, sort order is unspecified.
|
||||
*
|
||||
* @param nodes Array of DOM nodes.
|
||||
* @returns Collection of unique nodes, sorted in document order.
|
||||
*/
|
||||
function uniqueSort(nodes) {
|
||||
nodes = nodes.filter(function (node, i, arr) { return !arr.includes(node, i + 1); });
|
||||
nodes.sort(function (a, b) {
|
||||
var relative = compareDocumentPosition(a, b);
|
||||
if (relative & 2 /* PRECEDING */) {
|
||||
return -1;
|
||||
}
|
||||
else if (relative & 4 /* FOLLOWING */) {
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
});
|
||||
return nodes;
|
||||
}
|
||||
exports.uniqueSort = uniqueSort;
|
8
web/node_modules/domutils/lib/index.d.ts
generated
vendored
Normal file
8
web/node_modules/domutils/lib/index.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,8 @@
|
|||
export * from "./stringify";
|
||||
export * from "./traversal";
|
||||
export * from "./manipulation";
|
||||
export * from "./querying";
|
||||
export * from "./legacy";
|
||||
export * from "./helpers";
|
||||
export { isTag, isCDATA, isText, isComment, isDocument, hasChildren, } from "domhandler";
|
||||
//# sourceMappingURL=index.d.ts.map
|
1
web/node_modules/domutils/lib/index.d.ts.map
generated
vendored
Normal file
1
web/node_modules/domutils/lib/index.d.ts.map
generated
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,OAAO,EACH,KAAK,EACL,OAAO,EACP,MAAM,EACN,SAAS,EACT,UAAU,EACV,WAAW,GACd,MAAM,YAAY,CAAC"}
|
26
web/node_modules/domutils/lib/index.js
generated
vendored
Normal file
26
web/node_modules/domutils/lib/index.js
generated
vendored
Normal file
|
@ -0,0 +1,26 @@
|
|||
"use strict";
|
||||
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
||||
if (k2 === undefined) k2 = k;
|
||||
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
||||
}) : (function(o, m, k, k2) {
|
||||
if (k2 === undefined) k2 = k;
|
||||
o[k2] = m[k];
|
||||
}));
|
||||
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
||||
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.hasChildren = exports.isDocument = exports.isComment = exports.isText = exports.isCDATA = exports.isTag = void 0;
|
||||
__exportStar(require("./stringify"), exports);
|
||||
__exportStar(require("./traversal"), exports);
|
||||
__exportStar(require("./manipulation"), exports);
|
||||
__exportStar(require("./querying"), exports);
|
||||
__exportStar(require("./legacy"), exports);
|
||||
__exportStar(require("./helpers"), exports);
|
||||
var domhandler_1 = require("domhandler");
|
||||
Object.defineProperty(exports, "isTag", { enumerable: true, get: function () { return domhandler_1.isTag; } });
|
||||
Object.defineProperty(exports, "isCDATA", { enumerable: true, get: function () { return domhandler_1.isCDATA; } });
|
||||
Object.defineProperty(exports, "isText", { enumerable: true, get: function () { return domhandler_1.isText; } });
|
||||
Object.defineProperty(exports, "isComment", { enumerable: true, get: function () { return domhandler_1.isComment; } });
|
||||
Object.defineProperty(exports, "isDocument", { enumerable: true, get: function () { return domhandler_1.isDocument; } });
|
||||
Object.defineProperty(exports, "hasChildren", { enumerable: true, get: function () { return domhandler_1.hasChildren; } });
|
47
web/node_modules/domutils/lib/legacy.d.ts
generated
vendored
Normal file
47
web/node_modules/domutils/lib/legacy.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,47 @@
|
|||
import { Node, Element } from "domhandler";
|
||||
import { ElementType } from "domelementtype";
|
||||
interface TestElementOpts {
|
||||
tag_name?: string | ((name: string) => boolean);
|
||||
tag_type?: string | ((name: string) => boolean);
|
||||
tag_contains?: string | ((data?: string) => boolean);
|
||||
[attributeName: string]: undefined | string | ((attributeValue: string) => boolean);
|
||||
}
|
||||
/**
|
||||
* @param options An object describing nodes to look for.
|
||||
* @param node The element to test.
|
||||
* @returns Whether the element matches the description in `options`.
|
||||
*/
|
||||
export declare function testElement(options: TestElementOpts, node: Node): boolean;
|
||||
/**
|
||||
* @param options An object describing nodes to look for.
|
||||
* @param nodes Nodes to search through.
|
||||
* @param recurse Also consider child nodes.
|
||||
* @param limit Maximum number of nodes to return.
|
||||
* @returns All nodes that match `options`.
|
||||
*/
|
||||
export declare function getElements(options: TestElementOpts, nodes: Node | Node[], recurse: boolean, limit?: number): Node[];
|
||||
/**
|
||||
* @param id The unique ID attribute value to look for.
|
||||
* @param nodes Nodes to search through.
|
||||
* @param recurse Also consider child nodes.
|
||||
* @returns The node with the supplied ID.
|
||||
*/
|
||||
export declare function getElementById(id: string | ((id: string) => boolean), nodes: Node | Node[], recurse?: boolean): Element | null;
|
||||
/**
|
||||
* @param tagName Tag name to search for.
|
||||
* @param nodes Nodes to search through.
|
||||
* @param recurse Also consider child nodes.
|
||||
* @param limit Maximum number of nodes to return.
|
||||
* @returns All nodes with the supplied `tagName`.
|
||||
*/
|
||||
export declare function getElementsByTagName(tagName: string | ((name: string) => boolean), nodes: Node | Node[], recurse?: boolean, limit?: number): Element[];
|
||||
/**
|
||||
* @param type Element type to look for.
|
||||
* @param nodes Nodes to search through.
|
||||
* @param recurse Also consider child nodes.
|
||||
* @param limit Maximum number of nodes to return.
|
||||
* @returns All nodes with the supplied `type`.
|
||||
*/
|
||||
export declare function getElementsByTagType(type: ElementType | ((type: ElementType) => boolean), nodes: Node | Node[], recurse?: boolean, limit?: number): Node[];
|
||||
export {};
|
||||
//# sourceMappingURL=legacy.d.ts.map
|
1
web/node_modules/domutils/lib/legacy.d.ts.map
generated
vendored
Normal file
1
web/node_modules/domutils/lib/legacy.d.ts.map
generated
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
{"version":3,"file":"legacy.d.ts","sourceRoot":"","sources":["../src/legacy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,IAAI,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAK7C,UAAU,eAAe;IACrB,QAAQ,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC;IAChD,QAAQ,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC;IAChD,YAAY,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC;IACrD,CAAC,aAAa,EAAE,MAAM,GAChB,SAAS,GACT,MAAM,GACN,CAAC,CAAC,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC;CAC/C;AAsED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAGzE;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CACvB,OAAO,EAAE,eAAe,EACxB,KAAK,EAAE,IAAI,GAAG,IAAI,EAAE,EACpB,OAAO,EAAE,OAAO,EAChB,KAAK,SAAW,GACjB,IAAI,EAAE,CAGR;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC1B,EAAE,EAAE,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,EACtC,KAAK,EAAE,IAAI,GAAG,IAAI,EAAE,EACpB,OAAO,UAAO,GACf,OAAO,GAAG,IAAI,CAGhB;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAChC,OAAO,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,EAC7C,KAAK,EAAE,IAAI,GAAG,IAAI,EAAE,EACpB,OAAO,UAAO,EACd,KAAK,SAAW,GACjB,OAAO,EAAE,CAEX;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAChC,IAAI,EAAE,WAAW,GAAG,CAAC,CAAC,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,EACpD,KAAK,EAAE,IAAI,GAAG,IAAI,EAAE,EACpB,OAAO,UAAO,EACd,KAAK,SAAW,GACjB,IAAI,EAAE,CAER"}
|
124
web/node_modules/domutils/lib/legacy.js
generated
vendored
Normal file
124
web/node_modules/domutils/lib/legacy.js
generated
vendored
Normal file
|
@ -0,0 +1,124 @@
|
|||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.getElementsByTagType = exports.getElementsByTagName = exports.getElementById = exports.getElements = exports.testElement = void 0;
|
||||
var domhandler_1 = require("domhandler");
|
||||
var querying_1 = require("./querying");
|
||||
var Checks = {
|
||||
tag_name: function (name) {
|
||||
if (typeof name === "function") {
|
||||
return function (elem) { return domhandler_1.isTag(elem) && name(elem.name); };
|
||||
}
|
||||
else if (name === "*") {
|
||||
return domhandler_1.isTag;
|
||||
}
|
||||
return function (elem) { return domhandler_1.isTag(elem) && elem.name === name; };
|
||||
},
|
||||
tag_type: function (type) {
|
||||
if (typeof type === "function") {
|
||||
return function (elem) { return type(elem.type); };
|
||||
}
|
||||
return function (elem) { return elem.type === type; };
|
||||
},
|
||||
tag_contains: function (data) {
|
||||
if (typeof data === "function") {
|
||||
return function (elem) { return domhandler_1.isText(elem) && data(elem.data); };
|
||||
}
|
||||
return function (elem) { return domhandler_1.isText(elem) && elem.data === data; };
|
||||
},
|
||||
};
|
||||
/**
|
||||
* @param attrib Attribute to check.
|
||||
* @param value Attribute value to look for.
|
||||
* @returns A function to check whether the a node has an attribute with a particular value.
|
||||
*/
|
||||
function getAttribCheck(attrib, value) {
|
||||
if (typeof value === "function") {
|
||||
return function (elem) { return domhandler_1.isTag(elem) && value(elem.attribs[attrib]); };
|
||||
}
|
||||
return function (elem) { return domhandler_1.isTag(elem) && elem.attribs[attrib] === value; };
|
||||
}
|
||||
/**
|
||||
* @param a First function to combine.
|
||||
* @param b Second function to combine.
|
||||
* @returns A function taking a node and returning `true` if either
|
||||
* of the input functions returns `true` for the node.
|
||||
*/
|
||||
function combineFuncs(a, b) {
|
||||
return function (elem) { return a(elem) || b(elem); };
|
||||
}
|
||||
/**
|
||||
* @param options An object describing nodes to look for.
|
||||
* @returns A function executing all checks in `options` and returning `true`
|
||||
* if any of them match a node.
|
||||
*/
|
||||
function compileTest(options) {
|
||||
var funcs = Object.keys(options).map(function (key) {
|
||||
var value = options[key];
|
||||
return key in Checks
|
||||
? Checks[key](value)
|
||||
: getAttribCheck(key, value);
|
||||
});
|
||||
return funcs.length === 0 ? null : funcs.reduce(combineFuncs);
|
||||
}
|
||||
/**
|
||||
* @param options An object describing nodes to look for.
|
||||
* @param node The element to test.
|
||||
* @returns Whether the element matches the description in `options`.
|
||||
*/
|
||||
function testElement(options, node) {
|
||||
var test = compileTest(options);
|
||||
return test ? test(node) : true;
|
||||
}
|
||||
exports.testElement = testElement;
|
||||
/**
|
||||
* @param options An object describing nodes to look for.
|
||||
* @param nodes Nodes to search through.
|
||||
* @param recurse Also consider child nodes.
|
||||
* @param limit Maximum number of nodes to return.
|
||||
* @returns All nodes that match `options`.
|
||||
*/
|
||||
function getElements(options, nodes, recurse, limit) {
|
||||
if (limit === void 0) { limit = Infinity; }
|
||||
var test = compileTest(options);
|
||||
return test ? querying_1.filter(test, nodes, recurse, limit) : [];
|
||||
}
|
||||
exports.getElements = getElements;
|
||||
/**
|
||||
* @param id The unique ID attribute value to look for.
|
||||
* @param nodes Nodes to search through.
|
||||
* @param recurse Also consider child nodes.
|
||||
* @returns The node with the supplied ID.
|
||||
*/
|
||||
function getElementById(id, nodes, recurse) {
|
||||
if (recurse === void 0) { recurse = true; }
|
||||
if (!Array.isArray(nodes))
|
||||
nodes = [nodes];
|
||||
return querying_1.findOne(getAttribCheck("id", id), nodes, recurse);
|
||||
}
|
||||
exports.getElementById = getElementById;
|
||||
/**
|
||||
* @param tagName Tag name to search for.
|
||||
* @param nodes Nodes to search through.
|
||||
* @param recurse Also consider child nodes.
|
||||
* @param limit Maximum number of nodes to return.
|
||||
* @returns All nodes with the supplied `tagName`.
|
||||
*/
|
||||
function getElementsByTagName(tagName, nodes, recurse, limit) {
|
||||
if (recurse === void 0) { recurse = true; }
|
||||
if (limit === void 0) { limit = Infinity; }
|
||||
return querying_1.filter(Checks.tag_name(tagName), nodes, recurse, limit);
|
||||
}
|
||||
exports.getElementsByTagName = getElementsByTagName;
|
||||
/**
|
||||
* @param type Element type to look for.
|
||||
* @param nodes Nodes to search through.
|
||||
* @param recurse Also consider child nodes.
|
||||
* @param limit Maximum number of nodes to return.
|
||||
* @returns All nodes with the supplied `type`.
|
||||
*/
|
||||
function getElementsByTagType(type, nodes, recurse, limit) {
|
||||
if (recurse === void 0) { recurse = true; }
|
||||
if (limit === void 0) { limit = Infinity; }
|
||||
return querying_1.filter(Checks.tag_type(type), nodes, recurse, limit);
|
||||
}
|
||||
exports.getElementsByTagType = getElementsByTagType;
|
43
web/node_modules/domutils/lib/manipulation.d.ts
generated
vendored
Normal file
43
web/node_modules/domutils/lib/manipulation.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,43 @@
|
|||
import type { Node, Element } from "domhandler";
|
||||
/**
|
||||
* Remove an element from the dom
|
||||
*
|
||||
* @param elem The element to be removed
|
||||
*/
|
||||
export declare function removeElement(elem: Node): void;
|
||||
/**
|
||||
* Replace an element in the dom
|
||||
*
|
||||
* @param elem The element to be replaced
|
||||
* @param replacement The element to be added
|
||||
*/
|
||||
export declare function replaceElement(elem: Node, replacement: Node): void;
|
||||
/**
|
||||
* Append a child to an element.
|
||||
*
|
||||
* @param elem The element to append to.
|
||||
* @param child The element to be added as a child.
|
||||
*/
|
||||
export declare function appendChild(elem: Element, child: Node): void;
|
||||
/**
|
||||
* Append an element after another.
|
||||
*
|
||||
* @param elem The element to append after.
|
||||
* @param next The element be added.
|
||||
*/
|
||||
export declare function append(elem: Node, next: Node): void;
|
||||
/**
|
||||
* Prepend a child to an element.
|
||||
*
|
||||
* @param elem The element to prepend before.
|
||||
* @param child The element to be added as a child.
|
||||
*/
|
||||
export declare function prependChild(elem: Element, child: Node): void;
|
||||
/**
|
||||
* Prepend an element before another.
|
||||
*
|
||||
* @param elem The element to prepend before.
|
||||
* @param prev The element be added.
|
||||
*/
|
||||
export declare function prepend(elem: Node, prev: Node): void;
|
||||
//# sourceMappingURL=manipulation.d.ts.map
|
1
web/node_modules/domutils/lib/manipulation.d.ts.map
generated
vendored
Normal file
1
web/node_modules/domutils/lib/manipulation.d.ts.map
generated
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
{"version":3,"file":"manipulation.d.ts","sourceRoot":"","sources":["../src/manipulation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAEhD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAQ9C;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,GAAG,IAAI,CAgBlE;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,GAAG,IAAI,CAa5D;AAED;;;;;GAKG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,CAoBnD;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,GAAG,IAAI,CAa7D;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,CAiBpD"}
|
129
web/node_modules/domutils/lib/manipulation.js
generated
vendored
Normal file
129
web/node_modules/domutils/lib/manipulation.js
generated
vendored
Normal file
|
@ -0,0 +1,129 @@
|
|||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.prepend = exports.prependChild = exports.append = exports.appendChild = exports.replaceElement = exports.removeElement = void 0;
|
||||
/**
|
||||
* Remove an element from the dom
|
||||
*
|
||||
* @param elem The element to be removed
|
||||
*/
|
||||
function removeElement(elem) {
|
||||
if (elem.prev)
|
||||
elem.prev.next = elem.next;
|
||||
if (elem.next)
|
||||
elem.next.prev = elem.prev;
|
||||
if (elem.parent) {
|
||||
var childs = elem.parent.children;
|
||||
childs.splice(childs.lastIndexOf(elem), 1);
|
||||
}
|
||||
}
|
||||
exports.removeElement = removeElement;
|
||||
/**
|
||||
* Replace an element in the dom
|
||||
*
|
||||
* @param elem The element to be replaced
|
||||
* @param replacement The element to be added
|
||||
*/
|
||||
function replaceElement(elem, replacement) {
|
||||
var prev = (replacement.prev = elem.prev);
|
||||
if (prev) {
|
||||
prev.next = replacement;
|
||||
}
|
||||
var next = (replacement.next = elem.next);
|
||||
if (next) {
|
||||
next.prev = replacement;
|
||||
}
|
||||
var parent = (replacement.parent = elem.parent);
|
||||
if (parent) {
|
||||
var childs = parent.children;
|
||||
childs[childs.lastIndexOf(elem)] = replacement;
|
||||
}
|
||||
}
|
||||
exports.replaceElement = replaceElement;
|
||||
/**
|
||||
* Append a child to an element.
|
||||
*
|
||||
* @param elem The element to append to.
|
||||
* @param child The element to be added as a child.
|
||||
*/
|
||||
function appendChild(elem, child) {
|
||||
removeElement(child);
|
||||
child.next = null;
|
||||
child.parent = elem;
|
||||
if (elem.children.push(child) > 1) {
|
||||
var sibling = elem.children[elem.children.length - 2];
|
||||
sibling.next = child;
|
||||
child.prev = sibling;
|
||||
}
|
||||
else {
|
||||
child.prev = null;
|
||||
}
|
||||
}
|
||||
exports.appendChild = appendChild;
|
||||
/**
|
||||
* Append an element after another.
|
||||
*
|
||||
* @param elem The element to append after.
|
||||
* @param next The element be added.
|
||||
*/
|
||||
function append(elem, next) {
|
||||
removeElement(next);
|
||||
var parent = elem.parent;
|
||||
var currNext = elem.next;
|
||||
next.next = currNext;
|
||||
next.prev = elem;
|
||||
elem.next = next;
|
||||
next.parent = parent;
|
||||
if (currNext) {
|
||||
currNext.prev = next;
|
||||
if (parent) {
|
||||
var childs = parent.children;
|
||||
childs.splice(childs.lastIndexOf(currNext), 0, next);
|
||||
}
|
||||
}
|
||||
else if (parent) {
|
||||
parent.children.push(next);
|
||||
}
|
||||
}
|
||||
exports.append = append;
|
||||
/**
|
||||
* Prepend a child to an element.
|
||||
*
|
||||
* @param elem The element to prepend before.
|
||||
* @param child The element to be added as a child.
|
||||
*/
|
||||
function prependChild(elem, child) {
|
||||
removeElement(child);
|
||||
child.parent = elem;
|
||||
child.prev = null;
|
||||
if (elem.children.unshift(child) !== 1) {
|
||||
var sibling = elem.children[1];
|
||||
sibling.prev = child;
|
||||
child.next = sibling;
|
||||
}
|
||||
else {
|
||||
child.next = null;
|
||||
}
|
||||
}
|
||||
exports.prependChild = prependChild;
|
||||
/**
|
||||
* Prepend an element before another.
|
||||
*
|
||||
* @param elem The element to prepend before.
|
||||
* @param prev The element be added.
|
||||
*/
|
||||
function prepend(elem, prev) {
|
||||
removeElement(prev);
|
||||
var parent = elem.parent;
|
||||
if (parent) {
|
||||
var childs = parent.children;
|
||||
childs.splice(childs.indexOf(elem), 0, prev);
|
||||
}
|
||||
if (elem.prev) {
|
||||
elem.prev.next = prev;
|
||||
}
|
||||
prev.parent = parent;
|
||||
prev.prev = elem.prev;
|
||||
prev.next = elem;
|
||||
elem.prev = prev;
|
||||
}
|
||||
exports.prepend = prepend;
|
55
web/node_modules/domutils/lib/querying.d.ts
generated
vendored
Normal file
55
web/node_modules/domutils/lib/querying.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,55 @@
|
|||
import { Node, Element } from "domhandler";
|
||||
/**
|
||||
* Search a node and its children for nodes passing a test function.
|
||||
*
|
||||
* @param test Function to test nodes on.
|
||||
* @param node Node to search. Will be included in the result set if it matches.
|
||||
* @param recurse Also consider child nodes.
|
||||
* @param limit Maximum number of nodes to return.
|
||||
* @returns All nodes passing `test`.
|
||||
*/
|
||||
export declare function filter(test: (elem: Node) => boolean, node: Node | Node[], recurse?: boolean, limit?: number): Node[];
|
||||
/**
|
||||
* Search an array of node and its children for nodes passing a test function.
|
||||
*
|
||||
* @param test Function to test nodes on.
|
||||
* @param nodes Array of nodes to search.
|
||||
* @param recurse Also consider child nodes.
|
||||
* @param limit Maximum number of nodes to return.
|
||||
* @returns All nodes passing `test`.
|
||||
*/
|
||||
export declare function find(test: (elem: Node) => boolean, nodes: Node[], recurse: boolean, limit: number): Node[];
|
||||
/**
|
||||
* Finds the first element inside of an array that matches a test function.
|
||||
*
|
||||
* @param test Function to test nodes on.
|
||||
* @param nodes Array of nodes to search.
|
||||
* @returns The first node in the array that passes `test`.
|
||||
*/
|
||||
export declare function findOneChild(test: (elem: Node) => boolean, nodes: Node[]): Node | undefined;
|
||||
/**
|
||||
* Finds one element in a tree that passes a test.
|
||||
*
|
||||
* @param test Function to test nodes on.
|
||||
* @param nodes Array of nodes to search.
|
||||
* @param recurse Also consider child nodes.
|
||||
* @returns The first child node that passes `test`.
|
||||
*/
|
||||
export declare function findOne(test: (elem: Element) => boolean, nodes: Node[], recurse?: boolean): Element | null;
|
||||
/**
|
||||
* @param test Function to test nodes on.
|
||||
* @param nodes Array of nodes to search.
|
||||
* @returns Whether a tree of nodes contains at least one node passing a test.
|
||||
*/
|
||||
export declare function existsOne(test: (elem: Element) => boolean, nodes: Node[]): boolean;
|
||||
/**
|
||||
* Search and array of nodes and its children for nodes passing a test function.
|
||||
*
|
||||
* Same as `find`, only with less options, leading to reduced complexity.
|
||||
*
|
||||
* @param test Function to test nodes on.
|
||||
* @param nodes Array of nodes to search.
|
||||
* @returns All nodes passing `test`.
|
||||
*/
|
||||
export declare function findAll(test: (elem: Element) => boolean, nodes: Node[]): Element[];
|
||||
//# sourceMappingURL=querying.d.ts.map
|
1
web/node_modules/domutils/lib/querying.d.ts.map
generated
vendored
Normal file
1
web/node_modules/domutils/lib/querying.d.ts.map
generated
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
{"version":3,"file":"querying.d.ts","sourceRoot":"","sources":["../src/querying.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,IAAI,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE/D;;;;;;;;GAQG;AACH,wBAAgB,MAAM,CAClB,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,EAC7B,IAAI,EAAE,IAAI,GAAG,IAAI,EAAE,EACnB,OAAO,UAAO,EACd,KAAK,SAAW,GACjB,IAAI,EAAE,CAGR;AAED;;;;;;;;GAQG;AACH,wBAAgB,IAAI,CAChB,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,EAC7B,KAAK,EAAE,IAAI,EAAE,EACb,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,MAAM,GACd,IAAI,EAAE,CAkBR;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CACxB,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,EAC7B,KAAK,EAAE,IAAI,EAAE,GACd,IAAI,GAAG,SAAS,CAElB;AAED;;;;;;;GAOG;AACH,wBAAgB,OAAO,CACnB,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,EAChC,KAAK,EAAE,IAAI,EAAE,EACb,OAAO,UAAO,GACf,OAAO,GAAG,IAAI,CAehB;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CACrB,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,EAChC,KAAK,EAAE,IAAI,EAAE,GACd,OAAO,CAQT;AAED;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CACnB,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,EAChC,KAAK,EAAE,IAAI,EAAE,GACd,OAAO,EAAE,CAYX"}
|
126
web/node_modules/domutils/lib/querying.js
generated
vendored
Normal file
126
web/node_modules/domutils/lib/querying.js
generated
vendored
Normal file
|
@ -0,0 +1,126 @@
|
|||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.findAll = exports.existsOne = exports.findOne = exports.findOneChild = exports.find = exports.filter = void 0;
|
||||
var domhandler_1 = require("domhandler");
|
||||
/**
|
||||
* Search a node and its children for nodes passing a test function.
|
||||
*
|
||||
* @param test Function to test nodes on.
|
||||
* @param node Node to search. Will be included in the result set if it matches.
|
||||
* @param recurse Also consider child nodes.
|
||||
* @param limit Maximum number of nodes to return.
|
||||
* @returns All nodes passing `test`.
|
||||
*/
|
||||
function filter(test, node, recurse, limit) {
|
||||
if (recurse === void 0) { recurse = true; }
|
||||
if (limit === void 0) { limit = Infinity; }
|
||||
if (!Array.isArray(node))
|
||||
node = [node];
|
||||
return find(test, node, recurse, limit);
|
||||
}
|
||||
exports.filter = filter;
|
||||
/**
|
||||
* Search an array of node and its children for nodes passing a test function.
|
||||
*
|
||||
* @param test Function to test nodes on.
|
||||
* @param nodes Array of nodes to search.
|
||||
* @param recurse Also consider child nodes.
|
||||
* @param limit Maximum number of nodes to return.
|
||||
* @returns All nodes passing `test`.
|
||||
*/
|
||||
function find(test, nodes, recurse, limit) {
|
||||
var result = [];
|
||||
for (var _i = 0, nodes_1 = nodes; _i < nodes_1.length; _i++) {
|
||||
var elem = nodes_1[_i];
|
||||
if (test(elem)) {
|
||||
result.push(elem);
|
||||
if (--limit <= 0)
|
||||
break;
|
||||
}
|
||||
if (recurse && domhandler_1.hasChildren(elem) && elem.children.length > 0) {
|
||||
var children = find(test, elem.children, recurse, limit);
|
||||
result.push.apply(result, children);
|
||||
limit -= children.length;
|
||||
if (limit <= 0)
|
||||
break;
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
exports.find = find;
|
||||
/**
|
||||
* Finds the first element inside of an array that matches a test function.
|
||||
*
|
||||
* @param test Function to test nodes on.
|
||||
* @param nodes Array of nodes to search.
|
||||
* @returns The first node in the array that passes `test`.
|
||||
*/
|
||||
function findOneChild(test, nodes) {
|
||||
return nodes.find(test);
|
||||
}
|
||||
exports.findOneChild = findOneChild;
|
||||
/**
|
||||
* Finds one element in a tree that passes a test.
|
||||
*
|
||||
* @param test Function to test nodes on.
|
||||
* @param nodes Array of nodes to search.
|
||||
* @param recurse Also consider child nodes.
|
||||
* @returns The first child node that passes `test`.
|
||||
*/
|
||||
function findOne(test, nodes, recurse) {
|
||||
if (recurse === void 0) { recurse = true; }
|
||||
var elem = null;
|
||||
for (var i = 0; i < nodes.length && !elem; i++) {
|
||||
var checked = nodes[i];
|
||||
if (!domhandler_1.isTag(checked)) {
|
||||
continue;
|
||||
}
|
||||
else if (test(checked)) {
|
||||
elem = checked;
|
||||
}
|
||||
else if (recurse && checked.children.length > 0) {
|
||||
elem = findOne(test, checked.children);
|
||||
}
|
||||
}
|
||||
return elem;
|
||||
}
|
||||
exports.findOne = findOne;
|
||||
/**
|
||||
* @param test Function to test nodes on.
|
||||
* @param nodes Array of nodes to search.
|
||||
* @returns Whether a tree of nodes contains at least one node passing a test.
|
||||
*/
|
||||
function existsOne(test, nodes) {
|
||||
return nodes.some(function (checked) {
|
||||
return domhandler_1.isTag(checked) &&
|
||||
(test(checked) ||
|
||||
(checked.children.length > 0 &&
|
||||
existsOne(test, checked.children)));
|
||||
});
|
||||
}
|
||||
exports.existsOne = existsOne;
|
||||
/**
|
||||
* Search and array of nodes and its children for nodes passing a test function.
|
||||
*
|
||||
* Same as `find`, only with less options, leading to reduced complexity.
|
||||
*
|
||||
* @param test Function to test nodes on.
|
||||
* @param nodes Array of nodes to search.
|
||||
* @returns All nodes passing `test`.
|
||||
*/
|
||||
function findAll(test, nodes) {
|
||||
var _a;
|
||||
var result = [];
|
||||
var stack = nodes.filter(domhandler_1.isTag);
|
||||
var elem;
|
||||
while ((elem = stack.shift())) {
|
||||
var children = (_a = elem.children) === null || _a === void 0 ? void 0 : _a.filter(domhandler_1.isTag);
|
||||
if (children && children.length > 0) {
|
||||
stack.unshift.apply(stack, children);
|
||||
}
|
||||
if (test(elem))
|
||||
result.push(elem);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
exports.findAll = findAll;
|
41
web/node_modules/domutils/lib/stringify.d.ts
generated
vendored
Normal file
41
web/node_modules/domutils/lib/stringify.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,41 @@
|
|||
import { Node } from "domhandler";
|
||||
import { DomSerializerOptions } from "dom-serializer";
|
||||
/**
|
||||
* @param node Node to get the outer HTML of.
|
||||
* @param options Options for serialization.
|
||||
* @deprecated Use the `dom-serializer` module directly.
|
||||
* @returns `node`'s outer HTML.
|
||||
*/
|
||||
export declare function getOuterHTML(node: Node | Node[], options?: DomSerializerOptions): string;
|
||||
/**
|
||||
* @param node Node to get the inner HTML of.
|
||||
* @param options Options for serialization.
|
||||
* @deprecated Use the `dom-serializer` module directly.
|
||||
* @returns `node`'s inner HTML.
|
||||
*/
|
||||
export declare function getInnerHTML(node: Node, options?: DomSerializerOptions): string;
|
||||
/**
|
||||
* Get a node's inner text. Same as `textContent`, but inserts newlines for `<br>` tags.
|
||||
*
|
||||
* @deprecated Use `textContent` instead.
|
||||
* @param node Node to get the inner text of.
|
||||
* @returns `node`'s inner text.
|
||||
*/
|
||||
export declare function getText(node: Node | Node[]): string;
|
||||
/**
|
||||
* Get a node's text content.
|
||||
*
|
||||
* @param node Node to get the text content of.
|
||||
* @returns `node`'s text content.
|
||||
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent}
|
||||
*/
|
||||
export declare function textContent(node: Node | Node[]): string;
|
||||
/**
|
||||
* Get a node's inner text.
|
||||
*
|
||||
* @param node Node to get the inner text of.
|
||||
* @returns `node`'s inner text.
|
||||
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Node/innerText}
|
||||
*/
|
||||
export declare function innerText(node: Node | Node[]): string;
|
||||
//# sourceMappingURL=stringify.d.ts.map
|
1
web/node_modules/domutils/lib/stringify.d.ts.map
generated
vendored
Normal file
1
web/node_modules/domutils/lib/stringify.d.ts.map
generated
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
{"version":3,"file":"stringify.d.ts","sourceRoot":"","sources":["../src/stringify.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuC,IAAI,EAAE,MAAM,YAAY,CAAC;AACvE,OAAmB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGlE;;;;;GAKG;AACH,wBAAgB,YAAY,CACxB,IAAI,EAAE,IAAI,GAAG,IAAI,EAAE,EACnB,OAAO,CAAC,EAAE,oBAAoB,GAC/B,MAAM,CAER;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CACxB,IAAI,EAAE,IAAI,EACV,OAAO,CAAC,EAAE,oBAAoB,GAC/B,MAAM,CAIR;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,EAAE,GAAG,MAAM,CAMnD;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,EAAE,GAAG,MAAM,CAMvD;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,EAAE,GAAG,MAAM,CAQrD"}
|
89
web/node_modules/domutils/lib/stringify.js
generated
vendored
Normal file
89
web/node_modules/domutils/lib/stringify.js
generated
vendored
Normal file
|
@ -0,0 +1,89 @@
|
|||
"use strict";
|
||||
var __importDefault = (this && this.__importDefault) || function (mod) {
|
||||
return (mod && mod.__esModule) ? mod : { "default": mod };
|
||||
};
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.innerText = exports.textContent = exports.getText = exports.getInnerHTML = exports.getOuterHTML = void 0;
|
||||
var domhandler_1 = require("domhandler");
|
||||
var dom_serializer_1 = __importDefault(require("dom-serializer"));
|
||||
var domelementtype_1 = require("domelementtype");
|
||||
/**
|
||||
* @param node Node to get the outer HTML of.
|
||||
* @param options Options for serialization.
|
||||
* @deprecated Use the `dom-serializer` module directly.
|
||||
* @returns `node`'s outer HTML.
|
||||
*/
|
||||
function getOuterHTML(node, options) {
|
||||
return dom_serializer_1.default(node, options);
|
||||
}
|
||||
exports.getOuterHTML = getOuterHTML;
|
||||
/**
|
||||
* @param node Node to get the inner HTML of.
|
||||
* @param options Options for serialization.
|
||||
* @deprecated Use the `dom-serializer` module directly.
|
||||
* @returns `node`'s inner HTML.
|
||||
*/
|
||||
function getInnerHTML(node, options) {
|
||||
return domhandler_1.hasChildren(node)
|
||||
? node.children.map(function (node) { return getOuterHTML(node, options); }).join("")
|
||||
: "";
|
||||
}
|
||||
exports.getInnerHTML = getInnerHTML;
|
||||
/**
|
||||
* Get a node's inner text. Same as `textContent`, but inserts newlines for `<br>` tags.
|
||||
*
|
||||
* @deprecated Use `textContent` instead.
|
||||
* @param node Node to get the inner text of.
|
||||
* @returns `node`'s inner text.
|
||||
*/
|
||||
function getText(node) {
|
||||
if (Array.isArray(node))
|
||||
return node.map(getText).join("");
|
||||
if (domhandler_1.isTag(node))
|
||||
return node.name === "br" ? "\n" : getText(node.children);
|
||||
if (domhandler_1.isCDATA(node))
|
||||
return getText(node.children);
|
||||
if (domhandler_1.isText(node))
|
||||
return node.data;
|
||||
return "";
|
||||
}
|
||||
exports.getText = getText;
|
||||
/**
|
||||
* Get a node's text content.
|
||||
*
|
||||
* @param node Node to get the text content of.
|
||||
* @returns `node`'s text content.
|
||||
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent}
|
||||
*/
|
||||
function textContent(node) {
|
||||
if (Array.isArray(node))
|
||||
return node.map(textContent).join("");
|
||||
if (domhandler_1.isTag(node))
|
||||
return textContent(node.children);
|
||||
if (domhandler_1.isCDATA(node))
|
||||
return textContent(node.children);
|
||||
if (domhandler_1.isText(node))
|
||||
return node.data;
|
||||
return "";
|
||||
}
|
||||
exports.textContent = textContent;
|
||||
/**
|
||||
* Get a node's inner text.
|
||||
*
|
||||
* @param node Node to get the inner text of.
|
||||
* @returns `node`'s inner text.
|
||||
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Node/innerText}
|
||||
*/
|
||||
function innerText(node) {
|
||||
if (Array.isArray(node))
|
||||
return node.map(innerText).join("");
|
||||
if (domhandler_1.hasChildren(node) && node.type === domelementtype_1.ElementType.Tag) {
|
||||
return innerText(node.children);
|
||||
}
|
||||
if (domhandler_1.isCDATA(node))
|
||||
return innerText(node.children);
|
||||
if (domhandler_1.isText(node))
|
||||
return node.data;
|
||||
return "";
|
||||
}
|
||||
exports.innerText = innerText;
|
59
web/node_modules/domutils/lib/traversal.d.ts
generated
vendored
Normal file
59
web/node_modules/domutils/lib/traversal.d.ts
generated
vendored
Normal file
|
@ -0,0 +1,59 @@
|
|||
import { Node, Element, NodeWithChildren } from "domhandler";
|
||||
/**
|
||||
* Get a node's children.
|
||||
*
|
||||
* @param elem Node to get the children of.
|
||||
* @returns `elem`'s children, or an empty array.
|
||||
*/
|
||||
export declare function getChildren(elem: Node): Node[];
|
||||
export declare function getParent(elem: Element): Element | null;
|
||||
export declare function getParent(elem: Node): NodeWithChildren | null;
|
||||
/**
|
||||
* Gets an elements siblings, including the element itself.
|
||||
*
|
||||
* Attempts to get the children through the element's parent first.
|
||||
* If we don't have a parent (the element is a root node),
|
||||
* we walk the element's `prev` & `next` to get all remaining nodes.
|
||||
*
|
||||
* @param elem Element to get the siblings of.
|
||||
* @returns `elem`'s siblings.
|
||||
*/
|
||||
export declare function getSiblings(elem: Node): Node[];
|
||||
/**
|
||||
* Gets an attribute from an element.
|
||||
*
|
||||
* @param elem Element to check.
|
||||
* @param name Attribute name to retrieve.
|
||||
* @returns The element's attribute value, or `undefined`.
|
||||
*/
|
||||
export declare function getAttributeValue(elem: Element, name: string): string | undefined;
|
||||
/**
|
||||
* Checks whether an element has an attribute.
|
||||
*
|
||||
* @param elem Element to check.
|
||||
* @param name Attribute name to look for.
|
||||
* @returns Returns whether `elem` has the attribute `name`.
|
||||
*/
|
||||
export declare function hasAttrib(elem: Element, name: string): boolean;
|
||||
/**
|
||||
* Get the tag name of an element.
|
||||
*
|
||||
* @param elem The element to get the name for.
|
||||
* @returns The tag name of `elem`.
|
||||
*/
|
||||
export declare function getName(elem: Element): string;
|
||||
/**
|
||||
* Returns the next element sibling of a node.
|
||||
*
|
||||
* @param elem The element to get the next sibling of.
|
||||
* @returns `elem`'s next sibling that is a tag.
|
||||
*/
|
||||
export declare function nextElementSibling(elem: Node): Element | null;
|
||||
/**
|
||||
* Returns the previous element sibling of a node.
|
||||
*
|
||||
* @param elem The element to get the previous sibling of.
|
||||
* @returns `elem`'s previous sibling that is a tag.
|
||||
*/
|
||||
export declare function prevElementSibling(elem: Node): Element | null;
|
||||
//# sourceMappingURL=traversal.d.ts.map
|
1
web/node_modules/domutils/lib/traversal.d.ts.map
generated
vendored
Normal file
1
web/node_modules/domutils/lib/traversal.d.ts.map
generated
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
{"version":3,"file":"traversal.d.ts","sourceRoot":"","sources":["../src/traversal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGpE;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,EAAE,CAE9C;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,IAAI,CAAC;AACzD,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,gBAAgB,GAAG,IAAI,CAAC;AAW/D;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,EAAE,CAe9C;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC7B,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,MAAM,GACb,MAAM,GAAG,SAAS,CAEpB;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAM9D;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAE7C;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,GAAG,IAAI,CAI7D;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,GAAG,IAAI,CAI7D"}
|
117
web/node_modules/domutils/lib/traversal.js
generated
vendored
Normal file
117
web/node_modules/domutils/lib/traversal.js
generated
vendored
Normal file
|
@ -0,0 +1,117 @@
|
|||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.prevElementSibling = exports.nextElementSibling = exports.getName = exports.hasAttrib = exports.getAttributeValue = exports.getSiblings = exports.getParent = exports.getChildren = void 0;
|
||||
var domhandler_1 = require("domhandler");
|
||||
var emptyArray = [];
|
||||
/**
|
||||
* Get a node's children.
|
||||
*
|
||||
* @param elem Node to get the children of.
|
||||
* @returns `elem`'s children, or an empty array.
|
||||
*/
|
||||
function getChildren(elem) {
|
||||
var _a;
|
||||
return (_a = elem.children) !== null && _a !== void 0 ? _a : emptyArray;
|
||||
}
|
||||
exports.getChildren = getChildren;
|
||||
/**
|
||||
* Get a node's parent.
|
||||
*
|
||||
* @param elem Node to get the parent of.
|
||||
* @returns `elem`'s parent node.
|
||||
*/
|
||||
function getParent(elem) {
|
||||
return elem.parent || null;
|
||||
}
|
||||
exports.getParent = getParent;
|
||||
/**
|
||||
* Gets an elements siblings, including the element itself.
|
||||
*
|
||||
* Attempts to get the children through the element's parent first.
|
||||
* If we don't have a parent (the element is a root node),
|
||||
* we walk the element's `prev` & `next` to get all remaining nodes.
|
||||
*
|
||||
* @param elem Element to get the siblings of.
|
||||
* @returns `elem`'s siblings.
|
||||
*/
|
||||
function getSiblings(elem) {
|
||||
var _a, _b;
|
||||
var parent = getParent(elem);
|
||||
if (parent != null)
|
||||
return getChildren(parent);
|
||||
var siblings = [elem];
|
||||
var prev = elem.prev, next = elem.next;
|
||||
while (prev != null) {
|
||||
siblings.unshift(prev);
|
||||
(_a = prev, prev = _a.prev);
|
||||
}
|
||||
while (next != null) {
|
||||
siblings.push(next);
|
||||
(_b = next, next = _b.next);
|
||||
}
|
||||
return siblings;
|
||||
}
|
||||
exports.getSiblings = getSiblings;
|
||||
/**
|
||||
* Gets an attribute from an element.
|
||||
*
|
||||
* @param elem Element to check.
|
||||
* @param name Attribute name to retrieve.
|
||||
* @returns The element's attribute value, or `undefined`.
|
||||
*/
|
||||
function getAttributeValue(elem, name) {
|
||||
var _a;
|
||||
return (_a = elem.attribs) === null || _a === void 0 ? void 0 : _a[name];
|
||||
}
|
||||
exports.getAttributeValue = getAttributeValue;
|
||||
/**
|
||||
* Checks whether an element has an attribute.
|
||||
*
|
||||
* @param elem Element to check.
|
||||
* @param name Attribute name to look for.
|
||||
* @returns Returns whether `elem` has the attribute `name`.
|
||||
*/
|
||||
function hasAttrib(elem, name) {
|
||||
return (elem.attribs != null &&
|
||||
Object.prototype.hasOwnProperty.call(elem.attribs, name) &&
|
||||
elem.attribs[name] != null);
|
||||
}
|
||||
exports.hasAttrib = hasAttrib;
|
||||
/**
|
||||
* Get the tag name of an element.
|
||||
*
|
||||
* @param elem The element to get the name for.
|
||||
* @returns The tag name of `elem`.
|
||||
*/
|
||||
function getName(elem) {
|
||||
return elem.name;
|
||||
}
|
||||
exports.getName = getName;
|
||||
/**
|
||||
* Returns the next element sibling of a node.
|
||||
*
|
||||
* @param elem The element to get the next sibling of.
|
||||
* @returns `elem`'s next sibling that is a tag.
|
||||
*/
|
||||
function nextElementSibling(elem) {
|
||||
var _a;
|
||||
var next = elem.next;
|
||||
while (next !== null && !domhandler_1.isTag(next))
|
||||
(_a = next, next = _a.next);
|
||||
return next;
|
||||
}
|
||||
exports.nextElementSibling = nextElementSibling;
|
||||
/**
|
||||
* Returns the previous element sibling of a node.
|
||||
*
|
||||
* @param elem The element to get the previous sibling of.
|
||||
* @returns `elem`'s previous sibling that is a tag.
|
||||
*/
|
||||
function prevElementSibling(elem) {
|
||||
var _a;
|
||||
var prev = elem.prev;
|
||||
while (prev !== null && !domhandler_1.isTag(prev))
|
||||
(_a = prev, prev = _a.prev);
|
||||
return prev;
|
||||
}
|
||||
exports.prevElementSibling = prevElementSibling;
|
Loading…
Add table
Add a link
Reference in a new issue