@parhelia/core 0.1.12926 → 0.1.12927

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/close-icon.d.ts +6 -1
  2. package/dist/components/ui/close-icon.js +12 -7
  3. package/dist/components/ui/close-icon.js.map +1 -1
  4. package/dist/editor/ai/terminal/components/TodoListPanel.js +21 -48
  5. package/dist/editor/ai/terminal/components/TodoListPanel.js.map +1 -1
  6. package/dist/editor/bridge/protocol.d.ts +6 -0
  7. package/dist/editor/bridge/protocol.js.map +1 -1
  8. package/dist/editor/client/errorToast.js +21 -5
  9. package/dist/editor/client/errorToast.js.map +1 -1
  10. package/dist/editor/menubar/FavoritesControls.js +2 -2
  11. package/dist/editor/menubar/FavoritesControls.js.map +1 -1
  12. package/dist/editor/notifications/NotificationCenter.js +4 -3
  13. package/dist/editor/notifications/NotificationCenter.js.map +1 -1
  14. package/dist/editor/notifications/WatchButton.js +6 -31
  15. package/dist/editor/notifications/WatchButton.js.map +1 -1
  16. package/dist/editor/notifications/watchEventOptions.js +3 -3
  17. package/dist/editor/notifications/watchEventOptions.js.map +1 -1
  18. package/dist/editor/page-viewer/MiniMap.d.ts +12 -1
  19. package/dist/editor/page-viewer/MiniMap.js +61 -22
  20. package/dist/editor/page-viewer/MiniMap.js.map +1 -1
  21. package/dist/editor/page-viewer/PageViewerFrame.js +23 -12
  22. package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -1
  23. package/dist/editor/reviews/Comments.js +12 -3
  24. package/dist/editor/reviews/Comments.js.map +1 -1
  25. package/dist/editor/settings/panels/CreateAgentProfileDialog.js +3 -2
  26. package/dist/editor/settings/panels/CreateAgentProfileDialog.js.map +1 -1
  27. package/dist/editor/sidebar/SidebarPanel.js +1 -1
  28. package/dist/editor/sidebar/SidebarPanel.js.map +1 -1
  29. package/dist/revision.d.ts +2 -2
  30. package/dist/revision.js +2 -2
  31. package/package.json +1 -1
@@ -3,5 +3,10 @@ export type CloseIconProps = {
3
3
  size?: CloseIconSize;
4
4
  className?: string;
5
5
  };
6
- /** Standard close X icon - thin stroke, muted currentColor. */
6
+ /**
7
+ * Standard close X icon - thin stroke, muted currentColor.
8
+ * Sized via the lucide `size` prop (not CSS classes) so absoluteStrokeWidth
9
+ * can keep the stroke at exactly one device pixel — sub-pixel strokes
10
+ * anti-alias into blur.
11
+ */
7
12
  export declare function CloseIcon({ size, className }: CloseIconProps): import("react/jsx-runtime").JSX.Element;
@@ -1,14 +1,19 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { X } from "lucide-react";
3
3
  import { cn } from "../../lib/utils";
4
- const SIZE_CLASSES = {
5
- xs: "h-5 w-5",
6
- sm: "h-5 w-5",
7
- md: "h-5 w-5",
8
- lg: "h-5 w-5",
4
+ const SIZE_PX = {
5
+ xs: 20,
6
+ sm: 20,
7
+ md: 20,
8
+ lg: 20,
9
9
  };
10
- /** Standard close X icon - thin stroke, muted currentColor. */
10
+ /**
11
+ * Standard close X icon - thin stroke, muted currentColor.
12
+ * Sized via the lucide `size` prop (not CSS classes) so absoluteStrokeWidth
13
+ * can keep the stroke at exactly one device pixel — sub-pixel strokes
14
+ * anti-alias into blur.
15
+ */
11
16
  export function CloseIcon({ size = "md", className }) {
12
- return (_jsx(X, { className: cn(SIZE_CLASSES[size], "text-current", className), strokeWidth: 1 }));
17
+ return (_jsx(X, { size: SIZE_PX[size], strokeWidth: 1, absoluteStrokeWidth: true, className: cn("text-current", className) }));
13
18
  }
14
19
  //# sourceMappingURL=close-icon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"close-icon.js","sourceRoot":"","sources":["../../../src/components/ui/close-icon.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,cAAc,CAAC;AACjC,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAIrC,MAAM,YAAY,GAAkC;IAClD,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,SAAS;CACd,CAAC;AAOF,+DAA+D;AAC/D,MAAM,UAAU,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,SAAS,EAAkB;IAClE,OAAO,CACL,KAAC,CAAC,IACA,SAAS,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,SAAS,CAAC,EAC5D,WAAW,EAAE,CAAC,GACd,CACH,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"close-icon.js","sourceRoot":"","sources":["../../../src/components/ui/close-icon.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,cAAc,CAAC;AACjC,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAIrC,MAAM,OAAO,GAAkC;IAC7C,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;IACN,EAAE,EAAE,EAAE;CACP,CAAC;AAOF;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,SAAS,EAAkB;IAClE,OAAO,CACL,KAAC,CAAC,IACA,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,EACnB,WAAW,EAAE,CAAC,EACd,mBAAmB,QACnB,SAAS,EAAE,EAAE,CAAC,cAAc,EAAE,SAAS,CAAC,GACxC,CACH,CAAC;AACJ,CAAC"}
@@ -1,42 +1,10 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useState } from "react";
3
- import { ChevronDown, ChevronUp, ListTodo, Loader2 } from "lucide-react";
4
- import { extractTodosFromMessages } from "../../agentTodoExtraction";
3
+ import { ArrowRight, Check, ChevronDown, ChevronUp, ListTodo, Loader2, X, } from "lucide-react";
4
+ import { computeAgentTodos } from "../../agentTodoExtraction";
5
5
  export const TodoListPanel = ({ messages, agentMetadata, headerless, }) => {
6
6
  const [isExpanded, setIsExpanded] = useState(true);
7
- // Server sends additionalData.todoList directly via contextChanged status
8
- const metadataTodos = (() => {
9
- try {
10
- const todoList = agentMetadata?.additionalData?.todoList;
11
- if (todoList?.items && Array.isArray(todoList.items)) {
12
- const rawItems = todoList.items
13
- .map((item, idx) => ({
14
- id: item.id || `metadata-${idx}`,
15
- title: item.title || item.text || item.label || String(item.task || ""),
16
- status: item.status || "pending",
17
- instructions: item.instructions || item.note || item.description,
18
- agentProfileId: item.agentProfileId,
19
- messageId: undefined,
20
- sourceTitle: todoList.title,
21
- }))
22
- .filter((item) => item.title);
23
- const todoMap = new Map();
24
- for (const todo of rawItems) {
25
- const key = todo.id || todo.title;
26
- todoMap.set(key, todo);
27
- }
28
- return Array.from(todoMap.values());
29
- }
30
- }
31
- catch (e) {
32
- console.error("📋 Error extracting todos from metadata:", e);
33
- }
34
- return null;
35
- })();
36
- const usingMetadata = metadataTodos && metadataTodos.length > 0;
37
- const todos = usingMetadata
38
- ? metadataTodos
39
- : extractTodosFromMessages(messages);
7
+ const todos = computeAgentTodos(messages, agentMetadata);
40
8
  const isUpdating = messages.some((msg) => {
41
9
  if (msg.role !== "assistant" || msg.isCompleted)
42
10
  return false;
@@ -80,38 +48,43 @@ export const TodoListPanel = ({ messages, agentMetadata, headerless, }) => {
80
48
  return null;
81
49
  const completedCount = todos.filter((t) => t.status === "completed").length;
82
50
  const totalCount = todos.length;
51
+ const listTitle = todos.find((t) => t.sourceTitle)?.sourceTitle || "Todo list";
52
+ const progressLabel = `${completedCount} of ${totalCount} complete`;
83
53
  const getStatusIcon = (status) => {
84
54
  switch (status) {
85
55
  case "completed":
86
- return (_jsx("div", { className: "border-feedback-green bg-feedback-green flex h-4 w-4 items-center justify-center rounded border-2", children: _jsx("svg", { className: "h-3 w-3 text-white", fill: "none", strokeWidth: 2, stroke: "currentColor", viewBox: "0 0 24 24", children: _jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M5 13l4 4L19 7" }) }) }));
56
+ return (_jsx("div", { className: "bg-neutral-grey-100 flex h-4 w-4 items-center justify-center rounded-full", children: _jsx(Check, { className: "h-2.5 w-2.5 text-white", strokeWidth: 3 }) }));
87
57
  case "in_progress":
88
- return (_jsx("div", { className: "border-feedback-blue bg-feedback-blue flex h-4 w-4 items-center justify-center rounded border-2", children: _jsx(Loader2, { className: "h-3 w-3 animate-spin text-white", strokeWidth: 2 }) }));
58
+ return (_jsx("div", { className: "border-neutral-grey-100 text-neutral-grey-100 flex h-4 w-4 items-center justify-center rounded-full border-[1.5px]", children: _jsx(ArrowRight, { className: "h-2.5 w-2.5", strokeWidth: 2.5 }) }));
89
59
  case "cancelled":
90
- return (_jsx("div", { className: "border-border-default bg-neutral-grey-50 flex h-4 w-4 items-center justify-center rounded border-2", children: _jsx("svg", { className: "h-3 w-3 text-white", fill: "none", strokeWidth: 2, stroke: "currentColor", viewBox: "0 0 24 24", children: _jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M6 18L18 6M6 6l12 12" }) }) }));
60
+ return (_jsx("div", { className: "border-neutral-grey-15 text-neutral-grey-50 flex h-4 w-4 items-center justify-center rounded-full border-[1.5px]", children: _jsx(X, { className: "h-2.5 w-2.5", strokeWidth: 2.5 }) }));
91
61
  default:
92
- return (_jsx("div", { className: "border-border-default h-4 w-4 rounded border-2" }));
62
+ return (_jsx("div", { className: "border-neutral-grey-15 h-4 w-4 rounded-full border-[1.5px]" }));
93
63
  }
94
64
  };
95
65
  const getTextClass = (status) => {
96
66
  switch (status) {
97
- case "completed":
98
- return "text-neutral-grey-50 line-through";
99
67
  case "cancelled":
100
68
  return "text-neutral-grey-50 line-through";
69
+ case "completed":
101
70
  case "in_progress":
102
- return "text-feedback-blue font-medium";
103
- default:
104
71
  return "text-neutral-grey-100";
72
+ default:
73
+ return "text-neutral-grey-50";
105
74
  }
106
75
  };
107
- const bodyContent = (_jsxs("div", { className: "max-h-64 overflow-y-auto px-4 pt-2 pb-3", "data-testid": "todo-list-panel", "data-completed-count": completedCount, "data-total-count": totalCount, children: [todos.length > 0 && (_jsx("div", { className: "space-y-1.5", children: todos.map((todo, idx) => (_jsxs("div", { className: "flex items-start gap-2 rounded bg-white p-2 text-[11px]", "data-testid": "todo-list-item", "data-status": todo.status || "pending", children: [_jsx("div", { className: "shrink-0 pt-0.5", children: getStatusIcon(todo.status) }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("div", { className: getTextClass(todo.status), children: todo.title }), todo.instructions && (_jsx("div", { className: "text-neutral-grey-50 mt-0.5 text-[11px]", children: todo.instructions }))] })] }, todo.id || `${todo.messageId}-${idx}`))) })), isUpdating && (_jsxs("div", { className: `flex items-center gap-2 rounded px-3 py-2 text-[11px] ${todos.length > 0
108
- ? "bg-highlight-10 text-highlight-100 mt-2"
109
- : "text-neutral-grey-50 justify-center bg-white"}`, children: [_jsx(Loader2, { className: "h-3 w-3 animate-spin", strokeWidth: 1 }), _jsx("span", { children: todos.length > 0
76
+ // In the popover (headerless) the outer wrapper already caps height at
77
+ // 60vh; only the docked/tab variant needs its own scroll clamp.
78
+ const bodyContent = (_jsxs("div", { className: headerless
79
+ ? "px-4 pt-2 pb-3"
80
+ : "max-h-64 overflow-y-auto px-4 pt-2 pb-3", "data-testid": "todo-list-panel", "data-completed-count": completedCount, "data-total-count": totalCount, children: [todos.length > 0 && (_jsx("div", { className: "space-y-2.5", children: todos.map((todo, idx) => (_jsxs("div", { className: "flex items-start gap-2.5 text-xs", "data-testid": "todo-list-item", "data-status": todo.status || "pending", children: [_jsx("div", { className: "shrink-0", children: getStatusIcon(todo.status) }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("div", { className: getTextClass(todo.status), children: todo.title }), todo.instructions && (_jsx("div", { className: "text-neutral-grey-50 mt-0.5 text-[11px]", children: todo.instructions }))] })] }, todo.id || `${todo.messageId}-${idx}`))) })), isUpdating && (_jsxs("div", { className: `flex items-center gap-2 rounded px-3 py-2 text-[11px] ${todos.length > 0
81
+ ? "bg-highlight-10 text-highlight-100 mt-2.5"
82
+ : "text-neutral-grey-50 justify-center"}`, children: [_jsx(Loader2, { className: "h-3 w-3 animate-spin", strokeWidth: 1 }), _jsx("span", { children: todos.length > 0
110
83
  ? "Updating todo list..."
111
84
  : "Loading todo list..." })] }))] }));
112
85
  if (headerless) {
113
- return _jsx("div", { className: "bg-neutral-grey-5", children: bodyContent });
86
+ return (_jsxs("div", { children: [_jsxs("div", { className: "flex items-center gap-2 px-4 pt-3", children: [_jsx("span", { className: "text-neutral-grey-100 text-xs font-semibold", children: listTitle }), _jsx("span", { className: "text-neutral-grey-50 text-xs", children: progressLabel })] }), bodyContent] }));
114
87
  }
115
- return (_jsxs("div", { className: "border-border-default bg-neutral-grey-5 border-t", children: [_jsxs("button", { onClick: () => setIsExpanded(!isExpanded), className: "hover:bg-neutral-grey-5 flex w-full cursor-pointer items-center justify-between px-4 py-2 text-left transition-colors", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx(ListTodo, { className: "text-neutral-grey-50 h-4 w-4", strokeWidth: 1 }), _jsx("span", { className: "text-neutral-grey-100 text-[11px] font-medium", children: "Todo List" }), isUpdating ? (_jsxs("span", { className: "text-highlight-100 flex items-center gap-1 text-[11px]", children: [_jsx(Loader2, { className: "h-3 w-3 animate-spin", strokeWidth: 1 }), "Updating..."] })) : (_jsxs("span", { className: "text-neutral-grey-50 text-[11px]", children: [completedCount, "/", totalCount, " completed"] }))] }), isExpanded ? (_jsx(ChevronUp, { className: "text-neutral-grey-50 h-4 w-4", strokeWidth: 1 })) : (_jsx(ChevronDown, { className: "text-neutral-grey-50 h-4 w-4", strokeWidth: 1 }))] }), isExpanded && bodyContent] }));
88
+ return (_jsxs("div", { className: "border-border-default border-t bg-white", children: [_jsxs("button", { onClick: () => setIsExpanded(!isExpanded), className: "hover:bg-neutral-grey-5 flex w-full cursor-pointer items-center justify-between px-4 py-2 text-left transition-colors", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx(ListTodo, { className: "text-neutral-grey-100 h-4 w-4", strokeWidth: 1.5 }), _jsx("span", { className: "text-neutral-grey-100 text-xs font-semibold", children: listTitle }), isUpdating ? (_jsxs("span", { className: "text-highlight-100 flex items-center gap-1 text-xs", children: [_jsx(Loader2, { className: "h-3 w-3 animate-spin", strokeWidth: 1 }), "Updating..."] })) : (_jsx("span", { className: "text-neutral-grey-50 text-xs", children: progressLabel }))] }), isExpanded ? (_jsx(ChevronUp, { className: "text-neutral-grey-50 h-4 w-4", strokeWidth: 1.5 })) : (_jsx(ChevronDown, { className: "text-neutral-grey-50 h-4 w-4", strokeWidth: 1.5 }))] }), isExpanded && bodyContent] }));
116
89
  };
117
90
  //# sourceMappingURL=TodoListPanel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TodoListPanel.js","sourceRoot":"","sources":["../../../../../src/editor/ai/terminal/components/TodoListPanel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TodoListPanel.js","sourceRoot":"","sources":["../../../../../src/editor/ai/terminal/components/TodoListPanel.tsx"],"names":[],"mappings":"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"}
@@ -302,6 +302,12 @@ export type RefreshCompletedEventPayload = {
302
302
  revision?: string;
303
303
  structure?: SerializablePageStructure;
304
304
  geometry?: BridgeGeometrySnapshot;
305
+ /**
306
+ * True when the host replayed a scroll command that arrived while the
307
+ * refresh was in flight; the editor must then skip its own scroll restore
308
+ * so it does not clobber that intent.
309
+ */
310
+ scrollIntentApplied?: boolean;
305
311
  };
306
312
  export type RenderErrorEventPayload = {
307
313
  message: string;
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../src/editor/bridge/protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../src/editor/bridge/protocol.ts"],"names":[],"mappings":"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"}
@@ -48,20 +48,36 @@ export function normalizeErrorToastPayload(error) {
48
48
  }
49
49
  return { title: DEFAULT_ERROR_TITLE };
50
50
  }
51
- function ExpandableErrorDetails({ details }) {
51
+ function ExpandableErrorDetails({ details, onToggle, }) {
52
52
  const [expanded, setExpanded] = useState(false);
53
53
  const detailsId = useId();
54
54
  return (_jsxs("div", { className: "mt-1 w-full text-xs", children: [_jsxs("button", { type: "button", "aria-expanded": expanded, "aria-controls": detailsId, className: "text-neutral-grey-50 hover:text-neutral-grey-100 focus-visible:ring-ring/50 inline-flex items-center gap-1 rounded-sm py-0.5 font-medium outline-none focus-visible:ring-2", onClick: (event) => {
55
55
  event.preventDefault();
56
56
  event.stopPropagation();
57
57
  setExpanded((current) => !current);
58
+ onToggle?.();
58
59
  }, children: [_jsx(ChevronDown, { className: cn("h-3 w-3 transition-transform duration-200", expanded && "rotate-180"), strokeWidth: 1.75 }), expanded ? "Hide details" : "Show details"] }), expanded && (_jsx("pre", { id: detailsId, className: "border-border-default bg-neutral-grey-5 text-neutral-grey-100 mt-2 max-h-36 overflow-auto rounded border p-2 font-mono text-[11px] leading-relaxed whitespace-pre-wrap break-words", children: details }))] }));
59
60
  }
60
61
  export function showExpandableErrorToast(error) {
61
62
  const normalized = normalizeErrorToastPayload(error);
62
- toast.error(normalized.title, {
63
- description: normalized.details ? (_jsx(ExpandableErrorDetails, { details: normalized.details })) : undefined,
64
- duration: normalized.details ? 10000 : undefined,
65
- });
63
+ const details = normalized.details;
64
+ if (!details) {
65
+ toast.error(normalized.title);
66
+ return;
67
+ }
68
+ // Sonner measures the toast once and pins it to that height while hovered
69
+ // (height: var(--initial-height)), so a toast that grew after toggling the
70
+ // details would oscillate between the two heights under the cursor.
71
+ // Re-issuing the toast with the same id on every toggle swaps in a new
72
+ // description element, which is what makes sonner re-measure.
73
+ let toastId;
74
+ const show = () => {
75
+ toastId = toast.error(normalized.title, {
76
+ id: toastId,
77
+ description: _jsx(ExpandableErrorDetails, { details: details, onToggle: show }),
78
+ duration: 10000,
79
+ });
80
+ };
81
+ show();
66
82
  }
67
83
  //# sourceMappingURL=errorToast.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errorToast.js","sourceRoot":"","sources":["../../../src/editor/client/errorToast.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errorToast.js","sourceRoot":"","sources":["../../../src/editor/client/errorToast.tsx"],"names":[],"mappings":"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"}
@@ -230,7 +230,7 @@ export function FavoritesControls({ itemDescriptor, editContext, }) {
230
230
  });
231
231
  }
232
232
  }, [editingFavorite]);
233
- return (_jsxs("div", { className: "group flex items-center", children: [_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx(Button, { variant: "ghost", size: "sm", onClick: (e) => toggleFavorite(e), disabled: !itemDescriptor, className: "h-8 w-7", "data-testid": "toggle-favorite-button", children: isFavorite ? (_jsx(Star, { "data-testid": "favorite-star-filled", className: "fill-highlight-100 text-highlight-100 h-4 w-4", strokeWidth: 1 })) : (_jsx(Star, { "data-testid": "favorite-star-outline", className: "text-neutral-grey-50 h-4 w-4", strokeWidth: 1 })) }) }), _jsx(TooltipContent, { children: !itemDescriptor
233
+ return (_jsxs("div", { className: "group flex items-center", children: [_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx(Button, { variant: "ghost", size: "sm", onClick: (e) => toggleFavorite(e), disabled: !itemDescriptor, className: "h-8 w-7", "data-testid": "toggle-favorite-button", children: isFavorite ? (_jsx(Star, { "data-testid": "favorite-star-filled", className: "fill-highlight-100 text-highlight-100", size: 16, strokeWidth: 1, absoluteStrokeWidth: true })) : (_jsx(Star, { "data-testid": "favorite-star-outline", className: "text-neutral-grey-50", size: 16, strokeWidth: 1, absoluteStrokeWidth: true })) }) }), _jsx(TooltipContent, { children: !itemDescriptor
234
234
  ? "No item selected"
235
235
  : isFavorite
236
236
  ? "Remove from favorites"
@@ -242,7 +242,7 @@ export function FavoritesControls({ itemDescriptor, editContext, }) {
242
242
  return;
243
243
  }
244
244
  setDropdownOpen(open);
245
- }, children: [_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx(DropdownMenuTrigger, { asChild: true, children: _jsx(Button, { variant: "ghost", size: "sm", className: "h-8 w-5 p-0", "data-testid": "favorites-dropdown-trigger", children: _jsx(ChevronDown, { className: "h-3 w-3", strokeWidth: 1 }) }) }) }), _jsx(TooltipContent, { children: "View favorites" })] }), _jsxs(DropdownMenuContent, { align: "start", className: "w-80 text-xs", "data-testid": "favorites-dropdown-content", children: [_jsx("div", { className: "px-2 py-1.5 text-xs font-medium", children: "Favorites" }), _jsx(DropdownMenuSeparator, {}), favoritesLoading ? (_jsx("div", { className: "text-neutral-grey-50 px-2 py-4 text-center text-xs", children: "Loading favorites..." })) : favorites.length === 0 ? (_jsx("div", { className: "text-neutral-grey-50 px-2 py-4 text-center text-xs", children: "No favorites yet" })) : (_jsx("div", { className: "max-h-60 overflow-auto", children: favorites.map((favorite, index) => {
245
+ }, children: [_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx(DropdownMenuTrigger, { asChild: true, children: _jsx(Button, { variant: "ghost", size: "sm", className: "h-8 w-5 p-0", "data-testid": "favorites-dropdown-trigger", children: _jsx(ChevronDown, { size: 16, strokeWidth: 1, absoluteStrokeWidth: true }) }) }) }), _jsx(TooltipContent, { children: "View favorites" })] }), _jsxs(DropdownMenuContent, { align: "start", className: "w-80 text-xs", "data-testid": "favorites-dropdown-content", children: [_jsx("div", { className: "px-2 py-1.5 text-xs font-medium", children: "Favorites" }), _jsx(DropdownMenuSeparator, {}), favoritesLoading ? (_jsx("div", { className: "text-neutral-grey-50 px-2 py-4 text-center text-xs", children: "Loading favorites..." })) : favorites.length === 0 ? (_jsx("div", { className: "text-neutral-grey-50 px-2 py-4 text-center text-xs", children: "No favorites yet" })) : (_jsx("div", { className: "max-h-60 overflow-auto", children: favorites.map((favorite, index) => {
246
246
  const itemKey = `${favorite.itemId}-${favorite.language}`;
247
247
  const item = favoriteItems.get(itemKey);
248
248
  const isEditing = editingFavorite === itemKey;
@@ -1 +1 @@
1
- {"version":3,"file":"FavoritesControls.js","sourceRoot":"","sources":["../../../src/editor/menubar/FavoritesControls.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FavoritesControls.js","sourceRoot":"","sources":["../../../src/editor/menubar/FavoritesControls.tsx"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { Bell, CheckCheck, Inbox, Loader2 } from "lucide-react";
2
+ import { Bell, CheckCheck, CircleCheck, Ellipsis, Inbox, Loader2, } from "lucide-react";
3
3
  import { useState } from "react";
4
4
  import { useEditContext } from "../client/editContext";
5
5
  import { Button } from "../../components/ui/button";
6
6
  import { CountBadge } from "../../components/ui/badge";
7
+ import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, } from "../../components/ui/dropdown-menu";
7
8
  import { Popover, PopoverContent, PopoverTrigger, } from "../../components/ui/popover";
8
9
  import { Tooltip, TooltipContent, TooltipTrigger, } from "../../components/ui/tooltip";
9
10
  import { cn } from "../../lib/utils";
@@ -55,9 +56,9 @@ export function NotificationCenter(props) {
55
56
  }
56
57
  };
57
58
  return (_jsxs(Popover, { open: open, onOpenChange: setOpen, children: [_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx(PopoverTrigger, { asChild: true, children: _jsxs(Button, { size: "iconSm", variant: "ghost", className: cn("relative", isWatchingTarget &&
58
- "bg-highlight-10 text-accent-foreground hover:bg-highlight-10/90"), "aria-label": triggerTooltip, "data-testid": "notification-center-trigger", children: [_jsx(Bell, { className: "h-4 w-4" }), unreadCount > 0 && (_jsx("span", { className: "bg-feedback-red absolute -top-1 -right-1 min-w-[16px] rounded-full px-1 text-center text-[10px] leading-4 font-medium text-white", children: unreadCount > 99 ? "99+" : unreadCount }))] }) }) }), _jsx(TooltipContent, { children: triggerTooltip })] }), _jsxs(PopoverContent, { align: "end", className: "w-[380px] overflow-hidden p-0 shadow-lg", children: [_jsxs("div", { className: "flex items-center justify-between gap-2 border-b px-3 py-2", children: [_jsxs("div", { className: "flex min-w-0 items-center gap-2", children: [_jsx("span", { className: "text-neutral-grey-100 text-sm font-medium", children: "Notifications" }), unreadCount > 0 ? (_jsx(CountBadge, { children: unreadCount > 99 ? "99+" : unreadCount })) : null] }), _jsxs("div", { className: "flex shrink-0 items-center gap-1.5", children: [_jsx("div", { className: "bg-neutral-grey-5 flex items-center gap-0.5 rounded-md p-0.5", "data-testid": "notification-center-toggle-filter", children: filterOptions.map((option) => (_jsx("button", { type: "button", onClick: () => setShowAll(option.showAll), className: `text-2xs rounded px-2 py-0.5 font-medium transition-colors ${showAll === option.showAll
59
+ "bg-highlight-10 text-accent-foreground hover:bg-highlight-10/90"), "aria-label": triggerTooltip, "data-testid": "notification-center-trigger", children: [_jsx(Bell, { className: "h-4 w-4" }), unreadCount > 0 && (_jsx("span", { className: "bg-feedback-red absolute -top-1 -right-1 min-w-[16px] rounded-full px-1 text-center text-[10px] leading-4 font-medium text-white", children: unreadCount > 99 ? "99+" : unreadCount }))] }) }) }), _jsx(TooltipContent, { children: triggerTooltip })] }), _jsxs(PopoverContent, { align: "end", className: "w-[400px] overflow-hidden rounded-xl p-0 shadow-lg", children: [_jsxs("div", { className: "flex items-center justify-between gap-2 border-b px-4 py-3", children: [_jsxs("div", { className: "flex min-w-0 items-center gap-2", children: [_jsx("span", { className: "text-neutral-grey-100 text-base font-semibold", children: "Notifications" }), unreadCount > 0 ? (_jsx(CountBadge, { children: unreadCount > 99 ? "99+" : unreadCount })) : null] }), _jsxs("div", { className: "flex shrink-0 items-center gap-1", children: [_jsx("div", { className: "bg-neutral-grey-5 flex items-center gap-0.5 rounded-lg p-0.5", "data-testid": "notification-center-toggle-filter", children: filterOptions.map((option) => (_jsx("button", { type: "button", onClick: () => setShowAll(option.showAll), className: `rounded-md px-2.5 py-1 text-xs font-medium transition-colors ${showAll === option.showAll
59
60
  ? "text-neutral-grey-100 bg-white shadow-sm"
60
- : "text-neutral-grey-50 hover:text-neutral-grey-100"}`, "data-testid": `notification-center-filter-${option.label.toLowerCase()}`, children: option.label }, option.label))) }), _jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx(Button, { size: "iconXs", variant: "ghost", className: "text-neutral-grey-50 hover:text-neutral-grey-100 size-6", disabled: unreadCount === 0, onClick: () => void markAllRead(), "aria-label": "Mark all as read", "data-testid": "notification-center-mark-all-read", children: _jsx(CheckCheck, { className: "size-3.5" }) }) }), _jsx(TooltipContent, { children: "Mark all as read" })] })] })] }), _jsxs("div", { className: "max-h-[360px] overflow-y-auto overscroll-contain", "data-testid": "notification-center-list", children: [loading && !hasNotifications ? (_jsxs("div", { className: "text-neutral-grey-50 flex items-center justify-center gap-2 py-12 text-xs", children: [_jsx(Loader2, { className: "size-4 animate-spin" }), "Loading notifications..."] })) : null, !loading && !hasNotifications ? (_jsxs("div", { className: "flex flex-col items-center px-6 py-12 text-center", children: [_jsx("span", { className: "bg-neutral-grey-5 flex size-10 items-center justify-center rounded-full", children: showAll ? (_jsx(Inbox, { className: "text-neutral-grey-50 size-5" })) : (_jsx(CheckCheck, { className: "text-feedback-green size-5" })) }), _jsx("div", { className: "text-neutral-grey-100 mt-3 text-xs font-medium", children: showAll ? "No notifications yet" : "You're all caught up" }), _jsx("div", { className: "text-neutral-grey-50 text-2xs mt-1", children: showAll
61
+ : "text-neutral-grey-50 hover:text-neutral-grey-100"}`, "data-testid": `notification-center-filter-${option.label.toLowerCase()}`, children: option.label }, option.label))) }), _jsxs(DropdownMenu, { children: [_jsx(DropdownMenuTrigger, { asChild: true, children: _jsx(Button, { size: "iconSm", variant: "ghost", className: "text-neutral-grey-100", "aria-label": "Notification options", "data-testid": "notification-center-menu-trigger", children: _jsx(Ellipsis, { className: "size-4" }) }) }), _jsx(DropdownMenuContent, { align: "end", children: _jsxs(DropdownMenuItem, { className: "gap-2 text-xs", disabled: unreadCount === 0, onClick: () => void markAllRead(), "data-testid": "notification-center-mark-all-read", children: [_jsx(CheckCheck, { className: "size-3.5" }), "Mark all as read"] }) })] })] })] }), _jsxs("div", { className: "max-h-[360px] overflow-y-auto overscroll-contain", "data-testid": "notification-center-list", children: [loading && !hasNotifications ? (_jsxs("div", { className: "text-neutral-grey-50 flex items-center justify-center gap-2 py-12 text-xs", children: [_jsx(Loader2, { className: "size-4 animate-spin" }), "Loading notifications..."] })) : null, !loading && !hasNotifications ? (_jsxs("div", { className: "flex flex-col items-center px-6 py-12 text-center", children: [showAll ? (_jsx(Inbox, { className: "text-neutral-grey-50 size-10", strokeWidth: 1.25 })) : (_jsx(CircleCheck, { className: "text-feedback-green size-10", strokeWidth: 1.25 })), _jsx("div", { className: "text-neutral-grey-100 mt-4 text-sm font-semibold", children: showAll ? "No notifications yet" : "You're all caught up" }), _jsx("div", { className: "text-neutral-grey-50 mt-1 text-xs", children: showAll
61
62
  ? "Updates for items you watch will show up here."
62
63
  : "New notifications will show up here." })] })) : null, hasNotifications ? (_jsx("div", { className: "divide-border-default/70 divide-y", children: notifications.map((notification) => {
63
64
  const target = resolveNotificationSubscriptionTarget(notification);
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationCenter.js","sourceRoot":"","sources":["../../../src/editor/notifications/NotificationCenter.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NotificationCenter.js","sourceRoot":"","sources":["../../../src/editor/notifications/NotificationCenter.tsx"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { Check, ChevronDown, Eye, Flag, FolderTree, X, } from "lucide-react";
2
+ import { Box, Check, ChevronDown, Eye, Flag, FolderTree, Network, X, } from "lucide-react";
3
3
  import { useCallback, useEffect, useMemo, useState, } from "react";
4
4
  import { Button } from "../../components/ui/button";
5
5
  import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger, } from "../../components/ui/dropdown-menu";
6
+ import { Switch } from "../../components/ui/switch";
6
7
  import { Tooltip, TooltipContent, TooltipTrigger, } from "../../components/ui/tooltip";
7
8
  import { cn } from "../../lib/utils";
8
9
  import { useEditContext } from "../client/editContext";
@@ -168,42 +169,16 @@ function useWatchControls({ targetType, targetId, }) {
168
169
  watchEventOptions,
169
170
  };
170
171
  }
171
- function WatchMenuRow({ icon: Icon, selected = false, destructive = false, children, className, ...buttonProps }) {
172
- return (_jsxs(Button, { type: "button", variant: "ghost", size: "xs", className: cn("h-7 w-full justify-start px-2 text-xs font-normal", selected &&
173
- "bg-highlight-10 text-accent-foreground hover:bg-highlight-10/90", destructive && "text-destructive hover:bg-destructive/10", className), ...buttonProps, children: [_jsx(Icon, { className: "size-3.5" }), _jsx("span", { className: "min-w-0 flex-1 truncate text-left", children: children }), selected ? (_jsx(Check, { className: "text-feedback-green ml-auto size-3.5" })) : null] }));
172
+ function WatchToggleRow({ icon: Icon, checked, children, ...switchProps }) {
173
+ return (_jsxs("label", { className: "flex h-9 cursor-pointer items-center gap-2.5 select-none", children: [_jsx("span", { className: cn("flex size-7 shrink-0 items-center justify-center rounded-md", checked && "bg-neutral-grey-5"), children: _jsx(Icon, { className: "text-neutral-grey-100 size-4" }) }), _jsx("span", { className: "text-neutral-grey-100 min-w-0 flex-1 truncate text-sm", children: children }), _jsx(Switch, { checked: checked, className: "data-[state=checked]:bg-neutral-grey-100 data-[state=unchecked]:bg-neutral-grey-15 h-[20px] w-[38px] shrink-0 p-[2px] shadow-none [&_[data-slot=switch-thumb]]:size-[16px] [&_[data-slot=switch-thumb]]:data-[state=checked]:translate-x-[18px]", ...switchProps })] }));
174
174
  }
175
175
  export function WatchMenuSection(props) {
176
176
  const { targetType, targetId, className } = props;
177
- const { current, currentLanguage, currentLanguageOnly, disabled, doSubscribe, doUnsubscribe, isSubtree, isWatching, languageOnlyLabel, selectedEventTypes, toggleCurrentLanguageOnly, toggleEventType, toggleSimple, watchEventOptions, } = useWatchControls(props);
178
- const canChooseScope = targetType === "item" || targetType === "project";
179
- const watchActionLabel = targetType === "item"
180
- ? "Watch item"
181
- : targetType === "project"
182
- ? "Watch project"
183
- : current?.isMuted
184
- ? "Unmute"
185
- : isWatching
186
- ? "Unwatch"
187
- : "Watch";
188
- const watchActionTestId = targetType === "item"
189
- ? `watch-button-${targetType}-${targetId}-watch-item`
190
- : targetType === "project"
191
- ? `watch-button-${targetType}-${targetId}-watch-project`
192
- : `watch-button-${targetType}-${targetId}`;
193
- const statusLabel = current?.isMuted
194
- ? "Muted"
195
- : isWatching
196
- ? isSubtree
197
- ? "Watching subtree"
198
- : "Watching"
199
- : "Not watching";
177
+ const { currentLanguage, currentLanguageOnly, disabled, doSubscribe, doUnsubscribe, isSubtree, isWatching, languageOnlyLabel, selectedEventTypes, toggleCurrentLanguageOnly, toggleEventType, toggleSimple, watchEventOptions, } = useWatchControls(props);
200
178
  const sectionTestId = targetType === "item" || targetType === "project"
201
179
  ? `watch-button-${targetType}-${targetId}`
202
180
  : undefined;
203
- return (_jsxs("div", { id: "watch-button-controls", className: cn("border-border-default border-t px-3 py-2.5", className), "data-testid": sectionTestId, children: [_jsxs("div", { className: "flex items-center justify-between gap-2", children: [_jsxs("div", { className: "flex min-w-0 items-center gap-2", children: [_jsx(Eye, { className: "text-neutral-grey-50 size-3.5" }), _jsx("span", { className: "text-neutral-grey-100 text-sm font-medium", children: "Watch" }), _jsx("span", { className: "text-neutral-grey-50 text-2xs truncate", children: statusLabel })] }), isWatching ? (_jsxs(Button, { type: "button", variant: "ghost", size: "xxs", className: "text-neutral-grey-50 hover:text-destructive h-6 shrink-0 px-2", disabled: disabled, onClick: () => void doUnsubscribe(), "data-testid": `watch-button-${targetType}-${targetId}-unwatch`, children: [_jsx(X, { className: "size-3" }), "Unwatch"] })) : null] }), _jsx("div", { className: "mt-2 space-y-1", children: canChooseScope ? (_jsxs(_Fragment, { children: [_jsx(WatchMenuRow, { icon: Eye, selected: isWatching && !isSubtree, disabled: disabled, onClick: () => void doSubscribe(false), "data-testid": watchActionTestId, children: watchActionLabel }), targetType === "item" ? (_jsxs(_Fragment, { children: [_jsx(WatchMenuRow, { icon: FolderTree, selected: isWatching && isSubtree, disabled: disabled, onClick: () => void doSubscribe(true), "data-testid": `watch-button-${targetType}-${targetId}-watch-subtree`, children: "Watch subtree" }), _jsx(WatchMenuRow, { icon: Flag, selected: currentLanguageOnly, disabled: !currentLanguage || disabled, onClick: () => toggleCurrentLanguageOnly(), "data-testid": `watch-button-${targetType}-${targetId}-current-language-only`, children: languageOnlyLabel })] })) : null] })) : (_jsx(WatchMenuRow, { icon: Eye, selected: isWatching, disabled: disabled, onClick: () => void toggleSimple(), "data-testid": watchActionTestId, children: watchActionLabel })) }), watchEventOptions.length > 0 ? (_jsxs("div", { className: "border-border-default mt-2 border-t pt-2", children: [_jsx("div", { className: "text-neutral-grey-50 text-2xs mb-1 px-1 font-medium", children: "Alert me about" }), _jsx("div", { className: "space-y-1", children: watchEventOptions.map((option) => {
204
- const selected = selectedEventTypes.includes(option.eventType);
205
- return (_jsx(WatchMenuRow, { icon: option.icon, selected: selected, disabled: disabled, onClick: () => toggleEventType(option.eventType), "data-testid": `watch-button-${targetType}-${targetId}-event-${option.eventType}`, children: option.label }, option.eventType));
206
- }) })] })) : null] }));
181
+ return (_jsxs("div", { id: "watch-button-controls", className: cn("border-border-default border-t", className), "data-testid": sectionTestId, children: [_jsxs("div", { className: "px-4 py-3", children: [_jsx("div", { className: "text-neutral-grey-50 mb-1 text-xs", children: "Watch" }), targetType === "item" ? (_jsxs(_Fragment, { children: [_jsx(WatchToggleRow, { icon: Box, checked: isWatching, disabled: disabled, onCheckedChange: (checked) => void (checked ? doSubscribe(false) : doUnsubscribe()), "data-testid": `watch-button-${targetType}-${targetId}-watch-item`, children: "Item" }), _jsx(WatchToggleRow, { icon: Network, checked: isWatching && isSubtree, disabled: disabled, onCheckedChange: (checked) => void doSubscribe(checked), "data-testid": `watch-button-${targetType}-${targetId}-watch-subtree`, children: "Subtree" }), _jsx(WatchToggleRow, { icon: Flag, checked: currentLanguageOnly, disabled: !currentLanguage || disabled, onCheckedChange: () => toggleCurrentLanguageOnly(), "data-testid": `watch-button-${targetType}-${targetId}-current-language-only`, children: languageOnlyLabel })] })) : targetType === "project" ? (_jsx(WatchToggleRow, { icon: Eye, checked: isWatching, disabled: disabled, onCheckedChange: (checked) => void (checked ? doSubscribe(false) : doUnsubscribe()), "data-testid": `watch-button-${targetType}-${targetId}-watch-project`, children: "Project" })) : (_jsx(WatchToggleRow, { icon: Eye, checked: isWatching, disabled: disabled, onCheckedChange: () => void toggleSimple(), "data-testid": `watch-button-${targetType}-${targetId}`, children: targetType === "review" ? "Review" : "Agent run" }))] }), watchEventOptions.length > 0 ? (_jsxs("div", { className: "border-border-default border-t px-4 py-3", children: [_jsx("div", { className: "text-neutral-grey-50 mb-1 text-xs", children: "Alert me about" }), watchEventOptions.map((option) => (_jsx(WatchToggleRow, { icon: option.icon, checked: selectedEventTypes.includes(option.eventType), disabled: disabled, onCheckedChange: () => toggleEventType(option.eventType), "data-testid": `watch-button-${targetType}-${targetId}-event-${option.eventType}`, children: option.label }, option.eventType)))] })) : null] }));
207
182
  }
208
183
  export function WatchButton(props) {
209
184
  const { targetType, targetId, className } = props;