@floegence/floe-webapp-core 0.36.15 → 0.36.17

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 (31) hide show
  1. package/dist/components/ui/InfiniteCanvas.d.ts +1 -0
  2. package/dist/components/ui/InfiniteCanvas.js +94 -84
  3. package/dist/components/ui/index.d.ts +1 -0
  4. package/dist/components/ui/pointerSession.d.ts +35 -0
  5. package/dist/components/ui/pointerSession.js +85 -0
  6. package/dist/components/workbench/WorkbenchCanvas.d.ts +3 -0
  7. package/dist/components/workbench/WorkbenchCanvas.js +51 -28
  8. package/dist/components/workbench/WorkbenchCanvasField.d.ts +2 -0
  9. package/dist/components/workbench/WorkbenchCanvasField.js +18 -6
  10. package/dist/components/workbench/WorkbenchFilterBar.js +119 -117
  11. package/dist/components/workbench/WorkbenchHud.d.ts +9 -0
  12. package/dist/components/workbench/WorkbenchHud.js +24 -10
  13. package/dist/components/workbench/WorkbenchSurface.js +68 -49
  14. package/dist/components/workbench/WorkbenchThemeSelector.d.ts +6 -0
  15. package/dist/components/workbench/WorkbenchThemeSelector.js +77 -0
  16. package/dist/components/workbench/WorkbenchWidget.d.ts +2 -0
  17. package/dist/components/workbench/WorkbenchWidget.js +211 -167
  18. package/dist/components/workbench/index.d.ts +2 -0
  19. package/dist/components/workbench/types.d.ts +2 -0
  20. package/dist/components/workbench/useWorkbenchModel.d.ts +5 -0
  21. package/dist/components/workbench/useWorkbenchModel.js +83 -77
  22. package/dist/components/workbench/workbenchHelpers.js +53 -50
  23. package/dist/components/workbench/workbenchThemes.d.ts +32 -0
  24. package/dist/components/workbench/workbenchThemes.js +82 -0
  25. package/dist/full.js +71 -69
  26. package/dist/styles.css +1 -1
  27. package/dist/ui.js +26 -24
  28. package/dist/workbench-themes.css +1106 -0
  29. package/dist/workbench.css +492 -96
  30. package/dist/workbench.js +35 -27
  31. package/package.json +1 -1
@@ -0,0 +1,82 @@
1
+ const n = [
2
+ "default",
3
+ "vibrancy",
4
+ "mica",
5
+ "midnight",
6
+ "aurora",
7
+ "terminal"
8
+ ], a = [
9
+ {
10
+ id: "default",
11
+ label: "System",
12
+ description: "Inherits the current app theme tokens.",
13
+ preview: {
14
+ canvas: "color-mix(in srgb, var(--background, #fafafa) 92%, var(--muted, #f0f0f0) 8%)",
15
+ widget: "var(--card, #ffffff)",
16
+ accent: "var(--primary, #3b82f6)"
17
+ }
18
+ },
19
+ {
20
+ id: "vibrancy",
21
+ label: "macOS Vibrancy",
22
+ description: "Traffic-light glass windows over a soft wallpaper.",
23
+ preview: {
24
+ canvas: "linear-gradient(135deg, #d8e1f2 0%, #ead7ee 100%)",
25
+ widget: "rgba(255, 255, 255, 0.76)",
26
+ accent: "#3478f6"
27
+ }
28
+ },
29
+ {
30
+ id: "mica",
31
+ label: "Fluent Mica",
32
+ description: "Mica wallpaper bleed, taskbar chrome, ice-blue accent.",
33
+ preview: {
34
+ canvas: "linear-gradient(135deg, #eef2f7 0%, #f4e7eb 48%, #e7effc 100%)",
35
+ widget: "rgba(255, 255, 255, 0.84)",
36
+ accent: "#0078d4"
37
+ }
38
+ },
39
+ {
40
+ id: "midnight",
41
+ label: "Midnight Studio",
42
+ description: "Near-monochrome canvas, indigo accent, Geist-flavoured.",
43
+ preview: {
44
+ canvas: "#f5f5f7",
45
+ widget: "#ffffff",
46
+ accent: "#5e6ad2"
47
+ }
48
+ },
49
+ {
50
+ id: "aurora",
51
+ label: "Aurora Glass",
52
+ description: "Indigo-violet dream gradient with heavy glass.",
53
+ preview: {
54
+ canvas: "linear-gradient(135deg, #eadbfa 0%, #ffd8e2 100%)",
55
+ widget: "rgba(255, 255, 255, 0.58)",
56
+ accent: "#6366f1"
57
+ }
58
+ },
59
+ {
60
+ id: "terminal",
61
+ label: "Terminal Chic",
62
+ description: "Paper canvas, neon accent, monospace details.",
63
+ preview: {
64
+ canvas: "#f7f4ed",
65
+ widget: "#ffffff",
66
+ accent: "#d63384"
67
+ }
68
+ }
69
+ ], r = "default";
70
+ function t(e) {
71
+ return typeof e == "string" && n.includes(e);
72
+ }
73
+ function c(e) {
74
+ return a.find((i) => i.id === e) ?? a[0];
75
+ }
76
+ export {
77
+ r as DEFAULT_WORKBENCH_THEME,
78
+ a as WORKBENCH_THEMES,
79
+ n as WORKBENCH_THEME_IDS,
80
+ t as isWorkbenchThemeId,
81
+ c as workbenchThemeMeta
82
+ };
package/dist/full.js CHANGED
@@ -1,10 +1,10 @@
1
1
  import { FloeProvider as r } from "./app/FloeProvider.js";
2
2
  import { applyTheme as n, builtInThemes as i, getSystemTheme as a, mergeThemeTokenMaps as m, resolveThemeTokenOverrides as c, resolveThemeTokens as l, syncThemeTokenOverrides as s } from "./styles/themes/index.js";
3
- import { floeColorTokenCategories as f, floeDesignTokens as d, floeFontFamilyTokens as I, floeMotionTokens as x, floeRadiusTokens as T, floeSharedCssVariables as C, floeSpacingTokens as S, floeThemeColorVariables as g, floeTypographyTokens as u, getFloeColorTokenValue as h } from "./styles/tokens.js";
4
- import { Activity as F, ActivityIcon as P, AlertCircle as A, AlertTriangle as E, ArchiveIcon as L, ArrowDown as v, ArrowLeft as y, ArrowRight as R, ArrowRightLeft as B, ArrowUp as D, AtSign as _, AwardIcon as M, BarChart as O, BatteryIcon as W, Bell as w, BellIcon as N, Bookmark as b, BookmarkIcon as H, Bot as G, BotIcon as U, BugIcon as V, Calendar as K, CalendarIcon as z, Camera as X, CameraIcon as Z, ChartIcon as Y, Check as Q, CheckCircle as j, CheckIcon as q, ChevronDown as J, ChevronLeft as $, ChevronRight as ee, ChevronUp as oe, ChevronsUpDown as re, Clock as te, ClockIcon as ne, CloseIcon as ie, Cloud as ae, CloudIcon as me, Code as ce, CodeIcon as le, CompassIcon as se, Copy as pe, CopyCheck as fe, CopyCheckIcon as de, CopyIcon as Ie, Cpu as xe, CreditCardIcon as Te, Database as Ce, DatabaseIcon as Se, DollarIcon as ge, Download as ue, DownloadIcon as he, EditIcon as ke, ErrorIcon as Fe, ExternalLink as Pe, Eye as Ae, EyeIcon as Ee, EyeOff as Le, FileCode as ve, FilePlus as ye, FilePlusIcon as Re, FileText as Be, Files as De, Filter as _e, FilterIcon as Me, FireIcon as Oe, Folder as We, FolderOpen as we, FolderPlus as Ne, FolderPlusIcon as be, GiftIcon as He, GitBranch as Ge, GitBranchIcon as Ue, Globe as Ve, GlobeIcon as Ke, Grid as ze, Grid3x3 as Xe, GripVertical as Ze, Hash as Ye, HeadphonesIcon as Qe, Heart as je, HeartIcon as qe, HelpIcon as Je, Highlighter as $e, History as eo, Home as oo, HomeIcon as ro, Image as to, ImageIcon as no, Info as io, InfoIcon as ao, Key as mo, KeyIcon as co, Layers as lo, LayersIcon as so, LayoutDashboard as po, Link as fo, LinkIcon as Io, Loader2 as xo, LoadingIcon as To, Lock as Co, LockIcon as So, MagicIcon as go, Mail as uo, MailIcon as ho, MapPinIcon as ko, Maximize as Fo, Menu as Po, MessageIcon as Ao, MessageSquare as Eo, Mic as Lo, MicIcon as vo, MicOff as yo, Minus as Ro, MinusIcon as Bo, Moon as Do, MoonIcon as _o, MoreHorizontal as Mo, MoreVertical as Oo, MuteIcon as Wo, Package as wo, PackageIcon as No, Paperclip as bo, Paste as Ho, PasteIcon as Go, Pause as Uo, PauseIcon as Vo, Pencil as Ko, Phone as zo, PieChart as Xo, Pin as Zo, PinIcon as Yo, Play as Qo, PlayIcon as jo, Plus as qo, PlusIcon as Jo, PowerIcon as $o, PrinterIcon as er, Quote as or, Refresh as rr, RefreshIcon as tr, Restore as nr, RocketIcon as ir, Save as ar, SaveIcon as mr, Search as cr, SearchIcon as lr, Send as sr, SendIcon as pr, Settings as fr, SettingsIcon as dr, ShareIcon as Ir, Shield as xr, ShieldCheck as Tr, ShieldIcon as Cr, SparkleIcon as Sr, Sparkles as gr, Star as ur, StarIcon as hr, Stop as kr, SuccessIcon as Fr, Sun as Pr, SunIcon as Ar, TagIcon as Er, TargetIcon as Lr, Terminal as vr, TerminalIcon as yr, ThumbsDownIcon as Rr, ThumbsUpIcon as Br, Timer as Dr, Trash as _r, TrashIcon as Mr, TrendingDown as Or, TrendingUp as Wr, Unlock as wr, Upload as Nr, UploadIcon as br, User as Hr, UserIcon as Gr, Video as Ur, VideoIcon as Vr, Volume as Kr, VolumeIcon as zr, VolumeOff as Xr, Wand as Zr, WarningIcon as Yr, WifiIcon as Qr, WifiOffIcon as jr, Workflow as qr, X as Jr, XCircle as $r, Zap as et, ZapIcon as ot } from "./components/icons/index.js";
3
+ import { floeColorTokenCategories as f, floeDesignTokens as d, floeFontFamilyTokens as I, floeMotionTokens as x, floeRadiusTokens as S, floeSharedCssVariables as T, floeSpacingTokens as C, floeThemeColorVariables as g, floeTypographyTokens as u, getFloeColorTokenValue as h } from "./styles/tokens.js";
4
+ import { Activity as F, ActivityIcon as P, AlertCircle as A, AlertTriangle as E, ArchiveIcon as L, ArrowDown as v, ArrowLeft as y, ArrowRight as R, ArrowRightLeft as B, ArrowUp as D, AtSign as _, AwardIcon as M, BarChart as O, BatteryIcon as W, Bell as w, BellIcon as N, Bookmark as b, BookmarkIcon as H, Bot as G, BotIcon as U, BugIcon as V, Calendar as K, CalendarIcon as z, Camera as X, CameraIcon as Z, ChartIcon as Y, Check as Q, CheckCircle as j, CheckIcon as q, ChevronDown as J, ChevronLeft as $, ChevronRight as ee, ChevronUp as oe, ChevronsUpDown as re, Clock as te, ClockIcon as ne, CloseIcon as ie, Cloud as ae, CloudIcon as me, Code as ce, CodeIcon as le, CompassIcon as se, Copy as pe, CopyCheck as fe, CopyCheckIcon as de, CopyIcon as Ie, Cpu as xe, CreditCardIcon as Se, Database as Te, DatabaseIcon as Ce, DollarIcon as ge, Download as ue, DownloadIcon as he, EditIcon as ke, ErrorIcon as Fe, ExternalLink as Pe, Eye as Ae, EyeIcon as Ee, EyeOff as Le, FileCode as ve, FilePlus as ye, FilePlusIcon as Re, FileText as Be, Files as De, Filter as _e, FilterIcon as Me, FireIcon as Oe, Folder as We, FolderOpen as we, FolderPlus as Ne, FolderPlusIcon as be, GiftIcon as He, GitBranch as Ge, GitBranchIcon as Ue, Globe as Ve, GlobeIcon as Ke, Grid as ze, Grid3x3 as Xe, GripVertical as Ze, Hash as Ye, HeadphonesIcon as Qe, Heart as je, HeartIcon as qe, HelpIcon as Je, Highlighter as $e, History as eo, Home as oo, HomeIcon as ro, Image as to, ImageIcon as no, Info as io, InfoIcon as ao, Key as mo, KeyIcon as co, Layers as lo, LayersIcon as so, LayoutDashboard as po, Link as fo, LinkIcon as Io, Loader2 as xo, LoadingIcon as So, Lock as To, LockIcon as Co, MagicIcon as go, Mail as uo, MailIcon as ho, MapPinIcon as ko, Maximize as Fo, Menu as Po, MessageIcon as Ao, MessageSquare as Eo, Mic as Lo, MicIcon as vo, MicOff as yo, Minus as Ro, MinusIcon as Bo, Moon as Do, MoonIcon as _o, MoreHorizontal as Mo, MoreVertical as Oo, MuteIcon as Wo, Package as wo, PackageIcon as No, Paperclip as bo, Paste as Ho, PasteIcon as Go, Pause as Uo, PauseIcon as Vo, Pencil as Ko, Phone as zo, PieChart as Xo, Pin as Zo, PinIcon as Yo, Play as Qo, PlayIcon as jo, Plus as qo, PlusIcon as Jo, PowerIcon as $o, PrinterIcon as er, Quote as or, Refresh as rr, RefreshIcon as tr, Restore as nr, RocketIcon as ir, Save as ar, SaveIcon as mr, Search as cr, SearchIcon as lr, Send as sr, SendIcon as pr, Settings as fr, SettingsIcon as dr, ShareIcon as Ir, Shield as xr, ShieldCheck as Sr, ShieldIcon as Tr, SparkleIcon as Cr, Sparkles as gr, Star as ur, StarIcon as hr, Stop as kr, SuccessIcon as Fr, Sun as Pr, SunIcon as Ar, TagIcon as Er, TargetIcon as Lr, Terminal as vr, TerminalIcon as yr, ThumbsDownIcon as Rr, ThumbsUpIcon as Br, Timer as Dr, Trash as _r, TrashIcon as Mr, TrendingDown as Or, TrendingUp as Wr, Unlock as wr, Upload as Nr, UploadIcon as br, User as Hr, UserIcon as Gr, Video as Ur, VideoIcon as Vr, Volume as Kr, VolumeIcon as zr, VolumeOff as Xr, Wand as Zr, WarningIcon as Yr, WifiIcon as Qr, WifiOffIcon as jr, Workflow as qr, X as Jr, XCircle as $r, Zap as et, ZapIcon as ot } from "./components/icons/index.js";
5
5
  import { DEFAULT_TERMINAL_WORKSPACE_PROFILE as tt, normalizeTerminalWorkspaceProfile as nt } from "./terminal/workspaceProfile.js";
6
6
  import { clampTerminalCursor as at, createTerminalEditorState as mt, deleteTerminalTextBackward as ct, insertTerminalText as lt, moveTerminalCursor as st, navigateTerminalHistory as pt } from "./terminal/editorModel.js";
7
- import { applyTerminalSessionSuggestion as dt, createTerminalSessionState as It, dispatchTerminalSessionKey as xt, getTerminalPromptPreview as Tt, getTerminalSessionSuggestions as Ct, setTerminalSessionInputValue as St, submitTerminalSession as gt } from "./terminal/sessionModel.js";
7
+ import { applyTerminalSessionSuggestion as dt, createTerminalSessionState as It, dispatchTerminalSessionKey as xt, getTerminalPromptPreview as St, getTerminalSessionSuggestions as Tt, setTerminalSessionInputValue as Ct, submitTerminalSession as gt } from "./terminal/sessionModel.js";
8
8
  import { runTerminalMockCommand as ht } from "./terminal/mockRuntime.js";
9
9
  import { DEFAULT_TERMINAL_SUGGESTION_PROVIDERS as Ft, applyTerminalSuggestion as Pt, autocompleteTerminalInput as At, createTerminalFullLineSuggestion as Et, createTerminalTokenSuggestion as Lt, getTerminalSuggestions as vt, matchesTerminalSuggestionPrefix as yt, parseTerminalSuggestionContext as Rt, terminalCommandTokenSuggestionProvider as Bt, terminalHistorySuggestionProvider as Dt, terminalPathSuggestionProvider as _t, terminalRootSuggestionProvider as Mt, terminalSnippetSuggestionProvider as Ot } from "./terminal/suggestionEngine.js";
10
10
  import { ActivityAppsMain as wt } from "./app/ActivityAppsMain.js";
@@ -14,8 +14,8 @@ import { AnimatedBorderCard as Xt, Card as Zt, CardContent as Yt, CardDescriptio
14
14
  import { AreaChart as tn, DataBarChart as nn, DataPieChart as an, LineChart as mn, MonitoringChart as cn } from "./components/ui/Charts.js";
15
15
  import { AttachmentPreview as sn } from "./components/chat/input/AttachmentPreview.js";
16
16
  import { BlockRenderer as fn } from "./components/chat/blocks/BlockRenderer.js";
17
- import { BottomBar as In, BottomBarItem as xn, StatusIndicator as Tn } from "./components/layout/BottomBar.js";
18
- import { Breadcrumb as Sn } from "./components/file-browser/Breadcrumb.js";
17
+ import { BottomBar as In, BottomBarItem as xn, StatusIndicator as Sn } from "./components/layout/BottomBar.js";
18
+ import { Breadcrumb as Cn } from "./components/file-browser/Breadcrumb.js";
19
19
  import { BrokenSymlinkIcon as un, CodeFileIcon as hn, ConfigFileIcon as kn, DocumentFileIcon as Fn, FileIcon as Pn, FileItemIcon as An, FolderIcon as En, FolderOpenIcon as Ln, ImageFileIcon as vn, JavaScriptFileIcon as yn, ShellScriptFileIcon as Rn, StyleFileIcon as Bn, SymlinkFileIcon as Dn, SymlinkFolderIcon as _n, SymlinkFolderOpenIcon as Mn, TypeScriptFileIcon as On, getFileIcon as Wn, resolveFileItemIcon as wn } from "./components/file-browser/FileIcons.js";
20
20
  import { Button as bn } from "./components/ui/Button.js";
21
21
  import { CANVAS_WHEEL_INTERACTIVE_ATTR as Gn, DEFAULT_CANVAS_WHEEL_INTERACTIVE_SELECTOR as Un, DEFAULT_LOCAL_INTERACTION_SURFACE_SELECTOR as Vn, DEFAULT_WORKBENCH_WIDGET_SHELL_SELECTOR as Kn, LOCAL_INTERACTION_SURFACE_ATTR as zn, WORKBENCH_WIDGET_SHELL_ATTR as Xn, isLocalInteractionSurfaceTarget as Zn, resolveSurfaceInteractionTargetRole as Yn, resolveSurfaceWheelRouting as Qn, resolveWorkbenchWidgetEventOwnership as jn } from "./components/ui/localInteractionSurface.js";
@@ -25,8 +25,8 @@ import { ChatProvider as ri, useChatContext as ti } from "./components/chat/Chat
25
25
  import { Checkbox as ii, CheckboxGroup as ai, CheckboxList as mi } from "./components/ui/Checkbox.js";
26
26
  import { ChecklistBlock as li } from "./components/chat/blocks/ChecklistBlock.js";
27
27
  import { CircularProgress as pi, LinearProgress as fi, SegmentedProgress as di, StepsProgress as Ii } from "./components/ui/Progress.js";
28
- import { CodeBlock as Ti } from "./components/chat/blocks/CodeBlock.js";
29
- import { CodeDiffBlock as Si } from "./components/chat/blocks/CodeDiffBlock.js";
28
+ import { CodeBlock as Si } from "./components/chat/blocks/CodeBlock.js";
29
+ import { CodeDiffBlock as Ci } from "./components/chat/blocks/CodeDiffBlock.js";
30
30
  import { CommandPalette as ui } from "./components/ui/CommandPalette.js";
31
31
  import { CommandProvider as ki, createCommandService as Fi, useCommand as Pi } from "./context/CommandContext.js";
32
32
  import { ComponentRegistryProvider as Ei, createComponentRegistry as Li, hasComponentRegistryContext as vi, useComponentContextFactory as yi, useComponentRegistry as Ri, useOptionalComponentRegistry as Bi } from "./context/ComponentRegistry.js";
@@ -39,8 +39,8 @@ import { DIALOG_SURFACE_BOUNDARY_ATTR as Yi, DIALOG_SURFACE_HOST_ATTR as Qi, SUR
39
39
  import { DeckCell as ca } from "./components/deck/DeckCell.js";
40
40
  import { DeckContextMenu as sa } from "./components/deck/DeckContextMenu.js";
41
41
  import { DeckGrid as fa } from "./components/deck/DeckGrid.js";
42
- import { DeckProvider as Ia, createDeckService as xa, useDeck as Ta } from "./context/DeckContext.js";
43
- import { DeckTopBar as Sa } from "./components/deck/DeckTopBar.js";
42
+ import { DeckProvider as Ia, createDeckService as xa, useDeck as Sa } from "./context/DeckContext.js";
43
+ import { DeckTopBar as Ca } from "./components/deck/DeckTopBar.js";
44
44
  import { DirectoryInput as ua } from "./components/ui/DirectoryInput.js";
45
45
  import { DirectoryPicker as ka } from "./components/ui/DirectoryPicker.js";
46
46
  import { DirectoryTree as Pa } from "./components/file-browser/DirectoryTree.js";
@@ -60,7 +60,7 @@ import { FileContextMenu as lm } from "./components/file-browser/FileContextMenu
60
60
  import { FileGridView as pm } from "./components/file-browser/FileGridView.js";
61
61
  import { FileListView as dm } from "./components/file-browser/FileListView.js";
62
62
  import { FileSavePicker as xm } from "./components/ui/FileSavePicker.js";
63
- import { FilesSidebarWidget as Cm, SearchSidebarWidget as Sm, SettingsSidebarWidget as gm, ShowcaseSidebarWidget as um, SidebarWidget as hm } from "./widgets/SidebarWidget.js";
63
+ import { FilesSidebarWidget as Tm, SearchSidebarWidget as Cm, SettingsSidebarWidget as gm, ShowcaseSidebarWidget as um, SidebarWidget as hm } from "./widgets/SidebarWidget.js";
64
64
  import { FloatingWindow as Fm } from "./components/ui/FloatingWindow.js";
65
65
  import { FloeApp as Am } from "./app/FloeApp.js";
66
66
  import { FloeRegistryRuntime as Lm } from "./app/FloeRegistryRuntime.js";
@@ -79,7 +79,7 @@ import { LayoutSelector as lc } from "./components/deck/LayoutSelector.js";
79
79
  import { LoadingOverlay as pc } from "./components/loading/LoadingOverlay.js";
80
80
  import { MarkdownBlock as dc } from "./components/chat/blocks/MarkdownBlock.js";
81
81
  import { MermaidBlock as xc } from "./components/chat/blocks/MermaidBlock.js";
82
- import { MessageActions as Cc } from "./components/chat/message/MessageActions.js";
82
+ import { MessageActions as Tc } from "./components/chat/message/MessageActions.js";
83
83
  import { MessageAvatar as gc } from "./components/chat/message/MessageAvatar.js";
84
84
  import { MessageBubble as hc } from "./components/chat/message/MessageBubble.js";
85
85
  import { MessageItem as Fc } from "./components/chat/message/MessageItem.js";
@@ -90,7 +90,7 @@ import { MobileTabBar as Bc } from "./components/layout/MobileTabBar.js";
90
90
  import { NOTES_CONTEXT_MENU_WIDTH_PX as _c, NotesContextMenu as Mc, estimateNotesContextMenuHeight as Oc } from "./components/notes/NotesContextMenu.js";
91
91
  import { NOTES_SCALE_MAX as wc, NOTES_SCALE_MIN as Nc, NOTE_BUCKET_METRICS as bc, NOTE_COLOR_TOKENS as Hc, TOPIC_ACCENT_TOKENS as Gc, TOPIC_ICON_KEYS as Uc, applyNotesEvent as Vc, centerViewportOnWorldPoint as Kc, clampScale as zc, computeBoardBounds as Xc, createDefaultNotesSnapshot as Zc, groupTrashItems as Yc, mergeBoardBounds as Qc, nextLocalZIndex as jc, normalizeNotesSnapshot as qc, noteBucketMetrics as Jc, promoteLocalItem as $c, removeSnapshotItem as el, removeSnapshotTopic as ol, removeSnapshotTrashItem as rl, replaceSnapshotItem as tl, replaceSnapshotTopic as nl, replaceSnapshotTrashItem as il, screenToWorld as al, visibleWorldRect as ml, worldToScreen as cl, zoomViewportAtPoint as ll } from "./components/notes/types.js";
92
92
  import { NOTE_COLOR_LABELS as pl, NotesAnimalIcon as fl, NotesOverlayIcon as dl, NotesTrashCanIcon as Il, TOPIC_ACCENT_LABELS as xl } from "./components/notes/notesAppearance.js";
93
- import { NotesOverlay as Cl } from "./components/notes/NotesOverlay.js";
93
+ import { NotesOverlay as Tl } from "./components/notes/NotesOverlay.js";
94
94
  import { NotificationContainer as gl, NotificationProvider as ul, createNotificationService as hl, useNotification as kl } from "./context/NotificationContext.js";
95
95
  import { Pagination as Pl } from "./components/ui/Pagination.js";
96
96
  import { Panel as El, PanelContent as Ll, PanelHeader as vl } from "./components/layout/Panel.js";
@@ -109,7 +109,7 @@ import { Stepper as ms, Wizard as cs, useWizard as ls } from "./components/ui/St
109
109
  import { StreamingCursor as ps } from "./components/chat/status/StreamingCursor.js";
110
110
  import { SvgBlock as ds } from "./components/chat/blocks/SvgBlock.js";
111
111
  import { Switch as xs } from "./components/ui/Switch.js";
112
- import { TabPanel as Cs, Tabs as Ss } from "./components/ui/Tabs.js";
112
+ import { TabPanel as Ts, Tabs as Cs } from "./components/ui/Tabs.js";
113
113
  import { Tag as us } from "./components/ui/Tag.js";
114
114
  import { TerminalWidget as ks, createTerminalWidget as Fs } from "./widgets/TerminalWidget.js";
115
115
  import { TextBlock as As } from "./components/chat/blocks/TextBlock.js";
@@ -128,8 +128,8 @@ import { WidgetResizeHandle as ep } from "./components/deck/WidgetResizeHandle.j
128
128
  import { WidgetStateProvider as rp, useCurrentWidgetId as tp, useWidgetState as np, useWidgetStateContext as ip } from "./context/WidgetStateContext.js";
129
129
  import { WidgetTypeSwitcher as mp } from "./components/deck/WidgetTypeSwitcher.js";
130
130
  import { WorkingIndicator as lp } from "./components/chat/status/WorkingIndicator.js";
131
- import { applyDragDelta as pp, applyResizeDelta as fp, getGridCellSize as dp, pixelDeltaToGridDelta as Ip, positionToGridArea as xp, snapToGrid as Tp } from "./utils/gridLayout.js";
132
- import { buildAssistantNoticeEvents as Sp, createStreamEventBuilder as gp, isStreamEvent as up } from "./components/chat/streamEvents.js";
131
+ import { applyDragDelta as pp, applyResizeDelta as fp, getGridCellSize as dp, pixelDeltaToGridDelta as Ip, positionToGridArea as xp, snapToGrid as Sp } from "./utils/gridLayout.js";
132
+ import { buildAssistantNoticeEvents as Cp, createStreamEventBuilder as gp, isStreamEvent as up } from "./components/chat/streamEvents.js";
133
133
  import { checkCollision as kp, constrainPosition as Fp, findFreePosition as Pp, hasCollision as Ap, sameGridPosition as Ep } from "./utils/gridCollision.js";
134
134
  import { clientToCanvasLocal as vp, clientToCanvasWorld as yp, createViewportFromZoomAnchor as Rp, isPointInsideCanvasRect as Bp, localToCanvasWorld as Dp } from "./components/ui/canvasGeometry.js";
135
135
  import { cn as Mp } from "./utils/cn.js";
@@ -139,21 +139,22 @@ import { configureMermaidWorker as Jp, configureSyncMermaid as $p, renderMermaid
139
139
  import { configureShikiWorker as nf, configureSyncHighlighter as af, highlightCode as mf, terminateShikiWorker as cf, useCodeHighlight as lf } from "./components/chat/hooks/useCodeHighlight.js";
140
140
  import { createSimpleContext as pf } from "./context/createSimpleContext.js";
141
141
  import { deferAfterPaint as df, deferNonBlocking as If } from "./utils/defer.js";
142
- import { duration as Tf, easing as Cf, fadeIn as Sf, listContainer as gf, listItem as uf, panelResize as hf, popIn as kf, scaleIn as Ff, sidebarVariants as Pf, slideInFromBottom as Af, slideInFromLeft as Ef, slideInFromRight as Lf, slideInFromTop as vf, springConfig as yf } from "./utils/animations.js";
142
+ import { duration as Sf, easing as Tf, fadeIn as Cf, listContainer as gf, listItem as uf, panelResize as hf, popIn as kf, scaleIn as Ff, sidebarVariants as Pf, slideInFromBottom as Af, slideInFromLeft as Ef, slideInFromRight as Lf, slideInFromTop as vf, springConfig as yf } from "./utils/animations.js";
143
143
  import { formatKeybind as Bf, isMacLikePlatform as Df, isPrimaryModKeyPressed as _f, matchKeybind as Mf, parseKeybind as Of } from "./utils/keybind.js";
144
144
  import { isTypingElement as wf, shouldIgnoreHotkeys as Nf } from "./utils/dom.js";
145
145
  import { lockBodyStyle as Hf } from "./utils/bodyStyleLock.js";
146
146
  import { registerCommandContributions as Uf, useCommandContributions as Vf } from "./hooks/useCommandContributions.js";
147
- import { useAttachments as zf } from "./components/chat/hooks/useAttachments.js";
148
- import { useAutoScroll as Zf } from "./components/chat/hooks/useAutoScroll.js";
149
- import { useDebounce as Qf } from "./hooks/useDebounce.js";
150
- import { useDeckDrag as qf } from "./hooks/useDeckDrag.js";
151
- import { useFileBrowserDropTarget as $f, useFileBrowserItemDrag as ed } from "./hooks/useFileBrowserDrag.js";
152
- import { useKeybind as rd } from "./hooks/useKeybind.js";
153
- import { useMediaQuery as nd } from "./hooks/useMediaQuery.js";
154
- import { usePersisted as ad } from "./hooks/usePersisted.js";
155
- import { useResizeObserver as cd } from "./hooks/useResizeObserver.js";
156
- import { useVirtualList as sd } from "./components/chat/hooks/useVirtualList.js";
147
+ import { startPointerSession as zf } from "./components/ui/pointerSession.js";
148
+ import { useAttachments as Zf } from "./components/chat/hooks/useAttachments.js";
149
+ import { useAutoScroll as Qf } from "./components/chat/hooks/useAutoScroll.js";
150
+ import { useDebounce as qf } from "./hooks/useDebounce.js";
151
+ import { useDeckDrag as $f } from "./hooks/useDeckDrag.js";
152
+ import { useFileBrowserDropTarget as od, useFileBrowserItemDrag as rd } from "./hooks/useFileBrowserDrag.js";
153
+ import { useKeybind as nd } from "./hooks/useKeybind.js";
154
+ import { useMediaQuery as ad } from "./hooks/useMediaQuery.js";
155
+ import { usePersisted as cd } from "./hooks/usePersisted.js";
156
+ import { useResizeObserver as sd } from "./hooks/useResizeObserver.js";
157
+ import { useVirtualList as fd } from "./components/chat/hooks/useVirtualList.js";
157
158
  export {
158
159
  F as Activity,
159
160
  wt as ActivityAppsMain,
@@ -184,7 +185,7 @@ export {
184
185
  U as BotIcon,
185
186
  In as BottomBar,
186
187
  xn as BottomBarItem,
187
- Sn as Breadcrumb,
188
+ Cn as Breadcrumb,
188
189
  un as BrokenSymlinkIcon,
189
190
  V as BugIcon,
190
191
  bn as Button,
@@ -222,8 +223,8 @@ export {
222
223
  ae as Cloud,
223
224
  me as CloudIcon,
224
225
  ce as Code,
225
- Ti as CodeBlock,
226
- Si as CodeDiffBlock,
226
+ Si as CodeBlock,
227
+ Ci as CodeDiffBlock,
227
228
  hn as CodeFileIcon,
228
229
  le as CodeIcon,
229
230
  ui as CommandPalette,
@@ -238,7 +239,7 @@ export {
238
239
  de as CopyCheckIcon,
239
240
  Ie as CopyIcon,
240
241
  xe as Cpu,
241
- Te as CreditCardIcon,
242
+ Se as CreditCardIcon,
242
243
  Ni as DECK_GRID_CONFIG,
243
244
  Un as DEFAULT_CANVAS_WHEEL_INTERACTIVE_SELECTOR,
244
245
  Gi as DEFAULT_FLOE_CONFIG,
@@ -251,13 +252,13 @@ export {
251
252
  Qi as DIALOG_SURFACE_HOST_ATTR,
252
253
  nn as DataBarChart,
253
254
  an as DataPieChart,
254
- Ce as Database,
255
- Se as DatabaseIcon,
255
+ Te as Database,
256
+ Ce as DatabaseIcon,
256
257
  ca as DeckCell,
257
258
  sa as DeckContextMenu,
258
259
  fa as DeckGrid,
259
260
  Ia as DeckProvider,
260
- Sa as DeckTopBar,
261
+ Ca as DeckTopBar,
261
262
  Mi as Dialog,
262
263
  ua as DirectoryInput,
263
264
  ka as DirectoryPicker,
@@ -296,7 +297,7 @@ export {
296
297
  xm as FileSavePicker,
297
298
  Be as FileText,
298
299
  De as Files,
299
- Cm as FilesSidebarWidget,
300
+ Tm as FilesSidebarWidget,
300
301
  _e as Filter,
301
302
  Me as FilterIcon,
302
303
  Oe as FireIcon,
@@ -370,10 +371,10 @@ export {
370
371
  fo as Link,
371
372
  Io as LinkIcon,
372
373
  xo as Loader2,
373
- To as LoadingIcon,
374
+ So as LoadingIcon,
374
375
  pc as LoadingOverlay,
375
- Co as Lock,
376
- So as LockIcon,
376
+ To as Lock,
377
+ Co as LockIcon,
377
378
  go as MagicIcon,
378
379
  uo as Mail,
379
380
  ho as MailIcon,
@@ -382,7 +383,7 @@ export {
382
383
  Fo as Maximize,
383
384
  Po as Menu,
384
385
  xc as MermaidBlock,
385
- Cc as MessageActions,
386
+ Tc as MessageActions,
386
387
  gc as MessageAvatar,
387
388
  hc as MessageBubble,
388
389
  Ao as MessageIcon,
@@ -414,7 +415,7 @@ export {
414
415
  ba as NoteBlock,
415
416
  fl as NotesAnimalIcon,
416
417
  Mc as NotesContextMenu,
417
- Cl as NotesOverlay,
418
+ Tl as NotesOverlay,
418
419
  dl as NotesOverlayIcon,
419
420
  Il as NotesTrashCanIcon,
420
421
  gl as NotificationContainer,
@@ -459,7 +460,7 @@ export {
459
460
  mr as SaveIcon,
460
461
  cr as Search,
461
462
  lr as SearchIcon,
462
- Sm as SearchSidebarWidget,
463
+ Cm as SearchSidebarWidget,
463
464
  Hl as SegmentedControl,
464
465
  di as SegmentedProgress,
465
466
  Ma as Select,
@@ -473,8 +474,8 @@ export {
473
474
  Kl as ShellBlock,
474
475
  Rn as ShellScriptFileIcon,
475
476
  xr as Shield,
476
- Tr as ShieldCheck,
477
- Cr as ShieldIcon,
477
+ Sr as ShieldCheck,
478
+ Tr as ShieldIcon,
478
479
  um as ShowcaseSidebarWidget,
479
480
  Xl as Sidebar,
480
481
  Zl as SidebarContent,
@@ -488,11 +489,11 @@ export {
488
489
  rs as SkeletonList,
489
490
  ts as SkeletonText,
490
491
  is as SnakeLoader,
491
- Sr as SparkleIcon,
492
+ Cr as SparkleIcon,
492
493
  gr as Sparkles,
493
494
  ur as Star,
494
495
  hr as StarIcon,
495
- Tn as StatusIndicator,
496
+ Sn as StatusIndicator,
496
497
  ms as Stepper,
497
498
  Ii as StepsProgress,
498
499
  kr as Stop,
@@ -510,8 +511,8 @@ export {
510
511
  xl as TOPIC_ACCENT_LABELS,
511
512
  Gc as TOPIC_ACCENT_TOKENS,
512
513
  Uc as TOPIC_ICON_KEYS,
513
- Cs as TabPanel,
514
- Ss as Tabs,
514
+ Ts as TabPanel,
515
+ Cs as Tabs,
515
516
  us as Tag,
516
517
  Er as TagIcon,
517
518
  Lr as TargetIcon,
@@ -574,7 +575,7 @@ export {
574
575
  Pt as applyTerminalSuggestion,
575
576
  n as applyTheme,
576
577
  At as autocompleteTerminalInput,
577
- Sp as buildAssistantNoticeEvents,
578
+ Cp as buildAssistantNoticeEvents,
578
579
  i as builtInThemes,
579
580
  Kc as centerViewportOnWorldPoint,
580
581
  kp as checkCollision,
@@ -615,19 +616,19 @@ export {
615
616
  If as deferNonBlocking,
616
617
  ct as deleteTerminalTextBackward,
617
618
  xt as dispatchTerminalSessionKey,
618
- Tf as duration,
619
- Cf as easing,
619
+ Sf as duration,
620
+ Tf as easing,
620
621
  $i as ensureSurfacePortalInteractionTracking,
621
622
  Oc as estimateNotesContextMenuHeight,
622
- Sf as fadeIn,
623
+ Cf as fadeIn,
623
624
  Pp as findFreePosition,
624
625
  f as floeColorTokenCategories,
625
626
  d as floeDesignTokens,
626
627
  I as floeFontFamilyTokens,
627
628
  x as floeMotionTokens,
628
- T as floeRadiusTokens,
629
- C as floeSharedCssVariables,
630
- S as floeSpacingTokens,
629
+ S as floeRadiusTokens,
630
+ T as floeSharedCssVariables,
631
+ C as floeSpacingTokens,
631
632
  g as floeThemeColorVariables,
632
633
  u as floeTypographyTokens,
633
634
  Bf as formatKeybind,
@@ -636,8 +637,8 @@ export {
636
637
  dp as getGridCellSize,
637
638
  bi as getGridConfigFromElement,
638
639
  a as getSystemTheme,
639
- Tt as getTerminalPromptPreview,
640
- Ct as getTerminalSessionSuggestions,
640
+ St as getTerminalPromptPreview,
641
+ Tt as getTerminalSessionSuggestions,
641
642
  vt as getTerminalSuggestions,
642
643
  Yc as groupTrashItems,
643
644
  Ap as hasCollision,
@@ -702,16 +703,17 @@ export {
702
703
  ya as sanitizeDisplayMode,
703
704
  Ff as scaleIn,
704
705
  al as screenToWorld,
705
- St as setTerminalSessionInputValue,
706
+ Ct as setTerminalSessionInputValue,
706
707
  Nf as shouldIgnoreHotkeys,
707
708
  Pf as sidebarVariants,
708
709
  Af as slideInFromBottom,
709
710
  Ef as slideInFromLeft,
710
711
  Lf as slideInFromRight,
711
712
  vf as slideInFromTop,
712
- Tp as snapToGrid,
713
+ Sp as snapToGrid,
713
714
  yf as springConfig,
714
715
  Xa as startHotInteraction,
716
+ zf as startPointerSession,
715
717
  gt as submitTerminalSession,
716
718
  s as syncThemeTokenOverrides,
717
719
  Bt as terminalCommandTokenSuggestionProvider,
@@ -723,8 +725,8 @@ export {
723
725
  Qp as terminateMarkdownWorker,
724
726
  of as terminateMermaidWorker,
725
727
  cf as terminateShikiWorker,
726
- zf as useAttachments,
727
- Zf as useAutoScroll,
728
+ Zf as useAttachments,
729
+ Qf as useAutoScroll,
728
730
  ti as useChatContext,
729
731
  lf as useCodeHighlight,
730
732
  Pi as useCommand,
@@ -732,27 +734,27 @@ export {
732
734
  yi as useComponentContextFactory,
733
735
  Ri as useComponentRegistry,
734
736
  tp as useCurrentWidgetId,
735
- Qf as useDebounce,
736
- Ta as useDeck,
737
- qf as useDeckDrag,
737
+ qf as useDebounce,
738
+ Sa as useDeck,
739
+ $f as useDeckDrag,
738
740
  im as useFileBrowser,
739
741
  rm as useFileBrowserDrag,
740
- $f as useFileBrowserDropTarget,
741
- ed as useFileBrowserItemDrag,
742
+ od as useFileBrowserDropTarget,
743
+ rd as useFileBrowserItemDrag,
742
744
  Vi as useFloeConfig,
743
745
  bm as useFormSubmitting,
744
- rd as useKeybind,
746
+ nd as useKeybind,
745
747
  mc as useLayout,
746
- nd as useMediaQuery,
748
+ ad as useMediaQuery,
747
749
  rf as useMermaid,
748
750
  kl as useNotification,
749
751
  Bi as useOptionalComponentRegistry,
750
- ad as usePersisted,
751
- cd as useResizeObserver,
752
+ cd as usePersisted,
753
+ sd as useResizeObserver,
752
754
  Ki as useResolvedFloeConfig,
753
755
  ys as useTheme,
754
756
  Us as useViewActivation,
755
- sd as useVirtualList,
757
+ fd as useVirtualList,
756
758
  Js as useWidgetRegistry,
757
759
  np as useWidgetState,
758
760
  ip as useWidgetStateContext,