@mattilsynet/design 2.1.6 → 2.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/mtds/alert/alert.js.map +1 -1
- package/mtds/button/button.d.ts +0 -1
- package/mtds/button/button.js.map +1 -1
- package/mtds/external/@floating-ui/dom/dist/floating-ui.dom.js +169 -167
- package/mtds/external/@floating-ui/dom/dist/floating-ui.dom.js.map +1 -1
- package/mtds/external/@u-elements/u-combobox/dist/u-combobox.js +159 -146
- package/mtds/external/@u-elements/u-combobox/dist/u-combobox.js.map +1 -1
- package/mtds/external/@u-elements/u-datalist/dist/u-datalist.js +43 -45
- package/mtds/external/@u-elements/u-datalist/dist/u-datalist.js.map +1 -1
- package/mtds/external/@u-elements/u-details/dist/u-details.js +27 -29
- package/mtds/external/@u-elements/u-details/dist/u-details.js.map +1 -1
- package/mtds/external/@u-elements/u-progress/dist/u-progress.js +42 -45
- package/mtds/external/@u-elements/u-progress/dist/u-progress.js.map +1 -1
- package/mtds/external/@u-elements/u-tabs/dist/u-tabs.js +57 -56
- package/mtds/external/@u-elements/u-tabs/dist/u-tabs.js.map +1 -1
- package/mtds/field/field.js +13 -11
- package/mtds/field/field.js.map +1 -1
- package/mtds/index.iife.js +30 -30
- package/mtds/input/input.d.ts +2 -0
- package/mtds/input/input.js +14 -9
- package/mtds/input/input.js.map +1 -1
- package/mtds/layout/layout.d.ts +1 -0
- package/mtds/layout/layout.js.map +1 -1
- package/mtds/package.json.js +1 -1
- package/mtds/react.js +37 -36
- package/mtds/styles.css +1 -1
- package/mtds/styles.json +20 -20
- package/mtds/styles.module.css.js +47 -47
- package/mtds/table/table-observer.js +13 -17
- package/mtds/table/table-observer.js.map +1 -1
- package/mtds/tag/tag.d.ts +3 -1
- package/mtds/tag/tag.js.map +1 -1
- package/mtds/typography/typography.d.ts +3 -1
- package/mtds/typography/typography.js.map +1 -1
- package/package.json +16 -16
|
@@ -5,55 +5,55 @@ var q = Object.defineProperty, k = Object.getOwnPropertySymbols, z = Object.prot
|
|
|
5
5
|
for (var i of k(e))
|
|
6
6
|
G.call(e, i) && $(t, i, e[i]);
|
|
7
7
|
return t;
|
|
8
|
-
}, b = typeof window < "u" && typeof window.document < "u" && typeof window.navigator < "u", y = b && /android/i.test(navigator.userAgent),
|
|
8
|
+
}, b = typeof window < "u" && typeof window.document < "u" && typeof window.navigator < "u", y = b && /android/i.test(navigator.userAgent), D = b && /iPad|iPhone|iPod/.test(navigator.userAgent), M;
|
|
9
9
|
b && // @ts-expect-error Typescript has not implemented userAgentData yet https://stackoverflow.com/a/71392474
|
|
10
10
|
/^Mac/i.test(((M = navigator.userAgentData) == null ? void 0 : M.platform) || navigator.platform);
|
|
11
|
-
var Q = `${y ? "data" : "aria"}-labelledby`, Z = ":host(:not([hidden])) { display: block }", tt = "outline: 1px dotted; outline: 5px auto Highlight; outline: 5px auto -webkit-focus-ring-color",
|
|
11
|
+
var Q = `${y ? "data" : "aria"}-labelledby`, Z = ":host(:not([hidden])) { display: block }", tt = "outline: 1px dotted; outline: 5px auto Highlight; outline: 5px auto -webkit-focus-ring-color", U = typeof HTMLElement > "u" ? class {
|
|
12
12
|
} : HTMLElement;
|
|
13
13
|
function r(t, e, i) {
|
|
14
14
|
return i === void 0 ? t.getAttribute(e) : (i === null ? t.removeAttribute(e) : t.getAttribute(e) !== i && t.setAttribute(e, i), null);
|
|
15
15
|
}
|
|
16
|
-
var
|
|
16
|
+
var B = (t, e, i) => {
|
|
17
17
|
for (const o of i[0].split(","))
|
|
18
18
|
i[0] = o, Element.prototype[`${t}EventListener`].apply(e, i);
|
|
19
|
-
}, f = (t, ...e) =>
|
|
20
|
-
|
|
19
|
+
}, f = (t, ...e) => B("add", t, e), w = (t, ...e) => B("remove", t, e), et = (t, e) => t.shadowRoot || t.attachShadow({ mode: "open" }).append(
|
|
20
|
+
C("slot"),
|
|
21
21
|
// Unnamed slot does automatically render all top element nodes
|
|
22
|
-
|
|
23
|
-
),
|
|
24
|
-
if (e === void 0) return
|
|
22
|
+
C("style", e)
|
|
23
|
+
), g = /* @__PURE__ */ new WeakMap(), S = (t, e) => {
|
|
24
|
+
if (e === void 0) return g.get(t);
|
|
25
25
|
try {
|
|
26
|
-
|
|
26
|
+
g.get(t).disconnect(), g.delete(t);
|
|
27
27
|
} catch {
|
|
28
28
|
}
|
|
29
29
|
if (e) {
|
|
30
30
|
const i = new MutationObserver(
|
|
31
31
|
(o) => t.handleEvent({ type: "mutation", detail: o })
|
|
32
32
|
);
|
|
33
|
-
i.observe(t, e),
|
|
33
|
+
i.observe(t, e), g.set(t, i);
|
|
34
34
|
}
|
|
35
|
-
},
|
|
35
|
+
}, N = (t) => {
|
|
36
36
|
var e;
|
|
37
37
|
const i = ((e = t.getRootNode) == null ? void 0 : e.call(t)) || t.ownerDocument;
|
|
38
38
|
return i instanceof Document || i instanceof ShadowRoot ? i : document;
|
|
39
|
-
}, it = 0,
|
|
39
|
+
}, it = 0, L = (t) => t ? (t.id || (t.id = `:${t.nodeName.toLowerCase()}${(++it).toString(32)}`), t.id) : "", C = (t, e, i) => {
|
|
40
40
|
const o = document.createElement(t);
|
|
41
41
|
return e && (o.textContent = e), o;
|
|
42
42
|
}, F = {
|
|
43
43
|
define: (t, e) => !b || window.customElements.get(t) || window.customElements.define(t, e)
|
|
44
44
|
}, v, ot = 0, V = (t) => {
|
|
45
|
-
v || (v =
|
|
45
|
+
v || (v = C("div"), v.style.cssText = "position:fixed;overflow:hidden;width:1px;white-space:nowrap", r(v, "aria-live", "assertive")), v.isConnected || document.body.append(v), t && (v.textContent = `${t}${ot++ % 2 ? " " : ""}`);
|
|
46
46
|
}, rt = (t, e, i = "") => {
|
|
47
47
|
var o, u;
|
|
48
48
|
const s = { bubbles: !0, composed: !0, data: e, inputType: i }, l = HTMLInputElement.prototype;
|
|
49
49
|
t.dispatchEvent(new InputEvent("beforeinput", s)), (u = (o = Object.getOwnPropertyDescriptor(l, "value")) == null ? void 0 : o.set) == null || u.call(t, e), t.dispatchEvent(new InputEvent("input", s)), t.dispatchEvent(new Event("change", { bubbles: !0 }));
|
|
50
|
-
},
|
|
50
|
+
}, T = !1, P = (t) => (t?.type === "mouseup" && (T = !1), t?.type === "mousedown" && (T = !0, f(document, "mouseup", P, { once: !0 })), T), x = "disabled", h = "selected", nt = class extends U {
|
|
51
51
|
// Using ES2015 syntax for backwards compatibility
|
|
52
52
|
static get observedAttributes() {
|
|
53
|
-
return [
|
|
53
|
+
return [x, h];
|
|
54
54
|
}
|
|
55
55
|
connectedCallback() {
|
|
56
|
-
|
|
56
|
+
D || (this.tabIndex = -1), this.hasAttribute("role") || r(this, "role", "option"), this.attributeChangedCallback();
|
|
57
57
|
}
|
|
58
58
|
attributeChangedCallback() {
|
|
59
59
|
r(this, "aria-disabled", `${this.disabled}`), r(this, "aria-selected", `${this.selected}`);
|
|
@@ -66,10 +66,10 @@ var R = (t, e, i) => {
|
|
|
66
66
|
this[h] = t;
|
|
67
67
|
}
|
|
68
68
|
get disabled() {
|
|
69
|
-
return r(this,
|
|
69
|
+
return r(this, x) !== null;
|
|
70
70
|
}
|
|
71
71
|
set disabled(t) {
|
|
72
|
-
r(this,
|
|
72
|
+
r(this, x, t ? "" : null);
|
|
73
73
|
}
|
|
74
74
|
/** Retrieves a reference to the form that the object is embedded in. */
|
|
75
75
|
get form() {
|
|
@@ -114,28 +114,25 @@ var R = (t, e, i) => {
|
|
|
114
114
|
}
|
|
115
115
|
};
|
|
116
116
|
F.define("u-option", nt);
|
|
117
|
-
var
|
|
117
|
+
var at = `${Z}
|
|
118
|
+
::slotted(u-option) { display: block; cursor: pointer }
|
|
119
|
+
::slotted(u-option:focus) { ${tt} }
|
|
120
|
+
::slotted(u-option[aria-hidden="true"]),
|
|
121
|
+
::slotted(u-option[disabled]),
|
|
122
|
+
::slotted(u-option[hidden]) { display: none !important }`, H, R = 0, ut = D || y, K = "click,focusout,input,keydown,mousedown,mouseup", j = "focus,focusin,blur,focusout", E = {
|
|
118
123
|
singular: "%d hit",
|
|
119
124
|
plural: "%d hits"
|
|
120
|
-
},
|
|
125
|
+
}, st = class extends U {
|
|
121
126
|
constructor() {
|
|
122
|
-
super(), this._texts = J({},
|
|
123
|
-
this,
|
|
124
|
-
`${Z}
|
|
125
|
-
::slotted(u-option) { display: block; cursor: pointer }
|
|
126
|
-
::slotted(u-option:focus) { ${tt} }
|
|
127
|
-
::slotted(u-option[aria-hidden="true"]),
|
|
128
|
-
::slotted(u-option[disabled]),
|
|
129
|
-
::slotted(u-option[hidden]) { display: none !important }`
|
|
130
|
-
);
|
|
127
|
+
super(), this._texts = J({}, E), this._value = "", et(this, at);
|
|
131
128
|
}
|
|
132
129
|
// Used to prevent unnecessary announcements
|
|
133
130
|
// Using ES2015 syntax for backwards compatibility
|
|
134
131
|
static get observedAttributes() {
|
|
135
|
-
return ["id", ...Object.keys(
|
|
132
|
+
return ["id", ...Object.keys(E).map((t) => `data-sr-${t}`)];
|
|
136
133
|
}
|
|
137
134
|
connectedCallback() {
|
|
138
|
-
this.hidden = !0, this._root =
|
|
135
|
+
this.hidden = !0, this._root = N(this), r(this, "role", "listbox"), r(this, "tabindex", "-1"), f(this._root, "focusin", this), f(this._root, "focus", this, !0), S(this, {
|
|
139
136
|
attributeFilter: ["disabled", "hidden", "label", "value"],
|
|
140
137
|
attributes: !0,
|
|
141
138
|
characterData: !0,
|
|
@@ -148,7 +145,7 @@ var B, H = 0, at = P || y, K = "click,focusout,input,keydown,mousedown,mouseup",
|
|
|
148
145
|
}
|
|
149
146
|
attributeChangedCallback(t, e, i) {
|
|
150
147
|
const o = t?.split("data-sr-")[1], u = `input[list="${this.id}"]`;
|
|
151
|
-
if (
|
|
148
|
+
if (E[o]) this._texts[o] = i || E[o];
|
|
152
149
|
else if (this._root) {
|
|
153
150
|
this._input && O(this, this._input);
|
|
154
151
|
for (const s of this._root.querySelectorAll(u))
|
|
@@ -157,7 +154,7 @@ var B, H = 0, at = P || y, K = "click,focusout,input,keydown,mousedown,mouseup",
|
|
|
157
154
|
}
|
|
158
155
|
handleEvent(t) {
|
|
159
156
|
const { target: e, type: i } = t;
|
|
160
|
-
t.defaultPrevented || (i === "click" &&
|
|
157
|
+
t.defaultPrevented || (i === "click" && ct(this, t), (i === "focus" || i === "focusin") && dt(this, t), (i === "blur" || i === "focusout") && lt(this, t), i === "keydown" && pt(this, t), i === "mousedown" && this.contains(e) && P(t), (i === "mutation" || i === "input") && (clearTimeout(R), R = setTimeout(Y, 0, this, t)));
|
|
161
158
|
}
|
|
162
159
|
get options() {
|
|
163
160
|
return this.getElementsByTagName("u-option");
|
|
@@ -171,27 +168,27 @@ var B, H = 0, at = P || y, K = "click,focusout,input,keydown,mousedown,mouseup",
|
|
|
171
168
|
}, A = (t) => {
|
|
172
169
|
t._input && (w(t._input || t, j, t), w(t._root || t, K, t), _(t, !1), t._input = void 0);
|
|
173
170
|
}, O = (t, e, i = !1) => {
|
|
174
|
-
t.popover && r(e, "popovertarget",
|
|
175
|
-
},
|
|
171
|
+
t.popover && r(e, "popovertarget", L(t)), f(e, j, t, !0), r(e, "aria-autocomplete", "list"), r(e, "aria-controls", L(t)), r(e, "aria-expanded", `${!ut || i}`), r(e, "autocomplete", "off"), r(e, "role", W(e) ? null : "combobox");
|
|
172
|
+
}, dt = (t, e) => {
|
|
176
173
|
var i;
|
|
177
174
|
const o = e.target instanceof HTMLInputElement;
|
|
178
|
-
o && e.isTrusted && e.stopImmediatePropagation(), t._input !== e.target && o && e.target.list === t && (t._input && A(t), t._input = e.target, t._input.dispatchEvent(new FocusEvent("focus")), t._input.dispatchEvent(new FocusEvent("focusin", { bubbles: !0 })), r(t, Q,
|
|
179
|
-
},
|
|
180
|
-
!y && !
|
|
175
|
+
o && e.isTrusted && e.stopImmediatePropagation(), t._input !== e.target && o && e.target.list === t && (t._input && A(t), t._input = e.target, t._input.dispatchEvent(new FocusEvent("focus")), t._input.dispatchEvent(new FocusEvent("focusin", { bubbles: !0 })), r(t, Q, L((i = t._input.labels) == null ? void 0 : i[0])), f(t._root || t, K, t), _(t, r(t._input, "inputmode") !== "none"), V());
|
|
176
|
+
}, lt = (t, e) => {
|
|
177
|
+
!y && !P() && t._input && setTimeout(X, 0, t), e.target === t._input && e.isTrusted && e.stopImmediatePropagation();
|
|
181
178
|
}, X = (t) => {
|
|
182
179
|
var e;
|
|
183
180
|
const i = ((e = t._root) == null ? void 0 : e.activeElement) || null, o = t._input;
|
|
184
181
|
o && o !== i && !t.contains(i) && (o.dispatchEvent(new FocusEvent("blur", { relatedTarget: i })), o.dispatchEvent(
|
|
185
182
|
new FocusEvent("focusout", { bubbles: !0, relatedTarget: i })
|
|
186
183
|
), A(t));
|
|
187
|
-
},
|
|
184
|
+
}, ct = (t, { target: e }) => {
|
|
188
185
|
var i;
|
|
189
186
|
if (!t._input || t._input === e) return _(t, !0);
|
|
190
187
|
for (const o of t.options)
|
|
191
188
|
if (o.contains(e))
|
|
192
189
|
return r(t, "aria-multiselectable") !== "true" && ((i = t._input) == null || i.focus(), _(t, !1)), rt(t._input, o.value);
|
|
193
190
|
y && X(t);
|
|
194
|
-
},
|
|
191
|
+
}, pt = (t, e) => {
|
|
195
192
|
var i;
|
|
196
193
|
const { key: o, target: u, altKey: s, ctrlKey: l, shiftKey: I, metaKey: m } = e, c = o === "Escape" || o === "Esc";
|
|
197
194
|
if (s || l || m || I || o === "Tab") return;
|
|
@@ -214,20 +211,21 @@ var B, H = 0, at = P || y, K = "click,focusout,input,keydown,mousedown,mouseup",
|
|
|
214
211
|
for (const n of m) r(n, "aria-hidden", "true");
|
|
215
212
|
for (const n of c) r(n, "aria-hidden", "false");
|
|
216
213
|
const a = c.length;
|
|
217
|
-
clearTimeout(
|
|
214
|
+
clearTimeout(H), e?.type === "input" && l !== t._value && (H = setTimeout(() => {
|
|
218
215
|
const n = `${!a && t.innerText.trim() || `${i[a === 1 ? "singular" : "plural"]}`.replace("%d", `${a}`)}`;
|
|
219
216
|
!t.hidden && o?.activeElement === u && V(n), t._value = l;
|
|
220
|
-
}, 1e3)),
|
|
217
|
+
}, 1e3)), D && c.map((n, d) => r(n, "title", `${d + 1}/${a}`));
|
|
221
218
|
};
|
|
222
219
|
b && Object.defineProperty(HTMLInputElement.prototype, "list", {
|
|
223
220
|
configurable: !0,
|
|
224
221
|
enumerable: !0,
|
|
225
222
|
get() {
|
|
226
|
-
return
|
|
223
|
+
return N(this).getElementById(r(this, "list") || "");
|
|
227
224
|
}
|
|
228
225
|
});
|
|
229
|
-
F.define("u-datalist",
|
|
226
|
+
F.define("u-datalist", st);
|
|
230
227
|
export {
|
|
231
|
-
|
|
228
|
+
st as UHTMLDataListElement,
|
|
229
|
+
at as UHTMLDataListStyle
|
|
232
230
|
};
|
|
233
231
|
//# sourceMappingURL=u-datalist.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"u-datalist.js","sources":["../../../../../node_modules/@u-elements/u-datalist/dist/u-datalist.js"],"sourcesContent":["var __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\n\n// ../utils.ts\nvar IS_BROWSER = typeof window !== \"undefined\" && typeof window.document !== \"undefined\" && typeof window.navigator !== \"undefined\";\nvar IS_ANDROID = IS_BROWSER && /android/i.test(navigator.userAgent);\nvar IS_IOS = IS_BROWSER && /iPad|iPhone|iPod/.test(navigator.userAgent);\nvar _a;\nIS_BROWSER && // @ts-expect-error Typescript has not implemented userAgentData yet https://stackoverflow.com/a/71392474\n/^Mac/i.test(((_a = navigator.userAgentData) == null ? void 0 : _a.platform) || navigator.platform);\nvar SAFE_LABELLEDBY = `${IS_ANDROID ? \"data\" : \"aria\"}-labelledby`;\nvar DISPLAY_BLOCK = \":host(:not([hidden])) { display: block }\";\nvar FOCUS_OUTLINE = \"outline: 1px dotted; outline: 5px auto Highlight; outline: 5px auto -webkit-focus-ring-color\";\nvar UHTMLElement = typeof HTMLElement === \"undefined\" ? class {\n} : HTMLElement;\nfunction attr(el, name, value) {\n if (value === void 0) return el.getAttribute(name);\n if (value === null) el.removeAttribute(name);\n else if (el.getAttribute(name) !== value) el.setAttribute(name, value);\n return null;\n}\nvar events = (action, element, rest) => {\n for (const type of rest[0].split(\",\")) {\n rest[0] = type;\n Element.prototype[`${action}EventListener`].apply(element, rest);\n }\n};\nvar on = (element, ...rest) => events(\"add\", element, rest);\nvar off = (element, ...rest) => events(\"remove\", element, rest);\nvar attachStyle = (element, css) => element.attachShadow({ mode: \"open\" }).append(\n createElement(\"slot\"),\n // Unnamed slot does automatically render all top element nodes\n createElement(\"style\", css)\n);\nvar observers = /* @__PURE__ */ new WeakMap();\nvar mutationObserver = (element, options) => {\n if (options === void 0) return observers.get(element);\n try {\n observers.get(element).disconnect();\n observers.delete(element);\n } catch (_err) {\n }\n if (options) {\n const observer = new MutationObserver(\n (detail) => element.handleEvent({ type: \"mutation\", detail })\n );\n observer.observe(element, options);\n observers.set(element, observer);\n }\n};\nvar getRoot = (node) => {\n var _a2;\n const root = ((_a2 = node.getRootNode) == null ? void 0 : _a2.call(node)) || node.ownerDocument;\n return root instanceof Document || root instanceof ShadowRoot ? root : document;\n};\nvar id = 0;\nvar useId = (el) => {\n if (!el) return \"\";\n if (!el.id) el.id = `:${el.nodeName.toLowerCase()}${(++id).toString(32)}`;\n return el.id;\n};\nvar createElement = (tagName, text, attrs) => {\n const el = document.createElement(tagName);\n if (text) el.textContent = text;\n return el;\n};\nvar customElements = {\n define: (name, instance) => !IS_BROWSER || window.customElements.get(name) || window.customElements.define(name, instance)\n};\nvar LIVE;\nvar LIVE_SR_FIX = 0;\nvar speak = (text) => {\n if (!LIVE) {\n LIVE = createElement(\"div\");\n LIVE.style.cssText = \"position:fixed;overflow:hidden;width:1px;white-space:nowrap\";\n attr(LIVE, \"aria-live\", \"assertive\");\n }\n if (!LIVE.isConnected) document.body.append(LIVE);\n if (text) LIVE.textContent = `${text}${LIVE_SR_FIX++ % 2 ? \"\\xA0\" : \"\"}`;\n};\nvar setValue = (input, data, type = \"\") => {\n var _a2, _b;\n const event = { bubbles: true, composed: true, data, inputType: type };\n const proto = HTMLInputElement.prototype;\n input.dispatchEvent(new InputEvent(\"beforeinput\", event));\n (_b = (_a2 = Object.getOwnPropertyDescriptor(proto, \"value\")) == null ? void 0 : _a2.set) == null ? void 0 : _b.call(input, data);\n input.dispatchEvent(new InputEvent(\"input\", event));\n input.dispatchEvent(new Event(\"change\", { bubbles: true }));\n};\nvar IS_PRESS = false;\nvar isMouseDown = (event) => {\n if ((event == null ? void 0 : event.type) === \"mouseup\") IS_PRESS = false;\n if ((event == null ? void 0 : event.type) === \"mousedown\") {\n IS_PRESS = true;\n on(document, \"mouseup\", isMouseDown, { once: true });\n }\n return IS_PRESS;\n};\n\n// u-option.ts\nvar DISABLED = \"disabled\";\nvar SELECTED = \"selected\";\nvar UHTMLOptionElement = class extends UHTMLElement {\n // Using ES2015 syntax for backwards compatibility\n static get observedAttributes() {\n return [DISABLED, SELECTED];\n }\n connectedCallback() {\n if (!IS_IOS) this.tabIndex = -1;\n if (!this.hasAttribute(\"role\")) attr(this, \"role\", \"option\");\n this.attributeChangedCallback();\n }\n attributeChangedCallback() {\n attr(this, \"aria-disabled\", `${this.disabled}`);\n attr(this, \"aria-selected\", `${this.selected}`);\n }\n /** Sets or retrieves whether the option in the list box is the default item. */\n get defaultSelected() {\n return this[SELECTED];\n }\n set defaultSelected(value) {\n this[SELECTED] = value;\n }\n get disabled() {\n return attr(this, DISABLED) !== null;\n }\n set disabled(value) {\n attr(this, DISABLED, value ? \"\" : null);\n }\n /** Retrieves a reference to the form that the object is embedded in. */\n get form() {\n return this.closest(\"form\");\n }\n /** Sets or retrieves the ordinal position of an option in a list box. */\n get index() {\n var _a2;\n return [\n ...((_a2 = this.parentElement) == null ? void 0 : _a2.options) || [this]\n ].indexOf(this);\n }\n /** Sets or retrieves a value that you can use to implement your own label functionality for the object. */\n get label() {\n var _a2;\n return (_a2 = attr(this, \"label\")) != null ? _a2 : this.text;\n }\n set label(value) {\n attr(this, \"label\", value);\n }\n get selected() {\n return attr(this, SELECTED) !== null;\n }\n set selected(value) {\n attr(this, SELECTED, value ? \"\" : null);\n }\n /** Sets or retrieves the text string specified by the option tag. */\n get text() {\n var _a2;\n return ((_a2 = this.textContent) == null ? void 0 : _a2.trim()) || \"\";\n }\n set text(text) {\n this.textContent = text;\n }\n /** Sets or retrieves the value which is returned to the server when the form control is submitted. */\n get value() {\n var _a2;\n return (_a2 = attr(this, \"value\")) != null ? _a2 : this.text;\n }\n set value(value) {\n attr(this, \"value\", value);\n }\n};\ncustomElements.define(\"u-option\", UHTMLOptionElement);\n\n// u-datalist.ts\nvar LIVE_TIMER;\nvar INPUT_DEBOUNCE = 0;\nvar IS_MOBILE = IS_IOS || IS_ANDROID;\nvar EVENTS = \"click,focusout,input,keydown,mousedown,mouseup\";\nvar EVENTS_INPUT = \"focus,focusin,blur,focusout\";\nvar TEXTS = {\n singular: \"%d hit\",\n plural: \"%d hits\"\n};\nvar UHTMLDataListElement = class extends UHTMLElement {\n constructor() {\n super();\n this._texts = __spreadValues({}, TEXTS);\n this._value = \"\";\n attachStyle(\n this,\n `${DISPLAY_BLOCK}\n\t\t\t::slotted(u-option) { display: block; cursor: pointer }\n\t\t\t::slotted(u-option:focus) { ${FOCUS_OUTLINE} }\n\t\t\t::slotted(u-option[aria-hidden=\"true\"]),\n\t\t\t::slotted(u-option[disabled]),\n\t\t\t::slotted(u-option[hidden]) { display: none !important }`\n );\n }\n // Used to prevent unnecessary announcements\n // Using ES2015 syntax for backwards compatibility\n static get observedAttributes() {\n return [\"id\", ...Object.keys(TEXTS).map((key) => `data-sr-${key}`)];\n }\n connectedCallback() {\n this.hidden = true;\n this._root = getRoot(this);\n attr(this, \"role\", \"listbox\");\n attr(this, \"tabindex\", \"-1\");\n on(this._root, \"focusin\", this);\n on(this._root, \"focus\", this, true);\n mutationObserver(this, {\n attributeFilter: [\"disabled\", \"hidden\", \"label\", \"value\"],\n attributes: true,\n characterData: true,\n childList: true,\n subtree: true\n });\n setTimeout(() => this.attributeChangedCallback());\n }\n disconnectedCallback() {\n off(this._root || this, \"focus\", this, true);\n off(this._root || this, \"focusin\", this);\n mutationObserver(this, false);\n disconnectInput(this);\n this._root = void 0;\n }\n attributeChangedCallback(prop, _prev, next) {\n const text = prop == null ? void 0 : prop.split(\"data-sr-\")[1];\n const css = `input[list=\"${this.id}\"]`;\n if (TEXTS[text]) this._texts[text] = next || TEXTS[text];\n else if (this._root) {\n if (this._input) setupInput(this, this._input);\n for (const input of this._root.querySelectorAll(css))\n setupInput(this, input);\n }\n }\n handleEvent(event) {\n const { target, type } = event;\n if (event.defaultPrevented) return;\n if (type === \"click\") onClick(this, event);\n if (type === \"focus\" || type === \"focusin\") onFocus(this, event);\n if (type === \"blur\" || type === \"focusout\") onBlur(this, event);\n if (type === \"keydown\") onKeyDown(this, event);\n if (type === \"mousedown\" && this.contains(target))\n isMouseDown(event);\n if (type === \"mutation\" || type === \"input\") {\n clearTimeout(INPUT_DEBOUNCE);\n INPUT_DEBOUNCE = setTimeout(onInput, 0, this, event);\n }\n }\n get options() {\n return this.getElementsByTagName(\"u-option\");\n }\n};\nvar isDisabled = (input) => (input == null ? void 0 : input.disabled) || (input == null ? void 0 : input.readOnly) || false;\nvar setExpanded = (self, open) => {\n var _a2, _b, _c;\n if (self.hidden !== open) return;\n self.hidden = isDisabled(self == null ? void 0 : self._input) || !open;\n (_a2 = mutationObserver(self)) == null ? void 0 : _a2.takeRecords();\n const isPopover = self.isConnected && self.popover && ((_b = self._input) == null ? void 0 : _b.isConnected) && ((_c = self._input) == null ? void 0 : _c.popoverTargetElement) === self;\n if (self._input) setupInput(self, self._input, open);\n if (isPopover) attr(self, \"popover\", \"manual\");\n if (isPopover) self.togglePopover(open);\n if (open) onInput(self);\n};\nvar disconnectInput = (self) => {\n if (!self._input) return;\n off(self._input || self, EVENTS_INPUT, self);\n off(self._root || self, EVENTS, self);\n setExpanded(self, false);\n self._input = void 0;\n};\nvar setupInput = (self, input, open = false) => {\n if (self.popover) attr(input, \"popovertarget\", useId(self));\n on(input, EVENTS_INPUT, self, true);\n attr(input, \"aria-autocomplete\", \"list\");\n attr(input, \"aria-controls\", useId(self));\n attr(input, \"aria-expanded\", `${!IS_MOBILE || open}`);\n attr(input, \"autocomplete\", \"off\");\n attr(input, \"role\", isDisabled(input) ? null : \"combobox\");\n};\nvar onFocus = (self, event) => {\n var _a2;\n const isInput = event.target instanceof HTMLInputElement;\n if (isInput && event.isTrusted) event.stopImmediatePropagation();\n if (self._input !== event.target && isInput && event.target.list === self) {\n if (self._input) disconnectInput(self);\n self._input = event.target;\n self._input.dispatchEvent(new FocusEvent(\"focus\"));\n self._input.dispatchEvent(new FocusEvent(\"focusin\", { bubbles: true }));\n attr(self, SAFE_LABELLEDBY, useId((_a2 = self._input.labels) == null ? void 0 : _a2[0]));\n on(self._root || self, EVENTS, self);\n setExpanded(self, attr(self._input, \"inputmode\") !== \"none\");\n speak();\n }\n};\nvar onBlur = (self, event) => {\n if (!IS_ANDROID && !isMouseDown() && self._input)\n setTimeout(onBlurred, 0, self);\n if (event.target === self._input && event.isTrusted)\n event.stopImmediatePropagation();\n};\nvar onBlurred = (self) => {\n var _a2;\n const relatedTarget = ((_a2 = self._root) == null ? void 0 : _a2.activeElement) || null;\n const input = self._input;\n if (input && input !== relatedTarget && !self.contains(relatedTarget)) {\n input.dispatchEvent(new FocusEvent(\"blur\", { relatedTarget }));\n input.dispatchEvent(\n new FocusEvent(\"focusout\", { bubbles: true, relatedTarget })\n );\n disconnectInput(self);\n }\n};\nvar onClick = (self, { target }) => {\n var _a2;\n if (!self._input || self._input === target) return setExpanded(self, true);\n for (const opt of self.options)\n if (opt.contains(target)) {\n if (attr(self, \"aria-multiselectable\") !== \"true\") {\n (_a2 = self._input) == null ? void 0 : _a2.focus();\n setExpanded(self, false);\n }\n return setValue(self._input, opt.value);\n }\n if (IS_ANDROID) onBlurred(self);\n};\nvar onKeyDown = (self, e) => {\n var _a2;\n const { key, target, altKey, ctrlKey, shiftKey, metaKey } = e;\n const isEscape = key === \"Escape\" || key === \"Esc\";\n if (altKey || ctrlKey || metaKey || shiftKey || key === \"Tab\") return;\n if (isEscape && !self.hidden) e == null ? void 0 : e.preventDefault();\n setExpanded(self, !isEscape);\n const options = [...self.options].filter(\n (el) => attr(el, \"aria-hidden\") !== \"true\" && el.offsetHeight\n );\n const prev = options.indexOf(target);\n let next = -1;\n if (key === \"ArrowDown\") next = (prev + 1) % options.length;\n if (key === \"ArrowUp\") next = (~prev ? prev : options.length) - 1;\n if (~prev) {\n if (key === \"Home\" || key === \"PageUp\") next = 0;\n if (key === \"End\" || key === \"PageDown\") next = options.length - 1;\n if (key === \"Enter\") {\n options[prev].click();\n return e.preventDefault();\n }\n }\n if (options[next]) for (const option of options) option.tabIndex = -1;\n if (options[next]) e.preventDefault();\n (_a2 = options[next] || self._input) == null ? void 0 : _a2.focus();\n if (!options[next] && key === \"ArrowUp\")\n setTimeout(() => {\n var _a3;\n return (_a3 = self._input) == null ? void 0 : _a3.setSelectionRange(999, 999);\n });\n};\nvar onInput = (self, e) => {\n const { _texts, _root, _input, options } = self;\n const value = (_input == null ? void 0 : _input.value.toLowerCase().trim()) || \"\";\n const filter = !self.hasAttribute(\"data-nofilter\");\n const hidden = [];\n const visible = [];\n for (const opt of options) {\n const hide = opt.disabled || opt.hidden || filter && !opt.label.toLowerCase().includes(value);\n (hide ? hidden : visible).push(opt);\n }\n for (const opt of hidden) attr(opt, \"aria-hidden\", \"true\");\n for (const opt of visible) attr(opt, \"aria-hidden\", \"false\");\n const total = visible.length;\n clearTimeout(LIVE_TIMER);\n if ((e == null ? void 0 : e.type) === \"input\" && value !== self._value)\n LIVE_TIMER = setTimeout(() => {\n const text = `${!total && self.innerText.trim() || `${_texts[total === 1 ? \"singular\" : \"plural\"]}`.replace(\"%d\", `${total}`)}`;\n if (!self.hidden && (_root == null ? void 0 : _root.activeElement) === _input) speak(text);\n self._value = value;\n }, 1e3);\n if (IS_IOS)\n visible.forEach((opt, idx) => attr(opt, \"title\", `${idx + 1}/${total}`));\n};\nif (IS_BROWSER)\n Object.defineProperty(HTMLInputElement.prototype, \"list\", {\n configurable: true,\n enumerable: true,\n get() {\n return getRoot(this).getElementById(attr(this, \"list\") || \"\");\n }\n });\ncustomElements.define(\"u-datalist\", UHTMLDataListElement);\n\nexport { UHTMLDataListElement };\n"],"names":["__defProp","__getOwnPropSymbols","__hasOwnProp","__propIsEnum","__defNormalProp","obj","key","value","__spreadValues","a","b","prop","IS_BROWSER","IS_ANDROID","IS_IOS","_a","SAFE_LABELLEDBY","DISPLAY_BLOCK","FOCUS_OUTLINE","UHTMLElement","attr","el","name","events","action","element","rest","type","on","off","attachStyle","css","createElement","observers","mutationObserver","options","observer","detail","getRoot","node","_a2","root","id","useId","tagName","text","attrs","customElements","instance","LIVE","LIVE_SR_FIX","speak","setValue","input","data","_b","event","proto","IS_PRESS","isMouseDown","DISABLED","SELECTED","UHTMLOptionElement","LIVE_TIMER","INPUT_DEBOUNCE","IS_MOBILE","EVENTS","EVENTS_INPUT","TEXTS","UHTMLDataListElement","disconnectInput","_prev","next","setupInput","target","onClick","onFocus","onBlur","onKeyDown","onInput","isDisabled","setExpanded","self","open","_c","isPopover","isInput","onBlurred","relatedTarget","opt","altKey","ctrlKey","shiftKey","metaKey","isEscape","prev","option","_a3","_texts","_root","_input","filter","hidden","visible","total","idx"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"u-datalist.js","sources":["../../../../../node_modules/@u-elements/u-datalist/dist/u-datalist.js"],"sourcesContent":["var __defProp = Object.defineProperty;\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __spreadValues = (a, b) => {\n for (var prop in b || (b = {}))\n if (__hasOwnProp.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n if (__getOwnPropSymbols)\n for (var prop of __getOwnPropSymbols(b)) {\n if (__propIsEnum.call(b, prop))\n __defNormalProp(a, prop, b[prop]);\n }\n return a;\n};\n\n// ../utils.ts\nvar IS_BROWSER = typeof window !== \"undefined\" && typeof window.document !== \"undefined\" && typeof window.navigator !== \"undefined\";\nvar IS_ANDROID = IS_BROWSER && /android/i.test(navigator.userAgent);\nvar IS_IOS = IS_BROWSER && /iPad|iPhone|iPod/.test(navigator.userAgent);\nvar _a;\nIS_BROWSER && // @ts-expect-error Typescript has not implemented userAgentData yet https://stackoverflow.com/a/71392474\n/^Mac/i.test(((_a = navigator.userAgentData) == null ? void 0 : _a.platform) || navigator.platform);\nvar SAFE_LABELLEDBY = `${IS_ANDROID ? \"data\" : \"aria\"}-labelledby`;\nvar DISPLAY_BLOCK = \":host(:not([hidden])) { display: block }\";\nvar FOCUS_OUTLINE = \"outline: 1px dotted; outline: 5px auto Highlight; outline: 5px auto -webkit-focus-ring-color\";\nvar UHTMLElement = typeof HTMLElement === \"undefined\" ? class {\n} : HTMLElement;\nfunction attr(el, name, value) {\n if (value === void 0) return el.getAttribute(name);\n if (value === null) el.removeAttribute(name);\n else if (el.getAttribute(name) !== value) el.setAttribute(name, value);\n return null;\n}\nvar events = (action, element, rest) => {\n for (const type of rest[0].split(\",\")) {\n rest[0] = type;\n Element.prototype[`${action}EventListener`].apply(element, rest);\n }\n};\nvar on = (element, ...rest) => events(\"add\", element, rest);\nvar off = (element, ...rest) => events(\"remove\", element, rest);\nvar attachStyle = (element, css) => element.shadowRoot || element.attachShadow({ mode: \"open\" }).append(\n createElement(\"slot\"),\n // Unnamed slot does automatically render all top element nodes\n createElement(\"style\", css)\n);\nvar observers = /* @__PURE__ */ new WeakMap();\nvar mutationObserver = (element, options) => {\n if (options === void 0) return observers.get(element);\n try {\n observers.get(element).disconnect();\n observers.delete(element);\n } catch (_err) {\n }\n if (options) {\n const observer = new MutationObserver(\n (detail) => element.handleEvent({ type: \"mutation\", detail })\n );\n observer.observe(element, options);\n observers.set(element, observer);\n }\n};\nvar getRoot = (node) => {\n var _a2;\n const root = ((_a2 = node.getRootNode) == null ? void 0 : _a2.call(node)) || node.ownerDocument;\n return root instanceof Document || root instanceof ShadowRoot ? root : document;\n};\nvar id = 0;\nvar useId = (el) => {\n if (!el) return \"\";\n if (!el.id) el.id = `:${el.nodeName.toLowerCase()}${(++id).toString(32)}`;\n return el.id;\n};\nvar createElement = (tagName, text, attrs) => {\n const el = document.createElement(tagName);\n if (text) el.textContent = text;\n return el;\n};\nvar customElements = {\n define: (name, instance) => !IS_BROWSER || window.customElements.get(name) || window.customElements.define(name, instance)\n};\nvar LIVE;\nvar LIVE_SR_FIX = 0;\nvar speak = (text) => {\n if (!LIVE) {\n LIVE = createElement(\"div\");\n LIVE.style.cssText = \"position:fixed;overflow:hidden;width:1px;white-space:nowrap\";\n attr(LIVE, \"aria-live\", \"assertive\");\n }\n if (!LIVE.isConnected) document.body.append(LIVE);\n if (text) LIVE.textContent = `${text}${LIVE_SR_FIX++ % 2 ? \"\\xA0\" : \"\"}`;\n};\nvar setValue = (input, data, type = \"\") => {\n var _a2, _b;\n const event = { bubbles: true, composed: true, data, inputType: type };\n const proto = HTMLInputElement.prototype;\n input.dispatchEvent(new InputEvent(\"beforeinput\", event));\n (_b = (_a2 = Object.getOwnPropertyDescriptor(proto, \"value\")) == null ? void 0 : _a2.set) == null ? void 0 : _b.call(input, data);\n input.dispatchEvent(new InputEvent(\"input\", event));\n input.dispatchEvent(new Event(\"change\", { bubbles: true }));\n};\nvar IS_PRESS = false;\nvar isMouseDown = (event) => {\n if ((event == null ? void 0 : event.type) === \"mouseup\") IS_PRESS = false;\n if ((event == null ? void 0 : event.type) === \"mousedown\") {\n IS_PRESS = true;\n on(document, \"mouseup\", isMouseDown, { once: true });\n }\n return IS_PRESS;\n};\nvar declarativeShadowRoot = (style, slot = \"<slot></slot>\") => `<template shadowrootmode=\"open\">${slot}<style>${style}</style></template>`;\n\n// u-option.ts\nvar DISABLED = \"disabled\";\nvar SELECTED = \"selected\";\nvar UHTMLOptionElement = class extends UHTMLElement {\n // Using ES2015 syntax for backwards compatibility\n static get observedAttributes() {\n return [DISABLED, SELECTED];\n }\n connectedCallback() {\n if (!IS_IOS) this.tabIndex = -1;\n if (!this.hasAttribute(\"role\")) attr(this, \"role\", \"option\");\n this.attributeChangedCallback();\n }\n attributeChangedCallback() {\n attr(this, \"aria-disabled\", `${this.disabled}`);\n attr(this, \"aria-selected\", `${this.selected}`);\n }\n /** Sets or retrieves whether the option in the list box is the default item. */\n get defaultSelected() {\n return this[SELECTED];\n }\n set defaultSelected(value) {\n this[SELECTED] = value;\n }\n get disabled() {\n return attr(this, DISABLED) !== null;\n }\n set disabled(value) {\n attr(this, DISABLED, value ? \"\" : null);\n }\n /** Retrieves a reference to the form that the object is embedded in. */\n get form() {\n return this.closest(\"form\");\n }\n /** Sets or retrieves the ordinal position of an option in a list box. */\n get index() {\n var _a2;\n return [\n ...((_a2 = this.parentElement) == null ? void 0 : _a2.options) || [this]\n ].indexOf(this);\n }\n /** Sets or retrieves a value that you can use to implement your own label functionality for the object. */\n get label() {\n var _a2;\n return (_a2 = attr(this, \"label\")) != null ? _a2 : this.text;\n }\n set label(value) {\n attr(this, \"label\", value);\n }\n get selected() {\n return attr(this, SELECTED) !== null;\n }\n set selected(value) {\n attr(this, SELECTED, value ? \"\" : null);\n }\n /** Sets or retrieves the text string specified by the option tag. */\n get text() {\n var _a2;\n return ((_a2 = this.textContent) == null ? void 0 : _a2.trim()) || \"\";\n }\n set text(text) {\n this.textContent = text;\n }\n /** Sets or retrieves the value which is returned to the server when the form control is submitted. */\n get value() {\n var _a2;\n return (_a2 = attr(this, \"value\")) != null ? _a2 : this.text;\n }\n set value(value) {\n attr(this, \"value\", value);\n }\n};\ncustomElements.define(\"u-option\", UHTMLOptionElement);\n\n// u-datalist.ts\nvar UHTMLDataListStyle = `${DISPLAY_BLOCK}\n::slotted(u-option) { display: block; cursor: pointer }\n::slotted(u-option:focus) { ${FOCUS_OUTLINE} }\n::slotted(u-option[aria-hidden=\"true\"]),\n::slotted(u-option[disabled]),\n::slotted(u-option[hidden]) { display: none !important }`;\nvar UHTMLDataListShadowRoot = declarativeShadowRoot(UHTMLDataListStyle);\nvar LIVE_TIMER;\nvar INPUT_DEBOUNCE = 0;\nvar IS_MOBILE = IS_IOS || IS_ANDROID;\nvar EVENTS = \"click,focusout,input,keydown,mousedown,mouseup\";\nvar EVENTS_INPUT = \"focus,focusin,blur,focusout\";\nvar TEXTS = {\n singular: \"%d hit\",\n plural: \"%d hits\"\n};\nvar UHTMLDataListElement = class extends UHTMLElement {\n constructor() {\n super();\n this._texts = __spreadValues({}, TEXTS);\n this._value = \"\";\n attachStyle(this, UHTMLDataListStyle);\n }\n // Used to prevent unnecessary announcements\n // Using ES2015 syntax for backwards compatibility\n static get observedAttributes() {\n return [\"id\", ...Object.keys(TEXTS).map((key) => `data-sr-${key}`)];\n }\n connectedCallback() {\n this.hidden = true;\n this._root = getRoot(this);\n attr(this, \"role\", \"listbox\");\n attr(this, \"tabindex\", \"-1\");\n on(this._root, \"focusin\", this);\n on(this._root, \"focus\", this, true);\n mutationObserver(this, {\n attributeFilter: [\"disabled\", \"hidden\", \"label\", \"value\"],\n attributes: true,\n characterData: true,\n childList: true,\n subtree: true\n });\n setTimeout(() => this.attributeChangedCallback());\n }\n disconnectedCallback() {\n off(this._root || this, \"focus\", this, true);\n off(this._root || this, \"focusin\", this);\n mutationObserver(this, false);\n disconnectInput(this);\n this._root = void 0;\n }\n attributeChangedCallback(prop, _prev, next) {\n const text = prop == null ? void 0 : prop.split(\"data-sr-\")[1];\n const css = `input[list=\"${this.id}\"]`;\n if (TEXTS[text]) this._texts[text] = next || TEXTS[text];\n else if (this._root) {\n if (this._input) setupInput(this, this._input);\n for (const input of this._root.querySelectorAll(css))\n setupInput(this, input);\n }\n }\n handleEvent(event) {\n const { target, type } = event;\n if (event.defaultPrevented) return;\n if (type === \"click\") onClick(this, event);\n if (type === \"focus\" || type === \"focusin\") onFocus(this, event);\n if (type === \"blur\" || type === \"focusout\") onBlur(this, event);\n if (type === \"keydown\") onKeyDown(this, event);\n if (type === \"mousedown\" && this.contains(target))\n isMouseDown(event);\n if (type === \"mutation\" || type === \"input\") {\n clearTimeout(INPUT_DEBOUNCE);\n INPUT_DEBOUNCE = setTimeout(onInput, 0, this, event);\n }\n }\n get options() {\n return this.getElementsByTagName(\"u-option\");\n }\n};\nvar isDisabled = (input) => (input == null ? void 0 : input.disabled) || (input == null ? void 0 : input.readOnly) || false;\nvar setExpanded = (self, open) => {\n var _a2, _b, _c;\n if (self.hidden !== open) return;\n self.hidden = isDisabled(self == null ? void 0 : self._input) || !open;\n (_a2 = mutationObserver(self)) == null ? void 0 : _a2.takeRecords();\n const isPopover = self.isConnected && self.popover && ((_b = self._input) == null ? void 0 : _b.isConnected) && ((_c = self._input) == null ? void 0 : _c.popoverTargetElement) === self;\n if (self._input) setupInput(self, self._input, open);\n if (isPopover) attr(self, \"popover\", \"manual\");\n if (isPopover) self.togglePopover(open);\n if (open) onInput(self);\n};\nvar disconnectInput = (self) => {\n if (!self._input) return;\n off(self._input || self, EVENTS_INPUT, self);\n off(self._root || self, EVENTS, self);\n setExpanded(self, false);\n self._input = void 0;\n};\nvar setupInput = (self, input, open = false) => {\n if (self.popover) attr(input, \"popovertarget\", useId(self));\n on(input, EVENTS_INPUT, self, true);\n attr(input, \"aria-autocomplete\", \"list\");\n attr(input, \"aria-controls\", useId(self));\n attr(input, \"aria-expanded\", `${!IS_MOBILE || open}`);\n attr(input, \"autocomplete\", \"off\");\n attr(input, \"role\", isDisabled(input) ? null : \"combobox\");\n};\nvar onFocus = (self, event) => {\n var _a2;\n const isInput = event.target instanceof HTMLInputElement;\n if (isInput && event.isTrusted) event.stopImmediatePropagation();\n if (self._input !== event.target && isInput && event.target.list === self) {\n if (self._input) disconnectInput(self);\n self._input = event.target;\n self._input.dispatchEvent(new FocusEvent(\"focus\"));\n self._input.dispatchEvent(new FocusEvent(\"focusin\", { bubbles: true }));\n attr(self, SAFE_LABELLEDBY, useId((_a2 = self._input.labels) == null ? void 0 : _a2[0]));\n on(self._root || self, EVENTS, self);\n setExpanded(self, attr(self._input, \"inputmode\") !== \"none\");\n speak();\n }\n};\nvar onBlur = (self, event) => {\n if (!IS_ANDROID && !isMouseDown() && self._input)\n setTimeout(onBlurred, 0, self);\n if (event.target === self._input && event.isTrusted)\n event.stopImmediatePropagation();\n};\nvar onBlurred = (self) => {\n var _a2;\n const relatedTarget = ((_a2 = self._root) == null ? void 0 : _a2.activeElement) || null;\n const input = self._input;\n if (input && input !== relatedTarget && !self.contains(relatedTarget)) {\n input.dispatchEvent(new FocusEvent(\"blur\", { relatedTarget }));\n input.dispatchEvent(\n new FocusEvent(\"focusout\", { bubbles: true, relatedTarget })\n );\n disconnectInput(self);\n }\n};\nvar onClick = (self, { target }) => {\n var _a2;\n if (!self._input || self._input === target) return setExpanded(self, true);\n for (const opt of self.options)\n if (opt.contains(target)) {\n if (attr(self, \"aria-multiselectable\") !== \"true\") {\n (_a2 = self._input) == null ? void 0 : _a2.focus();\n setExpanded(self, false);\n }\n return setValue(self._input, opt.value);\n }\n if (IS_ANDROID) onBlurred(self);\n};\nvar onKeyDown = (self, e) => {\n var _a2;\n const { key, target, altKey, ctrlKey, shiftKey, metaKey } = e;\n const isEscape = key === \"Escape\" || key === \"Esc\";\n if (altKey || ctrlKey || metaKey || shiftKey || key === \"Tab\") return;\n if (isEscape && !self.hidden) e == null ? void 0 : e.preventDefault();\n setExpanded(self, !isEscape);\n const options = [...self.options].filter(\n (el) => attr(el, \"aria-hidden\") !== \"true\" && el.offsetHeight\n );\n const prev = options.indexOf(target);\n let next = -1;\n if (key === \"ArrowDown\") next = (prev + 1) % options.length;\n if (key === \"ArrowUp\") next = (~prev ? prev : options.length) - 1;\n if (~prev) {\n if (key === \"Home\" || key === \"PageUp\") next = 0;\n if (key === \"End\" || key === \"PageDown\") next = options.length - 1;\n if (key === \"Enter\") {\n options[prev].click();\n return e.preventDefault();\n }\n }\n if (options[next]) for (const option of options) option.tabIndex = -1;\n if (options[next]) e.preventDefault();\n (_a2 = options[next] || self._input) == null ? void 0 : _a2.focus();\n if (!options[next] && key === \"ArrowUp\")\n setTimeout(() => {\n var _a3;\n return (_a3 = self._input) == null ? void 0 : _a3.setSelectionRange(999, 999);\n });\n};\nvar onInput = (self, e) => {\n const { _texts, _root, _input, options } = self;\n const value = (_input == null ? void 0 : _input.value.toLowerCase().trim()) || \"\";\n const filter = !self.hasAttribute(\"data-nofilter\");\n const hidden = [];\n const visible = [];\n for (const opt of options) {\n const hide = opt.disabled || opt.hidden || filter && !opt.label.toLowerCase().includes(value);\n (hide ? hidden : visible).push(opt);\n }\n for (const opt of hidden) attr(opt, \"aria-hidden\", \"true\");\n for (const opt of visible) attr(opt, \"aria-hidden\", \"false\");\n const total = visible.length;\n clearTimeout(LIVE_TIMER);\n if ((e == null ? void 0 : e.type) === \"input\" && value !== self._value)\n LIVE_TIMER = setTimeout(() => {\n const text = `${!total && self.innerText.trim() || `${_texts[total === 1 ? \"singular\" : \"plural\"]}`.replace(\"%d\", `${total}`)}`;\n if (!self.hidden && (_root == null ? void 0 : _root.activeElement) === _input) speak(text);\n self._value = value;\n }, 1e3);\n if (IS_IOS)\n visible.map((opt, idx) => attr(opt, \"title\", `${idx + 1}/${total}`));\n};\nif (IS_BROWSER)\n Object.defineProperty(HTMLInputElement.prototype, \"list\", {\n configurable: true,\n enumerable: true,\n get() {\n return getRoot(this).getElementById(attr(this, \"list\") || \"\");\n }\n });\ncustomElements.define(\"u-datalist\", UHTMLDataListElement);\n\nexport { UHTMLDataListElement, UHTMLDataListShadowRoot, UHTMLDataListStyle };\n"],"names":["__defProp","__getOwnPropSymbols","__hasOwnProp","__propIsEnum","__defNormalProp","obj","key","value","__spreadValues","a","b","prop","IS_BROWSER","IS_ANDROID","IS_IOS","_a","SAFE_LABELLEDBY","DISPLAY_BLOCK","FOCUS_OUTLINE","UHTMLElement","attr","el","name","events","action","element","rest","type","on","off","attachStyle","css","createElement","observers","mutationObserver","options","observer","detail","getRoot","node","_a2","root","id","useId","tagName","text","attrs","customElements","instance","LIVE","LIVE_SR_FIX","speak","setValue","input","data","_b","event","proto","IS_PRESS","isMouseDown","DISABLED","SELECTED","UHTMLOptionElement","UHTMLDataListStyle","LIVE_TIMER","INPUT_DEBOUNCE","IS_MOBILE","EVENTS","EVENTS_INPUT","TEXTS","UHTMLDataListElement","disconnectInput","_prev","next","setupInput","target","onClick","onFocus","onBlur","onKeyDown","onInput","isDisabled","setExpanded","self","open","_c","isPopover","isInput","onBlurred","relatedTarget","opt","altKey","ctrlKey","shiftKey","metaKey","isEscape","prev","option","_a3","_texts","_root","_input","filter","hidden","visible","total","idx"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
var
|
|
2
|
-
|
|
1
|
+
var l = typeof window < "u" && typeof window.document < "u" && typeof window.navigator < "u", y = l && /android/i.test(navigator.userAgent), c;
|
|
2
|
+
l && // @ts-expect-error Typescript has not implemented userAgentData yet https://stackoverflow.com/a/71392474
|
|
3
3
|
/^Mac/i.test(((c = navigator.userAgentData) == null ? void 0 : c.platform) || navigator.platform);
|
|
4
|
-
var y = ":host(:not([hidden])) { display: block }", m = typeof HTMLElement > "u" ? class {
|
|
4
|
+
var b = `${y ? "data" : "aria"}-labelledby`, v = ":host(:not([hidden])) { display: block }", m = typeof HTMLElement > "u" ? class {
|
|
5
5
|
} : HTMLElement;
|
|
6
6
|
function o(t, e, n) {
|
|
7
7
|
return n === void 0 ? t.getAttribute(e) : (n === null ? t.removeAttribute(e) : t.getAttribute(e) !== n && t.setAttribute(e, n), null);
|
|
@@ -9,32 +9,29 @@ function o(t, e, n) {
|
|
|
9
9
|
var f = (t, e, n) => {
|
|
10
10
|
for (const i of n[0].split(","))
|
|
11
11
|
n[0] = i, Element.prototype[`${t}EventListener`].apply(e, n);
|
|
12
|
-
},
|
|
12
|
+
}, u = (t, ...e) => f("add", t, e), h = (t, ...e) => f("remove", t, e), g = (t) => {
|
|
13
13
|
const e = "key" in t && (t.key === " " || t.key === "Enter");
|
|
14
14
|
return e && t.preventDefault(), e && t.target instanceof HTMLElement && t.target.click(), e;
|
|
15
|
-
},
|
|
15
|
+
}, k = (t) => {
|
|
16
16
|
var e;
|
|
17
17
|
const n = ((e = t.getRootNode) == null ? void 0 : e.call(t)) || t.ownerDocument;
|
|
18
18
|
return n instanceof Document || n instanceof ShadowRoot ? n : document;
|
|
19
|
-
}, r = (t, e, n) => {
|
|
19
|
+
}, E = 0, w = (t) => t ? (t.id || (t.id = `:${t.nodeName.toLowerCase()}${(++E).toString(32)}`), t.id) : "", r = (t, e, n) => {
|
|
20
20
|
const i = document.createElement(t);
|
|
21
21
|
if (e && (i.textContent = e), n) for (const [s, a] of Object.entries(n)) o(i, s, a);
|
|
22
22
|
return i;
|
|
23
23
|
}, p = {
|
|
24
|
-
define: (t, e) => !
|
|
25
|
-
},
|
|
24
|
+
define: (t, e) => !l || window.customElements.get(t) || window.customElements.define(t, e)
|
|
25
|
+
}, _ = `${v}
|
|
26
|
+
::slotted(u-summary) { cursor: pointer; display: block }
|
|
27
|
+
::slotted(u-summary)::before { content: ''; display: inline-block; vertical-align: middle; margin-inline: .05em .3125em; border-block: .3125em solid transparent; border-inline-start: .5em solid }
|
|
28
|
+
::slotted(u-summary[aria-expanded="true"])::before { rotate: 90deg }
|
|
29
|
+
:host > [part="details-content"]:not([hidden=""]) { display: block }`, L = class extends m {
|
|
26
30
|
constructor() {
|
|
27
|
-
super(), this._content = null, this.attachShadow({ mode: "open" }).append(
|
|
31
|
+
super(), this._content = null, this.shadowRoot || this.attachShadow({ mode: "open" }).append(
|
|
28
32
|
r("slot", null, { name: "summary" }),
|
|
29
33
|
r("slot", null, { part: "details-content" }),
|
|
30
|
-
r(
|
|
31
|
-
"style",
|
|
32
|
-
`${y}
|
|
33
|
-
::slotted(u-summary) { cursor: pointer; display: block }
|
|
34
|
-
::slotted(u-summary)::before { content: ''; display: inline-block; vertical-align: middle; margin-inline: .05em .3125em; border-block: .3125em solid transparent; border-inline-start: .5em solid }
|
|
35
|
-
::slotted(u-summary[aria-expanded="true"])::before { rotate: 90deg }
|
|
36
|
-
:host > [part="details-content"]:not([hidden=""]) { display: block }`
|
|
37
|
-
)
|
|
34
|
+
r("style", _)
|
|
38
35
|
);
|
|
39
36
|
}
|
|
40
37
|
// Using ES2015 syntax for backwards compatibility
|
|
@@ -43,27 +40,27 @@ var f = (t, e, n) => {
|
|
|
43
40
|
}
|
|
44
41
|
connectedCallback() {
|
|
45
42
|
var t;
|
|
46
|
-
this._content = (t = this.shadowRoot) == null ? void 0 : t.children[1], o(this, "role", "group"),
|
|
43
|
+
this._content = (t = this.shadowRoot) == null ? void 0 : t.children[1], o(this, "role", "group"), u(this._content, "beforematch", this), u(this, "click,keydown", this), this.attributeChangedCallback();
|
|
47
44
|
}
|
|
48
45
|
disconnectedCallback() {
|
|
49
|
-
this._content &&
|
|
46
|
+
this._content && h(this._content, "beforematch", this), h(this, "click,keydown", this), this._content = null;
|
|
50
47
|
}
|
|
51
48
|
attributeChangedCallback(t, e, n) {
|
|
52
49
|
const i = "onbeforematch" in this ? "until-found" : !0, s = this.open;
|
|
53
50
|
for (const a of this.children)
|
|
54
|
-
a.nodeName === "U-SUMMARY" && o(a, "aria-expanded", `${s}`);
|
|
51
|
+
a.nodeName === "U-SUMMARY" && (o(this, b, w(a)), o(a, "aria-expanded", `${s}`));
|
|
55
52
|
if (this._content && (o(this._content, "aria-hidden", `${!s}`), this._content.hidden = s ? !1 : i), s && this.name) {
|
|
56
|
-
const a =
|
|
53
|
+
const a = k(this).querySelectorAll(
|
|
57
54
|
`${this.nodeName}[name="${this.name}"]`
|
|
58
55
|
);
|
|
59
|
-
for (const
|
|
60
|
-
|
|
56
|
+
for (const d of a)
|
|
57
|
+
d !== this && (d.open = !1);
|
|
61
58
|
}
|
|
62
59
|
t === "open" && e === null != (n === null) && this.dispatchEvent(new Event("toggle"));
|
|
63
60
|
}
|
|
64
61
|
handleEvent(t) {
|
|
65
62
|
const e = this.querySelector(":scope > u-summary"), n = e?.contains(t.target);
|
|
66
|
-
t.defaultPrevented || (t.type === "beforematch" && (this.open = !0), n && t.type === "keydown" &&
|
|
63
|
+
t.defaultPrevented || (t.type === "beforematch" && (this.open = !0), n && t.type === "keydown" && g(t), n && t.type === "click" && (this.open = !this.open));
|
|
67
64
|
}
|
|
68
65
|
get open() {
|
|
69
66
|
return this.hasAttribute("open");
|
|
@@ -77,15 +74,16 @@ var f = (t, e, n) => {
|
|
|
77
74
|
set name(t) {
|
|
78
75
|
o(this, "name", t);
|
|
79
76
|
}
|
|
80
|
-
},
|
|
77
|
+
}, A = class extends m {
|
|
81
78
|
connectedCallback() {
|
|
82
79
|
o(this, "role", "button"), this.slot = "summary", this.tabIndex = 0;
|
|
83
80
|
}
|
|
84
81
|
};
|
|
85
|
-
p.define("u-details",
|
|
86
|
-
p.define("u-summary",
|
|
82
|
+
p.define("u-details", L);
|
|
83
|
+
p.define("u-summary", A);
|
|
87
84
|
export {
|
|
88
|
-
|
|
89
|
-
|
|
85
|
+
L as UHTMLDetailsElement,
|
|
86
|
+
_ as UHTMLDetailsStyle,
|
|
87
|
+
A as UHTMLSummaryElement
|
|
90
88
|
};
|
|
91
89
|
//# sourceMappingURL=u-details.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"u-details.js","sources":["../../../../../node_modules/@u-elements/u-details/dist/u-details.js"],"sourcesContent":["// ../utils.ts\nvar IS_BROWSER = typeof window !== \"undefined\" && typeof window.document !== \"undefined\" && typeof window.navigator !== \"undefined\";\nvar _a;\nIS_BROWSER && // @ts-expect-error Typescript has not implemented userAgentData yet https://stackoverflow.com/a/71392474\n/^Mac/i.test(((_a = navigator.userAgentData) == null ? void 0 : _a.platform) || navigator.platform);\nvar DISPLAY_BLOCK = \":host(:not([hidden])) { display: block }\";\nvar UHTMLElement = typeof HTMLElement === \"undefined\" ? class {\n} : HTMLElement;\nfunction attr(el, name, value) {\n if (value === void 0) return el.getAttribute(name);\n if (value === null) el.removeAttribute(name);\n else if (el.getAttribute(name) !== value) el.setAttribute(name, value);\n return null;\n}\nvar events = (action, element, rest) => {\n for (const type of rest[0].split(\",\")) {\n rest[0] = type;\n Element.prototype[`${action}EventListener`].apply(element, rest);\n }\n};\nvar on = (element, ...rest) => events(\"add\", element, rest);\nvar off = (element, ...rest) => events(\"remove\", element, rest);\nvar asButton = (event) => {\n const isClick = \"key\" in event && (event.key === \" \" || event.key === \"Enter\");\n if (isClick) event.preventDefault();\n if (isClick && event.target instanceof HTMLElement) event.target.click();\n return isClick;\n};\nvar getRoot = (node) => {\n var _a2;\n const root = ((_a2 = node.getRootNode) == null ? void 0 : _a2.call(node)) || node.ownerDocument;\n return root instanceof Document || root instanceof ShadowRoot ? root : document;\n};\nvar createElement = (tagName, text, attrs) => {\n const el = document.createElement(tagName);\n if (text) el.textContent = text;\n if (attrs) for (const [key, val] of Object.entries(attrs)) attr(el, key, val);\n return el;\n};\nvar customElements = {\n define: (name, instance) => !IS_BROWSER || window.customElements.get(name) || window.customElements.define(name, instance)\n};\n\n// u-details.ts\nvar UHTMLDetailsElement = class extends UHTMLElement {\n constructor() {\n super();\n // Using underscore instead of private fields for backwards compatibility\n this._content = null;\n this.attachShadow({ mode: \"open\" }).append(\n createElement(\"slot\", null, { name: \"summary\" }),\n createElement(\"slot\", null, { part: \"details-content\" }),\n createElement(\n \"style\",\n `${DISPLAY_BLOCK}\n ::slotted(u-summary) { cursor: pointer; display: block }\n\t\t\t\t::slotted(u-summary)::before { content: ''; display: inline-block; vertical-align: middle; margin-inline: .05em .3125em; border-block: .3125em solid transparent; border-inline-start: .5em solid }\n\t\t\t\t::slotted(u-summary[aria-expanded=\"true\"])::before { rotate: 90deg }\n\t\t\t\t:host > [part=\"details-content\"]:not([hidden=\"\"]) { display: block }`\n )\n );\n }\n // Using ES2015 syntax for backwards compatibility\n static get observedAttributes() {\n return [\"open\"];\n }\n connectedCallback() {\n var _a2;\n this._content = (_a2 = this.shadowRoot) == null ? void 0 : _a2.children[1];\n attr(this, \"role\", \"group\");\n on(this._content, \"beforematch\", this);\n on(this, \"click,keydown\", this);\n this.attributeChangedCallback();\n }\n disconnectedCallback() {\n if (this._content) off(this._content, \"beforematch\", this);\n off(this, \"click,keydown\", this);\n this._content = null;\n }\n attributeChangedCallback(prop, prev, next) {\n const hide = \"onbeforematch\" in this ? \"until-found\" : true;\n const open = this.open;\n for (const el of this.children)\n if (el.nodeName === \"U-SUMMARY\") attr(el, \"aria-expanded\", `${open}`);\n if (this._content) {\n attr(this._content, \"aria-hidden\", `${!open}`);\n this._content.hidden = open ? false : hide;\n }\n if (open && this.name) {\n const uDetailsList = getRoot(this).querySelectorAll(\n `${this.nodeName}[name=\"${this.name}\"]`\n );\n for (const uDetails of uDetailsList)\n if (uDetails !== this) uDetails.open = false;\n }\n if (prop === \"open\" && prev === null !== (next === null))\n this.dispatchEvent(new Event(\"toggle\"));\n }\n handleEvent(event) {\n const summary = this.querySelector(\":scope > u-summary\");\n const isSummary = summary == null ? void 0 : summary.contains(event.target);\n if (event.defaultPrevented) return;\n if (event.type === \"beforematch\") this.open = true;\n if (isSummary && event.type === \"keydown\") asButton(event);\n if (isSummary && event.type === \"click\") this.open = !this.open;\n }\n get open() {\n return this.hasAttribute(\"open\");\n }\n set open(value) {\n attr(this, \"open\", value ? \"\" : null);\n }\n get name() {\n return attr(this, \"name\") || \"\";\n }\n set name(value) {\n attr(this, \"name\", value);\n }\n};\nvar UHTMLSummaryElement = class extends UHTMLElement {\n connectedCallback() {\n attr(this, \"role\", \"button\");\n this.slot = \"summary\";\n this.tabIndex = 0;\n }\n};\ncustomElements.define(\"u-details\", UHTMLDetailsElement);\ncustomElements.define(\"u-summary\", UHTMLSummaryElement);\n\nexport { UHTMLDetailsElement, UHTMLSummaryElement };\n"],"names":["IS_BROWSER","_a","DISPLAY_BLOCK","UHTMLElement","attr","el","name","value","events","action","element","rest","type","on","off","asButton","event","isClick","getRoot","node","_a2","root","createElement","tagName","text","attrs","key","val","customElements","instance","UHTMLDetailsElement","prop","prev","next","hide","open","uDetailsList","uDetails","summary","isSummary","UHTMLSummaryElement"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"u-details.js","sources":["../../../../../node_modules/@u-elements/u-details/dist/u-details.js"],"sourcesContent":["// ../utils.ts\nvar IS_BROWSER = typeof window !== \"undefined\" && typeof window.document !== \"undefined\" && typeof window.navigator !== \"undefined\";\nvar IS_ANDROID = IS_BROWSER && /android/i.test(navigator.userAgent);\nvar _a;\nIS_BROWSER && // @ts-expect-error Typescript has not implemented userAgentData yet https://stackoverflow.com/a/71392474\n/^Mac/i.test(((_a = navigator.userAgentData) == null ? void 0 : _a.platform) || navigator.platform);\nvar SAFE_LABELLEDBY = `${IS_ANDROID ? \"data\" : \"aria\"}-labelledby`;\nvar DISPLAY_BLOCK = \":host(:not([hidden])) { display: block }\";\nvar UHTMLElement = typeof HTMLElement === \"undefined\" ? class {\n} : HTMLElement;\nfunction attr(el, name, value) {\n if (value === void 0) return el.getAttribute(name);\n if (value === null) el.removeAttribute(name);\n else if (el.getAttribute(name) !== value) el.setAttribute(name, value);\n return null;\n}\nvar events = (action, element, rest) => {\n for (const type of rest[0].split(\",\")) {\n rest[0] = type;\n Element.prototype[`${action}EventListener`].apply(element, rest);\n }\n};\nvar on = (element, ...rest) => events(\"add\", element, rest);\nvar off = (element, ...rest) => events(\"remove\", element, rest);\nvar asButton = (event) => {\n const isClick = \"key\" in event && (event.key === \" \" || event.key === \"Enter\");\n if (isClick) event.preventDefault();\n if (isClick && event.target instanceof HTMLElement) event.target.click();\n return isClick;\n};\nvar getRoot = (node) => {\n var _a2;\n const root = ((_a2 = node.getRootNode) == null ? void 0 : _a2.call(node)) || node.ownerDocument;\n return root instanceof Document || root instanceof ShadowRoot ? root : document;\n};\nvar id = 0;\nvar useId = (el) => {\n if (!el) return \"\";\n if (!el.id) el.id = `:${el.nodeName.toLowerCase()}${(++id).toString(32)}`;\n return el.id;\n};\nvar createElement = (tagName, text, attrs) => {\n const el = document.createElement(tagName);\n if (text) el.textContent = text;\n if (attrs) for (const [key, val] of Object.entries(attrs)) attr(el, key, val);\n return el;\n};\nvar customElements = {\n define: (name, instance) => !IS_BROWSER || window.customElements.get(name) || window.customElements.define(name, instance)\n};\nvar declarativeShadowRoot = (style, slot = \"<slot></slot>\") => `<template shadowrootmode=\"open\">${slot}<style>${style}</style></template>`;\n\n// u-details.ts\nvar UHTMLDetailsStyle = `${DISPLAY_BLOCK}\n::slotted(u-summary) { cursor: pointer; display: block }\n::slotted(u-summary)::before { content: ''; display: inline-block; vertical-align: middle; margin-inline: .05em .3125em; border-block: .3125em solid transparent; border-inline-start: .5em solid }\n::slotted(u-summary[aria-expanded=\"true\"])::before { rotate: 90deg }\n:host > [part=\"details-content\"]:not([hidden=\"\"]) { display: block }`;\nvar UHTMLDetailsShadowRoot = declarativeShadowRoot(\n UHTMLDetailsStyle,\n '<slot name=\"summary\"></slot><slot part=\"details-content\" hidden=\"until-found\"></slot>'\n);\nvar UHTMLDetailsElement = class extends UHTMLElement {\n constructor() {\n super();\n // Using underscore instead of private fields for backwards compatibility\n this._content = null;\n if (!this.shadowRoot)\n this.attachShadow({ mode: \"open\" }).append(\n createElement(\"slot\", null, { name: \"summary\" }),\n createElement(\"slot\", null, { part: \"details-content\" }),\n createElement(\"style\", UHTMLDetailsStyle)\n );\n }\n // Using ES2015 syntax for backwards compatibility\n static get observedAttributes() {\n return [\"open\"];\n }\n connectedCallback() {\n var _a2;\n this._content = (_a2 = this.shadowRoot) == null ? void 0 : _a2.children[1];\n attr(this, \"role\", \"group\");\n on(this._content, \"beforematch\", this);\n on(this, \"click,keydown\", this);\n this.attributeChangedCallback();\n }\n disconnectedCallback() {\n if (this._content) off(this._content, \"beforematch\", this);\n off(this, \"click,keydown\", this);\n this._content = null;\n }\n attributeChangedCallback(prop, prev, next) {\n const hide = \"onbeforematch\" in this ? \"until-found\" : true;\n const open = this.open;\n for (const el of this.children)\n if (el.nodeName === \"U-SUMMARY\") {\n attr(this, SAFE_LABELLEDBY, useId(el));\n attr(el, \"aria-expanded\", `${open}`);\n }\n if (this._content) {\n attr(this._content, \"aria-hidden\", `${!open}`);\n this._content.hidden = open ? false : hide;\n }\n if (open && this.name) {\n const uDetailsList = getRoot(this).querySelectorAll(\n `${this.nodeName}[name=\"${this.name}\"]`\n );\n for (const uDetails of uDetailsList)\n if (uDetails !== this) uDetails.open = false;\n }\n if (prop === \"open\" && prev === null !== (next === null))\n this.dispatchEvent(new Event(\"toggle\"));\n }\n handleEvent(event) {\n const summary = this.querySelector(\":scope > u-summary\");\n const isSummary = summary == null ? void 0 : summary.contains(event.target);\n if (event.defaultPrevented) return;\n if (event.type === \"beforematch\") this.open = true;\n if (isSummary && event.type === \"keydown\") asButton(event);\n if (isSummary && event.type === \"click\") this.open = !this.open;\n }\n get open() {\n return this.hasAttribute(\"open\");\n }\n set open(value) {\n attr(this, \"open\", value ? \"\" : null);\n }\n get name() {\n return attr(this, \"name\") || \"\";\n }\n set name(value) {\n attr(this, \"name\", value);\n }\n};\nvar UHTMLSummaryElement = class extends UHTMLElement {\n connectedCallback() {\n attr(this, \"role\", \"button\");\n this.slot = \"summary\";\n this.tabIndex = 0;\n }\n};\ncustomElements.define(\"u-details\", UHTMLDetailsElement);\ncustomElements.define(\"u-summary\", UHTMLSummaryElement);\n\nexport { UHTMLDetailsElement, UHTMLDetailsShadowRoot, UHTMLDetailsStyle, UHTMLSummaryElement };\n"],"names":["IS_BROWSER","IS_ANDROID","_a","SAFE_LABELLEDBY","DISPLAY_BLOCK","UHTMLElement","attr","el","name","value","events","action","element","rest","type","on","off","asButton","event","isClick","getRoot","node","_a2","root","id","useId","createElement","tagName","text","attrs","key","val","customElements","instance","UHTMLDetailsStyle","UHTMLDetailsElement","prop","prev","next","hide","open","uDetailsList","uDetails","summary","isSummary","UHTMLSummaryElement"],"mappings":"AACA,IAAIA,IAAa,OAAO,SAAW,OAAe,OAAO,OAAO,WAAa,OAAe,OAAO,OAAO,YAAc,KACpHC,IAAaD,KAAc,WAAW,KAAK,UAAU,SAAS,GAC9DE;AACJF;AACA,QAAQ,OAAOE,IAAK,UAAU,kBAAkB,OAAO,SAASA,EAAG,aAAa,UAAU,QAAQ;AAClG,IAAIC,IAAkB,GAAGF,IAAa,SAAS,MAAM,eACjDG,IAAgB,4CAChBC,IAAe,OAAO,cAAgB,MAAc,MAAM;AAC9D,IAAI;AACJ,SAASC,EAAKC,GAAIC,GAAMC,GAAO;AAC7B,SAAIA,MAAU,SAAeF,EAAG,aAAaC,CAAI,KAC7CC,MAAU,OAAMF,EAAG,gBAAgBC,CAAI,IAClCD,EAAG,aAAaC,CAAI,MAAMC,KAAOF,EAAG,aAAaC,GAAMC,CAAK,GAC9D;AACT;AACA,IAAIC,IAAS,CAACC,GAAQC,GAASC,MAAS;AACtC,aAAWC,KAAQD,EAAK,CAAC,EAAE,MAAM,GAAG;AAClC,IAAAA,EAAK,CAAC,IAAIC,GACV,QAAQ,UAAU,GAAGH,CAAM,eAAe,EAAE,MAAMC,GAASC,CAAI;AAEnE,GACIE,IAAK,CAACH,MAAYC,MAASH,EAAO,OAAOE,GAASC,CAAI,GACtDG,IAAM,CAACJ,MAAYC,MAASH,EAAO,UAAUE,GAASC,CAAI,GAC1DI,IAAW,CAACC,MAAU;AACxB,QAAMC,IAAU,SAASD,MAAUA,EAAM,QAAQ,OAAOA,EAAM,QAAQ;AACtE,SAAIC,KAASD,EAAM,eAAc,GAC7BC,KAAWD,EAAM,kBAAkB,eAAaA,EAAM,OAAO,MAAK,GAC/DC;AACT,GACIC,IAAU,CAACC,MAAS;AACtB,MAAIC;AACJ,QAAMC,MAASD,IAAMD,EAAK,gBAAgB,OAAO,SAASC,EAAI,KAAKD,CAAI,MAAMA,EAAK;AAClF,SAAOE,aAAgB,YAAYA,aAAgB,aAAaA,IAAO;AACzE,GACIC,IAAK,GACLC,IAAQ,CAAClB,MACNA,KACAA,EAAG,OAAIA,EAAG,KAAK,IAAIA,EAAG,SAAS,YAAW,CAAE,IAAI,EAAEiB,GAAI,SAAS,EAAE,CAAC,KAChEjB,EAAG,MAFM,IAIdmB,IAAgB,CAACC,GAASC,GAAMC,MAAU;AAC5C,QAAMtB,IAAK,SAAS,cAAcoB,CAAO;AAEzC,MADIC,MAAMrB,EAAG,cAAcqB,IACvBC,EAAO,YAAW,CAACC,GAAKC,CAAG,KAAK,OAAO,QAAQF,CAAK,EAAG,CAAAvB,EAAKC,GAAIuB,GAAKC,CAAG;AAC5E,SAAOxB;AACT,GACIyB,IAAiB;AAAA,EACnB,QAAQ,CAACxB,GAAMyB,MAAa,CAACjC,KAAc,OAAO,eAAe,IAAIQ,CAAI,KAAK,OAAO,eAAe,OAAOA,GAAMyB,CAAQ;AAC3H,GAIIC,IAAoB,GAAG9B,CAAa;AAAA;AAAA;AAAA;AAAA,uEASpC+B,IAAsB,cAAc9B,EAAa;AAAA,EACnD,cAAc;AACZ,UAAK,GAEL,KAAK,WAAW,MACX,KAAK,cACR,KAAK,aAAa,EAAE,MAAM,OAAM,CAAE,EAAE;AAAA,MAClCqB,EAAc,QAAQ,MAAM,EAAE,MAAM,UAAS,CAAE;AAAA,MAC/CA,EAAc,QAAQ,MAAM,EAAE,MAAM,kBAAiB,CAAE;AAAA,MACvDA,EAAc,SAASQ,CAAiB;AAAA,IAChD;AAAA,EACE;AAAA;AAAA,EAEA,WAAW,qBAAqB;AAC9B,WAAO,CAAC,MAAM;AAAA,EAChB;AAAA,EACA,oBAAoB;AAClB,QAAIZ;AACJ,SAAK,YAAYA,IAAM,KAAK,eAAe,OAAO,SAASA,EAAI,SAAS,CAAC,GACzEhB,EAAK,MAAM,QAAQ,OAAO,GAC1BS,EAAG,KAAK,UAAU,eAAe,IAAI,GACrCA,EAAG,MAAM,iBAAiB,IAAI,GAC9B,KAAK,yBAAwB;AAAA,EAC/B;AAAA,EACA,uBAAuB;AACrB,IAAI,KAAK,YAAUC,EAAI,KAAK,UAAU,eAAe,IAAI,GACzDA,EAAI,MAAM,iBAAiB,IAAI,GAC/B,KAAK,WAAW;AAAA,EAClB;AAAA,EACA,yBAAyBoB,GAAMC,GAAMC,GAAM;AACzC,UAAMC,IAAO,mBAAmB,OAAO,gBAAgB,IACjDC,IAAO,KAAK;AAClB,eAAWjC,KAAM,KAAK;AACpB,MAAIA,EAAG,aAAa,gBAClBD,EAAK,MAAMH,GAAiBsB,EAAMlB,CAAE,CAAC,GACrCD,EAAKC,GAAI,iBAAiB,GAAGiC,CAAI,EAAE;AAMvC,QAJI,KAAK,aACPlC,EAAK,KAAK,UAAU,eAAe,GAAG,CAACkC,CAAI,EAAE,GAC7C,KAAK,SAAS,SAASA,IAAO,KAAQD,IAEpCC,KAAQ,KAAK,MAAM;AACrB,YAAMC,IAAerB,EAAQ,IAAI,EAAE;AAAA,QACjC,GAAG,KAAK,QAAQ,UAAU,KAAK,IAAI;AAAA,MAC3C;AACM,iBAAWsB,KAAYD;AACrB,QAAIC,MAAa,SAAMA,EAAS,OAAO;AAAA,IAC3C;AACA,IAAIN,MAAS,UAAUC,MAAS,SAAUC,MAAS,SACjD,KAAK,cAAc,IAAI,MAAM,QAAQ,CAAC;AAAA,EAC1C;AAAA,EACA,YAAYpB,GAAO;AACjB,UAAMyB,IAAU,KAAK,cAAc,oBAAoB,GACjDC,IAAuCD,GAAQ,SAASzB,EAAM,MAAM;AAC1E,IAAIA,EAAM,qBACNA,EAAM,SAAS,kBAAe,KAAK,OAAO,KAC1C0B,KAAa1B,EAAM,SAAS,aAAWD,EAASC,CAAK,GACrD0B,KAAa1B,EAAM,SAAS,YAAS,KAAK,OAAO,CAAC,KAAK;AAAA,EAC7D;AAAA,EACA,IAAI,OAAO;AACT,WAAO,KAAK,aAAa,MAAM;AAAA,EACjC;AAAA,EACA,IAAI,KAAKT,GAAO;AACd,IAAAH,EAAK,MAAM,QAAQG,IAAQ,KAAK,IAAI;AAAA,EACtC;AAAA,EACA,IAAI,OAAO;AACT,WAAOH,EAAK,MAAM,MAAM,KAAK;AAAA,EAC/B;AAAA,EACA,IAAI,KAAKG,GAAO;AACd,IAAAH,EAAK,MAAM,QAAQG,CAAK;AAAA,EAC1B;AACF,GACIoC,IAAsB,cAAcxC,EAAa;AAAA,EACnD,oBAAoB;AAClB,IAAAC,EAAK,MAAM,QAAQ,QAAQ,GAC3B,KAAK,OAAO,WACZ,KAAK,WAAW;AAAA,EAClB;AACF;AACA0B,EAAe,OAAO,aAAaG,CAAmB;AACtDH,EAAe,OAAO,aAAaa,CAAmB;","x_google_ignoreList":[0]}
|