summaryrefslogtreecommitdiff
path: root/includes/external/addressbook/node_modules/css-select/lib/esm
diff options
context:
space:
mode:
Diffstat (limited to 'includes/external/addressbook/node_modules/css-select/lib/esm')
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/attributes.d.ts7
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/attributes.d.ts.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/attributes.js222
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/attributes.js.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/compile.d.ts13
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/compile.d.ts.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/compile.js115
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/compile.js.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/general.d.ts3
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/general.d.ts.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/general.js144
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/general.js.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/index.d.ts50
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/index.d.ts.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/index.js115
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/index.js.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/package.json1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/aliases.d.ts5
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/aliases.d.ts.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/aliases.js35
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/aliases.js.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/filters.d.ts4
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/filters.d.ts.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/filters.js143
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/filters.js.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/index.d.ts8
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/index.d.ts.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/index.js40
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/index.js.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.d.ts6
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.d.ts.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.js79
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.js.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/subselects.d.ts9
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/subselects.d.ts.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/subselects.js94
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/subselects.js.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/sort.d.ts12
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/sort.d.ts.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/sort.js79
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/sort.js.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/types.d.ts167
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/types.d.ts.map1
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/types.js2
-rw-r--r--includes/external/addressbook/node_modules/css-select/lib/esm/types.js.map1
45 files changed, 1375 insertions, 0 deletions
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/attributes.d.ts b/includes/external/addressbook/node_modules/css-select/lib/esm/attributes.d.ts
new file mode 100644
index 0000000..27b60a5
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/attributes.d.ts
@@ -0,0 +1,7 @@
+import type { CompiledQuery, InternalOptions } from "./types.js";
+import type { AttributeSelector, AttributeAction } from "css-what";
+/**
+ * Attribute selectors
+ */
+export declare const attributeRules: Record<AttributeAction, <Node, ElementNode extends Node>(next: CompiledQuery<ElementNode>, data: AttributeSelector, options: InternalOptions<Node, ElementNode>) => CompiledQuery<ElementNode>>;
+//# sourceMappingURL=attributes.d.ts.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/attributes.d.ts.map b/includes/external/addressbook/node_modules/css-select/lib/esm/attributes.d.ts.map
new file mode 100644
index 0000000..aafba15
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/attributes.d.ts.map
@@ -0,0 +1 @@
+{"version":3,"file":"attributes.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["attributes.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AA+EnE;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAC/B,eAAe,EACf,CAAC,IAAI,EAAE,WAAW,SAAS,IAAI,EAC3B,IAAI,EAAE,aAAa,CAAC,WAAW,CAAC,EAChC,IAAI,EAAE,iBAAiB,EACvB,OAAO,EAAE,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,KAC1C,aAAa,CAAC,WAAW,CAAC,CAsLlC,CAAC"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/attributes.js b/includes/external/addressbook/node_modules/css-select/lib/esm/attributes.js
new file mode 100644
index 0000000..199467e
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/attributes.js
@@ -0,0 +1,222 @@
+import boolbase from "boolbase";
+/**
+ * All reserved characters in a regex, used for escaping.
+ *
+ * Taken from XRegExp, (c) 2007-2020 Steven Levithan under the MIT license
+ * https://github.com/slevithan/xregexp/blob/95eeebeb8fac8754d54eafe2b4743661ac1cf028/src/xregexp.js#L794
+ */
+const reChars = /[-[\]{}()*+?.,\\^$|#\s]/g;
+function escapeRegex(value) {
+ return value.replace(reChars, "\\$&");
+}
+/**
+ * Attributes that are case-insensitive in HTML.
+ *
+ * @private
+ * @see https://html.spec.whatwg.org/multipage/semantics-other.html#case-sensitivity-of-selectors
+ */
+const caseInsensitiveAttributes = new Set([
+ "accept",
+ "accept-charset",
+ "align",
+ "alink",
+ "axis",
+ "bgcolor",
+ "charset",
+ "checked",
+ "clear",
+ "codetype",
+ "color",
+ "compact",
+ "declare",
+ "defer",
+ "dir",
+ "direction",
+ "disabled",
+ "enctype",
+ "face",
+ "frame",
+ "hreflang",
+ "http-equiv",
+ "lang",
+ "language",
+ "link",
+ "media",
+ "method",
+ "multiple",
+ "nohref",
+ "noresize",
+ "noshade",
+ "nowrap",
+ "readonly",
+ "rel",
+ "rev",
+ "rules",
+ "scope",
+ "scrolling",
+ "selected",
+ "shape",
+ "target",
+ "text",
+ "type",
+ "valign",
+ "valuetype",
+ "vlink",
+]);
+function shouldIgnoreCase(selector, options) {
+ return typeof selector.ignoreCase === "boolean"
+ ? selector.ignoreCase
+ : selector.ignoreCase === "quirks"
+ ? !!options.quirksMode
+ : !options.xmlMode && caseInsensitiveAttributes.has(selector.name);
+}
+/**
+ * Attribute selectors
+ */
+export const attributeRules = {
+ equals(next, data, options) {
+ const { adapter } = options;
+ const { name } = data;
+ let { value } = data;
+ if (shouldIgnoreCase(data, options)) {
+ value = value.toLowerCase();
+ return (elem) => {
+ const attr = adapter.getAttributeValue(elem, name);
+ return (attr != null &&
+ attr.length === value.length &&
+ attr.toLowerCase() === value &&
+ next(elem));
+ };
+ }
+ return (elem) => adapter.getAttributeValue(elem, name) === value && next(elem);
+ },
+ hyphen(next, data, options) {
+ const { adapter } = options;
+ const { name } = data;
+ let { value } = data;
+ const len = value.length;
+ if (shouldIgnoreCase(data, options)) {
+ value = value.toLowerCase();
+ return function hyphenIC(elem) {
+ const attr = adapter.getAttributeValue(elem, name);
+ return (attr != null &&
+ (attr.length === len || attr.charAt(len) === "-") &&
+ attr.substr(0, len).toLowerCase() === value &&
+ next(elem));
+ };
+ }
+ return function hyphen(elem) {
+ const attr = adapter.getAttributeValue(elem, name);
+ return (attr != null &&
+ (attr.length === len || attr.charAt(len) === "-") &&
+ attr.substr(0, len) === value &&
+ next(elem));
+ };
+ },
+ element(next, data, options) {
+ const { adapter } = options;
+ const { name, value } = data;
+ if (/\s/.test(value)) {
+ return boolbase.falseFunc;
+ }
+ const regex = new RegExp(`(?:^|\\s)${escapeRegex(value)}(?:$|\\s)`, shouldIgnoreCase(data, options) ? "i" : "");
+ return function element(elem) {
+ const attr = adapter.getAttributeValue(elem, name);
+ return (attr != null &&
+ attr.length >= value.length &&
+ regex.test(attr) &&
+ next(elem));
+ };
+ },
+ exists(next, { name }, { adapter }) {
+ return (elem) => adapter.hasAttrib(elem, name) && next(elem);
+ },
+ start(next, data, options) {
+ const { adapter } = options;
+ const { name } = data;
+ let { value } = data;
+ const len = value.length;
+ if (len === 0) {
+ return boolbase.falseFunc;
+ }
+ if (shouldIgnoreCase(data, options)) {
+ value = value.toLowerCase();
+ return (elem) => {
+ const attr = adapter.getAttributeValue(elem, name);
+ return (attr != null &&
+ attr.length >= len &&
+ attr.substr(0, len).toLowerCase() === value &&
+ next(elem));
+ };
+ }
+ return (elem) => {
+ var _a;
+ return !!((_a = adapter.getAttributeValue(elem, name)) === null || _a === void 0 ? void 0 : _a.startsWith(value)) &&
+ next(elem);
+ };
+ },
+ end(next, data, options) {
+ const { adapter } = options;
+ const { name } = data;
+ let { value } = data;
+ const len = -value.length;
+ if (len === 0) {
+ return boolbase.falseFunc;
+ }
+ if (shouldIgnoreCase(data, options)) {
+ value = value.toLowerCase();
+ return (elem) => {
+ var _a;
+ return ((_a = adapter
+ .getAttributeValue(elem, name)) === null || _a === void 0 ? void 0 : _a.substr(len).toLowerCase()) === value && next(elem);
+ };
+ }
+ return (elem) => {
+ var _a;
+ return !!((_a = adapter.getAttributeValue(elem, name)) === null || _a === void 0 ? void 0 : _a.endsWith(value)) &&
+ next(elem);
+ };
+ },
+ any(next, data, options) {
+ const { adapter } = options;
+ const { name, value } = data;
+ if (value === "") {
+ return boolbase.falseFunc;
+ }
+ if (shouldIgnoreCase(data, options)) {
+ const regex = new RegExp(escapeRegex(value), "i");
+ return function anyIC(elem) {
+ const attr = adapter.getAttributeValue(elem, name);
+ return (attr != null &&
+ attr.length >= value.length &&
+ regex.test(attr) &&
+ next(elem));
+ };
+ }
+ return (elem) => {
+ var _a;
+ return !!((_a = adapter.getAttributeValue(elem, name)) === null || _a === void 0 ? void 0 : _a.includes(value)) &&
+ next(elem);
+ };
+ },
+ not(next, data, options) {
+ const { adapter } = options;
+ const { name } = data;
+ let { value } = data;
+ if (value === "") {
+ return (elem) => !!adapter.getAttributeValue(elem, name) && next(elem);
+ }
+ else if (shouldIgnoreCase(data, options)) {
+ value = value.toLowerCase();
+ return (elem) => {
+ const attr = adapter.getAttributeValue(elem, name);
+ return ((attr == null ||
+ attr.length !== value.length ||
+ attr.toLowerCase() !== value) &&
+ next(elem));
+ };
+ }
+ return (elem) => adapter.getAttributeValue(elem, name) !== value && next(elem);
+ },
+};
+//# sourceMappingURL=attributes.js.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/attributes.js.map b/includes/external/addressbook/node_modules/css-select/lib/esm/attributes.js.map
new file mode 100644
index 0000000..09d1da6
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/attributes.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"attributes.js","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["attributes.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAIhC;;;;;GAKG;AACH,MAAM,OAAO,GAAG,0BAA0B,CAAC;AAC3C,SAAS,WAAW,CAAC,KAAa;IAC9B,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;GAKG;AACH,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAAC;IACtC,QAAQ;IACR,gBAAgB;IAChB,OAAO;IACP,OAAO;IACP,MAAM;IACN,SAAS;IACT,SAAS;IACT,SAAS;IACT,OAAO;IACP,UAAU;IACV,OAAO;IACP,SAAS;IACT,SAAS;IACT,OAAO;IACP,KAAK;IACL,WAAW;IACX,UAAU;IACV,SAAS;IACT,MAAM;IACN,OAAO;IACP,UAAU;IACV,YAAY;IACZ,MAAM;IACN,UAAU;IACV,MAAM;IACN,OAAO;IACP,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,UAAU;IACV,SAAS;IACT,QAAQ;IACR,UAAU;IACV,KAAK;IACL,KAAK;IACL,OAAO;IACP,OAAO;IACP,WAAW;IACX,UAAU;IACV,OAAO;IACP,QAAQ;IACR,MAAM;IACN,MAAM;IACN,QAAQ;IACR,WAAW;IACX,OAAO;CACV,CAAC,CAAC;AAEH,SAAS,gBAAgB,CACrB,QAA2B,EAC3B,OAA2C;IAE3C,OAAO,OAAO,QAAQ,CAAC,UAAU,KAAK,SAAS;QAC3C,CAAC,CAAC,QAAQ,CAAC,UAAU;QACrB,CAAC,CAAC,QAAQ,CAAC,UAAU,KAAK,QAAQ;YAClC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU;YACtB,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,yBAAyB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC3E,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAOvB;IACA,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO;QACtB,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QAC5B,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QACtB,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAErB,IAAI,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE;YACjC,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;YAE5B,OAAO,CAAC,IAAI,EAAE,EAAE;gBACZ,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACnD,OAAO,CACH,IAAI,IAAI,IAAI;oBACZ,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;oBAC5B,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK;oBAC5B,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;YACN,CAAC,CAAC;SACL;QAED,OAAO,CAAC,IAAI,EAAE,EAAE,CACZ,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;IACtE,CAAC;IACD,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO;QACtB,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QAC5B,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QACtB,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACrB,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC;QAEzB,IAAI,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE;YACjC,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;YAE5B,OAAO,SAAS,QAAQ,CAAC,IAAI;gBACzB,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACnD,OAAO,CACH,IAAI,IAAI,IAAI;oBACZ,CAAC,IAAI,CAAC,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC;oBACjD,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK;oBAC3C,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;YACN,CAAC,CAAC;SACL;QAED,OAAO,SAAS,MAAM,CAAC,IAAI;YACvB,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACnD,OAAO,CACH,IAAI,IAAI,IAAI;gBACZ,CAAC,IAAI,CAAC,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC;gBACjD,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,KAAK;gBAC7B,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;QACN,CAAC,CAAC;IACN,CAAC;IACD,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO;QACvB,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QAC5B,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAC7B,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YAClB,OAAO,QAAQ,CAAC,SAAS,CAAC;SAC7B;QAED,MAAM,KAAK,GAAG,IAAI,MAAM,CACpB,YAAY,WAAW,CAAC,KAAK,CAAC,WAAW,EACzC,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAC7C,CAAC;QAEF,OAAO,SAAS,OAAO,CAAC,IAAI;YACxB,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACnD,OAAO,CACH,IAAI,IAAI,IAAI;gBACZ,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM;gBAC3B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;gBAChB,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;QACN,CAAC,CAAC;IACN,CAAC;IACD,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE;QAC9B,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;IACjE,CAAC;IACD,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO;QACrB,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QAC5B,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QACtB,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACrB,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC;QAEzB,IAAI,GAAG,KAAK,CAAC,EAAE;YACX,OAAO,QAAQ,CAAC,SAAS,CAAC;SAC7B;QAED,IAAI,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE;YACjC,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;YAE5B,OAAO,CAAC,IAAI,EAAE,EAAE;gBACZ,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACnD,OAAO,CACH,IAAI,IAAI,IAAI;oBACZ,IAAI,CAAC,MAAM,IAAI,GAAG;oBAClB,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK;oBAC3C,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;YACN,CAAC,CAAC;SACL;QAED,OAAO,CAAC,IAAI,EAAE,EAAE;;YACZ,OAAA,CAAC,CAAC,CAAA,MAAA,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,0CAAE,UAAU,CAAC,KAAK,CAAC,CAAA;gBAC1D,IAAI,CAAC,IAAI,CAAC,CAAA;SAAA,CAAC;IACnB,CAAC;IACD,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO;QACnB,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QAC5B,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QACtB,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QACrB,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC;QAE1B,IAAI,GAAG,KAAK,CAAC,EAAE;YACX,OAAO,QAAQ,CAAC,SAAS,CAAC;SAC7B;QAED,IAAI,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE;YACjC,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;YAE5B,OAAO,CAAC,IAAI,EAAE,EAAE;;gBACZ,OAAA,CAAA,MAAA,OAAO;qBACF,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,0CAC5B,MAAM,CAAC,GAAG,EACX,WAAW,EAAE,MAAK,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,CAAA;aAAA,CAAC;SAClD;QAED,OAAO,CAAC,IAAI,EAAE,EAAE;;YACZ,OAAA,CAAC,CAAC,CAAA,MAAA,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,0CAAE,QAAQ,CAAC,KAAK,CAAC,CAAA;gBACxD,IAAI,CAAC,IAAI,CAAC,CAAA;SAAA,CAAC;IACnB,CAAC;IACD,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO;QACnB,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QAC5B,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAE7B,IAAI,KAAK,KAAK,EAAE,EAAE;YACd,OAAO,QAAQ,CAAC,SAAS,CAAC;SAC7B;QAED,IAAI,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE;YACjC,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC;YAElD,OAAO,SAAS,KAAK,CAAC,IAAI;gBACtB,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACnD,OAAO,CACH,IAAI,IAAI,IAAI;oBACZ,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM;oBAC3B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;oBAChB,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;YACN,CAAC,CAAC;SACL;QAED,OAAO,CAAC,IAAI,EAAE,EAAE;;YACZ,OAAA,CAAC,CAAC,CAAA,MAAA,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,0CAAE,QAAQ,CAAC,KAAK,CAAC,CAAA;gBACxD,IAAI,CAAC,IAAI,CAAC,CAAA;SAAA,CAAC;IACnB,CAAC;IACD,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO;QACnB,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QAC5B,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QACtB,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAErB,IAAI,KAAK,KAAK,EAAE,EAAE;YACd,OAAO,CAAC,IAAI,EAAE,EAAE,CACZ,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;SAC7D;aAAM,IAAI,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE;YACxC,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;YAE5B,OAAO,CAAC,IAAI,EAAE,EAAE;gBACZ,MAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACnD,OAAO,CACH,CAAC,IAAI,IAAI,IAAI;oBACT,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;oBAC5B,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC;oBACjC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;YACN,CAAC,CAAC;SACL;QAED,OAAO,CAAC,IAAI,EAAE,EAAE,CACZ,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;IACtE,CAAC;CACJ,CAAC"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/compile.d.ts b/includes/external/addressbook/node_modules/css-select/lib/esm/compile.d.ts
new file mode 100644
index 0000000..f67b508
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/compile.d.ts
@@ -0,0 +1,13 @@
+import { Selector } from "css-what";
+import type { CompiledQuery, InternalOptions, InternalSelector } from "./types.js";
+/**
+ * Compiles a selector to an executable function.
+ *
+ * @param selector Selector to compile.
+ * @param options Compilation options.
+ * @param context Optional context for the selector.
+ */
+export declare function compile<Node, ElementNode extends Node>(selector: string | Selector[][], options: InternalOptions<Node, ElementNode>, context?: Node[] | Node): CompiledQuery<Node>;
+export declare function compileUnsafe<Node, ElementNode extends Node>(selector: string | Selector[][], options: InternalOptions<Node, ElementNode>, context?: Node[] | Node): CompiledQuery<ElementNode>;
+export declare function compileToken<Node, ElementNode extends Node>(token: InternalSelector[][], options: InternalOptions<Node, ElementNode>, context?: Node[] | Node): CompiledQuery<ElementNode>;
+//# sourceMappingURL=compile.d.ts.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/compile.d.ts.map b/includes/external/addressbook/node_modules/css-select/lib/esm/compile.d.ts.map
new file mode 100644
index 0000000..59231bc
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/compile.d.ts.map
@@ -0,0 +1 @@
+{"version":3,"file":"compile.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["compile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,QAAQ,EAAgB,MAAM,UAAU,CAAC;AAQzD,OAAO,KAAK,EACR,aAAa,EACb,eAAe,EACf,gBAAgB,EACnB,MAAM,YAAY,CAAC;AAEpB;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,WAAW,SAAS,IAAI,EAClD,QAAQ,EAAE,MAAM,GAAG,QAAQ,EAAE,EAAE,EAC/B,OAAO,EAAE,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,EAC3C,OAAO,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,GACxB,aAAa,CAAC,IAAI,CAAC,CAGrB;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,SAAS,IAAI,EACxD,QAAQ,EAAE,MAAM,GAAG,QAAQ,EAAE,EAAE,EAC/B,OAAO,EAAE,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,EAC3C,OAAO,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,GACxB,aAAa,CAAC,WAAW,CAAC,CAG5B;AAqDD,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,SAAS,IAAI,EACvD,KAAK,EAAE,gBAAgB,EAAE,EAAE,EAC3B,OAAO,EAAE,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,EAC3C,OAAO,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,GACxB,aAAa,CAAC,WAAW,CAAC,CAsD5B"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/compile.js b/includes/external/addressbook/node_modules/css-select/lib/esm/compile.js
new file mode 100644
index 0000000..1f5ee57
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/compile.js
@@ -0,0 +1,115 @@
+import { parse, SelectorType } from "css-what";
+import boolbase from "boolbase";
+import sortRules, { isTraversal } from "./sort.js";
+import { compileGeneralSelector } from "./general.js";
+import { ensureIsTag, PLACEHOLDER_ELEMENT, } from "./pseudo-selectors/subselects.js";
+/**
+ * Compiles a selector to an executable function.
+ *
+ * @param selector Selector to compile.
+ * @param options Compilation options.
+ * @param context Optional context for the selector.
+ */
+export function compile(selector, options, context) {
+ const next = compileUnsafe(selector, options, context);
+ return ensureIsTag(next, options.adapter);
+}
+export function compileUnsafe(selector, options, context) {
+ const token = typeof selector === "string" ? parse(selector) : selector;
+ return compileToken(token, options, context);
+}
+function includesScopePseudo(t) {
+ return (t.type === SelectorType.Pseudo &&
+ (t.name === "scope" ||
+ (Array.isArray(t.data) &&
+ t.data.some((data) => data.some(includesScopePseudo)))));
+}
+const DESCENDANT_TOKEN = { type: SelectorType.Descendant };
+const FLEXIBLE_DESCENDANT_TOKEN = {
+ type: "_flexibleDescendant",
+};
+const SCOPE_TOKEN = {
+ type: SelectorType.Pseudo,
+ name: "scope",
+ data: null,
+};
+/*
+ * CSS 4 Spec (Draft): 3.4.1. Absolutizing a Relative Selector
+ * http://www.w3.org/TR/selectors4/#absolutizing
+ */
+function absolutize(token, { adapter }, context) {
+ // TODO Use better check if the context is a document
+ const hasContext = !!(context === null || context === void 0 ? void 0 : context.every((e) => {
+ const parent = adapter.isTag(e) && adapter.getParent(e);
+ return e === PLACEHOLDER_ELEMENT || (parent && adapter.isTag(parent));
+ }));
+ for (const t of token) {
+ if (t.length > 0 &&
+ isTraversal(t[0]) &&
+ t[0].type !== SelectorType.Descendant) {
+ // Don't continue in else branch
+ }
+ else if (hasContext && !t.some(includesScopePseudo)) {
+ t.unshift(DESCENDANT_TOKEN);
+ }
+ else {
+ continue;
+ }
+ t.unshift(SCOPE_TOKEN);
+ }
+}
+export function compileToken(token, options, context) {
+ var _a;
+ token.forEach(sortRules);
+ context = (_a = options.context) !== null && _a !== void 0 ? _a : context;
+ const isArrayContext = Array.isArray(context);
+ const finalContext = context && (Array.isArray(context) ? context : [context]);
+ // Check if the selector is relative
+ if (options.relativeSelector !== false) {
+ absolutize(token, options, finalContext);
+ }
+ else if (token.some((t) => t.length > 0 && isTraversal(t[0]))) {
+ throw new Error("Relative selectors are not allowed when the `relativeSelector` option is disabled");
+ }
+ let shouldTestNextSiblings = false;
+ const query = token
+ .map((rules) => {
+ if (rules.length >= 2) {
+ const [first, second] = rules;
+ if (first.type !== SelectorType.Pseudo ||
+ first.name !== "scope") {
+ // Ignore
+ }
+ else if (isArrayContext &&
+ second.type === SelectorType.Descendant) {
+ rules[1] = FLEXIBLE_DESCENDANT_TOKEN;
+ }
+ else if (second.type === SelectorType.Adjacent ||
+ second.type === SelectorType.Sibling) {
+ shouldTestNextSiblings = true;
+ }
+ }
+ return compileRules(rules, options, finalContext);
+ })
+ .reduce(reduceRules, boolbase.falseFunc);
+ query.shouldTestNextSiblings = shouldTestNextSiblings;
+ return query;
+}
+function compileRules(rules, options, context) {
+ var _a;
+ return rules.reduce((previous, rule) => previous === boolbase.falseFunc
+ ? boolbase.falseFunc
+ : compileGeneralSelector(previous, rule, options, context, compileToken), (_a = options.rootFunc) !== null && _a !== void 0 ? _a : boolbase.trueFunc);
+}
+function reduceRules(a, b) {
+ if (b === boolbase.falseFunc || a === boolbase.trueFunc) {
+ return a;
+ }
+ if (a === boolbase.falseFunc || b === boolbase.trueFunc) {
+ return b;
+ }
+ return function combine(elem) {
+ return a(elem) || b(elem);
+ };
+}
+//# sourceMappingURL=compile.js.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/compile.js.map b/includes/external/addressbook/node_modules/css-select/lib/esm/compile.js.map
new file mode 100644
index 0000000..8e83703
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/compile.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"compile.js","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["compile.ts"],"names":[],"mappings":"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"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/general.d.ts b/includes/external/addressbook/node_modules/css-select/lib/esm/general.d.ts
new file mode 100644
index 0000000..2baa1f3
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/general.d.ts
@@ -0,0 +1,3 @@
+import type { CompiledQuery, InternalOptions, InternalSelector, CompileToken } from "./types.js";
+export declare function compileGeneralSelector<Node, ElementNode extends Node>(next: CompiledQuery<ElementNode>, selector: InternalSelector, options: InternalOptions<Node, ElementNode>, context: Node[] | undefined, compileToken: CompileToken<Node, ElementNode>): CompiledQuery<ElementNode>;
+//# sourceMappingURL=general.d.ts.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/general.d.ts.map b/includes/external/addressbook/node_modules/css-select/lib/esm/general.d.ts.map
new file mode 100644
index 0000000..82c8d6d
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/general.d.ts.map
@@ -0,0 +1 @@
+{"version":3,"file":"general.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["general.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAER,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,YAAY,EACf,MAAM,YAAY,CAAC;AAkBpB,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,WAAW,SAAS,IAAI,EACjE,IAAI,EAAE,aAAa,CAAC,WAAW,CAAC,EAChC,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,EAAE,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,EAC3C,OAAO,EAAE,IAAI,EAAE,GAAG,SAAS,EAC3B,YAAY,EAAE,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,GAC9C,aAAa,CAAC,WAAW,CAAC,CAiK5B"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/general.js b/includes/external/addressbook/node_modules/css-select/lib/esm/general.js
new file mode 100644
index 0000000..743ef7b
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/general.js
@@ -0,0 +1,144 @@
+import { attributeRules } from "./attributes.js";
+import { compilePseudoSelector } from "./pseudo-selectors/index.js";
+import { SelectorType } from "css-what";
+function getElementParent(node, adapter) {
+ const parent = adapter.getParent(node);
+ if (parent && adapter.isTag(parent)) {
+ return parent;
+ }
+ return null;
+}
+/*
+ * All available rules
+ */
+export function compileGeneralSelector(next, selector, options, context, compileToken) {
+ const { adapter, equals } = options;
+ switch (selector.type) {
+ case SelectorType.PseudoElement: {
+ throw new Error("Pseudo-elements are not supported by css-select");
+ }
+ case SelectorType.ColumnCombinator: {
+ throw new Error("Column combinators are not yet supported by css-select");
+ }
+ case SelectorType.Attribute: {
+ if (selector.namespace != null) {
+ throw new Error("Namespaced attributes are not yet supported by css-select");
+ }
+ if (!options.xmlMode || options.lowerCaseAttributeNames) {
+ selector.name = selector.name.toLowerCase();
+ }
+ return attributeRules[selector.action](next, selector, options);
+ }
+ case SelectorType.Pseudo: {
+ return compilePseudoSelector(next, selector, options, context, compileToken);
+ }
+ // Tags
+ case SelectorType.Tag: {
+ if (selector.namespace != null) {
+ throw new Error("Namespaced tag names are not yet supported by css-select");
+ }
+ let { name } = selector;
+ if (!options.xmlMode || options.lowerCaseTags) {
+ name = name.toLowerCase();
+ }
+ return function tag(elem) {
+ return adapter.getName(elem) === name && next(elem);
+ };
+ }
+ // Traversal
+ case SelectorType.Descendant: {
+ if (options.cacheResults === false ||
+ typeof WeakSet === "undefined") {
+ return function descendant(elem) {
+ let current = elem;
+ while ((current = getElementParent(current, adapter))) {
+ if (next(current)) {
+ return true;
+ }
+ }
+ return false;
+ };
+ }
+ // @ts-expect-error `ElementNode` is not extending object
+ const isFalseCache = new WeakSet();
+ return function cachedDescendant(elem) {
+ let current = elem;
+ while ((current = getElementParent(current, adapter))) {
+ if (!isFalseCache.has(current)) {
+ if (adapter.isTag(current) && next(current)) {
+ return true;
+ }
+ isFalseCache.add(current);
+ }
+ }
+ return false;
+ };
+ }
+ case "_flexibleDescendant": {
+ // Include element itself, only used while querying an array
+ return function flexibleDescendant(elem) {
+ let current = elem;
+ do {
+ if (next(current))
+ return true;
+ } while ((current = getElementParent(current, adapter)));
+ return false;
+ };
+ }
+ case SelectorType.Parent: {
+ return function parent(elem) {
+ return adapter
+ .getChildren(elem)
+ .some((elem) => adapter.isTag(elem) && next(elem));
+ };
+ }
+ case SelectorType.Child: {
+ return function child(elem) {
+ const parent = adapter.getParent(elem);
+ return parent != null && adapter.isTag(parent) && next(parent);
+ };
+ }
+ case SelectorType.Sibling: {
+ return function sibling(elem) {
+ const siblings = adapter.getSiblings(elem);
+ for (let i = 0; i < siblings.length; i++) {
+ const currentSibling = siblings[i];
+ if (equals(elem, currentSibling))
+ break;
+ if (adapter.isTag(currentSibling) && next(currentSibling)) {
+ return true;
+ }
+ }
+ return false;
+ };
+ }
+ case SelectorType.Adjacent: {
+ if (adapter.prevElementSibling) {
+ return function adjacent(elem) {
+ const previous = adapter.prevElementSibling(elem);
+ return previous != null && next(previous);
+ };
+ }
+ return function adjacent(elem) {
+ const siblings = adapter.getSiblings(elem);
+ let lastElement;
+ for (let i = 0; i < siblings.length; i++) {
+ const currentSibling = siblings[i];
+ if (equals(elem, currentSibling))
+ break;
+ if (adapter.isTag(currentSibling)) {
+ lastElement = currentSibling;
+ }
+ }
+ return !!lastElement && next(lastElement);
+ };
+ }
+ case SelectorType.Universal: {
+ if (selector.namespace != null && selector.namespace !== "*") {
+ throw new Error("Namespaced universal selectors are not yet supported by css-select");
+ }
+ return next;
+ }
+ }
+}
+//# sourceMappingURL=general.js.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/general.js.map b/includes/external/addressbook/node_modules/css-select/lib/esm/general.js.map
new file mode 100644
index 0000000..6838068
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/general.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"general.js","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["general.ts"],"names":[],"mappings":"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"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/index.d.ts b/includes/external/addressbook/node_modules/css-select/lib/esm/index.d.ts
new file mode 100644
index 0000000..0911372
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/index.d.ts
@@ -0,0 +1,50 @@
+import type { CompiledQuery, Options, Query, Adapter } from "./types.js";
+export type { Options };
+/**
+ * Compiles the query, returns a function.
+ */
+export declare const compile: <Node, ElementNode extends Node>(selector: string | import("css-what").Selector[][], options?: Options<Node, ElementNode> | undefined, context?: Node | Node[] | undefined) => CompiledQuery<Node>;
+export declare const _compileUnsafe: <Node, ElementNode extends Node>(selector: string | import("css-what").Selector[][], options?: Options<Node, ElementNode> | undefined, context?: Node | Node[] | undefined) => CompiledQuery<ElementNode>;
+export declare const _compileToken: <Node, ElementNode extends Node>(selector: import("./types.js").InternalSelector[][], options?: Options<Node, ElementNode> | undefined, context?: Node | Node[] | undefined) => CompiledQuery<ElementNode>;
+export declare function prepareContext<Node, ElementNode extends Node>(elems: Node | Node[], adapter: Adapter<Node, ElementNode>, shouldTestNextSiblings?: boolean): Node[];
+/**
+ * @template Node The generic Node type for the DOM adapter being used.
+ * @template ElementNode The Node type for elements for the DOM adapter being used.
+ * @param elems Elements to query. If it is an element, its children will be queried..
+ * @param query can be either a CSS selector string or a compiled query function.
+ * @param [options] options for querying the document.
+ * @see compile for supported selector queries.
+ * @returns All matching elements.
+ *
+ */
+export declare const selectAll: <Node, ElementNode extends Node>(query: Query<ElementNode>, elements: Node | Node[], options?: Options<Node, ElementNode> | undefined) => ElementNode[];
+/**
+ * @template Node The generic Node type for the DOM adapter being used.
+ * @template ElementNode The Node type for elements for the DOM adapter being used.
+ * @param elems Elements to query. If it is an element, its children will be queried..
+ * @param query can be either a CSS selector string or a compiled query function.
+ * @param [options] options for querying the document.
+ * @see compile for supported selector queries.
+ * @returns the first match, or null if there was no match.
+ */
+export declare const selectOne: <Node, ElementNode extends Node>(query: Query<ElementNode>, elements: Node | Node[], options?: Options<Node, ElementNode> | undefined) => ElementNode | null;
+/**
+ * Tests whether or not an element is matched by query.
+ *
+ * @template Node The generic Node type for the DOM adapter being used.
+ * @template ElementNode The Node type for elements for the DOM adapter being used.
+ * @param elem The element to test if it matches the query.
+ * @param query can be either a CSS selector string or a compiled query function.
+ * @param [options] options for querying the document.
+ * @see compile for supported selector queries.
+ * @returns
+ */
+export declare function is<Node, ElementNode extends Node>(elem: ElementNode, query: Query<ElementNode>, options?: Options<Node, ElementNode>): boolean;
+/**
+ * Alias for selectAll(query, elems, options).
+ * @see [compile] for supported selector queries.
+ */
+export default selectAll;
+/** @deprecated Use the `pseudos` option instead. */
+export { filters, pseudos, aliases } from "./pseudo-selectors/index.js";
+//# sourceMappingURL=index.d.ts.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/index.d.ts.map b/includes/external/addressbook/node_modules/css-select/lib/esm/index.d.ts.map
new file mode 100644
index 0000000..120c4fe
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/index.d.ts.map
@@ -0,0 +1 @@
+{"version":3,"file":"index.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["index.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EACR,aAAa,EACb,OAAO,EAEP,KAAK,EACL,OAAO,EAEV,MAAM,YAAY,CAAC;AAGpB,YAAY,EAAE,OAAO,EAAE,CAAC;AA0CxB;;GAEG;AACH,eAAO,MAAM,OAAO,oMAA0B,CAAC;AAC/C,eAAO,MAAM,cAAc,2MAA6B,CAAC;AACzD,eAAO,MAAM,aAAa,4MAA4B,CAAC;AA6BvD,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,SAAS,IAAI,EACzD,KAAK,EAAE,IAAI,GAAG,IAAI,EAAE,EACpB,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,EACnC,sBAAsB,UAAQ,GAC/B,IAAI,EAAE,CAYR;AAiBD;;;;;;;;;GASG;AACH,eAAO,MAAM,SAAS,yJASrB,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,SAAS,8JASrB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,wBAAgB,EAAE,CAAC,IAAI,EAAE,WAAW,SAAS,IAAI,EAC7C,IAAI,EAAE,WAAW,EACjB,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,EACzB,OAAO,CAAC,EAAE,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,GACrC,OAAO,CAKT;AAED;;;GAGG;AACH,eAAe,SAAS,CAAC;AAGzB,oDAAoD;AACpD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/index.js b/includes/external/addressbook/node_modules/css-select/lib/esm/index.js
new file mode 100644
index 0000000..7d827a2
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/index.js
@@ -0,0 +1,115 @@
+import * as DomUtils from "domutils";
+import boolbase from "boolbase";
+import { compile as compileRaw, compileUnsafe, compileToken, } from "./compile.js";
+import { getNextSiblings } from "./pseudo-selectors/subselects.js";
+const defaultEquals = (a, b) => a === b;
+const defaultOptions = {
+ adapter: DomUtils,
+ equals: defaultEquals,
+};
+function convertOptionFormats(options) {
+ var _a, _b, _c, _d;
+ /*
+ * We force one format of options to the other one.
+ */
+ // @ts-expect-error Default options may have incompatible `Node` / `ElementNode`.
+ const opts = options !== null && options !== void 0 ? options : defaultOptions;
+ // @ts-expect-error Same as above.
+ (_a = opts.adapter) !== null && _a !== void 0 ? _a : (opts.adapter = DomUtils);
+ // @ts-expect-error `equals` does not exist on `Options`
+ (_b = opts.equals) !== null && _b !== void 0 ? _b : (opts.equals = (_d = (_c = opts.adapter) === null || _c === void 0 ? void 0 : _c.equals) !== null && _d !== void 0 ? _d : defaultEquals);
+ return opts;
+}
+function wrapCompile(func) {
+ return function addAdapter(selector, options, context) {
+ const opts = convertOptionFormats(options);
+ return func(selector, opts, context);
+ };
+}
+/**
+ * Compiles the query, returns a function.
+ */
+export const compile = wrapCompile(compileRaw);
+export const _compileUnsafe = wrapCompile(compileUnsafe);
+export const _compileToken = wrapCompile(compileToken);
+function getSelectorFunc(searchFunc) {
+ return function select(query, elements, options) {
+ const opts = convertOptionFormats(options);
+ if (typeof query !== "function") {
+ query = compileUnsafe(query, opts, elements);
+ }
+ const filteredElements = prepareContext(elements, opts.adapter, query.shouldTestNextSiblings);
+ return searchFunc(query, filteredElements, opts);
+ };
+}
+export function prepareContext(elems, adapter, shouldTestNextSiblings = false) {
+ /*
+ * Add siblings if the query requires them.
+ * See https://github.com/fb55/css-select/pull/43#issuecomment-225414692
+ */
+ if (shouldTestNextSiblings) {
+ elems = appendNextSiblings(elems, adapter);
+ }
+ return Array.isArray(elems)
+ ? adapter.removeSubsets(elems)
+ : adapter.getChildren(elems);
+}
+function appendNextSiblings(elem, adapter) {
+ // Order matters because jQuery seems to check the children before the siblings
+ const elems = Array.isArray(elem) ? elem.slice(0) : [elem];
+ const elemsLength = elems.length;
+ for (let i = 0; i < elemsLength; i++) {
+ const nextSiblings = getNextSiblings(elems[i], adapter);
+ elems.push(...nextSiblings);
+ }
+ return elems;
+}
+/**
+ * @template Node The generic Node type for the DOM adapter being used.
+ * @template ElementNode The Node type for elements for the DOM adapter being used.
+ * @param elems Elements to query. If it is an element, its children will be queried..
+ * @param query can be either a CSS selector string or a compiled query function.
+ * @param [options] options for querying the document.
+ * @see compile for supported selector queries.
+ * @returns All matching elements.
+ *
+ */
+export const selectAll = getSelectorFunc((query, elems, options) => query === boolbase.falseFunc || !elems || elems.length === 0
+ ? []
+ : options.adapter.findAll(query, elems));
+/**
+ * @template Node The generic Node type for the DOM adapter being used.
+ * @template ElementNode The Node type for elements for the DOM adapter being used.
+ * @param elems Elements to query. If it is an element, its children will be queried..
+ * @param query can be either a CSS selector string or a compiled query function.
+ * @param [options] options for querying the document.
+ * @see compile for supported selector queries.
+ * @returns the first match, or null if there was no match.
+ */
+export const selectOne = getSelectorFunc((query, elems, options) => query === boolbase.falseFunc || !elems || elems.length === 0
+ ? null
+ : options.adapter.findOne(query, elems));
+/**
+ * Tests whether or not an element is matched by query.
+ *
+ * @template Node The generic Node type for the DOM adapter being used.
+ * @template ElementNode The Node type for elements for the DOM adapter being used.
+ * @param elem The element to test if it matches the query.
+ * @param query can be either a CSS selector string or a compiled query function.
+ * @param [options] options for querying the document.
+ * @see compile for supported selector queries.
+ * @returns
+ */
+export function is(elem, query, options) {
+ const opts = convertOptionFormats(options);
+ return (typeof query === "function" ? query : compileRaw(query, opts))(elem);
+}
+/**
+ * Alias for selectAll(query, elems, options).
+ * @see [compile] for supported selector queries.
+ */
+export default selectAll;
+// Export filters, pseudos and aliases to allow users to supply their own.
+/** @deprecated Use the `pseudos` option instead. */
+export { filters, pseudos, aliases } from "./pseudo-selectors/index.js";
+//# sourceMappingURL=index.js.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/index.js.map b/includes/external/addressbook/node_modules/css-select/lib/esm/index.js.map
new file mode 100644
index 0000000..b9e98bf
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/index.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"index.js","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["index.ts"],"names":[],"mappings":"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"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/package.json b/includes/external/addressbook/node_modules/css-select/lib/esm/package.json
new file mode 100644
index 0000000..089153b
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/package.json
@@ -0,0 +1 @@
+{"type":"module"}
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/aliases.d.ts b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/aliases.d.ts
new file mode 100644
index 0000000..1bcb31a
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/aliases.d.ts
@@ -0,0 +1,5 @@
+/**
+ * Aliases are pseudos that are expressed as selectors.
+ */
+export declare const aliases: Record<string, string>;
+//# sourceMappingURL=aliases.d.ts.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/aliases.d.ts.map b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/aliases.d.ts.map
new file mode 100644
index 0000000..37c9e8c
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/aliases.d.ts.map
@@ -0,0 +1 @@
+{"version":3,"file":"aliases.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["pseudo-selectors/aliases.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAwC1C,CAAC"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/aliases.js b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/aliases.js
new file mode 100644
index 0000000..49cd6f0
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/aliases.js
@@ -0,0 +1,35 @@
+/**
+ * Aliases are pseudos that are expressed as selectors.
+ */
+export const aliases = {
+ // Links
+ "any-link": ":is(a, area, link)[href]",
+ link: ":any-link:not(:visited)",
+ // Forms
+ // https://html.spec.whatwg.org/multipage/scripting.html#disabled-elements
+ disabled: `:is(
+ :is(button, input, select, textarea, optgroup, option)[disabled],
+ optgroup[disabled] > option,
+ fieldset[disabled]:not(fieldset[disabled] legend:first-of-type *)
+ )`,
+ enabled: ":not(:disabled)",
+ checked: ":is(:is(input[type=radio], input[type=checkbox])[checked], option:selected)",
+ required: ":is(input, select, textarea)[required]",
+ optional: ":is(input, select, textarea):not([required])",
+ // JQuery extensions
+ // https://html.spec.whatwg.org/multipage/form-elements.html#concept-option-selectedness
+ selected: "option:is([selected], select:not([multiple]):not(:has(> option[selected])) > :first-of-type)",
+ checkbox: "[type=checkbox]",
+ file: "[type=file]",
+ password: "[type=password]",
+ radio: "[type=radio]",
+ reset: "[type=reset]",
+ image: "[type=image]",
+ submit: "[type=submit]",
+ parent: ":not(:empty)",
+ header: ":is(h1, h2, h3, h4, h5, h6)",
+ button: ":is(button, input[type=button])",
+ input: ":is(input, textarea, select, button)",
+ text: "input:is(:not([type!='']), [type=text])",
+};
+//# sourceMappingURL=aliases.js.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/aliases.js.map b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/aliases.js.map
new file mode 100644
index 0000000..6ef57c9
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/aliases.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"aliases.js","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["pseudo-selectors/aliases.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAA2B;IAC3C,QAAQ;IAER,UAAU,EAAE,0BAA0B;IACtC,IAAI,EAAE,yBAAyB;IAE/B,QAAQ;IAER,0EAA0E;IAC1E,QAAQ,EAAE;;;;MAIR;IACF,OAAO,EAAE,iBAAiB;IAC1B,OAAO,EACH,6EAA6E;IACjF,QAAQ,EAAE,wCAAwC;IAClD,QAAQ,EAAE,8CAA8C;IAExD,oBAAoB;IAEpB,wFAAwF;IACxF,QAAQ,EACJ,8FAA8F;IAElG,QAAQ,EAAE,iBAAiB;IAC3B,IAAI,EAAE,aAAa;IACnB,QAAQ,EAAE,iBAAiB;IAC3B,KAAK,EAAE,cAAc;IACrB,KAAK,EAAE,cAAc;IACrB,KAAK,EAAE,cAAc;IACrB,MAAM,EAAE,eAAe;IAEvB,MAAM,EAAE,cAAc;IACtB,MAAM,EAAE,6BAA6B;IAErC,MAAM,EAAE,iCAAiC;IACzC,KAAK,EAAE,sCAAsC;IAC7C,IAAI,EAAE,yCAAyC;CAClD,CAAC"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/filters.d.ts b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/filters.d.ts
new file mode 100644
index 0000000..a75d063
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/filters.d.ts
@@ -0,0 +1,4 @@
+import type { CompiledQuery, InternalOptions } from "../types.js";
+export declare type Filter = <Node, ElementNode extends Node>(next: CompiledQuery<ElementNode>, text: string, options: InternalOptions<Node, ElementNode>, context?: Node[]) => CompiledQuery<ElementNode>;
+export declare const filters: Record<string, Filter>;
+//# sourceMappingURL=filters.d.ts.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/filters.d.ts.map b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/filters.d.ts.map
new file mode 100644
index 0000000..86f1cef
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/filters.d.ts.map
@@ -0,0 +1 @@
+{"version":3,"file":"filters.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["pseudo-selectors/filters.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAW,MAAM,aAAa,CAAC;AAE3E,oBAAY,MAAM,GAAG,CAAC,IAAI,EAAE,WAAW,SAAS,IAAI,EAChD,IAAI,EAAE,aAAa,CAAC,WAAW,CAAC,EAChC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,EAC3C,OAAO,CAAC,EAAE,IAAI,EAAE,KACf,aAAa,CAAC,WAAW,CAAC,CAAC;AAYhC,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA2I1C,CAAC"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/filters.js b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/filters.js
new file mode 100644
index 0000000..2f939ed
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/filters.js
@@ -0,0 +1,143 @@
+import getNCheck from "nth-check";
+import boolbase from "boolbase";
+function getChildFunc(next, adapter) {
+ return (elem) => {
+ const parent = adapter.getParent(elem);
+ return parent != null && adapter.isTag(parent) && next(elem);
+ };
+}
+export const filters = {
+ contains(next, text, { adapter }) {
+ return function contains(elem) {
+ return next(elem) && adapter.getText(elem).includes(text);
+ };
+ },
+ icontains(next, text, { adapter }) {
+ const itext = text.toLowerCase();
+ return function icontains(elem) {
+ return (next(elem) &&
+ adapter.getText(elem).toLowerCase().includes(itext));
+ };
+ },
+ // Location specific methods
+ "nth-child"(next, rule, { adapter, equals }) {
+ const func = getNCheck(rule);
+ if (func === boolbase.falseFunc)
+ return boolbase.falseFunc;
+ if (func === boolbase.trueFunc)
+ return getChildFunc(next, adapter);
+ return function nthChild(elem) {
+ const siblings = adapter.getSiblings(elem);
+ let pos = 0;
+ for (let i = 0; i < siblings.length; i++) {
+ if (equals(elem, siblings[i]))
+ break;
+ if (adapter.isTag(siblings[i])) {
+ pos++;
+ }
+ }
+ return func(pos) && next(elem);
+ };
+ },
+ "nth-last-child"(next, rule, { adapter, equals }) {
+ const func = getNCheck(rule);
+ if (func === boolbase.falseFunc)
+ return boolbase.falseFunc;
+ if (func === boolbase.trueFunc)
+ return getChildFunc(next, adapter);
+ return function nthLastChild(elem) {
+ const siblings = adapter.getSiblings(elem);
+ let pos = 0;
+ for (let i = siblings.length - 1; i >= 0; i--) {
+ if (equals(elem, siblings[i]))
+ break;
+ if (adapter.isTag(siblings[i])) {
+ pos++;
+ }
+ }
+ return func(pos) && next(elem);
+ };
+ },
+ "nth-of-type"(next, rule, { adapter, equals }) {
+ const func = getNCheck(rule);
+ if (func === boolbase.falseFunc)
+ return boolbase.falseFunc;
+ if (func === boolbase.trueFunc)
+ return getChildFunc(next, adapter);
+ return function nthOfType(elem) {
+ const siblings = adapter.getSiblings(elem);
+ let pos = 0;
+ for (let i = 0; i < siblings.length; i++) {
+ const currentSibling = siblings[i];
+ if (equals(elem, currentSibling))
+ break;
+ if (adapter.isTag(currentSibling) &&
+ adapter.getName(currentSibling) === adapter.getName(elem)) {
+ pos++;
+ }
+ }
+ return func(pos) && next(elem);
+ };
+ },
+ "nth-last-of-type"(next, rule, { adapter, equals }) {
+ const func = getNCheck(rule);
+ if (func === boolbase.falseFunc)
+ return boolbase.falseFunc;
+ if (func === boolbase.trueFunc)
+ return getChildFunc(next, adapter);
+ return function nthLastOfType(elem) {
+ const siblings = adapter.getSiblings(elem);
+ let pos = 0;
+ for (let i = siblings.length - 1; i >= 0; i--) {
+ const currentSibling = siblings[i];
+ if (equals(elem, currentSibling))
+ break;
+ if (adapter.isTag(currentSibling) &&
+ adapter.getName(currentSibling) === adapter.getName(elem)) {
+ pos++;
+ }
+ }
+ return func(pos) && next(elem);
+ };
+ },
+ // TODO determine the actual root element
+ root(next, _rule, { adapter }) {
+ return (elem) => {
+ const parent = adapter.getParent(elem);
+ return (parent == null || !adapter.isTag(parent)) && next(elem);
+ };
+ },
+ scope(next, rule, options, context) {
+ const { equals } = options;
+ if (!context || context.length === 0) {
+ // Equivalent to :root
+ return filters["root"](next, rule, options);
+ }
+ if (context.length === 1) {
+ // NOTE: can't be unpacked, as :has uses this for side-effects
+ return (elem) => equals(context[0], elem) && next(elem);
+ }
+ return (elem) => context.includes(elem) && next(elem);
+ },
+ hover: dynamicStatePseudo("isHovered"),
+ visited: dynamicStatePseudo("isVisited"),
+ active: dynamicStatePseudo("isActive"),
+};
+/**
+ * Dynamic state pseudos. These depend on optional Adapter methods.
+ *
+ * @param name The name of the adapter method to call.
+ * @returns Pseudo for the `filters` object.
+ */
+function dynamicStatePseudo(name) {
+ return function dynamicPseudo(next, _rule, { adapter }) {
+ const func = adapter[name];
+ if (typeof func !== "function") {
+ return boolbase.falseFunc;
+ }
+ return function active(elem) {
+ return func(elem) && next(elem);
+ };
+ };
+}
+//# sourceMappingURL=filters.js.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/filters.js.map b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/filters.js.map
new file mode 100644
index 0000000..605d0cb
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/filters.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"filters.js","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["pseudo-selectors/filters.ts"],"names":[],"mappings":"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"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/index.d.ts b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/index.d.ts
new file mode 100644
index 0000000..2c41913
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/index.d.ts
@@ -0,0 +1,8 @@
+import type { CompiledQuery, InternalOptions, CompileToken } from "../types.js";
+import { PseudoSelector } from "css-what";
+import { filters } from "./filters.js";
+import { pseudos } from "./pseudos.js";
+import { aliases } from "./aliases.js";
+export { filters, pseudos, aliases };
+export declare function compilePseudoSelector<Node, ElementNode extends Node>(next: CompiledQuery<ElementNode>, selector: PseudoSelector, options: InternalOptions<Node, ElementNode>, context: Node[] | undefined, compileToken: CompileToken<Node, ElementNode>): CompiledQuery<ElementNode>;
+//# sourceMappingURL=index.d.ts.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/index.d.ts.map b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/index.d.ts.map
new file mode 100644
index 0000000..ba14097
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/index.d.ts.map
@@ -0,0 +1 @@
+{"version":3,"file":"index.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["pseudo-selectors/index.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChF,OAAO,EAAS,cAAc,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,OAAO,EAAoB,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAGvC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;AAErC,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,WAAW,SAAS,IAAI,EAChE,IAAI,EAAE,aAAa,CAAC,WAAW,CAAC,EAChC,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,EAC3C,OAAO,EAAE,IAAI,EAAE,GAAG,SAAS,EAC3B,YAAY,EAAE,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,GAC9C,aAAa,CAAC,WAAW,CAAC,CA4C5B"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/index.js b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/index.js
new file mode 100644
index 0000000..ab43243
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/index.js
@@ -0,0 +1,40 @@
+import { parse } from "css-what";
+import { filters } from "./filters.js";
+import { pseudos, verifyPseudoArgs } from "./pseudos.js";
+import { aliases } from "./aliases.js";
+import { subselects } from "./subselects.js";
+export { filters, pseudos, aliases };
+export function compilePseudoSelector(next, selector, options, context, compileToken) {
+ var _a;
+ const { name, data } = selector;
+ if (Array.isArray(data)) {
+ if (!(name in subselects)) {
+ throw new Error(`Unknown pseudo-class :${name}(${data})`);
+ }
+ return subselects[name](next, data, options, context, compileToken);
+ }
+ const userPseudo = (_a = options.pseudos) === null || _a === void 0 ? void 0 : _a[name];
+ const stringPseudo = typeof userPseudo === "string" ? userPseudo : aliases[name];
+ if (typeof stringPseudo === "string") {
+ if (data != null) {
+ throw new Error(`Pseudo ${name} doesn't have any arguments`);
+ }
+ // The alias has to be parsed here, to make sure options are respected.
+ const alias = parse(stringPseudo);
+ return subselects["is"](next, alias, options, context, compileToken);
+ }
+ if (typeof userPseudo === "function") {
+ verifyPseudoArgs(userPseudo, name, data, 1);
+ return (elem) => userPseudo(elem, data) && next(elem);
+ }
+ if (name in filters) {
+ return filters[name](next, data, options, context);
+ }
+ if (name in pseudos) {
+ const pseudo = pseudos[name];
+ verifyPseudoArgs(pseudo, name, data, 2);
+ return (elem) => pseudo(elem, options, data) && next(elem);
+ }
+ throw new Error(`Unknown pseudo-class :${name}`);
+}
+//# sourceMappingURL=index.js.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/index.js.map b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/index.js.map
new file mode 100644
index 0000000..f8fe1e7
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/index.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"index.js","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["pseudo-selectors/index.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,KAAK,EAAkB,MAAM,UAAU,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;AAErC,MAAM,UAAU,qBAAqB,CACjC,IAAgC,EAChC,QAAwB,EACxB,OAA2C,EAC3C,OAA2B,EAC3B,YAA6C;;IAE7C,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;IAEhC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACrB,IAAI,CAAC,CAAC,IAAI,IAAI,UAAU,CAAC,EAAE;YACvB,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,IAAI,IAAI,GAAG,CAAC,CAAC;SAC7D;QAED,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;KACvE;IAED,MAAM,UAAU,GAAG,MAAA,OAAO,CAAC,OAAO,0CAAG,IAAI,CAAC,CAAC;IAE3C,MAAM,YAAY,GACd,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhE,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;QAClC,IAAI,IAAI,IAAI,IAAI,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,UAAU,IAAI,6BAA6B,CAAC,CAAC;SAChE;QAED,uEAAuE;QACvE,MAAM,KAAK,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;QAClC,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;KACxE;IAED,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE;QAClC,gBAAgB,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAE5C,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;KACzD;IAED,IAAI,IAAI,IAAI,OAAO,EAAE;QACjB,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAc,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;KAChE;IAED,IAAI,IAAI,IAAI,OAAO,EAAE;QACjB,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7B,gBAAgB,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAExC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;KAC9D;IAED,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;AACrD,CAAC"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.d.ts b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.d.ts
new file mode 100644
index 0000000..cfcf8d6
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.d.ts
@@ -0,0 +1,6 @@
+import type { PseudoSelector } from "css-what";
+import type { InternalOptions } from "../types.js";
+export declare type Pseudo = <Node, ElementNode extends Node>(elem: ElementNode, options: InternalOptions<Node, ElementNode>, subselect?: string | null) => boolean;
+export declare const pseudos: Record<string, Pseudo>;
+export declare function verifyPseudoArgs<T extends Array<unknown>>(func: (...args: T) => boolean, name: string, subselect: PseudoSelector["data"], argIndex: number): void;
+//# sourceMappingURL=pseudos.d.ts.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.d.ts.map b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.d.ts.map
new file mode 100644
index 0000000..b2d1137
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.d.ts.map
@@ -0,0 +1 @@
+{"version":3,"file":"pseudos.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["pseudo-selectors/pseudos.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,oBAAY,MAAM,GAAG,CAAC,IAAI,EAAE,WAAW,SAAS,IAAI,EAChD,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,EAC3C,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,KACxB,OAAO,CAAC;AAGb,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAkF1C,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,KAAK,CAAC,OAAO,CAAC,EACrD,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,EAC7B,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,cAAc,CAAC,MAAM,CAAC,EACjC,QAAQ,EAAE,MAAM,GACjB,IAAI,CAQN"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.js b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.js
new file mode 100644
index 0000000..fe2ebef
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.js
@@ -0,0 +1,79 @@
+// While filters are precompiled, pseudos get called when they are needed
+export const pseudos = {
+ empty(elem, { adapter }) {
+ return !adapter.getChildren(elem).some((elem) =>
+ // FIXME: `getText` call is potentially expensive.
+ adapter.isTag(elem) || adapter.getText(elem) !== "");
+ },
+ "first-child"(elem, { adapter, equals }) {
+ if (adapter.prevElementSibling) {
+ return adapter.prevElementSibling(elem) == null;
+ }
+ const firstChild = adapter
+ .getSiblings(elem)
+ .find((elem) => adapter.isTag(elem));
+ return firstChild != null && equals(elem, firstChild);
+ },
+ "last-child"(elem, { adapter, equals }) {
+ const siblings = adapter.getSiblings(elem);
+ for (let i = siblings.length - 1; i >= 0; i--) {
+ if (equals(elem, siblings[i]))
+ return true;
+ if (adapter.isTag(siblings[i]))
+ break;
+ }
+ return false;
+ },
+ "first-of-type"(elem, { adapter, equals }) {
+ const siblings = adapter.getSiblings(elem);
+ const elemName = adapter.getName(elem);
+ for (let i = 0; i < siblings.length; i++) {
+ const currentSibling = siblings[i];
+ if (equals(elem, currentSibling))
+ return true;
+ if (adapter.isTag(currentSibling) &&
+ adapter.getName(currentSibling) === elemName) {
+ break;
+ }
+ }
+ return false;
+ },
+ "last-of-type"(elem, { adapter, equals }) {
+ const siblings = adapter.getSiblings(elem);
+ const elemName = adapter.getName(elem);
+ for (let i = siblings.length - 1; i >= 0; i--) {
+ const currentSibling = siblings[i];
+ if (equals(elem, currentSibling))
+ return true;
+ if (adapter.isTag(currentSibling) &&
+ adapter.getName(currentSibling) === elemName) {
+ break;
+ }
+ }
+ return false;
+ },
+ "only-of-type"(elem, { adapter, equals }) {
+ const elemName = adapter.getName(elem);
+ return adapter
+ .getSiblings(elem)
+ .every((sibling) => equals(elem, sibling) ||
+ !adapter.isTag(sibling) ||
+ adapter.getName(sibling) !== elemName);
+ },
+ "only-child"(elem, { adapter, equals }) {
+ return adapter
+ .getSiblings(elem)
+ .every((sibling) => equals(elem, sibling) || !adapter.isTag(sibling));
+ },
+};
+export function verifyPseudoArgs(func, name, subselect, argIndex) {
+ if (subselect === null) {
+ if (func.length > argIndex) {
+ throw new Error(`Pseudo-class :${name} requires an argument`);
+ }
+ }
+ else if (func.length === argIndex) {
+ throw new Error(`Pseudo-class :${name} doesn't have any arguments`);
+ }
+}
+//# sourceMappingURL=pseudos.js.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.js.map b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.js.map
new file mode 100644
index 0000000..62f4ec3
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"pseudos.js","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["pseudo-selectors/pseudos.ts"],"names":[],"mappings":"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"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/subselects.d.ts b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/subselects.d.ts
new file mode 100644
index 0000000..6555ef2
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/subselects.d.ts
@@ -0,0 +1,9 @@
+import type { Selector } from "css-what";
+import type { CompiledQuery, InternalOptions, CompileToken, Adapter } from "../types.js";
+/** Used as a placeholder for :has. Will be replaced with the actual element. */
+export declare const PLACEHOLDER_ELEMENT: {};
+export declare function ensureIsTag<Node, ElementNode extends Node>(next: CompiledQuery<ElementNode>, adapter: Adapter<Node, ElementNode>): CompiledQuery<Node>;
+export declare type Subselect = <Node, ElementNode extends Node>(next: CompiledQuery<ElementNode>, subselect: Selector[][], options: InternalOptions<Node, ElementNode>, context: Node[] | undefined, compileToken: CompileToken<Node, ElementNode>) => CompiledQuery<ElementNode>;
+export declare function getNextSiblings<Node, ElementNode extends Node>(elem: Node, adapter: Adapter<Node, ElementNode>): ElementNode[];
+export declare const subselects: Record<string, Subselect>;
+//# sourceMappingURL=subselects.d.ts.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/subselects.d.ts.map b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/subselects.d.ts.map
new file mode 100644
index 0000000..9950c0c
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/subselects.d.ts.map
@@ -0,0 +1 @@
+{"version":3,"file":"subselects.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["pseudo-selectors/subselects.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,KAAK,EACR,aAAa,EACb,eAAe,EACf,YAAY,EACZ,OAAO,EACV,MAAM,aAAa,CAAC;AAGrB,gFAAgF;AAChF,eAAO,MAAM,mBAAmB,IAAK,CAAC;AAEtC,wBAAgB,WAAW,CAAC,IAAI,EAAE,WAAW,SAAS,IAAI,EACtD,IAAI,EAAE,aAAa,CAAC,WAAW,CAAC,EAChC,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,GACpC,aAAa,CAAC,IAAI,CAAC,CAGrB;AAED,oBAAY,SAAS,GAAG,CAAC,IAAI,EAAE,WAAW,SAAS,IAAI,EACnD,IAAI,EAAE,aAAa,CAAC,WAAW,CAAC,EAChC,SAAS,EAAE,QAAQ,EAAE,EAAE,EACvB,OAAO,EAAE,eAAe,CAAC,IAAI,EAAE,WAAW,CAAC,EAC3C,OAAO,EAAE,IAAI,EAAE,GAAG,SAAS,EAC3B,YAAY,EAAE,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,KAC5C,aAAa,CAAC,WAAW,CAAC,CAAC;AAEhC,wBAAgB,eAAe,CAAC,IAAI,EAAE,WAAW,SAAS,IAAI,EAC1D,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,GACpC,WAAW,EAAE,CAMf;AAiCD,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAgEhD,CAAC"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/subselects.js b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/subselects.js
new file mode 100644
index 0000000..25d7e8e
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/subselects.js
@@ -0,0 +1,94 @@
+import boolbase from "boolbase";
+import { isTraversal } from "../sort.js";
+/** Used as a placeholder for :has. Will be replaced with the actual element. */
+export const PLACEHOLDER_ELEMENT = {};
+export function ensureIsTag(next, adapter) {
+ if (next === boolbase.falseFunc)
+ return boolbase.falseFunc;
+ return (elem) => adapter.isTag(elem) && next(elem);
+}
+export function getNextSiblings(elem, adapter) {
+ const siblings = adapter.getSiblings(elem);
+ if (siblings.length <= 1)
+ return [];
+ const elemIndex = siblings.indexOf(elem);
+ if (elemIndex < 0 || elemIndex === siblings.length - 1)
+ return [];
+ return siblings.slice(elemIndex + 1).filter(adapter.isTag);
+}
+function copyOptions(options) {
+ // Not copied: context, rootFunc
+ return {
+ xmlMode: !!options.xmlMode,
+ lowerCaseAttributeNames: !!options.lowerCaseAttributeNames,
+ lowerCaseTags: !!options.lowerCaseTags,
+ quirksMode: !!options.quirksMode,
+ cacheResults: !!options.cacheResults,
+ pseudos: options.pseudos,
+ adapter: options.adapter,
+ equals: options.equals,
+ };
+}
+const is = (next, token, options, context, compileToken) => {
+ const func = compileToken(token, copyOptions(options), context);
+ return func === boolbase.trueFunc
+ ? next
+ : func === boolbase.falseFunc
+ ? boolbase.falseFunc
+ : (elem) => func(elem) && next(elem);
+};
+/*
+ * :not, :has, :is, :matches and :where have to compile selectors
+ * doing this in src/pseudos.ts would lead to circular dependencies,
+ * so we add them here
+ */
+export const subselects = {
+ is,
+ /**
+ * `:matches` and `:where` are aliases for `:is`.
+ */
+ matches: is,
+ where: is,
+ not(next, token, options, context, compileToken) {
+ const func = compileToken(token, copyOptions(options), context);
+ return func === boolbase.falseFunc
+ ? next
+ : func === boolbase.trueFunc
+ ? boolbase.falseFunc
+ : (elem) => !func(elem) && next(elem);
+ },
+ has(next, subselect, options, _context, compileToken) {
+ const { adapter } = options;
+ const opts = copyOptions(options);
+ opts.relativeSelector = true;
+ const context = subselect.some((s) => s.some(isTraversal))
+ ? // Used as a placeholder. Will be replaced with the actual element.
+ [PLACEHOLDER_ELEMENT]
+ : undefined;
+ const compiled = compileToken(subselect, opts, context);
+ if (compiled === boolbase.falseFunc)
+ return boolbase.falseFunc;
+ const hasElement = ensureIsTag(compiled, adapter);
+ // If `compiled` is `trueFunc`, we can skip this.
+ if (context && compiled !== boolbase.trueFunc) {
+ /*
+ * `shouldTestNextSiblings` will only be true if the query starts with
+ * a traversal (sibling or adjacent). That means we will always have a context.
+ */
+ const { shouldTestNextSiblings = false } = compiled;
+ return (elem) => {
+ if (!next(elem))
+ return false;
+ context[0] = elem;
+ const childs = adapter.getChildren(elem);
+ const nextElements = shouldTestNextSiblings
+ ? [...childs, ...getNextSiblings(elem, adapter)]
+ : childs;
+ return adapter.existsOne(hasElement, nextElements);
+ };
+ }
+ return (elem) => next(elem) &&
+ adapter.existsOne(hasElement, adapter.getChildren(elem));
+ },
+};
+//# sourceMappingURL=subselects.js.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/subselects.js.map b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/subselects.js.map
new file mode 100644
index 0000000..39cdd6e
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/pseudo-selectors/subselects.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"subselects.js","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["pseudo-selectors/subselects.ts"],"names":[],"mappings":"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"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/sort.d.ts b/includes/external/addressbook/node_modules/css-select/lib/esm/sort.d.ts
new file mode 100644
index 0000000..93c996c
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/sort.d.ts
@@ -0,0 +1,12 @@
+import type { InternalSelector } from "./types.js";
+import { type Traversal } from "css-what";
+export declare function isTraversal(token: InternalSelector): token is Traversal;
+/**
+ * Sort the parts of the passed selector,
+ * as there is potential for optimization
+ * (some types of selectors are faster than others)
+ *
+ * @param arr Selector to sort
+ */
+export default function sortByProcedure(arr: InternalSelector[]): void;
+//# sourceMappingURL=sort.d.ts.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/sort.d.ts.map b/includes/external/addressbook/node_modules/css-select/lib/esm/sort.d.ts.map
new file mode 100644
index 0000000..8e996f4
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/sort.d.ts.map
@@ -0,0 +1 @@
+{"version":3,"file":"sort.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["sort.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAiC,KAAK,SAAS,EAAE,MAAM,UAAU,CAAC;AASzE,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,KAAK,IAAI,SAAS,CAEvE;AAWD;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,GAAG,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAerE"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/sort.js b/includes/external/addressbook/node_modules/css-select/lib/esm/sort.js
new file mode 100644
index 0000000..b3b3239
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/sort.js
@@ -0,0 +1,79 @@
+import { AttributeAction, SelectorType } from "css-what";
+const procedure = new Map([
+ [SelectorType.Universal, 50],
+ [SelectorType.Tag, 30],
+ [SelectorType.Attribute, 1],
+ [SelectorType.Pseudo, 0],
+]);
+export function isTraversal(token) {
+ return !procedure.has(token.type);
+}
+const attributes = new Map([
+ [AttributeAction.Exists, 10],
+ [AttributeAction.Equals, 8],
+ [AttributeAction.Not, 7],
+ [AttributeAction.Start, 6],
+ [AttributeAction.End, 6],
+ [AttributeAction.Any, 5],
+]);
+/**
+ * Sort the parts of the passed selector,
+ * as there is potential for optimization
+ * (some types of selectors are faster than others)
+ *
+ * @param arr Selector to sort
+ */
+export default function sortByProcedure(arr) {
+ const procs = arr.map(getProcedure);
+ for (let i = 1; i < arr.length; i++) {
+ const procNew = procs[i];
+ if (procNew < 0)
+ continue;
+ for (let j = i - 1; j >= 0 && procNew < procs[j]; j--) {
+ const token = arr[j + 1];
+ arr[j + 1] = arr[j];
+ arr[j] = token;
+ procs[j + 1] = procs[j];
+ procs[j] = procNew;
+ }
+ }
+}
+function getProcedure(token) {
+ var _a, _b;
+ let proc = (_a = procedure.get(token.type)) !== null && _a !== void 0 ? _a : -1;
+ if (token.type === SelectorType.Attribute) {
+ proc = (_b = attributes.get(token.action)) !== null && _b !== void 0 ? _b : 4;
+ if (token.action === AttributeAction.Equals && token.name === "id") {
+ // Prefer ID selectors (eg. #ID)
+ proc = 9;
+ }
+ if (token.ignoreCase) {
+ /*
+ * IgnoreCase adds some overhead, prefer "normal" token
+ * this is a binary operation, to ensure it's still an int
+ */
+ proc >>= 1;
+ }
+ }
+ else if (token.type === SelectorType.Pseudo) {
+ if (!token.data) {
+ proc = 3;
+ }
+ else if (token.name === "has" || token.name === "contains") {
+ proc = 0; // Expensive in any case
+ }
+ else if (Array.isArray(token.data)) {
+ // Eg. :matches, :not
+ proc = Math.min(...token.data.map((d) => Math.min(...d.map(getProcedure))));
+ // If we have traversals, try to avoid executing this selector
+ if (proc < 0) {
+ proc = 0;
+ }
+ }
+ else {
+ proc = 2;
+ }
+ }
+ return proc;
+}
+//# sourceMappingURL=sort.js.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/sort.js.map b/includes/external/addressbook/node_modules/css-select/lib/esm/sort.js.map
new file mode 100644
index 0000000..537c45c
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/sort.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"sort.js","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["sort.ts"],"names":[],"mappings":"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"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/types.d.ts b/includes/external/addressbook/node_modules/css-select/lib/esm/types.d.ts
new file mode 100644
index 0000000..7a0cd8a
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/types.d.ts
@@ -0,0 +1,167 @@
+import type { Selector } from "css-what";
+export declare type InternalSelector = Selector | {
+ type: "_flexibleDescendant";
+};
+export declare type Predicate<Value> = (v: Value) => boolean;
+export interface Adapter<Node, ElementNode extends Node> {
+ /**
+ * Is the node a tag?
+ */
+ isTag: (node: Node) => node is ElementNode;
+ /**
+ * Does at least one of passed element nodes pass the test predicate?
+ */
+ existsOne: (test: Predicate<ElementNode>, elems: Node[]) => boolean;
+ /**
+ * Get the attribute value.
+ */
+ getAttributeValue: (elem: ElementNode, name: string) => string | undefined;
+ /**
+ * Get the node's children
+ */
+ getChildren: (node: Node) => Node[];
+ /**
+ * Get the name of the tag
+ */
+ getName: (elem: ElementNode) => string;
+ /**
+ * Get the parent of the node
+ */
+ getParent: (node: ElementNode) => Node | null;
+ /**
+ * Get the siblings of the node. Note that unlike jQuery's `siblings` method,
+ * this is expected to include the current node as well
+ */
+ getSiblings: (node: Node) => Node[];
+ /**
+ * Returns the previous element sibling of a node.
+ */
+ prevElementSibling?: (node: Node) => ElementNode | null;
+ /**
+ * Get the text content of the node, and its children if it has any.
+ */
+ getText: (node: Node) => string;
+ /**
+ * Does the element have the named attribute?
+ */
+ hasAttrib: (elem: ElementNode, name: string) => boolean;
+ /**
+ * Takes an array of nodes, and removes any duplicates, as well as any
+ * nodes whose ancestors are also in the array.
+ */
+ removeSubsets: (nodes: Node[]) => Node[];
+ /**
+ * Finds all of the element nodes in the array that match the test predicate,
+ * as well as any of their children that match it.
+ */
+ findAll: (test: Predicate<ElementNode>, nodes: Node[]) => ElementNode[];
+ /**
+ * Finds the first node in the array that matches the test predicate, or one
+ * of its children.
+ */
+ findOne: (test: Predicate<ElementNode>, elems: Node[]) => ElementNode | null;
+ /**
+ * The adapter can also optionally include an equals method, if your DOM
+ * structure needs a custom equality test to compare two objects which refer
+ * to the same underlying node. If not provided, `css-select` will fall back to
+ * `a === b`.
+ */
+ equals?: (a: Node, b: Node) => boolean;
+ /**
+ * Is the element in hovered state?
+ */
+ isHovered?: (elem: ElementNode) => boolean;
+ /**
+ * Is the element in visited state?
+ */
+ isVisited?: (elem: ElementNode) => boolean;
+ /**
+ * Is the element in active state?
+ */
+ isActive?: (elem: ElementNode) => boolean;
+}
+export interface Options<Node, ElementNode extends Node> {
+ /**
+ * When enabled, tag names will be case-sensitive.
+ *
+ * @default false
+ */
+ xmlMode?: boolean;
+ /**
+ * Lower-case attribute names.
+ *
+ * @default !xmlMode
+ */
+ lowerCaseAttributeNames?: boolean;
+ /**
+ * Lower-case tag names.
+ *
+ * @default !xmlMode
+ */
+ lowerCaseTags?: boolean;
+ /**
+ * Is the document in quirks mode?
+ *
+ * This will lead to .className and #id being case-insensitive.
+ *
+ * @default false
+ */
+ quirksMode?: boolean;
+ /**
+ * Pseudo-classes that override the default ones.
+ *
+ * Maps from names to either strings of functions.
+ * - A string value is a selector that the element must match to be selected.
+ * - A function is called with the element as its first argument, and optional
+ * parameters second. If it returns true, the element is selected.
+ */
+ pseudos?: Record<string, string | ((elem: ElementNode, value?: string | null) => boolean)> | undefined;
+ /**
+ * The last function in the stack, will be called with the last element
+ * that's looked at.
+ */
+ rootFunc?: (element: ElementNode) => boolean;
+ /**
+ * The adapter to use when interacting with the backing DOM structure. By
+ * default it uses the `domutils` module.
+ */
+ adapter?: Adapter<Node, ElementNode>;
+ /**
+ * The context of the current query. Used to limit the scope of searches.
+ * Can be matched directly using the `:scope` pseudo-class.
+ */
+ context?: Node | Node[];
+ /**
+ * Indicates whether to consider the selector as a relative selector.
+ *
+ * Relative selectors that don't include a `:scope` pseudo-class behave
+ * as if they have a `:scope ` prefix (a `:scope` pseudo-class, followed by
+ * a descendant selector).
+ *
+ * If relative selectors are disabled, selectors starting with a traversal
+ * will lead to an error.
+ *
+ * @default true
+ * @see {@link https://www.w3.org/TR/selectors-4/#relative}
+ */
+ relativeSelector?: boolean;
+ /**
+ * Allow css-select to cache results for some selectors, sometimes greatly
+ * improving querying performance. Disable this if your document can
+ * change in between queries with the same compiled selector.
+ *
+ * @default true
+ */
+ cacheResults?: boolean;
+}
+export interface InternalOptions<Node, ElementNode extends Node> extends Options<Node, ElementNode> {
+ adapter: Adapter<Node, ElementNode>;
+ equals: (a: Node, b: Node) => boolean;
+}
+export interface CompiledQuery<ElementNode> {
+ (node: ElementNode): boolean;
+ shouldTestNextSiblings?: boolean;
+}
+export declare type Query<ElementNode> = string | CompiledQuery<ElementNode> | Selector[][];
+export declare type CompileToken<Node, ElementNode extends Node> = (token: InternalSelector[][], options: InternalOptions<Node, ElementNode>, context?: Node[] | Node) => CompiledQuery<ElementNode>;
+//# sourceMappingURL=types.d.ts.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/types.d.ts.map b/includes/external/addressbook/node_modules/css-select/lib/esm/types.d.ts.map
new file mode 100644
index 0000000..d14b18f
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/types.d.ts.map
@@ -0,0 +1 @@
+{"version":3,"file":"types.d.ts","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["types.ts"],"names":[],"mappings":"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"} \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/types.js b/includes/external/addressbook/node_modules/css-select/lib/esm/types.js
new file mode 100644
index 0000000..718fd38
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/types.js
@@ -0,0 +1,2 @@
+export {};
+//# sourceMappingURL=types.js.map \ No newline at end of file
diff --git a/includes/external/addressbook/node_modules/css-select/lib/esm/types.js.map b/includes/external/addressbook/node_modules/css-select/lib/esm/types.js.map
new file mode 100644
index 0000000..d1bde2f
--- /dev/null
+++ b/includes/external/addressbook/node_modules/css-select/lib/esm/types.js.map
@@ -0,0 +1 @@
+{"version":3,"file":"types.js","sourceRoot":"https://raw.githubusercontent.com/fb55/css-select/0f0725a9dfeddd2fdb54eda9656cdbab5bbf6be6/src/","sources":["types.ts"],"names":[],"mappings":""} \ No newline at end of file