@floegence/floe-webapp-core 0.86.60 → 0.86.62
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/chat/blocks/BlockRenderer.js +1 -1
- package/dist/components/chat/blocks/CodeDiffBlock.js +56 -56
- package/dist/components/chat/blocks/ImageBlock.js +1 -1
- package/dist/components/chat/blocks/ToolCallBlock.js +57 -57
- package/dist/components/chat/status/ConnectionStatus.js +10 -10
- package/dist/components/deck/DeckCell.js +25 -25
- package/dist/components/deck/DeckContextMenu.js +20 -20
- package/dist/components/deck/DeckGrid.js +1 -1
- package/dist/components/deck/DeckTopBar.js +42 -42
- package/dist/components/deck/DropZonePreview.js +6 -6
- package/dist/components/deck/LayoutSelector.js +53 -53
- package/dist/components/deck/WidgetFrame.js +28 -28
- package/dist/components/deck/WidgetPalette.js +31 -31
- package/dist/components/deck/WidgetTypeSwitcher.js +31 -31
- package/dist/components/file-browser/Breadcrumb.js +27 -27
- package/dist/components/file-browser/DirectoryTree.js +15 -15
- package/dist/components/file-browser/DragPreview.js +58 -58
- package/dist/components/file-browser/FileBrowser.js +17 -17
- package/dist/components/file-browser/FileBrowserStatusBar.js +18 -18
- package/dist/components/file-browser/FileBrowserToolbar.js +27 -27
- package/dist/components/file-browser/FileContextMenu.js +47 -47
- package/dist/components/file-browser/FileGridView.js +53 -51
- package/dist/components/file-browser/FileItemDecorations.js +30 -27
- package/dist/components/file-browser/FileListView.js +114 -114
- package/dist/components/icons/index.js +1357 -1357
- package/dist/components/launchpad/Launchpad.js +14 -14
- package/dist/components/launchpad/LaunchpadGrid.js +7 -7
- package/dist/components/launchpad/LaunchpadItem.js +11 -11
- package/dist/components/launchpad/LaunchpadPagination.js +16 -16
- package/dist/components/launchpad/LaunchpadSearch.js +9 -9
- package/dist/components/layout/ActivityBar.js +52 -55
- package/dist/components/layout/BottomBar.js +17 -17
- package/dist/components/layout/MobileNavigationPanel.js +36 -36
- package/dist/components/layout/MobileTabBar.js +39 -39
- package/dist/components/layout/Panel.js +16 -16
- package/dist/components/layout/ResizeHandle.js +19 -19
- package/dist/components/layout/Shell.js +50 -50
- package/dist/components/layout/Sidebar.js +37 -36
- package/dist/components/layout/SidebarPane.js +19 -19
- package/dist/components/layout/TopBar.js +16 -16
- package/dist/components/layout/TopBarIconButton.js +15 -15
- package/dist/components/loading/LoadingOverlay.js +9 -9
- package/dist/components/loading/Skeleton.js +11 -11
- package/dist/components/ui/Button.js +36 -36
- package/dist/components/ui/Card.d.ts +11 -62
- package/dist/components/ui/Card.js +64 -237
- package/dist/components/ui/Checkbox.js +79 -79
- package/dist/components/ui/CommandPalette.js +56 -55
- package/dist/components/ui/Dialog.js +91 -93
- package/dist/components/ui/DirectoryInput.js +22 -22
- package/dist/components/ui/DirectoryPicker.js +8 -8
- package/dist/components/ui/Dropdown.js +89 -87
- package/dist/components/ui/FeedbackIndicator.js +57 -57
- package/dist/components/ui/FileOpenPicker.js +37 -37
- package/dist/components/ui/FileSavePicker.js +41 -41
- package/dist/components/ui/FloatingWindow.js +213 -205
- package/dist/components/ui/Form.js +76 -76
- package/dist/components/ui/HighlightBlock.js +14 -14
- package/dist/components/ui/Input.js +106 -109
- package/dist/components/ui/Pagination.js +86 -86
- package/dist/components/ui/Popover.d.ts +33 -0
- package/dist/components/ui/Popover.js +133 -0
- package/dist/components/ui/ProcessingIndicator.js +344 -345
- package/dist/components/ui/Progress.js +94 -97
- package/dist/components/ui/QuoteBlock.js +25 -25
- package/dist/components/ui/Radio.js +91 -91
- package/dist/components/ui/SegmentedControl.js +24 -24
- package/dist/components/ui/Stepper.js +68 -60
- package/dist/components/ui/Switch.js +25 -25
- package/dist/components/ui/Tabs.js +99 -87
- package/dist/components/ui/Tag.js +12 -9
- package/dist/components/ui/Tooltip.js +30 -30
- package/dist/components/ui/floatingPresence.d.ts +7 -0
- package/dist/components/ui/floatingPresence.js +80 -39
- package/dist/components/ui/index.d.ts +2 -1
- package/dist/components/ui/picker/DirectoryFavorites.js +27 -27
- package/dist/components/ui/picker/PickerBase.js +107 -107
- package/dist/context/NotificationContext.js +4 -4
- package/dist/context/ThemeContext.js +71 -70
- package/dist/floe.css +205 -43
- package/dist/full.js +650 -652
- package/dist/language.css +320 -0
- package/dist/primitives.css +23 -17
- package/dist/standalone.css +1 -0
- package/dist/styles/themes/classicSemanticTokens.d.ts +122 -122
- package/dist/styles/themes/classicSemanticTokens.js +140 -138
- package/dist/styles/themes/index.d.ts +3 -1
- package/dist/styles/themes/index.js +10 -10
- package/dist/styles/themes/presets.d.ts +2 -2
- package/dist/styles/themes/presets.js +34 -34
- package/dist/styles/tokens.d.ts +152 -68
- package/dist/styles/tokens.js +87 -49
- package/dist/styles.css +1 -1
- package/dist/surface.css +161 -116
- package/dist/themes/dark.css +64 -64
- package/dist/themes/light.css +64 -64
- package/dist/ui.css +171 -255
- package/dist/ui.js +176 -178
- package/dist/utils/hotInteraction.d.ts +7 -0
- package/dist/utils/hotInteraction.js +12 -12
- package/dist/widgets/TerminalWidget.js +28 -28
- package/dist/workbench-composition.css +15 -15
- package/package.json +1 -1
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { setAttribute as d, insert as f, createComponent as
|
|
2
|
-
import { createSignal as
|
|
3
|
-
import { cn as
|
|
1
|
+
import { setAttribute as d, insert as f, createComponent as u, Portal as W, use as D, spread as G, mergeProps as J, effect as q, className as p, template as P, memo as z, delegateEvents as te } from "solid-js/web";
|
|
2
|
+
import { createSignal as B, createMemo as ne, createEffect as Q, onCleanup as re, Show as y, Index as V } from "solid-js";
|
|
3
|
+
import { cn as k } from "../../utils/cn.js";
|
|
4
4
|
import { deferNonBlocking as oe } from "../../utils/defer.js";
|
|
5
|
-
import { ChevronDown as ae, Check as ie, ChevronRight as
|
|
6
|
-
import { focusMenuItem as O, MENU_ITEM_SELECTOR as
|
|
5
|
+
import { ChevronDown as ae, Check as ie, ChevronRight as le } from "../icons/index.js";
|
|
6
|
+
import { focusMenuItem as O, MENU_ITEM_SELECTOR as ue, moveMenuFocus as U, calculateMenuPosition as se, calculateSubmenuPosition as ce } from "./menuUtils.js";
|
|
7
7
|
import { LOCAL_INTERACTION_SURFACE_ATTR as X } from "./localInteractionSurface.js";
|
|
8
8
|
import { createFloatingPresence as Y } from "./floatingPresence.js";
|
|
9
9
|
import { useOverlayMask as de } from "../../hooks/useOverlayMask.js";
|
|
10
|
-
import { resolveSurfacePortalHost as fe, projectSurfacePortalPosition as me, resolveSurfacePortalBoundaryRect as ge, isSurfacePortalMode as ve, resolveSurfacePortalMount as
|
|
11
|
-
var K = /* @__PURE__ */ P("<div>"),
|
|
10
|
+
import { resolveSurfacePortalHost as fe, projectSurfacePortalPosition as me, resolveSurfacePortalBoundaryRect as ge, isSurfacePortalMode as ve, resolveSurfacePortalMount as he } from "./dialogSurfaceScope.js";
|
|
11
|
+
var K = /* @__PURE__ */ P("<div>"), be = /* @__PURE__ */ P("<div><div role=button aria-haspopup=menu data-floe-dropdown-trigger>"), Z = /* @__PURE__ */ P('<div class="my-1 h-px bg-border"role=separator>'), we = /* @__PURE__ */ P('<button type=button data-floe-interactive=item role=menuitem><span class="w-3.5 h-3.5 flex items-center justify-center"></span><span class="flex-1 text-left">'), ye = /* @__PURE__ */ P("<div class=relative>"), xe = /* @__PURE__ */ P('<span class="w-3.5 h-3.5 flex items-center justify-center">'), Se = /* @__PURE__ */ P("<span>");
|
|
12
12
|
let ke = 0, Me = 0;
|
|
13
13
|
function Pe(e, c) {
|
|
14
14
|
switch (e) {
|
|
@@ -35,14 +35,15 @@ function Pe(e, c) {
|
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
37
|
function $e(e) {
|
|
38
|
-
const [c, s] =
|
|
39
|
-
open: c
|
|
40
|
-
|
|
38
|
+
const [c, s] = B(!1), a = Y({
|
|
39
|
+
open: c,
|
|
40
|
+
element: () => v
|
|
41
|
+
}), [j, M] = B({
|
|
41
42
|
x: -9999,
|
|
42
43
|
y: -9999
|
|
43
44
|
});
|
|
44
|
-
let g,
|
|
45
|
-
const
|
|
45
|
+
let g, v;
|
|
46
|
+
const h = `floe-dropdown-${ke += 1}`, $ = `${h}-menu`, x = () => typeof e.items == "function" ? e.items() : e.items, b = ne(() => a.mounted() ? fe({
|
|
46
47
|
owner: g
|
|
47
48
|
}) : {
|
|
48
49
|
host: null,
|
|
@@ -50,7 +51,7 @@ function $e(e) {
|
|
|
50
51
|
mountHost: null,
|
|
51
52
|
mode: "global"
|
|
52
53
|
}), w = {
|
|
53
|
-
mount: () =>
|
|
54
|
+
mount: () => he(b()),
|
|
54
55
|
isSurfaceMode: () => ve(b()),
|
|
55
56
|
boundaryRect: () => ge(b()),
|
|
56
57
|
projectPosition: (t) => me(t, b())
|
|
@@ -59,8 +60,8 @@ function $e(e) {
|
|
|
59
60
|
};
|
|
60
61
|
de({
|
|
61
62
|
open: a.mounted,
|
|
62
|
-
root: () =>
|
|
63
|
-
containsTarget: (t) => !!(t instanceof Element ? t : document.activeElement)?.closest(`[data-floe-dropdown="${
|
|
63
|
+
root: () => v,
|
|
64
|
+
containsTarget: (t) => !!(t instanceof Element ? t : document.activeElement)?.closest(`[data-floe-dropdown="${h}"]`),
|
|
64
65
|
onClose: C,
|
|
65
66
|
onEscapeOutside: C,
|
|
66
67
|
lockBodyScroll: !1,
|
|
@@ -72,13 +73,13 @@ function $e(e) {
|
|
|
72
73
|
escapeKeyPhase: "bubble"
|
|
73
74
|
});
|
|
74
75
|
const T = () => {
|
|
75
|
-
if (!g || !
|
|
76
|
-
const t = g.getBoundingClientRect(), o =
|
|
77
|
-
|
|
76
|
+
if (!g || !v) return;
|
|
77
|
+
const t = g.getBoundingClientRect(), o = v.getBoundingClientRect(), n = se(t, o, e.align ?? "start", w.boundaryRect());
|
|
78
|
+
M(n);
|
|
78
79
|
};
|
|
79
80
|
Q(() => {
|
|
80
81
|
if (!a.mounted()) {
|
|
81
|
-
|
|
82
|
+
M({
|
|
82
83
|
x: -9999,
|
|
83
84
|
y: -9999
|
|
84
85
|
});
|
|
@@ -87,10 +88,10 @@ function $e(e) {
|
|
|
87
88
|
if (!c()) return;
|
|
88
89
|
const t = (o) => {
|
|
89
90
|
const n = o.target;
|
|
90
|
-
n && typeof n.closest == "function" && n.closest(`[data-floe-dropdown="${
|
|
91
|
+
n && typeof n.closest == "function" && n.closest(`[data-floe-dropdown="${h}"]`) || s(!1);
|
|
91
92
|
};
|
|
92
93
|
document.addEventListener("pointerdown", t, !0), requestAnimationFrame(() => {
|
|
93
|
-
T(), O(
|
|
94
|
+
T(), O(v, e.value ? "selected" : "first");
|
|
94
95
|
}), re(() => {
|
|
95
96
|
document.removeEventListener("pointerdown", t, !0);
|
|
96
97
|
});
|
|
@@ -102,7 +103,7 @@ function $e(e) {
|
|
|
102
103
|
})), oe(() => o(t.id));
|
|
103
104
|
}, A = (t, o = "first") => {
|
|
104
105
|
e.disabled || (s(t), requestAnimationFrame(() => {
|
|
105
|
-
T(), O(
|
|
106
|
+
T(), O(v, o);
|
|
106
107
|
}));
|
|
107
108
|
}, H = (t) => {
|
|
108
109
|
if (e.disabled) return;
|
|
@@ -118,7 +119,7 @@ function $e(e) {
|
|
|
118
119
|
A(!0, o.focusMode ?? "first");
|
|
119
120
|
}
|
|
120
121
|
}, _ = (t) => {
|
|
121
|
-
const o = t.target, n = o?.closest('[role="menu"]'), r = o?.closest(
|
|
122
|
+
const o = t.target, n = o?.closest('[role="menu"]'), r = o?.closest(ue);
|
|
122
123
|
switch (t.key) {
|
|
123
124
|
case "ArrowDown":
|
|
124
125
|
t.preventDefault(), U(n, r, 1);
|
|
@@ -140,8 +141,8 @@ function $e(e) {
|
|
|
140
141
|
}
|
|
141
142
|
};
|
|
142
143
|
return (() => {
|
|
143
|
-
var t =
|
|
144
|
-
d(t, "data-floe-dropdown",
|
|
144
|
+
var t = be(), o = t.firstChild;
|
|
145
|
+
d(t, "data-floe-dropdown", h), o.$$keydown = H, o.$$click = () => {
|
|
145
146
|
if (!e.disabled) {
|
|
146
147
|
if (c()) {
|
|
147
148
|
s(!1);
|
|
@@ -151,20 +152,20 @@ function $e(e) {
|
|
|
151
152
|
}
|
|
152
153
|
};
|
|
153
154
|
var n = g;
|
|
154
|
-
return typeof n == "function" ? D(n, o) : g = o, d(o, "aria-controls", $), f(o, () => e.trigger), f(t,
|
|
155
|
+
return typeof n == "function" ? D(n, o) : g = o, d(o, "aria-controls", $), f(o, () => e.trigger), f(t, u(y, {
|
|
155
156
|
get when() {
|
|
156
157
|
return a.mounted();
|
|
157
158
|
},
|
|
158
159
|
get children() {
|
|
159
|
-
return
|
|
160
|
+
return u(W, {
|
|
160
161
|
get mount() {
|
|
161
162
|
return w.mount();
|
|
162
163
|
},
|
|
163
164
|
get children() {
|
|
164
|
-
var r = K(),
|
|
165
|
-
return typeof
|
|
165
|
+
var r = K(), l = v;
|
|
166
|
+
return typeof l == "function" ? D(l, r) : v = r, d(r, "data-floe-dropdown", h), G(r, J({
|
|
166
167
|
get class() {
|
|
167
|
-
return
|
|
168
|
+
return k(w.isSurfaceMode() ? "absolute z-20 min-w-36" : "fixed z-50 min-w-36", "bg-popover text-popover-foreground p-1", "rounded-panel border border-[var(--floe-line)]", "shadow-[var(--floe-elevation-float)]", "floe-floating-presence floe-floating-menu");
|
|
168
169
|
},
|
|
169
170
|
get "data-floating-presence"() {
|
|
170
171
|
return a.state();
|
|
@@ -177,19 +178,19 @@ function $e(e) {
|
|
|
177
178
|
}), {
|
|
178
179
|
get style() {
|
|
179
180
|
return {
|
|
180
|
-
left: `${w.projectPosition(
|
|
181
|
-
top: `${w.projectPosition(
|
|
181
|
+
left: `${w.projectPosition(j()).x}px`,
|
|
182
|
+
top: `${w.projectPosition(j()).y}px`
|
|
182
183
|
};
|
|
183
184
|
},
|
|
184
185
|
role: "menu",
|
|
185
186
|
"data-floe-surface": "floating",
|
|
186
187
|
id: $,
|
|
187
188
|
onKeyDown: _
|
|
188
|
-
}), !1, !0), f(r,
|
|
189
|
+
}), !1, !0), f(r, u(V, {
|
|
189
190
|
get each() {
|
|
190
|
-
return
|
|
191
|
+
return x();
|
|
191
192
|
},
|
|
192
|
-
children: (m) =>
|
|
193
|
+
children: (m) => u(y, {
|
|
193
194
|
get when() {
|
|
194
195
|
return !m().separator;
|
|
195
196
|
},
|
|
@@ -197,7 +198,7 @@ function $e(e) {
|
|
|
197
198
|
return Z();
|
|
198
199
|
},
|
|
199
200
|
get children() {
|
|
200
|
-
return
|
|
201
|
+
return u(ee, {
|
|
201
202
|
get item() {
|
|
202
203
|
return m();
|
|
203
204
|
},
|
|
@@ -206,7 +207,7 @@ function $e(e) {
|
|
|
206
207
|
},
|
|
207
208
|
onSelect: F,
|
|
208
209
|
onCloseMenu: () => s(!1),
|
|
209
|
-
dropdownId:
|
|
210
|
+
dropdownId: h,
|
|
210
211
|
portalLayout: w
|
|
211
212
|
});
|
|
212
213
|
}
|
|
@@ -215,9 +216,9 @@ function $e(e) {
|
|
|
215
216
|
}
|
|
216
217
|
});
|
|
217
218
|
}
|
|
218
|
-
}), null),
|
|
219
|
-
var
|
|
220
|
-
return
|
|
219
|
+
}), null), q((r) => {
|
|
220
|
+
var l = k("relative inline-block", e.class), m = k("cursor-pointer", e.triggerClass, e.disabled && "pointer-events-none opacity-50"), i = e.disabled ? -1 : 0, S = c(), R = e.triggerAriaLabel, E = e.disabled ? "true" : void 0, L = e.triggerInputSurface ? "true" : void 0, I = e.triggerInputSurface ? "inset" : void 0;
|
|
221
|
+
return l !== r.e && p(t, r.e = l), m !== r.t && p(o, r.t = m), i !== r.a && d(o, "tabindex", r.a = i), S !== r.o && d(o, "aria-expanded", r.o = S), R !== r.i && d(o, "aria-label", r.i = R), E !== r.n && d(o, "aria-disabled", r.n = E), L !== r.s && d(o, "data-floe-input-surface", r.s = L), I !== r.h && d(o, "data-floe-surface", r.h = I), r;
|
|
221
222
|
}, {
|
|
222
223
|
e: void 0,
|
|
223
224
|
t: void 0,
|
|
@@ -231,24 +232,25 @@ function $e(e) {
|
|
|
231
232
|
})();
|
|
232
233
|
}
|
|
233
234
|
function ee(e) {
|
|
234
|
-
const [c, s] =
|
|
235
|
-
open: () => !!(c() && a())
|
|
236
|
-
|
|
235
|
+
const [c, s] = B(!1), a = () => e.item.children && e.item.children.length > 0, M = Y({
|
|
236
|
+
open: () => !!(c() && a()),
|
|
237
|
+
element: () => x
|
|
238
|
+
}), [g, v] = B({
|
|
237
239
|
x: -9999,
|
|
238
240
|
y: -9999
|
|
239
241
|
});
|
|
240
|
-
let
|
|
242
|
+
let h, $, x, b;
|
|
241
243
|
const w = `floe-dropdown-item-${Me += 1}`;
|
|
242
244
|
Q(() => {
|
|
243
|
-
|
|
245
|
+
M.mounted() || v({
|
|
244
246
|
x: -9999,
|
|
245
247
|
y: -9999
|
|
246
248
|
});
|
|
247
249
|
});
|
|
248
250
|
const C = () => {
|
|
249
|
-
if (!
|
|
250
|
-
const t =
|
|
251
|
-
|
|
251
|
+
if (!h || !x) return;
|
|
252
|
+
const t = h.getBoundingClientRect(), o = x.getBoundingClientRect(), n = ce(t, o, e.portalLayout.boundaryRect());
|
|
253
|
+
v(n);
|
|
252
254
|
}, T = () => {
|
|
253
255
|
a() && (clearTimeout(b), b = setTimeout(() => {
|
|
254
256
|
s(!0), requestAnimationFrame(C);
|
|
@@ -267,7 +269,7 @@ function ee(e) {
|
|
|
267
269
|
}
|
|
268
270
|
}, H = (t = "first") => {
|
|
269
271
|
a() && (s(!0), requestAnimationFrame(() => {
|
|
270
|
-
C(), O(
|
|
272
|
+
C(), O(x, t);
|
|
271
273
|
}));
|
|
272
274
|
}, _ = () => {
|
|
273
275
|
s(!1), requestAnimationFrame(() => $?.focus());
|
|
@@ -275,61 +277,61 @@ function ee(e) {
|
|
|
275
277
|
return (() => {
|
|
276
278
|
var t = ye();
|
|
277
279
|
t.addEventListener("mouseleave", F), t.addEventListener("mouseenter", T);
|
|
278
|
-
var o =
|
|
279
|
-
return typeof o == "function" ? D(o, t) :
|
|
280
|
+
var o = h;
|
|
281
|
+
return typeof o == "function" ? D(o, t) : h = t, f(t, u(y, {
|
|
280
282
|
get when() {
|
|
281
283
|
return e.item.content;
|
|
282
284
|
},
|
|
283
285
|
get children() {
|
|
284
286
|
var n = K();
|
|
285
|
-
return n.$$click = A, f(n, e.item.content),
|
|
286
|
-
var
|
|
287
|
-
return
|
|
287
|
+
return n.$$click = A, f(n, e.item.content), q((r) => {
|
|
288
|
+
var l = k("w-full px-2 py-1.5", e.item.tone === "danger" && "text-error", e.item.disabled && "opacity-50 pointer-events-none"), m = e.item.tone ?? "default";
|
|
289
|
+
return l !== r.e && p(n, r.e = l), m !== r.t && d(n, "data-tone", r.t = m), r;
|
|
288
290
|
}, {
|
|
289
291
|
e: void 0,
|
|
290
292
|
t: void 0
|
|
291
293
|
}), n;
|
|
292
294
|
}
|
|
293
|
-
}), null), f(t,
|
|
295
|
+
}), null), f(t, u(y, {
|
|
294
296
|
get when() {
|
|
295
297
|
return !e.item.content;
|
|
296
298
|
},
|
|
297
299
|
get children() {
|
|
298
|
-
var n = we(), r = n.firstChild,
|
|
300
|
+
var n = we(), r = n.firstChild, l = r.nextSibling;
|
|
299
301
|
n.$$keydown = (i) => {
|
|
300
302
|
e.item.disabled || a() && ((i.key === "ArrowRight" || i.key === "Enter" || i.key === " ") && (i.preventDefault(), H("first")), i.key === "ArrowLeft" && (i.preventDefault(), _()));
|
|
301
303
|
}, n.$$click = A;
|
|
302
304
|
var m = $;
|
|
303
|
-
return typeof m == "function" ? D(m, n) : $ = n, d(n, "id", w), f(r,
|
|
305
|
+
return typeof m == "function" ? D(m, n) : $ = n, d(n, "id", w), f(r, u(y, {
|
|
304
306
|
get when() {
|
|
305
307
|
return z(() => !!e.selected)() && !a();
|
|
306
308
|
},
|
|
307
309
|
get children() {
|
|
308
|
-
return
|
|
310
|
+
return u(ie, {
|
|
309
311
|
class: "w-3 h-3"
|
|
310
312
|
});
|
|
311
313
|
}
|
|
312
|
-
})), f(n,
|
|
314
|
+
})), f(n, u(y, {
|
|
313
315
|
get when() {
|
|
314
316
|
return e.item.icon;
|
|
315
317
|
},
|
|
316
318
|
keyed: !0,
|
|
317
319
|
children: (i) => (() => {
|
|
318
|
-
var
|
|
319
|
-
return f(
|
|
320
|
+
var S = xe();
|
|
321
|
+
return f(S, i), S;
|
|
320
322
|
})()
|
|
321
|
-
}),
|
|
323
|
+
}), l), f(l, () => e.item.label), f(n, u(y, {
|
|
322
324
|
get when() {
|
|
323
325
|
return a();
|
|
324
326
|
},
|
|
325
327
|
get children() {
|
|
326
|
-
return
|
|
327
|
-
class: "w-3 h-3 text-
|
|
328
|
+
return u(le, {
|
|
329
|
+
class: "w-3 h-3 text-[var(--floe-ink-quiet)]"
|
|
328
330
|
});
|
|
329
331
|
}
|
|
330
|
-
}), null),
|
|
331
|
-
var
|
|
332
|
-
return
|
|
332
|
+
}), null), q((i) => {
|
|
333
|
+
var S = k("w-full flex items-center gap-2 px-2", "min-h-[var(--floe-row-height)] rounded-sm", "text-[length:var(--floe-type-control)] leading-[var(--floe-line-control)]", "focus:outline-none", e.item.tone === "danger" ? "text-error" : "text-[var(--floe-ink-soft)]", e.item.disabled ? "opacity-50 cursor-not-allowed" : "cursor-pointer"), R = e.item.disabled, E = a() ? "menu" : void 0, L = a() ? c() : void 0, I = e.selected && !a() ? "true" : void 0, N = e.item.tone ?? "default";
|
|
334
|
+
return S !== i.e && p(n, i.e = S), R !== i.t && (n.disabled = i.t = R), E !== i.a && d(n, "aria-haspopup", i.a = E), L !== i.o && d(n, "aria-expanded", i.o = L), I !== i.i && d(n, "data-floe-selected", i.i = I), N !== i.n && d(n, "data-tone", i.n = N), i;
|
|
333
335
|
}, {
|
|
334
336
|
e: void 0,
|
|
335
337
|
t: void 0,
|
|
@@ -339,29 +341,29 @@ function ee(e) {
|
|
|
339
341
|
n: void 0
|
|
340
342
|
}), n;
|
|
341
343
|
}
|
|
342
|
-
}), null), f(t,
|
|
344
|
+
}), null), f(t, u(y, {
|
|
343
345
|
get when() {
|
|
344
|
-
return z(() => !!
|
|
346
|
+
return z(() => !!M.mounted())() && a();
|
|
345
347
|
},
|
|
346
348
|
get children() {
|
|
347
|
-
return
|
|
349
|
+
return u(W, {
|
|
348
350
|
get mount() {
|
|
349
351
|
return e.portalLayout.mount();
|
|
350
352
|
},
|
|
351
353
|
get children() {
|
|
352
|
-
var n = K(), r =
|
|
353
|
-
return typeof r == "function" ? D(r, n) :
|
|
354
|
+
var n = K(), r = x;
|
|
355
|
+
return typeof r == "function" ? D(r, n) : x = n, G(n, J({
|
|
354
356
|
get class() {
|
|
355
|
-
return
|
|
357
|
+
return k(e.portalLayout.isSurfaceMode() ? "absolute z-20 min-w-36" : "fixed z-50 min-w-36", "bg-popover text-popover-foreground p-1", "rounded-panel border border-[var(--floe-line)]", "shadow-[var(--floe-elevation-float)]", "floe-floating-presence floe-floating-menu floe-floating-submenu");
|
|
356
358
|
},
|
|
357
359
|
get "data-floe-dropdown"() {
|
|
358
360
|
return e.dropdownId;
|
|
359
361
|
},
|
|
360
362
|
get "data-floating-presence"() {
|
|
361
|
-
return
|
|
363
|
+
return M.state();
|
|
362
364
|
},
|
|
363
365
|
get "aria-hidden"() {
|
|
364
|
-
return
|
|
366
|
+
return M.exiting() ? "true" : void 0;
|
|
365
367
|
}
|
|
366
368
|
}, () => ({
|
|
367
369
|
[X]: e.portalLayout.isSurfaceMode() ? "true" : void 0
|
|
@@ -379,24 +381,24 @@ function ee(e) {
|
|
|
379
381
|
clearTimeout(b);
|
|
380
382
|
},
|
|
381
383
|
onMouseLeave: F,
|
|
382
|
-
onKeyDown: (
|
|
383
|
-
|
|
384
|
+
onKeyDown: (l) => {
|
|
385
|
+
l.key !== "ArrowLeft" && l.key !== "Escape" || (l.preventDefault(), l.stopPropagation(), _());
|
|
384
386
|
}
|
|
385
|
-
}), !1, !0), f(n,
|
|
387
|
+
}), !1, !0), f(n, u(V, {
|
|
386
388
|
get each() {
|
|
387
389
|
return e.item.children;
|
|
388
390
|
},
|
|
389
|
-
children: (
|
|
391
|
+
children: (l) => u(y, {
|
|
390
392
|
get when() {
|
|
391
|
-
return !
|
|
393
|
+
return !l().separator;
|
|
392
394
|
},
|
|
393
395
|
get fallback() {
|
|
394
396
|
return Z();
|
|
395
397
|
},
|
|
396
398
|
get children() {
|
|
397
|
-
return
|
|
399
|
+
return u(ee, {
|
|
398
400
|
get item() {
|
|
399
|
-
return
|
|
401
|
+
return l();
|
|
400
402
|
},
|
|
401
403
|
selected: !1,
|
|
402
404
|
get onSelect() {
|
|
@@ -426,17 +428,17 @@ function Fe(e) {
|
|
|
426
428
|
id: a.value,
|
|
427
429
|
label: a.label
|
|
428
430
|
}));
|
|
429
|
-
return
|
|
431
|
+
return u($e, {
|
|
430
432
|
triggerInputSurface: !0,
|
|
431
433
|
get triggerClass() {
|
|
432
|
-
return
|
|
434
|
+
return k("flex items-center justify-between gap-2 h-8 px-2.5 w-full", "floe-field text-[length:var(--floe-type-control)]", e.class);
|
|
433
435
|
},
|
|
434
436
|
get trigger() {
|
|
435
437
|
return [(() => {
|
|
436
438
|
var a = Se();
|
|
437
|
-
return f(a, () => c()?.label ?? e.placeholder ?? "Select..."),
|
|
438
|
-
})(),
|
|
439
|
-
class: "w-3.5 h-3.5 text-
|
|
439
|
+
return f(a, () => c()?.label ?? e.placeholder ?? "Select..."), q(() => p(a, k("truncate", !c() && "text-[var(--floe-ink-soft)]"))), a;
|
|
440
|
+
})(), u(ae, {
|
|
441
|
+
class: "w-3.5 h-3.5 text-[var(--floe-ink-quiet)]"
|
|
440
442
|
})];
|
|
441
443
|
},
|
|
442
444
|
get items() {
|