diff options
Diffstat (limited to 'includes/external/addressbook/node_modules/domutils/lib')
65 files changed, 2737 insertions, 0 deletions
diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/feeds.d.ts b/includes/external/addressbook/node_modules/domutils/lib/esm/feeds.d.ts new file mode 100644 index 0000000..5ba60c7 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/feeds.d.ts @@ -0,0 +1,71 @@ +import type { AnyNode } from "domhandler"; +/** + * The type of a media item. + * + * @category Feeds + */ +export declare type FeedItemMediaMedium = "image" | "audio" | "video" | "document" | "executable"; +/** + * The type of a media item. + * + * @category Feeds + */ +export declare type FeedItemMediaExpression = "sample" | "full" | "nonstop"; +/** + * A media item of a feed entry. + * + * @category Feeds + */ +export interface FeedItemMedia { + medium: FeedItemMediaMedium | undefined; + isDefault: boolean; + url?: string; + fileSize?: number; + type?: string; + expression?: FeedItemMediaExpression; + bitrate?: number; + framerate?: number; + samplingrate?: number; + channels?: number; + duration?: number; + height?: number; + width?: number; + lang?: string; +} +/** + * An entry of a feed. + * + * @category Feeds + */ +export interface FeedItem { + id?: string; + title?: string; + link?: string; + description?: string; + pubDate?: Date; + media: FeedItemMedia[]; +} +/** + * The root of a feed. + * + * @category Feeds + */ +export interface Feed { + type: string; + id?: string; + title?: string; + link?: string; + description?: string; + updated?: Date; + author?: string; + items: FeedItem[]; +} +/** + * Get the feed object from the root of a DOM tree. + * + * @category Feeds + * @param doc - The DOM to to extract the feed from. + * @returns The feed. + */ +export declare function getFeed(doc: AnyNode[]): Feed | null; +//# sourceMappingURL=feeds.d.ts.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/feeds.d.ts.map b/includes/external/addressbook/node_modules/domutils/lib/esm/feeds.d.ts.map new file mode 100644 index 0000000..7228bc1 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/feeds.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"feeds.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["feeds.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAW,MAAM,YAAY,CAAC;AAInD;;;;GAIG;AACH,oBAAY,mBAAmB,GACzB,OAAO,GACP,OAAO,GACP,OAAO,GACP,UAAU,GACV,YAAY,CAAC;AAEnB;;;;GAIG;AACH,oBAAY,uBAAuB,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;AAEpE;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC1B,MAAM,EAAE,mBAAmB,GAAG,SAAS,CAAC;IACxC,SAAS,EAAE,OAAO,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,uBAAuB,CAAC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,KAAK,EAAE,aAAa,EAAE,CAAC;CAC1B;AAED;;;;GAIG;AACH,MAAM,WAAW,IAAI;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,QAAQ,EAAE,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,GAAG,IAAI,CAQnD"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/feeds.js b/includes/external/addressbook/node_modules/domutils/lib/esm/feeds.js new file mode 100644 index 0000000..449549b --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/feeds.js @@ -0,0 +1,183 @@ +import { textContent } from "./stringify.js"; +import { getElementsByTagName } from "./legacy.js"; +/** + * Get the feed object from the root of a DOM tree. + * + * @category Feeds + * @param doc - The DOM to to extract the feed from. + * @returns The feed. + */ +export function getFeed(doc) { + const feedRoot = getOneElement(isValidFeed, doc); + return !feedRoot + ? null + : feedRoot.name === "feed" + ? getAtomFeed(feedRoot) + : getRssFeed(feedRoot); +} +/** + * Parse an Atom feed. + * + * @param feedRoot The root of the feed. + * @returns The parsed feed. + */ +function getAtomFeed(feedRoot) { + var _a; + const childs = feedRoot.children; + const feed = { + type: "atom", + items: getElementsByTagName("entry", childs).map((item) => { + var _a; + const { children } = item; + const entry = { media: getMediaElements(children) }; + addConditionally(entry, "id", "id", children); + addConditionally(entry, "title", "title", children); + const href = (_a = getOneElement("link", children)) === null || _a === void 0 ? void 0 : _a.attribs["href"]; + if (href) { + entry.link = href; + } + const description = fetch("summary", children) || fetch("content", children); + if (description) { + entry.description = description; + } + const pubDate = fetch("updated", children); + if (pubDate) { + entry.pubDate = new Date(pubDate); + } + return entry; + }), + }; + addConditionally(feed, "id", "id", childs); + addConditionally(feed, "title", "title", childs); + const href = (_a = getOneElement("link", childs)) === null || _a === void 0 ? void 0 : _a.attribs["href"]; + if (href) { + feed.link = href; + } + addConditionally(feed, "description", "subtitle", childs); + const updated = fetch("updated", childs); + if (updated) { + feed.updated = new Date(updated); + } + addConditionally(feed, "author", "email", childs, true); + return feed; +} +/** + * Parse a RSS feed. + * + * @param feedRoot The root of the feed. + * @returns The parsed feed. + */ +function getRssFeed(feedRoot) { + var _a, _b; + const childs = (_b = (_a = getOneElement("channel", feedRoot.children)) === null || _a === void 0 ? void 0 : _a.children) !== null && _b !== void 0 ? _b : []; + const feed = { + type: feedRoot.name.substr(0, 3), + id: "", + items: getElementsByTagName("item", feedRoot.children).map((item) => { + const { children } = item; + const entry = { media: getMediaElements(children) }; + addConditionally(entry, "id", "guid", children); + addConditionally(entry, "title", "title", children); + addConditionally(entry, "link", "link", children); + addConditionally(entry, "description", "description", children); + const pubDate = fetch("pubDate", children); + if (pubDate) + entry.pubDate = new Date(pubDate); + return entry; + }), + }; + addConditionally(feed, "title", "title", childs); + addConditionally(feed, "link", "link", childs); + addConditionally(feed, "description", "description", childs); + const updated = fetch("lastBuildDate", childs); + if (updated) { + feed.updated = new Date(updated); + } + addConditionally(feed, "author", "managingEditor", childs, true); + return feed; +} +const MEDIA_KEYS_STRING = ["url", "type", "lang"]; +const MEDIA_KEYS_INT = [ + "fileSize", + "bitrate", + "framerate", + "samplingrate", + "channels", + "duration", + "height", + "width", +]; +/** + * Get all media elements of a feed item. + * + * @param where Nodes to search in. + * @returns Media elements. + */ +function getMediaElements(where) { + return getElementsByTagName("media:content", where).map((elem) => { + const { attribs } = elem; + const media = { + medium: attribs["medium"], + isDefault: !!attribs["isDefault"], + }; + for (const attrib of MEDIA_KEYS_STRING) { + if (attribs[attrib]) { + media[attrib] = attribs[attrib]; + } + } + for (const attrib of MEDIA_KEYS_INT) { + if (attribs[attrib]) { + media[attrib] = parseInt(attribs[attrib], 10); + } + } + if (attribs["expression"]) { + media.expression = attribs["expression"]; + } + return media; + }); +} +/** + * Get one element by tag name. + * + * @param tagName Tag name to look for + * @param node Node to search in + * @returns The element or null + */ +function getOneElement(tagName, node) { + return getElementsByTagName(tagName, node, true, 1)[0]; +} +/** + * Get the text content of an element with a certain tag name. + * + * @param tagName Tag name to look for. + * @param where Node to search in. + * @param recurse Whether to recurse into child nodes. + * @returns The text content of the element. + */ +function fetch(tagName, where, recurse = false) { + return textContent(getElementsByTagName(tagName, where, recurse, 1)).trim(); +} +/** + * Adds a property to an object if it has a value. + * + * @param obj Object to be extended + * @param prop Property name + * @param tagName Tag name that contains the conditionally added property + * @param where Element to search for the property + * @param recurse Whether to recurse into child nodes. + */ +function addConditionally(obj, prop, tagName, where, recurse = false) { + const val = fetch(tagName, where, recurse); + if (val) + obj[prop] = val; +} +/** + * Checks if an element is a feed root node. + * + * @param value The name of the element to check. + * @returns Whether an element is a feed root node. + */ +function isValidFeed(value) { + return value === "rss" || value === "feed" || value === "rdf:RDF"; +} +//# sourceMappingURL=feeds.js.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/feeds.js.map b/includes/external/addressbook/node_modules/domutils/lib/esm/feeds.js.map new file mode 100644 index 0000000..f38d932 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/feeds.js.map @@ -0,0 +1 @@ +{"version":3,"file":"feeds.js","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["feeds.ts"],"names":[],"mappings":"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"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/helpers.d.ts b/includes/external/addressbook/node_modules/domutils/lib/esm/helpers.d.ts new file mode 100644 index 0000000..bf40d6b --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/helpers.d.ts @@ -0,0 +1,58 @@ +import { AnyNode } from "domhandler"; +/** + * Given an array of nodes, remove any member that is contained by another. + * + * @category Helpers + * @param nodes Nodes to filter. + * @returns Remaining nodes that aren't subtrees of each other. + */ +export declare function removeSubsets(nodes: AnyNode[]): AnyNode[]; +/** + * @category Helpers + * @see {@link http://dom.spec.whatwg.org/#dom-node-comparedocumentposition} + */ +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 values from {@link DocumentPosition}. + * + * 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 + * + * @category Helpers + * @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: AnyNode, nodeB: AnyNode): 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. + * + * @category Helpers + * @param nodes Array of DOM nodes. + * @returns Collection of unique nodes, sorted in document order. + */ +export declare function uniqueSort<T extends AnyNode>(nodes: T[]): T[]; +//# sourceMappingURL=helpers.d.ts.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/helpers.d.ts.map b/includes/external/addressbook/node_modules/domutils/lib/esm/helpers.d.ts.map new file mode 100644 index 0000000..4e0be2d --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/helpers.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"helpers.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,OAAO,EAAc,MAAM,YAAY,CAAC;AAE9D;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CA6BzD;AACD;;;GAGG;AACH,0BAAkB,gBAAgB;IAC9B,YAAY,IAAI;IAChB,SAAS,IAAI;IACb,SAAS,IAAI;IACb,QAAQ,IAAI;IACZ,YAAY,KAAK;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,uBAAuB,CACnC,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,OAAO,GACf,MAAM,CA4CR;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAc7D"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/helpers.js b/includes/external/addressbook/node_modules/domutils/lib/esm/helpers.js new file mode 100644 index 0000000..38c1422 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/helpers.js @@ -0,0 +1,135 @@ +import { hasChildren } from "domhandler"; +/** + * Given an array of nodes, remove any member that is contained by another. + * + * @category Helpers + * @param nodes Nodes to filter. + * @returns Remaining nodes that aren't subtrees of each other. + */ +export function removeSubsets(nodes) { + let idx = nodes.length; + /* + * Check if each node (or one of its ancestors) is already contained in the + * array. + */ + while (--idx >= 0) { + const 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 (let ancestor = node.parent; ancestor; ancestor = ancestor.parent) { + if (nodes.includes(ancestor)) { + nodes.splice(idx, 1); + break; + } + } + } + return nodes; +} +/** + * @category Helpers + * @see {@link http://dom.spec.whatwg.org/#dom-node-comparedocumentposition} + */ +export var DocumentPosition; +(function (DocumentPosition) { + DocumentPosition[DocumentPosition["DISCONNECTED"] = 1] = "DISCONNECTED"; + DocumentPosition[DocumentPosition["PRECEDING"] = 2] = "PRECEDING"; + DocumentPosition[DocumentPosition["FOLLOWING"] = 4] = "FOLLOWING"; + DocumentPosition[DocumentPosition["CONTAINS"] = 8] = "CONTAINS"; + DocumentPosition[DocumentPosition["CONTAINED_BY"] = 16] = "CONTAINED_BY"; +})(DocumentPosition || (DocumentPosition = {})); +/** + * Compare the position of one node against another node in any other document. + * The return value is a bitmask with the values from {@link DocumentPosition}. + * + * 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 + * + * @category Helpers + * @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 function compareDocumentPosition(nodeA, nodeB) { + const aParents = []; + const bParents = []; + if (nodeA === nodeB) { + return 0; + } + let current = hasChildren(nodeA) ? nodeA : nodeA.parent; + while (current) { + aParents.unshift(current); + current = current.parent; + } + current = hasChildren(nodeB) ? nodeB : nodeB.parent; + while (current) { + bParents.unshift(current); + current = current.parent; + } + const maxIdx = Math.min(aParents.length, bParents.length); + let idx = 0; + while (idx < maxIdx && aParents[idx] === bParents[idx]) { + idx++; + } + if (idx === 0) { + return DocumentPosition.DISCONNECTED; + } + const sharedParent = aParents[idx - 1]; + const siblings = sharedParent.children; + const aSibling = aParents[idx]; + const bSibling = bParents[idx]; + if (siblings.indexOf(aSibling) > siblings.indexOf(bSibling)) { + if (sharedParent === nodeB) { + return DocumentPosition.FOLLOWING | DocumentPosition.CONTAINED_BY; + } + return DocumentPosition.FOLLOWING; + } + if (sharedParent === nodeA) { + return DocumentPosition.PRECEDING | DocumentPosition.CONTAINS; + } + return DocumentPosition.PRECEDING; +} +/** + * 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. + * + * @category Helpers + * @param nodes Array of DOM nodes. + * @returns Collection of unique nodes, sorted in document order. + */ +export function uniqueSort(nodes) { + nodes = nodes.filter((node, i, arr) => !arr.includes(node, i + 1)); + nodes.sort((a, b) => { + const relative = compareDocumentPosition(a, b); + if (relative & DocumentPosition.PRECEDING) { + return -1; + } + else if (relative & DocumentPosition.FOLLOWING) { + return 1; + } + return 0; + }); + return nodes; +} +//# sourceMappingURL=helpers.js.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/helpers.js.map b/includes/external/addressbook/node_modules/domutils/lib/esm/helpers.js.map new file mode 100644 index 0000000..8d43dbd --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/helpers.js.map @@ -0,0 +1 @@ +{"version":3,"file":"helpers.js","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["helpers.ts"],"names":[],"mappings":"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"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/index.d.ts b/includes/external/addressbook/node_modules/domutils/lib/esm/index.d.ts new file mode 100644 index 0000000..41ab6e8 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/index.d.ts @@ -0,0 +1,10 @@ +export * from "./stringify.js"; +export * from "./traversal.js"; +export * from "./manipulation.js"; +export * from "./querying.js"; +export * from "./legacy.js"; +export * from "./helpers.js"; +export * from "./feeds.js"; +/** @deprecated Use these methods from `domhandler` directly. */ +export { isTag, isCDATA, isText, isComment, isDocument, hasChildren, } from "domhandler"; +//# sourceMappingURL=index.d.ts.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/index.d.ts.map b/includes/external/addressbook/node_modules/domutils/lib/esm/index.d.ts.map new file mode 100644 index 0000000..1397a26 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,gEAAgE;AAChE,OAAO,EACH,KAAK,EACL,OAAO,EACP,MAAM,EACN,SAAS,EACT,UAAU,EACV,WAAW,GACd,MAAM,YAAY,CAAC"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/index.js b/includes/external/addressbook/node_modules/domutils/lib/esm/index.js new file mode 100644 index 0000000..918c0eb --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/index.js @@ -0,0 +1,10 @@ +export * from "./stringify.js"; +export * from "./traversal.js"; +export * from "./manipulation.js"; +export * from "./querying.js"; +export * from "./legacy.js"; +export * from "./helpers.js"; +export * from "./feeds.js"; +/** @deprecated Use these methods from `domhandler` directly. */ +export { isTag, isCDATA, isText, isComment, isDocument, hasChildren, } from "domhandler"; +//# sourceMappingURL=index.js.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/index.js.map b/includes/external/addressbook/node_modules/domutils/lib/esm/index.js.map new file mode 100644 index 0000000..e358339 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,gEAAgE;AAChE,OAAO,EACH,KAAK,EACL,OAAO,EACP,MAAM,EACN,SAAS,EACT,UAAU,EACV,WAAW,GACd,MAAM,YAAY,CAAC"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/legacy.d.ts b/includes/external/addressbook/node_modules/domutils/lib/esm/legacy.d.ts new file mode 100644 index 0000000..e79592b --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/legacy.d.ts @@ -0,0 +1,58 @@ +import { AnyNode, Element } from "domhandler"; +import type { ElementType } from "domelementtype"; +/** + * An object with keys to check elements against. If a key is `tag_name`, + * `tag_type` or `tag_contains`, it will check the value against that specific + * value. Otherwise, it will check an attribute with the key's name. + * + * @category Legacy Query Functions + */ +export 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); +} +/** + * @category Legacy Query Functions + * @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: AnyNode): boolean; +/** + * @category Legacy Query Functions + * @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: AnyNode | AnyNode[], recurse: boolean, limit?: number): AnyNode[]; +/** + * @category Legacy Query Functions + * @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: AnyNode | AnyNode[], recurse?: boolean): Element | null; +/** + * @category Legacy Query Functions + * @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: AnyNode | AnyNode[], recurse?: boolean, limit?: number): Element[]; +/** + * @category Legacy Query Functions + * @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: AnyNode | AnyNode[], recurse?: boolean, limit?: number): AnyNode[]; +//# sourceMappingURL=legacy.d.ts.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/legacy.d.ts.map b/includes/external/addressbook/node_modules/domutils/lib/esm/legacy.d.ts.map new file mode 100644 index 0000000..1c17c8b --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/legacy.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"legacy.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["legacy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAKlD;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC5B,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;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAG5E;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACvB,OAAO,EAAE,eAAe,EACxB,KAAK,EAAE,OAAO,GAAG,OAAO,EAAE,EAC1B,OAAO,EAAE,OAAO,EAChB,KAAK,SAAW,GACjB,OAAO,EAAE,CAGX;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC1B,EAAE,EAAE,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,EACtC,KAAK,EAAE,OAAO,GAAG,OAAO,EAAE,EAC1B,OAAO,UAAO,GACf,OAAO,GAAG,IAAI,CAGhB;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAChC,OAAO,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,EAC7C,KAAK,EAAE,OAAO,GAAG,OAAO,EAAE,EAC1B,OAAO,UAAO,EACd,KAAK,SAAW,GACjB,OAAO,EAAE,CAOX;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAChC,IAAI,EAAE,WAAW,GAAG,CAAC,CAAC,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,EACpD,KAAK,EAAE,OAAO,GAAG,OAAO,EAAE,EAC1B,OAAO,UAAO,EACd,KAAK,SAAW,GACjB,OAAO,EAAE,CAEX"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/legacy.js b/includes/external/addressbook/node_modules/domutils/lib/esm/legacy.js new file mode 100644 index 0000000..113f470 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/legacy.js @@ -0,0 +1,117 @@ +import { isTag, isText } from "domhandler"; +import { filter, findOne } from "./querying.js"; +const Checks = { + tag_name(name) { + if (typeof name === "function") { + return (elem) => isTag(elem) && name(elem.name); + } + else if (name === "*") { + return isTag; + } + return (elem) => isTag(elem) && elem.name === name; + }, + tag_type(type) { + if (typeof type === "function") { + return (elem) => type(elem.type); + } + return (elem) => elem.type === type; + }, + tag_contains(data) { + if (typeof data === "function") { + return (elem) => isText(elem) && data(elem.data); + } + return (elem) => 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 (elem) => isTag(elem) && value(elem.attribs[attrib]); + } + return (elem) => 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 (elem) => 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) { + const funcs = Object.keys(options).map((key) => { + const value = options[key]; + return Object.prototype.hasOwnProperty.call(Checks, key) + ? Checks[key](value) + : getAttribCheck(key, value); + }); + return funcs.length === 0 ? null : funcs.reduce(combineFuncs); +} +/** + * @category Legacy Query Functions + * @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 function testElement(options, node) { + const test = compileTest(options); + return test ? test(node) : true; +} +/** + * @category Legacy Query Functions + * @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 function getElements(options, nodes, recurse, limit = Infinity) { + const test = compileTest(options); + return test ? filter(test, nodes, recurse, limit) : []; +} +/** + * @category Legacy Query Functions + * @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 function getElementById(id, nodes, recurse = true) { + if (!Array.isArray(nodes)) + nodes = [nodes]; + return findOne(getAttribCheck("id", id), nodes, recurse); +} +/** + * @category Legacy Query Functions + * @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 function getElementsByTagName(tagName, nodes, recurse = true, limit = Infinity) { + return filter(Checks["tag_name"](tagName), nodes, recurse, limit); +} +/** + * @category Legacy Query Functions + * @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 function getElementsByTagType(type, nodes, recurse = true, limit = Infinity) { + return filter(Checks["tag_type"](type), nodes, recurse, limit); +} +//# sourceMappingURL=legacy.js.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/legacy.js.map b/includes/external/addressbook/node_modules/domutils/lib/esm/legacy.js.map new file mode 100644 index 0000000..5bee1a8 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/legacy.js.map @@ -0,0 +1 @@ +{"version":3,"file":"legacy.js","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["legacy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAoB,MAAM,YAAY,CAAC;AAE7D,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAqBhD,MAAM,MAAM,GAGR;IACA,QAAQ,CAAC,IAAI;QACT,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE;YAC5B,OAAO,CAAC,IAAa,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC5D;aAAM,IAAI,IAAI,KAAK,GAAG,EAAE;YACrB,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,CAAC,IAAa,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC;IAChE,CAAC;IACD,QAAQ,CAAC,IAAI;QACT,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE;YAC5B,OAAO,CAAC,IAAa,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC7C;QACD,OAAO,CAAC,IAAa,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC;IACjD,CAAC;IACD,YAAY,CAAC,IAAI;QACb,IAAI,OAAO,IAAI,KAAK,UAAU,EAAE;YAC5B,OAAO,CAAC,IAAa,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC7D;QACD,OAAO,CAAC,IAAa,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC;IACjE,CAAC;CACJ,CAAC;AAEF;;;;;GAKG;AACH,SAAS,cAAc,CACnB,MAAc,EACd,KAAwD;IAExD,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE;QAC7B,OAAO,CAAC,IAAa,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;KACxE;IACD,OAAO,CAAC,IAAa,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC;AAC5E,CAAC;AAED;;;;;GAKG;AACH,SAAS,YAAY,CAAC,CAAW,EAAE,CAAW;IAC1C,OAAO,CAAC,IAAa,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;AACjD,CAAC;AAED;;;;GAIG;AACH,SAAS,WAAW,CAAC,OAAwB;IACzC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QAC3C,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC3B,OAAO,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC;YACpD,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;YACpB,CAAC,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AAClE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,OAAwB,EAAE,IAAa;IAC/D,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACpC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CACvB,OAAwB,EACxB,KAA0B,EAC1B,OAAgB,EAChB,KAAK,GAAG,QAAQ;IAEhB,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC3D,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAC1B,EAAsC,EACtC,KAA0B,EAC1B,OAAO,GAAG,IAAI;IAEd,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC;IAC3C,OAAO,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAChC,OAA6C,EAC7C,KAA0B,EAC1B,OAAO,GAAG,IAAI,EACd,KAAK,GAAG,QAAQ;IAEhB,OAAO,MAAM,CACT,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,EAC3B,KAAK,EACL,OAAO,EACP,KAAK,CACK,CAAC;AACnB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAChC,IAAoD,EACpD,KAA0B,EAC1B,OAAO,GAAG,IAAI,EACd,KAAK,GAAG,QAAQ;IAEhB,OAAO,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAc,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;AAC7E,CAAC"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/manipulation.d.ts b/includes/external/addressbook/node_modules/domutils/lib/esm/manipulation.d.ts new file mode 100644 index 0000000..89763f1 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/manipulation.d.ts @@ -0,0 +1,49 @@ +import type { ChildNode, Element } from "domhandler"; +/** + * Remove an element from the dom + * + * @category Manipulation + * @param elem The element to be removed + */ +export declare function removeElement(elem: ChildNode): void; +/** + * Replace an element in the dom + * + * @category Manipulation + * @param elem The element to be replaced + * @param replacement The element to be added + */ +export declare function replaceElement(elem: ChildNode, replacement: ChildNode): void; +/** + * Append a child to an element. + * + * @category Manipulation + * @param elem The element to append to. + * @param child The element to be added as a child. + */ +export declare function appendChild(elem: Element, child: ChildNode): void; +/** + * Append an element after another. + * + * @category Manipulation + * @param elem The element to append after. + * @param next The element be added. + */ +export declare function append(elem: ChildNode, next: ChildNode): void; +/** + * Prepend a child to an element. + * + * @category Manipulation + * @param elem The element to prepend before. + * @param child The element to be added as a child. + */ +export declare function prependChild(elem: Element, child: ChildNode): void; +/** + * Prepend an element before another. + * + * @category Manipulation + * @param elem The element to prepend before. + * @param prev The element be added. + */ +export declare function prepend(elem: ChildNode, prev: ChildNode): void; +//# sourceMappingURL=manipulation.d.ts.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/manipulation.d.ts.map b/includes/external/addressbook/node_modules/domutils/lib/esm/manipulation.d.ts.map new file mode 100644 index 0000000..dcb4848 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/manipulation.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"manipulation.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["manipulation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI,CAQnD;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,GAAG,IAAI,CAiB5E;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAajE;AAED;;;;;;GAMG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAoB7D;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAalE;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAiB9D"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/manipulation.js b/includes/external/addressbook/node_modules/domutils/lib/esm/manipulation.js new file mode 100644 index 0000000..d228da8 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/manipulation.js @@ -0,0 +1,128 @@ +/** + * Remove an element from the dom + * + * @category Manipulation + * @param elem The element to be removed + */ +export function removeElement(elem) { + if (elem.prev) + elem.prev.next = elem.next; + if (elem.next) + elem.next.prev = elem.prev; + if (elem.parent) { + const childs = elem.parent.children; + childs.splice(childs.lastIndexOf(elem), 1); + } +} +/** + * Replace an element in the dom + * + * @category Manipulation + * @param elem The element to be replaced + * @param replacement The element to be added + */ +export function replaceElement(elem, replacement) { + const prev = (replacement.prev = elem.prev); + if (prev) { + prev.next = replacement; + } + const next = (replacement.next = elem.next); + if (next) { + next.prev = replacement; + } + const parent = (replacement.parent = elem.parent); + if (parent) { + const childs = parent.children; + childs[childs.lastIndexOf(elem)] = replacement; + elem.parent = null; + } +} +/** + * Append a child to an element. + * + * @category Manipulation + * @param elem The element to append to. + * @param child The element to be added as a child. + */ +export function appendChild(elem, child) { + removeElement(child); + child.next = null; + child.parent = elem; + if (elem.children.push(child) > 1) { + const sibling = elem.children[elem.children.length - 2]; + sibling.next = child; + child.prev = sibling; + } + else { + child.prev = null; + } +} +/** + * Append an element after another. + * + * @category Manipulation + * @param elem The element to append after. + * @param next The element be added. + */ +export function append(elem, next) { + removeElement(next); + const { parent } = elem; + const currNext = elem.next; + next.next = currNext; + next.prev = elem; + elem.next = next; + next.parent = parent; + if (currNext) { + currNext.prev = next; + if (parent) { + const childs = parent.children; + childs.splice(childs.lastIndexOf(currNext), 0, next); + } + } + else if (parent) { + parent.children.push(next); + } +} +/** + * Prepend a child to an element. + * + * @category Manipulation + * @param elem The element to prepend before. + * @param child The element to be added as a child. + */ +export function prependChild(elem, child) { + removeElement(child); + child.parent = elem; + child.prev = null; + if (elem.children.unshift(child) !== 1) { + const sibling = elem.children[1]; + sibling.prev = child; + child.next = sibling; + } + else { + child.next = null; + } +} +/** + * Prepend an element before another. + * + * @category Manipulation + * @param elem The element to prepend before. + * @param prev The element be added. + */ +export function prepend(elem, prev) { + removeElement(prev); + const { parent } = elem; + if (parent) { + const 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; +} +//# sourceMappingURL=manipulation.js.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/manipulation.js.map b/includes/external/addressbook/node_modules/domutils/lib/esm/manipulation.js.map new file mode 100644 index 0000000..0d42de0 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/manipulation.js.map @@ -0,0 +1 @@ +{"version":3,"file":"manipulation.js","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["manipulation.ts"],"names":[],"mappings":"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"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/package.json b/includes/external/addressbook/node_modules/domutils/lib/esm/package.json new file mode 100644 index 0000000..089153b --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/package.json @@ -0,0 +1 @@ +{"type":"module"} diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/querying.d.ts b/includes/external/addressbook/node_modules/domutils/lib/esm/querying.d.ts new file mode 100644 index 0000000..3e2296a --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/querying.d.ts @@ -0,0 +1,62 @@ +import { Element, AnyNode } from "domhandler"; +/** + * Search a node and its children for nodes passing a test function. + * + * @category Querying + * @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: AnyNode) => boolean, node: AnyNode | AnyNode[], recurse?: boolean, limit?: number): AnyNode[]; +/** + * Search an array of node and its children for nodes passing a test function. + * + * @category Querying + * @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: AnyNode) => boolean, nodes: AnyNode[], recurse: boolean, limit: number): AnyNode[]; +/** + * Finds the first element inside of an array that matches a test function. + * + * @category Querying + * @param test Function to test nodes on. + * @param nodes Array of nodes to search. + * @returns The first node in the array that passes `test`. + * @deprecated Use `Array.prototype.find` directly. + */ +export declare function findOneChild<T>(test: (elem: T) => boolean, nodes: T[]): T | undefined; +/** + * Finds one element in a tree that passes a test. + * + * @category Querying + * @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: AnyNode[], recurse?: boolean): Element | null; +/** + * @category Querying + * @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 the test. + */ +export declare function existsOne(test: (elem: Element) => boolean, nodes: AnyNode[]): boolean; +/** + * Search and array of nodes and its children for elements passing a test function. + * + * Same as `find`, but limited to elements and with less options, leading to reduced complexity. + * + * @category Querying + * @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: AnyNode[]): Element[]; +//# sourceMappingURL=querying.d.ts.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/querying.d.ts.map b/includes/external/addressbook/node_modules/domutils/lib/esm/querying.d.ts.map new file mode 100644 index 0000000..8b9da87 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/querying.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"querying.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["querying.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAElE;;;;;;;;;GASG;AACH,wBAAgB,MAAM,CAClB,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,EAChC,IAAI,EAAE,OAAO,GAAG,OAAO,EAAE,EACzB,OAAO,UAAO,EACd,KAAK,SAAW,GACjB,OAAO,EAAE,CAGX;AAED;;;;;;;;;GASG;AACH,wBAAgB,IAAI,CAChB,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,EAChC,KAAK,EAAE,OAAO,EAAE,EAChB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,MAAM,GACd,OAAO,EAAE,CAkBX;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAC1B,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,EAC1B,KAAK,EAAE,CAAC,EAAE,GACX,CAAC,GAAG,SAAS,CAEf;AAED;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CACnB,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,EAChC,KAAK,EAAE,OAAO,EAAE,EAChB,OAAO,UAAO,GACf,OAAO,GAAG,IAAI,CAehB;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CACrB,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,EAChC,KAAK,EAAE,OAAO,EAAE,GACjB,OAAO,CAQT;AAED;;;;;;;;;GASG;AACH,wBAAgB,OAAO,CACnB,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,EAChC,KAAK,EAAE,OAAO,EAAE,GACjB,OAAO,EAAE,CAYX"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/querying.js b/includes/external/addressbook/node_modules/domutils/lib/esm/querying.js new file mode 100644 index 0000000..c4b3a8d --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/querying.js @@ -0,0 +1,119 @@ +import { isTag, hasChildren } from "domhandler"; +/** + * Search a node and its children for nodes passing a test function. + * + * @category Querying + * @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 function filter(test, node, recurse = true, limit = Infinity) { + if (!Array.isArray(node)) + node = [node]; + return find(test, node, recurse, limit); +} +/** + * Search an array of node and its children for nodes passing a test function. + * + * @category Querying + * @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 function find(test, nodes, recurse, limit) { + const result = []; + for (const elem of nodes) { + if (test(elem)) { + result.push(elem); + if (--limit <= 0) + break; + } + if (recurse && hasChildren(elem) && elem.children.length > 0) { + const children = find(test, elem.children, recurse, limit); + result.push(...children); + limit -= children.length; + if (limit <= 0) + break; + } + } + return result; +} +/** + * Finds the first element inside of an array that matches a test function. + * + * @category Querying + * @param test Function to test nodes on. + * @param nodes Array of nodes to search. + * @returns The first node in the array that passes `test`. + * @deprecated Use `Array.prototype.find` directly. + */ +export function findOneChild(test, nodes) { + return nodes.find(test); +} +/** + * Finds one element in a tree that passes a test. + * + * @category Querying + * @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 function findOne(test, nodes, recurse = true) { + let elem = null; + for (let i = 0; i < nodes.length && !elem; i++) { + const checked = nodes[i]; + if (!isTag(checked)) { + continue; + } + else if (test(checked)) { + elem = checked; + } + else if (recurse && checked.children.length > 0) { + elem = findOne(test, checked.children, true); + } + } + return elem; +} +/** + * @category Querying + * @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 the test. + */ +export function existsOne(test, nodes) { + return nodes.some((checked) => isTag(checked) && + (test(checked) || + (checked.children.length > 0 && + existsOne(test, checked.children)))); +} +/** + * Search and array of nodes and its children for elements passing a test function. + * + * Same as `find`, but limited to elements and with less options, leading to reduced complexity. + * + * @category Querying + * @param test Function to test nodes on. + * @param nodes Array of nodes to search. + * @returns All nodes passing `test`. + */ +export function findAll(test, nodes) { + var _a; + const result = []; + const stack = nodes.filter(isTag); + let elem; + while ((elem = stack.shift())) { + const children = (_a = elem.children) === null || _a === void 0 ? void 0 : _a.filter(isTag); + if (children && children.length > 0) { + stack.unshift(...children); + } + if (test(elem)) + result.push(elem); + } + return result; +} +//# sourceMappingURL=querying.js.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/querying.js.map b/includes/external/addressbook/node_modules/domutils/lib/esm/querying.js.map new file mode 100644 index 0000000..6f03055 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/querying.js.map @@ -0,0 +1 @@ +{"version":3,"file":"querying.js","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["querying.ts"],"names":[],"mappings":"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"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/stringify.d.ts b/includes/external/addressbook/node_modules/domutils/lib/esm/stringify.d.ts new file mode 100644 index 0000000..a643f70 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/stringify.d.ts @@ -0,0 +1,46 @@ +import { AnyNode } from "domhandler"; +import { DomSerializerOptions } from "dom-serializer"; +/** + * @category Stringify + * @deprecated Use the `dom-serializer` module directly. + * @param node Node to get the outer HTML of. + * @param options Options for serialization. + * @returns `node`'s outer HTML. + */ +export declare function getOuterHTML(node: AnyNode | ArrayLike<AnyNode>, options?: DomSerializerOptions): string; +/** + * @category Stringify + * @deprecated Use the `dom-serializer` module directly. + * @param node Node to get the inner HTML of. + * @param options Options for serialization. + * @returns `node`'s inner HTML. + */ +export declare function getInnerHTML(node: AnyNode, options?: DomSerializerOptions): string; +/** + * Get a node's inner text. Same as `textContent`, but inserts newlines for `<br>` tags. + * + * @category Stringify + * @deprecated Use `textContent` instead. + * @param node Node to get the inner text of. + * @returns `node`'s inner text. + */ +export declare function getText(node: AnyNode | AnyNode[]): string; +/** + * Get a node's text content. + * + * @category Stringify + * @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: AnyNode | AnyNode[]): string; +/** + * Get a node's inner text. + * + * @category Stringify + * @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: AnyNode | AnyNode[]): string; +//# sourceMappingURL=stringify.d.ts.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/stringify.d.ts.map b/includes/external/addressbook/node_modules/domutils/lib/esm/stringify.d.ts.map new file mode 100644 index 0000000..8da073b --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/stringify.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"stringify.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["stringify.ts"],"names":[],"mappings":"AAAA,OAAO,EAKH,OAAO,EAEV,MAAM,YAAY,CAAC;AACpB,OAAmB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGlE;;;;;;GAMG;AACH,wBAAgB,YAAY,CACxB,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,EAClC,OAAO,CAAC,EAAE,oBAAoB,GAC/B,MAAM,CAER;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CACxB,IAAI,EAAE,OAAO,EACb,OAAO,CAAC,EAAE,oBAAoB,GAC/B,MAAM,CAIR;AAED;;;;;;;GAOG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,EAAE,GAAG,MAAM,CAMzD;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,EAAE,GAAG,MAAM,CAO7D;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,EAAE,GAAG,MAAM,CAO3D"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/stringify.js b/includes/external/addressbook/node_modules/domutils/lib/esm/stringify.js new file mode 100644 index 0000000..1c389e6 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/stringify.js @@ -0,0 +1,81 @@ +import { isTag, isCDATA, isText, hasChildren, isComment, } from "domhandler"; +import renderHTML from "dom-serializer"; +import { ElementType } from "domelementtype"; +/** + * @category Stringify + * @deprecated Use the `dom-serializer` module directly. + * @param node Node to get the outer HTML of. + * @param options Options for serialization. + * @returns `node`'s outer HTML. + */ +export function getOuterHTML(node, options) { + return renderHTML(node, options); +} +/** + * @category Stringify + * @deprecated Use the `dom-serializer` module directly. + * @param node Node to get the inner HTML of. + * @param options Options for serialization. + * @returns `node`'s inner HTML. + */ +export function getInnerHTML(node, options) { + return hasChildren(node) + ? node.children.map((node) => getOuterHTML(node, options)).join("") + : ""; +} +/** + * Get a node's inner text. Same as `textContent`, but inserts newlines for `<br>` tags. + * + * @category Stringify + * @deprecated Use `textContent` instead. + * @param node Node to get the inner text of. + * @returns `node`'s inner text. + */ +export function getText(node) { + if (Array.isArray(node)) + return node.map(getText).join(""); + if (isTag(node)) + return node.name === "br" ? "\n" : getText(node.children); + if (isCDATA(node)) + return getText(node.children); + if (isText(node)) + return node.data; + return ""; +} +/** + * Get a node's text content. + * + * @category Stringify + * @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 function textContent(node) { + if (Array.isArray(node)) + return node.map(textContent).join(""); + if (hasChildren(node) && !isComment(node)) { + return textContent(node.children); + } + if (isText(node)) + return node.data; + return ""; +} +/** + * Get a node's inner text. + * + * @category Stringify + * @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 function innerText(node) { + if (Array.isArray(node)) + return node.map(innerText).join(""); + if (hasChildren(node) && (node.type === ElementType.Tag || isCDATA(node))) { + return innerText(node.children); + } + if (isText(node)) + return node.data; + return ""; +} +//# sourceMappingURL=stringify.js.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/stringify.js.map b/includes/external/addressbook/node_modules/domutils/lib/esm/stringify.js.map new file mode 100644 index 0000000..8fbb595 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/stringify.js.map @@ -0,0 +1 @@ +{"version":3,"file":"stringify.js","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["stringify.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,EACL,OAAO,EACP,MAAM,EACN,WAAW,EAEX,SAAS,GACZ,MAAM,YAAY,CAAC;AACpB,OAAO,UAAoC,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CACxB,IAAkC,EAClC,OAA8B;IAE9B,OAAO,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CACxB,IAAa,EACb,OAA8B;IAE9B,OAAO,WAAW,CAAC,IAAI,CAAC;QACpB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QACnE,CAAC,CAAC,EAAE,CAAC;AACb,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,OAAO,CAAC,IAAyB;IAC7C,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3D,IAAI,KAAK,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3E,IAAI,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,MAAM,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC;IACnC,OAAO,EAAE,CAAC;AACd,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CAAC,IAAyB;IACjD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/D,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;QACvC,OAAO,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KACrC;IACD,IAAI,MAAM,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC;IACnC,OAAO,EAAE,CAAC;AACd,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,SAAS,CAAC,IAAyB;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7D,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE;QACvE,OAAO,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KACnC;IACD,IAAI,MAAM,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC;IACnC,OAAO,EAAE,CAAC;AACd,CAAC"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/traversal.d.ts b/includes/external/addressbook/node_modules/domutils/lib/esm/traversal.d.ts new file mode 100644 index 0000000..213e6a9 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/traversal.d.ts @@ -0,0 +1,65 @@ +import { AnyNode, ChildNode, Element, ParentNode } from "domhandler"; +/** + * Get a node's children. + * + * @category Traversal + * @param elem Node to get the children of. + * @returns `elem`'s children, or an empty array. + */ +export declare function getChildren(elem: AnyNode): ChildNode[]; +export declare function getParent(elem: AnyNode): ParentNode | 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. + * + * @category Traversal + * @param elem Element to get the siblings of. + * @returns `elem`'s siblings. + */ +export declare function getSiblings(elem: AnyNode): AnyNode[]; +/** + * Gets an attribute from an element. + * + * @category Traversal + * @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. + * + * @category Traversal + * @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. + * + * @category Traversal + * @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. + * + * @category Traversal + * @param elem The element to get the next sibling of. + * @returns `elem`'s next sibling that is a tag. + */ +export declare function nextElementSibling(elem: AnyNode): Element | null; +/** + * Returns the previous element sibling of a node. + * + * @category Traversal + * @param elem The element to get the previous sibling of. + * @returns `elem`'s previous sibling that is a tag. + */ +export declare function prevElementSibling(elem: AnyNode): Element | null; +//# sourceMappingURL=traversal.d.ts.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/traversal.d.ts.map b/includes/external/addressbook/node_modules/domutils/lib/esm/traversal.d.ts.map new file mode 100644 index 0000000..cdf1710 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/traversal.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"traversal.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["traversal.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,OAAO,EACP,SAAS,EACT,OAAO,EACP,UAAU,EAEb,MAAM,YAAY,CAAC;AAEpB;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,EAAE,CAEtD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,OAAO,GAAG,UAAU,GAAG,IAAI,CAAC;AAY5D;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,EAAE,CAepD;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC7B,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,MAAM,GACb,MAAM,GAAG,SAAS,CAEpB;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAM9D;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAE7C;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,IAAI,CAIhE;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,IAAI,CAIhE"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/traversal.js b/includes/external/addressbook/node_modules/domutils/lib/esm/traversal.js new file mode 100644 index 0000000..71dddd7 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/traversal.js @@ -0,0 +1,110 @@ +import { isTag, hasChildren, } from "domhandler"; +/** + * Get a node's children. + * + * @category Traversal + * @param elem Node to get the children of. + * @returns `elem`'s children, or an empty array. + */ +export function getChildren(elem) { + return hasChildren(elem) ? elem.children : []; +} +/** + * Get a node's parent. + * + * @category Traversal + * @param elem Node to get the parent of. + * @returns `elem`'s parent node. + */ +export function getParent(elem) { + return elem.parent || 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. + * + * @category Traversal + * @param elem Element to get the siblings of. + * @returns `elem`'s siblings. + */ +export function getSiblings(elem) { + const parent = getParent(elem); + if (parent != null) + return getChildren(parent); + const siblings = [elem]; + let { prev, next } = elem; + while (prev != null) { + siblings.unshift(prev); + ({ prev } = prev); + } + while (next != null) { + siblings.push(next); + ({ next } = next); + } + return siblings; +} +/** + * Gets an attribute from an element. + * + * @category Traversal + * @param elem Element to check. + * @param name Attribute name to retrieve. + * @returns The element's attribute value, or `undefined`. + */ +export function getAttributeValue(elem, name) { + var _a; + return (_a = elem.attribs) === null || _a === void 0 ? void 0 : _a[name]; +} +/** + * Checks whether an element has an attribute. + * + * @category Traversal + * @param elem Element to check. + * @param name Attribute name to look for. + * @returns Returns whether `elem` has the attribute `name`. + */ +export function hasAttrib(elem, name) { + return (elem.attribs != null && + Object.prototype.hasOwnProperty.call(elem.attribs, name) && + elem.attribs[name] != null); +} +/** + * Get the tag name of an element. + * + * @category Traversal + * @param elem The element to get the name for. + * @returns The tag name of `elem`. + */ +export function getName(elem) { + return elem.name; +} +/** + * Returns the next element sibling of a node. + * + * @category Traversal + * @param elem The element to get the next sibling of. + * @returns `elem`'s next sibling that is a tag. + */ +export function nextElementSibling(elem) { + let { next } = elem; + while (next !== null && !isTag(next)) + ({ next } = next); + return next; +} +/** + * Returns the previous element sibling of a node. + * + * @category Traversal + * @param elem The element to get the previous sibling of. + * @returns `elem`'s previous sibling that is a tag. + */ +export function prevElementSibling(elem) { + let { prev } = elem; + while (prev !== null && !isTag(prev)) + ({ prev } = prev); + return prev; +} +//# sourceMappingURL=traversal.js.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/esm/traversal.js.map b/includes/external/addressbook/node_modules/domutils/lib/esm/traversal.js.map new file mode 100644 index 0000000..cf3c398 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/esm/traversal.js.map @@ -0,0 +1 @@ +{"version":3,"file":"traversal.js","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["traversal.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,EAKL,WAAW,GACd,MAAM,YAAY,CAAC;AAEpB;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,IAAa;IACrC,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,CAAC;AAGD;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CAAC,IAAa;IACnC,OAAO,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC;AAC/B,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,WAAW,CAAC,IAAa;IACrC,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,MAAM,IAAI,IAAI;QAAE,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;IAE/C,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,CAAC;IACxB,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IAC1B,OAAO,IAAI,IAAI,IAAI,EAAE;QACjB,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;KACrB;IACD,OAAO,IAAI,IAAI,IAAI,EAAE;QACjB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;KACrB;IACD,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAC7B,IAAa,EACb,IAAY;;IAEZ,OAAO,MAAA,IAAI,CAAC,OAAO,0CAAG,IAAI,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,SAAS,CAAC,IAAa,EAAE,IAAY;IACjD,OAAO,CACH,IAAI,CAAC,OAAO,IAAI,IAAI;QACpB,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC;QACxD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAC7B,CAAC;AACN,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,OAAO,CAAC,IAAa;IACjC,OAAO,IAAI,CAAC,IAAI,CAAC;AACrB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAa;IAC5C,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IACpB,OAAO,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAAE,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;IACxD,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAa;IAC5C,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IACpB,OAAO,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAAE,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC;IACxD,OAAO,IAAI,CAAC;AAChB,CAAC"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/feeds.d.ts b/includes/external/addressbook/node_modules/domutils/lib/feeds.d.ts new file mode 100644 index 0000000..5ba60c7 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/feeds.d.ts @@ -0,0 +1,71 @@ +import type { AnyNode } from "domhandler"; +/** + * The type of a media item. + * + * @category Feeds + */ +export declare type FeedItemMediaMedium = "image" | "audio" | "video" | "document" | "executable"; +/** + * The type of a media item. + * + * @category Feeds + */ +export declare type FeedItemMediaExpression = "sample" | "full" | "nonstop"; +/** + * A media item of a feed entry. + * + * @category Feeds + */ +export interface FeedItemMedia { + medium: FeedItemMediaMedium | undefined; + isDefault: boolean; + url?: string; + fileSize?: number; + type?: string; + expression?: FeedItemMediaExpression; + bitrate?: number; + framerate?: number; + samplingrate?: number; + channels?: number; + duration?: number; + height?: number; + width?: number; + lang?: string; +} +/** + * An entry of a feed. + * + * @category Feeds + */ +export interface FeedItem { + id?: string; + title?: string; + link?: string; + description?: string; + pubDate?: Date; + media: FeedItemMedia[]; +} +/** + * The root of a feed. + * + * @category Feeds + */ +export interface Feed { + type: string; + id?: string; + title?: string; + link?: string; + description?: string; + updated?: Date; + author?: string; + items: FeedItem[]; +} +/** + * Get the feed object from the root of a DOM tree. + * + * @category Feeds + * @param doc - The DOM to to extract the feed from. + * @returns The feed. + */ +export declare function getFeed(doc: AnyNode[]): Feed | null; +//# sourceMappingURL=feeds.d.ts.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/feeds.d.ts.map b/includes/external/addressbook/node_modules/domutils/lib/feeds.d.ts.map new file mode 100644 index 0000000..7228bc1 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/feeds.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"feeds.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["feeds.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAW,MAAM,YAAY,CAAC;AAInD;;;;GAIG;AACH,oBAAY,mBAAmB,GACzB,OAAO,GACP,OAAO,GACP,OAAO,GACP,UAAU,GACV,YAAY,CAAC;AAEnB;;;;GAIG;AACH,oBAAY,uBAAuB,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;AAEpE;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC1B,MAAM,EAAE,mBAAmB,GAAG,SAAS,CAAC;IACxC,SAAS,EAAE,OAAO,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,uBAAuB,CAAC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,KAAK,EAAE,aAAa,EAAE,CAAC;CAC1B;AAED;;;;GAIG;AACH,MAAM,WAAW,IAAI;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,QAAQ,EAAE,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,IAAI,GAAG,IAAI,CAQnD"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/feeds.js b/includes/external/addressbook/node_modules/domutils/lib/feeds.js new file mode 100644 index 0000000..b68d5b4 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/feeds.js @@ -0,0 +1,191 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.getFeed = void 0; +var stringify_js_1 = require("./stringify.js"); +var legacy_js_1 = require("./legacy.js"); +/** + * Get the feed object from the root of a DOM tree. + * + * @category Feeds + * @param doc - The DOM to to extract the feed from. + * @returns The feed. + */ +function getFeed(doc) { + var feedRoot = getOneElement(isValidFeed, doc); + return !feedRoot + ? null + : feedRoot.name === "feed" + ? getAtomFeed(feedRoot) + : getRssFeed(feedRoot); +} +exports.getFeed = getFeed; +/** + * Parse an Atom feed. + * + * @param feedRoot The root of the feed. + * @returns The parsed feed. + */ +function getAtomFeed(feedRoot) { + var _a; + var childs = feedRoot.children; + var feed = { + type: "atom", + items: (0, legacy_js_1.getElementsByTagName)("entry", childs).map(function (item) { + var _a; + var children = item.children; + var entry = { media: getMediaElements(children) }; + addConditionally(entry, "id", "id", children); + addConditionally(entry, "title", "title", children); + var href = (_a = getOneElement("link", children)) === null || _a === void 0 ? void 0 : _a.attribs["href"]; + if (href) { + entry.link = href; + } + var description = fetch("summary", children) || fetch("content", children); + if (description) { + entry.description = description; + } + var pubDate = fetch("updated", children); + if (pubDate) { + entry.pubDate = new Date(pubDate); + } + return entry; + }), + }; + addConditionally(feed, "id", "id", childs); + addConditionally(feed, "title", "title", childs); + var href = (_a = getOneElement("link", childs)) === null || _a === void 0 ? void 0 : _a.attribs["href"]; + if (href) { + feed.link = href; + } + addConditionally(feed, "description", "subtitle", childs); + var updated = fetch("updated", childs); + if (updated) { + feed.updated = new Date(updated); + } + addConditionally(feed, "author", "email", childs, true); + return feed; +} +/** + * Parse a RSS feed. + * + * @param feedRoot The root of the feed. + * @returns The parsed feed. + */ +function getRssFeed(feedRoot) { + var _a, _b; + var childs = (_b = (_a = getOneElement("channel", feedRoot.children)) === null || _a === void 0 ? void 0 : _a.children) !== null && _b !== void 0 ? _b : []; + var feed = { + type: feedRoot.name.substr(0, 3), + id: "", + items: (0, legacy_js_1.getElementsByTagName)("item", feedRoot.children).map(function (item) { + var children = item.children; + var entry = { media: getMediaElements(children) }; + addConditionally(entry, "id", "guid", children); + addConditionally(entry, "title", "title", children); + addConditionally(entry, "link", "link", children); + addConditionally(entry, "description", "description", children); + var pubDate = fetch("pubDate", children); + if (pubDate) + entry.pubDate = new Date(pubDate); + return entry; + }), + }; + addConditionally(feed, "title", "title", childs); + addConditionally(feed, "link", "link", childs); + addConditionally(feed, "description", "description", childs); + var updated = fetch("lastBuildDate", childs); + if (updated) { + feed.updated = new Date(updated); + } + addConditionally(feed, "author", "managingEditor", childs, true); + return feed; +} +var MEDIA_KEYS_STRING = ["url", "type", "lang"]; +var MEDIA_KEYS_INT = [ + "fileSize", + "bitrate", + "framerate", + "samplingrate", + "channels", + "duration", + "height", + "width", +]; +/** + * Get all media elements of a feed item. + * + * @param where Nodes to search in. + * @returns Media elements. + */ +function getMediaElements(where) { + return (0, legacy_js_1.getElementsByTagName)("media:content", where).map(function (elem) { + var attribs = elem.attribs; + var media = { + medium: attribs["medium"], + isDefault: !!attribs["isDefault"], + }; + for (var _i = 0, MEDIA_KEYS_STRING_1 = MEDIA_KEYS_STRING; _i < MEDIA_KEYS_STRING_1.length; _i++) { + var attrib = MEDIA_KEYS_STRING_1[_i]; + if (attribs[attrib]) { + media[attrib] = attribs[attrib]; + } + } + for (var _a = 0, MEDIA_KEYS_INT_1 = MEDIA_KEYS_INT; _a < MEDIA_KEYS_INT_1.length; _a++) { + var attrib = MEDIA_KEYS_INT_1[_a]; + if (attribs[attrib]) { + media[attrib] = parseInt(attribs[attrib], 10); + } + } + if (attribs["expression"]) { + media.expression = attribs["expression"]; + } + return media; + }); +} +/** + * Get one element by tag name. + * + * @param tagName Tag name to look for + * @param node Node to search in + * @returns The element or null + */ +function getOneElement(tagName, node) { + return (0, legacy_js_1.getElementsByTagName)(tagName, node, true, 1)[0]; +} +/** + * Get the text content of an element with a certain tag name. + * + * @param tagName Tag name to look for. + * @param where Node to search in. + * @param recurse Whether to recurse into child nodes. + * @returns The text content of the element. + */ +function fetch(tagName, where, recurse) { + if (recurse === void 0) { recurse = false; } + return (0, stringify_js_1.textContent)((0, legacy_js_1.getElementsByTagName)(tagName, where, recurse, 1)).trim(); +} +/** + * Adds a property to an object if it has a value. + * + * @param obj Object to be extended + * @param prop Property name + * @param tagName Tag name that contains the conditionally added property + * @param where Element to search for the property + * @param recurse Whether to recurse into child nodes. + */ +function addConditionally(obj, prop, tagName, where, recurse) { + if (recurse === void 0) { recurse = false; } + var val = fetch(tagName, where, recurse); + if (val) + obj[prop] = val; +} +/** + * Checks if an element is a feed root node. + * + * @param value The name of the element to check. + * @returns Whether an element is a feed root node. + */ +function isValidFeed(value) { + return value === "rss" || value === "feed" || value === "rdf:RDF"; +} +//# sourceMappingURL=feeds.js.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/feeds.js.map b/includes/external/addressbook/node_modules/domutils/lib/feeds.js.map new file mode 100644 index 0000000..66878ec --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/feeds.js.map @@ -0,0 +1 @@ +{"version":3,"file":"feeds.js","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["feeds.ts"],"names":[],"mappings":"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"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/helpers.d.ts b/includes/external/addressbook/node_modules/domutils/lib/helpers.d.ts new file mode 100644 index 0000000..bf40d6b --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/helpers.d.ts @@ -0,0 +1,58 @@ +import { AnyNode } from "domhandler"; +/** + * Given an array of nodes, remove any member that is contained by another. + * + * @category Helpers + * @param nodes Nodes to filter. + * @returns Remaining nodes that aren't subtrees of each other. + */ +export declare function removeSubsets(nodes: AnyNode[]): AnyNode[]; +/** + * @category Helpers + * @see {@link http://dom.spec.whatwg.org/#dom-node-comparedocumentposition} + */ +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 values from {@link DocumentPosition}. + * + * 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 + * + * @category Helpers + * @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: AnyNode, nodeB: AnyNode): 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. + * + * @category Helpers + * @param nodes Array of DOM nodes. + * @returns Collection of unique nodes, sorted in document order. + */ +export declare function uniqueSort<T extends AnyNode>(nodes: T[]): T[]; +//# sourceMappingURL=helpers.d.ts.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/helpers.d.ts.map b/includes/external/addressbook/node_modules/domutils/lib/helpers.d.ts.map new file mode 100644 index 0000000..4e0be2d --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/helpers.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"helpers.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,OAAO,EAAc,MAAM,YAAY,CAAC;AAE9D;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CA6BzD;AACD;;;GAGG;AACH,0BAAkB,gBAAgB;IAC9B,YAAY,IAAI;IAChB,SAAS,IAAI;IACb,SAAS,IAAI;IACb,QAAQ,IAAI;IACZ,YAAY,KAAK;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,uBAAuB,CACnC,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,OAAO,GACf,MAAM,CA4CR;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAc7D"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/helpers.js b/includes/external/addressbook/node_modules/domutils/lib/helpers.js new file mode 100644 index 0000000..31bd4ac --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/helpers.js @@ -0,0 +1,141 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.uniqueSort = exports.compareDocumentPosition = exports.DocumentPosition = exports.removeSubsets = void 0; +var domhandler_1 = require("domhandler"); +/** + * Given an array of nodes, remove any member that is contained by another. + * + * @category Helpers + * @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; +/** + * @category Helpers + * @see {@link http://dom.spec.whatwg.org/#dom-node-comparedocumentposition} + */ +var DocumentPosition; +(function (DocumentPosition) { + DocumentPosition[DocumentPosition["DISCONNECTED"] = 1] = "DISCONNECTED"; + DocumentPosition[DocumentPosition["PRECEDING"] = 2] = "PRECEDING"; + DocumentPosition[DocumentPosition["FOLLOWING"] = 4] = "FOLLOWING"; + DocumentPosition[DocumentPosition["CONTAINS"] = 8] = "CONTAINS"; + DocumentPosition[DocumentPosition["CONTAINED_BY"] = 16] = "CONTAINED_BY"; +})(DocumentPosition = exports.DocumentPosition || (exports.DocumentPosition = {})); +/** + * Compare the position of one node against another node in any other document. + * The return value is a bitmask with the values from {@link DocumentPosition}. + * + * 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 + * + * @category Helpers + * @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 = (0, domhandler_1.hasChildren)(nodeA) ? nodeA : nodeA.parent; + while (current) { + aParents.unshift(current); + current = current.parent; + } + current = (0, 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 DocumentPosition.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 DocumentPosition.FOLLOWING | DocumentPosition.CONTAINED_BY; + } + return DocumentPosition.FOLLOWING; + } + if (sharedParent === nodeA) { + return DocumentPosition.PRECEDING | DocumentPosition.CONTAINS; + } + return DocumentPosition.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. + * + * @category Helpers + * @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 & DocumentPosition.PRECEDING) { + return -1; + } + else if (relative & DocumentPosition.FOLLOWING) { + return 1; + } + return 0; + }); + return nodes; +} +exports.uniqueSort = uniqueSort; +//# sourceMappingURL=helpers.js.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/helpers.js.map b/includes/external/addressbook/node_modules/domutils/lib/helpers.js.map new file mode 100644 index 0000000..3a71038 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/helpers.js.map @@ -0,0 +1 @@ +{"version":3,"file":"helpers.js","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["helpers.ts"],"names":[],"mappings":"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"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/index.d.ts b/includes/external/addressbook/node_modules/domutils/lib/index.d.ts new file mode 100644 index 0000000..41ab6e8 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/index.d.ts @@ -0,0 +1,10 @@ +export * from "./stringify.js"; +export * from "./traversal.js"; +export * from "./manipulation.js"; +export * from "./querying.js"; +export * from "./legacy.js"; +export * from "./helpers.js"; +export * from "./feeds.js"; +/** @deprecated Use these methods from `domhandler` directly. */ +export { isTag, isCDATA, isText, isComment, isDocument, hasChildren, } from "domhandler"; +//# sourceMappingURL=index.d.ts.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/index.d.ts.map b/includes/external/addressbook/node_modules/domutils/lib/index.d.ts.map new file mode 100644 index 0000000..1397a26 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,gEAAgE;AAChE,OAAO,EACH,KAAK,EACL,OAAO,EACP,MAAM,EACN,SAAS,EACT,UAAU,EACV,WAAW,GACd,MAAM,YAAY,CAAC"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/index.js b/includes/external/addressbook/node_modules/domutils/lib/index.js new file mode 100644 index 0000000..1eb8e26 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/index.js @@ -0,0 +1,33 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (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.js"), exports); +__exportStar(require("./traversal.js"), exports); +__exportStar(require("./manipulation.js"), exports); +__exportStar(require("./querying.js"), exports); +__exportStar(require("./legacy.js"), exports); +__exportStar(require("./helpers.js"), exports); +__exportStar(require("./feeds.js"), exports); +/** @deprecated Use these methods from `domhandler` directly. */ +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; } }); +//# sourceMappingURL=index.js.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/index.js.map b/includes/external/addressbook/node_modules/domutils/lib/index.js.map new file mode 100644 index 0000000..805f2cd --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,iDAA+B;AAC/B,iDAA+B;AAC/B,oDAAkC;AAClC,gDAA8B;AAC9B,8CAA4B;AAC5B,+CAA6B;AAC7B,6CAA2B;AAC3B,gEAAgE;AAChE,yCAOoB;AANhB,mGAAA,KAAK,OAAA;AACL,qGAAA,OAAO,OAAA;AACP,oGAAA,MAAM,OAAA;AACN,uGAAA,SAAS,OAAA;AACT,wGAAA,UAAU,OAAA;AACV,yGAAA,WAAW,OAAA"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/legacy.d.ts b/includes/external/addressbook/node_modules/domutils/lib/legacy.d.ts new file mode 100644 index 0000000..e79592b --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/legacy.d.ts @@ -0,0 +1,58 @@ +import { AnyNode, Element } from "domhandler"; +import type { ElementType } from "domelementtype"; +/** + * An object with keys to check elements against. If a key is `tag_name`, + * `tag_type` or `tag_contains`, it will check the value against that specific + * value. Otherwise, it will check an attribute with the key's name. + * + * @category Legacy Query Functions + */ +export 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); +} +/** + * @category Legacy Query Functions + * @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: AnyNode): boolean; +/** + * @category Legacy Query Functions + * @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: AnyNode | AnyNode[], recurse: boolean, limit?: number): AnyNode[]; +/** + * @category Legacy Query Functions + * @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: AnyNode | AnyNode[], recurse?: boolean): Element | null; +/** + * @category Legacy Query Functions + * @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: AnyNode | AnyNode[], recurse?: boolean, limit?: number): Element[]; +/** + * @category Legacy Query Functions + * @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: AnyNode | AnyNode[], recurse?: boolean, limit?: number): AnyNode[]; +//# sourceMappingURL=legacy.d.ts.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/legacy.d.ts.map b/includes/external/addressbook/node_modules/domutils/lib/legacy.d.ts.map new file mode 100644 index 0000000..1c17c8b --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/legacy.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"legacy.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["legacy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAKlD;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC5B,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;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAG5E;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACvB,OAAO,EAAE,eAAe,EACxB,KAAK,EAAE,OAAO,GAAG,OAAO,EAAE,EAC1B,OAAO,EAAE,OAAO,EAChB,KAAK,SAAW,GACjB,OAAO,EAAE,CAGX;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC1B,EAAE,EAAE,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,EACtC,KAAK,EAAE,OAAO,GAAG,OAAO,EAAE,EAC1B,OAAO,UAAO,GACf,OAAO,GAAG,IAAI,CAGhB;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAChC,OAAO,EAAE,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,EAC7C,KAAK,EAAE,OAAO,GAAG,OAAO,EAAE,EAC1B,OAAO,UAAO,EACd,KAAK,SAAW,GACjB,OAAO,EAAE,CAOX;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAChC,IAAI,EAAE,WAAW,GAAG,CAAC,CAAC,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,EACpD,KAAK,EAAE,OAAO,GAAG,OAAO,EAAE,EAC1B,OAAO,UAAO,EACd,KAAK,SAAW,GACjB,OAAO,EAAE,CAEX"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/legacy.js b/includes/external/addressbook/node_modules/domutils/lib/legacy.js new file mode 100644 index 0000000..fe482c1 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/legacy.js @@ -0,0 +1,131 @@ +"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_js_1 = require("./querying.js"); +var Checks = { + tag_name: function (name) { + if (typeof name === "function") { + return function (elem) { return (0, domhandler_1.isTag)(elem) && name(elem.name); }; + } + else if (name === "*") { + return domhandler_1.isTag; + } + return function (elem) { return (0, 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 (0, domhandler_1.isText)(elem) && data(elem.data); }; + } + return function (elem) { return (0, 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 (0, domhandler_1.isTag)(elem) && value(elem.attribs[attrib]); }; + } + return function (elem) { return (0, 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 Object.prototype.hasOwnProperty.call(Checks, key) + ? Checks[key](value) + : getAttribCheck(key, value); + }); + return funcs.length === 0 ? null : funcs.reduce(combineFuncs); +} +/** + * @category Legacy Query Functions + * @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; +/** + * @category Legacy Query Functions + * @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 ? (0, querying_js_1.filter)(test, nodes, recurse, limit) : []; +} +exports.getElements = getElements; +/** + * @category Legacy Query Functions + * @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 (0, querying_js_1.findOne)(getAttribCheck("id", id), nodes, recurse); +} +exports.getElementById = getElementById; +/** + * @category Legacy Query Functions + * @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 (0, querying_js_1.filter)(Checks["tag_name"](tagName), nodes, recurse, limit); +} +exports.getElementsByTagName = getElementsByTagName; +/** + * @category Legacy Query Functions + * @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 (0, querying_js_1.filter)(Checks["tag_type"](type), nodes, recurse, limit); +} +exports.getElementsByTagType = getElementsByTagType; +//# sourceMappingURL=legacy.js.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/legacy.js.map b/includes/external/addressbook/node_modules/domutils/lib/legacy.js.map new file mode 100644 index 0000000..940c039 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/legacy.js.map @@ -0,0 +1 @@ +{"version":3,"file":"legacy.js","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["legacy.ts"],"names":[],"mappings":"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"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/manipulation.d.ts b/includes/external/addressbook/node_modules/domutils/lib/manipulation.d.ts new file mode 100644 index 0000000..89763f1 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/manipulation.d.ts @@ -0,0 +1,49 @@ +import type { ChildNode, Element } from "domhandler"; +/** + * Remove an element from the dom + * + * @category Manipulation + * @param elem The element to be removed + */ +export declare function removeElement(elem: ChildNode): void; +/** + * Replace an element in the dom + * + * @category Manipulation + * @param elem The element to be replaced + * @param replacement The element to be added + */ +export declare function replaceElement(elem: ChildNode, replacement: ChildNode): void; +/** + * Append a child to an element. + * + * @category Manipulation + * @param elem The element to append to. + * @param child The element to be added as a child. + */ +export declare function appendChild(elem: Element, child: ChildNode): void; +/** + * Append an element after another. + * + * @category Manipulation + * @param elem The element to append after. + * @param next The element be added. + */ +export declare function append(elem: ChildNode, next: ChildNode): void; +/** + * Prepend a child to an element. + * + * @category Manipulation + * @param elem The element to prepend before. + * @param child The element to be added as a child. + */ +export declare function prependChild(elem: Element, child: ChildNode): void; +/** + * Prepend an element before another. + * + * @category Manipulation + * @param elem The element to prepend before. + * @param prev The element be added. + */ +export declare function prepend(elem: ChildNode, prev: ChildNode): void; +//# sourceMappingURL=manipulation.d.ts.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/manipulation.d.ts.map b/includes/external/addressbook/node_modules/domutils/lib/manipulation.d.ts.map new file mode 100644 index 0000000..dcb4848 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/manipulation.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"manipulation.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["manipulation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI,CAQnD;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,GAAG,IAAI,CAiB5E;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAajE;AAED;;;;;;GAMG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAoB7D;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAalE;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAiB9D"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/manipulation.js b/includes/external/addressbook/node_modules/domutils/lib/manipulation.js new file mode 100644 index 0000000..31c5cc0 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/manipulation.js @@ -0,0 +1,137 @@ +"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 + * + * @category Manipulation + * @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 + * + * @category Manipulation + * @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; + elem.parent = null; + } +} +exports.replaceElement = replaceElement; +/** + * Append a child to an element. + * + * @category Manipulation + * @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. + * + * @category Manipulation + * @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. + * + * @category Manipulation + * @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. + * + * @category Manipulation + * @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; +//# sourceMappingURL=manipulation.js.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/manipulation.js.map b/includes/external/addressbook/node_modules/domutils/lib/manipulation.js.map new file mode 100644 index 0000000..4de0dea --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/manipulation.js.map @@ -0,0 +1 @@ +{"version":3,"file":"manipulation.js","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["manipulation.ts"],"names":[],"mappings":"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"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/querying.d.ts b/includes/external/addressbook/node_modules/domutils/lib/querying.d.ts new file mode 100644 index 0000000..3e2296a --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/querying.d.ts @@ -0,0 +1,62 @@ +import { Element, AnyNode } from "domhandler"; +/** + * Search a node and its children for nodes passing a test function. + * + * @category Querying + * @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: AnyNode) => boolean, node: AnyNode | AnyNode[], recurse?: boolean, limit?: number): AnyNode[]; +/** + * Search an array of node and its children for nodes passing a test function. + * + * @category Querying + * @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: AnyNode) => boolean, nodes: AnyNode[], recurse: boolean, limit: number): AnyNode[]; +/** + * Finds the first element inside of an array that matches a test function. + * + * @category Querying + * @param test Function to test nodes on. + * @param nodes Array of nodes to search. + * @returns The first node in the array that passes `test`. + * @deprecated Use `Array.prototype.find` directly. + */ +export declare function findOneChild<T>(test: (elem: T) => boolean, nodes: T[]): T | undefined; +/** + * Finds one element in a tree that passes a test. + * + * @category Querying + * @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: AnyNode[], recurse?: boolean): Element | null; +/** + * @category Querying + * @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 the test. + */ +export declare function existsOne(test: (elem: Element) => boolean, nodes: AnyNode[]): boolean; +/** + * Search and array of nodes and its children for elements passing a test function. + * + * Same as `find`, but limited to elements and with less options, leading to reduced complexity. + * + * @category Querying + * @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: AnyNode[]): Element[]; +//# sourceMappingURL=querying.d.ts.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/querying.d.ts.map b/includes/external/addressbook/node_modules/domutils/lib/querying.d.ts.map new file mode 100644 index 0000000..8b9da87 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/querying.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"querying.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["querying.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAElE;;;;;;;;;GASG;AACH,wBAAgB,MAAM,CAClB,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,EAChC,IAAI,EAAE,OAAO,GAAG,OAAO,EAAE,EACzB,OAAO,UAAO,EACd,KAAK,SAAW,GACjB,OAAO,EAAE,CAGX;AAED;;;;;;;;;GASG;AACH,wBAAgB,IAAI,CAChB,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,EAChC,KAAK,EAAE,OAAO,EAAE,EAChB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,MAAM,GACd,OAAO,EAAE,CAkBX;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAC1B,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,EAC1B,KAAK,EAAE,CAAC,EAAE,GACX,CAAC,GAAG,SAAS,CAEf;AAED;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CACnB,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,EAChC,KAAK,EAAE,OAAO,EAAE,EAChB,OAAO,UAAO,GACf,OAAO,GAAG,IAAI,CAehB;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CACrB,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,EAChC,KAAK,EAAE,OAAO,EAAE,GACjB,OAAO,CAQT;AAED;;;;;;;;;GASG;AACH,wBAAgB,OAAO,CACnB,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,EAChC,KAAK,EAAE,OAAO,EAAE,GACjB,OAAO,EAAE,CAYX"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/querying.js b/includes/external/addressbook/node_modules/domutils/lib/querying.js new file mode 100644 index 0000000..3e2c1ec --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/querying.js @@ -0,0 +1,134 @@ +"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. + * + * @category Querying + * @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. + * + * @category Querying + * @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 && (0, 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. + * + * @category Querying + * @param test Function to test nodes on. + * @param nodes Array of nodes to search. + * @returns The first node in the array that passes `test`. + * @deprecated Use `Array.prototype.find` directly. + */ +function findOneChild(test, nodes) { + return nodes.find(test); +} +exports.findOneChild = findOneChild; +/** + * Finds one element in a tree that passes a test. + * + * @category Querying + * @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 (!(0, domhandler_1.isTag)(checked)) { + continue; + } + else if (test(checked)) { + elem = checked; + } + else if (recurse && checked.children.length > 0) { + elem = findOne(test, checked.children, true); + } + } + return elem; +} +exports.findOne = findOne; +/** + * @category Querying + * @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 the test. + */ +function existsOne(test, nodes) { + return nodes.some(function (checked) { + return (0, 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 elements passing a test function. + * + * Same as `find`, but limited to elements and with less options, leading to reduced complexity. + * + * @category Querying + * @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; +//# sourceMappingURL=querying.js.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/querying.js.map b/includes/external/addressbook/node_modules/domutils/lib/querying.js.map new file mode 100644 index 0000000..76e0f81 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/querying.js.map @@ -0,0 +1 @@ +{"version":3,"file":"querying.js","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["querying.ts"],"names":[],"mappings":"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"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/stringify.d.ts b/includes/external/addressbook/node_modules/domutils/lib/stringify.d.ts new file mode 100644 index 0000000..a643f70 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/stringify.d.ts @@ -0,0 +1,46 @@ +import { AnyNode } from "domhandler"; +import { DomSerializerOptions } from "dom-serializer"; +/** + * @category Stringify + * @deprecated Use the `dom-serializer` module directly. + * @param node Node to get the outer HTML of. + * @param options Options for serialization. + * @returns `node`'s outer HTML. + */ +export declare function getOuterHTML(node: AnyNode | ArrayLike<AnyNode>, options?: DomSerializerOptions): string; +/** + * @category Stringify + * @deprecated Use the `dom-serializer` module directly. + * @param node Node to get the inner HTML of. + * @param options Options for serialization. + * @returns `node`'s inner HTML. + */ +export declare function getInnerHTML(node: AnyNode, options?: DomSerializerOptions): string; +/** + * Get a node's inner text. Same as `textContent`, but inserts newlines for `<br>` tags. + * + * @category Stringify + * @deprecated Use `textContent` instead. + * @param node Node to get the inner text of. + * @returns `node`'s inner text. + */ +export declare function getText(node: AnyNode | AnyNode[]): string; +/** + * Get a node's text content. + * + * @category Stringify + * @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: AnyNode | AnyNode[]): string; +/** + * Get a node's inner text. + * + * @category Stringify + * @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: AnyNode | AnyNode[]): string; +//# sourceMappingURL=stringify.d.ts.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/stringify.d.ts.map b/includes/external/addressbook/node_modules/domutils/lib/stringify.d.ts.map new file mode 100644 index 0000000..8da073b --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/stringify.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"stringify.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["stringify.ts"],"names":[],"mappings":"AAAA,OAAO,EAKH,OAAO,EAEV,MAAM,YAAY,CAAC;AACpB,OAAmB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGlE;;;;;;GAMG;AACH,wBAAgB,YAAY,CACxB,IAAI,EAAE,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,EAClC,OAAO,CAAC,EAAE,oBAAoB,GAC/B,MAAM,CAER;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CACxB,IAAI,EAAE,OAAO,EACb,OAAO,CAAC,EAAE,oBAAoB,GAC/B,MAAM,CAIR;AAED;;;;;;;GAOG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,EAAE,GAAG,MAAM,CAMzD;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,EAAE,GAAG,MAAM,CAO7D;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,EAAE,GAAG,MAAM,CAO3D"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/stringify.js b/includes/external/addressbook/node_modules/domutils/lib/stringify.js new file mode 100644 index 0000000..006d61b --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/stringify.js @@ -0,0 +1,92 @@ +"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"); +/** + * @category Stringify + * @deprecated Use the `dom-serializer` module directly. + * @param node Node to get the outer HTML of. + * @param options Options for serialization. + * @returns `node`'s outer HTML. + */ +function getOuterHTML(node, options) { + return (0, dom_serializer_1.default)(node, options); +} +exports.getOuterHTML = getOuterHTML; +/** + * @category Stringify + * @deprecated Use the `dom-serializer` module directly. + * @param node Node to get the inner HTML of. + * @param options Options for serialization. + * @returns `node`'s inner HTML. + */ +function getInnerHTML(node, options) { + return (0, 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. + * + * @category Stringify + * @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 ((0, domhandler_1.isTag)(node)) + return node.name === "br" ? "\n" : getText(node.children); + if ((0, domhandler_1.isCDATA)(node)) + return getText(node.children); + if ((0, domhandler_1.isText)(node)) + return node.data; + return ""; +} +exports.getText = getText; +/** + * Get a node's text content. + * + * @category Stringify + * @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 ((0, domhandler_1.hasChildren)(node) && !(0, domhandler_1.isComment)(node)) { + return textContent(node.children); + } + if ((0, domhandler_1.isText)(node)) + return node.data; + return ""; +} +exports.textContent = textContent; +/** + * Get a node's inner text. + * + * @category Stringify + * @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 ((0, domhandler_1.hasChildren)(node) && (node.type === domelementtype_1.ElementType.Tag || (0, domhandler_1.isCDATA)(node))) { + return innerText(node.children); + } + if ((0, domhandler_1.isText)(node)) + return node.data; + return ""; +} +exports.innerText = innerText; +//# sourceMappingURL=stringify.js.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/stringify.js.map b/includes/external/addressbook/node_modules/domutils/lib/stringify.js.map new file mode 100644 index 0000000..100be9e --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/stringify.js.map @@ -0,0 +1 @@ +{"version":3,"file":"stringify.js","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["stringify.ts"],"names":[],"mappings":";;;;;;AAAA,yCAOoB;AACpB,kEAAkE;AAClE,iDAA6C;AAE7C;;;;;;GAMG;AACH,SAAgB,YAAY,CACxB,IAAkC,EAClC,OAA8B;IAE9B,OAAO,IAAA,wBAAU,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACrC,CAAC;AALD,oCAKC;AAED;;;;;;GAMG;AACH,SAAgB,YAAY,CACxB,IAAa,EACb,OAA8B;IAE9B,OAAO,IAAA,wBAAW,EAAC,IAAI,CAAC;QACpB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,EAA3B,CAA2B,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QACnE,CAAC,CAAC,EAAE,CAAC;AACb,CAAC;AAPD,oCAOC;AAED;;;;;;;GAOG;AACH,SAAgB,OAAO,CAAC,IAAyB;IAC7C,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3D,IAAI,IAAA,kBAAK,EAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3E,IAAI,IAAA,oBAAO,EAAC,IAAI,CAAC;QAAE,OAAO,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACjD,IAAI,IAAA,mBAAM,EAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC;IACnC,OAAO,EAAE,CAAC;AACd,CAAC;AAND,0BAMC;AAED;;;;;;;GAOG;AACH,SAAgB,WAAW,CAAC,IAAyB;IACjD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/D,IAAI,IAAA,wBAAW,EAAC,IAAI,CAAC,IAAI,CAAC,IAAA,sBAAS,EAAC,IAAI,CAAC,EAAE;QACvC,OAAO,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KACrC;IACD,IAAI,IAAA,mBAAM,EAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC;IACnC,OAAO,EAAE,CAAC;AACd,CAAC;AAPD,kCAOC;AAED;;;;;;;GAOG;AACH,SAAgB,SAAS,CAAC,IAAyB;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7D,IAAI,IAAA,wBAAW,EAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,4BAAW,CAAC,GAAG,IAAI,IAAA,oBAAO,EAAC,IAAI,CAAC,CAAC,EAAE;QACvE,OAAO,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KACnC;IACD,IAAI,IAAA,mBAAM,EAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC;IACnC,OAAO,EAAE,CAAC;AACd,CAAC;AAPD,8BAOC"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/traversal.d.ts b/includes/external/addressbook/node_modules/domutils/lib/traversal.d.ts new file mode 100644 index 0000000..213e6a9 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/traversal.d.ts @@ -0,0 +1,65 @@ +import { AnyNode, ChildNode, Element, ParentNode } from "domhandler"; +/** + * Get a node's children. + * + * @category Traversal + * @param elem Node to get the children of. + * @returns `elem`'s children, or an empty array. + */ +export declare function getChildren(elem: AnyNode): ChildNode[]; +export declare function getParent(elem: AnyNode): ParentNode | 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. + * + * @category Traversal + * @param elem Element to get the siblings of. + * @returns `elem`'s siblings. + */ +export declare function getSiblings(elem: AnyNode): AnyNode[]; +/** + * Gets an attribute from an element. + * + * @category Traversal + * @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. + * + * @category Traversal + * @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. + * + * @category Traversal + * @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. + * + * @category Traversal + * @param elem The element to get the next sibling of. + * @returns `elem`'s next sibling that is a tag. + */ +export declare function nextElementSibling(elem: AnyNode): Element | null; +/** + * Returns the previous element sibling of a node. + * + * @category Traversal + * @param elem The element to get the previous sibling of. + * @returns `elem`'s previous sibling that is a tag. + */ +export declare function prevElementSibling(elem: AnyNode): Element | null; +//# sourceMappingURL=traversal.d.ts.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/traversal.d.ts.map b/includes/external/addressbook/node_modules/domutils/lib/traversal.d.ts.map new file mode 100644 index 0000000..cdf1710 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/traversal.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"traversal.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["traversal.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,OAAO,EACP,SAAS,EACT,OAAO,EACP,UAAU,EAEb,MAAM,YAAY,CAAC;AAEpB;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,EAAE,CAEtD;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,OAAO,GAAG,UAAU,GAAG,IAAI,CAAC;AAY5D;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,EAAE,CAepD;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC7B,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,MAAM,GACb,MAAM,GAAG,SAAS,CAEpB;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAM9D;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAE7C;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,IAAI,CAIhE;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,IAAI,CAIhE"}
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/traversal.js b/includes/external/addressbook/node_modules/domutils/lib/traversal.js new file mode 100644 index 0000000..5def453 --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/traversal.js @@ -0,0 +1,124 @@ +"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"); +/** + * Get a node's children. + * + * @category Traversal + * @param elem Node to get the children of. + * @returns `elem`'s children, or an empty array. + */ +function getChildren(elem) { + return (0, domhandler_1.hasChildren)(elem) ? elem.children : []; +} +exports.getChildren = getChildren; +/** + * Get a node's parent. + * + * @category Traversal + * @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. + * + * @category Traversal + * @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. + * + * @category Traversal + * @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. + * + * @category Traversal + * @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. + * + * @category Traversal + * @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. + * + * @category Traversal + * @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 && !(0, domhandler_1.isTag)(next)) + (_a = next, next = _a.next); + return next; +} +exports.nextElementSibling = nextElementSibling; +/** + * Returns the previous element sibling of a node. + * + * @category Traversal + * @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 && !(0, domhandler_1.isTag)(prev)) + (_a = prev, prev = _a.prev); + return prev; +} +exports.prevElementSibling = prevElementSibling; +//# sourceMappingURL=traversal.js.map
\ No newline at end of file diff --git a/includes/external/addressbook/node_modules/domutils/lib/traversal.js.map b/includes/external/addressbook/node_modules/domutils/lib/traversal.js.map new file mode 100644 index 0000000..0fdb30d --- /dev/null +++ b/includes/external/addressbook/node_modules/domutils/lib/traversal.js.map @@ -0,0 +1 @@ +{"version":3,"file":"traversal.js","sourceRoot":"https://raw.githubusercontent.com/fb55/domutils/f7e357b5c210b6731c2a60e0b7b3cfaa1f96b706/src/","sources":["traversal.ts"],"names":[],"mappings":";;;AAAA,yCAOoB;AAEpB;;;;;;GAMG;AACH,SAAgB,WAAW,CAAC,IAAa;IACrC,OAAO,IAAA,wBAAW,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;AAClD,CAAC;AAFD,kCAEC;AAGD;;;;;;GAMG;AACH,SAAgB,SAAS,CAAC,IAAa;IACnC,OAAO,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC;AAC/B,CAAC;AAFD,8BAEC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,WAAW,CAAC,IAAa;;IACrC,IAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,MAAM,IAAI,IAAI;QAAE,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;IAE/C,IAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,CAAC;IAClB,IAAA,IAAI,GAAW,IAAI,KAAf,EAAE,IAAI,GAAK,IAAI,KAAT,CAAU;IAC1B,OAAO,IAAI,IAAI,IAAI,EAAE;QACjB,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC,KAAW,IAAI,EAAb,IAAI,UAAA,CAAU,CAAC;KACrB;IACD,OAAO,IAAI,IAAI,IAAI,EAAE;QACjB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC,KAAW,IAAI,EAAb,IAAI,UAAA,CAAU,CAAC;KACrB;IACD,OAAO,QAAQ,CAAC;AACpB,CAAC;AAfD,kCAeC;AAED;;;;;;;GAOG;AACH,SAAgB,iBAAiB,CAC7B,IAAa,EACb,IAAY;;IAEZ,OAAO,MAAA,IAAI,CAAC,OAAO,0CAAG,IAAI,CAAC,CAAC;AAChC,CAAC;AALD,8CAKC;AAED;;;;;;;GAOG;AACH,SAAgB,SAAS,CAAC,IAAa,EAAE,IAAY;IACjD,OAAO,CACH,IAAI,CAAC,OAAO,IAAI,IAAI;QACpB,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC;QACxD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAC7B,CAAC;AACN,CAAC;AAND,8BAMC;AAED;;;;;;GAMG;AACH,SAAgB,OAAO,CAAC,IAAa;IACjC,OAAO,IAAI,CAAC,IAAI,CAAC;AACrB,CAAC;AAFD,0BAEC;AAED;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAAC,IAAa;;IACtC,IAAA,IAAI,GAAK,IAAI,KAAT,CAAU;IACpB,OAAO,IAAI,KAAK,IAAI,IAAI,CAAC,IAAA,kBAAK,EAAC,IAAI,CAAC;QAAE,CAAC,KAAW,IAAI,EAAb,IAAI,UAAA,CAAU,CAAC;IACxD,OAAO,IAAI,CAAC;AAChB,CAAC;AAJD,gDAIC;AAED;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAAC,IAAa;;IACtC,IAAA,IAAI,GAAK,IAAI,KAAT,CAAU;IACpB,OAAO,IAAI,KAAK,IAAI,IAAI,CAAC,IAAA,kBAAK,EAAC,IAAI,CAAC;QAAE,CAAC,KAAW,IAAI,EAAb,IAAI,UAAA,CAAU,CAAC;IACxD,OAAO,IAAI,CAAC;AAChB,CAAC;AAJD,gDAIC"}
\ No newline at end of file |