@parhelia/core 0.1.12393 → 0.1.12397

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 (42) hide show
  1. package/dist/editor/PictureCropper.js +9 -4
  2. package/dist/editor/PictureCropper.js.map +1 -1
  3. package/dist/editor/PictureEditor.js +12 -13
  4. package/dist/editor/PictureEditor.js.map +1 -1
  5. package/dist/editor/ai/dialogs/agentDialogTypes.d.ts +1 -1
  6. package/dist/editor/client/editContext.d.ts +4 -0
  7. package/dist/editor/client/editContext.js.map +1 -1
  8. package/dist/editor/pictureRawValue.d.ts +3 -0
  9. package/dist/editor/pictureRawValue.js +30 -0
  10. package/dist/editor/pictureRawValue.js.map +1 -0
  11. package/dist/editor/settings/panels/AgentProfileEditorPanel.d.ts +14 -0
  12. package/dist/editor/settings/panels/AgentProfileEditorPanel.js +7 -0
  13. package/dist/editor/settings/panels/AgentProfileEditorPanel.js.map +1 -0
  14. package/dist/editor/settings/panels/AgentsPanel.js +2 -2
  15. package/dist/editor/settings/panels/AgentsPanel.js.map +1 -1
  16. package/dist/editor/settings/panels/ProjectTemplatesPanel.js +146 -8
  17. package/dist/editor/settings/panels/ProjectTemplatesPanel.js.map +1 -1
  18. package/dist/revision.d.ts +2 -2
  19. package/dist/revision.js +2 -2
  20. package/dist/task-board/TaskBoardWorkspace.js +3 -2
  21. package/dist/task-board/TaskBoardWorkspace.js.map +1 -1
  22. package/dist/task-board/components/ProjectDashboard.d.ts +4 -0
  23. package/dist/task-board/components/ProjectDashboard.js +1 -1
  24. package/dist/task-board/components/ProjectDashboard.js.map +1 -1
  25. package/dist/task-board/components/ProjectListContent.d.ts +1 -1
  26. package/dist/task-board/components/ProjectListContent.js +4 -1
  27. package/dist/task-board/components/ProjectListContent.js.map +1 -1
  28. package/dist/task-board/components/ProjectOverviewContent.d.ts +17 -0
  29. package/dist/task-board/components/ProjectOverviewContent.js +134 -0
  30. package/dist/task-board/components/ProjectOverviewContent.js.map +1 -0
  31. package/dist/task-board/components/ProjectSelector.d.ts +1 -1
  32. package/dist/task-board/components/ProjectSelector.js +1 -1
  33. package/dist/task-board/components/ProjectSelector.js.map +1 -1
  34. package/dist/task-board/components/TaskDetailPanel.js +59 -9
  35. package/dist/task-board/components/TaskDetailPanel.js.map +1 -1
  36. package/dist/task-board/services/taskService.d.ts +4 -1
  37. package/dist/task-board/services/taskService.js +3 -0
  38. package/dist/task-board/services/taskService.js.map +1 -1
  39. package/dist/task-board/taskBoardNavStore.d.ts +3 -1
  40. package/dist/task-board/taskBoardNavStore.js.map +1 -1
  41. package/dist/task-board/types.d.ts +30 -0
  42. package/package.json +1 -1
@@ -0,0 +1,134 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useMemo, useState } from "react";
3
+ import { AlertTriangle, Clock, FolderPlus, LayoutGrid, Loader2, Search, Settings, Shield, Trash2, } from "lucide-react";
4
+ import { formatDistanceToNow } from "date-fns";
5
+ import { Button } from "../../components/ui/button";
6
+ import { Input } from "../../components/ui/input";
7
+ import { Tooltip, TooltipContent, TooltipTrigger, } from "../../components/ui/tooltip";
8
+ import { cn } from "../../lib/utils";
9
+ import { TaskStateProgressBar } from "./ProjectDashboard";
10
+ function formatAttentionSummaryLine(project) {
11
+ const attention = project.overview?.attention;
12
+ if (!attention || attention.total <= 0)
13
+ return "No attention needed";
14
+ const cap = attention.capacity ?? 0;
15
+ const parts = [];
16
+ if (attention.failed > 0)
17
+ parts.push(`${attention.failed} failed`);
18
+ if (attention.budget > 0)
19
+ parts.push(`${attention.budget} budget`);
20
+ if (attention.blocked > 0)
21
+ parts.push(`${attention.blocked} blocked`);
22
+ if (cap > 0)
23
+ parts.push(`${cap} capacity`);
24
+ if (attention.approval > 0) {
25
+ parts.push(`${attention.approval} ${attention.approval === 1 ? "approval" : "approvals"}`);
26
+ }
27
+ if (attention.input > 0) {
28
+ parts.push(`${attention.input} ${attention.input === 1 ? "input" : "inputs"}`);
29
+ }
30
+ if (parts.length > 0)
31
+ return parts.join(", ");
32
+ return `${attention.total} need attention`;
33
+ }
34
+ function buildAttentionTooltipText(project) {
35
+ const attention = project.overview?.attention;
36
+ if (!attention || attention.total <= 0) {
37
+ return "No tasks in this project currently need execution attention.";
38
+ }
39
+ const cap = attention.capacity ?? 0;
40
+ const lines = [
41
+ "Tasks counted here are waiting on execution: errors, limits, dependencies, approvals, input, or agent capacity.",
42
+ ];
43
+ if (attention.failed > 0) {
44
+ lines.push(`Failed (${attention.failed}): agent or tool reported an error.`);
45
+ }
46
+ if (attention.budget > 0) {
47
+ lines.push(`Budget (${attention.budget}): project cost limit reached.`);
48
+ }
49
+ if (attention.blocked > 0) {
50
+ lines.push(`Blocked (${attention.blocked}): unfinished task dependencies.`);
51
+ }
52
+ if (cap > 0) {
53
+ lines.push(`Capacity (${cap}): waiting for a free agent slot on this project.`);
54
+ }
55
+ if (attention.approval > 0) {
56
+ lines.push(`Approval (${attention.approval}): review or tool approval required.`);
57
+ }
58
+ if (attention.input > 0) {
59
+ lines.push(`Input (${attention.input}): user or agent input required.`);
60
+ }
61
+ if (lines.length === 1) {
62
+ return `${lines[0]}\n\nTotal attention count may include categories not listed if data is from an older API.`;
63
+ }
64
+ return lines.join("\n\n");
65
+ }
66
+ function getAttentionClasses(project) {
67
+ const attention = project.overview?.attention;
68
+ if (!attention || attention.total <= 0) {
69
+ return "border-slate-200 bg-slate-50 text-slate-500";
70
+ }
71
+ if (attention.failed > 0 || attention.budget > 0) {
72
+ return "border-red-200 bg-red-50 text-red-700";
73
+ }
74
+ return "border-amber-200 bg-amber-50 text-amber-700";
75
+ }
76
+ export function ProjectOverviewContent({ nav }) {
77
+ const [projectSearch, setProjectSearch] = useState("");
78
+ const [hideArchivedProjects, setHideArchivedProjects] = useState(true);
79
+ const filteredProjectOptions = useMemo(() => {
80
+ const query = projectSearch.trim().toLowerCase();
81
+ return nav.projectOptions.filter((project) => {
82
+ if (hideArchivedProjects &&
83
+ project.status?.toLowerCase() === "archived") {
84
+ return false;
85
+ }
86
+ if (!query)
87
+ return true;
88
+ const title = project.title?.toLowerCase() ?? "";
89
+ const description = project.description?.toLowerCase() ?? "";
90
+ const permission = project.permission?.toLowerCase() ?? "";
91
+ const status = project.status?.toLowerCase() ?? "";
92
+ const attentionLabel = formatAttentionSummaryLine(project).toLowerCase();
93
+ return (title.includes(query) ||
94
+ description.includes(query) ||
95
+ permission.includes(query) ||
96
+ status.includes(query) ||
97
+ attentionLabel.includes(query));
98
+ });
99
+ }, [hideArchivedProjects, nav.projectOptions, projectSearch]);
100
+ return (_jsxs("div", { className: "flex min-h-full w-full flex-col rounded-2xl border bg-white shadow-sm", "data-testid": "taskboard-project-overview", children: [_jsxs("div", { className: "flex flex-col gap-3 border-b px-4 py-4 md:flex-row md:items-start md:justify-between", children: [_jsxs("div", { className: "space-y-1", children: [_jsx("div", { className: "text-xs font-semibold tracking-wider text-slate-500 uppercase", children: "Taskboard" }), _jsx("h2", { className: "text-xl font-semibold text-slate-900", children: "Project Overview" }), _jsx("p", { className: "max-w-2xl text-sm text-slate-500", children: "Pick a project to open the board. Progress and attention are shown here so you can see what needs help first." })] }), _jsxs(Button, { variant: "default", size: "sm", className: "h-9 px-3", "data-testid": "taskboard-project-overview-create-button", onClick: () => nav.onCreateProject?.(), children: [_jsx(FolderPlus, { className: "mr-1.5 h-3.5 w-3.5" }), "New project"] })] }), _jsx("div", { className: "border-b px-4 py-3", children: _jsxs("div", { className: "grid gap-3 lg:grid-cols-[minmax(0,1fr)_auto_auto] lg:items-center", children: [_jsxs("div", { className: "relative", children: [_jsx(Search, { className: "pointer-events-none absolute top-1/2 left-2.5 h-3.5 w-3.5 -translate-y-1/2 text-slate-400" }), _jsx(Input, { value: projectSearch, onChange: (e) => setProjectSearch(e.target.value), placeholder: "Search projects...", className: "h-9 pl-8 text-sm", "data-testid": "taskboard-project-overview-search-input" })] }), _jsxs("label", { className: "flex items-center gap-2 text-xs text-slate-600", children: [_jsx("input", { type: "checkbox", checked: hideArchivedProjects, onChange: (e) => setHideArchivedProjects(e.target.checked), "data-testid": "taskboard-project-overview-hide-archived" }), "Hide archived projects"] }), nav.isAdministrator ? (_jsxs("label", { className: "flex items-center gap-2 text-xs text-slate-600", children: [_jsx("input", { type: "checkbox", checked: nav.showAllProjects, onChange: (e) => nav.onToggleShowAllProjects?.(e.target.checked), "data-testid": "taskboard-project-overview-show-all-projects" }), "Show all projects"] })) : null] }) }), _jsx("div", { className: "min-h-0 flex-1 overflow-y-auto p-4", children: nav.isProjectsLoading && nav.projectOptions.length === 0 ? (_jsxs("div", { className: "flex min-h-[240px] items-center justify-center gap-2 rounded-xl border border-dashed text-sm text-slate-400", "data-testid": "taskboard-project-overview-loading", children: [_jsx(Loader2, { className: "h-4 w-4 animate-spin" }), "Loading projects..."] })) : nav.projectOptions.length === 0 ? (_jsx("div", { className: "rounded-xl border border-dashed px-4 py-12 text-center text-sm text-slate-400", children: "No projects yet" })) : filteredProjectOptions.length === 0 ? (_jsx("div", { className: "rounded-xl border border-dashed px-4 py-12 text-center text-sm text-slate-400", children: "No matching projects" })) : (_jsx("div", { className: "grid gap-4 md:grid-cols-2 xl:grid-cols-3", children: filteredProjectOptions.map((project) => {
101
+ const counts = project.overview?.taskCounts ?? {
102
+ total: 0,
103
+ todo: 0,
104
+ waiting: 0,
105
+ inProgress: 0,
106
+ review: 0,
107
+ done: 0,
108
+ };
109
+ const attentionTotal = project.overview?.attention?.total ?? 0;
110
+ const attentionLine = formatAttentionSummaryLine(project);
111
+ const attentionTooltip = buildAttentionTooltipText(project);
112
+ const completionLabel = counts.total > 0
113
+ ? `${counts.done}/${counts.total} done`
114
+ : "No tasks yet";
115
+ const canManage = project.permission === "Owner";
116
+ const isSelected = project.projectId === nav.selectedProjectId;
117
+ const depth = Math.max(0, Math.min(project.depth ?? 0, 6));
118
+ const subprojectCount = project.overview?.directSubprojectCount ?? 0;
119
+ return (_jsxs("div", { className: cn("group flex flex-col rounded-xl border bg-white transition-colors", isSelected
120
+ ? "border-slate-300 shadow-sm"
121
+ : "border-slate-200 hover:border-slate-300"), "data-testid": `taskboard-project-overview-card-${project.projectId}`, children: [_jsxs("div", { className: "flex items-start justify-between gap-2 px-4 pt-4", children: [_jsxs("button", { type: "button", className: "min-w-0 flex-1 text-left", onClick: () => nav.onSelectProject?.(project.projectId), children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx(LayoutGrid, { className: "h-4 w-4 flex-none text-slate-400" }), depth > 0 ? (_jsx("span", { className: "text-[10px] text-slate-400", children: "↳".repeat(Math.min(depth, 2)) })) : null, _jsx("span", { className: "truncate text-base font-semibold text-slate-900", children: project.title })] }), project.description?.trim() ? (_jsx("p", { className: "mt-2 line-clamp-3 text-xs text-slate-500", children: project.description.trim() })) : (_jsx("p", { className: "mt-2 text-xs text-slate-400", children: "No description" }))] }), canManage ? (_jsxs("div", { className: "flex items-center gap-1 opacity-100 transition-opacity md:opacity-0 md:group-hover:opacity-100", children: [_jsx(Button, { variant: "ghost", size: "icon", className: "h-8 w-8", onClick: (e) => {
122
+ e.stopPropagation();
123
+ nav.onOpenProjectSettings?.(project.projectId);
124
+ }, title: "Project settings", "data-testid": `taskboard-project-overview-settings-${project.projectId}`, children: _jsx(Settings, { className: "h-3.5 w-3.5" }) }), _jsx(Button, { variant: "ghost", size: "icon", className: "text-destructive hover:bg-destructive/10 hover:text-destructive h-8 w-8", onClick: (e) => {
125
+ e.stopPropagation();
126
+ nav.onDeleteProject?.(project.projectId, project.title);
127
+ }, title: "Delete project", "data-testid": `taskboard-project-overview-delete-${project.projectId}`, children: _jsx(Trash2, { className: "h-3.5 w-3.5" }) })] })) : null] }), _jsxs("button", { type: "button", className: "flex flex-1 flex-col px-4 pb-4 text-left", onClick: () => nav.onSelectProject?.(project.projectId), children: [_jsxs("div", { className: "mt-4 flex flex-wrap items-center gap-2", children: [_jsx("span", { className: "rounded-full border border-slate-200 bg-slate-50 px-2.5 py-1 text-[11px] font-medium text-slate-600", children: project.status ?? "Active" }), _jsxs(Tooltip, { delayDuration: 250, children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx("span", { className: cn("inline-flex cursor-default rounded-full border px-2.5 py-1 text-[11px] font-medium", getAttentionClasses(project)), "data-testid": `taskboard-project-overview-attention-${project.projectId}`, children: _jsxs("span", { className: "inline-flex items-center gap-1", children: [_jsx(AlertTriangle, { className: "h-3 w-3" }), attentionTotal > 0
128
+ ? attentionLine
129
+ : "No attention needed"] }) }) }), _jsx(TooltipContent, { side: "top", sideOffset: 6, className: "max-w-xs whitespace-pre-line text-left", children: attentionTooltip })] })] }), _jsxs("div", { className: "mt-auto pt-4", children: [_jsxs("div", { className: "space-y-2", children: [_jsxs("div", { className: "flex items-center justify-between gap-3 text-xs text-slate-500", children: [_jsx("span", { children: "Progress" }), _jsx("span", { children: completionLabel })] }), _jsx(TaskStateProgressBar, { counts: counts }), _jsxs("div", { className: "flex flex-wrap gap-2 text-[11px] text-slate-500", children: [_jsxs("span", { children: [counts.todo, " todo"] }), _jsxs("span", { children: [counts.inProgress, " in progress"] }), _jsxs("span", { children: [counts.review, " review"] }), _jsxs("span", { children: [counts.waiting, " waiting"] })] })] }), _jsxs("div", { className: "mt-4 flex flex-wrap items-center gap-3 border-t pt-3 text-[11px] text-slate-500", children: [_jsxs("span", { className: "inline-flex items-center gap-1.5", children: [_jsx(Shield, { className: "h-3 w-3 text-slate-400" }), project.permission] }), subprojectCount > 0 ? (_jsxs("span", { children: [subprojectCount, " subproject", subprojectCount === 1 ? "" : "s"] })) : null, project.updatedAt ? (_jsxs("span", { className: "inline-flex items-center gap-1.5", title: `Last updated: ${new Date(project.updatedAt).toLocaleString()}`, children: [_jsx(Clock, { className: "h-3 w-3 text-slate-400" }), formatDistanceToNow(new Date(project.updatedAt), {
130
+ addSuffix: true,
131
+ })] })) : null] })] })] })] }, project.projectId));
132
+ }) })) })] }));
133
+ }
134
+ //# sourceMappingURL=ProjectOverviewContent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProjectOverviewContent.js","sourceRoot":"","sources":["../../../src/task-board/components/ProjectOverviewContent.tsx"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ interface ProjectSelectorProps {
9
9
  showAllProjects: boolean;
10
10
  isProjectsLoading: boolean;
11
11
  projectOptions: TaskBoardProjectOption[];
12
- onSelectProject?: (projectId: string) => void;
12
+ onSelectProject?: (projectId: string | null) => void;
13
13
  onCreateProject?: () => void;
14
14
  onOpenProjectSettings?: (projectId: string) => void;
15
15
  onDeleteProject?: (projectId: string, title: string) => void;
@@ -5,6 +5,6 @@ import { Popover, PopoverContent, PopoverTrigger, } from "../../components/ui/po
5
5
  import { ProjectListContent } from "./ProjectListContent";
6
6
  export function ProjectSelector({ nav }) {
7
7
  const [projectPopoverOpen, setProjectPopoverOpen] = useState(false);
8
- return (_jsxs(Popover, { open: projectPopoverOpen, onOpenChange: setProjectPopoverOpen, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs("button", { type: "button", "data-testid": "taskboard-project-selector-trigger", className: "group flex min-w-0 items-center gap-2 rounded-md px-2 py-1 text-left hover:bg-slate-100/70", title: "Select project", children: [_jsxs("div", { className: "min-w-0", children: [_jsx("div", { className: "truncate text-sm font-semibold text-slate-900", children: nav.projectTitle }), _jsxs("div", { className: "mt-0.5 flex items-center gap-2", children: [nav.selectedProjectId && (_jsx("div", { className: "h-1.5 w-1.5 shrink-0 rounded-full bg-green-500" })), _jsx("span", { className: "truncate text-[11px] text-slate-500", children: nav.projectSubtitle }), nav.selectedProjectId && (_jsx("span", { className: "shrink-0 truncate text-[10px] font-semibold tracking-wider text-slate-400 uppercase", children: nav.permissionLabel }))] })] }), _jsx(ChevronDown, { className: "h-4 w-4 shrink-0 text-slate-500 group-hover:text-slate-700" })] }) }), _jsx(PopoverContent, { align: "start", sideOffset: 8, className: "w-dvw max-w-[420px] p-0", "data-testid": "taskboard-project-popover", children: _jsx(ProjectListContent, { nav: nav, onProjectSelected: () => setProjectPopoverOpen(false) }) })] }));
8
+ return (_jsxs(Popover, { open: projectPopoverOpen, onOpenChange: setProjectPopoverOpen, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs("button", { type: "button", "data-testid": "taskboard-project-selector-trigger", className: "group flex min-w-0 items-center gap-2 rounded-md px-2 py-1 text-left hover:bg-slate-100/70", title: "Select project", children: [_jsxs("div", { className: "min-w-0", children: [_jsx("div", { className: "truncate text-sm font-semibold text-slate-900", children: nav.projectTitle }), _jsxs("div", { className: "mt-0.5 flex items-center gap-2", children: [nav.selectedProjectId && (_jsx("div", { className: "h-1.5 w-1.5 shrink-0 rounded-full bg-green-500" })), _jsx("span", { className: "truncate text-[11px] text-slate-500", children: nav.projectSubtitle }), nav.selectedProjectId && (_jsx("span", { className: "shrink-0 truncate text-[10px] font-semibold tracking-wider text-slate-400 uppercase", children: nav.permissionLabel }))] })] }), _jsx(ChevronDown, { className: "h-4 w-4 shrink-0 text-slate-500 group-hover:text-slate-700" })] }) }), _jsx(PopoverContent, { align: "start", sideOffset: 8, className: "w-[calc(100vw-2rem)] max-w-[560px] p-0", "data-testid": "taskboard-project-popover", children: _jsx(ProjectListContent, { nav: nav, onProjectSelected: () => setProjectPopoverOpen(false) }) })] }));
9
9
  }
10
10
  //# sourceMappingURL=ProjectSelector.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectSelector.js","sourceRoot":"","sources":["../../../src/task-board/components/ProjectSelector.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EACL,WAAW,GACZ,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,OAAO,EACP,cAAc,EACd,cAAc,GACf,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAoB1D,MAAM,UAAU,eAAe,CAAC,EAAE,GAAG,EAAwB;IAC3D,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEpE,OAAO,CACL,MAAC,OAAO,IAAC,IAAI,EAAE,kBAAkB,EAAE,YAAY,EAAE,qBAAqB,aACpE,KAAC,cAAc,IAAC,OAAO,kBACrB,kBACE,IAAI,EAAC,QAAQ,iBACD,oCAAoC,EAChD,SAAS,EAAC,4FAA4F,EACtG,KAAK,EAAC,gBAAgB,aAEtB,eAAK,SAAS,EAAC,SAAS,aACtB,cAAK,SAAS,EAAC,+CAA+C,YAC3D,GAAG,CAAC,YAAY,GACb,EACN,eAAK,SAAS,EAAC,gCAAgC,aAC5C,GAAG,CAAC,iBAAiB,IAAI,CACxB,cAAK,SAAS,EAAC,gDAAgD,GAAG,CACnE,EACD,eAAM,SAAS,EAAC,qCAAqC,YAClD,GAAG,CAAC,eAAe,GACf,EACN,GAAG,CAAC,iBAAiB,IAAI,CACxB,eAAM,SAAS,EAAC,qFAAqF,YAClG,GAAG,CAAC,eAAe,GACf,CACR,IACG,IACF,EACN,KAAC,WAAW,IAAC,SAAS,EAAC,4DAA4D,GAAG,IAC/E,GACM,EACjB,KAAC,cAAc,IACb,KAAK,EAAC,OAAO,EACb,UAAU,EAAE,CAAC,EACb,SAAS,EAAC,yBAAyB,iBACvB,2BAA2B,YAEvC,KAAC,kBAAkB,IACjB,GAAG,EAAE,GAAG,EACR,iBAAiB,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,KAAK,CAAC,GACrD,GACa,IACT,CACX,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"ProjectSelector.js","sourceRoot":"","sources":["../../../src/task-board/components/ProjectSelector.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EACL,WAAW,GACZ,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,OAAO,EACP,cAAc,EACd,cAAc,GACf,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAoB1D,MAAM,UAAU,eAAe,CAAC,EAAE,GAAG,EAAwB;IAC3D,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEpE,OAAO,CACL,MAAC,OAAO,IAAC,IAAI,EAAE,kBAAkB,EAAE,YAAY,EAAE,qBAAqB,aACpE,KAAC,cAAc,IAAC,OAAO,kBACrB,kBACE,IAAI,EAAC,QAAQ,iBACD,oCAAoC,EAChD,SAAS,EAAC,4FAA4F,EACtG,KAAK,EAAC,gBAAgB,aAEtB,eAAK,SAAS,EAAC,SAAS,aACtB,cAAK,SAAS,EAAC,+CAA+C,YAC3D,GAAG,CAAC,YAAY,GACb,EACN,eAAK,SAAS,EAAC,gCAAgC,aAC5C,GAAG,CAAC,iBAAiB,IAAI,CACxB,cAAK,SAAS,EAAC,gDAAgD,GAAG,CACnE,EACD,eAAM,SAAS,EAAC,qCAAqC,YAClD,GAAG,CAAC,eAAe,GACf,EACN,GAAG,CAAC,iBAAiB,IAAI,CACxB,eAAM,SAAS,EAAC,qFAAqF,YAClG,GAAG,CAAC,eAAe,GACf,CACR,IACG,IACF,EACN,KAAC,WAAW,IAAC,SAAS,EAAC,4DAA4D,GAAG,IAC/E,GACM,EACjB,KAAC,cAAc,IACb,KAAK,EAAC,OAAO,EACb,UAAU,EAAE,CAAC,EACb,SAAS,EAAC,wCAAwC,iBACtC,2BAA2B,YAEvC,KAAC,kBAAkB,IACjB,GAAG,EAAE,GAAG,EACR,iBAAiB,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,KAAK,CAAC,GACrD,GACa,IACT,CACX,CAAC;AACJ,CAAC"}
@@ -8,7 +8,7 @@ import { Textarea } from "../../components/ui/textarea";
8
8
  import { Select } from "../../components/ui/select";
9
9
  import { Plus, Link as LinkIcon, Trash2, X, Loader2, MessageSquare, CheckCircle2, } from "lucide-react";
10
10
  import { useEditContext } from "../../editor/client/editContext";
11
- import { addComment, updateTask, deleteTask } from "../services/taskService";
11
+ import { addComment, updateTask, deleteTask, removeDependency, } from "../services/taskService";
12
12
  import { CommentsList } from "./CommentsList";
13
13
  import { TaskCard } from "./TaskCard";
14
14
  import { CreateTaskDialog } from "./CreateTaskDialog";
@@ -34,12 +34,24 @@ const priorities = [
34
34
  { value: "High", label: "High" },
35
35
  { value: "Critical", label: "Critical" },
36
36
  ];
37
+ function RelationshipRow(props) {
38
+ const { entry, compact, canEdit, isRemoving, dependencyTaskIds, onSelectTask, onRemove, } = props;
39
+ const removeButton = canEdit ? (_jsx(Button, { variant: "ghost", size: "icon", className: "h-7 w-7 shrink-0 text-slate-400 hover:bg-red-50 hover:text-red-600", onClick: (event) => {
40
+ event.stopPropagation();
41
+ void onRemove(entry.dependency);
42
+ }, disabled: isRemoving, title: "Remove relationship", "data-testid": `taskboard-task-detail-remove-dependency-${entry.dependency.dependencyId}`, children: isRemoving ? (_jsx(Loader2, { className: "h-3.5 w-3.5 animate-spin" })) : (_jsx(Trash2, { className: "h-3.5 w-3.5" })) })) : null;
43
+ if (compact) {
44
+ return (_jsxs("div", { className: "group flex items-center gap-2 rounded-md border border-slate-200 bg-white pr-2 transition-colors hover:border-slate-300 hover:bg-slate-50", children: [_jsxs("button", { type: "button", onClick: () => onSelectTask(entry.task.taskId), className: "flex min-w-0 flex-1 items-center gap-2 px-3 py-2 text-left", children: [_jsx(Badge, { variant: "outline", className: "h-4 border-slate-200 bg-slate-50 px-1 text-[8px] font-bold text-slate-400 group-hover:border-slate-300", children: entry.task.taskKey || entry.task.taskId.slice(0, 4) }), _jsx("span", { className: "truncate text-xs font-medium text-slate-700", children: entry.task.title }), entry.task.status === "Done" && (_jsx(CheckCircle2, { className: "ml-auto h-3.5 w-3.5 shrink-0 text-emerald-600" }))] }), removeButton] }));
45
+ }
46
+ return (_jsxs("div", { className: "relative", children: [_jsx(TaskCard, { task: entry.task, selected: false, onClick: () => onSelectTask(entry.task.taskId), dependencyTaskIds: dependencyTaskIds, showDoneCheckmark: true }), canEdit ? (_jsx("div", { className: "absolute top-2 right-2 z-10", children: removeButton })) : null] }));
47
+ }
37
48
  export function TaskDetailPanel(props) {
38
49
  const { project, task, allTasks, dependencies, onTaskChanged, onSelectTask, onClose, variant = "panel", } = props;
39
50
  const [commentText, setCommentText] = useState("");
40
51
  const [commentRefreshKey, setCommentRefreshKey] = useState(0);
41
52
  const [isCreateSubtaskOpen, setIsCreateSubtaskOpen] = useState(false);
42
53
  const [isAddDependencyOpen, setIsAddDependencyOpen] = useState(false);
54
+ const [removingDependencyId, setRemovingDependencyId] = useState(null);
43
55
  const [localDescription, setLocalDescription] = useState(task?.description ?? "");
44
56
  const [localResultData, setLocalResultData] = useState(task?.resultData ?? "");
45
57
  const editContext = useEditContext();
@@ -124,16 +136,22 @@ export function TaskDetailPanel(props) {
124
136
  return [];
125
137
  const blockingDeps = dependencies.filter((d) => d.taskId === task.taskId && d.dependencyType === "BlockedBy");
126
138
  return blockingDeps
127
- .map((dep) => allTasks.find((t) => t.taskId === dep.dependsOnTaskId))
128
- .filter((t) => t !== undefined);
139
+ .map((dep) => {
140
+ const linkedTask = allTasks.find((t) => t.taskId === dep.dependsOnTaskId);
141
+ return linkedTask ? { dependency: dep, task: linkedTask } : null;
142
+ })
143
+ .filter((entry) => entry !== null);
129
144
  }, [task, dependencies, allTasks]);
130
145
  const relatedTasks = useMemo(() => {
131
146
  if (!task)
132
147
  return [];
133
148
  const relatedDeps = dependencies.filter((d) => d.taskId === task.taskId && d.dependencyType === "RelatedTo");
134
149
  return relatedDeps
135
- .map((dep) => allTasks.find((t) => t.taskId === dep.dependsOnTaskId))
136
- .filter((t) => t !== undefined);
150
+ .map((dep) => {
151
+ const linkedTask = allTasks.find((t) => t.taskId === dep.dependsOnTaskId);
152
+ return linkedTask ? { dependency: dep, task: linkedTask } : null;
153
+ })
154
+ .filter((entry) => entry !== null);
137
155
  }, [task, dependencies, allTasks]);
138
156
  const blockingTasks = useMemo(() => {
139
157
  if (!task)
@@ -141,8 +159,11 @@ export function TaskDetailPanel(props) {
141
159
  // Tasks that are blocked by this task
142
160
  const blockingDeps = dependencies.filter((d) => d.dependsOnTaskId === task.taskId && d.dependencyType === "BlockedBy");
143
161
  return blockingDeps
144
- .map((dep) => allTasks.find((t) => t.taskId === dep.taskId))
145
- .filter((t) => t !== undefined);
162
+ .map((dep) => {
163
+ const linkedTask = allTasks.find((t) => t.taskId === dep.taskId);
164
+ return linkedTask ? { dependency: dep, task: linkedTask } : null;
165
+ })
166
+ .filter((entry) => entry !== null);
146
167
  }, [task, dependencies, allTasks]);
147
168
  const setStatus = async (status) => {
148
169
  if (!task)
@@ -242,6 +263,29 @@ export function TaskDetailPanel(props) {
242
263
  toast.success("Comment added");
243
264
  await onTaskChanged();
244
265
  };
266
+ const removeRelationship = useCallback(async (dependency) => {
267
+ setRemovingDependencyId(dependency.dependencyId);
268
+ try {
269
+ const result = await removeDependency({
270
+ dependencyId: dependency.dependencyId,
271
+ });
272
+ if (result.type !== "success") {
273
+ toast.error(result.summary || "Failed to remove relationship");
274
+ return;
275
+ }
276
+ const response = result.data;
277
+ const removedCount = response?.removedCount ?? response?.RemovedCount ?? 1;
278
+ if (removedCount <= 0) {
279
+ toast.error("Relationship not found");
280
+ return;
281
+ }
282
+ toast.success("Relationship removed");
283
+ await onTaskChanged();
284
+ }
285
+ finally {
286
+ setRemovingDependencyId((current) => current === dependency.dependencyId ? null : current);
287
+ }
288
+ }, [onTaskChanged]);
245
289
  const parentOptions = useMemo(() => {
246
290
  if (!task)
247
291
  return [];
@@ -335,9 +379,15 @@ export function TaskDetailPanel(props) {
335
379
  }, [task]);
336
380
  return (_jsxs("div", { "data-testid": "taskboard-task-detail-panel", className: `flex h-full flex-col bg-slate-50/50 ${variant === "panel" ? "border-t" : ""}`, children: [_jsx("div", { className: "flex flex-col border-b bg-white p-4 shadow-sm", children: _jsxs("div", { className: "flex items-start justify-between gap-4", children: [_jsxs("div", { className: "min-w-0 flex-1 space-y-1", children: [_jsxs("div", { className: "flex min-w-0 items-center gap-2", children: [task && (_jsx(Badge, { variant: "outline", className: "h-5 shrink-0 border-slate-200 bg-slate-50 px-1.5 text-[10px] font-bold tracking-tight text-slate-500 uppercase", children: displayTaskId })), _jsx("h2", { className: "truncate text-base leading-none font-bold tracking-tight text-slate-900", "data-testid": "taskboard-task-detail-title", children: title })] }), task ? (_jsxs("div", { className: "flex flex-wrap items-center gap-2 pt-1", children: [_jsx(Select, { "data-testid": "taskboard-task-detail-status-select", value: task.status, onValueChange: (v) => setStatus(v), disabled: !canEdit, options: statuses, className: "h-7 w-[130px] text-xs font-medium" }), _jsx(Select, { "data-testid": "taskboard-task-detail-priority-select", value: task.priority ?? "none", onValueChange: (v) => setPriority(v), disabled: !canEdit, options: priorities, className: "h-7 w-[140px] text-xs font-medium" }), !isPlanTask && project && (_jsx(TaskAssigneePicker, { projectId: project.project.projectId, assigneeType: task.assigneeType ?? null, value: task.assigneeId ?? null, displayValue: task.assigneeDisplayName ?? task.assigneeId ?? null, disabled: !canEdit, onChange: upsertAssignee, placeholder: "Assign user or agent", buttonTestId: "taskboard-task-detail-assignee-select" })), executionDisplay && (_jsxs(Badge, { variant: executionDisplay.variant, className: `h-5 gap-1 text-[10px] font-bold tracking-wider uppercase ${executionDisplay.className || ""}`, children: [executionDisplay.showSpinner && (_jsx(Loader2, { className: "h-2.5 w-2.5 animate-spin" })), executionDisplay.label] }))] })) : (_jsx("div", { className: "text-muted-foreground truncate text-sm italic", children: "No task selected" })), task ? (_jsx(TaskReviewActions, { task: task, agentId: getLinkedAgentId(task), canEdit: canEdit, onTaskChanged: onTaskChanged, className: "flex flex-wrap items-center gap-2 pt-2" })) : null] }), _jsxs("div", { className: "flex shrink-0 items-center gap-1", children: [task && canEdit && (_jsx(Button, { variant: "ghost", size: "icon", onClick: handleDelete, className: "hover:text-destructive hover:bg-destructive/5 h-8 w-8 text-slate-400", title: "Delete task", "data-testid": "taskboard-task-detail-delete-button", children: _jsx(Trash2, { className: "h-4 w-4" }) })), _jsx(Button, { variant: "ghost", size: "icon", onClick: onClose, className: "h-8 w-8 text-slate-400 hover:bg-slate-100 hover:text-slate-600", title: "Close", "data-testid": "taskboard-task-detail-close-button", children: _jsx(X, { className: "h-4 w-4" }) })] })] }) }), _jsx("div", { className: compactPanel
337
381
  ? "min-h-0 flex-1 overflow-auto bg-slate-50/30 p-4"
338
- : "min-h-0 flex-1 overflow-auto bg-slate-50/30 p-6", children: !task ? (_jsx("div", { className: "text-muted-foreground flex h-full items-center justify-center text-sm italic", children: "Select a task to view details." })) : (_jsxs("div", { className: compactPanel ? "grid gap-6" : "grid gap-8", children: [_jsxs("div", { className: "grid gap-2", children: [_jsx(Label, { className: "text-[11px] font-bold tracking-wider text-slate-500 uppercase", children: "Description" }), _jsx(Textarea, { "data-testid": "taskboard-task-detail-description", value: localDescription, onChange: (e) => setLocalDescription(e.target.value), onBlur: () => void saveDescription(), rows: compactPanel ? 2 : 3, placeholder: "Add a description\u2026", disabled: !canEdit, className: "resize-none bg-white text-[13px] leading-relaxed shadow-sm focus-visible:ring-1" })] }), isPlanTask && (_jsxs("div", { className: "grid gap-2", children: [_jsx(Label, { className: "text-[11px] font-bold tracking-wider text-slate-500 uppercase", children: "Plan" }), _jsx(Textarea, { "data-testid": "taskboard-task-detail-plan", value: localResultData, onChange: (e) => setLocalResultData(e.target.value), onBlur: () => void saveResultData(), rows: compactPanel ? 6 : 10, placeholder: "Write the plan\u2026", disabled: !canEdit, className: "min-h-[200px] bg-white font-mono text-[12px] leading-relaxed shadow-sm focus-visible:ring-1" }), _jsxs("div", { className: "rounded border border-blue-100 bg-blue-50/50 px-2 py-1.5 text-[11px] text-slate-500", "data-testid": "taskboard-task-plan-approval-hint", children: [_jsx("span", { className: "font-semibold text-blue-700", children: "Approval:" }), " ", "Move this plan task to", " ", _jsx("span", { className: "font-bold text-blue-800", children: "Done" }), " to approve."] })] })), compactPanel && (_jsxs("div", { className: "grid gap-6 border-t border-slate-200/60 pt-6", children: [_jsxs("div", { className: "grid gap-2", children: [_jsxs(Label, { className: "flex items-center justify-between text-[11px] font-bold tracking-wider text-slate-500 uppercase", children: ["Subtasks ", childTasks.length > 0 && `(${childTasks.length})`, canEdit && (_jsx(Button, { variant: "ghost", size: "icon", className: "h-6 w-6 text-slate-400 hover:text-slate-600", onClick: () => setIsCreateSubtaskOpen(true), title: "Add subtask", children: _jsx(Plus, { className: "h-3 w-3" }) }))] }), childTasks.length > 0 ? (_jsx("div", { className: "grid gap-1.5", children: childTasks.map((child) => (_jsxs("button", { type: "button", onClick: () => onSelectTask(child.taskId), className: "group flex items-center gap-2 truncate rounded-md border border-slate-200 bg-white px-3 py-2 text-left text-xs transition-colors hover:border-slate-300 hover:bg-slate-50", children: [_jsx(Badge, { variant: "outline", className: "h-4 border-slate-200 bg-slate-50 px-1 text-[8px] font-bold text-slate-400 group-hover:border-slate-300", children: child.taskKey || child.taskId.slice(0, 4) }), _jsx("span", { className: "truncate font-medium text-slate-700", children: child.title })] }, child.taskId))) })) : (_jsx("div", { className: "text-[11px] text-slate-400 italic", children: "No subtasks." }))] }), _jsxs("div", { className: "grid gap-2", children: [_jsxs(Label, { className: "flex items-center justify-between text-[11px] font-bold tracking-wider text-slate-500 uppercase", children: ["Dependencies", canEdit && (_jsx(Button, { variant: "ghost", size: "icon", className: "h-6 w-6 text-slate-400 hover:text-slate-600", onClick: () => setIsAddDependencyOpen(true), title: "Add relationship", children: _jsx(Plus, { className: "h-3 w-3" }) }))] }), blockedByTasks.length > 0 && (_jsxs("div", { className: "grid gap-2", children: [_jsx("div", { className: "text-[10px] font-bold tracking-wider text-slate-400 uppercase", children: "Blocked By" }), _jsx("div", { className: "grid gap-1.5", children: blockedByTasks.map((blocking) => (_jsxs("button", { type: "button", onClick: () => onSelectTask(blocking.taskId), className: "group flex items-center gap-2 truncate rounded-md border border-slate-200 bg-white px-3 py-2 text-left text-xs transition-colors hover:border-slate-300 hover:bg-slate-50", children: [_jsx(Badge, { variant: "outline", className: "h-4 border-slate-200 bg-slate-50 px-1 text-[8px] font-bold text-slate-400 group-hover:border-slate-300", children: blocking.taskKey || blocking.taskId.slice(0, 4) }), _jsx("span", { className: "truncate font-medium text-slate-700", children: blocking.title }), blocking.status === "Done" && (_jsx(CheckCircle2, { className: "ml-auto h-3.5 w-3.5 shrink-0 text-emerald-600" }))] }, blocking.taskId))) })] })), blockingTasks.length > 0 && (_jsxs("div", { className: "grid gap-2", children: [_jsx("div", { className: "text-[10px] font-bold tracking-wider text-slate-400 uppercase", children: "Blocks" }), _jsx("div", { className: "grid gap-1.5", children: blockingTasks.map((blocked) => (_jsxs("button", { type: "button", onClick: () => onSelectTask(blocked.taskId), className: "group flex items-center gap-2 truncate rounded-md border border-slate-200 bg-white px-3 py-2 text-left text-xs transition-colors hover:border-slate-300 hover:bg-slate-50", children: [_jsx(Badge, { variant: "outline", className: "h-4 border-slate-200 bg-slate-50 px-1 text-[8px] font-bold text-slate-400 group-hover:border-slate-300", children: blocked.taskKey || blocked.taskId.slice(0, 4) }), _jsx("span", { className: "truncate font-medium text-slate-700", children: blocked.title }), blocked.status === "Done" && (_jsx(CheckCircle2, { className: "ml-auto h-3.5 w-3.5 shrink-0 text-emerald-600" }))] }, blocked.taskId))) })] })), relatedTasks.length > 0 && (_jsxs("div", { className: "grid gap-2", children: [_jsx("div", { className: "text-[10px] font-bold tracking-wider text-slate-400 uppercase", children: "Related To" }), _jsx("div", { className: "grid gap-1.5", children: relatedTasks.map((related) => (_jsxs("button", { type: "button", onClick: () => onSelectTask(related.taskId), className: "group flex items-center gap-2 truncate rounded-md border border-slate-200 bg-white px-3 py-2 text-left text-xs transition-colors hover:border-slate-300 hover:bg-slate-50", children: [_jsx(Badge, { variant: "outline", className: "h-4 border-slate-200 bg-slate-50 px-1 text-[8px] font-bold text-slate-400 group-hover:border-slate-300", children: related.taskKey || related.taskId.slice(0, 4) }), _jsx("span", { className: "truncate font-medium text-slate-700", children: related.title }), related.status === "Done" && (_jsx(CheckCircle2, { className: "ml-auto h-3.5 w-3.5 shrink-0 text-emerald-600" }))] }, related.taskId))) })] })), blockedByTasks.length === 0 &&
382
+ : "min-h-0 flex-1 overflow-auto bg-slate-50/30 p-6", children: !task ? (_jsx("div", { className: "text-muted-foreground flex h-full items-center justify-center text-sm italic", children: "Select a task to view details." })) : (_jsxs("div", { className: compactPanel ? "grid gap-6" : "grid gap-8", children: [_jsxs("div", { className: "grid gap-2", children: [_jsx(Label, { className: "text-[11px] font-bold tracking-wider text-slate-500 uppercase", children: "Description" }), _jsx(Textarea, { "data-testid": "taskboard-task-detail-description", value: localDescription, onChange: (e) => setLocalDescription(e.target.value), onBlur: () => void saveDescription(), rows: compactPanel ? 2 : 3, placeholder: "Add a description\u2026", disabled: !canEdit, className: "resize-none bg-white text-[13px] leading-relaxed shadow-sm focus-visible:ring-1" })] }), isPlanTask && (_jsxs("div", { className: "grid gap-2", children: [_jsx(Label, { className: "text-[11px] font-bold tracking-wider text-slate-500 uppercase", children: "Plan" }), _jsx(Textarea, { "data-testid": "taskboard-task-detail-plan", value: localResultData, onChange: (e) => setLocalResultData(e.target.value), onBlur: () => void saveResultData(), rows: compactPanel ? 6 : 10, placeholder: "Write the plan\u2026", disabled: !canEdit, className: "min-h-[200px] bg-white font-mono text-[12px] leading-relaxed shadow-sm focus-visible:ring-1" }), _jsxs("div", { className: "rounded border border-blue-100 bg-blue-50/50 px-2 py-1.5 text-[11px] text-slate-500", "data-testid": "taskboard-task-plan-approval-hint", children: [_jsx("span", { className: "font-semibold text-blue-700", children: "Approval:" }), " ", "Move this plan task to", " ", _jsx("span", { className: "font-bold text-blue-800", children: "Done" }), " to approve."] })] })), compactPanel && (_jsxs("div", { className: "grid gap-6 border-t border-slate-200/60 pt-6", children: [_jsxs("div", { className: "grid gap-2", children: [_jsxs(Label, { className: "flex items-center justify-between text-[11px] font-bold tracking-wider text-slate-500 uppercase", children: ["Subtasks ", childTasks.length > 0 && `(${childTasks.length})`, canEdit && (_jsx(Button, { variant: "ghost", size: "icon", className: "h-6 w-6 text-slate-400 hover:text-slate-600", onClick: () => setIsCreateSubtaskOpen(true), title: "Add subtask", children: _jsx(Plus, { className: "h-3 w-3" }) }))] }), childTasks.length > 0 ? (_jsx("div", { className: "grid gap-1.5", children: childTasks.map((child) => (_jsxs("button", { type: "button", onClick: () => onSelectTask(child.taskId), className: "group flex items-center gap-2 truncate rounded-md border border-slate-200 bg-white px-3 py-2 text-left text-xs transition-colors hover:border-slate-300 hover:bg-slate-50", children: [_jsx(Badge, { variant: "outline", className: "h-4 border-slate-200 bg-slate-50 px-1 text-[8px] font-bold text-slate-400 group-hover:border-slate-300", children: child.taskKey || child.taskId.slice(0, 4) }), _jsx("span", { className: "truncate font-medium text-slate-700", children: child.title })] }, child.taskId))) })) : (_jsx("div", { className: "text-[11px] text-slate-400 italic", children: "No subtasks." }))] }), _jsxs("div", { className: "grid gap-2", children: [_jsxs(Label, { className: "flex items-center justify-between text-[11px] font-bold tracking-wider text-slate-500 uppercase", children: ["Dependencies", canEdit && (_jsx(Button, { variant: "ghost", size: "icon", className: "h-6 w-6 text-slate-400 hover:text-slate-600", onClick: () => setIsAddDependencyOpen(true), title: "Add relationship", children: _jsx(Plus, { className: "h-3 w-3" }) }))] }), blockedByTasks.length > 0 && (_jsxs("div", { className: "grid gap-2", children: [_jsx("div", { className: "text-[10px] font-bold tracking-wider text-slate-400 uppercase", children: "Blocked By" }), _jsx("div", { className: "grid gap-1.5", children: blockedByTasks.map((blocking) => (_jsx(RelationshipRow, { entry: blocking, compact: true, canEdit: canEdit, isRemoving: removingDependencyId ===
383
+ blocking.dependency.dependencyId, dependencyTaskIds: getDependencyTaskIds(blocking.task.taskId), onSelectTask: onSelectTask, onRemove: removeRelationship }, blocking.dependency.dependencyId))) })] })), blockingTasks.length > 0 && (_jsxs("div", { className: "grid gap-2", children: [_jsx("div", { className: "text-[10px] font-bold tracking-wider text-slate-400 uppercase", children: "Blocks" }), _jsx("div", { className: "grid gap-1.5", children: blockingTasks.map((blocked) => (_jsx(RelationshipRow, { entry: blocked, compact: true, canEdit: canEdit, isRemoving: removingDependencyId ===
384
+ blocked.dependency.dependencyId, dependencyTaskIds: getDependencyTaskIds(blocked.task.taskId), onSelectTask: onSelectTask, onRemove: removeRelationship }, blocked.dependency.dependencyId))) })] })), relatedTasks.length > 0 && (_jsxs("div", { className: "grid gap-2", children: [_jsx("div", { className: "text-[10px] font-bold tracking-wider text-slate-400 uppercase", children: "Related To" }), _jsx("div", { className: "grid gap-1.5", children: relatedTasks.map((related) => (_jsx(RelationshipRow, { entry: related, compact: true, canEdit: canEdit, isRemoving: removingDependencyId ===
385
+ related.dependency.dependencyId, dependencyTaskIds: getDependencyTaskIds(related.task.taskId), onSelectTask: onSelectTask, onRemove: removeRelationship }, related.dependency.dependencyId))) })] })), blockedByTasks.length === 0 &&
339
386
  blockingTasks.length === 0 &&
340
- relatedTasks.length === 0 && (_jsx("div", { className: "text-[11px] text-slate-400 italic", children: "No dependencies." }))] })] })), !compactPanel && (_jsxs(_Fragment, { children: [_jsxs("div", { className: "grid gap-2", children: [_jsx(Label, { className: "text-[11px] font-bold tracking-wider text-slate-500 uppercase", children: "Parent Task" }), _jsx(Select, { value: currentParentValue, onValueChange: setParent, disabled: !canEdit, options: parentOptions, className: "bg-white text-[13px] shadow-sm" })] }), _jsxs("div", { className: "grid gap-2 pt-2", children: [_jsxs(Label, { className: "flex items-center justify-between text-[11px] font-bold tracking-wider text-slate-500 uppercase", children: ["Subtasks ", childTasks.length > 0 && `(${childTasks.length})`, canEdit && (_jsx(Button, { variant: "ghost", size: "icon", className: "h-6 w-6 text-slate-400 hover:text-slate-600", onClick: () => setIsCreateSubtaskOpen(true), title: "Add subtask", children: _jsx(Plus, { className: "h-3 w-3" }) }))] }), childTasks.length > 0 ? (_jsx("div", { className: "grid gap-2", children: childTasks.map((child) => (_jsx(TaskCard, { task: child, selected: false, onClick: () => onSelectTask(child.taskId), dependencyTaskIds: getDependencyTaskIds(child.taskId) }, child.taskId))) })) : (_jsx("div", { className: "text-[11px] text-slate-400 italic", children: "No subtasks." }))] }), _jsxs("div", { className: "grid gap-4 border-t border-slate-200/60 pt-6", children: [_jsxs(Label, { className: "flex items-center justify-between text-[11px] font-bold tracking-wider text-slate-500 uppercase", children: ["Relationships", canEdit && (_jsx(Button, { variant: "ghost", size: "icon", className: "h-6 w-6 text-slate-400 hover:text-slate-600", onClick: () => setIsAddDependencyOpen(true), title: "Add relationship", children: _jsx(LinkIcon, { className: "h-3 w-3" }) }))] }), _jsxs("div", { className: "grid gap-6", children: [blockedByTasks.length > 0 && (_jsxs("div", { className: "grid gap-2", children: [_jsx("div", { className: "text-[10px] font-bold tracking-wider text-slate-400 uppercase", children: "Blocked By" }), _jsx("div", { className: "grid gap-2", children: blockedByTasks.map((blocking) => (_jsx(TaskCard, { task: blocking, selected: false, onClick: () => onSelectTask(blocking.taskId), dependencyTaskIds: getDependencyTaskIds(blocking.taskId), showDoneCheckmark: true }, blocking.taskId))) })] })), blockingTasks.length > 0 && (_jsxs("div", { className: "grid gap-2", children: [_jsx("div", { className: "text-[10px] font-bold tracking-wider text-slate-400 uppercase", children: "Blocks" }), _jsx("div", { className: "grid gap-2", children: blockingTasks.map((blocked) => (_jsx(TaskCard, { task: blocked, selected: false, onClick: () => onSelectTask(blocked.taskId), dependencyTaskIds: getDependencyTaskIds(blocked.taskId), showDoneCheckmark: true }, blocked.taskId))) })] })), relatedTasks.length > 0 && (_jsxs("div", { className: "grid gap-2", children: [_jsx("div", { className: "text-[10px] font-bold tracking-wider text-slate-400 uppercase", children: "Related To" }), _jsx("div", { className: "grid gap-2", children: relatedTasks.map((related) => (_jsx(TaskCard, { task: related, selected: false, onClick: () => onSelectTask(related.taskId), dependencyTaskIds: getDependencyTaskIds(related.taskId), showDoneCheckmark: true }, related.taskId))) })] })), blockedByTasks.length === 0 &&
387
+ relatedTasks.length === 0 && (_jsx("div", { className: "text-[11px] text-slate-400 italic", children: "No dependencies." }))] })] })), !compactPanel && (_jsxs(_Fragment, { children: [_jsxs("div", { className: "grid gap-2", children: [_jsx(Label, { className: "text-[11px] font-bold tracking-wider text-slate-500 uppercase", children: "Parent Task" }), _jsx(Select, { value: currentParentValue, onValueChange: setParent, disabled: !canEdit, options: parentOptions, className: "bg-white text-[13px] shadow-sm" })] }), _jsxs("div", { className: "grid gap-2 pt-2", children: [_jsxs(Label, { className: "flex items-center justify-between text-[11px] font-bold tracking-wider text-slate-500 uppercase", children: ["Subtasks ", childTasks.length > 0 && `(${childTasks.length})`, canEdit && (_jsx(Button, { variant: "ghost", size: "icon", className: "h-6 w-6 text-slate-400 hover:text-slate-600", onClick: () => setIsCreateSubtaskOpen(true), title: "Add subtask", children: _jsx(Plus, { className: "h-3 w-3" }) }))] }), childTasks.length > 0 ? (_jsx("div", { className: "grid gap-2", children: childTasks.map((child) => (_jsx(TaskCard, { task: child, selected: false, onClick: () => onSelectTask(child.taskId), dependencyTaskIds: getDependencyTaskIds(child.taskId) }, child.taskId))) })) : (_jsx("div", { className: "text-[11px] text-slate-400 italic", children: "No subtasks." }))] }), _jsxs("div", { className: "grid gap-4 border-t border-slate-200/60 pt-6", children: [_jsxs(Label, { className: "flex items-center justify-between text-[11px] font-bold tracking-wider text-slate-500 uppercase", children: ["Relationships", canEdit && (_jsx(Button, { variant: "ghost", size: "icon", className: "h-6 w-6 text-slate-400 hover:text-slate-600", onClick: () => setIsAddDependencyOpen(true), title: "Add relationship", children: _jsx(LinkIcon, { className: "h-3 w-3" }) }))] }), _jsxs("div", { className: "grid gap-6", children: [blockedByTasks.length > 0 && (_jsxs("div", { className: "grid gap-2", children: [_jsx("div", { className: "text-[10px] font-bold tracking-wider text-slate-400 uppercase", children: "Blocked By" }), _jsx("div", { className: "grid gap-2", children: blockedByTasks.map((blocking) => (_jsx(RelationshipRow, { entry: blocking, compact: false, canEdit: canEdit, isRemoving: removingDependencyId ===
388
+ blocking.dependency.dependencyId, dependencyTaskIds: getDependencyTaskIds(blocking.task.taskId), onSelectTask: onSelectTask, onRemove: removeRelationship }, blocking.dependency.dependencyId))) })] })), blockingTasks.length > 0 && (_jsxs("div", { className: "grid gap-2", children: [_jsx("div", { className: "text-[10px] font-bold tracking-wider text-slate-400 uppercase", children: "Blocks" }), _jsx("div", { className: "grid gap-2", children: blockingTasks.map((blocked) => (_jsx(RelationshipRow, { entry: blocked, compact: false, canEdit: canEdit, isRemoving: removingDependencyId ===
389
+ blocked.dependency.dependencyId, dependencyTaskIds: getDependencyTaskIds(blocked.task.taskId), onSelectTask: onSelectTask, onRemove: removeRelationship }, blocked.dependency.dependencyId))) })] })), relatedTasks.length > 0 && (_jsxs("div", { className: "grid gap-2", children: [_jsx("div", { className: "text-[10px] font-bold tracking-wider text-slate-400 uppercase", children: "Related To" }), _jsx("div", { className: "grid gap-2", children: relatedTasks.map((related) => (_jsx(RelationshipRow, { entry: related, compact: false, canEdit: canEdit, isRemoving: removingDependencyId ===
390
+ related.dependency.dependencyId, dependencyTaskIds: getDependencyTaskIds(related.task.taskId), onSelectTask: onSelectTask, onRemove: removeRelationship }, related.dependency.dependencyId))) })] })), blockedByTasks.length === 0 &&
341
391
  blockingTasks.length === 0 &&
342
392
  relatedTasks.length === 0 && (_jsx("div", { className: "text-[11px] text-slate-400 italic", children: "No relationships defined." }))] })] })] })), _jsx(TaskAttachmentsSection, { task: task, canEdit: canEdit, onTaskChanged: onTaskChanged }), _jsxs("div", { className: "grid gap-4 border-t border-slate-200/60 pt-6", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx(MessageSquare, { className: "h-4 w-4 text-slate-400" }), _jsx("span", { className: "text-[11px] font-bold tracking-wider text-slate-500 uppercase", children: "Add Comment" })] }), _jsxs("div", { className: "grid gap-3", children: [_jsx(Textarea, { value: commentText, onChange: (e) => setCommentText(e.target.value), rows: 3, placeholder: "Write a comment\u2026", disabled: !canEdit, className: "resize-none bg-white text-[13px] leading-relaxed shadow-sm transition-all focus-visible:ring-1 focus-visible:ring-slate-300" }), _jsx("div", { className: "flex justify-end", children: _jsx(Button, { size: "sm", onClick: submitComment, disabled: !canEdit || !commentText.trim(), className: "h-8 px-4 text-xs font-semibold", children: "Post comment" }) })] }), _jsx("div", { className: "mt-2", children: _jsx(CommentsList, { taskId: task.taskId, refreshKey: commentRefreshKey, currentUsername: editContext?.user?.name ?? null }) })] })] })) }), task && project && (_jsxs(_Fragment, { children: [_jsx(CreateTaskDialog, { open: isCreateSubtaskOpen, onOpenChange: setIsCreateSubtaskOpen, projectId: project.project.projectId, parentTaskId: task.taskId, availableParentTasks: allTasks, onCreated: onTaskChanged }), _jsx(AddDependencyDialog, { open: isAddDependencyOpen, onOpenChange: setIsAddDependencyOpen, task: task, allTasks: allTasks, onCreated: onTaskChanged })] }))] }));
343
393
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TaskDetailPanel.js","sourceRoot":"","sources":["../../../src/task-board/components/TaskDetailPanel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TaskDetailPanel.js","sourceRoot":"","sources":["../../../src/task-board/components/TaskDetailPanel.tsx"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { type ExecutionResult } from "../../editor/services/serviceHelper";
2
- import type { AddMemberRequest, AddTaskCommentRequest, DeleteTaskCommentRequest, AddTaskDependencyRequest, CreateProjectRequest, CreateTaskRequest, DeleteProjectPropertyRequest, ProjectTemplateAgentSession, ProjectTemplate, UpsertProjectTemplateRequest, ProjectMember, ProjectProperty, ProjectWithPermission, TaskAttachment, WizardGuidanceResponse, TaskAssignableUser, TaskComment, TaskDependency, TaskGraphLayout, TaskExecutionRecord, TaskExecutionStateRequest, TaskItem, SaveTaskGraphLayoutRequest, UpdateProjectRequest, UpdateTaskRequest, UploadTaskAttachmentRequest, UpsertProjectPropertiesRequest } from "../types";
2
+ import type { AddMemberRequest, AddTaskCommentRequest, DeleteTaskCommentRequest, AddTaskDependencyRequest, RemoveTaskDependencyRequest, CreateProjectRequest, CreateTaskRequest, DeleteProjectPropertyRequest, ProjectTemplateAgentSession, ProjectTemplate, UpsertProjectTemplateRequest, ProjectMember, ProjectProperty, ProjectWithPermission, TaskAttachment, WizardGuidanceResponse, TaskAssignableUser, TaskComment, TaskDependency, TaskGraphLayout, TaskExecutionRecord, TaskExecutionStateRequest, TaskItem, SaveTaskGraphLayoutRequest, UpdateProjectRequest, UpdateTaskRequest, UploadTaskAttachmentRequest, UpsertProjectPropertiesRequest } from "../types";
3
3
  export declare function getProjects(options?: {
4
4
  includeAll?: boolean;
5
5
  }): Promise<ExecutionResult<ProjectWithPermission[]>>;
@@ -94,6 +94,9 @@ export declare function getDependencies(projectId: string): Promise<ExecutionRes
94
94
  export declare function getGraphLayout(projectId: string): Promise<ExecutionResult<TaskGraphLayout>>;
95
95
  export declare function saveGraphLayout(data: SaveTaskGraphLayoutRequest): Promise<ExecutionResult<TaskGraphLayout>>;
96
96
  export declare function addDependency(data: AddTaskDependencyRequest): Promise<ExecutionResult<TaskDependency>>;
97
+ export declare function removeDependency(data: RemoveTaskDependencyRequest): Promise<ExecutionResult<{
98
+ removedCount: number;
99
+ }>>;
97
100
  export declare function uploadAttachment(data: UploadTaskAttachmentRequest): Promise<ExecutionResult<TaskAttachment>>;
98
101
  export declare function getAttachments(taskId: string): Promise<ExecutionResult<TaskAttachment[]>>;
99
102
  export declare function uploadAttachmentFile(taskId: string, file: File): Promise<ExecutionResult<TaskAttachment>>;
@@ -111,6 +111,9 @@ export function saveGraphLayout(data) {
111
111
  export function addDependency(data) {
112
112
  return post("/parhelia/tasks/addDependency", data);
113
113
  }
114
+ export function removeDependency(data) {
115
+ return post("/parhelia/tasks/removeDependency", data);
116
+ }
114
117
  export function uploadAttachment(data) {
115
118
  return post("/parhelia/tasks/uploadAttachment", data);
116
119
  }
@@ -1 +1 @@
1
- {"version":3,"file":"taskService.js","sourceRoot":"","sources":["../../../src/task-board/services/taskService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taskService.js","sourceRoot":"","sources":["../../../src/task-board/services/taskService.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { ProjectOverviewSummary } from "./types";
1
2
  export type TaskBoardProjectOption = {
2
3
  projectId: string;
3
4
  parentProjectId?: string | null;
@@ -7,6 +8,7 @@ export type TaskBoardProjectOption = {
7
8
  status?: string;
8
9
  permission: string;
9
10
  updatedAt?: string;
11
+ overview?: ProjectOverviewSummary | null;
10
12
  };
11
13
  export type TaskBoardMyTaskOption = {
12
14
  taskId: string;
@@ -35,7 +37,7 @@ type TaskBoardNavState = {
35
37
  canManageProject: boolean;
36
38
  myTasks: TaskBoardMyTaskOption[];
37
39
  myTasksLoading: boolean;
38
- onSelectProject?: (projectId: string) => void;
40
+ onSelectProject?: (projectId: string | null) => void;
39
41
  onSelectMyTask?: (task: {
40
42
  projectId: string;
41
43
  taskId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"taskBoardNavStore.js","sourceRoot":"","sources":["../../src/task-board/taskBoardNavStore.ts"],"names":[],"mappings":"AAmDA,MAAM,YAAY,GAAsB;IACtC,YAAY,EAAE,OAAO;IACrB,eAAe,EAAE,iCAAiC;IAClD,eAAe,EAAE,qBAAqB;IACtC,SAAS,EAAE,CAAC;IACZ,YAAY,EAAE,KAAK;IACnB,eAAe,EAAE,KAAK;IACtB,eAAe,EAAE,KAAK;IACtB,iBAAiB,EAAE,KAAK;IACxB,iBAAiB,EAAE,IAAI;IACvB,cAAc,EAAE,IAAI;IACpB,cAAc,EAAE,EAAE;IAClB,kBAAkB,EAAE,KAAK;IACzB,aAAa,EAAE,KAAK;IACpB,kBAAkB,EAAE,KAAK;IACzB,mBAAmB,EAAE,KAAK;IAC1B,gBAAgB,EAAE,KAAK;IACvB,OAAO,EAAE,EAAE;IACX,cAAc,EAAE,KAAK;IACrB,eAAe,EAAE,SAAS;IAC1B,cAAc,EAAE,SAAS;IACzB,cAAc,EAAE,SAAS;IACzB,eAAe,EAAE,SAAS;IAC1B,qBAAqB,EAAE,SAAS;IAChC,eAAe,EAAE,SAAS;IAC1B,uBAAuB,EAAE,SAAS;IAClC,kBAAkB,EAAE,SAAS;IAC7B,YAAY,EAAE,SAAS;IACvB,iBAAiB,EAAE,SAAS;CAC7B,CAAC;AAEF,IAAI,KAAK,GAAsB,YAAY,CAAC;AAC5C,MAAM,SAAS,GAAG,IAAI,GAAG,EAAc,CAAC;AAExC,SAAS,IAAI;IACX,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,QAAoB;IACxD,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACxB,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAAmC;IACtE,KAAK,GAAG,EAAE,GAAG,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC;IACjC,IAAI,EAAE,CAAC;AACT,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,KAAK,GAAG,YAAY,CAAC;IACrB,IAAI,EAAE,CAAC;AACT,CAAC"}
1
+ {"version":3,"file":"taskBoardNavStore.js","sourceRoot":"","sources":["../../src/task-board/taskBoardNavStore.ts"],"names":[],"mappings":"AAsDA,MAAM,YAAY,GAAsB;IACtC,YAAY,EAAE,OAAO;IACrB,eAAe,EAAE,iCAAiC;IAClD,eAAe,EAAE,qBAAqB;IACtC,SAAS,EAAE,CAAC;IACZ,YAAY,EAAE,KAAK;IACnB,eAAe,EAAE,KAAK;IACtB,eAAe,EAAE,KAAK;IACtB,iBAAiB,EAAE,KAAK;IACxB,iBAAiB,EAAE,IAAI;IACvB,cAAc,EAAE,IAAI;IACpB,cAAc,EAAE,EAAE;IAClB,kBAAkB,EAAE,KAAK;IACzB,aAAa,EAAE,KAAK;IACpB,kBAAkB,EAAE,KAAK;IACzB,mBAAmB,EAAE,KAAK;IAC1B,gBAAgB,EAAE,KAAK;IACvB,OAAO,EAAE,EAAE;IACX,cAAc,EAAE,KAAK;IACrB,eAAe,EAAE,SAAS;IAC1B,cAAc,EAAE,SAAS;IACzB,cAAc,EAAE,SAAS;IACzB,eAAe,EAAE,SAAS;IAC1B,qBAAqB,EAAE,SAAS;IAChC,eAAe,EAAE,SAAS;IAC1B,uBAAuB,EAAE,SAAS;IAClC,kBAAkB,EAAE,SAAS;IAC7B,YAAY,EAAE,SAAS;IACvB,iBAAiB,EAAE,SAAS;CAC7B,CAAC;AAEF,IAAI,KAAK,GAAsB,YAAY,CAAC;AAC5C,MAAM,SAAS,GAAG,IAAI,GAAG,EAAc,CAAC;AAExC,SAAS,IAAI;IACX,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,QAAoB;IACxD,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACxB,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAAmC;IACtE,KAAK,GAAG,EAAE,GAAG,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC;IACjC,IAAI,EAAE,CAAC;AACT,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,KAAK,GAAG,YAAY,CAAC;IACrB,IAAI,EAAE,CAAC;AACT,CAAC"}