@parhelia/core 0.1.12308 → 0.1.12325

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 (85) hide show
  1. package/dist/agents-view/AgentsView.js +113 -23
  2. package/dist/agents-view/AgentsView.js.map +1 -1
  3. package/dist/components/MarkdownDisplay.d.ts +6 -1
  4. package/dist/components/MarkdownDisplay.js +3 -0
  5. package/dist/components/MarkdownDisplay.js.map +1 -1
  6. package/dist/editor/ai/AgentTerminal.js +28 -4
  7. package/dist/editor/ai/AgentTerminal.js.map +1 -1
  8. package/dist/editor/ai/dialogs/AgentDialogHandler.js +32 -8
  9. package/dist/editor/ai/dialogs/AgentDialogHandler.js.map +1 -1
  10. package/dist/editor/ai/dialogs/QuestionnaireInline.d.ts +2 -1
  11. package/dist/editor/ai/dialogs/QuestionnaireInline.js +44 -23
  12. package/dist/editor/ai/dialogs/QuestionnaireInline.js.map +1 -1
  13. package/dist/editor/ai/dialogs/agentDialogTypes.d.ts +3 -1
  14. package/dist/editor/ai/dialogs/agentDialogTypes.js.map +1 -1
  15. package/dist/revision.d.ts +2 -2
  16. package/dist/revision.js +2 -2
  17. package/dist/task-board/TaskBoardWorkspace.js +46 -42
  18. package/dist/task-board/TaskBoardWorkspace.js.map +1 -1
  19. package/dist/task-board/assigneeDisplay.d.ts +9 -0
  20. package/dist/task-board/assigneeDisplay.js +22 -0
  21. package/dist/task-board/assigneeDisplay.js.map +1 -0
  22. package/dist/task-board/components/ProjectAgentsPanel.js +1 -28
  23. package/dist/task-board/components/ProjectAgentsPanel.js.map +1 -1
  24. package/dist/task-board/components/TaskAssigneePicker.d.ts +5 -1
  25. package/dist/task-board/components/TaskAssigneePicker.js +5 -3
  26. package/dist/task-board/components/TaskAssigneePicker.js.map +1 -1
  27. package/dist/task-board/components/TaskCard.d.ts +5 -2
  28. package/dist/task-board/components/TaskCard.js +12 -5
  29. package/dist/task-board/components/TaskCard.js.map +1 -1
  30. package/dist/task-board/components/TaskRow.d.ts +4 -1
  31. package/dist/task-board/components/TaskRow.js +7 -6
  32. package/dist/task-board/components/TaskRow.js.map +1 -1
  33. package/dist/task-board/components/WizardAgentTerminalPanel.d.ts +16 -0
  34. package/dist/task-board/components/WizardAgentTerminalPanel.js +7 -0
  35. package/dist/task-board/components/WizardAgentTerminalPanel.js.map +1 -0
  36. package/dist/task-board/components/WizardCommunicationCards.d.ts +18 -0
  37. package/dist/task-board/components/WizardCommunicationCards.js +22 -0
  38. package/dist/task-board/components/WizardCommunicationCards.js.map +1 -0
  39. package/dist/task-board/components/WizardCommunicationCenter.d.ts +1 -12
  40. package/dist/task-board/components/WizardCommunicationCenter.js +14 -129
  41. package/dist/task-board/components/WizardCommunicationCenter.js.map +1 -1
  42. package/dist/task-board/components/WizardCommunicationShared.d.ts +22 -0
  43. package/dist/task-board/components/WizardCommunicationShared.js +84 -0
  44. package/dist/task-board/components/WizardCommunicationShared.js.map +1 -0
  45. package/dist/task-board/components/WizardTask.d.ts +50 -0
  46. package/dist/task-board/components/WizardTask.js +36 -0
  47. package/dist/task-board/components/WizardTask.js.map +1 -0
  48. package/dist/task-board/components/WizardTaskDetailsPanel.d.ts +29 -0
  49. package/dist/task-board/components/WizardTaskDetailsPanel.js +22 -0
  50. package/dist/task-board/components/WizardTaskDetailsPanel.js.map +1 -0
  51. package/dist/task-board/taskExecutionRecords.js +2 -1
  52. package/dist/task-board/taskExecutionRecords.js.map +1 -1
  53. package/dist/task-board/views/KanbanView.d.ts +1 -1
  54. package/dist/task-board/views/KanbanView.js +27 -1
  55. package/dist/task-board/views/KanbanView.js.map +1 -1
  56. package/dist/task-board/views/ListView.d.ts +1 -1
  57. package/dist/task-board/views/ListView.js +29 -3
  58. package/dist/task-board/views/ListView.js.map +1 -1
  59. package/dist/task-board/views/WizardView.d.ts +2 -0
  60. package/dist/task-board/views/WizardView.js +19 -8
  61. package/dist/task-board/views/WizardView.js.map +1 -1
  62. package/package.json +1 -1
  63. package/dist/editor/ai/HelpTerminal.d.ts +0 -5
  64. package/dist/editor/ai/HelpTerminal.js +0 -166
  65. package/dist/editor/ai/HelpTerminal.js.map +0 -1
  66. package/dist/editor/settings/AllAgentsPanel.d.ts +0 -5
  67. package/dist/editor/settings/AllAgentsPanel.js +0 -139
  68. package/dist/editor/settings/AllAgentsPanel.js.map +0 -1
  69. package/dist/editor/settings/LatestFeedback.d.ts +0 -1
  70. package/dist/editor/settings/LatestFeedback.js +0 -136
  71. package/dist/editor/settings/LatestFeedback.js.map +0 -1
  72. package/dist/editor/sidebar/LeftToolbar.d.ts +0 -1
  73. package/dist/editor/sidebar/LeftToolbar.js +0 -12
  74. package/dist/editor/sidebar/LeftToolbar.js.map +0 -1
  75. package/dist/editor/sidebar/NavigationSidebar.d.ts +0 -4
  76. package/dist/editor/sidebar/NavigationSidebar.js +0 -254
  77. package/dist/editor/sidebar/NavigationSidebar.js.map +0 -1
  78. package/dist/images/bg-shape-black.webp +0 -0
  79. package/dist/images/parhelia-logo-1.jpg +0 -0
  80. package/dist/images/phlogo.png +0 -0
  81. package/dist/images/wizard-bg.png +0 -0
  82. package/dist/styles.css +0 -8962
  83. package/dist/task-board/components/ProjectList.d.ts +0 -7
  84. package/dist/task-board/components/ProjectList.js +0 -74
  85. package/dist/task-board/components/ProjectList.js.map +0 -1
@@ -0,0 +1,22 @@
1
+ /** Role-like values we should never show as assignee - show Unassigned instead */
2
+ const ROLE_PLACEHOLDER_NAMES = ["current"];
3
+ function isRolePlaceholder(value) {
4
+ return ROLE_PLACEHOLDER_NAMES.includes(value?.trim().toLowerCase());
5
+ }
6
+ /**
7
+ * Returns the displayable assignee for a task.
8
+ * Filters out role names and placeholders (e.g. "current") - shows "Unassigned" instead.
9
+ * Only real user/agent names are shown.
10
+ */
11
+ export function getDisplayableAssignee(task, options) {
12
+ const raw = task.assigneeDisplayName ||
13
+ (task.assigneeType === "Agent" ? null : task.assigneeId) ||
14
+ null;
15
+ if (!raw || isRolePlaceholder(raw)) {
16
+ return task.assigneeType === "Agent" && options?.isPlanTask
17
+ ? "Project Planner"
18
+ : "Unassigned";
19
+ }
20
+ return raw;
21
+ }
22
+ //# sourceMappingURL=assigneeDisplay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assigneeDisplay.js","sourceRoot":"","sources":["../../src/task-board/assigneeDisplay.ts"],"names":[],"mappings":"AAEA,kFAAkF;AAClF,MAAM,sBAAsB,GAAG,CAAC,SAAS,CAAC,CAAC;AAE3C,SAAS,iBAAiB,CAAC,KAAa;IACtC,OAAO,sBAAsB,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;AACtE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CACpC,IAAc,EACd,OAAkC;IAElC,MAAM,GAAG,GACP,IAAI,CAAC,mBAAmB;QACxB,CAAC,IAAI,CAAC,YAAY,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;QACxD,IAAI,CAAC;IACP,IAAI,CAAC,GAAG,IAAI,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC,YAAY,KAAK,OAAO,IAAI,OAAO,EAAE,UAAU;YACzD,CAAC,CAAC,iBAAiB;YACnB,CAAC,CAAC,YAAY,CAAC;IACnB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -31,19 +31,6 @@ function agentMatchesProject(agent, projectId) {
31
31
  }
32
32
  return false;
33
33
  }
34
- function getAgentRole(agent) {
35
- const ctxStr = getAgentContextString(agent);
36
- if (!ctxStr)
37
- return null;
38
- try {
39
- const parsed = JSON.parse(ctxStr);
40
- const role = parsed?.additionalData?.role;
41
- return typeof role === "string" ? role : null;
42
- }
43
- catch {
44
- return null;
45
- }
46
- }
47
34
  function formatAgentStatus(status) {
48
35
  // Backend sometimes sends numeric enum status for initial fetch
49
36
  if (typeof status === "number") {
@@ -92,20 +79,7 @@ export function ProjectAgentsPanel(props) {
92
79
  excludeClosed: true,
93
80
  });
94
81
  const filtered = (response.agents ?? []).filter((a) => agentMatchesProject(a, projectId));
95
- // Sort: most relevant roles first, then most recently updated
96
82
  const sorted = filtered.sort((a, b) => {
97
- const roleA = getAgentRole(a) ?? "";
98
- const roleB = getAgentRole(b) ?? "";
99
- const weight = (r) => {
100
- if (r === "project-planner")
101
- return 3;
102
- if (r === "task-worker")
103
- return 2;
104
- return 0;
105
- };
106
- const w = weight(roleB) - weight(roleA);
107
- if (w !== 0)
108
- return w;
109
83
  return (b.updatedDate ?? "").localeCompare(a.updatedDate ?? "");
110
84
  });
111
85
  setAgents(sorted);
@@ -151,9 +125,8 @@ export function ProjectAgentsPanel(props) {
151
125
  if (!project)
152
126
  return null;
153
127
  return (_jsxs("div", { className: "flex h-full flex-col border-l bg-white", children: [_jsxs("div", { className: "flex items-center justify-between border-b px-4 py-3", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx(Bot, { className: "h-5 w-5 text-muted-foreground" }), _jsxs("div", { children: [_jsx("div", { className: "text-sm font-semibold", children: "Project agents" }), _jsx("div", { className: "text-xs text-muted-foreground", children: countLabel })] })] }), _jsx(Button, { variant: "ghost", size: "sm", onClick: refresh, disabled: loading || !projectId, children: _jsx(RefreshCw, { className: cn("h-4 w-4", loading && "animate-spin") }) })] }), _jsx("div", { className: "flex-1 overflow-auto p-3", children: !projectId ? (_jsx("div", { className: "p-3 text-xs text-muted-foreground", children: "Select a project to see its agents." })) : agents.length === 0 ? (_jsx("div", { className: "p-3 text-xs text-muted-foreground", children: "No active agents found for this project yet." })) : (_jsx("div", { className: "space-y-2", children: agents.map((a) => {
154
- const role = getAgentRole(a);
155
128
  const status = formatAgentStatus(a.status);
156
- return (_jsxs("button", { onClick: () => openAgent(a.id), className: "w-full rounded-md border bg-white p-3 text-left hover:bg-muted/30", children: [_jsxs("div", { className: "flex items-start justify-between gap-2", children: [_jsxs("div", { className: "min-w-0", children: [_jsx("div", { className: "truncate text-sm font-medium", children: a.name || a.profileName || a.id }), _jsxs("div", { className: "mt-0.5 flex flex-wrap items-center gap-2 text-xs text-muted-foreground", children: [a.profileName && _jsx("span", { children: a.profileName }), role && _jsx("span", { className: "rounded bg-muted px-1.5 py-0.5", children: role }), _jsx("span", { className: "rounded bg-muted px-1.5 py-0.5", children: status })] })] }), _jsx(ExternalLink, { className: "h-4 w-4 shrink-0 text-muted-foreground" })] }), a.description ? (_jsx("div", { className: "mt-2 line-clamp-2 text-xs text-muted-foreground", children: a.description })) : null] }, a.id));
129
+ return (_jsxs("button", { onClick: () => openAgent(a.id), className: "w-full rounded-md border bg-white p-3 text-left hover:bg-muted/30", children: [_jsxs("div", { className: "flex items-start justify-between gap-2", children: [_jsxs("div", { className: "min-w-0", children: [_jsx("div", { className: "truncate text-sm font-medium", children: a.name || a.profileName || a.id }), _jsxs("div", { className: "mt-0.5 flex flex-wrap items-center gap-2 text-xs text-muted-foreground", children: [a.profileName && _jsx("span", { children: a.profileName }), _jsx("span", { className: "rounded bg-muted px-1.5 py-0.5", children: status })] })] }), _jsx(ExternalLink, { className: "h-4 w-4 shrink-0 text-muted-foreground" })] }), a.description ? (_jsx("div", { className: "mt-2 line-clamp-2 text-xs text-muted-foreground", children: a.description })) : null] }, a.id));
157
130
  }) })) })] }));
158
131
  }
159
132
  //# sourceMappingURL=ProjectAgentsPanel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectAgentsPanel.js","sourceRoot":"","sources":["../../../src/task-board/components/ProjectAgentsPanel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProjectAgentsPanel.js","sourceRoot":"","sources":["../../../src/task-board/components/ProjectAgentsPanel.tsx"],"names":[],"mappings":"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"}
@@ -7,6 +7,10 @@ type TaskAssigneePickerProps = {
7
7
  disabled?: boolean;
8
8
  onChange: (next: TaskAssigneeSelection | null) => void;
9
9
  placeholder?: string;
10
+ buttonClassName?: string;
11
+ buttonTestId?: string;
12
+ showChevron?: boolean;
13
+ showAssigneeIcon?: boolean;
10
14
  };
11
- export declare function TaskAssigneePicker({ projectId, assigneeType, value, displayValue, disabled, onChange, placeholder, }: TaskAssigneePickerProps): import("react/jsx-runtime").JSX.Element;
15
+ export declare function TaskAssigneePicker({ projectId, assigneeType, value, displayValue, disabled, onChange, placeholder, buttonClassName, buttonTestId, showChevron, showAssigneeIcon, }: TaskAssigneePickerProps): import("react/jsx-runtime").JSX.Element;
12
16
  export {};
@@ -1,13 +1,13 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useEffect, useMemo, useRef, useState } from "react";
3
- import { Check, ChevronDown, Loader2, UserRound, X } from "lucide-react";
3
+ import { Bot, Check, ChevronDown, Loader2, User, UserRound, X } from "lucide-react";
4
4
  import { Button } from "../../components/ui/button";
5
5
  import { Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, } from "../../components/ui/command";
6
6
  import { Popover, PopoverContent, PopoverTrigger } from "../../components/ui/popover";
7
7
  import { searchTaskAssignableUsers } from "../services/taskService";
8
8
  import { loadAiProfiles } from "../../editor/services/aiService";
9
9
  const MIN_QUERY_LENGTH = 2;
10
- export function TaskAssigneePicker({ projectId, assigneeType = null, value, displayValue, disabled = false, onChange, placeholder = "Assign user", }) {
10
+ export function TaskAssigneePicker({ projectId, assigneeType = null, value, displayValue, disabled = false, onChange, placeholder = "Assign user", buttonClassName, buttonTestId, showChevron = true, showAssigneeIcon = false, }) {
11
11
  const [open, setOpen] = useState(false);
12
12
  const [query, setQuery] = useState("");
13
13
  const [loading, setLoading] = useState(false);
@@ -99,13 +99,15 @@ export function TaskAssigneePicker({ projectId, assigneeType = null, value, disp
99
99
  profile.id.toLowerCase().includes(normalizedQuery));
100
100
  });
101
101
  }, [profiles, normalizedQuery]);
102
+ const AssigneeIcon = assigneeType === "Agent" ? Bot : User;
102
103
  return (_jsxs(Popover, { open: open, onOpenChange: (nextOpen) => {
103
104
  if (nextOpen && triggerRef.current) {
104
105
  const dialogContent = triggerRef.current.closest('[data-slot="dialog-content"]');
105
106
  setPortalContainer(dialogContent);
106
107
  }
107
108
  setOpen(nextOpen);
108
- }, enableIframeClickDetection: false, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs(Button, { ref: triggerRef, size: "sm", variant: "outline", className: "h-[29px] w-[220px] justify-between rounded-md bg-gray-5 text-xs font-medium", disabled: disabled, children: [_jsx("span", { className: "truncate text-left", children: currentLabel || placeholder }), _jsx(ChevronDown, { className: "h-3.5 w-3.5 opacity-60" })] }) }), _jsx(PopoverContent, { className: "w-[300px] p-0", align: "start", container: portalContainer, onMouseDown: (event) => event.stopPropagation(), onClick: (event) => event.stopPropagation(), children: _jsxs(Command, { shouldFilter: false, children: [_jsx(CommandInput, { value: query, onValueChange: setQuery, placeholder: "Search users...", className: "h-8 text-xs", autoFocus: true }), _jsxs(CommandList, { className: "max-h-64", children: [!value && !canSearch && (_jsx(CommandGroup, { children: _jsxs(CommandItem, { disabled: true, className: "text-muted-foreground", children: ["Type at least ", MIN_QUERY_LENGTH, " characters"] }) })), value && (_jsx(CommandGroup, { heading: "Current", children: _jsxs(CommandItem, { onSelect: () => {
109
+ }, enableIframeClickDetection: false, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs(Button, { ref: triggerRef, size: "sm", variant: "outline", className: buttonClassName ||
110
+ "h-[29px] w-[220px] justify-between rounded-md bg-gray-5 text-xs font-medium", disabled: disabled, "data-testid": buttonTestId, children: [showAssigneeIcon ? _jsx(AssigneeIcon, { className: "h-3 w-3 shrink-0 opacity-70" }) : null, _jsx("span", { className: "truncate text-left", children: currentLabel || placeholder }), showChevron ? _jsx(ChevronDown, { className: "h-3.5 w-3.5 opacity-60" }) : null] }) }), _jsx(PopoverContent, { className: "w-[300px] p-0", align: "start", container: portalContainer, onMouseDown: (event) => event.stopPropagation(), onClick: (event) => event.stopPropagation(), children: _jsxs(Command, { shouldFilter: false, children: [_jsx(CommandInput, { value: query, onValueChange: setQuery, placeholder: "Search users...", className: "h-8 text-xs", autoFocus: true }), _jsxs(CommandList, { className: "max-h-64", children: [!value && !canSearch && (_jsx(CommandGroup, { children: _jsxs(CommandItem, { disabled: true, className: "text-muted-foreground", children: ["Type at least ", MIN_QUERY_LENGTH, " characters"] }) })), value && (_jsx(CommandGroup, { heading: "Current", children: _jsxs(CommandItem, { onSelect: () => {
109
111
  onChange(null);
110
112
  setOpen(false);
111
113
  }, children: [_jsx(X, { className: "h-3.5 w-3.5" }), _jsx("span", { children: "Clear assignee" })] }) })), _jsx(CommandGroup, { heading: "Agent profiles", children: loadingProfiles ? (_jsxs(CommandItem, { disabled: true, children: [_jsx(Loader2, { className: "h-3.5 w-3.5 animate-spin" }), _jsx("span", { children: "Loading agent profiles..." })] })) : (filteredProfiles.map((profile) => (_jsxs(CommandItem, { value: profile.id, onSelect: () => handleSelectProfile(profile), children: [_jsx(UserRound, { className: "h-3.5 w-3.5" }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("div", { className: "truncate", children: profile.displayTitle || profile.name }), _jsx("div", { className: "truncate text-[10px] text-muted-foreground", children: profile.description || profile.id })] }), assigneeType === "Agent" &&
@@ -1 +1 @@
1
- {"version":3,"file":"TaskAssigneePicker.js","sourceRoot":"","sources":["../../../src/task-board/components/TaskAssigneePicker.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TaskAssigneePicker.js","sourceRoot":"","sources":["../../../src/task-board/components/TaskAssigneePicker.tsx"],"names":[],"mappings":"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"}
@@ -1,10 +1,13 @@
1
1
  import type { MouseEventHandler } from "react";
2
- import type { TaskItem } from "../types";
2
+ import type { TaskAssigneeSelection, TaskItem } from "../types";
3
3
  export declare function TaskCard(props: {
4
4
  task: TaskItem;
5
5
  selected: boolean;
6
- onClick: MouseEventHandler<HTMLButtonElement>;
6
+ onClick: MouseEventHandler<HTMLDivElement>;
7
7
  dependencyTaskIds?: string[];
8
8
  isBlocked?: boolean;
9
9
  showDoneCheckmark?: boolean;
10
+ projectId?: string;
11
+ canEditAssignee?: boolean;
12
+ onAssigneeChange?: (selection: TaskAssigneeSelection | null) => void | Promise<void>;
10
13
  }): import("react/jsx-runtime").JSX.Element;
@@ -1,9 +1,11 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { cn } from "../../lib/utils";
3
3
  import { Loader2, User, Bot, Calendar, AlertCircle, CheckCircle2 } from "lucide-react";
4
+ import { getDisplayableAssignee } from "../assigneeDisplay";
4
5
  import { Badge } from "../../components/ui/badge";
5
6
  import { format } from "date-fns";
6
7
  import { getTaskExecutionDisplayFromTask } from "../taskExecutionStatus";
8
+ import { TaskAssigneePicker } from "./TaskAssigneePicker";
7
9
  const priorityColors = {
8
10
  Critical: "bg-red-500",
9
11
  High: "bg-orange-500",
@@ -11,7 +13,7 @@ const priorityColors = {
11
13
  Low: "bg-slate-400",
12
14
  };
13
15
  export function TaskCard(props) {
14
- const { task, selected, onClick, dependencyTaskIds = [], isBlocked = false, showDoneCheckmark = false, } = props;
16
+ const { task, selected, onClick, dependencyTaskIds = [], isBlocked = false, showDoneCheckmark = false, projectId, canEditAssignee = false, onAssigneeChange, } = props;
15
17
  const executionDisplay = getTaskExecutionDisplayFromTask({
16
18
  taskStatus: task.status,
17
19
  executionState: task.executionState,
@@ -20,9 +22,14 @@ export function TaskCard(props) {
20
22
  const priorityColor = task.priority ? priorityColors[task.priority] : "bg-slate-200";
21
23
  const displayTaskId = task.taskKey || task.taskId.slice(0, 8).toUpperCase();
22
24
  const isPlanTask = String(task.taskType ?? "").toLowerCase() === "plan" || task.title === "Project Plan";
23
- const assigneeValue = task.assigneeDisplayName ||
24
- task.assigneeId ||
25
- (task.assigneeType === "Agent" && isPlanTask ? "Project Planner" : "Unassigned");
26
- return (_jsxs("button", { type: "button", onClick: onClick, className: cn("group relative w-full overflow-hidden rounded-lg border bg-white p-3 text-left shadow-sm transition-all hover:border-primary/50 hover:shadow-md", selected && "border-primary ring-1 ring-primary/30 shadow-md"), children: [_jsx("div", { className: cn("absolute inset-y-0 left-0 w-1", priorityColor) }), _jsxs("div", { className: "flex flex-col gap-2.5", children: [_jsxs("div", { className: "flex items-start justify-between gap-2", children: [_jsxs("div", { className: "min-w-0", children: [_jsx("div", { className: "mb-1 text-[10px] font-semibold uppercase tracking-widest text-muted-foreground", children: displayTaskId }), _jsx("div", { className: "line-clamp-2 text-sm font-semibold leading-snug group-hover:text-primary transition-colors", children: task.title })] }), _jsxs("div", { className: "flex shrink-0 items-center gap-1", children: [showDoneCheckmark && task.status === "Done" && (_jsx(CheckCircle2, { className: "h-4 w-4 text-emerald-600" })), task.priority === "Critical" && (_jsx(AlertCircle, { className: "h-4 w-4 text-red-500" }))] })] }), task.description && (_jsx("div", { className: "line-clamp-1 text-xs text-muted-foreground italic", children: task.description })), dependencyTaskIds.length > 0 && (_jsxs("div", { className: "line-clamp-1 text-[10px] font-medium text-muted-foreground", children: ["Depends on: ", dependencyTaskIds.join(", ")] })), _jsxs("div", { className: "flex flex-wrap items-center gap-2 mt-0.5", children: [_jsxs("div", { className: "flex items-center gap-1 text-xs text-muted-foreground bg-gray-50 px-1.5 py-0.5 rounded-md", children: [task.assigneeType === "Agent" ? (_jsx(Bot, { className: "h-3 w-3" })) : (_jsx(User, { className: "h-3 w-3" })), _jsx("span", { className: "max-w-[160px] truncate", title: assigneeValue, children: assigneeValue })] }), task.dueDate && (_jsxs("div", { className: "flex items-center gap-1 text-xs text-muted-foreground bg-gray-50 px-1.5 py-0.5 rounded-md", children: [_jsx(Calendar, { className: "h-3 w-3" }), _jsx("span", { children: format(new Date(task.dueDate), "MMM d") })] })), executionDisplay ? (_jsxs(Badge, { variant: executionDisplay.variant, className: cn("h-5 px-1.5 text-[10px] uppercase tracking-wider font-bold", executionDisplay.className), title: executionDisplay.needsAttention ? "Assigned agent requires attention" : undefined, children: [executionDisplay.showSpinner && _jsx(Loader2, { className: "mr-1 h-2.5 w-2.5 animate-spin" }), executionDisplay.label] })) : null] })] })] }));
25
+ const assigneeValue = getDisplayableAssignee(task, { isPlanTask });
26
+ const canEditInlineAssignee = !!projectId && !!onAssigneeChange && canEditAssignee && !isPlanTask;
27
+ const handleKeyDown = (event) => {
28
+ if (event.key !== "Enter" && event.key !== " ")
29
+ return;
30
+ event.preventDefault();
31
+ event.currentTarget.click();
32
+ };
33
+ return (_jsxs("div", { role: "button", tabIndex: 0, onClick: onClick, onKeyDown: handleKeyDown, className: cn("group relative w-full overflow-hidden rounded-lg border bg-white p-3 text-left shadow-sm transition-all hover:border-primary/50 hover:shadow-md", selected && "border-primary ring-1 ring-primary/30 shadow-md"), children: [_jsx("div", { className: cn("absolute inset-y-0 left-0 w-1", priorityColor) }), _jsxs("div", { className: "flex flex-col gap-2.5", children: [_jsxs("div", { className: "flex items-start justify-between gap-2", children: [_jsxs("div", { className: "min-w-0", children: [_jsx("div", { className: "mb-1 text-[10px] font-semibold uppercase tracking-widest text-muted-foreground", children: displayTaskId }), _jsx("div", { className: "line-clamp-2 text-sm font-semibold leading-snug group-hover:text-primary transition-colors", children: task.title })] }), _jsxs("div", { className: "flex shrink-0 items-center gap-1", children: [showDoneCheckmark && task.status === "Done" && (_jsx(CheckCircle2, { className: "h-4 w-4 text-emerald-600" })), task.priority === "Critical" && (_jsx(AlertCircle, { className: "h-4 w-4 text-red-500" }))] })] }), task.description && (_jsx("div", { className: "line-clamp-1 text-xs text-muted-foreground italic", children: task.description })), dependencyTaskIds.length > 0 && (_jsxs("div", { className: "line-clamp-1 text-[10px] font-medium text-muted-foreground", children: ["Depends on: ", dependencyTaskIds.join(", ")] })), _jsxs("div", { className: "flex flex-wrap items-center gap-2 mt-0.5", children: [canEditInlineAssignee ? (_jsx("div", { className: "min-w-0", onClick: (event) => event.stopPropagation(), onMouseDown: (event) => event.stopPropagation(), children: _jsx(TaskAssigneePicker, { projectId: projectId, assigneeType: task.assigneeType ?? null, value: task.assigneeId ?? null, displayValue: task.assigneeDisplayName ?? task.assigneeId ?? null, onChange: onAssigneeChange, placeholder: "Assign user or agent", buttonClassName: "h-auto max-w-[220px] gap-1 rounded-md border-0 bg-gray-50 px-1.5 py-0.5 text-xs font-medium text-muted-foreground shadow-none hover:bg-gray-100", buttonTestId: `taskboard-task-assignee-${task.taskId}`, showChevron: false, showAssigneeIcon: true }) })) : (_jsxs("div", { className: "flex items-center gap-1 text-xs text-muted-foreground bg-gray-50 px-1.5 py-0.5 rounded-md", children: [task.assigneeType === "Agent" ? (_jsx(Bot, { className: "h-3 w-3" })) : (_jsx(User, { className: "h-3 w-3" })), _jsx("span", { className: "max-w-[160px] truncate", title: assigneeValue, children: assigneeValue })] })), task.dueDate && (_jsxs("div", { className: "flex items-center gap-1 text-xs text-muted-foreground bg-gray-50 px-1.5 py-0.5 rounded-md", children: [_jsx(Calendar, { className: "h-3 w-3" }), _jsx("span", { children: format(new Date(task.dueDate), "MMM d") })] })), executionDisplay ? (_jsxs(Badge, { variant: executionDisplay.variant, className: cn("h-5 px-1.5 text-[10px] uppercase tracking-wider font-bold", executionDisplay.className), title: executionDisplay.needsAttention ? "Assigned agent requires attention" : undefined, children: [executionDisplay.showSpinner && _jsx(Loader2, { className: "mr-1 h-2.5 w-2.5 animate-spin" }), executionDisplay.label] })) : null] })] })] }));
27
34
  }
28
35
  //# sourceMappingURL=TaskCard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TaskCard.js","sourceRoot":"","sources":["../../../src/task-board/components/TaskCard.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TaskCard.js","sourceRoot":"","sources":["../../../src/task-board/components/TaskCard.tsx"],"names":[],"mappings":"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"}
@@ -1,7 +1,10 @@
1
- import type { TaskItem } from "../types";
1
+ import type { TaskAssigneeSelection, TaskItem } from "../types";
2
2
  export declare function TaskRow(props: {
3
3
  task: TaskItem;
4
4
  selected: boolean;
5
5
  onClick: () => void;
6
6
  onDelete?: () => void;
7
+ projectId?: string;
8
+ canEditAssignee?: boolean;
9
+ onAssigneeChange?: (selection: TaskAssigneeSelection | null) => void | Promise<void>;
7
10
  }): import("react/jsx-runtime").JSX.Element;
@@ -1,9 +1,11 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { cn } from "../../lib/utils";
3
3
  import { Loader2, User, Bot, Trash2, Circle, AlertTriangle } from "lucide-react";
4
+ import { getDisplayableAssignee } from "../assigneeDisplay";
4
5
  import { Badge } from "../../components/ui/badge";
5
6
  import { getTaskExecutionDisplayFromTask } from "../taskExecutionStatus";
6
7
  import { normalizeTaskStatus, getTaskStatusLabel } from "../taskStatus";
8
+ import { TaskAssigneePicker } from "./TaskAssigneePicker";
7
9
  const priorityDotColors = {
8
10
  Critical: "border-l-red-500",
9
11
  High: "border-l-orange-500",
@@ -11,20 +13,19 @@ const priorityDotColors = {
11
13
  Low: "border-l-slate-300",
12
14
  };
13
15
  export function TaskRow(props) {
14
- const { task, selected, onClick, onDelete } = props;
16
+ const { task, selected, onClick, onDelete, projectId, canEditAssignee = false, onAssigneeChange, } = props;
15
17
  const taskStatus = normalizeTaskStatus(task.status, task.executionState);
16
18
  const executionDisplay = getTaskExecutionDisplayFromTask({
17
19
  taskStatus: task.status,
18
20
  executionState: task.executionState,
19
21
  });
20
22
  const isPlanTask = String(task.taskType ?? "").toLowerCase() === "plan" || task.title === "Project Plan";
21
- const assigneeValue = task.assigneeDisplayName ||
22
- task.assigneeId ||
23
- (task.assigneeType === "Agent" && isPlanTask ? "Project Planner" : "Unassigned");
23
+ const assigneeValue = getDisplayableAssignee(task, { isPlanTask });
24
24
  const executionIconTitle = executionDisplay?.label ?? "Execution idle";
25
25
  const priorityBorderClass = task.priority ? priorityDotColors[task.priority] : "border-l-transparent";
26
+ const canEditInlineAssignee = !!projectId && !!onAssigneeChange && canEditAssignee && !isPlanTask;
26
27
  return (_jsxs("div", { "data-testid": `taskboard-task-row-${task.taskId}`, className: cn("grid w-full grid-cols-[minmax(0,1fr)_6rem_7rem_2.5rem] gap-2.5 px-3.5 py-1.5 text-xs transition-colors border-l-2", priorityBorderClass, selected ? "bg-primary/5 shadow-sm" : "hover:bg-slate-50"), children: [_jsxs("button", { type: "button", onClick: onClick, className: "contents text-left", "data-testid": `taskboard-task-row-button-${task.taskId}`, children: [_jsxs("div", { className: "flex min-w-0 items-center gap-1.5", children: [_jsx("span", { className: cn("inline-flex h-4 w-4 shrink-0 items-center justify-center", executionDisplay?.showSpinner && "text-primary", executionDisplay?.needsAttention && "text-amber-600", !executionDisplay && "text-slate-300"), title: executionIconTitle, children: executionDisplay?.showSpinner ? (_jsx(Loader2, { className: "h-3 w-3 animate-spin" })) : executionDisplay?.needsAttention ? (_jsx(AlertTriangle, { className: "h-3 w-3" })) : (_jsx(Circle, { className: "h-2.5 w-2.5" })) }), _jsx("span", { "data-testid": `taskboard-task-title-${task.taskId}`, className: cn("truncate font-medium tracking-tight", selected ? "text-primary" : "text-slate-900"), title: task.description
27
28
  ? `${task.title} - ${task.description} (Priority: ${task.priority ?? "None"})`
28
- : `${task.title} (Priority: ${task.priority ?? "None"})`, children: task.title })] }), _jsx("div", { className: "flex items-center", children: _jsx(Badge, { variant: "outline", className: "h-4 px-1.5 text-[9px] font-semibold uppercase tracking-wide", "data-testid": `taskboard-task-status-${task.taskId}`, children: getTaskStatusLabel(taskStatus) }) }), _jsxs("div", { className: "flex items-center gap-1.5 text-slate-600", children: [task.assigneeType === "Agent" ? (_jsx(Bot, { className: "h-3 w-3 shrink-0 text-slate-400" })) : (_jsx(User, { className: "h-3 w-3 shrink-0 text-slate-400" })), _jsx("span", { className: "truncate text-[11px] font-medium", title: assigneeValue, "data-testid": `taskboard-task-assignee-${task.taskId}`, children: assigneeValue })] })] }), _jsx("div", { className: "flex items-center justify-end", children: onDelete ? (_jsx("button", { type: "button", className: "rounded-md p-1 text-slate-400 transition-colors hover:bg-destructive/10 hover:text-destructive", title: "Delete task", onClick: onDelete, "data-testid": `taskboard-task-delete-${task.taskId}`, children: _jsx(Trash2, { className: "h-3.5 w-3.5" }) })) : null })] }));
29
+ : `${task.title} (Priority: ${task.priority ?? "None"})`, children: task.title })] }), _jsx("div", { className: "flex items-center", children: _jsx(Badge, { variant: "outline", className: "h-4 px-1.5 text-[9px] font-semibold uppercase tracking-wide", "data-testid": `taskboard-task-status-${task.taskId}`, children: getTaskStatusLabel(taskStatus) }) })] }), _jsx("div", { className: "flex items-center gap-1.5 text-slate-600", children: canEditInlineAssignee ? (_jsx(TaskAssigneePicker, { projectId: projectId, assigneeType: task.assigneeType ?? null, value: task.assigneeId ?? null, displayValue: task.assigneeDisplayName ?? task.assigneeId ?? null, onChange: onAssigneeChange, placeholder: "Assign user or agent", buttonClassName: "h-[29px] w-full min-w-0 justify-between rounded-md bg-gray-50 text-xs font-medium", buttonTestId: `taskboard-task-assignee-${task.taskId}` })) : (_jsxs(_Fragment, { children: [task.assigneeType === "Agent" ? (_jsx(Bot, { className: "h-3 w-3 shrink-0 text-slate-400" })) : (_jsx(User, { className: "h-3 w-3 shrink-0 text-slate-400" })), _jsx("span", { className: "truncate text-[11px] font-medium", title: assigneeValue, "data-testid": `taskboard-task-assignee-${task.taskId}`, children: assigneeValue })] })) }), _jsx("div", { className: "flex items-center justify-end", children: onDelete ? (_jsx("button", { type: "button", className: "rounded-md p-1 text-slate-400 transition-colors hover:bg-destructive/10 hover:text-destructive", title: "Delete task", onClick: onDelete, "data-testid": `taskboard-task-delete-${task.taskId}`, children: _jsx(Trash2, { className: "h-3.5 w-3.5" }) })) : null })] }));
29
30
  }
30
31
  //# sourceMappingURL=TaskRow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TaskRow.js","sourceRoot":"","sources":["../../../src/task-board/components/TaskRow.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TaskRow.js","sourceRoot":"","sources":["../../../src/task-board/components/TaskRow.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import type { ReactNode } from "react";
2
+ import type { AiProfile } from "../../editor/services/aiService";
3
+ import type { Agent } from "../../editor/services/agentService";
4
+ export declare function WizardAgentTerminalPanel(props: {
5
+ agentStub: Agent;
6
+ profiles: AiProfile[];
7
+ isActive: boolean;
8
+ displayMode: "full" | "summary";
9
+ hideBottomControls: boolean;
10
+ openChatButton?: ReactNode;
11
+ summaryPlaceholderMessage?: string;
12
+ hideSummaryWaitingPlaceholder: boolean;
13
+ className?: string;
14
+ onInteractionSubmitted?: () => void | Promise<void>;
15
+ onQuestionnaireOpenChange?: (isOpen: boolean) => void;
16
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,7 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { AgentTerminal } from "../../editor/ai/AgentTerminal";
3
+ export function WizardAgentTerminalPanel(props) {
4
+ const { agentStub, profiles, isActive, displayMode, hideBottomControls, openChatButton, summaryPlaceholderMessage, hideSummaryWaitingPlaceholder, className, onInteractionSubmitted, onQuestionnaireOpenChange, } = props;
5
+ return (_jsx(AgentTerminal, { agentStub: agentStub, profiles: profiles, isActive: isActive, compact: true, hideGreeting: true, hideSummaryMessages: true, showSummaryInput: false, hideBottomControls: hideBottomControls, displayMode: displayMode, className: className, onInteractionSubmitted: onInteractionSubmitted, onQuestionnaireOpenChange: onQuestionnaireOpenChange, questionnaireFooterActions: openChatButton, summaryPlaceholderActions: openChatButton, summaryPlaceholderMessage: summaryPlaceholderMessage, hideSummaryWaitingPlaceholder: hideSummaryWaitingPlaceholder }, agentStub.id));
6
+ }
7
+ //# sourceMappingURL=WizardAgentTerminalPanel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WizardAgentTerminalPanel.js","sourceRoot":"","sources":["../../../src/task-board/components/WizardAgentTerminalPanel.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAI9D,MAAM,UAAU,wBAAwB,CAAC,KAYxC;IACC,MAAM,EACJ,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,kBAAkB,EAClB,cAAc,EACd,yBAAyB,EACzB,6BAA6B,EAC7B,SAAS,EACT,sBAAsB,EACtB,yBAAyB,GAC1B,GAAG,KAAK,CAAC;IAEV,OAAO,CACL,KAAC,aAAa,IAEZ,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,IAAI,EACb,YAAY,EAAE,IAAI,EAClB,mBAAmB,EAAE,IAAI,EACzB,gBAAgB,EAAE,KAAK,EACvB,kBAAkB,EAAE,kBAAkB,EACtC,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,SAAS,EACpB,sBAAsB,EAAE,sBAAsB,EAC9C,yBAAyB,EAAE,yBAAyB,EACpD,0BAA0B,EAAE,cAAc,EAC1C,yBAAyB,EAAE,cAAc,EACzC,yBAAyB,EAAE,yBAAyB,EACpD,6BAA6B,EAAE,6BAA6B,IAhBvD,SAAS,CAAC,EAAE,CAiBjB,CACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { ReactNode } from "react";
2
+ import type { TaskItem } from "../types";
3
+ import type { WizardCommunicationStats, WizardCommunicationSummaryState, WizardSummaryPresentation } from "./WizardCommunicationShared";
4
+ export declare function WizardWorkingSummaryCard(props: {
5
+ openChatButton?: ReactNode;
6
+ }): import("react/jsx-runtime").JSX.Element;
7
+ export declare function WizardBlockingSummary(props: {
8
+ unresolvedBlockingDetails: {
9
+ tasks: TaskItem[];
10
+ hiddenCount: number;
11
+ };
12
+ onSelectTask?: (taskId: string) => void;
13
+ }): import("react/jsx-runtime").JSX.Element;
14
+ export declare function WizardProjectSummaryCard(props: {
15
+ summaryState: WizardCommunicationSummaryState;
16
+ summaryPresentation: WizardSummaryPresentation;
17
+ stats: WizardCommunicationStats;
18
+ }): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,22 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { AlertCircle, CheckCircle2, Clock3, ListTodo, Loader2, PauseCircle, PlayCircle, } from "lucide-react";
3
+ import { WizardTaskStatusBadge } from "./WizardCommunicationShared";
4
+ export function WizardWorkingSummaryCard(props) {
5
+ const { openChatButton } = props;
6
+ return (_jsx("div", { className: "flex h-full items-center justify-center p-6", children: _jsxs("div", { className: "w-full max-w-xl rounded-2xl border border-emerald-200 bg-emerald-50 p-6 text-emerald-950", "data-testid": "taskboard-wizard-task-working-summary", children: [_jsxs("div", { className: "flex items-start gap-4", children: [_jsx("div", { className: "rounded-xl bg-white/70 p-3", children: _jsx(Loader2, { className: "h-6 w-6 animate-spin", strokeWidth: 1.75 }) }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("div", { className: "text-lg font-semibold", children: "Agent is working" }), _jsx("p", { className: "mt-1 text-sm opacity-90", children: "This task is actively running. Open chat to follow the live conversation." })] })] }), openChatButton ? (_jsx("div", { className: "mt-5 flex justify-start", children: openChatButton })) : null] }) }));
7
+ }
8
+ export function WizardBlockingSummary(props) {
9
+ const { unresolvedBlockingDetails, onSelectTask } = props;
10
+ return (_jsx("div", { className: "flex w-full justify-center px-6 pt-4 pb-6", children: _jsxs("div", { className: "w-full max-w-xl rounded-2xl border border-amber-200 bg-amber-50 p-6 text-amber-950", "data-testid": "taskboard-wizard-blocking-summary", children: [_jsxs("div", { className: "flex items-start gap-4", children: [_jsx("div", { className: "rounded-xl bg-white/70 p-3", children: _jsx(PauseCircle, { className: "h-6 w-6", strokeWidth: 1.75 }) }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("div", { className: "text-lg font-semibold", children: "Blocked by unfinished tasks" }), _jsx("p", { className: "mt-1 text-sm opacity-90", children: "Finish the dependencies below before this task can continue." })] })] }), unresolvedBlockingDetails.tasks.length > 0 ? (_jsx("div", { className: "mt-5 grid gap-2", "data-testid": "taskboard-wizard-blocker-list", children: unresolvedBlockingDetails.tasks.map((blockingTask) => {
11
+ const taskLabel = blockingTask.taskKey
12
+ ? `${blockingTask.taskKey} - ${blockingTask.title}`
13
+ : blockingTask.title;
14
+ return (_jsxs("button", { type: "button", className: "flex w-full items-center justify-between gap-3 rounded-xl border border-white/70 bg-white/80 px-4 py-3 text-left transition-colors hover:bg-white", "data-testid": `taskboard-wizard-blocker-task-${blockingTask.taskId}`, onClick: () => onSelectTask?.(blockingTask.taskId), children: [_jsxs("div", { className: "min-w-0", children: [_jsx("div", { className: "truncate text-sm font-semibold text-slate-900", children: taskLabel }), _jsx("div", { className: "mt-1 text-xs text-slate-600", children: "Open this task to unblock the selected work." })] }), _jsx("div", { className: "shrink-0 text-[11px]", children: _jsx(WizardTaskStatusBadge, { status: blockingTask.status }) })] }, blockingTask.taskId));
15
+ }) })) : null, unresolvedBlockingDetails.hiddenCount > 0 ? (_jsxs("div", { className: "mt-4 rounded-xl border border-white/60 bg-white/60 px-4 py-3 text-sm text-slate-700", children: [unresolvedBlockingDetails.hiddenCount, " blocking dependenc", unresolvedBlockingDetails.hiddenCount === 1 ? "y is" : "ies are", " ", "not visible in the current workspace."] })) : null] }) }));
16
+ }
17
+ export function WizardProjectSummaryCard(props) {
18
+ const { summaryState, summaryPresentation, stats } = props;
19
+ const SummaryIcon = summaryPresentation.icon;
20
+ return (_jsx("div", { className: "flex h-full items-center justify-center p-6", children: _jsxs("div", { className: `w-full max-w-xl rounded-2xl border p-6 ${summaryPresentation.accentClass}`, children: [_jsxs("div", { className: "flex items-start gap-4", children: [_jsx("div", { className: "rounded-xl bg-white/70 p-3", children: summaryState === "working" ? (_jsx(Loader2, { className: "h-6 w-6 animate-spin", strokeWidth: 1.75 })) : (_jsx(SummaryIcon, { className: "h-6 w-6", strokeWidth: 1.75 })) }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("div", { className: "text-lg font-semibold", children: summaryPresentation.title }), _jsx("p", { className: "mt-1 text-sm opacity-90", children: summaryPresentation.description })] })] }), _jsxs("div", { className: "mt-5 grid gap-3 sm:grid-cols-5", children: [_jsxs("div", { className: "rounded-xl border border-white/60 bg-white/70 p-3", children: [_jsxs("div", { className: "flex items-center gap-2 text-xs font-medium text-slate-500", children: [_jsx(ListTodo, { className: "h-4 w-4" }), "Total"] }), _jsx("div", { className: "mt-1 text-xl font-semibold text-slate-900", children: stats.totalCount })] }), _jsxs("div", { className: "rounded-xl border border-white/60 bg-white/70 p-3", children: [_jsxs("div", { className: "flex items-center gap-2 text-xs font-medium text-slate-500", children: [_jsx(CheckCircle2, { className: "h-4 w-4" }), "Done"] }), _jsx("div", { className: "mt-1 text-xl font-semibold text-slate-900", children: stats.completedCount })] }), _jsxs("div", { className: "rounded-xl border border-white/60 bg-white/70 p-3", children: [_jsxs("div", { className: "flex items-center gap-2 text-xs font-medium text-slate-500", children: [_jsx(PlayCircle, { className: "h-4 w-4" }), "Working"] }), _jsx("div", { className: "mt-1 text-xl font-semibold text-slate-900", children: stats.runningCount })] }), _jsxs("div", { className: "rounded-xl border border-white/60 bg-white/70 p-3", children: [_jsxs("div", { className: "flex items-center gap-2 text-xs font-medium text-slate-500", children: [_jsx(Clock3, { className: "h-4 w-4" }), "Approval"] }), _jsx("div", { className: "mt-1 text-xl font-semibold text-slate-900", children: stats.approvalCount })] }), _jsxs("div", { className: "rounded-xl border border-white/60 bg-white/70 p-3", children: [_jsxs("div", { className: "flex items-center gap-2 text-xs font-medium text-slate-500", children: [_jsx(AlertCircle, { className: "h-4 w-4" }), "Blocked"] }), _jsx("div", { className: "mt-1 text-xl font-semibold text-slate-900", children: stats.blockedCount })] })] })] }) }));
21
+ }
22
+ //# sourceMappingURL=WizardCommunicationCards.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WizardCommunicationCards.js","sourceRoot":"","sources":["../../../src/task-board/components/WizardCommunicationCards.tsx"],"names":[],"mappings":"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"}
@@ -1,14 +1,7 @@
1
1
  import type { AgentStatus } from "../../editor/services/agentService";
2
2
  import type { TaskExecutionDisplay } from "../taskExecutionStatus";
3
3
  import type { TaskDependency, TaskItem } from "../types";
4
- type WizardCommunicationSummaryState = "working" | "blocked" | "idle" | "complete";
5
- type WizardCommunicationStats = {
6
- totalCount: number;
7
- completedCount: number;
8
- approvalCount: number;
9
- blockedCount: number;
10
- runningCount: number;
11
- };
4
+ import { type WizardCommunicationStats, type WizardCommunicationSummaryState } from "./WizardCommunicationShared";
12
5
  export declare function WizardCommunicationCenter(props: {
13
6
  task: TaskItem | null;
14
7
  agentId: string | null;
@@ -16,9 +9,6 @@ export declare function WizardCommunicationCenter(props: {
16
9
  executionDisplay?: TaskExecutionDisplay | null;
17
10
  summaryState: WizardCommunicationSummaryState;
18
11
  stats: WizardCommunicationStats;
19
- projectTitle: string;
20
- projectDescription?: string;
21
- taskProjectTitle?: string;
22
12
  allTasks?: TaskItem[];
23
13
  dependencies?: TaskDependency[];
24
14
  canEdit?: boolean;
@@ -30,4 +20,3 @@ export declare function WizardCommunicationCenter(props: {
30
20
  onCloseTask?: () => void;
31
21
  onSelectTask?: (taskId: string) => void;
32
22
  }): import("react/jsx-runtime").JSX.Element;
33
- export {};