@floegence/floe-webapp-core 0.35.32 → 0.35.34

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.
Files changed (29) hide show
  1. package/dist/components/file-browser/DirectoryTree.js +84 -86
  2. package/dist/components/file-browser/FileContextMenu.d.ts +2 -2
  3. package/dist/components/file-browser/FileContextMenu.js +300 -142
  4. package/dist/components/file-browser/FileGridView.js +50 -45
  5. package/dist/components/file-browser/FileIcons.d.ts +10 -2
  6. package/dist/components/file-browser/FileIcons.js +289 -181
  7. package/dist/components/file-browser/FileListView.js +99 -94
  8. package/dist/components/file-browser/contextMenuEvent.d.ts +10 -0
  9. package/dist/components/file-browser/contextMenuEvent.js +19 -0
  10. package/dist/components/file-browser/index.d.ts +2 -2
  11. package/dist/components/file-browser/longPressContextMenu.d.ts +1 -0
  12. package/dist/components/file-browser/longPressContextMenu.js +45 -32
  13. package/dist/components/file-browser/types.d.ts +23 -1
  14. package/dist/components/layout/Shell.d.ts +8 -0
  15. package/dist/components/layout/Shell.js +157 -138
  16. package/dist/components/layout/Sidebar.d.ts +2 -0
  17. package/dist/components/layout/Sidebar.js +39 -38
  18. package/dist/components/layout/sidebarVisibilityMotion.d.ts +22 -0
  19. package/dist/components/layout/sidebarVisibilityMotion.js +16 -0
  20. package/dist/components/ui/Dropdown.d.ts +0 -1
  21. package/dist/components/ui/Dropdown.js +150 -204
  22. package/dist/components/ui/menuUtils.d.ts +15 -0
  23. package/dist/components/ui/menuUtils.js +60 -0
  24. package/dist/components/ui/picker/PickerBase.js +90 -96
  25. package/dist/context/LayoutContext.d.ts +5 -0
  26. package/dist/context/LayoutContext.js +58 -46
  27. package/dist/file-browser.js +35 -31
  28. package/dist/full.js +411 -407
  29. package/package.json +1 -1
@@ -1,71 +1,72 @@
1
- import { insert as l, effect as o, className as c, setStyleProperty as u, setAttribute as g, memo as $, template as d, delegateEvents as y } from "solid-js/web";
1
+ import { insert as l, effect as s, setAttribute as f, className as c, setStyleProperty as u, memo as w, template as o, delegateEvents as S } from "solid-js/web";
2
2
  import "solid-js";
3
- import { cn as s } from "../../utils/cn.js";
4
- var _ = /* @__PURE__ */ d('<aside data-floe-shell-slot=sidebar data-floe-geometry-surface=shell-sidebar><div class="flex-1 overflow-auto overscroll-contain">'), w = /* @__PURE__ */ d("<div>"), S = /* @__PURE__ */ d("<section><div class=flex-1>"), k = /* @__PURE__ */ d('<div class="flex items-center justify-between px-2.5 py-2 text-[11px] font-semibold uppercase tracking-wider text-muted-foreground/60"><span>'), C = /* @__PURE__ */ d('<button type=button><span class="flex-1 truncate text-left">'), I = /* @__PURE__ */ d('<span class="flex-shrink-0 w-4 h-4 opacity-60">');
5
- function A(e) {
6
- const t = () => e.collapsed ?? !1, a = () => e.width ?? 350;
3
+ import { cn as v } from "../../utils/cn.js";
4
+ var k = /* @__PURE__ */ o('<aside data-floe-shell-slot=sidebar data-floe-geometry-surface=shell-sidebar><div class="flex-1 overflow-auto overscroll-contain">'), _ = /* @__PURE__ */ o("<div>"), C = /* @__PURE__ */ o("<section><div class=flex-1>"), I = /* @__PURE__ */ o('<div class="flex items-center justify-between px-2.5 py-2 text-[11px] font-semibold uppercase tracking-wider text-muted-foreground/60"><span>'), L = /* @__PURE__ */ o('<button type=button><span class="flex-1 truncate text-left">'), M = /* @__PURE__ */ o('<span class="flex-shrink-0 w-4 h-4 opacity-60">');
5
+ function E(e) {
6
+ const t = () => e.collapsed ?? !1, a = () => e.width ?? 350, n = () => e.visibilityMotion ?? "animated";
7
7
  return (() => {
8
- var i = _(), n = i.firstChild;
9
- return l(n, () => e.children), l(i, () => e.resizer, null), o((r) => {
10
- var v = s("relative h-full flex flex-col shrink-0 min-h-0", "bg-sidebar text-sidebar-foreground", "border-r border-sidebar-border", "overflow-hidden", "transition-[width] duration-150 ease-out", e.class), f = t() ? "0px" : `${a()}px`, b = t() ? "hidden" : "visible", h = t() ? "0px" : void 0, x = e.ariaLabel, m = t() ? "true" : void 0;
11
- return v !== r.e && c(i, r.e = v), f !== r.t && u(i, "width", r.t = f), b !== r.a && u(i, "visibility", r.a = b), h !== r.o && u(i, "border-right-width", r.o = h), x !== r.i && g(i, "aria-label", r.i = x), m !== r.n && g(i, "aria-hidden", r.n = m), r;
8
+ var i = k(), d = i.firstChild;
9
+ return l(d, () => e.children), l(i, () => e.resizer, null), s((r) => {
10
+ var b = n(), m = v("relative h-full flex flex-col shrink-0 min-h-0", "bg-sidebar text-sidebar-foreground", "border-r border-sidebar-border", "overflow-hidden", n() === "animated" && "transition-[width] duration-150 ease-out", e.class), h = t() ? "0px" : `${a()}px`, x = t() ? "hidden" : "visible", g = t() ? "0px" : void 0, y = e.ariaLabel, $ = t() ? "true" : void 0;
11
+ return b !== r.e && f(i, "data-floe-sidebar-visibility-motion", r.e = b), m !== r.t && c(i, r.t = m), h !== r.a && u(i, "width", r.a = h), x !== r.o && u(i, "visibility", r.o = x), g !== r.i && u(i, "border-right-width", r.i = g), y !== r.n && f(i, "aria-label", r.n = y), $ !== r.s && f(i, "aria-hidden", r.s = $), r;
12
12
  }, {
13
13
  e: void 0,
14
14
  t: void 0,
15
15
  a: void 0,
16
16
  o: void 0,
17
17
  i: void 0,
18
- n: void 0
18
+ n: void 0,
19
+ s: void 0
19
20
  }), i;
20
21
  })();
21
22
  }
22
- function E(e) {
23
+ function N(e) {
23
24
  return (() => {
24
- var t = w();
25
- return l(t, () => e.children), o(() => c(t, s("p-2.5 space-y-3", e.class))), t;
25
+ var t = _();
26
+ return l(t, () => e.children), s(() => c(t, v("p-2.5 space-y-3", e.class))), t;
26
27
  })();
27
28
  }
28
- function N(e) {
29
+ function P(e) {
29
30
  return (() => {
30
- var t = w();
31
- return l(t, () => e.children), o(() => c(t, s("space-y-0.5", e.class))), t;
31
+ var t = _();
32
+ return l(t, () => e.children), s(() => c(t, v("space-y-0.5", e.class))), t;
32
33
  })();
33
34
  }
34
- function P(e) {
35
+ function q(e) {
35
36
  return (() => {
36
- var t = S(), a = t.firstChild;
37
+ var t = C(), a = t.firstChild;
37
38
  return l(t, (() => {
38
- var i = $(() => !!e.title);
39
- return () => i() && (() => {
40
- var n = k(), r = n.firstChild;
41
- return l(r, () => e.title), l(n, () => e.actions, null), n;
39
+ var n = w(() => !!e.title);
40
+ return () => n() && (() => {
41
+ var i = I(), d = i.firstChild;
42
+ return l(d, () => e.title), l(i, () => e.actions, null), i;
42
43
  })();
43
- })(), a), l(a, () => e.children), o(() => c(t, s("flex flex-col", e.class))), t;
44
+ })(), a), l(a, () => e.children), s(() => c(t, v("flex flex-col", e.class))), t;
44
45
  })();
45
46
  }
46
- function q(e) {
47
+ function B(e) {
47
48
  return (() => {
48
- var t = C(), a = t.firstChild;
49
+ var t = L(), a = t.firstChild;
49
50
  return t.$$click = () => e.onClick?.(), l(t, (() => {
50
- var i = $(() => !!e.icon);
51
- return () => i() && (() => {
52
- var n = I();
53
- return l(n, () => e.icon), n;
51
+ var n = w(() => !!e.icon);
52
+ return () => n() && (() => {
53
+ var i = M();
54
+ return l(i, () => e.icon), i;
54
55
  })();
55
- })(), a), l(a, () => e.children), o((i) => {
56
- var n = s("w-full flex items-center gap-2 px-2.5 py-1.5 text-xs cursor-pointer", "transition-colors duration-75", "hover:bg-sidebar-accent/80 hover:text-sidebar-accent-foreground", "focus:outline-none focus-visible:ring-1 focus-visible:ring-inset focus-visible:ring-sidebar-ring", e.active && "bg-sidebar-accent text-sidebar-accent-foreground font-medium", e.class), r = e.indent ? `${10 + e.indent * 10}px` : void 0;
57
- return n !== i.e && c(t, i.e = n), r !== i.t && u(t, "padding-left", i.t = r), i;
56
+ })(), a), l(a, () => e.children), s((n) => {
57
+ var i = v("w-full flex items-center gap-2 px-2.5 py-1.5 text-xs cursor-pointer", "transition-colors duration-75", "hover:bg-sidebar-accent/80 hover:text-sidebar-accent-foreground", "focus:outline-none focus-visible:ring-1 focus-visible:ring-inset focus-visible:ring-sidebar-ring", e.active && "bg-sidebar-accent text-sidebar-accent-foreground font-medium", e.class), d = e.indent ? `${10 + e.indent * 10}px` : void 0;
58
+ return i !== n.e && c(t, n.e = i), d !== n.t && u(t, "padding-left", n.t = d), n;
58
59
  }, {
59
60
  e: void 0,
60
61
  t: void 0
61
62
  }), t;
62
63
  })();
63
64
  }
64
- y(["click"]);
65
+ S(["click"]);
65
66
  export {
66
- A as Sidebar,
67
- E as SidebarContent,
68
- q as SidebarItem,
69
- N as SidebarItemList,
70
- P as SidebarSection
67
+ E as Sidebar,
68
+ N as SidebarContent,
69
+ B as SidebarItem,
70
+ P as SidebarItemList,
71
+ q as SidebarSection
71
72
  };
@@ -0,0 +1,22 @@
1
+ import type { SidebarVisibilityMotion } from '../../context/LayoutContext';
2
+ export interface SidebarVisibilityMotionResolverArgs {
3
+ currentActiveId: string;
4
+ nextActiveId: string;
5
+ openSidebar: boolean;
6
+ source: 'activity-bar';
7
+ isMobile: boolean;
8
+ }
9
+ export interface ResolveShellSidebarActiveTabChangeArgs {
10
+ currentActiveId: string;
11
+ nextActiveId: string;
12
+ requestedOpenSidebar?: boolean;
13
+ sidebarHidden: boolean;
14
+ nextActiveFullScreen: boolean;
15
+ isMobile: boolean;
16
+ resolveSidebarVisibilityMotion?: (args: SidebarVisibilityMotionResolverArgs) => SidebarVisibilityMotion | undefined;
17
+ }
18
+ export interface ResolvedShellSidebarActiveTabChange {
19
+ openSidebar: boolean;
20
+ visibilityMotion?: SidebarVisibilityMotion;
21
+ }
22
+ export declare function resolveShellSidebarActiveTabChange(args: ResolveShellSidebarActiveTabChangeArgs): ResolvedShellSidebarActiveTabChange;
@@ -0,0 +1,16 @@
1
+ function t(e) {
2
+ const i = e.sidebarHidden ? !1 : e.requestedOpenSidebar ?? !e.nextActiveFullScreen;
3
+ return {
4
+ openSidebar: i,
5
+ visibilityMotion: e.resolveSidebarVisibilityMotion?.({
6
+ currentActiveId: e.currentActiveId,
7
+ nextActiveId: e.nextActiveId,
8
+ openSidebar: i,
9
+ source: "activity-bar",
10
+ isMobile: e.isMobile
11
+ })
12
+ };
13
+ }
14
+ export {
15
+ t as resolveShellSidebarActiveTabChange
16
+ };
@@ -32,7 +32,6 @@ export declare function resolveDropdownTriggerKeyAction(key: string, options: {
32
32
  open: boolean;
33
33
  hasSelection: boolean;
34
34
  }): DropdownTriggerAction | null;
35
- export declare function getWrappedMenuItemIndex(length: number, currentIndex: number, delta: 1 | -1): number | null;
36
35
  /**
37
36
  * Dropdown menu component with cascade submenu support
38
37
  */