@mattilsynet/design 1.2.0 → 1.2.1

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.
@@ -16,17 +16,17 @@ function u(t, e, o) {
16
16
  var F = (t, e, o) => {
17
17
  for (const n of o[0].split(","))
18
18
  o[0] = n, Element.prototype[`${t}EventListener`].apply(e, o);
19
- }, V = (t, ...e) => F("add", t, e), et = (t, ...e) => F("remove", t, e), I = /* @__PURE__ */ new WeakMap(), $ = (t, e) => {
20
- if (e === void 0) return I.get(t);
19
+ }, V = (t, ...e) => F("add", t, e), et = (t, ...e) => F("remove", t, e), x = /* @__PURE__ */ new WeakMap(), $ = (t, e) => {
20
+ if (e === void 0) return x.get(t);
21
21
  try {
22
- I.get(t).disconnect(), I.delete(t);
22
+ x.get(t).disconnect(), x.delete(t);
23
23
  } catch {
24
24
  }
25
25
  if (e) {
26
26
  const o = new MutationObserver(
27
27
  (n) => t.handleEvent({ type: "mutation", detail: n })
28
28
  );
29
- o.observe(t, e), I.set(t, o);
29
+ o.observe(t, e), x.set(t, o);
30
30
  }
31
31
  }, ot = (t) => {
32
32
  const e = "key" in t && (t.key === " " || t.key === "Enter");
@@ -48,7 +48,7 @@ var F = (t, e, o) => {
48
48
  var n, i;
49
49
  const r = { bubbles: !0, composed: !0, data: e, inputType: o }, l = HTMLInputElement.prototype;
50
50
  t.dispatchEvent(new InputEvent("beforeinput", r)), (i = (n = Object.getOwnPropertyDescriptor(l, "value")) == null ? void 0 : n.set) == null || i.call(t, e), t.dispatchEvent(new InputEvent("input", r)), t.dispatchEvent(new Event("change", { bubbles: !0 }));
51
- }, b, ut = 0, L = !1, H = "blur,focus,click,input,keydown,mousedown,mouseup", dt = { once: !0, passive: !0 }, ct = J && !B, vt = B || Q, x = "false", pt = "insertReplacementText", k = {
51
+ }, _, ut = 0, L = !1, H = "beforeinput,blur,focus,click,input,keydown,mousedown,mouseup", dt = { once: !0, passive: !0 }, ct = J && !B, vt = B || Q, I = "false", pt = "insertReplacementText", k = {
52
52
  added: "Added",
53
53
  empty: "No selected",
54
54
  found: "Navigate left to find %d selected",
@@ -56,7 +56,7 @@ var F = (t, e, o) => {
56
56
  of: "of",
57
57
  remove: "Press to remove",
58
58
  removed: "Removed"
59
- }, mt = class extends tt {
59
+ }, ft = class extends tt {
60
60
  constructor() {
61
61
  super(), this._speak = "", this._texts = G({}, k), this._value = "", this.attachShadow({ mode: "open" }).append(
62
62
  w("slot"),
@@ -90,18 +90,18 @@ var F = (t, e, o) => {
90
90
  }
91
91
  handleEvent(t) {
92
92
  const e = t.target;
93
- t.type === "blur" && ht(this), t.type === "click" && bt(this, t), t.type === "focus" && ft(this, t), t.type === "input" && gt(this, t), t.type === "keydown" && yt(this, t), t.type === "mousedown" && (L = this.contains(e)), t.type === "mouseup" && (L = !1), t.type === "mutation" && E(this, t);
93
+ t.type === "beforeinput" && (this._value = (e == null ? void 0 : e.value) || ""), t.type === "blur" && ht(this), t.type === "click" && _t(this, t), t.type === "focus" && mt(this, t), t.type === "input" && yt(this, t), t.type === "keydown" && gt(this, t), t.type === "mousedown" && (L = this.contains(e)), t.type === "mouseup" && (L = !1), t.type === "mutation" && E(this, t);
94
94
  }
95
95
  get multiple() {
96
96
  var t;
97
- return ((t = u(this, "data-multiple")) != null ? t : x) !== x;
97
+ return ((t = u(this, "data-multiple")) != null ? t : I) !== I;
98
98
  }
99
99
  set multiple(t) {
100
100
  u(this, "data-multiple", t ? "" : null);
101
101
  }
102
102
  get creatable() {
103
103
  var t;
104
- return ((t = u(this, "data-creatable")) != null ? t : x) !== x;
104
+ return ((t = u(this, "data-creatable")) != null ? t : I) !== I;
105
105
  }
106
106
  set creatable(t) {
107
107
  u(this, "data-creatable", t ? "" : null);
@@ -129,7 +129,7 @@ var F = (t, e, o) => {
129
129
  this.values.includes(o.value) || // Prevent duplicates
130
130
  ((e = this.control) == null || e.insertAdjacentElement("beforebegin", o));
131
131
  }
132
- }, _ = (t) => {
132
+ }, b = (t) => {
133
133
  var e;
134
134
  return ((e = t == null ? void 0 : t.textContent) == null ? void 0 : e.trim()) || "";
135
135
  }, M = (t) => typeof t == "string" ? w("data", t, { value: t }) : t instanceof HTMLDataElement ? t : w("data", t.label || t.value, {
@@ -138,96 +138,94 @@ var F = (t, e, o) => {
138
138
  t._focus = t._control = t._items = t._list = t._options = void 0;
139
139
  }, E = (t, e) => {
140
140
  var o, n, i;
141
- let { _focus: r, _speak: l, _texts: d, items: m, control: a, list: v, multiple: c } = t;
142
- const { addedNodes: p, removedNodes: T } = (e == null ? void 0 : e.detail[0]) || {}, f = (e == null ? void 0 : e.detail[1]) || (p == null ? void 0 : p[1]) || (p == null ? void 0 : p[1]) ? null : (p == null ? void 0 : p[0]) || (T == null ? void 0 : T[0]), A = c ? m.length : 1, O = [];
143
- (f == null ? void 0 : f.nodeName) === "DATA" && (c ? r : f === r) && (l = `${d[f.isConnected ? "added" : "removed"]} ${_(f)}, `, (vt || r === a) && (b.textContent = l), a == null || a.focus(), setTimeout(() => {
141
+ let { _focus: r, _speak: l, _texts: d, items: f, control: a, list: v, multiple: c } = t;
142
+ const { addedNodes: p, removedNodes: T } = (e == null ? void 0 : e.detail[0]) || {}, m = (e == null ? void 0 : e.detail[1]) || (p == null ? void 0 : p[1]) || (p == null ? void 0 : p[1]) ? null : (p == null ? void 0 : p[0]) || (T == null ? void 0 : T[0]), A = c ? f.length : 1, O = [];
143
+ (m == null ? void 0 : m.nodeName) === "DATA" && (c ? r : m === r) && (l = `${d[m.isConnected ? "added" : "removed"]} ${b(m)}, `, (vt || r === a) && (_.textContent = l), a == null || a.focus(), setTimeout(() => {
144
144
  var s, h;
145
145
  (h = (s = (r == null ? void 0 : r.nodeName) === "DATA" ? a : r) == null ? void 0 : s.focus) == null || h.call(s), t._speak = "", ct ? V(t, "blur", () => E(t), dt) : setTimeout(E, 100, t);
146
146
  }, 100));
147
- const q = f != null && f.isConnected ? f : m[0];
148
- for (const s of m)
147
+ const q = m != null && m.isConnected ? m : f[0];
148
+ for (const s of f)
149
149
  if (!c && s !== q) s.remove();
150
150
  else {
151
- const h = _(s), D = s.value || h, X = `${l}${h}, ${d.remove}, ${O.push(D)} ${d.of} ${A}`;
151
+ const h = b(s), D = s.value || h, X = `${l}${h}, ${d.remove}, ${O.push(D)} ${d.of} ${A}`;
152
152
  u(s, "role", "button"), u(s, "value", D), u(s, "tabindex", "-1"), u(s, "aria-label", X);
153
153
  }
154
154
  for (const s of t.options || []) {
155
- const h = (o = u(s, "value")) != null ? o : _(s);
156
- u(s, "aria-label", l ? `${l}${_(s)}` : null), u(s, "selected", O.includes(h) ? "" : null);
155
+ const h = (o = u(s, "value")) != null ? o : b(s);
156
+ u(s, "aria-label", l ? `${l}${b(s)}` : null), u(s, "selected", O.includes(h) ? "" : null);
157
157
  }
158
- const U = `${l}${_((n = a == null ? void 0 : a.labels) == null ? void 0 : n[0])}, ${c ? A ? d.found.replace("%d", `${A}`) : d.empty : ""}`;
158
+ const U = `${l}${b((n = a == null ? void 0 : a.labels) == null ? void 0 : n[0])}, ${c ? A ? d.found.replace("%d", `${A}`) : d.empty : ""}`;
159
159
  v && u(v, "aria-multiselectable", `${c}`), a && u(a, "list", rt(v)), a && u(a, "aria-label", U), a && (t._value = a.value);
160
- const g = t.querySelector("select");
161
- g && (g.multiple = c);
162
- for (const s of (g == null ? void 0 : g.options) || []) s.remove();
163
- g == null || g.append(...O.map((s) => new Option("", s, !0, !0))), (i = $(t)) == null || i.takeRecords();
160
+ const y = t.querySelector("select");
161
+ y && (y.multiple = c), y && (y.textContent = ""), y == null || y.append(...O.map((s) => new Option("", s, !0, !0))), (i = $(t)) == null || i.takeRecords();
164
162
  }, S = (t, e) => {
165
163
  const { multiple: o, control: n, items: i } = t;
166
164
  if (!(o || !n || !i[0])) {
167
- if (e) return st(n, _(t.items[0]), "insertText");
168
- n.value = _(t.items[0]);
165
+ if (e) return st(n, b(t.items[0]), "insertText");
166
+ n.value = b(t.items[0]);
169
167
  }
170
168
  }, K = (t) => {
171
169
  var e;
172
- const { options: o = [], creatable: n, control: i, items: r, multiple: l } = t, d = ((e = i == null ? void 0 : i.value) == null ? void 0 : e.trim()) || "", m = d.toLowerCase() || null;
173
- let a = [...o].find((c) => c.label.trim().toLowerCase() === m);
170
+ const { options: o = [], creatable: n, control: i, items: r, multiple: l } = t, d = ((e = i == null ? void 0 : i.value) == null ? void 0 : e.trim()) || "", f = d.toLowerCase() || null;
171
+ let a = [...o].find((c) => c.label.trim().toLowerCase() === f);
174
172
  const v = { bubbles: !0, cancelable: !0, detail: a };
175
173
  if (t.dispatchEvent(new CustomEvent("beforematch", v)))
176
174
  for (const c of o) c.selected = c === a;
177
175
  if (a = [...o].find((c) => c.selected), !a && n && d)
178
- return y(t, M(d));
179
- if (!a && !l && r[0]) return y(t, r[0]);
176
+ return g(t, M(d));
177
+ if (!a && !l && r[0]) return g(t, r[0]);
180
178
  if (!a || t.values.includes(a.value)) return E(t);
181
- y(t, a, !1);
182
- }, y = (t, e, o = !0) => {
179
+ g(t, a, !1);
180
+ }, g = (t, e, o = !0) => {
183
181
  const n = M(e), i = [...t.items].find((l) => l.value === e.value), r = { bubbles: !0, cancelable: !0, detail: i || n };
184
182
  if (!(i && !o)) {
185
183
  if (!t.dispatchEvent(new CustomEvent("beforechange", r)))
186
184
  return E(t);
187
185
  i ? i.remove() : t.add(n), t.dispatchEvent(new CustomEvent("afterchange", r));
188
186
  }
189
- }, ft = (t, { target: e }) => {
190
- b || (b = lt("assertive")), b.isConnected || document.body.appendChild(b), e instanceof HTMLElement && (t._focus = e), t._items || (t._control = t.control || void 0, t._items = t.items, t._list = t.list || void 0, t._options = t.options || void 0);
191
- }, ht = (t) => L || setTimeout(_t, 0, t), _t = (t) => {
187
+ }, mt = (t, { target: e }) => {
188
+ _ || (_ = lt("assertive")), _.isConnected || document.body.appendChild(_), e instanceof HTMLElement && (t._focus = e), t._items || (t._control = t.control || void 0, t._items = t.items, t._list = t.list || void 0, t._options = t.options || void 0);
189
+ }, ht = (t) => L || setTimeout(bt, 0, t), bt = (t) => {
192
190
  var e;
193
191
  !t._focus || t.contains((e = t._root) == null ? void 0 : e.activeElement) || (S(t, !0), j(t));
194
- }, bt = (t, e) => {
192
+ }, _t = (t, e) => {
195
193
  var o;
196
194
  const { clientX: n, clientY: i, target: r } = e;
197
195
  for (const l of t.items) {
198
- const { top: d, right: m, bottom: a, left: v } = l.getBoundingClientRect();
199
- if (l.contains(r)) return y(t, l);
200
- if (i >= d && i <= a && n >= v && n <= m) return l.focus();
196
+ const { top: d, right: f, bottom: a, left: v } = l.getBoundingClientRect();
197
+ if (l.contains(r)) return g(t, l);
198
+ if (i >= d && i <= a && n >= v && n <= f) return l.focus();
201
199
  }
202
200
  r === t && ((o = t.control) == null || o.focus());
203
- }, gt = (t, e) => {
201
+ }, yt = (t, e) => {
204
202
  var o;
205
203
  const { options: n = [], control: i, multiple: r } = t, l = ((o = i == null ? void 0 : i.value) == null ? void 0 : o.trim()) || "";
206
204
  if (!(e instanceof InputEvent ? !e.inputType || e.inputType === pt : !!l)) return r || K(t);
207
205
  e.stopImmediatePropagation(), i && (i.value = t._value);
208
- for (const m of n)
209
- if (m.value && m.value === l)
210
- return y(t, m, r), setTimeout(S, 0, t, !0);
211
- }, yt = (t, e) => {
206
+ for (const f of n)
207
+ if (f.value && f.value === l)
208
+ return g(t, f, r), setTimeout(S, 0, t, !0);
209
+ }, gt = (t, e) => {
212
210
  var o;
213
211
  if (e.altKey || e.ctrlKey || e.metaKey || e.shiftKey) return;
214
- const { _texts: n, control: i, items: r, multiple: l } = t, { key: d, repeat: m, target: a } = e, v = i && i === a, c = v && (i == null ? void 0 : i.selectionEnd);
212
+ const { _texts: n, control: i, items: r, multiple: l } = t, { key: d, repeat: f, target: a } = e, v = i && i === a, c = v && (i == null ? void 0 : i.selectionEnd);
215
213
  let p = v ? r.length : [...r].indexOf(a);
216
214
  if (!(p === -1 || !v && ot(e))) {
217
215
  if (d === "ArrowRight" && !v) p += 1;
218
216
  else if (d === "ArrowLeft" && !c) p -= 1;
219
217
  else if (d === "Enter" && v) {
220
218
  const T = u(i, "form");
221
- return u(i, "form", "#"), requestAnimationFrame(() => u(i, "form", T)), l ? K(t) : !t.items[0] && b && (b.textContent = `${n.invalid}${++ut % 2 ? " " : ""}`), S(t, !0);
219
+ return u(i, "form", "#"), requestAnimationFrame(() => u(i, "form", T)), l ? K(t) : !t.items[0] && _ && (_.textContent = `${n.invalid}${++ut % 2 ? " " : ""}`), S(t, !0);
222
220
  } else if ((d === "Backspace" || d === "Delete") && !c) {
223
- if (e.preventDefault(), !m && r[p]) return y(t, r[p]);
221
+ if (e.preventDefault(), !f && r[p]) return g(t, r[p]);
224
222
  v && (p -= 1);
225
223
  } else return v || (i == null ? void 0 : i.focus());
226
224
  e.preventDefault(), (o = r[Math.max(0, p)] || i) == null || o.focus();
227
225
  }
228
226
  };
229
- at.define("u-combobox", mt);
227
+ at.define("u-combobox", ft);
230
228
  export {
231
- mt as UHTMLComboboxElement
229
+ ft as UHTMLComboboxElement
232
230
  };
233
231
  //# sourceMappingURL=u-combobox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"u-combobox.js","sources":["../../../../../node_modules/@u-elements/u-combobox/dist/u-combobox.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_FIREFOX = IS_BROWSER && /firefox/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 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 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 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, text2, attrs) => {\n const el = document.createElement(tagName);\n if (text2) el.textContent = text2;\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 createAriaLive = (mode) => {\n const live = createElement(\"div\");\n live.style.cssText = \"position:fixed;overflow:hidden;width:1px;white-space:nowrap\";\n attr(live, \"aria-live\", mode);\n return live;\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};\n\n// u-combobox.ts\nvar LIVE;\nvar LIVE_SR_FIX = 0;\nvar IS_PRESS = false;\nvar EVENTS = \"blur,focus,click,input,keydown,mousedown,mouseup\";\nvar EVENT_ONCE = { once: true, passive: true };\nvar IS_FIREFOX_MAC = IS_FIREFOX && !IS_ANDROID;\nvar IS_MOBILE = IS_ANDROID || IS_IOS;\nvar FALSE = \"false\";\nvar CLICK = \"insertReplacementText\";\nvar TEXTS = {\n added: \"Added\",\n empty: \"No selected\",\n found: \"Navigate left to find %d selected\",\n invalid: \"Invalid value\",\n of: \"of\",\n remove: \"Press to remove\",\n removed: \"Removed\"\n};\nvar UHTMLComboboxElement = class extends UHTMLElement {\n constructor() {\n super();\n this._speak = \"\";\n this._texts = __spreadValues({}, TEXTS);\n this._value = \"\";\n this.attachShadow({ mode: \"open\" }).append(\n createElement(\"slot\"),\n // Content slot\n createElement(\n \"style\",\n `:host(:not([hidden])) { display: block; cursor: pointer } /* Must be display block in Safari to allow focus inside */\n\t\t\t\t:host(:not([data-multiple])) ::slotted(data),\n\t\t\t\t:host([data-multiple=\"false\"]) ::slotted(data) { display: none } /* Hide data if not multiple */\n\t\t\t\t::slotted(data) { display: inline-block; pointer-events: none }\n ::slotted(data)::after { content: '\\\\00D7'; content: '\\\\00D7' / ''; padding-inline: .5ch; pointer-events: auto }\n ::slotted(data:focus) { ${FOCUS_OUTLINE} }`\n // Show focus outline around ::after only\n )\n );\n }\n // Locally store value to store value before input-click\n // Using ES2015 syntax for backwards compatibility\n static get observedAttributes() {\n return Object.keys(TEXTS).map((key) => `data-sr-${key}`);\n }\n connectedCallback() {\n this._root = getRoot(this);\n on(this, EVENTS, this, true);\n mutationObserver(this, { childList: true });\n setTimeout(render, 0, this);\n setTimeout(syncInputValue, 0, this);\n }\n attributeChangedCallback(prop, _, val) {\n const text2 = prop.split(\"data-sr-\")[1];\n if (TEXTS[text2]) this._texts[text2] = val || TEXTS[text2];\n }\n disconnectedCallback() {\n disconnectCache(this);\n mutationObserver(this, false);\n off(this, EVENTS, this, true);\n this._root = void 0;\n }\n handleEvent(event) {\n const target = event.target;\n if (event.type === \"blur\") onBlur(this);\n if (event.type === \"click\") onClick(this, event);\n if (event.type === \"focus\") onFocus(this, event);\n if (event.type === \"input\") onInput(this, event);\n if (event.type === \"keydown\") onKeyDown(this, event);\n if (event.type === \"mousedown\") IS_PRESS = this.contains(target);\n if (event.type === \"mouseup\") IS_PRESS = false;\n if (event.type === \"mutation\") render(this, event);\n }\n get multiple() {\n var _a2;\n return ((_a2 = attr(this, \"data-multiple\")) != null ? _a2 : FALSE) !== FALSE;\n }\n set multiple(value) {\n attr(this, \"data-multiple\", value ? \"\" : null);\n }\n get creatable() {\n var _a2;\n return ((_a2 = attr(this, \"data-creatable\")) != null ? _a2 : FALSE) !== FALSE;\n }\n set creatable(value) {\n attr(this, \"data-creatable\", value ? \"\" : null);\n }\n get control() {\n return this._control || this.querySelector(\"input\");\n }\n get list() {\n return this._list || this.querySelector(\"u-datalist,datalist\") || null;\n }\n get items() {\n return this._items || this.getElementsByTagName(\"data\");\n }\n get options() {\n var _a2, _b;\n const tag = `${((_a2 = this.list) == null ? void 0 : _a2.nodeName) === \"U-DATALIST\" ? \"u-\" : \"\"}option`;\n return this._options || ((_b = this.list) == null ? void 0 : _b.getElementsByTagName(tag));\n }\n get values() {\n return [...this.items].map(({ value }) => value);\n }\n add(value) {\n var _a2;\n const item = createItem(value);\n this.values.includes(item.value) || // Prevent duplicates\n ((_a2 = this.control) == null ? void 0 : _a2.insertAdjacentElement(\"beforebegin\", item));\n }\n};\nvar text = (el) => {\n var _a2;\n return ((_a2 = el == null ? void 0 : el.textContent) == null ? void 0 : _a2.trim()) || \"\";\n};\nvar createItem = (value) => {\n if (typeof value === \"string\") return createElement(\"data\", value, { value });\n if (value instanceof HTMLDataElement) return value;\n return createElement(\"data\", value.label || value.value, {\n value: value.value || value.label || \"\"\n });\n};\nvar disconnectCache = (el) => {\n el._focus = el._control = el._items = el._list = el._options = void 0;\n};\nvar render = (self, e) => {\n var _a2, _b, _c;\n let { _focus, _speak, _texts, items, control, list, multiple } = self;\n const { addedNodes, removedNodes } = (e == null ? void 0 : e.detail[0]) || {};\n const isMultiEdit = (e == null ? void 0 : e.detail[1]) || (addedNodes == null ? void 0 : addedNodes[1]) || (addedNodes == null ? void 0 : addedNodes[1]);\n const edit = isMultiEdit ? null : (addedNodes == null ? void 0 : addedNodes[0]) || (removedNodes == null ? void 0 : removedNodes[0]);\n const total = multiple ? items.length : 1;\n const values = [];\n if ((edit == null ? void 0 : edit.nodeName) === \"DATA\" && (multiple ? _focus : edit === _focus)) {\n _speak = `${_texts[edit.isConnected ? \"added\" : \"removed\"]} ${text(edit)}, `;\n if (IS_MOBILE || _focus === control) LIVE.textContent = _speak;\n control == null ? void 0 : control.focus();\n setTimeout(() => {\n var _a3, _b2;\n (_b2 = (_a3 = (_focus == null ? void 0 : _focus.nodeName) === \"DATA\" ? control : _focus) == null ? void 0 : _a3.focus) == null ? void 0 : _b2.call(_a3);\n self._speak = \"\";\n if (IS_FIREFOX_MAC) on(self, \"blur\", () => render(self), EVENT_ONCE);\n else setTimeout(render, 100, self);\n }, 100);\n }\n const keep = (edit == null ? void 0 : edit.isConnected) ? edit : items[0];\n for (const item of items) {\n if (!multiple && item !== keep) item.remove();\n else {\n const label2 = text(item);\n const value = item.value || label2;\n const aria = `${_speak}${label2}, ${_texts.remove}, ${values.push(value)} ${_texts.of} ${total}`;\n attr(item, \"role\", \"button\");\n attr(item, \"value\", value);\n attr(item, \"tabindex\", \"-1\");\n attr(item, \"aria-label\", aria);\n }\n }\n for (const opt of self.options || []) {\n const value = (_a2 = attr(opt, \"value\")) != null ? _a2 : text(opt);\n attr(opt, \"aria-label\", _speak ? `${_speak}${text(opt)}` : null);\n attr(opt, \"selected\", values.includes(value) ? \"\" : null);\n }\n const label = `${_speak}${text((_b = control == null ? void 0 : control.labels) == null ? void 0 : _b[0])}, ${multiple ? total ? _texts.found.replace(\"%d\", `${total}`) : _texts.empty : \"\"}`;\n if (list) attr(list, \"aria-multiselectable\", `${multiple}`);\n if (control) attr(control, \"list\", useId(list));\n if (control) attr(control, \"aria-label\", label);\n if (control) self._value = control.value;\n const select = self.querySelector(\"select\");\n if (select) select.multiple = multiple;\n for (const opt of (select == null ? void 0 : select.options) || []) opt.remove();\n select == null ? void 0 : select.append(...values.map((value) => new Option(\"\", value, true, true)));\n (_c = mutationObserver(self)) == null ? void 0 : _c.takeRecords();\n};\nvar syncInputValue = (self, withEvent) => {\n const { multiple, control, items } = self;\n if (multiple || !control || !items[0]) return;\n if (withEvent) return setValue(control, text(self.items[0]), \"insertText\");\n control.value = text(self.items[0]);\n};\nvar dispatchMatch = (self) => {\n var _a2;\n const { options = [], creatable, control, items, multiple } = self;\n const value = ((_a2 = control == null ? void 0 : control.value) == null ? void 0 : _a2.trim()) || \"\";\n const query = value.toLowerCase() || null;\n let match = [...options].find((o) => o.label.trim().toLowerCase() === query);\n const event = { bubbles: true, cancelable: true, detail: match };\n if (self.dispatchEvent(new CustomEvent(\"beforematch\", event)))\n for (const opt of options) opt.selected = opt === match;\n match = [...options].find((o) => o.selected);\n if (!match && creatable && value)\n return dispatchChange(self, createItem(value));\n if (!match && !multiple && items[0]) return dispatchChange(self, items[0]);\n if (!match || self.values.includes(match.value)) return render(self);\n dispatchChange(self, match, false);\n};\nvar dispatchChange = (self, item, removeable = true) => {\n const add = createItem(item);\n const remove = [...self.items].find((i) => i.value === item.value);\n const event = { bubbles: true, cancelable: true, detail: remove || add };\n if (remove && !removeable) return;\n if (!self.dispatchEvent(new CustomEvent(\"beforechange\", event)))\n return render(self);\n remove ? remove.remove() : self.add(add);\n self.dispatchEvent(new CustomEvent(\"afterchange\", event));\n};\nvar onFocus = (self, { target }) => {\n if (!LIVE) LIVE = createAriaLive(\"assertive\");\n if (!LIVE.isConnected) document.body.appendChild(LIVE);\n if (target instanceof HTMLElement) self._focus = target;\n if (!self._items) {\n self._control = self.control || void 0;\n self._items = self.items;\n self._list = self.list || void 0;\n self._options = self.options || void 0;\n }\n};\nvar onBlur = (self) => IS_PRESS || setTimeout(onBlurred, 0, self);\nvar onBlurred = (self) => {\n var _a2;\n if (!self._focus || self.contains((_a2 = self._root) == null ? void 0 : _a2.activeElement)) return;\n syncInputValue(self, true);\n disconnectCache(self);\n};\nvar onClick = (self, event) => {\n var _a2;\n const { clientX: x, clientY: y, target } = event;\n for (const item of self.items) {\n const { top, right, bottom, left } = item.getBoundingClientRect();\n if (item.contains(target)) return dispatchChange(self, item);\n if (y >= top && y <= bottom && x >= left && x <= right) return item.focus();\n }\n if (target === self) (_a2 = self.control) == null ? void 0 : _a2.focus();\n};\nvar onInput = (self, event) => {\n var _a2;\n const { options = [], control, multiple } = self;\n const value = ((_a2 = control == null ? void 0 : control.value) == null ? void 0 : _a2.trim()) || \"\";\n const isClick = event instanceof InputEvent ? !event.inputType || event.inputType === CLICK : !!value;\n if (!isClick) return multiple || dispatchMatch(self);\n event.stopImmediatePropagation();\n if (control) control.value = self._value;\n for (const opt of options)\n if (opt.value && opt.value === value) {\n dispatchChange(self, opt, multiple);\n return setTimeout(syncInputValue, 0, self, true);\n }\n};\nvar onKeyDown = (self, event) => {\n var _a2;\n if (event.altKey || event.ctrlKey || event.metaKey || event.shiftKey) return;\n const { _texts, control, items, multiple } = self;\n const { key, repeat, target } = event;\n const isControl = control && control === target;\n const inText = isControl && (control == null ? void 0 : control.selectionEnd);\n let index = isControl ? items.length : [...items].indexOf(target);\n if (index === -1 || !isControl && asButton(event)) return;\n if (key === \"ArrowRight\" && !isControl) index += 1;\n else if (key === \"ArrowLeft\" && !inText) index -= 1;\n else if (key === \"Enter\" && isControl) {\n const form = attr(control, \"form\");\n attr(control, \"form\", \"#\");\n requestAnimationFrame(() => attr(control, \"form\", form));\n if (multiple) dispatchMatch(self);\n else if (!self.items[0] && LIVE)\n LIVE.textContent = `${_texts.invalid}${++LIVE_SR_FIX % 2 ? \"\\xA0\" : \"\"}`;\n return syncInputValue(self, true);\n } else if ((key === \"Backspace\" || key === \"Delete\") && !inText) {\n event.preventDefault();\n if (!repeat && items[index]) return dispatchChange(self, items[index]);\n if (isControl) index -= 1;\n } else return isControl || (control == null ? void 0 : control.focus());\n event.preventDefault();\n (_a2 = items[Math.max(0, index)] || control) == null ? void 0 : _a2.focus();\n};\ncustomElements.define(\"u-combobox\", UHTMLComboboxElement);\n\nexport { UHTMLComboboxElement };\n"],"names":["__defProp","__getOwnPropSymbols","__hasOwnProp","__propIsEnum","__defNormalProp","obj","key","value","__spreadValues","a","b","prop","IS_BROWSER","IS_ANDROID","IS_FIREFOX","IS_IOS","_a","FOCUS_OUTLINE","UHTMLElement","attr","el","name","events","action","element","rest","type","on","off","observers","mutationObserver","options","observer","detail","asButton","event","isClick","getRoot","node","_a2","root","id","useId","createElement","tagName","text2","attrs","val","customElements","instance","createAriaLive","mode","live","setValue","input","data","_b","proto","LIVE","LIVE_SR_FIX","IS_PRESS","EVENTS","EVENT_ONCE","IS_FIREFOX_MAC","IS_MOBILE","FALSE","CLICK","TEXTS","UHTMLComboboxElement","render","syncInputValue","_","disconnectCache","target","onBlur","onClick","onFocus","onInput","onKeyDown","tag","item","createItem","text","self","_c","_focus","_speak","_texts","items","control","list","multiple","addedNodes","removedNodes","edit","total","values","_a3","_b2","keep","label2","aria","opt","label","select","withEvent","dispatchMatch","creatable","query","match","o","dispatchChange","removeable","add","remove","i","onBlurred","x","y","top","right","bottom","left","repeat","isControl","inText","index","form"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"u-combobox.js","sources":["../../../../../node_modules/@u-elements/u-combobox/dist/u-combobox.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_FIREFOX = IS_BROWSER && /firefox/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 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 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 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, text2, attrs) => {\n const el = document.createElement(tagName);\n if (text2) el.textContent = text2;\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 createAriaLive = (mode) => {\n const live = createElement(\"div\");\n live.style.cssText = \"position:fixed;overflow:hidden;width:1px;white-space:nowrap\";\n attr(live, \"aria-live\", mode);\n return live;\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};\n\n// u-combobox.ts\nvar LIVE;\nvar LIVE_SR_FIX = 0;\nvar IS_PRESS = false;\nvar EVENTS = \"beforeinput,blur,focus,click,input,keydown,mousedown,mouseup\";\nvar EVENT_ONCE = { once: true, passive: true };\nvar IS_FIREFOX_MAC = IS_FIREFOX && !IS_ANDROID;\nvar IS_MOBILE = IS_ANDROID || IS_IOS;\nvar FALSE = \"false\";\nvar CLICK = \"insertReplacementText\";\nvar TEXTS = {\n added: \"Added\",\n empty: \"No selected\",\n found: \"Navigate left to find %d selected\",\n invalid: \"Invalid value\",\n of: \"of\",\n remove: \"Press to remove\",\n removed: \"Removed\"\n};\nvar UHTMLComboboxElement = class extends UHTMLElement {\n constructor() {\n super();\n this._speak = \"\";\n this._texts = __spreadValues({}, TEXTS);\n this._value = \"\";\n this.attachShadow({ mode: \"open\" }).append(\n createElement(\"slot\"),\n // Content slot\n createElement(\n \"style\",\n `:host(:not([hidden])) { display: block; cursor: pointer } /* Must be display block in Safari to allow focus inside */\n\t\t\t\t:host(:not([data-multiple])) ::slotted(data),\n\t\t\t\t:host([data-multiple=\"false\"]) ::slotted(data) { display: none } /* Hide data if not multiple */\n\t\t\t\t::slotted(data) { display: inline-block; pointer-events: none }\n ::slotted(data)::after { content: '\\\\00D7'; content: '\\\\00D7' / ''; padding-inline: .5ch; pointer-events: auto }\n ::slotted(data:focus) { ${FOCUS_OUTLINE} }`\n // Show focus outline around ::after only\n )\n );\n }\n // Locally store value to store value before input-click\n // Using ES2015 syntax for backwards compatibility\n static get observedAttributes() {\n return Object.keys(TEXTS).map((key) => `data-sr-${key}`);\n }\n connectedCallback() {\n this._root = getRoot(this);\n on(this, EVENTS, this, true);\n mutationObserver(this, { childList: true });\n setTimeout(render, 0, this);\n setTimeout(syncInputValue, 0, this);\n }\n attributeChangedCallback(prop, _, val) {\n const text2 = prop.split(\"data-sr-\")[1];\n if (TEXTS[text2]) this._texts[text2] = val || TEXTS[text2];\n }\n disconnectedCallback() {\n disconnectCache(this);\n mutationObserver(this, false);\n off(this, EVENTS, this, true);\n this._root = void 0;\n }\n handleEvent(event) {\n const target = event.target;\n if (event.type === \"beforeinput\") this._value = (target == null ? void 0 : target.value) || \"\";\n if (event.type === \"blur\") onBlur(this);\n if (event.type === \"click\") onClick(this, event);\n if (event.type === \"focus\") onFocus(this, event);\n if (event.type === \"input\") onInput(this, event);\n if (event.type === \"keydown\") onKeyDown(this, event);\n if (event.type === \"mousedown\") IS_PRESS = this.contains(target);\n if (event.type === \"mouseup\") IS_PRESS = false;\n if (event.type === \"mutation\") render(this, event);\n }\n get multiple() {\n var _a2;\n return ((_a2 = attr(this, \"data-multiple\")) != null ? _a2 : FALSE) !== FALSE;\n }\n set multiple(value) {\n attr(this, \"data-multiple\", value ? \"\" : null);\n }\n get creatable() {\n var _a2;\n return ((_a2 = attr(this, \"data-creatable\")) != null ? _a2 : FALSE) !== FALSE;\n }\n set creatable(value) {\n attr(this, \"data-creatable\", value ? \"\" : null);\n }\n get control() {\n return this._control || this.querySelector(\"input\");\n }\n get list() {\n return this._list || this.querySelector(\"u-datalist,datalist\") || null;\n }\n get items() {\n return this._items || this.getElementsByTagName(\"data\");\n }\n get options() {\n var _a2, _b;\n const tag = `${((_a2 = this.list) == null ? void 0 : _a2.nodeName) === \"U-DATALIST\" ? \"u-\" : \"\"}option`;\n return this._options || ((_b = this.list) == null ? void 0 : _b.getElementsByTagName(tag));\n }\n get values() {\n return [...this.items].map(({ value }) => value);\n }\n add(value) {\n var _a2;\n const item = createItem(value);\n this.values.includes(item.value) || // Prevent duplicates\n ((_a2 = this.control) == null ? void 0 : _a2.insertAdjacentElement(\"beforebegin\", item));\n }\n};\nvar text = (el) => {\n var _a2;\n return ((_a2 = el == null ? void 0 : el.textContent) == null ? void 0 : _a2.trim()) || \"\";\n};\nvar createItem = (value) => {\n if (typeof value === \"string\") return createElement(\"data\", value, { value });\n if (value instanceof HTMLDataElement) return value;\n return createElement(\"data\", value.label || value.value, {\n value: value.value || value.label || \"\"\n });\n};\nvar disconnectCache = (el) => {\n el._focus = el._control = el._items = el._list = el._options = void 0;\n};\nvar render = (self, e) => {\n var _a2, _b, _c;\n let { _focus, _speak, _texts, items, control, list, multiple } = self;\n const { addedNodes, removedNodes } = (e == null ? void 0 : e.detail[0]) || {};\n const isMultiEdit = (e == null ? void 0 : e.detail[1]) || (addedNodes == null ? void 0 : addedNodes[1]) || (addedNodes == null ? void 0 : addedNodes[1]);\n const edit = isMultiEdit ? null : (addedNodes == null ? void 0 : addedNodes[0]) || (removedNodes == null ? void 0 : removedNodes[0]);\n const total = multiple ? items.length : 1;\n const values = [];\n if ((edit == null ? void 0 : edit.nodeName) === \"DATA\" && (multiple ? _focus : edit === _focus)) {\n _speak = `${_texts[edit.isConnected ? \"added\" : \"removed\"]} ${text(edit)}, `;\n if (IS_MOBILE || _focus === control) LIVE.textContent = _speak;\n control == null ? void 0 : control.focus();\n setTimeout(() => {\n var _a3, _b2;\n (_b2 = (_a3 = (_focus == null ? void 0 : _focus.nodeName) === \"DATA\" ? control : _focus) == null ? void 0 : _a3.focus) == null ? void 0 : _b2.call(_a3);\n self._speak = \"\";\n if (IS_FIREFOX_MAC) on(self, \"blur\", () => render(self), EVENT_ONCE);\n else setTimeout(render, 100, self);\n }, 100);\n }\n const keep = (edit == null ? void 0 : edit.isConnected) ? edit : items[0];\n for (const item of items) {\n if (!multiple && item !== keep) item.remove();\n else {\n const label2 = text(item);\n const value = item.value || label2;\n const aria = `${_speak}${label2}, ${_texts.remove}, ${values.push(value)} ${_texts.of} ${total}`;\n attr(item, \"role\", \"button\");\n attr(item, \"value\", value);\n attr(item, \"tabindex\", \"-1\");\n attr(item, \"aria-label\", aria);\n }\n }\n for (const opt of self.options || []) {\n const value = (_a2 = attr(opt, \"value\")) != null ? _a2 : text(opt);\n attr(opt, \"aria-label\", _speak ? `${_speak}${text(opt)}` : null);\n attr(opt, \"selected\", values.includes(value) ? \"\" : null);\n }\n const label = `${_speak}${text((_b = control == null ? void 0 : control.labels) == null ? void 0 : _b[0])}, ${multiple ? total ? _texts.found.replace(\"%d\", `${total}`) : _texts.empty : \"\"}`;\n if (list) attr(list, \"aria-multiselectable\", `${multiple}`);\n if (control) attr(control, \"list\", useId(list));\n if (control) attr(control, \"aria-label\", label);\n if (control) self._value = control.value;\n const select = self.querySelector(\"select\");\n if (select) select.multiple = multiple;\n if (select) select.textContent = \"\";\n select == null ? void 0 : select.append(...values.map((value) => new Option(\"\", value, true, true)));\n (_c = mutationObserver(self)) == null ? void 0 : _c.takeRecords();\n};\nvar syncInputValue = (self, withEvent) => {\n const { multiple, control, items } = self;\n if (multiple || !control || !items[0]) return;\n if (withEvent) return setValue(control, text(self.items[0]), \"insertText\");\n control.value = text(self.items[0]);\n};\nvar dispatchMatch = (self) => {\n var _a2;\n const { options = [], creatable, control, items, multiple } = self;\n const value = ((_a2 = control == null ? void 0 : control.value) == null ? void 0 : _a2.trim()) || \"\";\n const query = value.toLowerCase() || null;\n let match = [...options].find((o) => o.label.trim().toLowerCase() === query);\n const event = { bubbles: true, cancelable: true, detail: match };\n if (self.dispatchEvent(new CustomEvent(\"beforematch\", event)))\n for (const opt of options) opt.selected = opt === match;\n match = [...options].find((o) => o.selected);\n if (!match && creatable && value)\n return dispatchChange(self, createItem(value));\n if (!match && !multiple && items[0]) return dispatchChange(self, items[0]);\n if (!match || self.values.includes(match.value)) return render(self);\n dispatchChange(self, match, false);\n};\nvar dispatchChange = (self, item, removeable = true) => {\n const add = createItem(item);\n const remove = [...self.items].find((i) => i.value === item.value);\n const event = { bubbles: true, cancelable: true, detail: remove || add };\n if (remove && !removeable) return;\n if (!self.dispatchEvent(new CustomEvent(\"beforechange\", event)))\n return render(self);\n remove ? remove.remove() : self.add(add);\n self.dispatchEvent(new CustomEvent(\"afterchange\", event));\n};\nvar onFocus = (self, { target }) => {\n if (!LIVE) LIVE = createAriaLive(\"assertive\");\n if (!LIVE.isConnected) document.body.appendChild(LIVE);\n if (target instanceof HTMLElement) self._focus = target;\n if (!self._items) {\n self._control = self.control || void 0;\n self._items = self.items;\n self._list = self.list || void 0;\n self._options = self.options || void 0;\n }\n};\nvar onBlur = (self) => IS_PRESS || setTimeout(onBlurred, 0, self);\nvar onBlurred = (self) => {\n var _a2;\n if (!self._focus || self.contains((_a2 = self._root) == null ? void 0 : _a2.activeElement)) return;\n syncInputValue(self, true);\n disconnectCache(self);\n};\nvar onClick = (self, event) => {\n var _a2;\n const { clientX: x, clientY: y, target } = event;\n for (const item of self.items) {\n const { top, right, bottom, left } = item.getBoundingClientRect();\n if (item.contains(target)) return dispatchChange(self, item);\n if (y >= top && y <= bottom && x >= left && x <= right) return item.focus();\n }\n if (target === self) (_a2 = self.control) == null ? void 0 : _a2.focus();\n};\nvar onInput = (self, event) => {\n var _a2;\n const { options = [], control, multiple } = self;\n const value = ((_a2 = control == null ? void 0 : control.value) == null ? void 0 : _a2.trim()) || \"\";\n const isClick = event instanceof InputEvent ? !event.inputType || event.inputType === CLICK : !!value;\n if (!isClick) return multiple || dispatchMatch(self);\n event.stopImmediatePropagation();\n if (control) control.value = self._value;\n for (const opt of options)\n if (opt.value && opt.value === value) {\n dispatchChange(self, opt, multiple);\n return setTimeout(syncInputValue, 0, self, true);\n }\n};\nvar onKeyDown = (self, event) => {\n var _a2;\n if (event.altKey || event.ctrlKey || event.metaKey || event.shiftKey) return;\n const { _texts, control, items, multiple } = self;\n const { key, repeat, target } = event;\n const isControl = control && control === target;\n const inText = isControl && (control == null ? void 0 : control.selectionEnd);\n let index = isControl ? items.length : [...items].indexOf(target);\n if (index === -1 || !isControl && asButton(event)) return;\n if (key === \"ArrowRight\" && !isControl) index += 1;\n else if (key === \"ArrowLeft\" && !inText) index -= 1;\n else if (key === \"Enter\" && isControl) {\n const form = attr(control, \"form\");\n attr(control, \"form\", \"#\");\n requestAnimationFrame(() => attr(control, \"form\", form));\n if (multiple) dispatchMatch(self);\n else if (!self.items[0] && LIVE)\n LIVE.textContent = `${_texts.invalid}${++LIVE_SR_FIX % 2 ? \"\\xA0\" : \"\"}`;\n return syncInputValue(self, true);\n } else if ((key === \"Backspace\" || key === \"Delete\") && !inText) {\n event.preventDefault();\n if (!repeat && items[index]) return dispatchChange(self, items[index]);\n if (isControl) index -= 1;\n } else return isControl || (control == null ? void 0 : control.focus());\n event.preventDefault();\n (_a2 = items[Math.max(0, index)] || control) == null ? void 0 : _a2.focus();\n};\ncustomElements.define(\"u-combobox\", UHTMLComboboxElement);\n\nexport { UHTMLComboboxElement };\n"],"names":["__defProp","__getOwnPropSymbols","__hasOwnProp","__propIsEnum","__defNormalProp","obj","key","value","__spreadValues","a","b","prop","IS_BROWSER","IS_ANDROID","IS_FIREFOX","IS_IOS","_a","FOCUS_OUTLINE","UHTMLElement","attr","el","name","events","action","element","rest","type","on","off","observers","mutationObserver","options","observer","detail","asButton","event","isClick","getRoot","node","_a2","root","id","useId","createElement","tagName","text2","attrs","val","customElements","instance","createAriaLive","mode","live","setValue","input","data","_b","proto","LIVE","LIVE_SR_FIX","IS_PRESS","EVENTS","EVENT_ONCE","IS_FIREFOX_MAC","IS_MOBILE","FALSE","CLICK","TEXTS","UHTMLComboboxElement","render","syncInputValue","_","disconnectCache","target","onBlur","onClick","onFocus","onInput","onKeyDown","tag","item","createItem","text","self","_c","_focus","_speak","_texts","items","control","list","multiple","addedNodes","removedNodes","edit","total","values","_a3","_b2","keep","label2","aria","opt","label","select","withEvent","dispatchMatch","creatable","query","match","o","dispatchChange","removeable","add","remove","i","onBlurred","x","y","top","right","bottom","left","repeat","isControl","inText","index","form"],"mappings":"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","x_google_ignoreList":[0]}
@@ -16,7 +16,7 @@ function r(t, e, i) {
16
16
  var k = (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
- }, b = (t, ...e) => k("add", t, e), f = (t, ...e) => k("remove", t, e), X = (t, e) => t.attachShadow({ mode: "open" }).append(
19
+ }, b = (t, ...e) => k("add", t, e), _ = (t, ...e) => k("remove", t, e), X = (t, e) => t.attachShadow({ mode: "open" }).append(
20
20
  E("slot"),
21
21
  // Unnamed slot does automatically render all top element nodes
22
22
  E("style", e)
@@ -143,7 +143,7 @@ var C, J = 0, d, O = 0, g = !1, Q = w || P, M = "click,focusout,input,keydown,mo
143
143
  }), setTimeout(() => this.attributeChangedCallback());
144
144
  }
145
145
  disconnectedCallback() {
146
- f(this._root || this, "focus", this, !0), f(this._root || this, "focusin", this), S(this, !1), x(this), this._root = void 0;
146
+ _(this._root || this, "focus", this, !0), _(this._root || this, "focusin", this), S(this, !1), x(this), this._root = void 0;
147
147
  }
148
148
  attributeChangedCallback(t, e, i) {
149
149
  const o = t == null ? void 0 : t.split("data-sr-")[1], u = `input[list="${this.id}"]`;
@@ -163,7 +163,7 @@ var C, J = 0, d, O = 0, g = !1, Q = w || P, M = "click,focusout,input,keydown,mo
163
163
  var i;
164
164
  t.hidden === e && (t.hidden = !e, t._input && N(t, t._input, e), t.popover && ((i = t._input) != null && i.isConnected) && (r(t._input, "popovertarget", y(t)), r(t, "popover", "manual"), t.togglePopover(e)), e && H(t));
165
165
  }, x = (t) => {
166
- f(t._input || t, B, t), f(t._root || t, M, t), c(t, !1), t._input = void 0;
166
+ t._input && (_(t._input || t, B, t), _(t._root || t, M, t), c(t, !1), t._input = void 0);
167
167
  }, N = (t, e, i = !1) => {
168
168
  b(e, B, t, !0), r(e, "aria-autocomplete", "list"), r(e, "aria-controls", y(t)), r(e, "aria-expanded", `${Q ? i : "true"}`), r(e, "autocomplete", "off"), r(e, "role", "combobox");
169
169
  }, tt = (t, e) => {
@@ -181,8 +181,9 @@ var C, J = 0, d, O = 0, g = !1, Q = w || P, M = "click,focusout,input,keydown,mo
181
181
  new FocusEvent("focusout", { bubbles: !0, relatedTarget: i, view: u })
182
182
  ), x(t));
183
183
  }, ot = (t, { target: e }) => {
184
+ var i;
184
185
  if (!t._input || t._input === e) return c(t, !0);
185
- [...t.options].includes(e) && (z(t._input, e.value), r(t, "aria-multiselectable") !== "true" && (t._input.focus(), c(t, !1)));
186
+ [...t.options].includes(e) && (r(t, "aria-multiselectable") !== "true" && ((i = t._input) == null || i.focus(), c(t, !1)), z(t._input, e.value));
186
187
  }, rt = (t) => r(t, "aria-hidden") !== "true", nt = (t, e) => {
187
188
  var i;
188
189
  if (e.altKey || e.ctrlKey || e.metaKey || e.shiftKey) return;
@@ -191,7 +192,7 @@ var C, J = 0, d, O = 0, g = !1, Q = w || P, M = "click,focusout,input,keydown,mo
191
192
  let s = -1;
192
193
  if (o === "ArrowDown" && (s = (a + 1) % n.length), o === "ArrowUp" && (s = (~a ? a : n.length) - 1), ~a && ((o === "Home" || o === "PageUp") && (s = 0), (o === "End" || o === "PageDown") && (s = n.length - 1), o === "Enter"))
193
194
  return n[a].click(), e.preventDefault();
194
- if (n[s]) for (const _ of n) _.tabIndex = -1;
195
+ if (n[s]) for (const f of n) f.tabIndex = -1;
195
196
  n[s] && e.preventDefault(), (i = n[s] || t._input) == null || i.focus();
196
197
  }, H = (t) => {
197
198
  var e;
@@ -204,8 +205,8 @@ var C, J = 0, d, O = 0, g = !1, Q = w || P, M = "click,focusout,input,keydown,mo
204
205
  clearTimeout(C), C = setTimeout(() => {
205
206
  var a;
206
207
  if (t.hidden || ((a = t._root) == null ? void 0 : a.activeElement) !== t._input) return;
207
- const s = `${`${t._texts[n === 1 ? "singular" : "plural"]}`.replace("%d", `${n}`)}`, _ = `${!n && t.innerText.trim() || s}${++J % 2 ? " " : ""}`;
208
- i !== t._value && d && (d.textContent = _), t._value = i;
208
+ const s = `${`${t._texts[n === 1 ? "singular" : "plural"]}`.replace("%d", `${n}`)}`, f = `${!n && t.innerText.trim() || s}${++J % 2 ? " " : ""}`;
209
+ i !== t._value && d && (d.textContent = f), t._value = i;
209
210
  }, 1e3), w && u.forEach((a, s) => r(a, "title", `${s + 1}/${n}`));
210
211
  };
211
212
  p && Object.defineProperty(HTMLInputElement.prototype, "list", {
@@ -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 createAriaLive = (mode) => {\n const live = createElement(\"div\");\n live.style.cssText = \"position:fixed;overflow:hidden;width:1px;white-space:nowrap\";\n attr(live, \"aria-live\", mode);\n return live;\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};\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 LIVE_SR_FIX = 0;\nvar LIVE;\nvar INPUT_DEBOUNCE = 0;\nvar IS_PRESS = false;\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 // 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 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 for (const input of this._root.querySelectorAll(css))\n setupInput(this, input);\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\") IS_PRESS = this.contains(target);\n if (type === \"mouseup\") IS_PRESS = false;\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 setExpanded = (self, open) => {\n var _a2;\n if (self.hidden !== open) return;\n self.hidden = !open;\n if (self._input) setupInput(self, self._input, open);\n if (self.popover && ((_a2 = self._input) == null ? void 0 : _a2.isConnected)) {\n attr(self._input, \"popovertarget\", useId(self));\n attr(self, \"popover\", \"manual\");\n self.togglePopover(open);\n }\n if (open) onInput(self);\n};\nvar disconnectInput = (self) => {\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 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 : \"true\"}`);\n attr(input, \"autocomplete\", \"off\");\n attr(input, \"role\", \"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 (!LIVE) LIVE = createAriaLive(\"assertive\");\n if (!LIVE.isConnected) document.body.appendChild(LIVE);\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\", { view: window }));\n self._input.dispatchEvent(\n new FocusEvent(\"focusin\", { bubbles: true, view: window })\n );\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, true);\n }\n};\nvar onBlur = (self, event) => {\n if (!IS_PRESS) 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 const view = window;\n if (input && input !== relatedTarget && !self.contains(relatedTarget)) {\n input.dispatchEvent(new FocusEvent(\"blur\", { relatedTarget, view }));\n input.dispatchEvent(\n new FocusEvent(\"focusout\", { bubbles: true, relatedTarget, view })\n );\n disconnectInput(self);\n }\n};\nvar onClick = (self, { target }) => {\n if (!self._input || self._input === target) return setExpanded(self, true);\n if ([...self.options].includes(target)) {\n setValue(self._input, target.value);\n if (attr(self, \"aria-multiselectable\") !== \"true\") {\n self._input.focus();\n setExpanded(self, false);\n }\n }\n};\nvar isVisible = (el) => attr(el, \"aria-hidden\") !== \"true\";\nvar onKeyDown = (self, event) => {\n var _a2;\n if (event.altKey || event.ctrlKey || event.metaKey || event.shiftKey) return;\n setExpanded(self, event.key !== \"Escape\" && event.key !== \"Tab\");\n const { key, target } = event;\n const options = [...self.options].filter(isVisible);\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 event.preventDefault();\n }\n }\n if (options[next]) for (const option of options) option.tabIndex = -1;\n if (options[next]) event.preventDefault();\n (_a2 = options[next] || self._input) == null ? void 0 : _a2.focus();\n};\nvar onInput = (self) => {\n var _a2;\n const value = ((_a2 = self._input) == null ? void 0 : _a2.value.toLowerCase().trim()) || \"\";\n const filter = !self.hasAttribute(\"data-nofilter\");\n const visible = [];\n for (const opt of self.options) {\n const hidden = `${opt.disabled || opt.hidden || filter && !opt.label.toLowerCase().includes(value)}`;\n attr(opt, \"aria-hidden\", hidden);\n if (hidden === \"false\" && attr(opt, \"role\") !== \"none\") visible.push(opt);\n }\n const { length: total } = visible;\n clearTimeout(LIVE_TIMER);\n LIVE_TIMER = setTimeout(() => {\n var _a3;\n if (self.hidden || ((_a3 = self._root) == null ? void 0 : _a3.activeElement) !== self._input) return;\n const hitsText = `${`${self._texts[total === 1 ? \"singular\" : \"plural\"]}`.replace(\"%d\", `${total}`)}`;\n const liveText = `${!total && self.innerText.trim() || hitsText}${++LIVE_SR_FIX % 2 ? \"\\xA0\" : \"\"}`;\n if (value !== self._value && LIVE) LIVE.textContent = liveText;\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","createAriaLive","mode","live","setValue","input","data","_b","event","proto","DISABLED","SELECTED","UHTMLOptionElement","LIVE_TIMER","LIVE_SR_FIX","LIVE","INPUT_DEBOUNCE","IS_PRESS","IS_MOBILE","EVENTS","EVENTS_INPUT","TEXTS","UHTMLDataListElement","disconnectInput","_prev","next","setupInput","target","onClick","onFocus","onBlur","onKeyDown","onInput","setExpanded","self","open","isInput","onBlurred","relatedTarget","view","isVisible","prev","option","filter","visible","opt","hidden","total","_a3","hitsText","liveText","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.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 createAriaLive = (mode) => {\n const live = createElement(\"div\");\n live.style.cssText = \"position:fixed;overflow:hidden;width:1px;white-space:nowrap\";\n attr(live, \"aria-live\", mode);\n return live;\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};\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 LIVE_SR_FIX = 0;\nvar LIVE;\nvar INPUT_DEBOUNCE = 0;\nvar IS_PRESS = false;\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 // 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 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 for (const input of this._root.querySelectorAll(css))\n setupInput(this, input);\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\") IS_PRESS = this.contains(target);\n if (type === \"mouseup\") IS_PRESS = false;\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 setExpanded = (self, open) => {\n var _a2;\n if (self.hidden !== open) return;\n self.hidden = !open;\n if (self._input) setupInput(self, self._input, open);\n if (self.popover && ((_a2 = self._input) == null ? void 0 : _a2.isConnected)) {\n attr(self._input, \"popovertarget\", useId(self));\n attr(self, \"popover\", \"manual\");\n self.togglePopover(open);\n }\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 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 : \"true\"}`);\n attr(input, \"autocomplete\", \"off\");\n attr(input, \"role\", \"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 (!LIVE) LIVE = createAriaLive(\"assertive\");\n if (!LIVE.isConnected) document.body.appendChild(LIVE);\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\", { view: window }));\n self._input.dispatchEvent(\n new FocusEvent(\"focusin\", { bubbles: true, view: window })\n );\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, true);\n }\n};\nvar onBlur = (self, event) => {\n if (!IS_PRESS) 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 const view = window;\n if (input && input !== relatedTarget && !self.contains(relatedTarget)) {\n input.dispatchEvent(new FocusEvent(\"blur\", { relatedTarget, view }));\n input.dispatchEvent(\n new FocusEvent(\"focusout\", { bubbles: true, relatedTarget, view })\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 if ([...self.options].includes(target)) {\n if (attr(self, \"aria-multiselectable\") !== \"true\") {\n (_a2 = self._input) == null ? void 0 : _a2.focus();\n setExpanded(self, false);\n }\n setValue(self._input, target.value);\n }\n};\nvar isVisible = (el) => attr(el, \"aria-hidden\") !== \"true\";\nvar onKeyDown = (self, event) => {\n var _a2;\n if (event.altKey || event.ctrlKey || event.metaKey || event.shiftKey) return;\n setExpanded(self, event.key !== \"Escape\" && event.key !== \"Tab\");\n const { key, target } = event;\n const options = [...self.options].filter(isVisible);\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 event.preventDefault();\n }\n }\n if (options[next]) for (const option of options) option.tabIndex = -1;\n if (options[next]) event.preventDefault();\n (_a2 = options[next] || self._input) == null ? void 0 : _a2.focus();\n};\nvar onInput = (self) => {\n var _a2;\n const value = ((_a2 = self._input) == null ? void 0 : _a2.value.toLowerCase().trim()) || \"\";\n const filter = !self.hasAttribute(\"data-nofilter\");\n const visible = [];\n for (const opt of self.options) {\n const hidden = `${opt.disabled || opt.hidden || filter && !opt.label.toLowerCase().includes(value)}`;\n attr(opt, \"aria-hidden\", hidden);\n if (hidden === \"false\" && attr(opt, \"role\") !== \"none\") visible.push(opt);\n }\n const { length: total } = visible;\n clearTimeout(LIVE_TIMER);\n LIVE_TIMER = setTimeout(() => {\n var _a3;\n if (self.hidden || ((_a3 = self._root) == null ? void 0 : _a3.activeElement) !== self._input) return;\n const hitsText = `${`${self._texts[total === 1 ? \"singular\" : \"plural\"]}`.replace(\"%d\", `${total}`)}`;\n const liveText = `${!total && self.innerText.trim() || hitsText}${++LIVE_SR_FIX % 2 ? \"\\xA0\" : \"\"}`;\n if (value !== self._value && LIVE) LIVE.textContent = liveText;\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","createAriaLive","mode","live","setValue","input","data","_b","event","proto","DISABLED","SELECTED","UHTMLOptionElement","LIVE_TIMER","LIVE_SR_FIX","LIVE","INPUT_DEBOUNCE","IS_PRESS","IS_MOBILE","EVENTS","EVENTS_INPUT","TEXTS","UHTMLDataListElement","disconnectInput","_prev","next","setupInput","target","onClick","onFocus","onBlur","onKeyDown","onInput","setExpanded","self","open","isInput","onBlurred","relatedTarget","view","isVisible","prev","option","filter","visible","opt","hidden","total","_a3","hitsText","liveText","idx"],"mappings":"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","x_google_ignoreList":[0]}