@floegence/floe-webapp-core 0.88.0 → 0.89.2
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/dist/components/ui/FloatingWindow.d.ts +2 -0
- package/dist/components/ui/FloatingWindow.js +217 -196
- package/dist/components/ui/SurfaceAnchoredLayer.js +69 -70
- package/dist/components/ui/Tabs.d.ts +8 -0
- package/dist/components/ui/Tabs.js +203 -180
- package/dist/components/ui/WindowTabs.d.ts +3 -0
- package/dist/components/ui/WindowTabs.js +31 -0
- package/dist/components/ui/index.d.ts +1 -0
- package/dist/full.js +176 -174
- package/dist/styles.css +1 -1
- package/dist/ui.js +32 -30
- package/package.json +1 -1
|
@@ -1,47 +1,47 @@
|
|
|
1
|
-
import { createComponent as
|
|
2
|
-
import { splitProps as
|
|
3
|
-
import { cn as
|
|
4
|
-
import { deferAfterPaint as
|
|
5
|
-
import { KeyedFor as
|
|
6
|
-
import { createUIFirstSelection as
|
|
7
|
-
import { useViewActivation as
|
|
8
|
-
import { X as
|
|
9
|
-
var
|
|
10
|
-
const
|
|
1
|
+
import { createComponent as g, spread as be, mergeProps as ge, insert as v, effect as y, className as S, setAttribute as h, setStyleProperty as fe, memo as ue, use as ve, template as p, delegateEvents as $e } from "solid-js/web";
|
|
2
|
+
import { splitProps as me, Show as A, createSignal as R, untrack as Y, createEffect as O, onCleanup as he } from "solid-js";
|
|
3
|
+
import { cn as b } from "../../utils/cn.js";
|
|
4
|
+
import { deferAfterPaint as T } from "../../utils/defer.js";
|
|
5
|
+
import { KeyedFor as He } from "./KeyedFor.js";
|
|
6
|
+
import { createUIFirstSelection as De } from "../../utils/uiFirstSelection.js";
|
|
7
|
+
import { useViewActivation as Pe } from "../../context/ViewActivationContext.js";
|
|
8
|
+
import { X as Fe, Plus as Oe, ChevronRight as We } from "../icons/index.js";
|
|
9
|
+
var qe = /* @__PURE__ */ p('<svg xmlns=http://www.w3.org/2000/svg width=24 height=24 viewBox="0 0 24 24"fill=none stroke=currentColor stroke-width=2 stroke-linecap=round stroke-linejoin=round><path d="m15 18-6-6 6-6">'), _ = /* @__PURE__ */ p("<button type=button data-floe-interactive=icon>"), je = /* @__PURE__ */ p("<div>"), Ge = /* @__PURE__ */ p('<button type=button data-floe-interactive=icon aria-label="Add new tab">'), Ue = /* @__PURE__ */ p("<div><div role=tablist data-floe-surface=inset data-floe-surface-part=tab-rail aria-orientation=horizontal>"), Ve = /* @__PURE__ */ p("<span class=flex-shrink-0>"), Xe = /* @__PURE__ */ p('<div role=tab data-floe-surface-part=tab data-floe-interactive=item><span class="min-w-0 truncate max-w-32">'), Ke = /* @__PURE__ */ p("<div role=tabpanel>");
|
|
10
|
+
const J = {
|
|
11
11
|
x: 0,
|
|
12
12
|
width: 0,
|
|
13
13
|
visible: !1
|
|
14
14
|
};
|
|
15
|
-
function
|
|
16
|
-
const
|
|
17
|
-
if (!
|
|
18
|
-
const k =
|
|
15
|
+
function Ye(i, t, m) {
|
|
16
|
+
const d = i.filter((x) => !x.disabled);
|
|
17
|
+
if (!d.length) return null;
|
|
18
|
+
const k = d.findIndex((x) => x.id === t);
|
|
19
19
|
if (k < 0) return null;
|
|
20
|
-
let
|
|
21
|
-
switch (
|
|
20
|
+
let w = null;
|
|
21
|
+
switch (m) {
|
|
22
22
|
case "ArrowRight":
|
|
23
23
|
case "ArrowDown":
|
|
24
|
-
|
|
24
|
+
w = (k + 1) % d.length;
|
|
25
25
|
break;
|
|
26
26
|
case "ArrowLeft":
|
|
27
27
|
case "ArrowUp":
|
|
28
|
-
|
|
28
|
+
w = (k - 1 + d.length) % d.length;
|
|
29
29
|
break;
|
|
30
30
|
case "Home":
|
|
31
|
-
|
|
31
|
+
w = 0;
|
|
32
32
|
break;
|
|
33
33
|
case "End":
|
|
34
|
-
|
|
34
|
+
w = d.length - 1;
|
|
35
35
|
break;
|
|
36
36
|
default:
|
|
37
37
|
return null;
|
|
38
38
|
}
|
|
39
|
-
return
|
|
39
|
+
return d[w]?.id ?? null;
|
|
40
40
|
}
|
|
41
|
-
function
|
|
41
|
+
function _e(i) {
|
|
42
42
|
return i === 1 || i === 2 || i === 3 || i === 4 ? i : 2;
|
|
43
43
|
}
|
|
44
|
-
function
|
|
44
|
+
function Je(i) {
|
|
45
45
|
switch (i) {
|
|
46
46
|
case 1:
|
|
47
47
|
return {
|
|
@@ -65,7 +65,7 @@ function Ye(i) {
|
|
|
65
65
|
};
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
|
-
function
|
|
68
|
+
function Qe(i) {
|
|
69
69
|
switch (i) {
|
|
70
70
|
case "border":
|
|
71
71
|
return {
|
|
@@ -84,158 +84,172 @@ function Je(i) {
|
|
|
84
84
|
};
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
|
-
const
|
|
88
|
-
var t =
|
|
89
|
-
return
|
|
87
|
+
const Ze = (i) => (() => {
|
|
88
|
+
var t = qe();
|
|
89
|
+
return y(() => h(t, "class", i.class)), t;
|
|
90
90
|
})();
|
|
91
|
-
function
|
|
91
|
+
function et(i) {
|
|
92
92
|
const {
|
|
93
93
|
container: t,
|
|
94
|
-
tab:
|
|
95
|
-
} = i,
|
|
96
|
-
if (
|
|
94
|
+
tab: m
|
|
95
|
+
} = i, d = m.offsetParent, k = m.offsetWidth;
|
|
96
|
+
if (d === t && Number.isFinite(m.offsetLeft) && Number.isFinite(k))
|
|
97
97
|
return {
|
|
98
|
-
x:
|
|
98
|
+
x: m.offsetLeft,
|
|
99
99
|
width: k,
|
|
100
100
|
visible: k > 0
|
|
101
101
|
};
|
|
102
|
-
const
|
|
102
|
+
const w = t.getBoundingClientRect(), x = m.getBoundingClientRect(), z = t.offsetWidth || t.clientWidth, L = w.width > 0 && z > 0 ? w.width / z : 1, E = Number.isFinite(L) && L > 0 ? L : 1, $ = x.width / E;
|
|
103
103
|
return {
|
|
104
|
-
x: (
|
|
105
|
-
width:
|
|
106
|
-
visible:
|
|
104
|
+
x: (x.left - w.left + t.scrollLeft) / E,
|
|
105
|
+
width: $,
|
|
106
|
+
visible: $ > 0
|
|
107
107
|
};
|
|
108
108
|
}
|
|
109
109
|
function ct(i) {
|
|
110
|
-
const [t,
|
|
110
|
+
const [t, m] = me(i, ["items", "activeId", "defaultActiveId", "onChange", "onActiveIdChange", "onClose", "onAdd", "showAdd", "closable", "size", "features", "slotClassNames", "ariaLabel", "labels", "class"]), d = () => t.features?.indicator?.mode ?? "activeBorder", k = () => _e(t.features?.indicator?.thicknessPx), w = () => t.features?.indicator?.colorToken ?? "primary", x = () => t.features?.indicator?.animated ?? !0, z = () => t.features?.containerBorder ?? !0, L = () => t.features?.scrollButtons ?? "auto", E = () => t.features?.closeButton?.dangerHover ?? !0, $ = () => t.features?.closeButton?.enabledByDefault ?? t.closable ?? !1, we = () => t.features?.addButton?.enabled ?? t.showAdd ?? !1, Q = () => Je(k()), Z = () => Qe(w());
|
|
111
111
|
let f;
|
|
112
|
-
const
|
|
112
|
+
const ee = (() => {
|
|
113
113
|
try {
|
|
114
|
-
return
|
|
114
|
+
return Pe();
|
|
115
115
|
} catch {
|
|
116
116
|
return null;
|
|
117
117
|
}
|
|
118
|
-
})(), B = () =>
|
|
118
|
+
})(), B = () => ee ? ee.active() : !0;
|
|
119
119
|
let W = !1;
|
|
120
|
-
const [
|
|
121
|
-
let
|
|
122
|
-
const
|
|
123
|
-
if (!f || !
|
|
124
|
-
const
|
|
125
|
-
if (!
|
|
126
|
-
const l =
|
|
120
|
+
const [H, q] = R(J), I = /* @__PURE__ */ new Map();
|
|
121
|
+
let j = !1;
|
|
122
|
+
const D = () => d() === "slider", te = (o) => {
|
|
123
|
+
if (!f || !D()) return !1;
|
|
124
|
+
const s = I.get(o);
|
|
125
|
+
if (!s) return !1;
|
|
126
|
+
const l = et({
|
|
127
127
|
container: f,
|
|
128
|
-
tab:
|
|
128
|
+
tab: s
|
|
129
129
|
});
|
|
130
|
-
return
|
|
131
|
-
},
|
|
132
|
-
if (!
|
|
133
|
-
|
|
130
|
+
return q(l), l.visible;
|
|
131
|
+
}, Ce = () => {
|
|
132
|
+
if (!D()) {
|
|
133
|
+
q(J);
|
|
134
134
|
return;
|
|
135
135
|
}
|
|
136
|
-
|
|
136
|
+
te(U()) || q(J);
|
|
137
137
|
}, P = () => {
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
B() &&
|
|
138
|
+
j || (j = !0, T(() => {
|
|
139
|
+
j = !1, Y(() => {
|
|
140
|
+
B() && Ce();
|
|
141
141
|
});
|
|
142
142
|
}));
|
|
143
|
-
},
|
|
144
|
-
committed:
|
|
145
|
-
commit: (
|
|
146
|
-
|
|
143
|
+
}, re = () => t.activeId !== void 0, ke = () => t.onChange ?? t.onActiveIdChange, [xe, ye] = R(Y(() => t.defaultActiveId ?? t.items[0]?.id ?? "")), G = () => re() ? t.activeId : xe(), oe = De({
|
|
144
|
+
committed: G,
|
|
145
|
+
commit: (o) => {
|
|
146
|
+
re() || ye(o), ke()?.(o);
|
|
147
147
|
}
|
|
148
|
-
}),
|
|
149
|
-
|
|
150
|
-
B() && (
|
|
148
|
+
}), U = oe.visual;
|
|
149
|
+
O(() => {
|
|
150
|
+
B() && (d(), U(), P());
|
|
151
151
|
});
|
|
152
|
-
const [
|
|
152
|
+
const [V, pe] = R(!1), [X, Ie] = R(!1), [Se, Ae] = R(!1), ne = () => L() === "auto" && Se(), Be = () => {
|
|
153
153
|
if (!f) return;
|
|
154
154
|
const {
|
|
155
|
-
scrollLeft:
|
|
156
|
-
scrollWidth:
|
|
155
|
+
scrollLeft: o,
|
|
156
|
+
scrollWidth: s,
|
|
157
157
|
clientWidth: l
|
|
158
|
-
} = f, e =
|
|
159
|
-
|
|
160
|
-
},
|
|
161
|
-
W || (W = !0,
|
|
162
|
-
W = !1, B() &&
|
|
158
|
+
} = f, e = s > l;
|
|
159
|
+
Ae(e), pe(o > 0), Ie(o + l < s - 1);
|
|
160
|
+
}, F = () => {
|
|
161
|
+
W || (W = !0, T(() => {
|
|
162
|
+
W = !1, B() && Be();
|
|
163
163
|
}));
|
|
164
|
-
},
|
|
164
|
+
}, Le = () => {
|
|
165
165
|
f && f.scrollBy({
|
|
166
166
|
left: -150,
|
|
167
167
|
behavior: "smooth"
|
|
168
168
|
});
|
|
169
|
-
},
|
|
169
|
+
}, Me = () => {
|
|
170
170
|
f && f.scrollBy({
|
|
171
171
|
left: 150,
|
|
172
172
|
behavior: "smooth"
|
|
173
173
|
});
|
|
174
174
|
};
|
|
175
|
-
|
|
175
|
+
O(() => {
|
|
176
176
|
if (!f || !B()) return;
|
|
177
|
-
|
|
178
|
-
const
|
|
179
|
-
f.addEventListener("scroll",
|
|
180
|
-
const
|
|
181
|
-
|
|
177
|
+
F(), P();
|
|
178
|
+
const o = () => F();
|
|
179
|
+
f.addEventListener("scroll", o);
|
|
180
|
+
const s = () => {
|
|
181
|
+
F(), P();
|
|
182
182
|
};
|
|
183
183
|
let l;
|
|
184
|
-
typeof ResizeObserver < "u" ? (l = new ResizeObserver(
|
|
185
|
-
f?.removeEventListener("scroll",
|
|
184
|
+
typeof ResizeObserver < "u" ? (l = new ResizeObserver(s), l.observe(f)) : typeof window < "u" && window.addEventListener("resize", s), he(() => {
|
|
185
|
+
f?.removeEventListener("scroll", o), l?.disconnect(), typeof window < "u" && window.removeEventListener("resize", s);
|
|
186
186
|
});
|
|
187
|
-
}),
|
|
188
|
-
|
|
187
|
+
}), O(() => {
|
|
188
|
+
const o = G();
|
|
189
|
+
T(() => {
|
|
190
|
+
B() && I.get(o)?.scrollIntoView?.({
|
|
191
|
+
block: "nearest",
|
|
192
|
+
inline: "nearest"
|
|
193
|
+
});
|
|
194
|
+
});
|
|
195
|
+
}), O(() => {
|
|
196
|
+
B() && (t.items.length, F(), P());
|
|
189
197
|
});
|
|
190
|
-
const
|
|
191
|
-
|
|
192
|
-
},
|
|
193
|
-
const
|
|
194
|
-
if (!
|
|
195
|
-
|
|
196
|
-
const l =
|
|
198
|
+
const K = (o, s) => {
|
|
199
|
+
s || (oe.request(o), D() && te(o));
|
|
200
|
+
}, Ne = (o) => {
|
|
201
|
+
const s = t.items.find((e) => e.id === o);
|
|
202
|
+
if (!s) return;
|
|
203
|
+
K(s.id, s.disabled);
|
|
204
|
+
const l = I.get(s.id);
|
|
197
205
|
l?.focus({
|
|
198
206
|
preventScroll: !0
|
|
199
207
|
}), l?.scrollIntoView({
|
|
200
208
|
block: "nearest",
|
|
201
209
|
inline: "nearest"
|
|
202
210
|
});
|
|
203
|
-
},
|
|
204
|
-
const l =
|
|
205
|
-
l && (
|
|
206
|
-
},
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
211
|
+
}, Re = (o, s) => {
|
|
212
|
+
const l = Ye(t.items, s.id, o.key);
|
|
213
|
+
l && (o.preventDefault(), Ne(l));
|
|
214
|
+
}, se = (o) => {
|
|
215
|
+
const l = !!I.get(o)?.contains(document.activeElement), e = t.items.findIndex((r) => r.id === o);
|
|
216
|
+
if (t.onClose?.(o), l && !t.items.some((r) => r.id === o)) {
|
|
217
|
+
const r = t.items.find((c) => c.id === G()) ?? t.items[Math.min(e, t.items.length - 1)];
|
|
218
|
+
r && I.get(r.id)?.focus({
|
|
219
|
+
preventScroll: !0
|
|
220
|
+
});
|
|
221
|
+
}
|
|
222
|
+
}, Te = (o, s) => {
|
|
223
|
+
if (o.stopPropagation(), !t.onClose) return;
|
|
224
|
+
const e = s;
|
|
225
|
+
T(() => Y(() => se(e)));
|
|
226
|
+
}, ze = {
|
|
213
227
|
sm: "h-[var(--floe-control-height-sm)] px-[var(--floe-control-padding-sm)]",
|
|
214
228
|
md: "h-[var(--floe-control-height-md)] px-[var(--floe-control-padding-md)]"
|
|
215
|
-
},
|
|
216
|
-
const l =
|
|
217
|
-
const
|
|
218
|
-
return
|
|
229
|
+
}, Ee = (o, s) => {
|
|
230
|
+
const l = b("relative inline-flex items-center gap-1.5 whitespace-nowrap", "text-[length:var(--floe-type-control)] leading-[var(--floe-line-control)]"), e = s ? "cursor-not-allowed opacity-50" : "cursor-pointer", r = () => {
|
|
231
|
+
const c = d();
|
|
232
|
+
return c === "none" || c === "slider" && H().visible ? "" : b("after:pointer-events-none after:absolute after:bottom-0 after:inset-x-2 after:rounded-full after:content-['']", Q().tabMarkerClass, Z().tabMarkerClass);
|
|
219
233
|
};
|
|
220
|
-
return
|
|
234
|
+
return b(
|
|
221
235
|
l,
|
|
222
236
|
e,
|
|
223
|
-
|
|
237
|
+
ze[t.size ?? "md"],
|
|
224
238
|
"rounded-control",
|
|
225
239
|
"border",
|
|
226
240
|
/* The selected face is painted by the surface layer (`data-floe-surface`
|
|
227
241
|
* plus `aria-selected`), which keeps the fill, hairline and first
|
|
228
242
|
* elevation step identical to every other selected control. */
|
|
229
|
-
|
|
230
|
-
|
|
243
|
+
o ? b(r(), "text-foreground", t.slotClassNames?.tabActive) : b("border-transparent text-[var(--floe-ink-soft)]", t.slotClassNames?.tabInactive),
|
|
244
|
+
s && "opacity-50",
|
|
231
245
|
t.slotClassNames?.tab
|
|
232
246
|
);
|
|
233
247
|
};
|
|
234
248
|
return (() => {
|
|
235
|
-
var
|
|
236
|
-
|
|
249
|
+
var o = Ue(), s = o.firstChild;
|
|
250
|
+
be(o, ge({
|
|
237
251
|
get class() {
|
|
238
|
-
return
|
|
252
|
+
return b(
|
|
239
253
|
/* One strip, one baseline: the rail, the scroll buttons and the add
|
|
240
254
|
* button all take their height from the row, so nothing floats above
|
|
241
255
|
* the rule. The rail's fill is carried onto those trailing controls,
|
|
@@ -243,88 +257,95 @@ function ct(i) {
|
|
|
243
257
|
* control. */
|
|
244
258
|
"relative flex items-stretch",
|
|
245
259
|
t.size === "sm" ? "min-h-[var(--floe-control-height-sm)]" : "min-h-[var(--floe-control-height-md)]",
|
|
246
|
-
|
|
260
|
+
z() && "border-b border-[var(--floe-line)]",
|
|
247
261
|
t.slotClassNames?.root,
|
|
248
262
|
t.class
|
|
249
263
|
);
|
|
250
264
|
}
|
|
251
|
-
},
|
|
265
|
+
}, m), !1, !0), v(o, g(A, {
|
|
252
266
|
get when() {
|
|
253
|
-
return
|
|
267
|
+
return ne();
|
|
254
268
|
},
|
|
255
269
|
get children() {
|
|
256
|
-
var e =
|
|
257
|
-
return e.$$click =
|
|
270
|
+
var e = _();
|
|
271
|
+
return e.$$click = Le, v(e, g(Ze, {
|
|
258
272
|
class: "w-4 h-4"
|
|
259
|
-
})),
|
|
260
|
-
var
|
|
261
|
-
return
|
|
273
|
+
})), y((r) => {
|
|
274
|
+
var c = !V(), a = b("flex-shrink-0 flex items-center justify-center", "w-6 rounded-control cursor-pointer bg-[var(--floe-well)] border border-[var(--floe-line)]", "transition-opacity duration-[var(--floe-duration-fast)] ease-[var(--floe-ease-out)]", V() ? "text-[var(--floe-ink-quiet)] hover:bg-[var(--floe-state-hover)] opacity-100" : "opacity-0 pointer-events-none", t.slotClassNames?.scrollButton), u = t.labels?.scrollLeft ?? "Scroll left";
|
|
275
|
+
return c !== r.e && (e.disabled = r.e = c), a !== r.t && S(e, r.t = a), u !== r.a && h(e, "aria-label", r.a = u), r;
|
|
262
276
|
}, {
|
|
263
277
|
e: void 0,
|
|
264
|
-
t: void 0
|
|
278
|
+
t: void 0,
|
|
279
|
+
a: void 0
|
|
265
280
|
}), e;
|
|
266
281
|
}
|
|
267
|
-
}),
|
|
282
|
+
}), s);
|
|
268
283
|
var l = f;
|
|
269
|
-
return typeof l == "function" ?
|
|
284
|
+
return typeof l == "function" ? ve(l, s) : f = s, v(s, g(A, {
|
|
270
285
|
get when() {
|
|
271
|
-
return
|
|
286
|
+
return ue(() => !!D())() && H().visible;
|
|
272
287
|
},
|
|
273
288
|
get children() {
|
|
274
|
-
var e =
|
|
275
|
-
return
|
|
276
|
-
var
|
|
277
|
-
return
|
|
289
|
+
var e = je();
|
|
290
|
+
return y((r) => {
|
|
291
|
+
var c = b("pointer-events-none absolute bottom-0 left-0 z-10", Q().sliderHeightClass, Z().sliderBgClass, x() ? "transition-[transform,width] duration-[var(--floe-duration-base)] ease-out motion-reduce:transition-none" : "transition-none", "will-change-transform", t.slotClassNames?.indicator), a = `translate3d(${H().x}px, 0, 0)`, u = `${H().width}px`;
|
|
292
|
+
return c !== r.e && S(e, r.e = c), a !== r.t && fe(e, "transform", r.t = a), u !== r.a && fe(e, "width", r.a = u), r;
|
|
278
293
|
}, {
|
|
279
294
|
e: void 0,
|
|
280
295
|
t: void 0,
|
|
281
296
|
a: void 0
|
|
282
297
|
}), e;
|
|
283
298
|
}
|
|
284
|
-
}), null),
|
|
299
|
+
}), null), v(s, g(He, {
|
|
285
300
|
get each() {
|
|
286
301
|
return t.items;
|
|
287
302
|
},
|
|
288
303
|
by: (e) => e.id,
|
|
289
304
|
children: (e) => {
|
|
290
|
-
const
|
|
305
|
+
const r = () => e().id === U(), c = () => e().closable ?? $();
|
|
291
306
|
return (() => {
|
|
292
|
-
var
|
|
293
|
-
return
|
|
294
|
-
if (n.
|
|
295
|
-
n.
|
|
296
|
-
|
|
307
|
+
var a = Xe(), u = a.firstChild;
|
|
308
|
+
return a.$$keydown = (n) => {
|
|
309
|
+
if (n.target === n.currentTarget) {
|
|
310
|
+
if (n.key === "Delete" && c() && !e().disabled) {
|
|
311
|
+
n.preventDefault(), se(e().id);
|
|
312
|
+
return;
|
|
313
|
+
}
|
|
314
|
+
if (n.key === "Enter" || n.key === " ") {
|
|
315
|
+
n.preventDefault(), K(e().id, e().disabled);
|
|
316
|
+
return;
|
|
317
|
+
}
|
|
318
|
+
Re(n, e());
|
|
297
319
|
}
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
}, s), u(s, h(S, {
|
|
320
|
+
}, a.$$click = () => K(e().id, e().disabled), ve((n) => {
|
|
321
|
+
I.set(e().id, n), he(() => I.delete(e().id));
|
|
322
|
+
}, a), v(a, g(A, {
|
|
302
323
|
get when() {
|
|
303
324
|
return e().icon;
|
|
304
325
|
},
|
|
305
326
|
get children() {
|
|
306
|
-
var n =
|
|
307
|
-
return
|
|
327
|
+
var n = Ve();
|
|
328
|
+
return v(n, () => e().icon), n;
|
|
308
329
|
}
|
|
309
|
-
}),
|
|
330
|
+
}), u), v(u, () => e().label), v(a, g(A, {
|
|
310
331
|
get when() {
|
|
311
|
-
return
|
|
332
|
+
return ue(() => !!c())() && !e().disabled;
|
|
312
333
|
},
|
|
313
334
|
get children() {
|
|
314
|
-
var n =
|
|
315
|
-
return n.$$click = (
|
|
335
|
+
var n = _();
|
|
336
|
+
return n.$$click = (C) => Te(C, e().id), v(n, g(Fe, {
|
|
316
337
|
class: "w-3 h-3"
|
|
317
|
-
})),
|
|
318
|
-
var
|
|
319
|
-
return
|
|
338
|
+
})), y((C) => {
|
|
339
|
+
var M = b("flex-shrink-0 flex items-center justify-center", "w-5 h-5 rounded-control cursor-pointer", "bg-transparent text-[var(--floe-ink-quiet)]", E() ? "hover:bg-error hover:text-error-foreground" : "hover:bg-[var(--floe-state-hover)]", "ml-1.5", t.slotClassNames?.closeButton), N = e().closeLabel ?? `Close ${e().label}`;
|
|
340
|
+
return M !== C.e && S(n, C.e = M), N !== C.t && h(n, "aria-label", C.t = N), C;
|
|
320
341
|
}, {
|
|
321
342
|
e: void 0,
|
|
322
343
|
t: void 0
|
|
323
344
|
}), n;
|
|
324
345
|
}
|
|
325
|
-
}), null),
|
|
326
|
-
var
|
|
327
|
-
return
|
|
346
|
+
}), null), y((n) => {
|
|
347
|
+
var C = Ee(r(), e().disabled), M = e().domId, N = e().panelId, ae = e().title, le = r() ? "raised" : "flat", ie = r(), ce = e().disabled, de = e().disabled ? -1 : r() ? 0 : -1;
|
|
348
|
+
return C !== n.e && S(a, n.e = C), M !== n.t && h(a, "id", n.t = M), N !== n.a && h(a, "aria-controls", n.a = N), ae !== n.o && h(a, "title", n.o = ae), le !== n.i && h(a, "data-floe-surface", n.i = le), ie !== n.n && h(a, "aria-selected", n.n = ie), ce !== n.s && h(a, "aria-disabled", n.s = ce), de !== n.h && h(a, "tabindex", n.h = de), n;
|
|
328
349
|
}, {
|
|
329
350
|
e: void 0,
|
|
330
351
|
t: void 0,
|
|
@@ -332,67 +353,69 @@ function ct(i) {
|
|
|
332
353
|
o: void 0,
|
|
333
354
|
i: void 0,
|
|
334
355
|
n: void 0,
|
|
335
|
-
s: void 0
|
|
336
|
-
|
|
356
|
+
s: void 0,
|
|
357
|
+
h: void 0
|
|
358
|
+
}), a;
|
|
337
359
|
})();
|
|
338
360
|
}
|
|
339
|
-
}), null),
|
|
361
|
+
}), null), v(o, g(A, {
|
|
340
362
|
get when() {
|
|
341
|
-
return
|
|
363
|
+
return we();
|
|
342
364
|
},
|
|
343
365
|
get children() {
|
|
344
|
-
var e =
|
|
366
|
+
var e = Ge();
|
|
345
367
|
return e.$$click = () => {
|
|
346
|
-
const
|
|
347
|
-
|
|
348
|
-
},
|
|
368
|
+
const r = t.onAdd;
|
|
369
|
+
r && T(() => r());
|
|
370
|
+
}, v(e, g(Oe, {
|
|
349
371
|
get class() {
|
|
350
372
|
return t.size === "sm" ? "w-3.5 h-3.5" : "w-4 h-4";
|
|
351
373
|
}
|
|
352
|
-
})),
|
|
374
|
+
})), y(() => S(e, b("flex-shrink-0 flex items-center justify-center", "rounded-control cursor-pointer bg-[var(--floe-well)] border border-[var(--floe-line)]", "text-[var(--floe-ink-quiet)] hover:bg-[var(--floe-state-hover)] hover:text-foreground", t.size === "sm" ? "w-7" : "w-8", t.slotClassNames?.addButton))), e;
|
|
353
375
|
}
|
|
354
|
-
}), null),
|
|
376
|
+
}), null), v(o, g(A, {
|
|
355
377
|
get when() {
|
|
356
|
-
return
|
|
378
|
+
return ne();
|
|
357
379
|
},
|
|
358
380
|
get children() {
|
|
359
|
-
var e =
|
|
360
|
-
return e.$$click =
|
|
381
|
+
var e = _();
|
|
382
|
+
return e.$$click = Me, v(e, g(We, {
|
|
361
383
|
class: "w-4 h-4"
|
|
362
|
-
})),
|
|
363
|
-
var
|
|
364
|
-
return
|
|
384
|
+
})), y((r) => {
|
|
385
|
+
var c = !X(), a = b("flex-shrink-0 flex items-center justify-center", "w-6 rounded-control cursor-pointer bg-[var(--floe-well)] border border-[var(--floe-line)]", "transition-opacity duration-[var(--floe-duration-fast)] ease-[var(--floe-ease-out)]", X() ? "text-[var(--floe-ink-quiet)] hover:bg-[var(--floe-state-hover)] opacity-100" : "opacity-0 pointer-events-none", t.slotClassNames?.scrollButton), u = t.labels?.scrollRight ?? "Scroll right";
|
|
386
|
+
return c !== r.e && (e.disabled = r.e = c), a !== r.t && S(e, r.t = a), u !== r.a && h(e, "aria-label", r.a = u), r;
|
|
365
387
|
}, {
|
|
366
388
|
e: void 0,
|
|
367
|
-
t: void 0
|
|
389
|
+
t: void 0,
|
|
390
|
+
a: void 0
|
|
368
391
|
}), e;
|
|
369
392
|
}
|
|
370
|
-
}), null),
|
|
371
|
-
var
|
|
393
|
+
}), null), y((e) => {
|
|
394
|
+
var r = b(
|
|
372
395
|
"relative flex-1 flex items-center gap-0.5 overflow-x-auto",
|
|
373
396
|
"scrollbar-none",
|
|
374
397
|
// Hide scrollbar for all browsers
|
|
375
398
|
"[&::-webkit-scrollbar]:hidden [-ms-overflow-style:none] [scrollbar-width:none]",
|
|
376
399
|
t.slotClassNames?.scrollContainer
|
|
377
|
-
),
|
|
378
|
-
return
|
|
400
|
+
), c = V() ? "" : void 0, a = X() ? "" : void 0, u = t.ariaLabel;
|
|
401
|
+
return r !== e.e && S(s, e.e = r), c !== e.t && h(s, "data-floe-overflow-start", e.t = c), a !== e.a && h(s, "data-floe-overflow-end", e.a = a), u !== e.o && h(s, "aria-label", e.o = u), e;
|
|
379
402
|
}, {
|
|
380
403
|
e: void 0,
|
|
381
404
|
t: void 0,
|
|
382
405
|
a: void 0,
|
|
383
406
|
o: void 0
|
|
384
|
-
}),
|
|
407
|
+
}), o;
|
|
385
408
|
})();
|
|
386
409
|
}
|
|
387
410
|
function dt(i) {
|
|
388
|
-
const [t,
|
|
389
|
-
return
|
|
411
|
+
const [t, m] = me(i, ["active", "keepMounted", "labelledBy", "class", "children"]);
|
|
412
|
+
return g(A, {
|
|
390
413
|
get when() {
|
|
391
414
|
return t.keepMounted || t.active;
|
|
392
415
|
},
|
|
393
416
|
get children() {
|
|
394
|
-
var
|
|
395
|
-
return
|
|
417
|
+
var d = Ke();
|
|
418
|
+
return be(d, ge({
|
|
396
419
|
get "aria-labelledby"() {
|
|
397
420
|
return t.labelledBy;
|
|
398
421
|
},
|
|
@@ -403,15 +426,15 @@ function dt(i) {
|
|
|
403
426
|
return t.active ? 0 : -1;
|
|
404
427
|
},
|
|
405
428
|
get class() {
|
|
406
|
-
return
|
|
429
|
+
return b(!t.active && t.keepMounted && "hidden", t.class);
|
|
407
430
|
}
|
|
408
|
-
},
|
|
431
|
+
}, m), !1, !0), v(d, () => t.children), d;
|
|
409
432
|
}
|
|
410
433
|
});
|
|
411
434
|
}
|
|
412
|
-
|
|
435
|
+
$e(["click", "keydown"]);
|
|
413
436
|
export {
|
|
414
437
|
dt as TabPanel,
|
|
415
438
|
ct as Tabs,
|
|
416
|
-
|
|
439
|
+
Ye as resolveTabNavigationTargetId
|
|
417
440
|
};
|