feat(tasks-ui): tasks on their owner nodes, host-primitive controls, icon glyphs, draggable output
Round-two review feedback, all three points: - TASKS ON NODES: the model maps each shared task (ownerName -> member name -> member session id) onto its owner's node; graph cards and tree rows render a fourth line (icon + subject + status + '+N'), and the node detail popover lists every owned task. - TEAM BOARD: member Pills double as the owner filter; each task row is a status dot + subject + owner + status Tag + ONE overflow Menu (complete / reopen / edit / reassign submenu / delete with a two-step arm). Creating and editing moved into a real Modal with labeled Inputs and owner Pills — the narrow strip is no longer where you type. - HOST PRIMITIVES ONLY: the board and the jobs drawer now use Menu / Modal / Input / Button / Pill / Tag / Switch / StateDot; no native select or input remains (guarded by a spec). - ICONS, NOT HAND-DRAWN GLYPHS: every text glyph (circle/diamond/triangle/ check/chevrons/i/house) is replaced by a host icon — agent preset, user (teammate), branch (workflow run), checklist (fold + tasks), tree corner, fullscreen (fit), ellipsis (node details), copy/stop (jobs). The live line now shows the tool's own icon + name + args without the drawn box. - JOBS UX: the output popover is DRAGGABLE (offset clamped to the viewport, double click re-anchors, controls do not start a drag), defaults to 380px, and gains copy-output, a follow-latest switch, kind/status Tags and a drag hint; the drawer highlights the open row. - 19 new copy keys across zh/en/ja and the 18 third-language dictionaries. Tests: 4 new specs (task rendered on its node, no native select/input + menu-driven board, create-through-dialog posts the CAS-free create, job popover drag moves the card). Full suite 1404 passed / 133 files.
This commit is contained in:
@@ -454,6 +454,15 @@ export const zh = {
|
||||
teamTaskConflict: '任务已被他人修改,已刷新',
|
||||
teamTaskError: '操作失败:{message}',
|
||||
teamTaskDeleted: '已删除',
|
||||
teamTaskActions: '任务操作',
|
||||
teamTaskSubjectPlaceholder: '一句话说明要做什么',
|
||||
teamTaskDescriptionPlaceholder: '补充说明(可选)',
|
||||
teamFilterAll: '全部',
|
||||
tasksNodeTasks: '共享任务',
|
||||
jobCopyOutput: '复制输出',
|
||||
jobCopied: '已复制',
|
||||
jobFollowTail: '跟随最新',
|
||||
jobDragHint: '拖动浮窗',
|
||||
workflowRunning: '进行中',
|
||||
workflowCompleted: '已完成',
|
||||
workflowCancelled: '已取消',
|
||||
@@ -949,6 +958,15 @@ export const en: Record<keyof typeof zh, string> = {
|
||||
teamTaskConflict: 'The task changed elsewhere; refreshed',
|
||||
teamTaskError: 'Operation failed: {message}',
|
||||
teamTaskDeleted: 'Deleted',
|
||||
teamTaskActions: 'Task actions',
|
||||
teamTaskSubjectPlaceholder: 'One line describing the work',
|
||||
teamTaskDescriptionPlaceholder: 'Extra context (optional)',
|
||||
teamFilterAll: 'All',
|
||||
tasksNodeTasks: 'Shared tasks',
|
||||
jobCopyOutput: 'Copy output',
|
||||
jobCopied: 'Copied',
|
||||
jobFollowTail: 'Follow latest',
|
||||
jobDragHint: 'Drag to move',
|
||||
workflowRunning: 'Running',
|
||||
workflowCompleted: 'Completed',
|
||||
workflowCancelled: 'Cancelled',
|
||||
|
||||
Reference in New Issue
Block a user