@mattilsynet/design 3.2.3 → 3.2.5
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/atlas/atlas-element.js +1 -1
- package/mtds/deprecations.js +39 -37
- package/mtds/deprecations.js.map +1 -1
- package/mtds/external/@u-elements/u-combobox/dist/u-combobox.js +288 -0
- package/mtds/external/@u-elements/u-combobox/dist/u-combobox.js.map +1 -0
- package/mtds/external/@u-elements/u-datalist/dist/u-datalist.js +238 -0
- package/mtds/external/@u-elements/u-datalist/dist/u-datalist.js.map +1 -0
- package/mtds/external/@u-elements/u-details/dist/u-details.js +101 -0
- package/mtds/external/@u-elements/u-details/dist/u-details.js.map +1 -0
- package/mtds/external/@u-elements/u-tabs/dist/u-tabs.js +235 -0
- package/mtds/external/@u-elements/u-tabs/dist/u-tabs.js.map +1 -0
- package/mtds/index.iife.js +17 -30
- package/mtds/index.js +36 -21
- package/mtds/layout/layout.d.ts +1 -1
- package/mtds/layout/layout.js.map +1 -1
- package/mtds/package.json.js +1 -1
- package/mtds/styles.css +1 -1
- package/mtds/styles.json +23 -23
- package/mtds/styles.module.css.js +44 -44
- package/mtds/tabs/tabs.d.ts +9 -9
- package/mtds/tabs/tabs.js +8 -8
- package/mtds/tabs/tabs.js.map +1 -1
- package/package.json +9 -13
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
var _ = () => typeof window < "u" && typeof window.document < "u" && typeof window.navigator < "u", y = _(), Y = y ? navigator.userAgent : "", G = /android/i.test(Y), M;
|
|
2
|
+
y && // @ts-expect-error Typescript has not implemented userAgentData yet https://stackoverflow.com/a/71392474
|
|
3
|
+
/^Mac/i.test(((M = navigator.userAgentData) == null ? void 0 : M.platform) || navigator.platform);
|
|
4
|
+
var W = y && window.CSSStyleSheet && document.adoptedStyleSheets, I = ":host(:not([hidden])) { display: block }", X = `${G ? "data" : "aria"}-labelledby`, T = typeof HTMLElement > "u" ? class {
|
|
5
|
+
} : HTMLElement, a = (t, e, n) => n === void 0 ? t.getAttribute(e) : (n === null ? t.removeAttribute(e) : t.getAttribute(e) !== n && t.setAttribute(e, n), null), z = (t, ...e) => {
|
|
6
|
+
const [n, ...r] = e;
|
|
7
|
+
for (const s of n.split(" ")) t.addEventListener(s, ...r);
|
|
8
|
+
return () => U(t, ...e);
|
|
9
|
+
}, U = (t, ...e) => {
|
|
10
|
+
const [n, ...r] = e;
|
|
11
|
+
for (const s of n.split(" ")) t.removeEventListener(s, ...r);
|
|
12
|
+
}, R = (t, e) => {
|
|
13
|
+
const n = t.shadowRoot || t.attachShadow({ mode: "open" });
|
|
14
|
+
if (n.querySelector("slot") || n.append(C("slot")), !n.querySelector("style"))
|
|
15
|
+
if (!W) n.append(C("style", null, e));
|
|
16
|
+
else {
|
|
17
|
+
const r = new CSSStyleSheet();
|
|
18
|
+
r.replaceSync(e), n.adoptedStyleSheets = [r];
|
|
19
|
+
}
|
|
20
|
+
return n;
|
|
21
|
+
}, J = (t, e, n) => {
|
|
22
|
+
const r = new MutationObserver((o) => {
|
|
23
|
+
if (!_() || !t.isConnected) return s();
|
|
24
|
+
e(t, o);
|
|
25
|
+
}), s = Object.assign(() => r.disconnect(), {
|
|
26
|
+
takeRecords: () => r.takeRecords()
|
|
27
|
+
// Expose takeRecords - useful if mutating a attribute that is observed
|
|
28
|
+
});
|
|
29
|
+
return e(t), r.observe(t, n), s;
|
|
30
|
+
}, D = (t) => {
|
|
31
|
+
var e;
|
|
32
|
+
const n = ((e = t.getRootNode) == null ? void 0 : e.call(t)) || t.ownerDocument;
|
|
33
|
+
return n instanceof Document || n instanceof ShadowRoot ? n : document;
|
|
34
|
+
}, L = (t) => {
|
|
35
|
+
if (!t || !y) return null;
|
|
36
|
+
if (window.uElementsId || (window.uElementsId = {}), !t.id) {
|
|
37
|
+
const e = t.nodeName.toLowerCase();
|
|
38
|
+
window.uElementsId[e] || (window.uElementsId[e] = 1), t.id = `:${e}${window.uElementsId[e]++}`;
|
|
39
|
+
}
|
|
40
|
+
return t.id;
|
|
41
|
+
}, C = (t, e, n) => {
|
|
42
|
+
const r = document.createElement(t);
|
|
43
|
+
if (n && (r.textContent = n), e) for (const [s, o] of Object.entries(e)) a(r, s, o);
|
|
44
|
+
return r;
|
|
45
|
+
}, g = {
|
|
46
|
+
define: (t, e) => !_() || window.customElements.get(t) || window.customElements.define(t, e)
|
|
47
|
+
}, k = (t, e = "<slot></slot>") => `<template shadowrootmode="open">${e}<style>${t}</style></template>`, b = "aria-controls", H = "aria-disabled", E = "aria-selected", w = "tabindex", O = I, P = I, tt = "", $ = `${I}
|
|
48
|
+
::slotted([role="tab"]:not([hidden])) { display: inline-block; cursor: pointer }
|
|
49
|
+
::slotted([role="tab"][${H}="true"]) { cursor: default }`, et = k(O), nt = k($), rt = "", at = k(P), B = class extends T {
|
|
50
|
+
constructor() {
|
|
51
|
+
super(), R(this, O);
|
|
52
|
+
}
|
|
53
|
+
get tabList() {
|
|
54
|
+
return this.querySelector(
|
|
55
|
+
'[role="tablist"]:not(:scope [role="tabpanel"] [role="tablist"])'
|
|
56
|
+
);
|
|
57
|
+
}
|
|
58
|
+
get selectedIndex() {
|
|
59
|
+
const t = f(this.tabList);
|
|
60
|
+
return t.indexOf(v(t));
|
|
61
|
+
}
|
|
62
|
+
set selectedIndex(t) {
|
|
63
|
+
u(this.tabs[t]);
|
|
64
|
+
}
|
|
65
|
+
get tabs() {
|
|
66
|
+
return this.querySelectorAll(
|
|
67
|
+
'[role="tab"]:not(:scope [role="tabpanel"] [role="tab"])'
|
|
68
|
+
);
|
|
69
|
+
}
|
|
70
|
+
get panels() {
|
|
71
|
+
return this.querySelectorAll(
|
|
72
|
+
'[role="tabpanel"]:not(:scope [role="tabpanel"] [role="tabpanel"])'
|
|
73
|
+
);
|
|
74
|
+
}
|
|
75
|
+
}, N = class extends T {
|
|
76
|
+
// Using underscore instead of private fields for backwards compatibility
|
|
77
|
+
constructor() {
|
|
78
|
+
super(), R(this, $);
|
|
79
|
+
}
|
|
80
|
+
connectedCallback() {
|
|
81
|
+
a(this, "role", "tablist"), z(this, "click keydown", this), this._umutate = J(this, Z, {
|
|
82
|
+
attributeFilter: ["id", "role", b, E],
|
|
83
|
+
// Needed if role="tab|tabpanel" and not u-tab|u-tabpanel is used
|
|
84
|
+
attributes: !0,
|
|
85
|
+
childList: !0,
|
|
86
|
+
subtree: !0
|
|
87
|
+
// Needed to catch changes of attributes in children
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
disconnectedCallback() {
|
|
91
|
+
var t;
|
|
92
|
+
U(this, "click keydown", this), (t = this._umutate) == null || t.call(this), this._umutate = void 0;
|
|
93
|
+
}
|
|
94
|
+
handleEvent(t) {
|
|
95
|
+
var e, n, r, s;
|
|
96
|
+
const { key: o, type: l, target: S } = t, i = f(this), c = i.findIndex((d) => d.contains(S)), F = o === " " || o === "Enter";
|
|
97
|
+
let m = c;
|
|
98
|
+
if (!(t.defaultPrevented || c === -1) && (l === "click" && u(i[c]), l === "keydown")) {
|
|
99
|
+
if (F) {
|
|
100
|
+
(e = t.preventDefault) == null || e.call(t);
|
|
101
|
+
const d = { bubbles: !0, cancelable: !0, composed: !0 };
|
|
102
|
+
return i[c].dispatchEvent(new MouseEvent("click", d));
|
|
103
|
+
}
|
|
104
|
+
if (o === "ArrowDown" || o === "ArrowRight")
|
|
105
|
+
m = (c + 1) % i.length;
|
|
106
|
+
else if (o === "ArrowUp" || o === "ArrowLeft")
|
|
107
|
+
m = (c || i.length) - 1;
|
|
108
|
+
else if (o === "End") m = i.length - 1;
|
|
109
|
+
else if (o === "Home") m = 0;
|
|
110
|
+
else if (o === "Tab" && !p(i[c])) {
|
|
111
|
+
const d = v(i);
|
|
112
|
+
return d && a(d, w, "-1"), d && setTimeout(() => a(d, w, "0"));
|
|
113
|
+
} else return;
|
|
114
|
+
(n = t.preventDefault) == null || n.call(t), (s = (r = i[m]).focus) == null || s.call(r);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
get tabsElement() {
|
|
118
|
+
return h(this);
|
|
119
|
+
}
|
|
120
|
+
get tabs() {
|
|
121
|
+
return this.querySelectorAll(':scope > [role="tab"]');
|
|
122
|
+
}
|
|
123
|
+
get selectedIndex() {
|
|
124
|
+
const t = f(this);
|
|
125
|
+
return t.indexOf(v(t));
|
|
126
|
+
}
|
|
127
|
+
set selectedIndex(t) {
|
|
128
|
+
u(this.tabs[t]);
|
|
129
|
+
}
|
|
130
|
+
}, Q = class extends T {
|
|
131
|
+
static get observedAttributes() {
|
|
132
|
+
return ["id", E, b];
|
|
133
|
+
}
|
|
134
|
+
connectedCallback() {
|
|
135
|
+
var t;
|
|
136
|
+
a(this, "role", "tab"), a(this, E, `${this.selected}`), a(this, w, this.selected ? "0" : "-1"), v((t = this.parentElement) == null ? void 0 : t.children) || u(this);
|
|
137
|
+
}
|
|
138
|
+
attributeChangedCallback() {
|
|
139
|
+
!A.has(this.parentElement) && this.selected && u(this);
|
|
140
|
+
}
|
|
141
|
+
get tabsElement() {
|
|
142
|
+
return h(this);
|
|
143
|
+
}
|
|
144
|
+
get tabList() {
|
|
145
|
+
const t = this.parentElement;
|
|
146
|
+
return t instanceof N ? t : null;
|
|
147
|
+
}
|
|
148
|
+
get selected() {
|
|
149
|
+
return p(this);
|
|
150
|
+
}
|
|
151
|
+
set selected(t) {
|
|
152
|
+
t && u(this);
|
|
153
|
+
}
|
|
154
|
+
/** Retrieves the ordinal position of an tab in a tablist. */
|
|
155
|
+
get index() {
|
|
156
|
+
return Math.max(f(this.parentElement).indexOf(this), 0);
|
|
157
|
+
}
|
|
158
|
+
get panel() {
|
|
159
|
+
var t;
|
|
160
|
+
const e = (t = h(this)) == null ? void 0 : t.panels, n = f(this.parentElement).indexOf(this);
|
|
161
|
+
return x(this, e?.[n]);
|
|
162
|
+
}
|
|
163
|
+
}, V = class extends T {
|
|
164
|
+
constructor() {
|
|
165
|
+
super(), R(this, P);
|
|
166
|
+
}
|
|
167
|
+
connectedCallback() {
|
|
168
|
+
a(this, "role", "tabpanel");
|
|
169
|
+
const t = new Set(this.tabs), e = h(this), n = e?.tabs[Array.prototype.indexOf.call(e?.panels, this)];
|
|
170
|
+
n && !n.hasAttribute(b) && t.add(n);
|
|
171
|
+
const r = v(t) || t.values().next().value;
|
|
172
|
+
K(r, () => q(this, r, !!r && p(r)));
|
|
173
|
+
}
|
|
174
|
+
get tabsElement() {
|
|
175
|
+
return h(this);
|
|
176
|
+
}
|
|
177
|
+
get tabs() {
|
|
178
|
+
return D(this).querySelectorAll(
|
|
179
|
+
`[${b}="${L(this)}"]`
|
|
180
|
+
);
|
|
181
|
+
}
|
|
182
|
+
}, Z = (t, e = []) => {
|
|
183
|
+
let n;
|
|
184
|
+
const r = f(t);
|
|
185
|
+
for (const { target: s } of e)
|
|
186
|
+
s instanceof Element && a(s, "role") === "tab" && p(s) && (n = s);
|
|
187
|
+
!n && !v(r) && (n = r.find(j)), u(n);
|
|
188
|
+
}, q = (t, e, n = !1) => {
|
|
189
|
+
a(t, "aria-hidden", `${!n}`), a(t, "hidden", n ? null : ""), a(t, w, n ? "0" : null), e && a(e, b, L(t)), e && n && p(e) && a(t, X, L(e));
|
|
190
|
+
}, A = /* @__PURE__ */ new Set(), K = (t, e) => {
|
|
191
|
+
var n;
|
|
192
|
+
const r = t?.parentElement;
|
|
193
|
+
r && A.add(r), e(), r && A.delete(r), (n = r?._umutate) == null || n.takeRecords();
|
|
194
|
+
}, j = (t) => a(t, H) !== "true", p = (t) => a(t, E) === "true", v = (t = []) => {
|
|
195
|
+
for (const e of t) if (p(e)) return e;
|
|
196
|
+
}, f = (t) => {
|
|
197
|
+
const e = [];
|
|
198
|
+
for (const n of t?.children || [])
|
|
199
|
+
n.getAttribute("role") === "tab" && e.push(n);
|
|
200
|
+
return e;
|
|
201
|
+
}, x = (t, e = null) => {
|
|
202
|
+
const n = a(t, b);
|
|
203
|
+
return n ? D(t).getElementById(n) : e;
|
|
204
|
+
}, h = (t) => {
|
|
205
|
+
for (let e = t; e; e = e.parentNode || e.host)
|
|
206
|
+
if (e instanceof B) return e;
|
|
207
|
+
return null;
|
|
208
|
+
}, u = (t) => t && j(t) && K(t, () => {
|
|
209
|
+
var e;
|
|
210
|
+
const n = f(t.parentElement), r = ((e = h(t)) == null ? void 0 : e.panels) || [], s = x(t, r?.[n.indexOf(t)]);
|
|
211
|
+
let o = 0;
|
|
212
|
+
for (const l of n) {
|
|
213
|
+
const S = x(l, r[o++]);
|
|
214
|
+
a(l, E, `${l === t}`), a(l, w, l === t ? "0" : "-1"), S && q(S, l, S === s);
|
|
215
|
+
}
|
|
216
|
+
});
|
|
217
|
+
g.define("u-tabs", B);
|
|
218
|
+
g.define("u-tablist", N);
|
|
219
|
+
g.define("u-tab", Q);
|
|
220
|
+
g.define("u-tabpanel", V);
|
|
221
|
+
export {
|
|
222
|
+
Q as UHTMLTabElement,
|
|
223
|
+
N as UHTMLTabListElement,
|
|
224
|
+
nt as UHTMLTabListShadowRoot,
|
|
225
|
+
$ as UHTMLTabListStyle,
|
|
226
|
+
V as UHTMLTabPanelElement,
|
|
227
|
+
at as UHTMLTabPanelShadowRoot,
|
|
228
|
+
P as UHTMLTabPanelStyle,
|
|
229
|
+
rt as UHTMLTabShadowRoot,
|
|
230
|
+
tt as UHTMLTabStyle,
|
|
231
|
+
B as UHTMLTabsElement,
|
|
232
|
+
et as UHTMLTabsShadowRoot,
|
|
233
|
+
O as UHTMLTabsStyle
|
|
234
|
+
};
|
|
235
|
+
//# sourceMappingURL=u-tabs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"u-tabs.js","sources":["../../../../../node_modules/@u-elements/u-tabs/dist/u-tabs.js"],"sourcesContent":["// ../utils.ts\nvar isBrowser = () => typeof window !== \"undefined\" && typeof window.document !== \"undefined\" && typeof window.navigator !== \"undefined\";\nvar IS_BROWSER = isBrowser();\nvar AGENT = IS_BROWSER ? navigator.userAgent : \"\";\nvar IS_ANDROID = /android/i.test(AGENT);\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 SUPPORTS_CONSTRUCTED_CSS = IS_BROWSER && window.CSSStyleSheet && document.adoptedStyleSheets;\nvar DISPLAY_BLOCK = \":host(:not([hidden])) { display: block }\";\nvar SAFE_LABELLEDBY = `${IS_ANDROID ? \"data\" : \"aria\"}-labelledby`;\nvar UHTMLElement = typeof HTMLElement === \"undefined\" ? class {\n} : HTMLElement;\nvar 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 on = (el, ...rest) => {\n const [types, ...options] = rest;\n for (const type of types.split(\" \")) el.addEventListener(type, ...options);\n return () => off(el, ...rest);\n};\nvar off = (el, ...rest) => {\n const [types, ...options] = rest;\n for (const type of types.split(\" \")) el.removeEventListener(type, ...options);\n};\nvar attachStyle = (el, css) => {\n const root = el.shadowRoot || el.attachShadow({ mode: \"open\" });\n if (!root.querySelector(\"slot\")) root.append(tag(\"slot\"));\n if (!root.querySelector(\"style\")) {\n if (!SUPPORTS_CONSTRUCTED_CSS) root.append(tag(\"style\", null, css));\n else {\n const sheet = new CSSStyleSheet();\n sheet.replaceSync(css);\n root.adoptedStyleSheets = [sheet];\n }\n }\n return root;\n};\nvar onMutation = (el, callback, options) => {\n const observer = new MutationObserver((records) => {\n if (!isBrowser() || !el.isConnected) return cleanup();\n callback(el, records);\n });\n const cleanup = Object.assign(() => observer.disconnect(), {\n takeRecords: () => observer.takeRecords()\n // Expose takeRecords - useful if mutating a attribute that is observed\n });\n callback(el);\n observer.observe(el, options);\n return cleanup;\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 useId = (el) => {\n if (!el || !IS_BROWSER) return null;\n if (!window.uElementsId) window.uElementsId = {};\n if (!el.id) {\n const node = el.nodeName.toLowerCase();\n if (!window.uElementsId[node]) window.uElementsId[node] = 1;\n el.id = `:${node}${window.uElementsId[node]++}`;\n }\n return el.id;\n};\nvar tag = (tagName, attrs, content) => {\n const el = document.createElement(tagName);\n if (content) el.textContent = content;\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) => !isBrowser() || 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-tabs.ts\nvar ARIA_CONTROLS = \"aria-controls\";\nvar ARIA_DISABLED = \"aria-disabled\";\nvar ARIA_SELECTED = \"aria-selected\";\nvar TABINDEX = \"tabindex\";\nvar UHTMLTabsStyle = DISPLAY_BLOCK;\nvar UHTMLTabPanelStyle = DISPLAY_BLOCK;\nvar UHTMLTabStyle = \"\";\nvar UHTMLTabListStyle = `${DISPLAY_BLOCK}\n::slotted([role=\"tab\"]:not([hidden])) { display: inline-block; cursor: pointer }\n::slotted([role=\"tab\"][${ARIA_DISABLED}=\"true\"]) { cursor: default }`;\nvar UHTMLTabsShadowRoot = declarativeShadowRoot(UHTMLTabsStyle);\nvar UHTMLTabListShadowRoot = declarativeShadowRoot(UHTMLTabListStyle);\nvar UHTMLTabShadowRoot = \"\";\nvar UHTMLTabPanelShadowRoot = declarativeShadowRoot(UHTMLTabPanelStyle);\nvar UHTMLTabsElement = class extends UHTMLElement {\n constructor() {\n super();\n attachStyle(this, UHTMLTabsStyle);\n }\n get tabList() {\n return this.querySelector(\n '[role=\"tablist\"]:not(:scope [role=\"tabpanel\"] [role=\"tablist\"])'\n );\n }\n get selectedIndex() {\n const tabs = getTabs(this.tabList);\n return tabs.indexOf(findSelected(tabs));\n }\n set selectedIndex(index) {\n setSelected(this.tabs[index]);\n }\n get tabs() {\n return this.querySelectorAll(\n '[role=\"tab\"]:not(:scope [role=\"tabpanel\"] [role=\"tab\"])'\n );\n }\n get panels() {\n return this.querySelectorAll(\n `[role=\"tabpanel\"]:not(:scope [role=\"tabpanel\"] [role=\"tabpanel\"])`\n );\n }\n};\nvar UHTMLTabListElement = class extends UHTMLElement {\n // Using underscore instead of private fields for backwards compatibility\n constructor() {\n super();\n attachStyle(this, UHTMLTabListStyle);\n }\n connectedCallback() {\n attr(this, \"role\", \"tablist\");\n on(this, \"click keydown\", this);\n this._umutate = onMutation(this, onMutations, {\n attributeFilter: [\"id\", \"role\", ARIA_CONTROLS, ARIA_SELECTED],\n // Needed if role=\"tab|tabpanel\" and not u-tab|u-tabpanel is used\n attributes: true,\n childList: true,\n subtree: true\n // Needed to catch changes of attributes in children\n });\n }\n disconnectedCallback() {\n var _a2;\n off(this, \"click keydown\", this);\n (_a2 = this._umutate) == null ? void 0 : _a2.call(this);\n this._umutate = void 0;\n }\n handleEvent(event) {\n var _a2, _b, _c, _d;\n const { key, type, target } = event;\n const tabs = getTabs(this);\n const prev = tabs.findIndex((tab) => tab.contains(target));\n const isKeyClick = key === \" \" || key === \"Enter\";\n let next = prev;\n if (event.defaultPrevented || prev === -1) return;\n if (type === \"click\") setSelected(tabs[prev]);\n if (type === \"keydown\") {\n if (isKeyClick) {\n (_a2 = event.preventDefault) == null ? void 0 : _a2.call(event);\n const click = { bubbles: true, cancelable: true, composed: true };\n return tabs[prev].dispatchEvent(new MouseEvent(\"click\", click));\n }\n if (key === \"ArrowDown\" || key === \"ArrowRight\")\n next = (prev + 1) % tabs.length;\n else if (key === \"ArrowUp\" || key === \"ArrowLeft\")\n next = (prev || tabs.length) - 1;\n else if (key === \"End\") next = tabs.length - 1;\n else if (key === \"Home\") next = 0;\n else if (key === \"Tab\" && !isSelected(tabs[prev])) {\n const selected = findSelected(tabs);\n if (selected) attr(selected, TABINDEX, \"-1\");\n return selected && setTimeout(() => attr(selected, TABINDEX, \"0\"));\n } else return;\n (_b = event.preventDefault) == null ? void 0 : _b.call(event);\n (_d = (_c = tabs[next]).focus) == null ? void 0 : _d.call(_c);\n }\n }\n get tabsElement() {\n return getTabsElement(this);\n }\n get tabs() {\n return this.querySelectorAll(':scope > [role=\"tab\"]');\n }\n get selectedIndex() {\n const tabs = getTabs(this);\n return tabs.indexOf(findSelected(tabs));\n }\n set selectedIndex(index) {\n setSelected(this.tabs[index]);\n }\n};\nvar UHTMLTabElement = class extends UHTMLElement {\n static get observedAttributes() {\n return [\"id\", ARIA_SELECTED, ARIA_CONTROLS];\n }\n connectedCallback() {\n var _a2;\n attr(this, \"role\", \"tab\");\n attr(this, ARIA_SELECTED, `${this.selected}`);\n attr(this, TABINDEX, this.selected ? \"0\" : \"-1\");\n if (!findSelected((_a2 = this.parentElement) == null ? void 0 : _a2.children)) setSelected(this);\n }\n attributeChangedCallback() {\n if (!SKIP_TABS_UPDATE.has(this.parentElement) && this.selected)\n setSelected(this);\n }\n get tabsElement() {\n return getTabsElement(this);\n }\n get tabList() {\n const tablist = this.parentElement;\n return tablist instanceof UHTMLTabListElement ? tablist : null;\n }\n get selected() {\n return isSelected(this);\n }\n set selected(value) {\n if (value) setSelected(this);\n }\n /** Retrieves the ordinal position of an tab in a tablist. */\n get index() {\n return Math.max(getTabs(this.parentElement).indexOf(this), 0);\n }\n get panel() {\n var _a2;\n const panels = (_a2 = getTabsElement(this)) == null ? void 0 : _a2.panels;\n const index = getTabs(this.parentElement).indexOf(this);\n return getPanel(this, panels == null ? void 0 : panels[index]);\n }\n};\nvar UHTMLTabPanelElement = class extends UHTMLElement {\n constructor() {\n super();\n attachStyle(this, UHTMLTabPanelStyle);\n }\n connectedCallback() {\n attr(this, \"role\", \"tabpanel\");\n const tabs = new Set(this.tabs);\n const root = getTabsElement(this);\n const idx = root == null ? void 0 : root.tabs[Array.prototype.indexOf.call(root == null ? void 0 : root.panels, this)];\n if (idx && !idx.hasAttribute(ARIA_CONTROLS)) tabs.add(idx);\n const tab = findSelected(tabs) || tabs.values().next().value;\n skipTabsUpdate(tab, () => syncPanel(this, tab, !!tab && isSelected(tab)));\n }\n get tabsElement() {\n return getTabsElement(this);\n }\n get tabs() {\n return getRoot(this).querySelectorAll(\n `[${ARIA_CONTROLS}=\"${useId(this)}\"]`\n );\n }\n};\nvar onMutations = (self, records = []) => {\n let selected;\n const tabs = getTabs(self);\n for (const { target: el } of records) {\n const tab = el instanceof Element && attr(el, \"role\") === \"tab\";\n if (tab && isSelected(el)) selected = el;\n }\n if (!selected && !findSelected(tabs)) selected = tabs.find(isEnabled);\n setSelected(selected);\n};\nvar syncPanel = (panel, tab, show = false) => {\n attr(panel, \"aria-hidden\", `${!show}`);\n attr(panel, \"hidden\", show ? null : \"\");\n attr(panel, TABINDEX, show ? \"0\" : null);\n if (tab) attr(tab, ARIA_CONTROLS, useId(panel));\n if (tab && show && isSelected(tab)) attr(panel, SAFE_LABELLEDBY, useId(tab));\n};\nvar SKIP_TABS_UPDATE = /* @__PURE__ */ new Set();\nvar skipTabsUpdate = (tab, fn) => {\n var _a2;\n const tablist = tab == null ? void 0 : tab.parentElement;\n if (tablist) SKIP_TABS_UPDATE.add(tablist);\n fn();\n if (tablist) SKIP_TABS_UPDATE.delete(tablist);\n (_a2 = tablist == null ? void 0 : tablist._umutate) == null ? void 0 : _a2.takeRecords();\n};\nvar isEnabled = (el) => attr(el, ARIA_DISABLED) !== \"true\";\nvar isSelected = (el) => attr(el, ARIA_SELECTED) === \"true\";\nvar findSelected = (elems = []) => {\n for (const el of elems) if (isSelected(el)) return el;\n};\nvar getTabs = (tablist) => {\n const tabs = [];\n for (const el of (tablist == null ? void 0 : tablist.children) || [])\n if (el.getAttribute(\"role\") === \"tab\") tabs.push(el);\n return tabs;\n};\nvar getPanel = (tab, panel = null) => {\n const id = attr(tab, ARIA_CONTROLS);\n const el = id ? getRoot(tab).getElementById(id) : panel;\n return el;\n};\nvar getTabsElement = (self) => {\n for (let el = self; el; el = el.parentNode || el.host)\n if (el instanceof UHTMLTabsElement) return el;\n return null;\n};\nvar setSelected = (selected) => selected && isEnabled(selected) && skipTabsUpdate(selected, () => {\n var _a2;\n const tabs = getTabs(selected.parentElement);\n const panels = ((_a2 = getTabsElement(selected)) == null ? void 0 : _a2.panels) || [];\n const nextPanel = getPanel(selected, panels == null ? void 0 : panels[tabs.indexOf(selected)]);\n let idx = 0;\n for (const tab of tabs) {\n const panel = getPanel(tab, panels[idx++]);\n attr(tab, ARIA_SELECTED, `${tab === selected}`);\n attr(tab, TABINDEX, tab === selected ? \"0\" : \"-1\");\n if (panel) syncPanel(panel, tab, panel === nextPanel);\n }\n});\ncustomElements.define(\"u-tabs\", UHTMLTabsElement);\ncustomElements.define(\"u-tablist\", UHTMLTabListElement);\ncustomElements.define(\"u-tab\", UHTMLTabElement);\ncustomElements.define(\"u-tabpanel\", UHTMLTabPanelElement);\n\nexport { UHTMLTabElement, UHTMLTabListElement, UHTMLTabListShadowRoot, UHTMLTabListStyle, UHTMLTabPanelElement, UHTMLTabPanelShadowRoot, UHTMLTabPanelStyle, UHTMLTabShadowRoot, UHTMLTabStyle, UHTMLTabsElement, UHTMLTabsShadowRoot, UHTMLTabsStyle };\n"],"names":["isBrowser","IS_BROWSER","AGENT","IS_ANDROID","_a","SUPPORTS_CONSTRUCTED_CSS","DISPLAY_BLOCK","SAFE_LABELLEDBY","UHTMLElement","attr","el","name","value","on","rest","types","options","type","off","attachStyle","css","root","tag","sheet","onMutation","callback","observer","records","cleanup","getRoot","node","_a2","useId","tagName","attrs","content","key","val","customElements","instance","declarativeShadowRoot","style","slot","ARIA_CONTROLS","ARIA_DISABLED","ARIA_SELECTED","TABINDEX","UHTMLTabsStyle","UHTMLTabPanelStyle","UHTMLTabStyle","UHTMLTabListStyle","UHTMLTabsShadowRoot","UHTMLTabListShadowRoot","UHTMLTabShadowRoot","UHTMLTabPanelShadowRoot","UHTMLTabsElement","tabs","getTabs","findSelected","index","setSelected","UHTMLTabListElement","onMutations","event","_b","_c","_d","target","prev","tab","isKeyClick","next","click","isSelected","selected","getTabsElement","UHTMLTabElement","SKIP_TABS_UPDATE","tablist","panels","getPanel","UHTMLTabPanelElement","idx","skipTabsUpdate","syncPanel","self","isEnabled","panel","show","fn","elems","id","nextPanel"],"mappings":"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","x_google_ignoreList":[0]}
|