@co0ontty/wand 4.81.0 → 4.82.0

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 (64) hide show
  1. package/dist/agent-dispatch.js +7 -4
  2. package/dist/ai-team-prompts.d.ts +1 -1
  3. package/dist/ai-team-prompts.js +2 -2
  4. package/dist/ai-team-runner.d.ts +2 -0
  5. package/dist/ai-team-runner.js +60 -7
  6. package/dist/ai-team-types.d.ts +6 -0
  7. package/dist/ai-team-types.js +11 -0
  8. package/dist/build-info.json +3 -3
  9. package/dist/cli.js +11 -0
  10. package/dist/config.js +2 -0
  11. package/dist/default-employee.d.ts +11 -0
  12. package/dist/default-employee.js +33 -0
  13. package/dist/employee-knowledge-cli.d.ts +2 -0
  14. package/dist/employee-knowledge-cli.js +52 -0
  15. package/dist/employee-knowledge-content.d.ts +4 -0
  16. package/dist/employee-knowledge-content.js +23 -0
  17. package/dist/employee-knowledge-types.d.ts +15 -0
  18. package/dist/employee-knowledge-types.js +3 -0
  19. package/dist/employee-knowledge.d.ts +6 -0
  20. package/dist/employee-knowledge.js +84 -0
  21. package/dist/git-quick-commit.d.ts +2 -0
  22. package/dist/git-quick-commit.js +121 -58
  23. package/dist/iteration-log.d.ts +5 -0
  24. package/dist/iteration-log.js +12 -1
  25. package/dist/message-truncator.js +13 -9
  26. package/dist/models.d.ts +4 -0
  27. package/dist/models.js +38 -10
  28. package/dist/pi-model-discovery.d.ts +12 -0
  29. package/dist/pi-model-discovery.js +281 -0
  30. package/dist/process-manager.d.ts +23 -1
  31. package/dist/process-manager.js +68 -1
  32. package/dist/prompt-optimizer.js +10 -11
  33. package/dist/pty-turn-activity.d.ts +27 -0
  34. package/dist/pty-turn-activity.js +31 -0
  35. package/dist/server-employee-routes.js +52 -6
  36. package/dist/server-session-routes.js +11 -5
  37. package/dist/server-task-routes.js +6 -1
  38. package/dist/server-user-memory.d.ts +9 -0
  39. package/dist/server-user-memory.js +96 -0
  40. package/dist/server.js +22 -2
  41. package/dist/session-topic.js +6 -5
  42. package/dist/silicon-employee-draft.js +1 -3
  43. package/dist/storage.d.ts +38 -0
  44. package/dist/storage.js +276 -3
  45. package/dist/structured-claude-adapter.d.ts +1 -1
  46. package/dist/structured-claude-adapter.js +2 -0
  47. package/dist/structured-provider-common.d.ts +2 -2
  48. package/dist/structured-provider-common.js +6 -6
  49. package/dist/structured-session-manager.js +5 -4
  50. package/dist/task-title.js +8 -7
  51. package/dist/team-report-file-link.d.ts +6 -0
  52. package/dist/team-report-file-link.js +54 -0
  53. package/dist/team-report-preview.d.ts +3 -0
  54. package/dist/team-report-preview.js +70 -0
  55. package/dist/types.d.ts +15 -0
  56. package/dist/user-memory-types.d.ts +42 -0
  57. package/dist/user-memory-types.js +6 -0
  58. package/dist/user-memory.d.ts +30 -0
  59. package/dist/user-memory.js +190 -0
  60. package/dist/web-ui/content/ai-teams.js +13 -13
  61. package/dist/web-ui/content/scripts.js +59 -61
  62. package/dist/web-ui/content/styles.css +1 -1
  63. package/dist/web-ui/embedded-assets.js +3 -3
  64. package/package.json +1 -1
@@ -1,21 +1,21 @@
1
1
  "use strict";
2
2
  (() => {
3
- const __wandCssTextPool = Object.freeze([".wand-teams-layout{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);flex:1 1 auto;min-height:0;border-top:1px solid var(--border-subtle)}.wand-teams-list{display:flex;flex-direction:column;gap:10px;min-height:0;padding:14px 14px 18px 28px;overflow-y:auto;border-right:1px solid var(--border-subtle)}.wand-teams-cards{display:grid;gap:6px}.wand-teams-card{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:\"avatars avatars\" \"copy copy\" \"meta meta\";gap:6px;padding:12px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);background:var(--bg-secondary);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.wand-teams-card:hover{border-color:var(--border-default)}.wand-teams-card[aria-pressed=true]{border-color:color-mix(in srgb,var(--accent) 55%,var(--border-subtle));background:var(--accent-muted)}.wand-teams-card>.wand-team-avatar-stack{grid-area:avatars}.wand-teams-card-copy{grid-area:copy;display:grid;gap:2px;min-width:0}.wand-teams-card-copy strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.wand-teams-card-copy small,.wand-teams-card-meta small{overflow:hidden;color:var(--text-tertiary);font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap}.wand-teams-card-meta{grid-area:meta;display:flex;min-width:0}.wand-teams-empty{display:grid;justify-items:center;gap:10px;padding:28px 12px;color:var(--text-tertiary);font-size:var(--font-size-sm);text-align:center}.wand-teams-empty p{margin:0}.wand-teams-empty.is-detail{align-content:center;height:100%}.wand-teams-detail{display:flex;flex-direction:column;gap:14px;min-width:0;min-height:0;padding:18px 28px 32px;overflow-y:auto;animation:wand-settings-fade-in var(--transition-normal)}.wand-teams-detail>*{flex:0 0 auto;width:100%;max-width:920px}.wand-teams-detail-stack{position:relative;display:grid}.wand-teams-detail-pane{grid-area:1 / 1;min-width:0;opacity:1;transition:opacity var(--motion-normal) var(--ease-in-out-smooth)}.wand-teams-detail-pane[data-hidden]{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--motion-quick-exit) var(--ease-in-out-smooth),visibility var(--motion-quick-exit) step-end}.wand-teams-detail>.wand-stretch-tabs{width:auto;align-self:flex-start}.wand-teams-detail-head{display:flex;align-items:center;gap:14px;min-width:0}.wand-teams-detail-head h2{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.wand-teams-detail-head p{margin:2px 0 0;color:var(--text-tertiary);font-size:var(--font-size-sm)}.wand-teams-create-icon{transition:transform var(--transition-normal)}.task-board-create-button[aria-pressed=true] .wand-teams-create-icon{transform:rotate(45deg)}.wand-teams-templates{display:grid;gap:12px}.wand-teams-template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}.wand-teams-template{display:grid;justify-items:start;gap:6px;padding:14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);background:var(--bg-secondary);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--transition-fast),transform var(--transition-fast)}.wand-teams-template:hover{border-color:var(--accent)}.wand-teams-template:active{transform:scale(.98)}.wand-teams-template strong{font-size:var(--font-size-sm)}.wand-teams-template small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-team-editor{display:grid;gap:22px}.wand-team-section{display:grid;gap:12px}.wand-team-section-head{display:flex;align-items:baseline;gap:10px}.wand-team-section-head h3{margin:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.wand-team-section-head small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-team-org{display:grid;gap:22px}.wand-team-org-leader{position:relative;display:grid;justify-items:center}.wand-team-org-leader>.wand-team-member{width:min(100%,420px)}.wand-team-org-leader:after{content:\"\";position:absolute;top:100%;left:50%;width:1px;height:22px;background:var(--border-default)}.wand-team-org-members{position:relative;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));align-items:start;gap:10px;padding-top:12px;border-top:1px solid var(--border-default)}.wand-team-member{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary);transition:border-color var(--transition-fast)}.wand-team-member[data-leader]{border-color:color-mix(in srgb,var(--warning) 45%,var(--border-subtle))}.wand-team-member[data-open]{grid-column:1 / -1;border-color:var(--border-default)}.wand-team-member-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:14px 12px 12px;border:0;color:var(--text-primary);background:transparent;font:inherit;text-align:left;cursor:pointer}.wand-team-member-copy{display:grid;gap:2px;min-width:0}.wand-team-member-copy strong{display:flex;align-items:center;gap:6px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.wand-team-member-copy em{padding:0 6px;border-radius:var(--radius-full);color:var(--warning);background:var(--warning-muted);font-size:11px;font-style:normal;font-weight:var(--font-weight-medium)}.wand-team-member-copy small{display:-webkit-box;overflow:hidden;color:var(--text-secondary);font-size:var(--font-size-xs);-webkit-box-orient:vertical;-webkit-line-clamp:2}.wand-team-member-agent{overflow:hidden;color:var(--text-tertiary);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.wand-team-member-inner{display:grid;gap:10px;padding:0 12px}.wand-team-member[data-open] .wand-team-member-inner{padding-bottom:12px}.wand-team-member-actions{display:flex;justify-content:flex-end;gap:6px}.wand-team-member-add{display:grid;place-items:center;align-content:center;gap:4px;min-height:76px;border:1px dashed var(--border-default);border-radius:var(--radius-md);color:var(--text-tertiary);background:transparent;font:inherit;font-size:var(--font-size-xs);cursor:pointer}.wand-team-member-add:hover:not(:disabled){color:var(--text-primary);border-color:var(--border-strong)}.wand-team-member-add:disabled{opacity:.5;cursor:not-allowed}.wand-team-avatar-picker{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.wand-team-coat{display:grid;place-items:center;width:30px;height:30px;padding:0;overflow:hidden;border:1px solid var(--border-subtle);border-radius:30%;color:var(--text-tertiary);background:var(--bg-tertiary);cursor:pointer}.wand-team-coat svg{width:72%;height:72%}.wand-team-coat[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-muted)}.wand-team-avatar-error{color:var(--danger);font-size:var(--font-size-xs)}.wand-team-empty-line{margin:0;color:var(--text-tertiary);font-size:var(--font-size-sm)}.wand-ai-team-editor-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:12px}.wand-ai-team-duty{min-height:58px;resize:none}.wand-ai-team-member-agent{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.wand-ai-team-editor-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.wand-ai-team-editor-footer .wand-settings-save-bar{flex:1 1 auto}.wand-team-candidates{display:grid;gap:8px;padding:10px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-primary)}.wand-team-candidates-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.wand-team-candidates-head>span{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.wand-team-candidates-head>small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-team-candidates-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.wand-team-candidate-slot{display:grid;grid-template-rows:1fr;opacity:1;transition:grid-template-rows var(--motion-normal) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth)}.wand-team-candidate-slot[data-collapsed]{grid-template-rows:0fr;opacity:0}.wand-team-candidate{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:8px;min-height:0;overflow:hidden}.wand-team-candidate-tag{padding:3px 8px;border-radius:var(--radius-full);color:var(--text-secondary);background:var(--bg-tertiary);font-size:11px;font-weight:var(--font-weight-medium);white-space:nowrap}.wand-team-candidate-slot:first-of-type .wand-team-candidate-tag{color:var(--accent);background:var(--accent-muted)}.wand-team-candidate[data-duplicate] .wand-team-candidate-tag{color:var(--danger);background:var(--danger-muted)}.wand-team-candidate-tools{display:flex;gap:2px}.wand-team-candidate-tool{display:grid;place-items:center;width:26px;height:26px;padding:0;border:0;border-radius:var(--radius-sm);color:var(--text-tertiary);background:transparent;cursor:pointer;transition:color var(--motion-fast) var(--ease-in-out-smooth),background var(--motion-fast) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth),transform var(--motion-press) var(--ease-out-expo)}.wand-team-candidate-tool>svg{transition:transform var(--motion-morph) var(--ease-out-back)}.wand-team-candidate-tool:hover:not(:disabled){color:var(--text-primary);background:var(--bg-hover)}.wand-team-candidate-tool:active:not(:disabled){transform:scale(.9)}.wand-team-candidate-tool[data-tool=up]:hover:not(:disabled)>svg{transform:translateY(-2px)}.wand-team-candidate-tool[data-tool=down]:hover:not(:disabled)>svg{transform:translateY(2px)}.wand-team-candidate-tool[data-tool=remove]:hover:not(:disabled)>svg{transform:rotate(-90deg)}.wand-team-candidate-add{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:1px dashed var(--border-default);border-radius:var(--radius-full);color:var(--text-tertiary);background:transparent;font:inherit;font-size:var(--font-size-xs);cursor:pointer;transition:color var(--motion-fast) var(--ease-in-out-smooth),border-color var(--motion-fast) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth),transform var(--motion-press) var(--ease-out-expo)}.wand-team-candidate-add>svg{transition:transform var(--motion-morph) var(--ease-out-back)}.wand-team-candidate-add:hover:not(:disabled){color:var(--text-primary);border-color:var(--accent)}.wand-team-candidate-add:hover:not(:disabled)>svg{transform:scale(1.15)}.wand-team-candidate-add:active:not(:disabled){transform:scale(.96)}.wand-team-candidate-tool:disabled,.wand-team-candidate-add:disabled{opacity:.4;cursor:not-allowed}.wand-team-candidate-error{color:var(--danger);font-size:var(--font-size-xs)}.wand-employee-create-submit{min-inline-size:92px}.wand-employee-hint{margin:0;color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-employee-advanced-toggle{display:flex;justify-content:flex-start}.wand-employee-advanced-toggle button>svg:last-child{transition:transform var(--transition-fast)}.wand-employee-advanced-toggle[data-open] button>svg:last-child{transform:rotate(180deg)}.wand-employee-advanced{display:grid;grid-template-rows:0fr;align-self:start;margin-block-start:-10px;opacity:0;transition:grid-template-rows var(--transition-normal),margin-block-start var(--transition-normal),opacity var(--transition-fast)}.wand-employee-advanced[data-open]{grid-template-rows:1fr;margin-block-start:0;opacity:1}.wand-employee-advanced-inner{display:grid;gap:10px;min-height:0;overflow:hidden}.wand-employee-advanced-tools{display:flex;justify-content:flex-end}.wand-team-runs{display:grid;gap:6px;margin:0;padding:0;list-style:none}.wand-team-run{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary)}.wand-team-run-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;color:var(--text-primary);background:transparent;font:inherit;text-align:left;cursor:pointer}.wand-team-run-head strong{overflow:hidden;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap}.wand-team-run-id{color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--font-size-xs)}.wand-team-run-head small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-team-run-inner{min-height:0;overflow:hidden}.wand-team-run[data-open] .wand-team-run-inner{padding:0 10px 10px}.wand-team-run-inner>.task-board-team-run{border:0;padding:4px 2px;background:transparent}.task-board-team{display:grid;gap:10px;margin-top:14px}.task-board-team-run{display:grid;gap:12px;padding:14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary)}.task-board-team-run-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.task-board-team-run-kicker{color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:.04em}.task-board-team-run-head strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.task-board-team-run-head small{margin-right:auto;color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-run-detail{margin:0;color:var(--text-secondary);font-size:var(--font-size-xs)}.task-board-team-error{margin:0;color:var(--danger);font-size:var(--font-size-xs)}.task-board-team-roster{display:flex;gap:6px;overflow-x:auto;padding:6px 2px 2px}.task-board-team-roster-item{display:grid;justify-items:center;gap:4px;min-width:64px;padding:8px 6px 6px;border:1px solid transparent;border-radius:var(--radius-md);color:var(--text-primary);background:transparent;font:inherit;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.task-board-team-roster-item:hover{background:var(--bg-hover)}.task-board-team-roster-item[aria-pressed=true]{border-color:var(--accent);background:var(--accent-muted)}.task-board-team-roster-item>span:not(.wand-team-avatar){max-width:72px;overflow:hidden;font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap}.task-board-team-roster-item small{color:var(--text-tertiary);font-size:11px;font-variant-numeric:tabular-nums}.task-board-team-banner{display:grid;gap:8px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--bg-tertiary)}.task-board-team-banner[data-attention]{background:var(--warning-muted);box-shadow:inset 3px 0 0 var(--warning)}.task-board-team-banner p{margin:0;color:var(--text-secondary);font-size:var(--font-size-xs);white-space:pre-wrap}.task-board-team-views{justify-self:start}.task-board-team-groups{display:grid;gap:14px}.task-board-team-views-stack{position:relative;display:grid}.task-board-team-view{grid-area:1 / 1;min-width:0;opacity:1;transition:opacity var(--motion-normal) var(--ease-in-out-smooth)}.task-board-team-view[data-hidden]{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--motion-quick-exit) var(--ease-in-out-smooth),visibility var(--motion-quick-exit) step-end}.task-board-team-chat{display:grid;gap:8px}.team-chat-context{display:flex;align-items:center;gap:8px;min-width:0;min-height:38px;padding:7px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);background:var(--bg-secondary);font:inherit;text-align:left;cursor:pointer}.team-chat-context:hover,.team-chat-context:focus-visible{border-color:var(--accent)}.team-chat-context-label{flex:none;color:var(--accent);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.team-chat-context-title{flex:1;min-width:0;overflow:hidden;font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap}.team-chat-context-action{flex:none;color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-details{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--motion-normal) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth)}.team-chat-details[data-open]{grid-template-rows:1fr;opacity:1}.team-chat-details-inner{display:grid;gap:12px;min-height:0;overflow:hidden}.team-chat-goal{display:grid;gap:6px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border-subtle));border-left:3px solid var(--accent);border-radius:var(--radius-md);background:var(--accent-muted)}.team-chat-goal-head{display:flex;align-items:center;gap:8px}.team-chat-goal-label{padding:1px 6px;border-radius:var(--radius-sm);color:var(--accent);background:var(--bg-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.team-chat-goal-meta{margin-left:auto;color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-goal-preview{display:-webkit-box;margin:0;overflow:hidden;color:var(--text-secondary);font-size:var(--font-size-xs);white-space:pre-wrap;-webkit-box-orient:vertical;-webkit-line-clamp:3}.team-chat-goal-body-text{margin:0;color:var(--text-secondary);font:inherit;font-size:var(--font-size-xs);white-space:pre-wrap;overflow-wrap:anywhere}.team-chat-office{display:grid;gap:8px}.team-chat-office-head{display:flex;align-items:baseline;gap:8px}.team-chat-office-head strong{font-size:var(--font-size-sm);color:var(--text-primary)}.team-chat-office-head small{min-width:0;margin-left:auto;color:var(--text-tertiary);font-size:var(--font-size-xs);text-align:right}.team-chat-office-members{display:flex;gap:8px;overflow-x:auto;padding:1px 1px 5px;scroll-snap-type:x proximity}.team-chat-office-member{display:flex;flex:0 0 210px;align-items:center;gap:7px;min-width:0;min-height:52px;padding:7px 8px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);text-align:left;scroll-snap-align:start}button.team-chat-office-member{cursor:pointer;transition:border-color var(--motion-fast) var(--ease-in-out-smooth)}button.team-chat-office-member:hover,button.team-chat-office-member:focus-visible{border-color:var(--accent)}.team-chat-office-copy{display:grid;flex:1;gap:2px;min-width:0}.team-chat-office-copy strong,.team-chat-office-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-chat-office-copy strong{font-size:var(--font-size-xs)}.team-chat-office-copy small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-office-state{flex:0 0 auto;color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-office-state[data-state=working]{color:var(--info)}.team-chat-office-state[data-state=attention]{color:var(--warning)}.team-chat-office-state[data-state=done]{color:var(--success)}.team-chat-office-state[data-state=failed]{color:var(--danger)}.task-board-team-chat-list{display:flex;flex-direction:column;gap:12px;max-height:360px;padding:4px 2px;overflow-y:auto;overscroll-behavior-y:contain}.task-board-team-chat .team-chat-time-marker{align-self:center;margin:6px 0 0;color:var(--text-tertiary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;line-height:var(--line-height-base)}.task-board-team-chat .chat-notice .team-chat-mention{display:inline;max-width:none;padding:0;border-radius:0;color:var(--accent);background:transparent;font-weight:inherit;white-space:inherit;overflow:visible}.task-board-team-chat .team-chat-msg{flex-direction:row;align-items:flex-start;gap:10px;width:100%;max-width:100%}.task-board-team-chat .team-chat-msg:hover{transform:none}.task-board-team-chat .team-chat-msg[data-side=end]{flex-direction:row-reverse}.task-board-team-chat .team-chat-msg-content{display:flex;flex:1 1 auto;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}.task-board-team-chat .team-chat-msg[data-side=end] .team-chat-msg-content{align-items:flex-end}.task-board-team-chat .team-chat-msg[data-shape=bubble] .team-chat-msg-content{max-width:min(100%,560px)}.task-board-team-chat .team-chat-msg[data-shape=document] .team-chat-msg-content{max-width:100%}.task-board-team-chat .chat-message.team-chat-msg{margin:0}.task-board-team-chat .team-chat-msg-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}.task-board-team-chat .team-chat-msg-head .avatar-name{max-width:160px;overflow:hidden;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap}.task-board-team-chat .team-chat-msg-head span.avatar-name{color:var(--text-primary)}.task-board-team-chat .team-chat-msg-head .chat-message-time{padding:0;font-size:var(--font-size-2xs)}.task-board-team-chat .team-chat-mention,.team-chat-doc-layer .team-chat-mention{display:inline-block;max-width:min(24ch,100%);overflow:hidden;padding:0 4px;border-radius:var(--radius-xs);color:var(--accent);background:var(--accent-muted);font-weight:var(--font-weight-medium);text-overflow:ellipsis;vertical-align:baseline;white-space:nowrap}.team-chat-doc-layer .team-chat-mention{max-width:100%;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}.task-board-team-chat .team-chat-avatar,.team-chat-doc-layer .team-chat-avatar{display:grid;flex:0 0 auto;place-items:center;width:32px;height:32px;overflow:hidden;border-radius:30%;background:var(--bg-tertiary)}.task-board-team-chat .team-chat-avatar[data-size=sm],.team-chat-doc-layer .team-chat-avatar[data-size=sm]{width:24px;height:24px}.task-board-team-chat .team-chat-avatar[data-kind=brand],.team-chat-doc-layer .team-chat-avatar[data-kind=brand]{background:transparent}.task-board-team-chat .team-chat-avatar .wand-team-avatar-cat,.team-chat-doc-layer .team-chat-avatar .wand-team-avatar-cat{width:74%;height:74%}.task-board-team-chat .team-chat-avatar-upload,.team-chat-doc-layer .team-chat-avatar-upload{display:block;width:100%;height:100%;object-fit:cover}.task-board-team-chat .team-chat-avatar-brand,.team-chat-doc-layer .team-chat-avatar-brand{display:block;width:100%;height:100%}.task-board-team-chat .chat-message.team-chat-msg .team-chat-bubble{display:grid;justify-items:start;gap:4px;padding:10px 14px;border:1px solid var(--border-subtle);border-radius:12px;color:var(--text-primary);background:var(--bg-surface);font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-base)}.task-board-team-chat .team-chat-msg[data-side=start] .team-chat-bubble{border-top-left-radius:6px}.task-board-team-chat .team-chat-msg[data-side=end] .team-chat-bubble{justify-items:end;border-color:transparent;border-top-right-radius:6px;color:var(--text-inverse);background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%)}.task-board-team-chat .team-chat-bubble-text,.task-board-team-chat .team-chat-doc-text{margin:0;font:inherit;font-size:inherit;line-height:inherit;white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-chat .team-chat-attachments,.team-chat-doc-layer .team-chat-attachments{display:flex;flex-wrap:wrap;gap:6px;max-width:100%}.task-board-team-chat .team-chat-attachment,.team-chat-doc-layer .team-chat-attachment{display:inline-flex;align-items:center;gap:6px;max-width:100%;min-height:34px;padding:6px 9px;overflow:hidden;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);background:var(--bg-elevated);font:inherit;font-size:var(--font-size-xs);text-align:left;cursor:pointer}.task-board-team-chat .team-chat-attachment:hover,.team-chat-doc-layer .team-chat-attachment:hover{border-color:var(--accent)}.task-board-team-chat .team-chat-attachment:focus-visible,.team-chat-doc-layer .team-chat-attachment:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.task-board-team-chat .team-chat-attachment span,.team-chat-doc-layer .team-chat-attachment span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-board-team-chat .team-chat-attachment[data-image],.team-chat-doc-layer .team-chat-attachment[data-image]{min-height:0;padding:0;line-height:0}.task-board-team-chat .team-chat-attachment img,.team-chat-doc-layer .team-chat-attachment img{display:block;width:auto;max-width:min(220px,52vw);height:auto;max-height:180px;object-fit:contain}.task-board-team-chat .team-chat-doc{display:grid;justify-items:start;gap:6px;width:100%;padding:12px 14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);background:var(--bg-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-base)}.task-board-team-chat .team-chat-preview{min-width:0;max-width:100%;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-chat .team-chat-doc .team-chat-preview,.task-board-team-chat .team-chat-msg-empty{color:var(--text-secondary)}.task-board-team-chat .team-chat-msg[data-side=end] .team-chat-msg-empty{color:inherit;opacity:.78}.team-chat-step-chip{padding:1px 6px;border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-tertiary);font-size:var(--font-size-xs)}.team-chat-step-chip[data-ok]{color:var(--success)}.task-board-team-chat .team-chat-msg[data-status=failed] .team-chat-step-chip{color:var(--danger)}@keyframes wand-team-live-grow{0%{opacity:0;transform:translate(-10px)}}@keyframes wand-team-live-reduced{0%{opacity:0;transform:none}to{opacity:1;transform:none}}.team-chat-live-row{display:grid;gap:5px}.team-chat-live-row[data-leaving]{animation:wand-team-live-grow var(--motion-quick-exit) var(--ease-in-out-smooth) reverse forwards}.team-chat-live-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px;animation:wand-team-live-grow var(--motion-fast) var(--ease-out-expo) both}.team-chat-live-name{max-width:160px;overflow:hidden;color:var(--text-secondary);font-size:var(--font-size-2xs);text-overflow:ellipsis;white-space:nowrap}.team-chat-live-chip{padding:1px 6px;border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-tertiary);font-size:var(--font-size-xs)}.team-chat-live-state{padding:1px 6px;border-radius:var(--radius-sm);color:var(--info);background:color-mix(in srgb,var(--info) 14%,transparent);font-size:var(--font-size-xs)}.team-chat-live-state[data-state=needs_input],.team-chat-live-state[data-state=needs_permission]{color:var(--warning);background:var(--warning-muted)}.team-chat-live-state[data-state=failed]{color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,transparent)}.team-chat-live-summary{display:flex;align-items:center;gap:10px;width:min(100%,560px);min-height:38px;padding:7px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-secondary);font:inherit;font-size:var(--font-size-xs);text-align:left;cursor:pointer}.team-chat-live-summary>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-chat-live-summary>small{flex:none;color:var(--accent)}.team-chat-live-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--motion-normal) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth)}.team-chat-live-body[data-open]{grid-template-rows:1fr;opacity:1}.team-chat-live-body-inner{min-height:0;overflow:hidden}.team-chat-live-card{display:grid;grid-template-rows:auto minmax(0,1fr);width:100%;max-width:560px;height:200px;padding:8px 10px;overflow:hidden;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-tertiary);cursor:pointer;transition:border-color var(--motion-fast) var(--ease-in-out-smooth),background var(--motion-fast) var(--ease-in-out-smooth)}.team-chat-live-card:hover,.team-chat-live-card:focus-visible{border-color:color-mix(in srgb,var(--accent) 45%,var(--border-subtle))}.team-chat-live-omitted{margin:0 0 4px;color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-live-text{min-height:0;margin:0;overflow-y:auto;overscroll-behavior-y:contain;color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--font-size-xs);line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.team-chat-plan-list{display:grid;gap:4px;margin:0;padding:0;list-style:none}.team-chat-plan-list li{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;padding:3px 0;font-size:var(--font-size-xs)}.team-chat-plan-title{color:var(--text-primary)}.team-chat-plan-basis{color:var(--text-tertiary);font-size:var(--font-size-2xs)}.team-chat-goal-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--transition-normal),opacity var(--transition-fast)}.team-chat-goal-body[data-open]{grid-template-rows:1fr;opacity:1}.team-chat-goal-body-inner{min-height:0;overflow:hidden}.team-chat-expand{justify-self:start;min-height:28px;padding:4px 0 0;border:0;color:var(--accent);background:transparent;font:inherit;font-size:var(--font-size-xs);cursor:pointer;transition:color var(--motion-fast) var(--ease-in-out-smooth),transform var(--motion-press) var(--ease-out-expo)}.team-chat-expand:hover{text-decoration:underline}.team-chat-expand:active{transform:scale(.98)}.task-board-team-chat .team-chat-msg[data-side=end] .team-chat-expand{justify-self:end;color:var(--text-inverse)}@keyframes wand-team-msg-in{0%{opacity:0;translate:0 4px}}.task-board-team-chat .chat-message.team-chat-msg[data-arriving],.task-board-team-chat .chat-message.chat-notice[data-arriving]{animation:wand-team-msg-in var(--motion-normal) var(--ease-out-expo)}.task-board-team-chat-input{position:relative;display:grid;gap:8px;min-width:0}.task-board-team-chat-hint{margin:0 12px;color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-chat-input .input-composer-row{max-width:none}.task-board-team-chat-input .team-chat-stop-action{color:var(--danger)}.task-board-team-chat-input .team-chat-stop-action:hover:not(:disabled){color:var(--danger);background:var(--danger-muted)}.wand-ui-dialog-content.wand-team-chat-doc-dialog{display:flex;width:min(720px,calc(100vw - var(--wand-safe-left) - var(--wand-safe-right) - 32px));max-height:min(72vh,640px);flex-direction:column;overflow:hidden}.wand-ui-dialog-content.wand-team-chat-doc-dialog[data-open]{animation:team-chat-doc-in var(--motion-normal) var(--ease-out-expo)}.wand-ui-dialog-content.wand-team-chat-doc-dialog[data-ending-style]{animation:team-chat-doc-out var(--motion-quick-exit) var(--ease-in-out-smooth)}.wand-doc-dx-start{--wand-doc-dx: -10px}.wand-doc-dx-end{--wand-doc-dx: 10px}.wand-doc-dy-top{--wand-doc-dy: -10px}.wand-doc-dy-bottom{--wand-doc-dy: 10px}@keyframes team-chat-doc-in{0%{opacity:0;translate:var(--wand-doc-dx, 0) var(--wand-doc-dy, 0);scale:.98}}@keyframes team-chat-doc-out{to{opacity:0;translate:var(--wand-doc-dx, 0) var(--wand-doc-dy, 0);scale:.98}}.team-chat-doc-layer{display:flex;flex:1 1 auto;flex-direction:column;gap:8px;min-height:0}.team-chat-doc-layer-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.team-chat-doc-layer-name{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.team-chat-doc-layer-text{flex:1 1 auto;min-height:40px;margin:0;padding-right:4px;overflow:auto;overscroll-behavior-y:contain;color:var(--text-primary);font:inherit;font-size:var(--font-size-sm);line-height:var(--line-height-base);white-space:pre-wrap;overflow-wrap:anywhere}.wand-team-chat-body{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;padding:0 28px 20px}.wand-team-chat-body>.task-board-team-chat{display:flex;width:100%;max-width:920px;min-height:0;margin:0 auto;flex:1 1 auto;flex-direction:column}.wand-team-chat-body .task-board-team-chat-list{flex:1 1 auto;min-height:0;max-height:none}.wand-team-chat-body .task-board-team-chat-input{flex:0 0 auto}.wand-team-chat-body .team-chat-details[data-open]{max-height:42vh;overflow-y:auto;overscroll-behavior-y:contain}.wand-team-chat-head-meta{display:flex;align-items:center;gap:10px}.wand-team-chat-crumb{font-size:var(--font-size-sm)}.wand-team-chat-heading-avatar{flex:0 0 auto;display:inline-flex;align-items:center}.wand-team-chat-heading-avatar .wand-team-avatar-stack{padding-top:0}.wand-team-chat-unconfirmed{color:var(--warning);font-size:var(--font-size-xs)}.wand-team-work-tasks{padding:6px 0 0;border-top:1px solid var(--border-subtle)}.wand-team-work-tasks-inner{display:grid;gap:8px;width:100%;max-width:920px;margin:0 auto}.wand-team-work-tasks-head{display:flex;align-items:baseline;gap:10px}.wand-team-work-tasks-head h2{margin:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.wand-team-work-tasks-head small{margin-left:auto;color:var(--text-tertiary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.wand-team-work-list{display:grid;gap:4px;margin:0;padding:0;list-style:none}.wand-team-work-item{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-primary)}.wand-team-work-item[data-status=queued],.wand-team-work-item[data-status=skipped]{opacity:.66}.wand-team-work-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px;width:100%;padding:8px 10px;border:0;border-radius:var(--radius-sm);color:var(--text-primary);background:transparent;font:inherit;text-align:left;cursor:pointer}.wand-team-work-head>svg{color:var(--text-muted);transition:transform var(--motion-fast) var(--ease-in-out-smooth)}.wand-team-work-item[data-open] .wand-team-work-head>svg{transform:rotate(180deg)}.wand-team-work-seq{color:var(--text-tertiary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.wand-team-work-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.wand-team-work-status{color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-team-work-item[data-status=running] .wand-team-work-status{color:var(--info)}.wand-team-work-item[data-status=done] .wand-team-work-status{color:var(--success)}.wand-team-work-item[data-status=failed] .wand-team-work-status{color:var(--danger)}.wand-team-work-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--motion-normal) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth)}.wand-team-work-item[data-open] .wand-team-work-body{grid-template-rows:1fr;opacity:1}.wand-team-work-body-inner{min-height:0;overflow:hidden;display:grid;gap:8px;padding:0 10px}.wand-team-work-item[data-open] .wand-team-work-body-inner{padding-bottom:10px}.wand-team-work-member{display:flex;align-items:center;gap:8px}.wand-team-work-member-name{font-size:var(--font-size-sm)}.wand-team-work-member-duty{overflow:hidden;color:var(--text-tertiary);font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap}.wand-team-work-meta{display:grid;gap:2px;margin:0;font-size:var(--font-size-xs)}.wand-team-work-meta div{display:flex;gap:8px}.wand-team-work-meta dt{flex:none;color:var(--text-tertiary)}.wand-team-work-meta dd{min-width:0;margin:0;overflow:hidden;color:var(--text-secondary)}.wand-team-work-meta code{overflow:hidden;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap}.wand-team-work-report{max-height:180px;margin:0;padding:8px 10px;overflow:auto;border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-tertiary);font-size:var(--font-size-xs);white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-step-skips{display:grid;gap:2px;padding:0 8px 8px}.task-board-team-step-skip-head{display:flex;align-items:center;gap:6px;width:100%;padding:6px 8px;border:0;border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-tertiary);font:inherit;font-size:var(--font-size-xs);text-align:left;cursor:pointer;transition:background var(--motion-fast) var(--ease-in-out-smooth)}.task-board-team-step-skip-head>svg:first-child{color:var(--warning);flex:0 0 auto}.task-board-team-step-skip-head>span{margin-right:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-board-team-step-skip-head>svg:last-child{color:var(--text-muted);transition:transform var(--motion-morph) var(--ease-out-back)}.task-board-team-step-skips[data-open] .task-board-team-step-skip-head>svg:last-child{transform:rotate(180deg)}.task-board-team-step-skip-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--motion-normal) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth)}.task-board-team-step-skips[data-open] .task-board-team-step-skip-body{grid-template-rows:1fr;opacity:1}.task-board-team-step-skip-inner{display:grid;gap:4px;min-height:0;margin:0;padding:0;overflow:hidden;list-style:none;color:var(--text-secondary);font-size:var(--font-size-xs)}.task-board-team-step-skip-inner li{display:grid;gap:2px;padding:4px 8px}.task-board-team-step-skip-inner strong{color:var(--text-primary);font-weight:var(--font-weight-medium)}.task-board-team-step-skip-inner span{white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-group>header{display:grid;gap:2px;margin-bottom:6px}.task-board-team-group>header strong{font-size:var(--font-size-sm)}.task-board-team-group>header small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-steps{position:relative;display:grid;gap:8px;margin:0;padding:0;list-style:none;animation:wand-settings-fade-in var(--transition-normal)}.task-board-team-step{position:relative;display:grid;grid-template-columns:26px minmax(0,1fr);align-items:start;gap:10px}.task-board-team-step:not(:last-child):before{content:\"\";position:absolute;top:34px;bottom:-6px;left:13px;width:1px;background:var(--border-subtle)}.task-board-team-step>.wand-team-avatar{margin-top:6px}.task-board-team-step-card{min-width:0;border-radius:var(--radius-sm);background:var(--bg-primary)}.task-board-team-step[data-kind=leader] .task-board-team-step-card{background:color-mix(in srgb,var(--warning) 7%,var(--bg-primary))}.task-board-team-step[data-status=queued] .task-board-team-step-card,.task-board-team-step[data-status=skipped] .task-board-team-step-card{opacity:.66}.task-board-team-step-head{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;width:100%;padding:8px 10px;border:0;border-radius:var(--radius-sm);color:var(--text-primary);background:transparent;font:inherit;text-align:left;cursor:pointer}.task-board-team-step-head svg{color:var(--text-muted);transition:transform var(--transition-fast)}.task-board-team-step[data-open] .task-board-team-step-head svg{transform:rotate(180deg)}.task-board-team-step-title{display:grid;min-width:0}.task-board-team-step-title strong,.task-board-team-step-title small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-board-team-step-title strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.task-board-team-step-title small,.task-board-team-step-status{color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-step[data-status=running] .task-board-team-step-status{color:var(--info)}.task-board-team-step[data-status=failed] .task-board-team-step-status{color:var(--danger)}.task-board-team-step[data-status=done] .task-board-team-step-status{color:var(--success)}.task-board-team-step-preview{display:-webkit-box;margin:-2px 10px 8px;overflow:hidden;color:var(--text-secondary);font-size:var(--font-size-xs);white-space:pre-wrap;-webkit-box-orient:vertical;-webkit-line-clamp:2}.task-board-team-step-inner{display:grid;gap:8px;padding:0 10px}.task-board-team-step[data-open] .task-board-team-step-inner{padding-bottom:10px}.task-board-team-step-inner h4{margin:0 0 4px;color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.task-board-team-step-inner pre{max-height:320px;margin:0;overflow:auto;color:var(--text-secondary);font:inherit;font-size:var(--font-size-xs);white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-step-meta{margin:0;color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-manual,.task-board-team-respond{display:grid;gap:8px}.task-board-team-step-body,.wand-team-member-body,.wand-team-run-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--transition-normal),opacity var(--transition-fast)}.task-board-team-step[data-open] .task-board-team-step-body,.wand-team-member[data-open] .wand-team-member-body,.wand-team-run[data-open] .wand-team-run-body{grid-template-rows:1fr;opacity:1}.task-board-team-step-inner,.wand-team-member-inner{min-height:0;overflow:hidden}.wand-team-member-head>svg,.wand-team-run-head>svg{color:var(--text-muted);transition:transform var(--transition-fast)}.wand-team-member[data-open] .wand-team-member-head>svg,.wand-team-run[data-open] .wand-team-run-head>svg{transform:rotate(180deg)}@media(max-width:760px){.wand-ai-team-editor-grid{grid-template-columns:minmax(0,1fr)}.wand-team-chat-body{padding:0 14px 16px}.task-board-team-chat-input .composer-plus-popover{max-width:calc(100% - 8px)}.wand-team-work-tasks{padding:4px 0 0}.wand-teams-layout{grid-template-columns:minmax(0,1fr)}.wand-teams-list{padding:12px 14px;border-right:0}.wand-teams-detail{padding:14px 14px 28px}.wand-teams-page[data-detail] .wand-teams-list{display:none}.wand-teams-page:not([data-detail]) .wand-teams-detail{display:none}.wand-team-run-head{grid-template-columns:auto minmax(0,1fr) auto auto}.wand-team-run-head small{display:none}.wand-team-candidate{grid-template-columns:auto minmax(0,1fr)}.wand-team-candidate-tools{grid-column:1 / -1;justify-content:end}.task-board-team-views-stack{display:block}.task-board-team-view{opacity:1}.task-board-team-view[data-hidden]{display:none;visibility:visible;transition:none}.wand-teams-detail-stack{display:block}.wand-teams-detail-pane{opacity:1}.wand-teams-detail-pane[data-hidden]{display:none;visibility:visible;transition:none}}@media(prefers-reduced-motion:reduce){.task-board-team-step-body,.wand-team-work-body,.wand-team-work-head>svg,.wand-team-member-body,.wand-team-run-body,.team-chat-goal-body,.team-chat-details,.team-chat-live-body,.task-board-team-step-head svg,.wand-team-member-head>svg,.wand-team-run-head>svg,.wand-team-candidate-tool,.wand-team-candidate-tool>svg,.wand-team-candidate-add,.wand-team-candidate-add>svg,.task-board-team-view,.task-board-team-step-skip-head,.task-board-team-step-skip-head>svg:last-child,.task-board-team-step-skip-body,.wand-teams-create-icon,.task-board-team-chat .chat-message.team-chat-msg[data-arriving],.task-board-team-chat .chat-message.chat-notice[data-arriving]{animation:none}.task-board-team-chat .team-chat-expand:active{transform:none}.task-board-team-chat .team-chat-live-head{animation-name:wand-team-live-reduced;animation-duration:calc(var(--motion-fast) * 0)}.task-board-team-chat .team-chat-live-row[data-leaving]{animation-name:wand-team-live-reduced;animation-duration:calc(var(--motion-quick-exit) * 0)}.team-chat-live-card{transition:none}.wand-teams-detail,.task-board-team-steps{animation:none}.wand-teams-detail-pane{transition:none}.wand-employee-advanced,.wand-employee-advanced-toggle button>svg{transition:none}}.wand-employees-layout{display:block!important;max-width:960px;margin:0 auto;padding:16px 20px 40px}.wand-employee-list{display:grid;gap:16px;width:100%}.wand-employee-card.is-archived{opacity:.65}.wand-employee-card.is-system{border-color:color-mix(in srgb,var(--accent) 38%,var(--border-subtle));background:color-mix(in srgb,var(--accent) 4%,var(--bg-primary))}.wand-employee-system-note{display:grid;gap:4px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border-subtle));border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent) 6%,var(--bg-primary))}.wand-employee-system-note strong{color:var(--accent-active);font-size:var(--font-size-xs)}.wand-employee-system-note span{color:var(--text-secondary);font-size:var(--font-size-xs);line-height:1.5}.wand-employee-archived-tag{display:inline-block;padding:1px 6px;border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-tertiary);font-size:11px;font-style:normal}.wand-employee-filter-toggle{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-xs);color:var(--text-secondary);cursor:pointer;user-select:none}.wand-employee-filter-toggle input{cursor:pointer}.wand-teams-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.wand-teams-toolbar-search{flex:1 1 300px;max-width:400px}.wand-teams-toolbar-actions{display:flex;align-items:center;gap:12px}.wand-settings-field{display:grid;gap:6px}.wand-settings-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.wand-execution-subject-picker{display:grid;gap:16px}.wand-subject-group{display:grid;gap:8px;margin-top:10px}.wand-subject-group-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-secondary)}.wand-subject-empty-row{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--bg-secondary);border-radius:var(--radius-md);color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-link-btn{background:transparent;border:0;color:var(--accent);cursor:pointer;padding:0;font:inherit;text-decoration:underline}.wand-link-btn:hover{color:var(--accent-strong)}\n"]);
4
- (()=>{var Tr=Object.create;var Ia=Object.defineProperty;var Rr=Object.getOwnPropertyDescriptor;var Ar=Object.getOwnPropertyNames;var Sr=Object.getPrototypeOf,Nr=Object.prototype.hasOwnProperty;var X=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Er=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Ar(t))!Nr.call(e,r)&&r!==n&&Ia(e,r,{get:()=>t[r],enumerable:!(a=Rr(t,r))||a.enumerable});return e};var y=(e,t,n)=>(n=e!=null?Tr(Sr(e)):{},Er(t||!e||!e.__esModule?Ia(n,"default",{value:e,enumerable:!0}):n,e));var Ae=X((Ys,za)=>{za.exports=globalThis.__wandAiTeamsHost("react")});var bt=X((Gs,Pa)=>{Pa.exports=globalThis.__wandAiTeamsHost("errors")});var Xe=X((Js,Wa)=>{Wa.exports=globalThis.__wandAiTeamsHost("issues/task-board-agent")});var Mt=X((Qs,$a)=>{$a.exports=globalThis.__wandAiTeamsHost("issues/task-board-controller")});var Ba=X((Zs,Oa)=>{Oa.exports=globalThis.__wandAiTeamsHost("issues/task-board-repository")});var wt=X((ei,Fa)=>{Fa.exports=globalThis.__wandAiTeamsHost("ai-teams/repository")});var st=X((ti,Ha)=>{Ha.exports=globalThis.__wandAiTeamsHost("ai-teams/avatar")});var Ua=X((ai,ja)=>{ja.exports=globalThis.__wandAiTeamsHost("file-preview/controller")});var Ka=X((ni,qa)=>{qa.exports=globalThis.__wandAiTeamsHost("http-adapter")});var sa=X((ri,Va)=>{Va.exports=globalThis.__wandAiTeamsHost("model-catalog")});var Se=X((si,Ya)=>{Ya.exports=globalThis.__wandAiTeamsHost("ui")});var Ga=X((ii,Xa)=>{Xa.exports=globalThis.__wandAiTeamsHost("composer-attachments/host")});var Qa=X((oi,Ja)=>{Ja.exports=globalThis.__wandAiTeamsHost("composer-popover/action")});var en=X((di,Za)=>{Za.exports=globalThis.__wandAiTeamsHost("ai-teams/composer-bridge")});var se=X((li,tn)=>{tn.exports=globalThis.__wandAiTeamsHost("react/jsx-runtime")});var Rn=X((ui,Tn)=>{Tn.exports=globalThis.__wandAiTeamsHost("ui/motion-tokens")});var ga=X((hi,zn)=>{zn.exports=globalThis.__wandAiTeamsHost("overlay-controller")});var _n=X((vi,Mn)=>{Mn.exports=globalThis.__wandAiTeamsHost("provider-usage")});var Dn=X((bi,Ln)=>{Ln.exports=globalThis.__wandAiTeamsHost("settings/fields")});var fa=X((wi,Pn)=>{Pn.exports=globalThis.__wandAiTeamsHost("shell/sidebar-toggle-icon")});var On=X((ki,$n)=>{$n.exports=globalThis.__wandAiTeamsHost("issues/agent-fields")});var Hn=X((Si,Fn)=>{Fn.exports=globalThis.__wandAiTeamsHost("ai-teams/cat-coats")});var xa=X((Li,Vn)=>{Vn.exports=globalThis.__wandAiTeamsHost("agents/employee-repository")});var cr=X((Ji,lr)=>{lr.exports=globalThis.__wandAiTeamsHost("task-changes")});var br=X((ao,vr)=>{vr.exports=globalThis.__wandAiTeamsHost("styles")});var z=y(Ae());function na(e){return Array.isArray(e.agents)&&e.agents.length>0?e.agents:e.agent?[e.agent]:[]}function Ma(e){return`${e.provider}|${e.model}|${e.thinkingEffort}|${e.mode}|${e.kind}`}var _a=6e4,La=6e4,Cr="wand-ops";var ra="\u7CFB\u7EDF\u8FD0\u7EF4";function zt(e){return e?.systemKey===Cr}var Da=200;var ct=y(bt()),Ne=y(Xe()),tt=y(Mt()),Kt=y(Ba());var Z=y(Ae()),we=y(wt()),kt=y(st());var x=y(Ae());var Dt=y(bt()),mn=y(Ua()),Ge=y(Ka()),pn=y(Xe()),Ir=y(sa()),Fe=y(Se()),un=y(Ga()),oa=y(Qa()),it=y(st()),Me=y(en()),yt=y(wt()),l=y(se());function zr(e){return`/api/structured-sessions/${encodeURIComponent(e)}/messages`}function Mr(e){return{input:e}}function _r(e){return`/api/sessions/${encodeURIComponent(e)}/upload`}function Lr(e,t){return e.length?`[\u9644\u4EF6\u5DF2\u4E0A\u4F20\uFF0C\u8BF7\u67E5\u770B\u4EE5\u4E0B\u6587\u4EF6:
3
+ const __wandCssTextPool = Object.freeze([".wand-teams-layout{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);flex:1 1 auto;min-height:0;border-top:1px solid var(--border-subtle)}.wand-teams-list{display:flex;flex-direction:column;gap:10px;min-height:0;padding:14px 14px 18px 28px;overflow-y:auto;border-right:1px solid var(--border-subtle)}.wand-teams-cards{display:grid;gap:6px}.wand-teams-card{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:\"avatars avatars\" \"copy copy\" \"meta meta\";gap:6px;padding:12px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);background:var(--bg-secondary);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.wand-teams-card:hover{border-color:var(--border-default)}.wand-teams-card[aria-pressed=true]{border-color:color-mix(in srgb,var(--accent) 55%,var(--border-subtle));background:var(--accent-muted)}.wand-teams-card>.wand-team-avatar-stack{grid-area:avatars}.wand-teams-card-copy{grid-area:copy;display:grid;gap:2px;min-width:0}.wand-teams-card-copy strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.wand-teams-card-copy small,.wand-teams-card-meta small{overflow:hidden;color:var(--text-tertiary);font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap}.wand-teams-card-meta{grid-area:meta;display:flex;min-width:0}.wand-teams-empty{display:grid;justify-items:center;gap:10px;padding:28px 12px;color:var(--text-tertiary);font-size:var(--font-size-sm);text-align:center}.wand-teams-empty p{margin:0}.wand-teams-empty.is-detail{align-content:center;height:100%}.wand-teams-detail{display:flex;flex-direction:column;gap:14px;min-width:0;min-height:0;padding:18px 28px 32px;overflow-y:auto;animation:wand-settings-fade-in var(--transition-normal)}.wand-teams-detail>*{flex:0 0 auto;width:100%;max-width:920px}.wand-teams-detail-stack{position:relative;display:grid}.wand-teams-detail-pane{grid-area:1 / 1;min-width:0;opacity:1;transition:opacity var(--motion-normal) var(--ease-in-out-smooth)}.wand-teams-detail-pane[data-hidden]{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--motion-quick-exit) var(--ease-in-out-smooth),visibility var(--motion-quick-exit) step-end}.wand-teams-detail>.wand-stretch-tabs{width:auto;align-self:flex-start}.wand-teams-detail-head{display:flex;align-items:center;gap:14px;min-width:0}.wand-teams-detail-head h2{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.wand-teams-detail-head p{margin:2px 0 0;color:var(--text-tertiary);font-size:var(--font-size-sm)}.wand-teams-create-icon{transition:transform var(--transition-normal)}.task-board-create-button[aria-pressed=true] .wand-teams-create-icon{transform:rotate(45deg)}.wand-teams-templates{display:grid;gap:12px}.wand-teams-template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}.wand-teams-template{display:grid;justify-items:start;gap:6px;padding:14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);background:var(--bg-secondary);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--transition-fast),transform var(--transition-fast)}.wand-teams-template:hover{border-color:var(--accent)}.wand-teams-template:active{transform:scale(.98)}.wand-teams-template strong{font-size:var(--font-size-sm)}.wand-teams-template small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-team-editor{display:grid;gap:22px}.wand-team-section{display:grid;gap:12px}.wand-team-section-head{display:flex;align-items:baseline;gap:10px}.wand-team-section-head h3{margin:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.wand-team-section-head small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-team-org{display:grid;gap:22px}.wand-team-org-leader{position:relative;display:grid;justify-items:center}.wand-team-org-leader>.wand-team-member{width:min(100%,420px)}.wand-team-org-leader:after{content:\"\";position:absolute;top:100%;left:50%;width:1px;height:22px;background:var(--border-default)}.wand-team-org-members{position:relative;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));align-items:start;gap:10px;padding-top:12px;border-top:1px solid var(--border-default)}.wand-team-member{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary);transition:border-color var(--transition-fast)}.wand-team-member[data-leader]{border-color:color-mix(in srgb,var(--warning) 45%,var(--border-subtle))}.wand-team-member[data-open]{grid-column:1 / -1;border-color:var(--border-default)}.wand-team-member-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:14px 12px 12px;border:0;color:var(--text-primary);background:transparent;font:inherit;text-align:left;cursor:pointer}.wand-team-member-copy{display:grid;gap:2px;min-width:0}.wand-team-member-copy strong{display:flex;align-items:center;gap:6px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.wand-team-member-copy em{padding:0 6px;border-radius:var(--radius-full);color:var(--warning);background:var(--warning-muted);font-size:11px;font-style:normal;font-weight:var(--font-weight-medium)}.wand-team-member-copy small{display:-webkit-box;overflow:hidden;color:var(--text-secondary);font-size:var(--font-size-xs);-webkit-box-orient:vertical;-webkit-line-clamp:2}.wand-team-member-agent{overflow:hidden;color:var(--text-tertiary);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.wand-team-member-inner{display:grid;gap:10px;padding:0 12px}.wand-team-member[data-open] .wand-team-member-inner{padding-bottom:12px}.wand-team-member-actions{display:flex;justify-content:flex-end;gap:6px}.wand-team-member-add{display:grid;place-items:center;align-content:center;gap:4px;min-height:76px;border:1px dashed var(--border-default);border-radius:var(--radius-md);color:var(--text-tertiary);background:transparent;font:inherit;font-size:var(--font-size-xs);cursor:pointer}.wand-team-member-add:hover:not(:disabled){color:var(--text-primary);border-color:var(--border-strong)}.wand-team-member-add:disabled{opacity:.5;cursor:not-allowed}.wand-team-avatar-picker{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.wand-team-coat{display:grid;place-items:center;width:30px;height:30px;padding:0;overflow:hidden;border:1px solid var(--border-subtle);border-radius:30%;color:var(--text-tertiary);background:var(--bg-tertiary);cursor:pointer}.wand-team-coat svg{width:72%;height:72%}.wand-team-coat[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-muted)}.wand-team-avatar-error{color:var(--danger);font-size:var(--font-size-xs)}.wand-team-empty-line{margin:0;color:var(--text-tertiary);font-size:var(--font-size-sm)}.wand-ai-team-editor-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:12px}.wand-ai-team-duty{min-height:58px;resize:none}.wand-ai-team-member-agent{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.wand-ai-team-editor-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.wand-ai-team-editor-footer .wand-settings-save-bar{flex:1 1 auto}.wand-team-candidates{display:grid;gap:8px;padding:10px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-primary)}.wand-team-candidates-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.wand-team-candidates-head>span{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.wand-team-candidates-head>small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-team-candidates-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.wand-team-candidate-slot{display:grid;grid-template-rows:1fr;opacity:1;transition:grid-template-rows var(--motion-normal) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth)}.wand-team-candidate-slot[data-collapsed]{grid-template-rows:0fr;opacity:0}.wand-team-candidate{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:8px;min-height:0;overflow:hidden}.wand-team-candidate-tag{padding:3px 8px;border-radius:var(--radius-full);color:var(--text-secondary);background:var(--bg-tertiary);font-size:11px;font-weight:var(--font-weight-medium);white-space:nowrap}.wand-team-candidate-slot:first-of-type .wand-team-candidate-tag{color:var(--accent);background:var(--accent-muted)}.wand-team-candidate[data-duplicate] .wand-team-candidate-tag{color:var(--danger);background:var(--danger-muted)}.wand-team-candidate-tools{display:flex;gap:2px}.wand-team-candidate-tool{display:grid;place-items:center;width:26px;height:26px;padding:0;border:0;border-radius:var(--radius-sm);color:var(--text-tertiary);background:transparent;cursor:pointer;transition:color var(--motion-fast) var(--ease-in-out-smooth),background var(--motion-fast) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth),transform var(--motion-press) var(--ease-out-expo)}.wand-team-candidate-tool>svg{transition:transform var(--motion-morph) var(--ease-out-back)}.wand-team-candidate-tool:hover:not(:disabled){color:var(--text-primary);background:var(--bg-hover)}.wand-team-candidate-tool:active:not(:disabled){transform:scale(.9)}.wand-team-candidate-tool[data-tool=up]:hover:not(:disabled)>svg{transform:translateY(-2px)}.wand-team-candidate-tool[data-tool=down]:hover:not(:disabled)>svg{transform:translateY(2px)}.wand-team-candidate-tool[data-tool=remove]:hover:not(:disabled)>svg{transform:rotate(-90deg)}.wand-team-candidate-add{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:1px dashed var(--border-default);border-radius:var(--radius-full);color:var(--text-tertiary);background:transparent;font:inherit;font-size:var(--font-size-xs);cursor:pointer;transition:color var(--motion-fast) var(--ease-in-out-smooth),border-color var(--motion-fast) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth),transform var(--motion-press) var(--ease-out-expo)}.wand-team-candidate-add>svg{transition:transform var(--motion-morph) var(--ease-out-back)}.wand-team-candidate-add:hover:not(:disabled){color:var(--text-primary);border-color:var(--accent)}.wand-team-candidate-add:hover:not(:disabled)>svg{transform:scale(1.15)}.wand-team-candidate-add:active:not(:disabled){transform:scale(.96)}.wand-team-candidate-tool:disabled,.wand-team-candidate-add:disabled{opacity:.4;cursor:not-allowed}.wand-team-candidate-error{color:var(--danger);font-size:var(--font-size-xs)}.wand-employee-create-submit{min-inline-size:92px}.wand-employee-hint{margin:0;color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-employee-advanced-toggle{display:flex;justify-content:flex-start}.wand-employee-advanced-toggle button>svg:last-child{transition:transform var(--transition-fast)}.wand-employee-advanced-toggle[data-open] button>svg:last-child{transform:rotate(180deg)}.wand-employee-advanced{display:grid;grid-template-rows:0fr;align-self:start;margin-block-start:-10px;opacity:0;transition:grid-template-rows var(--transition-normal),margin-block-start var(--transition-normal),opacity var(--transition-fast)}.wand-employee-advanced[data-open]{grid-template-rows:1fr;margin-block-start:0;opacity:1}.wand-employee-advanced-inner{display:grid;gap:10px;min-height:0;overflow:hidden}.wand-employee-advanced-tools{display:flex;justify-content:flex-end}.wand-team-runs{display:grid;gap:6px;margin:0;padding:0;list-style:none}.wand-team-run{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary)}.wand-team-run-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;color:var(--text-primary);background:transparent;font:inherit;text-align:left;cursor:pointer}.wand-team-run-head strong{overflow:hidden;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap}.wand-team-run-id{color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--font-size-xs)}.wand-team-run-head small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-team-run-inner{min-height:0;overflow:hidden}.wand-team-run[data-open] .wand-team-run-inner{padding:0 10px 10px}.wand-team-run-inner>.task-board-team-run{border:0;padding:4px 2px;background:transparent}.task-board-team{display:grid;gap:10px;margin-top:14px}.task-board-team-run{display:grid;gap:12px;padding:14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary)}.task-board-team-run-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.task-board-team-run-kicker{color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:.04em}.task-board-team-run-head strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.task-board-team-run-head small{margin-right:auto;color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-run-detail{margin:0;color:var(--text-secondary);font-size:var(--font-size-xs)}.task-board-team-error{margin:0;color:var(--danger);font-size:var(--font-size-xs)}.task-board-team-roster{display:flex;gap:6px;overflow-x:auto;padding:6px 2px 2px}.task-board-team-roster-item{display:grid;justify-items:center;gap:4px;min-width:64px;padding:8px 6px 6px;border:1px solid transparent;border-radius:var(--radius-md);color:var(--text-primary);background:transparent;font:inherit;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.task-board-team-roster-item:hover{background:var(--bg-hover)}.task-board-team-roster-item[aria-pressed=true]{border-color:var(--accent);background:var(--accent-muted)}.task-board-team-roster-item>span:not(.wand-team-avatar){max-width:72px;overflow:hidden;font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap}.task-board-team-roster-item small{color:var(--text-tertiary);font-size:11px;font-variant-numeric:tabular-nums}.task-board-team-banner{display:grid;gap:8px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--bg-tertiary)}.task-board-team-banner[data-attention]{background:var(--warning-muted);box-shadow:inset 3px 0 0 var(--warning)}.task-board-team-banner p{margin:0;color:var(--text-secondary);font-size:var(--font-size-xs);white-space:pre-wrap}.task-board-team-views{justify-self:start}.task-board-team-groups{display:grid;gap:14px}.task-board-team-views-stack{position:relative;display:grid}.task-board-team-view{grid-area:1 / 1;min-width:0;opacity:1;transition:opacity var(--motion-normal) var(--ease-in-out-smooth)}.task-board-team-view[data-hidden]{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--motion-quick-exit) var(--ease-in-out-smooth),visibility var(--motion-quick-exit) step-end}.task-board-team-chat{display:grid;gap:8px}.team-chat-context{display:flex;align-items:center;gap:8px;min-width:0;min-height:38px;padding:7px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);background:var(--bg-secondary);font:inherit;text-align:left;cursor:pointer}.team-chat-context:hover,.team-chat-context:focus-visible{border-color:var(--accent)}.team-chat-context-label{flex:none;color:var(--accent);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.team-chat-context-title{flex:1;min-width:0;overflow:hidden;font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap}.team-chat-context-action{flex:none;color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-details{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--motion-normal) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth)}.team-chat-details[data-open]{grid-template-rows:1fr;opacity:1}.team-chat-details-inner{display:grid;gap:12px;min-height:0;overflow:hidden}.team-chat-goal{display:grid;gap:6px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border-subtle));border-left:3px solid var(--accent);border-radius:var(--radius-md);background:var(--accent-muted)}.team-chat-goal-head{display:flex;align-items:center;gap:8px}.team-chat-goal-label{padding:1px 6px;border-radius:var(--radius-sm);color:var(--accent);background:var(--bg-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.team-chat-goal-meta{margin-left:auto;color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-goal-preview{display:-webkit-box;margin:0;overflow:hidden;color:var(--text-secondary);font-size:var(--font-size-xs);white-space:pre-wrap;-webkit-box-orient:vertical;-webkit-line-clamp:3}.team-chat-goal-body-text{margin:0;color:var(--text-secondary);font:inherit;font-size:var(--font-size-xs);white-space:pre-wrap;overflow-wrap:anywhere}.team-chat-office{display:grid;gap:8px}.team-chat-office-head{display:flex;align-items:baseline;gap:8px}.team-chat-office-head strong{font-size:var(--font-size-sm);color:var(--text-primary)}.team-chat-office-head small{min-width:0;margin-left:auto;color:var(--text-tertiary);font-size:var(--font-size-xs);text-align:right}.team-chat-office-members{display:flex;gap:8px;overflow-x:auto;padding:1px 1px 5px;scroll-snap-type:x proximity}.team-chat-office-member{display:flex;flex:0 0 210px;align-items:center;gap:7px;min-width:0;min-height:52px;padding:7px 8px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);text-align:left;scroll-snap-align:start}button.team-chat-office-member{cursor:pointer;transition:border-color var(--motion-fast) var(--ease-in-out-smooth)}button.team-chat-office-member:hover,button.team-chat-office-member:focus-visible{border-color:var(--accent)}.team-chat-office-copy{display:grid;flex:1;gap:2px;min-width:0}.team-chat-office-copy strong,.team-chat-office-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-chat-office-copy strong{font-size:var(--font-size-xs)}.team-chat-office-copy small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-office-state{flex:0 0 auto;color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-office-state[data-state=working]{color:var(--info)}.team-chat-office-state[data-state=attention]{color:var(--warning)}.team-chat-office-state[data-state=done]{color:var(--success)}.team-chat-office-state[data-state=failed]{color:var(--danger)}.task-board-team-chat-list{display:flex;flex-direction:column;gap:12px;max-height:360px;padding:4px 2px;overflow-y:auto;overscroll-behavior-y:contain}.task-board-team-chat .team-chat-time-marker{align-self:center;margin:6px 0 0;color:var(--text-tertiary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;line-height:var(--line-height-base)}.task-board-team-chat .chat-notice .team-chat-mention{display:inline;max-width:none;padding:0;border-radius:0;color:var(--accent);background:transparent;font-weight:inherit;white-space:inherit;overflow:visible}.task-board-team-chat .team-chat-msg{flex-direction:row;align-items:flex-start;gap:10px;width:100%;max-width:100%}.task-board-team-chat .team-chat-msg:hover{transform:none}.task-board-team-chat .team-chat-msg[data-side=end]{flex-direction:row-reverse}.task-board-team-chat .team-chat-msg-content{display:flex;flex:1 1 auto;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}.task-board-team-chat .team-chat-msg[data-side=end] .team-chat-msg-content{align-items:flex-end}.task-board-team-chat .team-chat-msg[data-shape=bubble] .team-chat-msg-content{max-width:min(100%,560px)}.task-board-team-chat .team-chat-msg[data-shape=document] .team-chat-msg-content{max-width:100%}.task-board-team-chat .chat-message.team-chat-msg{margin:0}.task-board-team-chat .team-chat-msg-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}.task-board-team-chat .team-chat-msg-head .avatar-name{max-width:160px;overflow:hidden;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap}.task-board-team-chat .team-chat-msg-head span.avatar-name{color:var(--text-primary)}.task-board-team-chat .team-chat-msg-head .chat-message-time{padding:0;font-size:var(--font-size-2xs)}.task-board-team-chat .team-chat-mention,.team-chat-doc-layer .team-chat-mention{display:inline-block;max-width:min(24ch,100%);overflow:hidden;padding:0 4px;border-radius:var(--radius-xs);color:var(--accent);background:var(--accent-muted);font-weight:var(--font-weight-medium);text-overflow:ellipsis;vertical-align:baseline;white-space:nowrap}.team-chat-doc-layer .team-chat-mention{max-width:100%;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}.task-board-team-chat .team-chat-avatar,.team-chat-doc-layer .team-chat-avatar{display:grid;flex:0 0 auto;place-items:center;width:32px;height:32px;overflow:hidden;border-radius:30%;background:var(--bg-tertiary)}.task-board-team-chat .team-chat-avatar[data-size=sm],.team-chat-doc-layer .team-chat-avatar[data-size=sm]{width:24px;height:24px}.task-board-team-chat .team-chat-avatar[data-kind=brand],.team-chat-doc-layer .team-chat-avatar[data-kind=brand]{background:transparent}.task-board-team-chat .team-chat-avatar .wand-team-avatar-cat,.team-chat-doc-layer .team-chat-avatar .wand-team-avatar-cat{width:74%;height:74%}.task-board-team-chat .team-chat-avatar-upload,.team-chat-doc-layer .team-chat-avatar-upload{display:block;width:100%;height:100%;object-fit:cover}.task-board-team-chat .team-chat-avatar-brand,.team-chat-doc-layer .team-chat-avatar-brand{display:block;width:100%;height:100%}.task-board-team-chat .chat-message.team-chat-msg .team-chat-bubble{display:grid;justify-items:start;gap:4px;padding:10px 14px;border:1px solid var(--border-subtle);border-radius:12px;color:var(--text-primary);background:var(--bg-surface);font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-base)}.task-board-team-chat .team-chat-msg[data-side=start] .team-chat-bubble{border-top-left-radius:6px}.task-board-team-chat .team-chat-msg[data-side=end] .team-chat-bubble{justify-items:end;border-color:transparent;border-top-right-radius:6px;color:var(--text-inverse);background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%)}.task-board-team-chat .team-chat-bubble-text,.task-board-team-chat .team-chat-doc-text{margin:0;font:inherit;font-size:inherit;line-height:inherit;white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-chat .team-chat-attachments,.team-chat-doc-layer .team-chat-attachments{display:flex;flex-wrap:wrap;gap:6px;max-width:100%}.task-board-team-chat .team-chat-attachment,.team-chat-doc-layer .team-chat-attachment{display:inline-flex;align-items:center;gap:6px;max-width:100%;min-height:34px;padding:6px 9px;overflow:hidden;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);background:var(--bg-elevated);font:inherit;font-size:var(--font-size-xs);text-align:left;cursor:pointer}.task-board-team-chat .team-chat-attachment:hover,.team-chat-doc-layer .team-chat-attachment:hover{border-color:var(--accent)}.task-board-team-chat .team-chat-attachment:focus-visible,.team-chat-doc-layer .team-chat-attachment:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.task-board-team-chat .team-chat-attachment span,.team-chat-doc-layer .team-chat-attachment span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-board-team-chat .team-chat-attachment[data-image],.team-chat-doc-layer .team-chat-attachment[data-image]{min-height:0;padding:0;line-height:0}.task-board-team-chat .team-chat-attachment img,.team-chat-doc-layer .team-chat-attachment img{display:block;width:auto;max-width:min(220px,52vw);height:auto;max-height:180px;object-fit:contain}.task-board-team-chat .team-chat-file-card{width:min(100%,360px);overflow:hidden;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary)}.task-board-team-chat .team-chat-file-open{display:grid;grid-template-columns:minmax(0,1fr) 54px;align-items:start;gap:12px;width:100%;padding:14px;border:0;color:var(--text-primary);background:transparent;font:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast)}.task-board-team-chat .team-chat-file-open:hover{background:var(--bg-tertiary)}.task-board-team-chat .team-chat-file-copy{display:grid;gap:6px;min-width:0}.task-board-team-chat .team-chat-file-copy strong,.task-board-team-chat .team-chat-file-excerpt{display:-webkit-box;overflow:hidden;overflow-wrap:anywhere;-webkit-box-orient:vertical}.task-board-team-chat .team-chat-file-copy strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);-webkit-line-clamp:2}.task-board-team-chat .team-chat-file-excerpt{color:var(--text-secondary);font-size:var(--font-size-xs);line-height:var(--line-height-base);white-space:pre-line;-webkit-line-clamp:3}.task-board-team-chat .team-chat-file-icon{display:flex;flex-direction:column;gap:4px;height:76px;padding:6px;overflow:hidden;border:1px solid var(--border-subtle);border-radius:var(--radius-xs);color:var(--text-tertiary);background:var(--bg-primary);font-size:6px;line-height:8px;overflow-wrap:anywhere}.task-board-team-chat .team-chat-file-icon svg{flex:0 0 auto;color:var(--accent)}.task-board-team-chat .team-chat-file-icon b{max-height:16px;overflow:hidden;color:var(--text-secondary)}.task-board-team-chat .team-chat-file-meta{display:flex;grid-column:1 / -1;gap:8px;min-width:0;padding-top:10px;border-top:1px solid var(--border-subtle);color:var(--text-tertiary);font-size:var(--font-size-2xs)}.task-board-team-chat .team-chat-file-meta>:first-child{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-board-team-chat .team-chat-file-meta>:last-child{flex:0 0 auto;white-space:nowrap}.task-board-team-chat .team-chat-file-open:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.task-board-team-chat .team-chat-doc{display:grid;justify-items:start;gap:6px;width:100%;padding:12px 14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);background:var(--bg-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-base)}.task-board-team-chat .team-chat-preview{min-width:0;max-width:100%;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-chat .team-chat-doc .team-chat-preview,.task-board-team-chat .team-chat-msg-empty{color:var(--text-secondary)}.task-board-team-chat .team-chat-msg[data-side=end] .team-chat-msg-empty{color:inherit;opacity:.78}.team-chat-step-chip{padding:1px 6px;border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-tertiary);font-size:var(--font-size-xs)}.team-chat-step-chip[data-ok]{color:var(--success)}.task-board-team-chat .team-chat-msg[data-status=failed] .team-chat-step-chip{color:var(--danger)}@keyframes wand-team-live-grow{0%{opacity:0;transform:translate(-10px)}}@keyframes wand-team-live-reduced{0%{opacity:0;transform:none}to{opacity:1;transform:none}}.team-chat-live-row{display:grid;gap:5px}.team-chat-live-row[data-leaving]{animation:wand-team-live-grow var(--motion-quick-exit) var(--ease-in-out-smooth) reverse forwards}.team-chat-live-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px;animation:wand-team-live-grow var(--motion-fast) var(--ease-out-expo) both}.team-chat-live-name{max-width:160px;overflow:hidden;color:var(--text-secondary);font-size:var(--font-size-2xs);text-overflow:ellipsis;white-space:nowrap}.team-chat-live-chip{padding:1px 6px;border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-tertiary);font-size:var(--font-size-xs)}.team-chat-live-state{padding:1px 6px;border-radius:var(--radius-sm);color:var(--info);background:color-mix(in srgb,var(--info) 14%,transparent);font-size:var(--font-size-xs)}.team-chat-live-state[data-state=needs_input],.team-chat-live-state[data-state=needs_permission]{color:var(--warning);background:var(--warning-muted)}.team-chat-live-state[data-state=failed]{color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,transparent)}.team-chat-live-summary{display:flex;align-items:center;gap:10px;width:min(100%,560px);min-height:38px;padding:7px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-secondary);font:inherit;font-size:var(--font-size-xs);text-align:left;cursor:pointer}.team-chat-live-summary>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-chat-live-summary>small{flex:none;color:var(--accent)}.team-chat-live-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--motion-normal) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth)}.team-chat-live-body[data-open]{grid-template-rows:1fr;opacity:1}.team-chat-live-body-inner{min-height:0;overflow:hidden}.team-chat-live-card{display:grid;grid-template-rows:auto minmax(0,1fr);width:100%;max-width:560px;height:200px;padding:8px 10px;overflow:hidden;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-tertiary);cursor:pointer;transition:border-color var(--motion-fast) var(--ease-in-out-smooth),background var(--motion-fast) var(--ease-in-out-smooth)}.team-chat-live-card:hover,.team-chat-live-card:focus-visible{border-color:color-mix(in srgb,var(--accent) 45%,var(--border-subtle))}.team-chat-live-omitted{margin:0 0 4px;color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-live-text{min-height:0;margin:0;overflow-y:auto;overscroll-behavior-y:contain;color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--font-size-xs);line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.team-chat-plan-list{display:grid;gap:4px;margin:0;padding:0;list-style:none}.team-chat-plan-list li{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;padding:3px 0;font-size:var(--font-size-xs)}.team-chat-plan-title{color:var(--text-primary)}.team-chat-plan-basis{color:var(--text-tertiary);font-size:var(--font-size-2xs)}.team-chat-goal-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--transition-normal),opacity var(--transition-fast)}.team-chat-goal-body[data-open]{grid-template-rows:1fr;opacity:1}.team-chat-goal-body-inner{min-height:0;overflow:hidden}.team-chat-expand{justify-self:start;min-height:28px;padding:4px 0 0;border:0;color:var(--accent);background:transparent;font:inherit;font-size:var(--font-size-xs);cursor:pointer;transition:color var(--motion-fast) var(--ease-in-out-smooth),transform var(--motion-press) var(--ease-out-expo)}.team-chat-expand:hover{text-decoration:underline}.team-chat-expand:active{transform:scale(.98)}.task-board-team-chat .team-chat-msg[data-side=end] .team-chat-expand{justify-self:end;color:var(--text-inverse)}@keyframes wand-team-msg-in{0%{opacity:0;translate:0 4px}}.task-board-team-chat .chat-message.team-chat-msg[data-arriving],.task-board-team-chat .chat-message.chat-notice[data-arriving]{animation:wand-team-msg-in var(--motion-normal) var(--ease-out-expo)}.task-board-team-chat-input{position:relative;display:grid;gap:8px;min-width:0}.task-board-team-chat-hint{margin:0 12px;color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-chat-input .input-composer-row{max-width:none}.task-board-team-chat-input .team-chat-stop-action{color:var(--danger)}.task-board-team-chat-input .team-chat-stop-action:hover:not(:disabled){color:var(--danger);background:var(--danger-muted)}.wand-ui-dialog-content.wand-team-chat-doc-dialog{display:flex;width:min(720px,calc(100vw - var(--wand-safe-left) - var(--wand-safe-right) - 32px));max-height:min(72vh,640px);flex-direction:column;overflow:hidden}.wand-ui-dialog-content.wand-team-chat-doc-dialog[data-open]{animation:team-chat-doc-in var(--motion-normal) var(--ease-out-expo)}.wand-ui-dialog-content.wand-team-chat-doc-dialog[data-ending-style]{animation:team-chat-doc-out var(--motion-quick-exit) var(--ease-in-out-smooth)}.wand-doc-dx-start{--wand-doc-dx: -10px}.wand-doc-dx-end{--wand-doc-dx: 10px}.wand-doc-dy-top{--wand-doc-dy: -10px}.wand-doc-dy-bottom{--wand-doc-dy: 10px}@keyframes team-chat-doc-in{0%{opacity:0;translate:var(--wand-doc-dx, 0) var(--wand-doc-dy, 0);scale:.98}}@keyframes team-chat-doc-out{to{opacity:0;translate:var(--wand-doc-dx, 0) var(--wand-doc-dy, 0);scale:.98}}.team-chat-doc-layer{display:flex;flex:1 1 auto;flex-direction:column;gap:8px;min-height:0}.team-chat-doc-layer-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.team-chat-doc-layer-name{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.team-chat-doc-layer-text{flex:1 1 auto;min-height:40px;margin:0;padding-right:4px;overflow:auto;overscroll-behavior-y:contain;color:var(--text-primary);font:inherit;font-size:var(--font-size-sm);line-height:var(--line-height-base);white-space:pre-wrap;overflow-wrap:anywhere}.wand-team-chat-body{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;padding:0 28px 20px}.wand-team-chat-body>.task-board-team-chat{display:flex;width:100%;max-width:920px;min-height:0;margin:0 auto;flex:1 1 auto;flex-direction:column}.wand-team-chat-body .task-board-team-chat-list{flex:1 1 auto;min-height:0;max-height:none}.wand-team-chat-body .task-board-team-chat-input{flex:0 0 auto}.wand-team-chat-body .team-chat-details[data-open]{max-height:42vh;overflow-y:auto;overscroll-behavior-y:contain}.wand-team-chat-head-meta{display:flex;align-items:center;gap:10px}.wand-team-chat-crumb{font-size:var(--font-size-sm)}.wand-team-chat-heading-avatar{flex:0 0 auto;display:inline-flex;align-items:center}.wand-team-chat-heading-avatar .wand-team-avatar-stack{padding-top:0}.wand-team-chat-unconfirmed{color:var(--warning);font-size:var(--font-size-xs)}.wand-team-work-tasks{padding:6px 0 0;border-top:1px solid var(--border-subtle)}.wand-team-work-tasks-inner{display:grid;gap:8px;width:100%;max-width:920px;margin:0 auto}.wand-team-work-tasks-head{display:flex;align-items:baseline;gap:10px}.wand-team-work-tasks-head h2{margin:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.wand-team-work-tasks-head small{margin-left:auto;color:var(--text-tertiary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.wand-team-work-list{display:grid;gap:4px;margin:0;padding:0;list-style:none}.wand-team-work-item{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-primary)}.wand-team-work-item[data-status=queued],.wand-team-work-item[data-status=skipped]{opacity:.66}.wand-team-work-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px;width:100%;padding:8px 10px;border:0;border-radius:var(--radius-sm);color:var(--text-primary);background:transparent;font:inherit;text-align:left;cursor:pointer}.wand-team-work-head>svg{color:var(--text-muted);transition:transform var(--motion-fast) var(--ease-in-out-smooth)}.wand-team-work-item[data-open] .wand-team-work-head>svg{transform:rotate(180deg)}.wand-team-work-seq{color:var(--text-tertiary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.wand-team-work-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.wand-team-work-status{color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-team-work-item[data-status=running] .wand-team-work-status{color:var(--info)}.wand-team-work-item[data-status=done] .wand-team-work-status{color:var(--success)}.wand-team-work-item[data-status=failed] .wand-team-work-status{color:var(--danger)}.wand-team-work-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--motion-normal) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth)}.wand-team-work-item[data-open] .wand-team-work-body{grid-template-rows:1fr;opacity:1}.wand-team-work-body-inner{min-height:0;overflow:hidden;display:grid;gap:8px;padding:0 10px}.wand-team-work-item[data-open] .wand-team-work-body-inner{padding-bottom:10px}.wand-team-work-member{display:flex;align-items:center;gap:8px}.wand-team-work-member-name{font-size:var(--font-size-sm)}.wand-team-work-member-duty{overflow:hidden;color:var(--text-tertiary);font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap}.wand-team-work-meta{display:grid;gap:2px;margin:0;font-size:var(--font-size-xs)}.wand-team-work-meta div{display:flex;gap:8px}.wand-team-work-meta dt{flex:none;color:var(--text-tertiary)}.wand-team-work-meta dd{min-width:0;margin:0;overflow:hidden;color:var(--text-secondary)}.wand-team-work-meta code{overflow:hidden;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap}.wand-team-work-report{max-height:180px;margin:0;padding:8px 10px;overflow:auto;border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-tertiary);font-size:var(--font-size-xs);white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-step-skips{display:grid;gap:2px;padding:0 8px 8px}.task-board-team-step-skip-head{display:flex;align-items:center;gap:6px;width:100%;padding:6px 8px;border:0;border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-tertiary);font:inherit;font-size:var(--font-size-xs);text-align:left;cursor:pointer;transition:background var(--motion-fast) var(--ease-in-out-smooth)}.task-board-team-step-skip-head>svg:first-child{color:var(--warning);flex:0 0 auto}.task-board-team-step-skip-head>span{margin-right:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-board-team-step-skip-head>svg:last-child{color:var(--text-muted);transition:transform var(--motion-morph) var(--ease-out-back)}.task-board-team-step-skips[data-open] .task-board-team-step-skip-head>svg:last-child{transform:rotate(180deg)}.task-board-team-step-skip-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--motion-normal) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth)}.task-board-team-step-skips[data-open] .task-board-team-step-skip-body{grid-template-rows:1fr;opacity:1}.task-board-team-step-skip-inner{display:grid;gap:4px;min-height:0;margin:0;padding:0;overflow:hidden;list-style:none;color:var(--text-secondary);font-size:var(--font-size-xs)}.task-board-team-step-skip-inner li{display:grid;gap:2px;padding:4px 8px}.task-board-team-step-skip-inner strong{color:var(--text-primary);font-weight:var(--font-weight-medium)}.task-board-team-step-skip-inner span{white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-group>header{display:grid;gap:2px;margin-bottom:6px}.task-board-team-group>header strong{font-size:var(--font-size-sm)}.task-board-team-group>header small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-steps{position:relative;display:grid;gap:8px;margin:0;padding:0;list-style:none;animation:wand-settings-fade-in var(--transition-normal)}.task-board-team-step{position:relative;display:grid;grid-template-columns:26px minmax(0,1fr);align-items:start;gap:10px}.task-board-team-step:not(:last-child):before{content:\"\";position:absolute;top:34px;bottom:-6px;left:13px;width:1px;background:var(--border-subtle)}.task-board-team-step>.wand-team-avatar{margin-top:6px}.task-board-team-step-card{min-width:0;border-radius:var(--radius-sm);background:var(--bg-primary)}.task-board-team-step[data-kind=leader] .task-board-team-step-card{background:color-mix(in srgb,var(--warning) 7%,var(--bg-primary))}.task-board-team-step[data-status=queued] .task-board-team-step-card,.task-board-team-step[data-status=skipped] .task-board-team-step-card{opacity:.66}.task-board-team-step-head{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;width:100%;padding:8px 10px;border:0;border-radius:var(--radius-sm);color:var(--text-primary);background:transparent;font:inherit;text-align:left;cursor:pointer}.task-board-team-step-head svg{color:var(--text-muted);transition:transform var(--transition-fast)}.task-board-team-step[data-open] .task-board-team-step-head svg{transform:rotate(180deg)}.task-board-team-step-title{display:grid;min-width:0}.task-board-team-step-title strong,.task-board-team-step-title small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-board-team-step-title strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.task-board-team-step-title small,.task-board-team-step-status{color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-step[data-status=running] .task-board-team-step-status{color:var(--info)}.task-board-team-step[data-status=failed] .task-board-team-step-status{color:var(--danger)}.task-board-team-step[data-status=done] .task-board-team-step-status{color:var(--success)}.task-board-team-step-preview{display:-webkit-box;margin:-2px 10px 8px;overflow:hidden;color:var(--text-secondary);font-size:var(--font-size-xs);white-space:pre-wrap;-webkit-box-orient:vertical;-webkit-line-clamp:2}.task-board-team-step-inner{display:grid;gap:8px;padding:0 10px}.task-board-team-step[data-open] .task-board-team-step-inner{padding-bottom:10px}.task-board-team-step-inner h4{margin:0 0 4px;color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.task-board-team-step-inner pre{max-height:320px;margin:0;overflow:auto;color:var(--text-secondary);font:inherit;font-size:var(--font-size-xs);white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-step-meta{margin:0;color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-manual,.task-board-team-respond{display:grid;gap:8px}.task-board-team-step-body,.wand-team-member-body,.wand-team-run-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--transition-normal),opacity var(--transition-fast)}.task-board-team-step[data-open] .task-board-team-step-body,.wand-team-member[data-open] .wand-team-member-body,.wand-team-run[data-open] .wand-team-run-body{grid-template-rows:1fr;opacity:1}.task-board-team-step-inner,.wand-team-member-inner{min-height:0;overflow:hidden}.wand-team-member-head>svg,.wand-team-run-head>svg{color:var(--text-muted);transition:transform var(--transition-fast)}.wand-team-member[data-open] .wand-team-member-head>svg,.wand-team-run[data-open] .wand-team-run-head>svg{transform:rotate(180deg)}@media(max-width:760px){.wand-ai-team-editor-grid{grid-template-columns:minmax(0,1fr)}.wand-team-chat-body{padding:0 14px 16px}.task-board-team-chat-input .composer-plus-popover{max-width:calc(100% - 8px)}.wand-team-work-tasks{padding:4px 0 0}.wand-teams-layout{grid-template-columns:minmax(0,1fr)}.wand-teams-list{padding:12px 14px;border-right:0}.wand-teams-detail{padding:14px 14px 28px}.wand-teams-page[data-detail] .wand-teams-list{display:none}.wand-teams-page:not([data-detail]) .wand-teams-detail{display:none}.wand-team-run-head{grid-template-columns:auto minmax(0,1fr) auto auto}.wand-team-run-head small{display:none}.wand-team-candidate{grid-template-columns:auto minmax(0,1fr)}.wand-team-candidate-tools{grid-column:1 / -1;justify-content:end}.task-board-team-views-stack{display:block}.task-board-team-view{opacity:1}.task-board-team-view[data-hidden]{display:none;visibility:visible;transition:none}.wand-teams-detail-stack{display:block}.wand-teams-detail-pane{opacity:1}.wand-teams-detail-pane[data-hidden]{display:none;visibility:visible;transition:none}}@media(prefers-reduced-motion:reduce){.task-board-team-step-body,.wand-team-work-body,.wand-team-work-head>svg,.wand-team-member-body,.wand-team-run-body,.team-chat-goal-body,.team-chat-details,.team-chat-live-body,.task-board-team-step-head svg,.wand-team-member-head>svg,.wand-team-run-head>svg,.wand-team-candidate-tool,.wand-team-candidate-tool>svg,.wand-team-candidate-add,.wand-team-candidate-add>svg,.task-board-team-view,.task-board-team-step-skip-head,.task-board-team-step-skip-head>svg:last-child,.task-board-team-step-skip-body,.wand-teams-create-icon,.task-board-team-chat .chat-message.team-chat-msg[data-arriving],.task-board-team-chat .chat-message.chat-notice[data-arriving]{animation:none}.task-board-team-chat .team-chat-expand:active{transform:none}.task-board-team-chat .team-chat-live-head{animation-name:wand-team-live-reduced;animation-duration:calc(var(--motion-fast) * 0)}.task-board-team-chat .team-chat-live-row[data-leaving]{animation-name:wand-team-live-reduced;animation-duration:calc(var(--motion-quick-exit) * 0)}.team-chat-live-card{transition:none}.task-board-team-step-body,.wand-team-member-body,.wand-team-run-body,.wand-team-member-head>svg,.wand-team-run-head>svg{transition:none}.wand-teams-detail,.task-board-team-steps{animation:none}.wand-teams-detail-pane{transition:none}.wand-employee-advanced,.wand-employee-advanced-toggle button>svg{transition:none}}.wand-employees-layout{display:block!important;max-width:960px;margin:0 auto;padding:16px 20px 40px}.wand-employee-list{display:grid;gap:16px;width:100%}.wand-employee-card.is-archived{opacity:.65}.wand-employee-card.is-system{border-color:color-mix(in srgb,var(--accent) 38%,var(--border-subtle));background:color-mix(in srgb,var(--accent) 4%,var(--bg-primary))}.wand-employee-system-note{display:grid;gap:4px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border-subtle));border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent) 6%,var(--bg-primary))}.wand-employee-system-note strong{color:var(--accent-active);font-size:var(--font-size-xs)}.wand-employee-system-note span{color:var(--text-secondary);font-size:var(--font-size-xs);line-height:1.5}.wand-employee-memory{color:var(--text-secondary);font-size:var(--font-size-xs);line-height:1.6}.wand-employee-memory p{margin:.5em 0}.wand-employee-memory ul{margin:.5em 0;padding-inline-start:1.5em;overflow-wrap:anywhere}.wand-employee-memory-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5em}.wand-employee-memory-actions button{width:100%;min-width:0;font-size:inherit}.wand-employee-knowledge-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5em}.wand-employee-knowledge-actions button{width:100%;min-width:0;font-size:inherit}.wand-employee-knowledge-list{height:240px;overflow-y:auto;white-space:pre-wrap}.wand-employee-knowledge-list li+li{margin-block-start:.5em}.wand-employee-archived-tag{display:inline-block;padding:1px 6px;border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-tertiary);font-size:11px;font-style:normal}.wand-employee-filter-toggle{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-xs);color:var(--text-secondary);cursor:pointer;user-select:none}.wand-employee-filter-toggle input{cursor:pointer}.wand-teams-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.wand-teams-toolbar-search{flex:1 1 300px;max-width:400px}.wand-teams-toolbar-actions{display:flex;align-items:center;gap:12px}.wand-settings-field{display:grid;gap:6px}.wand-settings-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.wand-execution-subject-picker{display:grid;gap:16px}.wand-subject-group{display:grid;gap:8px;margin-top:10px}.wand-subject-group-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-secondary)}.wand-subject-empty-row{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--bg-secondary);border-radius:var(--radius-md);color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-link-btn{background:transparent;border:0;color:var(--accent);cursor:pointer;padding:0;font:inherit;text-decoration:underline}.wand-link-btn:hover{color:var(--accent-strong)}\n"]);
4
+ (()=>{var Fr=Object.create;var Oa=Object.defineProperty;var Br=Object.getOwnPropertyDescriptor;var Hr=Object.getOwnPropertyNames;var jr=Object.getPrototypeOf,Ur=Object.prototype.hasOwnProperty;var X=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var qr=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Hr(t))!Ur.call(e,r)&&r!==n&&Oa(e,r,{get:()=>t[r],enumerable:!(a=Br(t,r))||a.enumerable});return e};var w=(e,t,n)=>(n=e!=null?Fr(jr(e)):{},qr(t||!e||!e.__esModule?Oa(n,"default",{value:e,enumerable:!0}):n,e));var Re=X((hi,Fa)=>{Fa.exports=globalThis.__wandAiTeamsHost("react")});var kt=X((bi,Ya)=>{Ya.exports=globalThis.__wandAiTeamsHost("errors")});var Ze=X((wi,Xa)=>{Xa.exports=globalThis.__wandAiTeamsHost("issues/task-board-agent")});var Wt=X((yi,Ga)=>{Ga.exports=globalThis.__wandAiTeamsHost("issues/task-board-controller")});var Qa=X((xi,Ja)=>{Ja.exports=globalThis.__wandAiTeamsHost("issues/task-board-repository")});var Tt=X((ki,Za)=>{Za.exports=globalThis.__wandAiTeamsHost("ai-teams/repository")});var lt=X((Ti,en)=>{en.exports=globalThis.__wandAiTeamsHost("ai-teams/avatar")});var an=X((Ri,tn)=>{tn.exports=globalThis.__wandAiTeamsHost("file-preview/controller")});var rn=X((Ai,nn)=>{nn.exports=globalThis.__wandAiTeamsHost("file-preview/model")});var $t=X((Ei,sn)=>{sn.exports=globalThis.__wandAiTeamsHost("http-adapter")});var ua=X((Si,on)=>{on.exports=globalThis.__wandAiTeamsHost("model-catalog")});var Ae=X((Ni,dn)=>{dn.exports=globalThis.__wandAiTeamsHost("ui")});var cn=X((Ci,ln)=>{ln.exports=globalThis.__wandAiTeamsHost("composer-attachments/host")});var pn=X((Ii,mn)=>{mn.exports=globalThis.__wandAiTeamsHost("composer-popover/action")});var gn=X((zi,un)=>{un.exports=globalThis.__wandAiTeamsHost("ai-teams/composer-bridge")});var Z=X((Mi,fn)=>{fn.exports=globalThis.__wandAiTeamsHost("react/jsx-runtime")});var Wn=X((Pi,Pn)=>{Pn.exports=globalThis.__wandAiTeamsHost("ui/motion-tokens")});var Ta=X((Oi,Un)=>{Un.exports=globalThis.__wandAiTeamsHost("overlay-controller")});var Kn=X((Fi,qn)=>{qn.exports=globalThis.__wandAiTeamsHost("provider-usage")});var Yn=X((Bi,Vn)=>{Vn.exports=globalThis.__wandAiTeamsHost("settings/fields")});var Ra=X((Hi,Xn)=>{Xn.exports=globalThis.__wandAiTeamsHost("shell/sidebar-toggle-icon")});var Qn=X((qi,Jn)=>{Jn.exports=globalThis.__wandAiTeamsHost("issues/agent-fields")});var Gt=X((Xi,er)=>{er.exports=globalThis.__wandAiTeamsHost("agents/employee-repository")});var ir=X((Zi,sr)=>{sr.exports=globalThis.__wandAiTeamsHost("ai-teams/cat-coats")});var Sr=X((Eo,Er)=>{Er.exports=globalThis.__wandAiTeamsHost("task-changes")});var Dr=X((zo,_r)=>{_r.exports=globalThis.__wandAiTeamsHost("styles")});var z=w(Re());function ma(e){return Array.isArray(e.agents)&&e.agents.length>0?e.agents:e.agent?[e.agent]:[]}function Ba(e){return`${e.provider}|${e.model}|${e.thinkingEffort}|${e.mode}|${e.kind}`}var Ha=6e4,ja=6e4,Kr="wand-ops";var Ua="\u7CFB\u7EDF\u8FD0\u7EF4";function Vr(e){return e?.systemKey===Kr}var Yr="wand-default",qa="e_wand_default";var Ka="\u9ED8\u8BA4\u4F19\u4F34";function pa(e){return e?.systemKey===Yr}function Pt(e){return Vr(e)||pa(e)}var Va=200;var gt=w(kt()),Ie=w(Ze()),st=w(Wt()),ea=w(Qa());var ee=w(Re()),ye=w(Tt()),Et=w(lt());var A=w(Re());var Bt=w(kt()),wa=w(an()),Rn=w(rn()),et=w($t()),An=w(Ze()),Xr=w(ua()),We=w(Ae()),En=w(cn()),fa=w(pn()),ct=w(lt()),De=w(gn()),Rt=w(Tt()),d=w(Z());function Gr(e){return`/api/structured-sessions/${encodeURIComponent(e)}/messages`}function Jr(e){return{input:e}}function Qr(e){return`/api/sessions/${encodeURIComponent(e)}/upload`}function Zr(e,t){return e.length?`[\u9644\u4EF6\u5DF2\u4E0A\u4F20\uFF0C\u8BF7\u67E5\u770B\u4EE5\u4E0B\u6587\u4EF6:
5
5
  ${e.map(n=>n.savedPath).join(`
6
6
  `)}
7
7
  ]
8
8
 
9
- `+(t.trim()||"\u8BF7\u67E5\u770B\u9644\u4EF6\u3002"):t}function gn(e){let t=/^\s*\[附件已上传,请查看以下文件:\n([\s\S]*?)\]\n*/.exec(e);if(!t)return{paths:[],body:e};let n=t[1].split(`
10
- `).map(a=>a.trim()).filter(Boolean);return n.length?{paths:n,body:e.slice(t[0].length)}:{paths:[],body:e}}function Dr(e){return/\.(?:png|jpe?g|gif|webp|bmp|avif)$/i.test(e)}function an(e){e.style.height="auto",e.style.height=`${e.scrollHeight}px`,e.style.overflowY=e.scrollHeight>e.clientHeight+1?"auto":"hidden"}var Pr=5*6e4;function Wr(e,t,n){if(!e||typeof e!="object")return null;let a=e.messages;if(!Array.isArray(a))return null;let r=a.filter(i=>!!i&&typeof i=="object"&&Array.isArray(i.content)),m=r.map(Je),s=new Set(n),c=-1;for(let i=0;i<m.length;i++){let u=m[i];u!=null&&s.has(u)&&(c=i)}if(s.size>0&&c<0)return null;let d=r.slice(c+1).map(i=>i.role==="user"&&_e(i)===t?Je(i):null).filter(i=>i!==null&&!s.has(i));return d.length===1?d[0]:null}function $r(e,t,n,a=[],r){if(e.role!=="user"||_e(e)!==n)return!1;let m=Je(e);if(!m||a.includes(m))return!1;if(r)return m===r;let s=Date.parse(e.createdAt??"");return Number.isFinite(s)&&Math.abs(s-t)<=Pr}function ia(e,t){if(!t)return e.map(r=>r.unconfirmed?r:{...r,unconfirmed:!0});let n=new Set,a=e.filter(r=>{if(r.accepted===!1||r.unconfirmed&&r.accepted!==!0)return!0;let m=t.flatMap((s,c)=>!n.has(c)&&$r(s,r.sentAt,r.text,r.knownFingerprints,r.ackFingerprint)?[c]:[]);return m.length!==1?!0:(n.add(m[0]),!1)});return a.length===e.length?e:a}function Or(e){return JSON.stringify(e.chatSessionId?["chat",e.chatSessionId]:["run",e.id])}function nn(e){return e instanceof Ge.HttpResponseError&&e.status>=400&&e.status<500&&e.status!==408&&e.status!==409}function Le(e){return e.displayTeam??e.run.team}function Br(e,t){let n=e.author;if(!n?.id)return e;let a=t.members.find(r=>r.id===n.id);return!a||a.name===n.name&&a.avatar===n.avatar?e:{...e,author:{...n,name:a.name,avatar:a.avatar}}}function Fr(e){return Le(e).members.map(t=>{let n=e.steps.filter(c=>c.memberId===t.id),a=n.find(c=>c.status==="running")??[...n].sort((c,d)=>d.seq-c.seq)[0],r=a?.sessionId?e.memberStates[a.sessionId]:void 0,m=a?.status==="running"?r==="needs_input"||r==="needs_permission"?"attention":"working":a?.status==="queued"?"queued":a?.status==="done"?"done":a?.status==="failed"?"failed":"idle",s=m==="attention"?r==="needs_permission"?"\u5F85\u6388\u6743":"\u5F85\u56DE\u7B54":{working:"\u5DE5\u4F5C\u4E2D",queued:"\u6392\u961F\u4E2D",done:"\u5DF2\u5B8C\u6210",failed:"\u5931\u8D25",idle:"\u5F85\u6D3E\u5DE5"}[m];return{member:t,state:m,label:s,task:a?.title||t.duty||"\u7B49\u5F85\u8D1F\u8D23\u4EBA\u6D3E\u5DE5",sessionId:a?.sessionId??null}})}function Hr({detail:e,onOpenSession:t}){let n=Fr(e),a=n.filter(m=>m.state==="working").length,r=n.filter(m=>m.state==="attention").length;return(0,l.jsxs)("section",{className:"team-chat-office","aria-label":"\u56E2\u961F\u5DE5\u4F4D",children:[(0,l.jsxs)("header",{className:"team-chat-office-head",children:[(0,l.jsx)("strong",{children:"\u56E2\u961F\u5DE5\u4F4D"}),(0,l.jsxs)("small",{children:[r?`${r} \u4EBA\u5F85\u5904\u7406 \xB7 `:"",a," \u4EBA\u5DE5\u4F5C\u4E2D \xB7 ",n.length," \u4EBA\u5728\u7EC4"]})]}),(0,l.jsx)("div",{className:"team-chat-office-members",children:n.map(({member:m,state:s,label:c,task:d,sessionId:i})=>{let u=(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(it.TeamAvatar,{member:m,size:"sm",state:s==="working"?"working":s==="done"?"done":s==="failed"?"failed":"idle"}),(0,l.jsxs)("span",{className:"team-chat-office-copy",children:[(0,l.jsx)("strong",{children:m.name}),(0,l.jsx)("small",{title:d,children:d})]}),(0,l.jsx)("span",{className:"team-chat-office-state","data-state":s,children:c})]});return i&&t?(0,l.jsx)("button",{type:"button",className:"team-chat-office-member",onClick:()=>t(i),"aria-label":`\u67E5\u770B${m.name}\u7684\u4F1A\u8BDD\uFF1A${c}`,children:u},m.id):(0,l.jsx)("div",{className:"team-chat-office-member",children:u},m.id)})})]})}var jr={awaiting_approval:"\u56DE\u590D\u300E\u6279\u51C6\u300F\u5373\u5F00\u5DE5\uFF0C\u5176\u4ED6\u5185\u5BB9\u4F1A\u4F5C\u4E3A\u4FEE\u6539\u610F\u89C1\u8F6C\u7ED9\u8D1F\u8D23\u4EBA",running:"\u5C06\u4F5C\u4E3A\u63D2\u8BDD\uFF0C\u8D1F\u8D23\u4EBA\u4E0B\u4E00\u8F6E\u770B\u5230"},Ur="\u53D1\u6D88\u606F\u4F1A\u63A5\u7740\u8FD9\u4E00\u8F6E\u7684\u8FDB\u5EA6\u5F00\u65B0\u4E00\u8F6E",qr="\u8F93\u5165\u6D88\u606F\u2026";function da(e){return e==="running"||e==="awaiting_approval"||e==="waiting_user"}function Kr(e,t,n=""){if(n==="send")return da(e)?"send-and-stop":"send";let a=da(e);return a&&t?"send-and-stop":a?"stop":t?"send":"blocked"}function Vr(e){return e==="done"||e==="stopped"||e==="failed"?Ur:jr[e]??""}function _e(e){return e.content.filter(t=>t.type==="text").map(t=>"text"in t?t.text.trim():"").filter(Boolean).join(`
11
- `)}function Bt(e){let t=Date.parse(e.completedAt||e.createdAt||"");return Number.isNaN(t)?"":new Date(t).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}function Yr(e,t,n=new Date){let a=new Date(e.createdAt||"");if(!Number.isFinite(a.getTime()))return"";let r=t?new Date(t.createdAt||""):null;if(r&&Number.isFinite(r.getTime())&&a.toDateString()===r.toDateString()&&a.getTime()-r.getTime()<60*6e4)return"";let m=a.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",hour12:!1}),s=n.toDateString()===a.toDateString(),c=new Date(n.getFullYear(),n.getMonth(),n.getDate()-1).toDateString()===a.toDateString();return`${s?"\u4ECA\u5929":c?"\u6628\u5929":a.getFullYear()===n.getFullYear()?`${a.getMonth()+1}\u6708${a.getDate()}\u65E5`:`${a.getFullYear()}\u5E74${a.getMonth()+1}\u6708${a.getDate()}\u65E5`} ${m}`}function Xr(e){return e.notice?"notice":e.role==="user"?"user":e.author?.leader?"leader":"step"}var Gr=/^(✅ 完成|❌ 没完成)「(.+?)」\s*/;function fn(e){let t=Gr.exec(e.trim());return t?{ok:t[1]==="\u2705 \u5B8C\u6210",title:t[2],body:e.trim().slice(t[0].length)}:null}function Jr(e){return e&&e.title.trim()?`\u6210\u5458\u62A5\u544A \xB7 ${e.title}`:"\u6210\u5458\u53D1\u8A00"}var Qr=/^\d+\.\s*\*\*@(.+?)\*\*\s*(.+)$/,Zr=/^(.+?)((依据:.+?))$/,es=/^(.+?)((等第.+?))$/;function ts(e){let t=e.trim().split(`
12
- `),n=[],a=[];for(let r of t){let m=Qr.exec(r.trim());if(!m){a.push(r);continue}let s=Zr.exec(m[2])??es.exec(m[2]);n.push({member:m[1],title:s?s[1]:m[2],note:s?s[2]:""})}return{head:a.join(`
13
- `).trim(),assignments:n}}var la=6,ca=420;function ma(e){return e.length>ca||e.split(`
14
- `).length>la}var _t="\u6211",hn="\uFF08\u8FD9\u6761\u6D88\u606F\u6CA1\u6709\u6B63\u6587\uFF09",as="\u70B9\u51FB\u5C55\u5F00";function Pt(e,t,n=0){return e==="notice"?"notice":e==="user"?"bubble":ma(t)||n>0?"document":"bubble"}function ns(e){let t=e.split(`
15
- `),n=t.length>la,a=t.slice(0,la).join(`
16
- `);return a.length>ca&&(a=a.slice(0,ca).trimEnd(),n=!0),n?`${a}\u2026`:a}function vn(e){let t=e?.avatar??"";return t.startsWith("data:image/")?{kind:"upload",src:t}:e&&(e.id||e.name)?{kind:"cat",coat:(0,it.memberCoatIndex)({id:e.id,name:e.name,avatar:t})}:{kind:"brand"}}var rs=/[\s((、「【《,,。;;::!!??]/,ss=["**","__","~~","*","_"],is=/[\s((、「【《,,。;;::!!??))」】》、.\]}]/;function os(e,t,n=e){let a=[...new Set(t.map(u=>u.trim()).filter(Boolean))].sort((u,v)=>v.length-u.length);if(!e||a.length===0)return e?[{text:e}]:[];let m=n!==e&&e.endsWith("\u2026")&&n.startsWith(e.slice(0,-1))?e.length-1:e.length,s=[],c=0;for(;c<n.length;){let u=c===0||rs.test(n[c-1]),v=u?ss.find(S=>n.startsWith(`${S}@`,c)):void 0,w=v?c+v.length:c;if((u||v)&&n[w]==="@"){let S=a.find(b=>n.startsWith(b,w+1));if(S){let b=w+1+S.length,f=v?n.startsWith(v,b):!1,I=f?b+v.length:b;if((!v||f)&&(I===n.length||is.test(n[I]))&&I<=m){s.push({start:w,end:b}),c=I;continue}}}c++}let d=[],i=0;for(let u of s)u.start>i&&d.push({text:e.slice(i,u.start)}),d.push({text:e.slice(u.start,u.end),mention:!0}),i=u.end;return i<e.length&&d.push({text:e.slice(i)}),d}var Lt=[];function Wt({text:e,names:t,source:n}){return(0,l.jsx)(l.Fragment,{children:os(e,t,n).map((a,r)=>a.mention?(0,l.jsx)("span",{className:"team-chat-mention",title:a.text,children:a.text},`mention#${r}`):(0,l.jsx)(x.Fragment,{children:a.text},`plain#${r}`))})}function ds({path:e}){let[t,n]=x.useState(!1),a=e.split("/").at(-1)?.replace(/^\d{13}-[0-9a-f]{8}-/,"")||e,r=Dr(e)&&!t;return(0,l.jsx)("button",{type:"button",className:"team-chat-attachment","data-image":r||void 0,title:`\u9884\u89C8 ${a}`,onClick:()=>{mn.filePreviewController.open(e)},children:r?(0,l.jsx)("img",{src:`/api/file-raw?path=${encodeURIComponent(e)}`,alt:a,loading:"lazy",onError:()=>n(!0)}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(Fe.WandIcon,{name:"file",size:18}),(0,l.jsx)("span",{children:a})]})})}function bn({paths:e}){return e.length?(0,l.jsx)("div",{className:"team-chat-attachments","aria-label":"\u6D88\u606F\u9644\u4EF6",children:e.map((t,n)=>(0,l.jsx)(ds,{path:t},`${t}#${n}`))}):null}function wn({spec:e,size:t="md"}){return(0,l.jsx)("span",{className:"team-chat-avatar","data-kind":e.kind,"data-size":t,"aria-hidden":"true",children:e.kind==="upload"?(0,l.jsx)("img",{className:"team-chat-avatar-upload",src:e.src,alt:""}):e.kind==="cat"?(0,l.jsx)(it.PixelCat,{coat:e.coat}):(0,l.jsx)(Fe.WandBrandMark,{className:"team-chat-avatar-brand"})})}function $t({shape:e,text:t,assignments:n,names:a,onExpand:r}){let m=gn(t),s=m.paths.length&&m.body.trim()==="\u8BF7\u67E5\u770B\u9644\u4EF6\u3002"?"":m.body,c=ma(s),d=n??[];return(0,l.jsxs)("div",{className:e==="document"?"team-chat-doc":"chat-message-bubble team-chat-bubble","data-shape":e,children:[(0,l.jsx)(bn,{paths:m.paths}),s.trim()?c?(0,l.jsx)("p",{className:"team-chat-preview",children:(0,l.jsx)(Wt,{text:ns(s),names:a,source:s})}):(0,l.jsx)("pre",{className:e==="document"?"team-chat-doc-text":"team-chat-bubble-text",children:(0,l.jsx)(Wt,{text:s,names:a})}):d.length===0&&m.paths.length===0?(0,l.jsx)("p",{className:"team-chat-preview team-chat-msg-empty",children:hn}):null,d.length>0?(0,l.jsx)("ol",{className:"team-chat-plan-list",children:d.map((i,u)=>(0,l.jsxs)("li",{children:[(0,l.jsxs)("span",{className:"team-chat-mention",children:["@",i.member]}),(0,l.jsx)("span",{className:"team-chat-plan-title",children:i.title}),i.note?(0,l.jsx)("small",{className:"team-chat-plan-basis",children:i.note}):null]},`${i.member}#${u}`))}):null,c&&r?(0,l.jsx)("button",{type:"button",className:"team-chat-expand","aria-haspopup":"dialog",onClick:r,children:as}):null]})}function Ot({kind:e,side:t,shape:n,status:a,avatar:r,name:m,sessionId:s,chip:c,badge:d,clock:i,onOpenSession:u,children:v,footer:w,presentationId:S,arriving:b=!1,onArrivalEnd:f}){return(0,l.jsxs)("div",{className:"chat-message assistant team-chat-msg","data-presentation-id":S,"data-arriving":b||void 0,onAnimationEnd:f,"data-kind":e,"data-side":t,"data-shape":n,"data-status":a,children:[(0,l.jsx)(wn,{spec:r}),(0,l.jsxs)("div",{className:"team-chat-msg-content",children:[(0,l.jsxs)("div",{className:"team-chat-msg-head",children:[s&&u?(0,l.jsx)("button",{type:"button",className:"avatar-name chat-author-link",title:"\u67E5\u770B\u8FD9\u4E2A\u6210\u5458\u7684\u4F1A\u8BDD",onClick:()=>u(s),children:m}):(0,l.jsx)("span",{className:"avatar-name",children:m}),c,d?(0,l.jsx)("span",{className:"chat-author-badge",children:d}):null,i?(0,l.jsx)("span",{className:"chat-message-time",children:i}):null]}),v,w]})]})}function ls({text:e,previewClassName:t,bodyClassName:n}){let a=ma(e),[r,m]=x.useState(!1),s=!a||r;return(0,l.jsxs)(l.Fragment,{children:[a&&!s?(0,l.jsx)("p",{className:t,children:e}):null,(0,l.jsx)("div",{className:n,"data-open":s||void 0,inert:!s,children:(0,l.jsx)("div",{className:`${n}-inner`,children:(0,l.jsx)("pre",{className:`${n}-text`,children:e})})}),a?(0,l.jsx)("button",{type:"button",className:"team-chat-expand","aria-expanded":s,onClick:()=>m(c=>!c),children:s?"\u6536\u8D77":"\u5C55\u5F00\u5168\u6587"}):null]})}function cs({detail:e}){let{run:t}=e;return(0,l.jsxs)("section",{className:"team-chat-goal",children:[(0,l.jsxs)("header",{className:"team-chat-goal-head",children:[(0,l.jsx)("span",{className:"team-chat-goal-label",children:"\u4E3B\u4EFB\u52A1"}),(0,l.jsxs)("span",{className:"team-chat-goal-meta",children:[t.stepsUsed,"/",t.stepLimit," \u6B65 \xB7 ",Le(e).name]})]}),(0,l.jsx)(ls,{text:t.objective,previewClassName:"team-chat-goal-preview",bodyClassName:"team-chat-goal-body"})]})}function ms({turn:e,step:t,names:n,onOpenSession:a,onExpandDoc:r,presentationId:m,arriving:s,onArrivalEnd:c}){let d=e.author,i=fn(_e(e)),u=i?i.body:_e(e),v=Bt(e),w=t?.status??(i?.ok===!1?"failed":i?"done":void 0),S=Pt("step",u,0),b=d?.name??"\u6210\u5458",f=vn(d),I=i?`${i.ok?"\u2705":"\u274C"} ${i.title}`:"";return(0,l.jsx)(Ot,{kind:"step",side:"start",shape:S,status:w,avatar:f,name:b,sessionId:d?.sessionId??null,chip:i?(0,l.jsx)("span",{className:"team-chat-step-chip","data-ok":i.ok||void 0,children:I}):null,clock:v,onOpenSession:a,presentationId:m,arriving:s,onArrivalEnd:c,children:(0,l.jsx)($t,{shape:S,text:u,names:n,onExpand:R=>r(R.currentTarget,{text:u,name:b,clock:v,typeLabel:Jr(i),chip:I,avatar:f,side:"start",mentionNames:[...n]})})})}function ps({turn:e,names:t,onOpenSession:n,onExpandDoc:a,presentationId:r,arriving:m,onArrivalEnd:s}){let c=e.author,d=Bt(e),i=_e(e),{head:u,assignments:v}=ts(i),w=Pt("leader",u,v.length),S=c?.name??"\u8D1F\u8D23\u4EBA",b=vn(c);return(0,l.jsx)(Ot,{kind:"leader",side:"start",shape:w,avatar:b,name:S,sessionId:c?.sessionId??null,badge:"\u8D1F\u8D23\u4EBA",clock:d,onOpenSession:n,presentationId:r,arriving:m,onArrivalEnd:s,children:(0,l.jsx)($t,{shape:w,text:u,assignments:v,names:t,onExpand:f=>a(f.currentTarget,{text:i,name:S,clock:d,typeLabel:"\u8D1F\u8D23\u4EBA\u6D3E\u5DE5",avatar:b,side:"start",mentionNames:[...t]})})})}var yn=24,rn="\u5DF2\u5F00\u59CB\uFF0C\u7B49\u5F85\u7B2C\u4E00\u6BB5\u8F93\u51FA\u2026",us={working:"\u5DE5\u4F5C\u4E2D",needs_input:"\u7B49\u5F85\u56DE\u7B54",needs_permission:"\u7B49\u5F85\u6388\u6743",done:"\u5DF2\u5B8C\u6210",failed:"\u5931\u8D25"};function gs(e){return e&&us[e]||""}function fs(e,t,n,a=yn){return t-(e+n)<=a}function xn(e,t=yn){return fs(e.scrollTop,e.scrollHeight,e.clientHeight,t)}function hs(e){let t=new Set,n=[];for(let a of e)t.has(a.stepId)||(t.add(a.stepId),n.push(a));return n.sort((a,r)=>a.seq-r.seq)}var vs=6;function bs(e){return e>0?`\u5DF2\u7701\u7565\u524D\u9762 ${e} \u5B57`:""}function sn(e,t,n=Date.now()){let a=hs(t),r=new Set(a.map(s=>s.stepId)),m=e.filter(s=>!r.has(s.step.stepId)).map(s=>({...s,leaving:!0,leavingSince:s.leaving?s.leavingSince:n}));return[...a.map(s=>({step:s,leaving:!1,leavingSince:0})),...m].sort((s,c)=>s.step.seq-c.step.seq)}function on(e,t){return e.filter(n=>!(n.leaving&&n.step.stepId===t))}var ws="--motion-quick-exit";function ys(e){let t=e.trim(),n=/^(\d+(?:\.\d+)?)ms$/.exec(t);if(n)return Math.round(Number(n[1]));let a=/^(\d+(?:\.\d+)?)s$/.exec(t);return a?Math.round(Number(a[1])*1e3):null}function dn(){return typeof window>"u"?null:ys(getComputedStyle(document.documentElement).getPropertyValue(ws))}function xs(e,t,n){let a=e.filter(r=>!r.leaving||t-r.leavingSince<n);return a.length===e.length?e:a}function ks({row:e,title:t,memberName:n,state:a,onOpenSession:r,onRetire:m}){let s=e.step,c=x.useRef(null),d=x.useRef(!0),i=x.useRef(null),[u,v]=x.useState(!1),w=gs(a??s.state),S=Bt({createdAt:s.updatedAt,completedAt:s.updatedAt}),b=bs(s.omittedChars),f=s.text.trim().split(`
17
- `).filter(Boolean).at(-1)||rn;x.useEffect(()=>{let R=c.current;u&&R&&d.current&&(R.scrollTop=R.scrollHeight)},[u,s.text]);let I=()=>{r&&(window.getSelection()?.toString()||r(s.sessionId))};return(0,l.jsxs)("div",{className:"team-chat-live-row","data-leaving":e.leaving||void 0,onAnimationEnd:R=>{e.leaving&&R.target===R.currentTarget&&m(s.stepId)},children:[(0,l.jsxs)("div",{className:"team-chat-live-head",children:[(0,l.jsx)("span",{className:"team-chat-live-name",title:n,children:n}),(0,l.jsxs)("span",{className:"team-chat-live-chip",children:["#",s.seq,t?` ${t}`:""]}),w?(0,l.jsx)("span",{className:"team-chat-live-state","data-state":s.state,children:w}):null,S?(0,l.jsx)("span",{className:"chat-message-time",children:S}):null]}),(0,l.jsxs)("button",{type:"button",className:"team-chat-live-summary","aria-expanded":u,onClick:()=>v(R=>!R),children:[(0,l.jsx)("span",{children:f}),(0,l.jsx)("small",{children:u?"\u6536\u8D77\u8F93\u51FA":"\u5C55\u5F00\u8F93\u51FA"})]}),(0,l.jsx)("div",{className:"team-chat-live-body","data-open":u||void 0,inert:!u,children:(0,l.jsx)("div",{className:"team-chat-live-body-inner",children:(0,l.jsxs)("div",{className:"team-chat-live-card",role:"button",tabIndex:0,title:"\u67E5\u770B\u8FD9\u4E2A\u6210\u5458\u7684\u4F1A\u8BDD","aria-label":`\u6253\u5F00${n}\u6B63\u5728\u8F93\u51FA\u7684\u4F1A\u8BDD`,onPointerDown:R=>{i.current={x:R.clientX,y:R.clientY}},onClick:R=>{let k=i.current;k&&Math.hypot(R.clientX-k.x,R.clientY-k.y)>vs||I()},onKeyDown:R=>{R.key!=="Enter"&&R.key!==" "||(R.preventDefault(),I())},children:[b?(0,l.jsx)("p",{className:"team-chat-live-omitted",children:b}):null,(0,l.jsx)("pre",{className:"team-chat-live-text",ref:c,onScroll:R=>{d.current=xn(R.currentTarget)},children:s.text||rn})]})})})]})}function Je(e){let t=e.content.map(a=>a.type==="text"?["text",a.text]:null);if(t.some(a=>a===null))return null;let n=e.author;return JSON.stringify([e.role,e.notice??null,e.createdAt??null,e.completedAt??null,n?[n.id??null,n.name??null,n.leader??null,n.sessionId??null,n.provider??null,n.model??null,n.thinkingEffort??null,n.avatar??null]:null,t])}function ln(e,t){for(let n=0;n<=e.length-t.length;n++)if(t.every((a,r)=>e[n+r]===a))return n;return-1}function kn(e,t){if(e.length===0)return[...t];if(t.length===0)return e;let n=e.map(Je),a=t.map(Je);if(n.includes(null)||a.includes(null))return e;let r=n,m=a,s=ln(m,r);if(s>=0)return s+e.length<t.length?[...t]:e;if(ln(r,m)>=0)return e;let c=0;for(let d=1;d<=Math.min(e.length,t.length);d++)if(r.slice(-d).every((i,u)=>i===m[u])){if(c>0)return e;c=d}return c>0?[...e,...t.slice(c)].slice(-Da):e}function xt(e,t){if(!e||e.run.id!==t.run.id)return t;let n=Date.parse(e.run.updatedAt??""),a=Date.parse(t.run.updatedAt??""),r=v=>v.steps.filter(w=>w.status==="done"||w.status==="failed"||w.status==="skipped").length,m=e.run.status==="done"||e.run.status==="failed"||e.run.status==="stopped",s=t.run.status==="done"||t.run.status==="failed"||t.run.status==="stopped",d=Number.isFinite(n)&&Number.isFinite(a)&&a<n||a===n&&(m&&!s||t.steps.length<e.steps.length||r(t)<r(e)||t.run.stepsUsed<e.run.stepsUsed)?e:t,i=Date.parse(e.displayTeam?.updatedAt??"")>Date.parse(t.displayTeam?.updatedAt??"")?e.displayTeam:t.displayTeam,u=t.chatTitle===void 0||Date.parse(e.chatTitleUpdatedAt??"")>Date.parse(t.chatTitleUpdatedAt??"")?e:t;return{...d,...i?{displayTeam:i}:{},...u.chatTitle!==void 0?{chatTitle:u.chatTitle,chatTitleUpdatedAt:u.chatTitleUpdatedAt}:{},chatTurns:kn(e.chatTurns,t.chatTurns)}}function Ts(e,t){let n=null;for(let a=1;a<=Math.min(e.length,t.length);a++)if(e.slice(-a).every((r,m)=>r.fingerprint!==null&&r.fingerprint===t[m])){if(n!==null)return null;n=a}return n}function Rs(e,t,n){let a=e?.scope===t?e.rows:[],r=n.map(Je),m=e?.scope===t?e.nextId:0,s=()=>`turn-${++m}`;if(a.length===n.length&&a.every((b,f)=>b.fingerprint!==null&&b.fingerprint===r[f]))return{scope:t,nextId:m,candidates:[],rows:n.map((b,f)=>({...a[f],turn:b}))};let d=Ts(a,r),i=new Map,u=new Map;for(let b of a)b.fingerprint!==null&&i.set(b.fingerprint,(i.get(b.fingerprint)??0)+1);for(let b of r)b!==null&&u.set(b,(u.get(b)??0)+1);let v=[],w=[],S=a.length?Date.parse(a.at(-1).turn.createdAt??""):-1/0;for(let b=0;b<n.length;b++){let f=r[b],I=d!==null&&b<d?a[a.length-d+b]:void 0,R=f!==null&&(i.get(f)??0)<=1&&u.get(f)===1,k=I&&f!==null&&i.get(f)===u.get(f)&&n.every((O,P)=>r[P]!==f||d!==null&&P<d&&a[a.length-d+P]?.fingerprint===f),E=I&&(R||k)?I:R?a.find(O=>O.fingerprint===f):void 0,g=E?.presentationId??s();v.push({turn:n[b],fingerprint:f,presentationId:g});let N=Date.parse(n[b].createdAt??"");!E&&R&&(a.length===0&&e?.scope===t||d!==null&&b>=d)&&Number.isFinite(N)&&(a.length===0||Number.isFinite(S)&&N>=S)&&w.push(g)}return{scope:t,rows:v,nextId:m,candidates:w}}function As({layer:e,onExited:t}){let n=e.ownerId,a=gn(e.text);return x.useEffect(()=>()=>t(n),[n,t]),(0,l.jsxs)("div",{className:"team-chat-doc-layer",children:[(0,l.jsxs)("div",{className:"team-chat-doc-layer-meta",children:[(0,l.jsx)(wn,{spec:e.avatar,size:"sm"}),(0,l.jsx)("span",{className:"team-chat-doc-layer-name",children:e.name}),e.chip?(0,l.jsx)("span",{className:"team-chat-step-chip",children:e.chip}):null,e.clock?(0,l.jsx)("span",{className:"chat-message-time",children:e.clock}):null]}),(0,l.jsx)(bn,{paths:a.paths}),(0,l.jsx)("pre",{className:"team-chat-doc-layer-text",tabIndex:0,"data-wand-autofocus":!0,children:a.body.trim()?(0,l.jsx)(Wt,{text:a.body,names:e.mentionNames}):hn})]})}function cn(e,t,n,a){return n?.scope!==t?!1:e.startsWith("local#")?a.some(r=>`local#${r.sentAt}`===e):n.rows.some(r=>r.presentationId===e)}function ot({detail:e,onChange:t,onOpenSession:n,details:a,staleRun:r=!1}){let{run:m,chatTurns:s,steps:c}=e,[d,i]=x.useState([]),[u,v]=x.useState(""),[w,S]=x.useState(""),[b,f]=x.useState("message"),[I,R]=x.useState(!1),[k,E]=x.useState(!1),g=x.useRef(null),N=x.useRef(null),O=x.useRef(null),P=x.useRef(null),ee=x.useRef(null),me=x.useRef(null),V=x.useRef(!1),M=x.useRef(0),[H,W]=x.useState([]),[L,j]=x.useState(!1),[Y,ke]=x.useState(null),[We,Ve]=x.useState({scope:"",ids:new Set}),K=Or(m),pe=m.chatSessionId,mt=x.useCallback(()=>Me.teamChatComposer.revision(pe),[pe]);x.useSyncExternalStore(Me.teamChatComposer.subscribe,mt,mt);let pt=Me.teamChatComposer.read(pe),$e=pt.text,ne=pt.attachments,J=x.useRef({scope:K,runId:m.id,epoch:0});x.useLayoutEffect(()=>{let p=J.current;J.current={scope:K,runId:m.id,epoch:p.epoch+(p.scope===K?0:1)}},[K,m.id]);let Ee=x.useRef(e);x.useLayoutEffect(()=>{Ee.current=e},[e]);let ut=x.useRef(null),Q=x.useMemo(()=>Rs(ut.current,K,s),[K,s]);x.useLayoutEffect(()=>{ut.current=Q},[Q]);let gt=x.useId(),Ye=x.useId(),Ce=x.useRef(null),ft=x.useRef(null),At=x.useRef({projection:Q,local:d});x.useLayoutEffect(()=>{At.current={projection:Q,local:d}},[Q,d]);let St=x.useRef(null),T=x.useRef(null),U=x.useRef(K),de=x.useRef(K),fe=x.useRef(!0),Jt=x.useRef(""),Qt=x.useRef(null),Oe=x.useRef(!0),Nt=Le(e),Zt=x.useMemo(()=>[...new Set([...Nt.members.map(p=>p.name),...m.team.members.map(p=>p.name),...s.map(p=>p.author?.name).filter(p=>!!p)])],[Nt,m.team,s]),ea=r?"\u6B63\u5728\u63A5\u5165\u65B0\u4E00\u8F6E\uFF0C\u52A0\u8F7D\u5B8C\u6210\u540E\u53EF\u53D1\u9001":Vr(m.status),Aa=m.status==="running",ta=Kr(m.status,!!$e.trim()||ne.length>0,w),Et=w!=="",aa=ta==="stop",yr=Et||r||ta==="blocked",xr=w==="send"?"sending":aa?"running":"idle",Sa=w==="send"?b==="upload"?"\u4E0A\u4F20\u4E2D\u2026":"\u53D1\u9001\u4E2D\u2026":w==="stop"?"\u505C\u6B62\u4E2D\u2026":aa?"\u505C\u6B62\u56E2\u961F":"\u53D1\u9001\u6D88\u606F",Na=u?"\u64CD\u4F5C\u5931\u8D25":w==="send"?b==="upload"?"\u4E0A\u4F20\u4E2D\u2026":"\u53D1\u9001\u4E2D\u2026":w==="stop"?"\u505C\u6B62\u4E2D\u2026":"Enter \u53D1\u9001 \xB7 Shift+Enter \u6362\u884C";x.useLayoutEffect(()=>{let p=P.current;p&&an(p)},[$e,pe]),x.useLayoutEffect(()=>{let p=P.current,A=p?.parentElement;if(!p||!A)return;let D=-1,C=new ResizeObserver(([$])=>{let le=$?.contentRect.width??A.getBoundingClientRect().width;le<=0||Math.abs(le-D)<.5||(D=le,an(p))});return C.observe(A),()=>C.disconnect()},[pe]),x.useEffect(()=>{if(!k)return;let p=D=>{let C=D.target;C&&(ee.current?.contains(C)||me.current?.contains(C))||E(!1)},A=D=>{D.key==="Escape"&&(D.preventDefault(),D.stopPropagation(),E(!1),ee.current?.focus())};return document.addEventListener("pointerdown",p),document.addEventListener("keydown",A),()=>{document.removeEventListener("pointerdown",p),document.removeEventListener("keydown",A)}},[k]),x.useLayoutEffect(()=>{if(!k)return;let p=g.current,A=ee.current,D=me.current;if(!p||!A||!D)return;let C=()=>{let le=p.getBoundingClientRect(),he=A.getBoundingClientRect();D.style.left=`${Math.max(0,he.left-le.left)}px`,D.style.bottom=`${Math.max(0,le.bottom-he.top+8)}px`};C();let $=new ResizeObserver(C);return $.observe(p),$.observe(A),window.addEventListener("resize",C),()=>{$.disconnect(),window.removeEventListener("resize",C)}},[k,ne.length,pe,ea]),x.useEffect(()=>{E(!1)},[pe]);let ht=x.useCallback(()=>{ke(p=>p?.phase!=="open"?p:(Qt.current=`${p.scope}/${p.ownerId}`,{...p,phase:"closing"}))},[]),kr=x.useCallback(p=>{Qt.current===`${Jt.current}/${p}`&&(Qt.current=null,ke(A=>A?.ownerId===p&&A.phase==="closing"?null:A),queueMicrotask(()=>{if(!fe.current)return;let A=At.current;(cn(p,Jt.current,A.projection,A.local)&&ft.current?.isConnected?ft.current:Ce.current)?.focus({preventScroll:!0})}))},[]);x.useEffect(()=>(fe.current=!0,()=>{fe.current=!1}),[]),x.useEffect(()=>{de.current!==K&&(de.current=K,i([]),v(""),S(""),Oe.current=!0)},[K]),x.useEffect(()=>{j(!1),ht()},[m.id,ht]),x.useEffect(()=>{i(p=>ia(p,s))},[s,K]),x.useLayoutEffect(()=>{Y?.phase==="open"&&(cn(Y.ownerId,Y.scope,Q,d)||ht())},[Y,K,Q,d,ht]),x.useEffect(()=>{let p=window.matchMedia("(prefers-reduced-motion: reduce)"),A=()=>Ve($=>$.ids.size?{scope:$.scope,ids:new Set}:$),D=()=>{document.visibilityState!=="visible"&&A()},C=()=>{p.matches&&A()};return document.addEventListener("visibilitychange",D),window.addEventListener("pagehide",A),p.addEventListener("change",C),D(),C(),()=>{document.removeEventListener("visibilitychange",D),window.removeEventListener("pagehide",A),p.removeEventListener("change",C)}},[]),x.useLayoutEffect(()=>{if(St.current===Q)return;St.current=Q;let p=Ce.current;if(!p)return;if(U.current!==K&&(T.current=null,Oe.current=!0,U.current=K),Oe.current)p.scrollTop=p.scrollHeight;else if(T.current){let D=[...p.children].find(C=>C.dataset.presentationId===T.current?.id);D&&(p.scrollTop+=D.getBoundingClientRect().top-p.getBoundingClientRect().top-T.current.offset)}let A=new Set;if(Oe.current&&document.visibilityState==="visible"&&!window.matchMedia("(prefers-reduced-motion: reduce)").matches){let D=p.getBoundingClientRect();for(let C of Q.candidates){let $=[...p.children].find(le=>le.dataset.presentationId===C);$&&$.getBoundingClientRect().bottom>D.top&&$.getBoundingClientRect().top<D.bottom&&A.add(C)}}Ve(D=>({scope:K,ids:new Set([...(D.scope===K?[...D.ids]:[]).filter(C=>Q.rows.some($=>$.presentationId===C)),...A])}))},[Q,K]),x.useEffect(()=>{if(W([]),!Aa)return;let p=!0;yt.aiTeamsRepository.live(m.id).then(D=>{p&&W(sn([],D.steps))},()=>{});let A=yt.aiTeamsRepository.subscribeAiTeamStepLive(D=>{!p||D.runId!==m.id||W(C=>sn(C,D.steps))});return()=>{p=!1,A()}},[m.id,Aa]),x.useEffect(()=>{let p=dn();if(p===null)return;let A=Date.now(),D=H.filter(C=>C.leaving).map(C=>window.setTimeout(()=>W($=>on($,C.step.stepId)),Math.max(0,C.leavingSince+p-A)));return()=>{for(let C of D)window.clearTimeout(C)}},[H]),x.useEffect(()=>{let p=dn();if(p===null)return;let A=()=>{document.visibilityState==="visible"&&W(D=>xs(D,Date.now(),p))};return document.addEventListener("visibilitychange",A),()=>document.removeEventListener("visibilitychange",A)},[]),x.useEffect(()=>{let p=Ce.current;!p||!Oe.current||(p.scrollTop=p.scrollHeight)},[Q.rows.at(-1)?.presentationId,d.length,H.length]);let Ct=(p,A,D)=>{if(Y)return;let C=p.getBoundingClientRect(),$=C.top+C.height/2<window.innerHeight/2?"top":"bottom";ft.current=p,Jt.current=K,ke({...D,ownerId:A,scope:K,half:$,phase:"open"})},It=p=>{if(!pe)return;let A=Array.from(p),D=Math.max(0,5-Me.teamChatComposer.read(pe).attachments.length);A.length>D&&v("\u4E00\u6B21\u6700\u591A\u6DFB\u52A0 5 \u4E2A\u9644\u4EF6\u3002");for(let[C,$]of A.slice(0,D).entries()){if($.size>10*1024*1024){v(`\u6587\u4EF6\u8D85\u8FC7 10 MB\uFF1A${$.name||"\u56FE\u7247"}`);continue}let le=$.type.startsWith("image/"),he=$.name&&$.name!=="blob"?$.name:`image-${Date.now()}-${C+1}.${$.type.split("/")[1]||"png"}`;Me.teamChatComposer.edit(pe,{addAttachment:{file:$,name:he,size:$.size,previewUrl:le?URL.createObjectURL($):null}})}},Ea=async()=>{let p=$e.trim(),A=m.chatSessionId;if(!p&&!ne.length||!A||Et||r)return;let D=K,C=J.current.epoch,$=()=>J.current.scope===D&&J.current.epoch===C,le=s.map(Je).filter(ue=>ue!==null);S("send"),v(""),Oe.current=!0;let he=ne.length?"upload":"message";f(he);try{await Me.teamChatComposer.submit(A,p,async ue=>{let Ie=[];if(ue.attachments.length){let ae=new FormData;for(let Be of ue.attachments)ae.append("files",Be.file,Be.name);if(Ie=(await(0,Ge.requestJson)(_r(A),{method:"POST",body:ae})).files,!Array.isArray(Ie)||Ie.length!==ue.attachments.length)throw new Error("\u9644\u4EF6\u4E0A\u4F20\u7ED3\u679C\u4E0D\u5B8C\u6574\uFF0C\u8BF7\u91CD\u8BD5\u3002")}if(!$())throw new Error("\u5DF2\u5207\u6362\u7FA4\u804A\uFF0C\u539F\u6D88\u606F\u5DF2\u4FDD\u7559\u3002");let nt=Lr(Ie,ue.text.trim()),rt=Date.now();he="message",f(he),i(ae=>[...ae,{local:!0,text:nt,sentAt:rt,unconfirmed:!1,accepted:!1,knownFingerprints:le}]);let re;try{re=await(0,Ge.requestJson)(zr(A),{...(0,Ge.jsonBody)(Mr(nt)),headers:{"content-type":"application/json","X-Wand-Tool-Projection":"compact"}})}catch(ae){let Re=nn(ae);throw $()&&i(Be=>Re?Be.filter(vt=>vt.sentAt!==rt):Be.map(vt=>vt.sentAt===rt?{...vt,unconfirmed:!0}:vt)),!Re&&ae&&typeof ae=="object"&&Object.assign(ae,{__wandAmbiguousDelivery:!0}),ae}if(!$())return;let be=Wr(re,nt,le);i(ae=>ia(ae.map(Re=>Re.sentAt===rt?{...Re,accepted:!0,ackFingerprint:be??void 0}:Re),Ee.current.chatTurns));let ze=null;try{let ae=J.current.runId,Re=await yt.aiTeamsRepository.detail(ae);if(!$())return;if(J.current.runId===ae&&Ee.current.run.id===ae){let Be=xt(Ee.current,{...Ee.current,chatTurns:Re.chatTurns});t(Be),ze=Be.chatTurns}else ze=kn(Ee.current.chatTurns,Re.chatTurns)}catch{if(!$())return;ze=null}i(ae=>ia(ae,ze))})}catch(ue){if(!$())return;v(he==="upload"?(0,Dt.failureMessage)(ue,"\u9644\u4EF6\u4E0A\u4F20\u5931\u8D25\uFF0C\u6587\u4EF6\u548C\u6587\u5B57\u5DF2\u4FDD\u7559\u3002"):nn(ue)?(0,Dt.failureMessage)(ue,"\u53D1\u9001\u5931\u8D25\uFF0C\u5185\u5BB9\u5DF2\u653E\u56DE\u8F93\u5165\u6846\u3002"):"\u9001\u8FBE\u72B6\u6001\u672A\u77E5\uFF0C\u8BF7\u5148\u67E5\u770B\u7FA4\u804A\u8BB0\u5F55\uFF0C\u907F\u514D\u91CD\u590D\u53D1\u9001\u3002")}finally{$()&&S("")}},Ca=async()=>{if(!da(m.status)||Et||r)return;let p=K,A=m.id,D=J.current.epoch;S("stop"),v("");try{let C=await yt.aiTeamsRepository.stop(A);J.current.scope===p&&J.current.epoch===D&&J.current.runId===A&&t(xt(Ee.current,C))}catch(C){J.current.scope===p&&J.current.epoch===D&&J.current.runId===A&&v((0,Dt.failureMessage)(C,"\u505C\u6B62\u5931\u8D25\u3002"))}finally{J.current.scope===p&&J.current.epoch===D&&S("")}};return(0,l.jsxs)("div",{className:"task-board-team-chat",children:[(0,l.jsxs)("button",{type:"button",className:"team-chat-context","aria-expanded":L,"aria-controls":gt,onClick:()=>j(p=>!p),children:[(0,l.jsx)("span",{className:"team-chat-context-label",children:"\u7FA4\u516C\u544A"}),(0,l.jsx)("span",{className:"team-chat-context-title",title:m.objective,children:m.objective.split(`
18
- `)[0]||"\u67E5\u770B\u672C\u6B21\u4EFB\u52A1"}),(0,l.jsx)("span",{className:"team-chat-context-action",children:L?"\u6536\u8D77":"\u8BE6\u60C5"})]}),(0,l.jsx)("div",{id:gt,className:"team-chat-details","data-open":L||void 0,inert:!L,children:(0,l.jsxs)("div",{className:"team-chat-details-inner",children:[(0,l.jsx)(cs,{detail:e}),(0,l.jsx)(Hr,{detail:e,onOpenSession:n}),a]})}),(0,l.jsxs)("div",{className:"task-board-team-chat-list",ref:Ce,tabIndex:-1,onScroll:p=>{if(p.currentTarget!==Ce.current)return;let A=p.currentTarget;if(Oe.current=xn(p.currentTarget),Oe.current){T.current=null;return}let D=A.getBoundingClientRect(),C=[...A.children].find($=>$.dataset.presentationId&&$.getBoundingClientRect().bottom>D.top);C?.dataset.presentationId&&(T.current={id:C.dataset.presentationId,offset:C.getBoundingClientRect().top-D.top})},children:[s.length+d.length+H.length===0?(0,l.jsx)("p",{className:"task-board-team-run-detail",children:"\u7FA4\u804A\u8FD8\u6CA1\u6709\u6D88\u606F\u3002"}):null,Q.rows.map(({turn:p,presentationId:A},D)=>{let C=Br(p,Nt),$=Xr(C),le=Yr(C,Q.rows[D-1]?.turn),he=re=>(0,l.jsxs)(x.Fragment,{children:[le?(0,l.jsx)("time",{className:"team-chat-time-marker",dateTime:C.createdAt,children:le}):null,re]},A),ue=We.scope===K&&We.ids.has(A),Ie=re=>{re.target===re.currentTarget&&re.animationName==="wand-team-msg-in"&&Ve(be=>be.scope===K&&be.ids.has(A)?{scope:K,ids:new Set([...be.ids].filter(ze=>ze!==A))}:be)};if($==="notice")return he((0,l.jsx)("div",{className:"chat-message chat-notice","data-presentation-id":A,"data-arriving":ue||void 0,onAnimationEnd:Ie,children:(0,l.jsxs)("div",{className:"chat-notice-line",title:[C.author?.name,_e(C)].filter(Boolean).join(" "),children:[C.author?.name?(0,l.jsx)("span",{className:"chat-notice-author",children:C.author.name}):null,(0,l.jsx)("span",{className:"chat-notice-text",children:(0,l.jsx)(Wt,{text:_e(C),names:Zt})})]})}));if($==="user"){let re=_e(C),be=Bt(C),ze=Pt("user",re,0);return he((0,l.jsx)(Ot,{presentationId:A,kind:"user",side:"end",shape:ze,avatar:{kind:"brand"},name:_t,clock:be,arriving:ue,onArrivalEnd:Ie,children:(0,l.jsx)($t,{shape:ze,text:re,names:Lt,onExpand:ae=>Ct(ae.currentTarget,A,{text:re,name:_t,clock:be,typeLabel:"\u6211\u7684\u6D88\u606F",avatar:{kind:"brand"},side:"end",mentionNames:Lt})})}))}if($==="leader")return he((0,l.jsx)(ps,{presentationId:A,turn:C,names:Zt,arriving:ue,onArrivalEnd:Ie,onOpenSession:n,onExpandDoc:(re,be)=>Ct(re,A,be)}));let nt=fn(_e(C)),rt=nt?c.find(re=>re.kind==="work"&&re.title===nt.title):void 0;return he((0,l.jsx)(ms,{presentationId:A,turn:C,step:rt,names:Zt,arriving:ue,onArrivalEnd:Ie,onOpenSession:n,onExpandDoc:(re,be)=>Ct(re,A,be)}))}),H.map(p=>(0,l.jsx)(ks,{row:p,title:c.find(A=>A.id===p.step.stepId)?.title??"",memberName:Nt.members.find(A=>A.id===p.step.memberId)?.name??p.step.memberName,state:e.memberStates[p.step.sessionId],onOpenSession:n,onRetire:A=>W(D=>on(D,A))},p.step.stepId)),d.map(p=>{let A=Pt("user",p.text,0);return(0,l.jsx)(Ot,{kind:"user",side:"end",shape:A,avatar:{kind:"brand"},name:_t,footer:p.unconfirmed?(0,l.jsx)("small",{className:"wand-team-chat-unconfirmed",children:"\u672A\u786E\u8BA4"}):null,children:(0,l.jsx)($t,{shape:A,text:p.text,names:Lt,onExpand:D=>Ct(D.currentTarget,`local#${p.sentAt}`,{text:p.text,name:_t,clock:"",typeLabel:"\u6211\u7684\u6D88\u606F",avatar:{kind:"brand"},side:"end",mentionNames:Lt})})},`local#${p.sentAt}`)})]}),m.chatSessionId?(0,l.jsxs)("div",{ref:g,className:"task-board-team-chat-input","data-dragging":I||void 0,onDragOver:p=>{p.dataTransfer.types.includes("Files")&&(p.preventDefault(),R(!0))},onDragLeave:p=>{p.currentTarget.contains(p.relatedTarget)||R(!1)},onDrop:p=>{p.dataTransfer.files.length&&(p.preventDefault(),R(!1),It(p.dataTransfer.files))},children:[ea?(0,l.jsx)("p",{className:"task-board-team-chat-hint",children:ea}):null,(0,l.jsx)("div",{className:"input-composer-row",children:(0,l.jsxs)("div",{className:`input-composer${$e.trim()?" has-text":""}${w==="send"?" in-flight":""}${I?" drag-over":""}`,role:"group","aria-label":"\u6D88\u606F\u7F16\u8F91\u5668",children:[ne.length?(0,l.jsx)(un.ComposerAttachmentList,{items:ne.map((p,A)=>({index:A,name:p.name,previewUrl:p.previewUrl??null,sizeLabel:p.size<1024?`${p.size} B`:p.size<1024*1024?`${(p.size/1024).toFixed(1)} KB`:`${(p.size/(1024*1024)).toFixed(1)} MB`})),onRemove:p=>Me.teamChatComposer.edit(pe,{removeAttachment:p})}):null,(0,l.jsxs)("div",{className:"composer-main-row team-chat-compose-main",children:[(0,l.jsx)("div",{className:"composer-input-wrap",children:(0,l.jsx)("textarea",{ref:P,className:"input-textarea",rows:1,value:$e,placeholder:qr,"aria-label":"\u7FA4\u804A\u6D88\u606F",onChange:p=>Me.teamChatComposer.edit(pe,{text:p.currentTarget.value}),onCompositionStart:()=>{M.current++,V.current=!0},onCompositionEnd:()=>{let p=M.current;window.setTimeout(()=>{p===M.current&&(V.current=!1)},0)},onKeyDown:p=>{p.key!=="Enter"||p.shiftKey||p.altKey||p.ctrlKey||p.metaKey||p.nativeEvent.isComposing||p.keyCode===229||V.current||(p.preventDefault(),Ea())},onPaste:p=>{p.clipboardData.files.length&&(p.preventDefault(),It(p.clipboardData.files))}})}),(0,l.jsxs)("div",{className:"composer-actions-left",role:"group","aria-label":"\u6DFB\u52A0\u5185\u5BB9",children:[(0,l.jsx)("button",{ref:ee,type:"button",className:"btn-circle btn-circle-action composer-attach-trigger",title:"\u66F4\u591A","aria-label":"\u66F4\u591A\u64CD\u4F5C","aria-haspopup":"dialog","aria-controls":Ye,"aria-expanded":k,onClick:()=>E(p=>!p),children:(0,l.jsx)(Fe.WandIcon,{name:"plus",size:18,strokeWidth:2.2})}),(0,l.jsx)("input",{ref:N,type:"file",accept:"image/*",multiple:!0,hidden:!0,tabIndex:-1,"aria-label":"\u9009\u62E9\u56FE\u7247",onChange:p=>{p.currentTarget.files&&It(p.currentTarget.files),p.currentTarget.value="",P.current?.focus()}}),(0,l.jsx)("input",{ref:O,type:"file",multiple:!0,hidden:!0,tabIndex:-1,"aria-label":"\u9009\u62E9\u9644\u4EF6",onChange:p=>{p.currentTarget.files&&It(p.currentTarget.files),p.currentTarget.value="",P.current?.focus()}}),(0,l.jsx)("div",{className:"composer-status-row",children:(0,l.jsx)("span",{className:"composer-status-line",role:u?"alert":"status","aria-live":u?"assertive":"polite","data-tone":u?"failed":w?"sending":void 0,title:Na,children:Na})})]}),(0,l.jsxs)("div",{className:"composer-actions-right",role:"group","aria-label":"\u53D1\u9001\u4E0E\u505C\u6B62",children:[ta==="send-and-stop"?(0,l.jsx)("button",{type:"button",className:"btn-circle btn-circle-action team-chat-stop-action",disabled:Et||r,title:"\u505C\u6B62\u56E2\u961F","aria-label":"\u505C\u6B62\u56E2\u961F",onClick:()=>{Ca()},children:(0,l.jsx)(Fe.WandIcon,{name:"stop",size:16})}):null,(0,l.jsxs)("button",{type:"button",className:"btn-circle btn-circle-send","data-phase":xr,disabled:yr,title:Sa,"aria-label":Sa,onClick:()=>{aa?Ca():Ea()},children:[(0,l.jsx)("span",{className:"composer-send-glyph composer-send-glyph-arrow","aria-hidden":"true",children:(0,l.jsxs)("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.4",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,l.jsx)("path",{d:"M12 19V5"}),(0,l.jsx)("path",{d:"m6 11 6-6 6 6"})]})}),(0,l.jsx)("span",{className:"composer-send-glyph composer-send-glyph-stop","aria-hidden":"true",children:(0,l.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 16 16",fill:"currentColor",children:(0,l.jsx)("rect",{x:"3",y:"3",width:"10",height:"10",rx:"2"})})}),(0,l.jsx)("span",{className:"composer-send-glyph composer-send-glyph-sending","aria-hidden":"true",children:(0,l.jsx)("span",{className:"composer-send-spinner"})})]})]})]})]})}),(0,l.jsxs)("div",{ref:me,id:Ye,role:"dialog","aria-label":"\u66F4\u591A\u64CD\u4F5C","aria-modal":"false","aria-hidden":!k,inert:!k,className:`composer-plus-popover${k?"":" hidden"}`,children:[(0,l.jsx)(oa.ComposerPopoverAction,{icon:"image",label:"\u4E0A\u4F20\u56FE\u7247",onClick:()=>{E(!1),N.current?.click()}}),(0,l.jsx)(oa.ComposerPopoverAction,{icon:"paperclip",label:"\u4E0A\u4F20\u9644\u4EF6",onClick:()=>{E(!1),O.current?.click()}})]}),u?(0,l.jsx)("p",{className:"task-board-team-error",role:"alert",children:u}):null]}):(0,l.jsx)("p",{className:"task-board-team-run-detail",children:"\u8FD9\u6B21\u8FD0\u884C\u6CA1\u6709\u7FA4\u804A\u4F1A\u8BDD\uFF0C\u53EA\u80FD\u5728\u65F6\u95F4\u7EBF\u91CC\u770B\u3002"}),(0,l.jsx)(Fe.WandDialogSurface,{open:Y?.phase==="open",onOpenChange:p=>{p||ht()},title:Y?.name??"",description:Y?[Y.clock,Y.typeLabel].filter(Boolean).join(" \xB7 "):void 0,className:["wand-ui-dialog-content","wand-team-chat-doc-dialog",Y?.side==="end"?"wand-doc-dx-end":"wand-doc-dx-start",Y?.half==="top"?"wand-doc-dy-top":"wand-doc-dy-bottom"].join(" "),testId:"team-chat-doc-dialog",closeLabel:"\u5173\u95ED",children:Y?(0,l.jsx)(As,{layer:Y,onExited:kr}):null})]})}var Sn=y(bt()),Nn=y(Xe()),En=y(Mt()),Ft=y(Rn()),ye=y(Se()),h=y(se()),Tt={running:{label:"\u8FDB\u884C\u4E2D",tone:"info"},awaiting_approval:{label:"\u7B49\u4F60\u6279\u51C6\u8BA1\u5212",tone:"warning"},waiting_user:{label:"\u7B49\u4F60\u56DE\u590D",tone:"warning"},done:{label:"\u5DF2\u5B8C\u6210",tone:"success"},failed:{label:"\u5931\u8D25",tone:"neutral"},stopped:{label:"\u5DF2\u505C\u6B62",tone:"neutral"}},Ss={queued:"\u6392\u961F",running:"\u8FDB\u884C\u4E2D",done:"\u5B8C\u6210",failed:"\u5931\u8D25",skipped:"\u8DF3\u8FC7"},Cn={needs_input:"\u7B49\u5F85\u56DE\u7B54",needs_permission:"\u7B49\u5F85\u6388\u6743"},Ns=["running","awaiting_approval","waiting_user"];function Es(){let[e,t]=Z.useState(""),[n,a]=Z.useState(null),r=Z.useRef(null);Z.useEffect(()=>()=>{r.current!==null&&window.clearTimeout(r.current)},[]);let m=Z.useCallback(async(s,c)=>{t(s),a(null);let d=!0;try{await c()}catch{d=!1}finally{t("")}a({key:s,ok:d}),r.current!==null&&window.clearTimeout(r.current),r.current=window.setTimeout(()=>{r.current=null,a(null)},d?Ft.MOTION_DWELL_SENT_MS:Ft.MOTION_DWELL_FAILED_MS)},[]);return{pending:e,flash:n,run:m}}function dt({id:e,state:t,label:n,pendingLabel:a,kind:r="ghost",disabled:m,onClick:s}){let c=t.flash?.key===e?t.flash:null,d=t.pending===e;return(0,h.jsx)(ye.WandButton,{kind:r,size:"small","aria-busy":d||void 0,"aria-live":"polite",disabled:m||!!t.pending,onClick:()=>{t.run(e,s)},children:d?a:c?c.ok?"\u5DF2\u5B8C\u6210":"\u5931\u8D25":n})}function pa(e,t){return e.status==="running"?t&&Cn[t]?"waiting":"working":e.status==="done"?"done":e.status==="failed"?"failed":"idle"}function Cs(e,t,n){let a=t.filter(s=>s.memberId===e.id),r=a.find(s=>s.status==="running");if(r)return pa(r,r.sessionId?n[r.sessionId]:void 0);let m=[...a].reverse().find(s=>s.status!=="queued"&&s.status!=="skipped");return m?pa(m,void 0):"idle"}function Is({step:e,steps:t,member:n,memberState:a,open:r,onToggle:m,onOpenSession:s,onComplete:c,actions:d}){let i=n?.name??(e.kind==="leader"?"\u8D1F\u8D23\u4EBA":e.memberId),[u,v]=Z.useState(""),[w,S]=Z.useState(!1),b=e.dispatchInfo?.skipped??[],f=a?Cn[a]:void 0,I=e.kind==="work"&&e.status==="running",R=e.status==="queued"?e.dependsOn.map(k=>t.find(E=>E.id===k)).filter(k=>!!k&&k.status!=="done").map(k=>`#${k.seq}`):[];return(0,h.jsxs)("li",{className:"task-board-team-step","data-status":e.status,"data-kind":e.kind,"data-open":r||void 0,children:[n?(0,h.jsx)(kt.TeamAvatar,{member:n,size:"sm",state:pa(e,a)}):(0,h.jsx)("span",{}),(0,h.jsxs)("div",{className:"task-board-team-step-card",children:[(0,h.jsxs)("button",{type:"button",className:"task-board-team-step-head","aria-expanded":r,onClick:m,children:[(0,h.jsxs)("span",{className:"task-board-team-step-title",children:[(0,h.jsxs)("small",{children:[i," \xB7 #",e.seq]}),(0,h.jsx)("strong",{children:e.title||(e.kind==="leader"?"\u8D1F\u8D23\u4EBA\u51B3\u7B56":"\u6210\u5458\u6B65\u9AA4")})]}),(0,h.jsx)("span",{className:"task-board-team-step-status",children:f??(R.length?`\u7B49\u5F85 ${R.join("\u3001")}`:Ss[e.status])}),(0,h.jsx)(ye.WandIcon,{name:"chevronDown",size:14})]}),e.report&&!r?(0,h.jsx)("p",{className:"task-board-team-step-preview",children:e.report}):null,(0,h.jsx)("div",{className:"task-board-team-step-body",inert:!r,children:(0,h.jsxs)("div",{className:"task-board-team-step-inner",children:[e.instructions?(0,h.jsxs)("section",{children:[(0,h.jsx)("h4",{children:e.kind==="leader"?"\u53D1\u7ED9\u8D1F\u8D23\u4EBA":"\u4EFB\u52A1\u8BF4\u660E"}),(0,h.jsx)("pre",{children:e.instructions})]}):null,e.report?(0,h.jsxs)("section",{children:[(0,h.jsx)("h4",{children:e.kind==="leader"?"\u8D1F\u8D23\u4EBA\u8BF4\u660E":"\u62A5\u544A"}),(0,h.jsx)("pre",{children:e.report})]}):null,(0,h.jsxs)("p",{className:"task-board-team-step-meta",children:["\u62A5\u544A\u6587\u4EF6\uFF1A",(0,h.jsx)("code",{children:e.reportPath})]}),e.sessionId&&s?(0,h.jsx)("div",{className:"task-board-native-editor-actions",children:(0,h.jsxs)(ye.WandButton,{kind:"ghost",size:"small",onClick:()=>s(e.sessionId),children:[(0,h.jsx)(ye.WandIcon,{name:"terminal",size:14,slot:"start"}),"\u6253\u5F00\u4F1A\u8BDD"]})}):null,I?(0,h.jsxs)("div",{className:"task-board-team-manual",children:[(0,h.jsx)("textarea",{className:"resize-none task-board-detail-body",rows:3,value:u,placeholder:"\u6210\u5458\u6CA1\u6709\u5199\u62A5\u544A\u6587\u4EF6\u65F6\uFF0C\u5728\u8FD9\u91CC\u8865\u4E00\u6BB5\u7ED3\u679C\u518D\u624B\u52A8\u5B8C\u6210","aria-label":"\u624B\u52A8\u5B8C\u6210\u7684\u62A5\u544A",onChange:k=>v(k.currentTarget.value)}),(0,h.jsx)(dt,{id:`complete-${e.id}`,state:d,label:"\u624B\u52A8\u5B8C\u6210\u6B64\u6B65",pendingLabel:"\u63D0\u4EA4\u4E2D\u2026",onClick:()=>c(u)})]}):null]})}),b.length?(0,h.jsxs)("div",{className:"task-board-team-step-skips","data-open":w||void 0,children:[(0,h.jsxs)("button",{type:"button",className:"task-board-team-step-skip-head","aria-expanded":w,onClick:()=>S(k=>!k),children:[(0,h.jsx)(ye.WandIcon,{name:"warning",size:13}),(0,h.jsxs)("span",{children:["\u5907\u7528\u5019\u9009 ",b.map(k=>k.candidate).join("\u3001")," \u6CA1\u7528\u4E0A"]}),(0,h.jsx)(ye.WandIcon,{name:"chevronDown",size:14})]}),(0,h.jsx)("div",{className:"task-board-team-step-skip-body",inert:!w,children:(0,h.jsx)("ul",{className:"task-board-team-step-skip-inner",children:b.map(k=>(0,h.jsxs)("li",{children:[(0,h.jsxs)("strong",{children:["\u5019\u9009 ",k.candidate," \xB7 ",(0,Nn.issueAgentProviderLabel)(k.agent.provider)]}),(0,h.jsx)("span",{children:k.reason})]},k.candidate))})})]}):null]})]})}var An=[{value:"chat",label:"\u7FA4\u804A"},{value:"timeline",label:"\u65F6\u95F4\u7EBF"},{value:"members",label:"\u6309\u6210\u5458"}];function ua({detail:e,onChange:t,onOpenSession:n}){let{run:a,steps:r,memberStates:m}=e,s=Es(),[c,d]=Z.useState(""),[i,u]=Z.useState(""),[v,w]=Z.useState("chat"),[S,b]=Z.useState(""),[f,I]=Z.useState(""),R=Tt[a.status],k=Ns.includes(a.status),E=a.stepsUsed>=a.stepLimit,g=a.status==="awaiting_approval"||a.status==="waiting_user",N=Le(e),O=[...N.members].sort((M,H)=>Number(H.isLeader)-Number(M.isLeader));Z.useEffect(()=>{b(""),I("")},[a.id,a.status]);let P=M=>async()=>{I("");try{t(await M()),b("")}catch(H){throw I((0,Sn.failureMessage)(H,"\u64CD\u4F5C\u5931\u8D25\u3002")),H}},ee=M=>(0,h.jsx)(Is,{step:M,steps:r,member:N.members.find(H=>H.id===M.memberId),memberState:M.sessionId?m[M.sessionId]:void 0,open:c===M.id,onToggle:()=>d(H=>H===M.id?"":M.id),onOpenSession:n,onComplete:H=>P(()=>we.aiTeamsRepository.completeStep(a.id,M.id,H))(),actions:s},M.id),me=i?r.filter(M=>M.memberId===i):r,V=i?"timeline":v;return(0,h.jsxs)("div",{className:"task-board-team-run","data-status":a.status,children:[(0,h.jsxs)("div",{className:"task-board-team-run-head",children:[(0,h.jsx)("span",{className:"task-board-team-run-kicker",children:"\u56E2\u961F\u8FD0\u884C"}),(0,h.jsx)(kt.TeamAvatarStack,{members:N.members,size:"sm"}),(0,h.jsx)("strong",{children:N.name}),(0,h.jsx)(ye.WandBadge,{tone:R.tone,children:R.label}),(0,h.jsxs)("small",{children:["\u6B65\u6570 ",a.stepsUsed,"/",a.stepLimit]}),a.chatSessionId?(0,h.jsx)(ye.WandButton,{kind:"secondary",size:"small",onClick:()=>En.taskBoardController.open("","","teamchat",a.id),children:"\u6253\u5F00\u7FA4\u804A"}):null,k?(0,h.jsx)(dt,{id:"stop",state:s,kind:"danger",label:"\u505C\u6B62",pendingLabel:"\u505C\u6B62\u4E2D\u2026",onClick:P(()=>we.aiTeamsRepository.stop(a.id))}):null]}),(0,h.jsx)("div",{className:"task-board-team-roster",role:"group","aria-label":"\u6210\u5458",children:O.map(M=>{let H=r.filter(L=>L.memberId===M.id&&L.status!=="skipped"),W=H.filter(L=>L.status==="done").length;return(0,h.jsxs)("button",{type:"button",className:"task-board-team-roster-item","aria-pressed":i===M.id,title:i===M.id?"\u663E\u793A\u5168\u90E8\u6210\u5458":`\u53EA\u770B${M.name}`,onClick:()=>u(L=>L===M.id?"":M.id),children:[(0,h.jsx)(kt.TeamAvatar,{member:M,state:Cs(M,r,m),showProvider:!0}),(0,h.jsx)("span",{children:M.name}),(0,h.jsx)("small",{children:H.length?`${W}/${H.length}`:"\u5F85\u547D"})]},M.id)})}),g||a.statusDetail?(0,h.jsxs)("div",{className:"task-board-team-banner","data-attention":g||void 0,children:[a.statusDetail?(0,h.jsx)("p",{children:a.statusDetail}):null,g?(0,h.jsxs)("div",{className:"task-board-team-respond",children:[(0,h.jsx)("textarea",{className:"resize-none task-board-detail-body",rows:3,value:S,placeholder:a.status==="awaiting_approval"?"\u9000\u56DE\u65F6\u5199\u4E0B\u4FEE\u6539\u610F\u89C1":"\u56DE\u590D\u8D1F\u8D23\u4EBA\u7684\u95EE\u9898\u6216\u8865\u5145\u8981\u6C42","aria-label":a.status==="awaiting_approval"?"\u9000\u56DE\u610F\u89C1":"\u56DE\u590D\u8D1F\u8D23\u4EBA",onChange:M=>b(M.currentTarget.value)}),(0,h.jsx)("div",{className:"task-board-native-editor-actions",children:a.status==="awaiting_approval"?(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)(dt,{id:"reject",state:s,label:"\u9000\u56DE\u91CD\u505A",pendingLabel:"\u9000\u56DE\u4E2D\u2026",disabled:!S.trim(),onClick:P(()=>we.aiTeamsRepository.reject(a.id,S))}),(0,h.jsx)(dt,{id:"approve",state:s,kind:"primary",label:"\u6279\u51C6\u8BA1\u5212",pendingLabel:"\u6279\u51C6\u4E2D\u2026",onClick:P(()=>we.aiTeamsRepository.approve(a.id))})]}):(0,h.jsxs)(h.Fragment,{children:[E?(0,h.jsx)(dt,{id:"continue",state:s,label:"\u8FFD\u52A0 10 \u6B65\u7EE7\u7EED",pendingLabel:"\u7EE7\u7EED\u4E2D\u2026",onClick:P(()=>we.aiTeamsRepository.continueRun(a.id,10))}):null,(0,h.jsx)(dt,{id:"reply",state:s,kind:"primary",label:"\u53D1\u9001\u56DE\u590D",pendingLabel:"\u53D1\u9001\u4E2D\u2026",disabled:!S.trim(),onClick:P(()=>we.aiTeamsRepository.reply(a.id,S))})]})})]}):null]}):null,f?(0,h.jsx)("p",{className:"task-board-team-error",role:"alert",children:f}):null,i?null:(0,h.jsx)(ye.WandStretchTabs,{tabs:An,value:v,ariaLabel:"\u8FD0\u884C\u89C6\u56FE",className:"task-board-team-views",onValueChange:w}),(0,h.jsx)("div",{className:"task-board-team-views-stack",children:An.map(M=>(0,h.jsxs)("div",{className:"task-board-team-view","data-view":M.value,"data-hidden":V!==M.value||void 0,inert:V!==M.value,children:[M.value==="chat"?(0,h.jsx)(ot,{detail:e,onChange:t,onOpenSession:n}):null,M.value==="timeline"?(0,h.jsx)("ol",{className:"task-board-team-steps",children:me.map(ee)}):null,M.value==="members"?(0,h.jsx)("div",{className:"task-board-team-groups",children:O.map(H=>{let W=r.filter(L=>L.memberId===H.id);return(0,h.jsxs)("section",{className:"task-board-team-group",children:[(0,h.jsxs)("header",{children:[(0,h.jsx)("strong",{children:H.name}),(0,h.jsx)("small",{children:H.duty})]}),W.length?(0,h.jsx)("ol",{className:"task-board-team-steps",children:W.map(ee)}):(0,h.jsx)("p",{className:"task-board-team-run-detail",children:"\u8FD8\u6CA1\u6709\u5206\u5230\u6B65\u9AA4\u3002"})]},H.id)})}):null]},M.value))})]})}function In({taskId:e,refreshKey:t=0,onOpenSession:n}){let[a,r]=Z.useState(null),m=a?.run.id??"",s=Z.useCallback(async()=>{try{let c=await we.aiTeamsRepository.runsForTask(e);r(c[0]?await we.aiTeamsRepository.detail(c[0].id):null)}catch{}},[e]);return Z.useEffect(()=>{r(null)},[e]),Z.useEffect(()=>{s()},[s,t]),Z.useEffect(()=>(0,we.subscribeAiTeamRunChanges)(c=>{(c.taskId===e||c.runId===m)&&s()}),[m,s,e]),Z.useEffect(()=>(0,we.subscribeAiTeamDefinitionChanges)(c=>{c===a?.run.teamId&&s()}),[a?.run.teamId,s]),a?(0,h.jsx)("section",{className:"task-board-team","aria-label":"AI \u56E2\u961F",children:(0,h.jsx)(ua,{detail:a,onChange:r,onOpenSession:n})}):null}var rr=y(sa()),Ra=y(ga()),Yt=y(_n()),ie=y(Dn()),sr=y(fa()),F=y(Se()),ce=y(st()),xe=y(wt());var Qe=y(Ae()),Rt=y(Se());var Wn=y(Xe());function Ht(e){return e===0?"\u9996\u9009":`\u5907\u7528 ${e+1}`}function ha(e){if(e.length>=4)return e;let t=e[e.length-1];return[...e,t?{...t}:(0,Wn.createDefaultIssueAgent)()]}function va(e,t,n){return e.map((a,r)=>r===t?{...n}:a)}function ba(e,t){return e.length<=1?e:e.filter((n,a)=>a!==t)}function wa(e,t,n){let a=t+n;if(a<0||a>=e.length)return e;let r=[...e],m=r[t];return r[t]=r[a],r[a]=m,r}function jt(e){let t=new Set,n=[];return e.forEach((a,r)=>{let m=Ma(a);t.has(m)?n.push(r):t.add(m)}),n}function je(e){if(e.length===0)return"\u81F3\u5C11\u4FDD\u7559 1 \u4E2A\u6267\u884C\u5019\u9009\u3002";if(e.length>4)return`\u6267\u884C\u5019\u9009\u6700\u591A ${4} \u4E2A\u3002`;let t=jt(e);return t.length>0?`\u5019\u9009\u300C${Ht(t[0])}\u300D\u4E0E\u66F4\u9760\u524D\u7684\u914D\u7F6E\u76F8\u540C\uFF0C\u6539\u4E00\u9879\u5373\u53EF\u3002`:""}var Bn=y(On());var G=y(se());function zs({id:e,agent:t,index:n,total:a,catalog:r,providerOptions:m,disabled:s,duplicate:c,ariaPrefix:d,structuredOnly:i=!1,onChange:u,onMove:v,onRemove:w}){let S=Qe.useRef(null),b=Ht(n);return(0,G.jsx)("div",{ref:S,"data-candidate-id":e,className:"wand-team-candidate","data-candidate-index":n,"data-duplicate":c||void 0,children:(0,G.jsxs)("div",{className:"wand-team-candidate-inner",children:[(0,G.jsx)("span",{className:"wand-team-candidate-tag",children:b}),(0,G.jsx)("div",{className:"wand-ai-team-member-agent",children:(0,G.jsx)(Bn.AgentFields,{agent:t,disabled:s,catalog:r,providerOptions:m,ariaPrefix:`${d} ${b}`,showKind:!i,onChange:f=>u(i?{...f,kind:"structured"}:f)})}),(0,G.jsxs)("div",{className:"wand-team-candidate-tools",children:[(0,G.jsx)("button",{type:"button",className:"wand-team-candidate-tool","data-tool":"up",title:"\u4E0A\u79FB","aria-label":`\u628A${b}\u4E0A\u79FB`,disabled:s||n===0,onClick:()=>v(-1),children:(0,G.jsx)(Rt.WandIcon,{name:"chevronUp",size:14})}),(0,G.jsx)("button",{type:"button",className:"wand-team-candidate-tool","data-tool":"down",title:"\u4E0B\u79FB","aria-label":`\u628A${b}\u4E0B\u79FB`,disabled:s||n===a-1,onClick:()=>v(1),children:(0,G.jsx)(Rt.WandIcon,{name:"chevronDown",size:14})}),(0,G.jsx)("button",{type:"button",className:"wand-team-candidate-tool","data-tool":"remove",title:a<=1?"\u81F3\u5C11\u8981\u4FDD\u7559 1 \u4E2A\u5019\u9009":"\u5220\u9664\u8BE5\u5019\u9009","aria-label":`\u5220\u9664${b}`,disabled:s||a<=1,onClick:w,children:(0,G.jsx)(Rt.WandIcon,{name:"close",size:14})})]})]})})}function lt({agents:e,label:t,catalog:n,providerOptions:a,disabled:r,structuredOnly:m=!1,onChange:s}){let c=Qe.useRef(null),d=Qe.useRef(new Map),i=Qe.useRef([]);for(;i.current.length<e.length;)i.current.push(`c_${Math.random().toString(36).slice(2,9)}`);i.current.length>e.length&&(i.current=i.current.slice(0,e.length)),Qe.useLayoutEffect(()=>{let f=c.current;if(!f)return;let I=Array.from(f.children).filter(E=>E instanceof HTMLElement&&E.hasAttribute("data-candidate-id")),R=new Map;I.forEach(E=>{let g=E.getAttribute("data-candidate-id");g&&R.set(g,E.getBoundingClientRect().top)});let k=typeof window<"u"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches;I.forEach(E=>{let g=E.getAttribute("data-candidate-id");if(!g)return;let N=d.current.get(g),O=R.get(g);if(N!==void 0&&O!==void 0&&N!==O){if(k){E.style.transform="",E.style.transition="";return}let P=N-O;E.style.transform=`translateY(${P}px)`,E.style.transition="none",requestAnimationFrame(()=>{E.style.transition="transform var(--motion-normal) var(--ease-in-out-smooth)",E.style.transform=""})}}),d.current=R});let u=jt(e),v=je(e),w=()=>{let f=ha(e);f!==e&&(i.current.push(`c_${Math.random().toString(36).slice(2,9)}`),s(f))},S=f=>{e.length<=1||(i.current.splice(f,1),s(ba(e,f)))},b=(f,I)=>{let R=f+I;if(R<0||R>=e.length)return;let k=i.current[f];i.current[f]=i.current[R],i.current[R]=k,s(wa(e,f,I))};return(0,G.jsxs)("div",{ref:c,className:"wand-team-candidates",role:"group","aria-label":`${t} \u7684\u6267\u884C\u5019\u9009`,children:[(0,G.jsxs)("header",{className:"wand-team-candidates-head",children:[(0,G.jsx)("span",{children:"\u6267\u884C\u5019\u9009"}),(0,G.jsxs)("small",{children:["\u9996\u9009\u4E0D\u53EF\u7528\u65F6\u6309\u987A\u5E8F\u81EA\u52A8\u964D\u7EA7\uFF0C\u6700\u591A ",4," \u4E2A"]})]}),e.map((f,I)=>{let R=i.current[I]||`row-${I}`;return(0,G.jsx)(zs,{id:R,agent:f,index:I,total:e.length,catalog:n,providerOptions:a,disabled:r,duplicate:u.includes(I),ariaPrefix:t,structuredOnly:m,onChange:k=>s(va(e,I,k)),onMove:k=>b(I,k),onRemove:()=>S(I)},R)}),(0,G.jsxs)("div",{className:"wand-team-candidates-foot",children:[(0,G.jsxs)("button",{type:"button",className:"wand-team-candidate-add",disabled:r||e.length>=4,title:e.length>=4?`\u5DF2\u7ECF\u5230 ${4} \u4E2A\u5019\u9009\u4E0A\u9650`:"\u5728\u672B\u5C3E\u52A0\u4E00\u4E2A\u5907\u7528\u5019\u9009",onClick:w,children:[(0,G.jsx)(Rt.WandIcon,{name:"plus",size:14}),(0,G.jsx)("span",{children:"\u6DFB\u52A0\u5019\u9009"})]}),v?(0,G.jsx)("small",{className:"wand-team-candidate-error",role:"alert",children:v}):null]})]})}var et=y(Ae());var Ke=y(Se());var Ze=y(Ae());var De=y(Se());var jn=y(Ae()),Ue=y(st()),Un=y(Hn()),Ut=y(Se());var ve=y(se());function ya({employee:e,size:t="md",className:n=""}){let a=e.avatar?.startsWith("data:image/")?e.avatar:"",r=`wand-team-avatar ${n}`.trim();return(0,ve.jsx)("span",{className:r,"data-size":t,title:e.name,children:(0,ve.jsx)("span",{className:"wand-team-avatar-face",children:a?(0,ve.jsx)("img",{src:a,alt:""}):(0,ve.jsx)(Ue.PixelCat,{coat:(0,Ue.memberCoatIndex)(e)})})})}function qt({avatar:e,name:t,disabled:n,onChange:a}){let r=jn.useRef(null),m=(0,Ue.memberCoatIndex)({id:"custom",name:t,avatar:e}),s=c=>{let d=c.target.files?.[0];d&&(0,Ue.shrinkAvatarImage)(d,La).then(i=>{a(i)}).catch(i=>{console.error("\u7F29\u5C0F\u5934\u50CF\u5931\u8D25",i)})};return(0,ve.jsxs)("div",{className:"wand-team-avatar-picker",role:"group","aria-label":"\u5458\u5DE5\u5934\u50CF",children:[(0,ve.jsx)(ya,{employee:{id:"preview",name:t,avatar:e},size:"lg"}),Un.CAT_COATS.map((c,d)=>(0,ve.jsx)("button",{type:"button",className:"wand-team-coat",title:c.name,"aria-label":c.name,"aria-pressed":!e.startsWith("data:")&&m===d,disabled:n,onClick:()=>a(`cat:${d}`),children:(0,ve.jsx)(Ue.PixelCat,{coat:d})},c.name)),(0,ve.jsx)("button",{type:"button",className:"wand-team-coat is-upload",title:"\u4E0A\u4F20\u5934\u50CF\u56FE\u7247","aria-label":"\u4E0A\u4F20\u5934\u50CF\u56FE\u7247","aria-pressed":e.startsWith("data:"),disabled:n,onClick:()=>r.current?.click(),children:(0,ve.jsx)(Ut.WandIcon,{name:"image",size:14})}),(0,ve.jsx)("input",{ref:r,type:"file",accept:"image/*",hidden:!0,onChange:s}),e?(0,ve.jsx)(Ut.WandButton,{kind:"ghost",size:"small",disabled:n,onClick:()=>a(""),children:"\u91CD\u7F6E"}):null]})}var qn=y(Xe());var B=y(se());function Kn({employee:e,catalog:t,providerOptions:n,onSave:a,onArchive:r,onUnarchive:m,onDelete:s}){let[c,d]=Ze.useState(!1),[i,u]=Ze.useState(e),[v,w]=Ze.useState(!1),[S,b]=Ze.useState(null);Ze.useEffect(()=>{u(e)},[e]);let f=()=>{c?(u(e),b(null),d(!1)):d(!0)},I=async()=>{let g=i.agents.some(N=>N.kind!=="structured")?"\u7845\u57FA\u5458\u5DE5\u53EA\u80FD\u4F7F\u7528\u7ED3\u6784\u5316\u5019\u9009\u3002":je(i.agents);if(g){b(g);return}if(!i.name.trim()){b("\u5458\u5DE5\u540D\u5B57\u4E0D\u80FD\u4E3A\u7A7A\u3002");return}try{w(!0),b(null),await a(i),d(!1)}catch(N){b(N instanceof Error?N.message:String(N))}finally{w(!1)}},R=!!e.archivedAt,k=zt(e);return(0,B.jsxs)("article",{className:`wand-team-member wand-employee-card${R?" is-archived":""}${k?" is-system":""}`,"data-open":c||void 0,children:[(0,B.jsxs)("button",{type:"button",className:"wand-team-member-head","aria-expanded":c,onClick:f,children:[(0,B.jsx)(ya,{employee:e,size:"lg"}),(0,B.jsxs)("span",{className:"wand-team-member-copy",children:[(0,B.jsxs)("strong",{children:[e.name,k?(0,B.jsx)("em",{className:"wand-employee-system-tag",children:ra}):null,R?(0,B.jsx)("em",{className:"wand-employee-archived-tag",children:"\u5DF2\u5F52\u6863"}):null]}),(0,B.jsx)("small",{children:e.duty||"\u8FD8\u6CA1\u5199\u804C\u8D23"}),(0,B.jsxs)("span",{className:"wand-team-member-agent",children:[e.agents[0]?(0,qn.issueAgentProviderModelLine)(e.agents[0],t):"\u672A\u914D\u7F6E\u5019\u9009",e.agents.length>1?` (+${e.agents.length-1} \u4E2A\u5907\u7528)`:null]})]}),(0,B.jsx)(De.WandIcon,{name:"chevronDown",size:14})]}),(0,B.jsx)("div",{className:"wand-team-member-body",inert:!c,children:(0,B.jsxs)("div",{className:"wand-team-member-inner",children:[k?(0,B.jsxs)("div",{className:"wand-employee-system-note",role:"note",children:[(0,B.jsx)("strong",{children:ra}),(0,B.jsx)("span",{children:"Wand \u5185\u7F6E\u5458\u5DE5\uFF1A\u540D\u5B57\u3001\u804C\u8D23\u4E0E\u89D2\u8272\u8BBE\u5B9A\u7531\u670D\u52A1\u7AEF\u56FA\u5B9A\uFF0C\u4E0D\u53EF\u4FEE\u6539\u3001\u4E0D\u53EF\u5220\u9664\uFF1BWand \u81EA\u5DF1\u7684 AI \u8C03\u7528\uFF08Commit\u3001\u6807\u9898\u3001\u63D0\u793A\u8BCD\u4F18\u5316\uFF09\u90FD\u6309\u4E0B\u9762\u7684\u5019\u9009\u94FE\u6267\u884C\u3002"})]}):(0,B.jsxs)(B.Fragment,{children:[(0,B.jsxs)("div",{className:"wand-settings-field",children:[(0,B.jsx)("label",{className:"wand-settings-label",htmlFor:`employee-${e.id}-name`,children:"\u540D\u5B57"}),(0,B.jsx)("input",{id:`employee-${e.id}-name`,type:"text",className:"wand-settings-input",value:i.name,placeholder:"\u5458\u5DE5\u540D\u5B57",disabled:v,onChange:g=>u({...i,name:g.target.value})})]}),(0,B.jsx)(qt,{avatar:i.avatar,name:i.name,disabled:v,onChange:g=>u({...i,avatar:g})}),(0,B.jsxs)("div",{className:"wand-settings-field",children:[(0,B.jsx)("label",{className:"wand-settings-label",htmlFor:`employee-${e.id}-duty`,children:"\u804C\u8D23"}),(0,B.jsx)("textarea",{id:`employee-${e.id}-duty`,className:"wand-settings-input resize-none",rows:2,value:i.duty,placeholder:"\u4E00\u53E5\u8BDD\u804C\u8D23\uFF1A\u5728\u4FA7\u680F\u3001\u9009\u62E9\u5668\u548C\u7F72\u540D\u4E2D\u663E\u793A",disabled:v,onChange:g=>u({...i,duty:g.target.value})})]}),(0,B.jsxs)("div",{className:"wand-settings-field",children:[(0,B.jsx)("label",{className:"wand-settings-label",htmlFor:`employee-${e.id}-prompt`,children:"\u89D2\u8272\u8BBE\u5B9A (Prompt)"}),(0,B.jsx)("textarea",{id:`employee-${e.id}-prompt`,className:"wand-settings-input resize-none",rows:4,value:i.prompt,placeholder:"\u8BBE\u5B9A\u89D2\u8272\u7684\u4E13\u4E1A\u80FD\u529B\u3001\u884C\u4E3A\u5B88\u5219\u4E0E\u4EA4\u4ED8\u4E60\u60EF\uFF08\u521B\u5EFA\u4F1A\u8BDD\u65F6\u4F5C\u4E3A\u7CFB\u7EDF\u63D0\u793A\u751F\u6548\uFF09",disabled:v,onChange:g=>u({...i,prompt:g.target.value})})]})]}),(0,B.jsx)(lt,{agents:i.agents,label:i.name||"\u5458\u5DE5",catalog:t,providerOptions:n,disabled:v,structuredOnly:!0,onChange:g=>u({...i,agents:g})}),S?(0,B.jsx)("div",{className:"wand-team-candidate-error",role:"alert",children:S}):null,(0,B.jsxs)("div",{className:"wand-team-member-actions",children:[(0,B.jsx)(De.WandButton,{kind:"primary",size:"small",disabled:v,onClick:I,children:"\u4FDD\u5B58\u4FEE\u6539"}),(0,B.jsx)(De.WandButton,{kind:"ghost",size:"small",disabled:v,onClick:f,children:"\u53D6\u6D88"}),k?null:R?(0,B.jsx)(De.WandButton,{kind:"ghost",size:"small",disabled:v,onClick:m,children:"\u6062\u590D"}):(0,B.jsx)(De.WandButton,{kind:"ghost",size:"small",disabled:v,onClick:r,children:"\u5F52\u6863"}),k?null:(0,B.jsxs)(De.WandButton,{kind:"ghost",size:"small",disabled:v,onClick:s,children:[(0,B.jsx)(De.WandIcon,{name:"trash",size:14,slot:"start"}),"\u5220\u9664"]})]})]})})]})}var Te=y(Ae()),Pe=y(Se());var Yn=y(Xe()),ka=y(xa()),q=y(se());function Xn({catalog:e,providerOptions:t,onSave:n,onCancel:a}){let[r,m]=Te.useState(""),[s,c]=Te.useState(!1),[d,i]=Te.useState(""),[u,v]=Te.useState(""),[w,S]=Te.useState(""),[b,f]=Te.useState(""),[I,R]=Te.useState(()=>[{...(0,Yn.createDefaultIssueAgent)(),kind:"structured"}]),[k,E]=Te.useState(!1),[g,N]=Te.useState(!1),[O,P]=Te.useState(null),ee=W=>W instanceof Error?W.message:String(W),me=()=>{if(!d.trim())return P("\u5458\u5DE5\u540D\u5B57\u4E0D\u80FD\u4E3A\u7A7A\uFF1B\u4E5F\u53EF\u4EE5\u7559\u7A7A\u8BA9 AI \u6309\u671F\u671B\u751F\u6210\u3002"),null;let W=I.some(L=>L.kind!=="structured")?"\u7845\u57FA\u5458\u5DE5\u53EA\u80FD\u4F7F\u7528\u7ED3\u6784\u5316\u5019\u9009\u3002":je(I);return W?(P(W),null):{name:d,duty:u,prompt:w,avatar:b,agents:I}},V=async()=>{if(s&&d.trim()){let W=me();if(!W)return;try{E(!0),P(null),await n(W)}catch(L){P(ee(L))}finally{E(!1)}return}if(!r.trim()){P("\u5148\u8BF4\u8BF4\u4F60\u5BF9\u8FD9\u4F4D\u5458\u5DE5\u7684\u671F\u671B\u5427\u3002");return}try{E(!0),P(null);let W=await ka.siliconEmployeesRepository.draft(r);await n({name:W.name,duty:W.duty,prompt:W.prompt,avatar:"",agents:[W.agent]})}catch(W){P(ee(W))}finally{E(!1)}},M=async()=>{if(!r.trim()){P("\u5148\u5728\u4E0A\u9762\u5199\u4E0B\u4F60\u7684\u671F\u671B\uFF0C\u518D\u8BA9 AI \u8D77\u8349\u3002");return}try{N(!0),P(null);let W=await ka.siliconEmployeesRepository.draft(r);i(W.name),v(W.duty),S(W.prompt),f(""),R([W.agent])}catch(W){P(ee(W))}finally{N(!1)}},H=s&&d.trim().length>0;return(0,q.jsx)("div",{className:"wand-team-member wand-employee-card is-new","data-open":"true",children:(0,q.jsx)("div",{className:"wand-team-member-body",children:(0,q.jsxs)("div",{className:"wand-team-member-inner",children:[(0,q.jsxs)("div",{className:"wand-settings-field",children:[(0,q.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-expectation",children:"\u60F3\u8981\u4EC0\u4E48\u6837\u7684\u5458\u5DE5"}),(0,q.jsx)("textarea",{id:"new-employee-expectation",className:"wand-settings-input resize-none",rows:3,value:r,placeholder:"\u8BF4\u8BF4\u4F60\u7684\u671F\u671B\uFF1A\u8BA9\u5B83\u8D1F\u8D23\u4EC0\u4E48\u3001\u9700\u8981\u4EC0\u4E48\u4E13\u957F\u3001\u5E0C\u671B\u5B83\u600E\u4E48\u4EA4\u4ED8\u2026\u2026",disabled:k,autoFocus:!0,onChange:W=>m(W.target.value)}),(0,q.jsx)("p",{className:"wand-employee-hint",children:H?"\u5C06\u6309\u4E0B\u9762\u586B\u597D\u7684\u914D\u7F6E\u521B\u5EFA\u3002":"AI \u4F1A\u6309\u4F60\u7684\u671F\u671B\u914D\u597D\u540D\u5B57\u3001\u804C\u8D23\u3001\u89D2\u8272\u8BBE\u5B9A\u548C\u6267\u884C\u5DE5\u5177\u3002"})]}),(0,q.jsx)("div",{className:"wand-employee-advanced-toggle","data-open":s||void 0,children:(0,q.jsxs)(Pe.WandButton,{kind:"ghost",size:"small","aria-expanded":s,disabled:k,onClick:()=>c(W=>!W),children:[(0,q.jsx)(Pe.WandIcon,{name:"sliders",size:14,slot:"start"}),"\u9AD8\u7EA7\u914D\u7F6E",(0,q.jsx)(Pe.WandIcon,{name:"chevronDown",size:14,slot:"end"})]})}),(0,q.jsx)("section",{className:"wand-employee-advanced","data-open":s||void 0,"aria-hidden":!s,inert:!s,children:(0,q.jsxs)("div",{className:"wand-employee-advanced-inner",children:[(0,q.jsxs)("div",{className:"wand-settings-field",children:[(0,q.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-name",children:"\u540D\u5B57"}),(0,q.jsx)("input",{id:"new-employee-name",type:"text",className:"wand-settings-input",value:d,placeholder:"\u5458\u5DE5\u540D\u5B57",disabled:k||g,onChange:W=>i(W.target.value)})]}),(0,q.jsx)(qt,{avatar:b,name:d,disabled:k||g,onChange:f}),(0,q.jsxs)("div",{className:"wand-settings-field",children:[(0,q.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-duty",children:"\u804C\u8D23"}),(0,q.jsx)("textarea",{id:"new-employee-duty",className:"wand-settings-input resize-none",rows:2,value:u,placeholder:"\u4E00\u53E5\u8BDD\u804C\u8D23\uFF1A\u5728\u4FA7\u680F\u3001\u9009\u62E9\u5668\u548C\u7F72\u540D\u4E2D\u663E\u793A",disabled:k||g,onChange:W=>v(W.target.value)})]}),(0,q.jsxs)("div",{className:"wand-settings-field",children:[(0,q.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-prompt",children:"\u89D2\u8272\u8BBE\u5B9A (Prompt)"}),(0,q.jsx)("textarea",{id:"new-employee-prompt",className:"wand-settings-input resize-none",rows:4,value:w,placeholder:"\u8BBE\u5B9A\u89D2\u8272\u7684\u4E13\u4E1A\u80FD\u529B\u3001\u884C\u4E3A\u5B88\u5219\u4E0E\u4EA4\u4ED8\u4E60\u60EF\uFF08\u521B\u5EFA\u4F1A\u8BDD\u65F6\u4F5C\u4E3A\u7CFB\u7EDF\u63D0\u793A\u751F\u6548\uFF09",disabled:k||g,onChange:W=>S(W.target.value)})]}),(0,q.jsx)(lt,{agents:I,label:d||"\u65B0\u5458\u5DE5",catalog:e,providerOptions:t,disabled:k||g,structuredOnly:!0,onChange:R}),(0,q.jsx)("div",{className:"wand-employee-advanced-tools",children:(0,q.jsxs)(Pe.WandButton,{kind:"ghost",size:"small",disabled:k||g,onClick:()=>{M()},children:[(0,q.jsx)(Pe.WandIcon,{name:"spark",size:14,slot:"start"}),g?"\u751F\u6210\u4E2D\u2026":"\u6309\u671F\u671B\u751F\u6210"]})})]})}),O?(0,q.jsx)("div",{className:"wand-team-candidate-error",role:"alert",children:O}):null,(0,q.jsxs)("div",{className:"wand-team-member-actions",children:[(0,q.jsx)(Pe.WandButton,{kind:"primary",size:"small",className:"wand-employee-create-submit","aria-busy":k||void 0,disabled:k,onClick:()=>{V()},children:k?"\u6B63\u5728\u521B\u5EFA\u2026":"\u521B\u5EFA\u5458\u5DE5"}),(0,q.jsx)(Pe.WandButton,{kind:"ghost",size:"small",disabled:k,onClick:a,children:"\u53D6\u6D88"})]})]})})})}var qe=y(xa()),Gn=y(ga()),te=y(se());function Jn({catalog:e,providerOptions:t}){let{employees:n,loading:a,error:r,reload:m}=(0,qe.useSiliconEmployees)({includeArchived:!0}),[s,c]=et.useState(""),[d,i]=et.useState(!1),[u,v]=et.useState(!1),[w,S]=et.useState(""),b=et.useMemo(()=>n.filter(g=>{if(!d&&g.archivedAt)return!1;if(!s.trim())return!0;let N=s.toLowerCase();return g.name.toLowerCase().includes(N)||g.duty.toLowerCase().includes(N)||g.prompt.toLowerCase().includes(N)}),[n,d,s]),f=async g=>{await qe.siliconEmployeesRepository.create(g),v(!1),m()},I=async(g,N)=>{let O=n.find(ee=>ee.id===g);if(!O)return;let P=zt(O)?O:N;await qe.siliconEmployeesRepository.update(g,{name:P.name??O.name,duty:P.duty??O.duty,prompt:P.prompt??O.prompt,avatar:P.avatar??O.avatar,agents:N.agents??O.agents}),m()},R=async g=>{try{S(""),await qe.siliconEmployeesRepository.archive(g),m()}catch(N){S(N instanceof Error?N.message:"\u5F52\u6863\u5458\u5DE5\u5931\u8D25\u3002")}},k=async g=>{try{S(""),await qe.siliconEmployeesRepository.unarchive(g),m()}catch(N){S(N instanceof Error?N.message:"\u6062\u590D\u5458\u5DE5\u5931\u8D25\u3002")}},E=async g=>{let N=n.find(P=>P.id===g);if(!N)return;let O=await Gn.wandOverlay.dialog({title:`\u5220\u9664\u5458\u5DE5\u300C${N.name}\u300D\uFF1F`,description:"\u5458\u5DE5\u914D\u7F6E\u5C06\u88AB\u5220\u9664\uFF1B\u5DF2\u6709\u4F1A\u8BDD\u4E0E\u5386\u53F2\u6D88\u606F\u4F1A\u4FDD\u7559\u3002",actions:[{label:"\u53D6\u6D88",value:!1,autoFocus:!0},{label:"\u5220\u9664\u5458\u5DE5",value:!0,kind:"danger"}]});if(!(O.dismissed===!0||!O.action))try{S(""),await qe.siliconEmployeesRepository.remove(g),m()}catch(P){S(P instanceof Error?P.message:"\u5220\u9664\u5458\u5DE5\u5931\u8D25\u3002")}};return(0,te.jsxs)("div",{className:"wand-teams-list wand-employee-list",children:[(0,te.jsxs)("header",{className:"wand-teams-toolbar",children:[(0,te.jsx)("div",{className:"wand-teams-toolbar-search",children:(0,te.jsx)(Ke.WandSearchField,{value:s,label:"\u641C\u7D22\u5458\u5DE5\u540D\u5B57\u3001\u804C\u8D23\u6216 Prompt",placeholder:"\u641C\u7D22\u5458\u5DE5\u540D\u5B57\u3001\u804C\u8D23\u6216 Prompt\u2026",onValueChange:c})}),(0,te.jsxs)("div",{className:"wand-teams-toolbar-actions",children:[(0,te.jsxs)("label",{className:"wand-employee-filter-toggle",children:[(0,te.jsx)("input",{type:"checkbox",checked:d,onChange:g=>i(g.target.checked)}),(0,te.jsx)("span",{children:"\u663E\u793A\u5F52\u6863"})]}),(0,te.jsxs)(Ke.WandButton,{kind:"primary",disabled:u,onClick:()=>v(!0),children:[(0,te.jsx)(Ke.WandIcon,{name:"plus",size:14,slot:"start"}),"\u65B0\u5EFA\u5458\u5DE5"]})]})]}),r?(0,te.jsx)("div",{className:"wand-team-candidate-error",role:"alert",children:r}):null,w?(0,te.jsx)("div",{className:"wand-team-candidate-error",role:"alert",children:w}):null,(0,te.jsxs)("div",{className:"wand-team-members",children:[u?(0,te.jsx)(Xn,{catalog:e,providerOptions:t,onSave:f,onCancel:()=>v(!1)}):null,a&&n.length===0?(0,te.jsx)("p",{className:"wand-teams-empty",role:"status",children:"\u6B63\u5728\u52A0\u8F7D\u5458\u5DE5\u5217\u8868\u2026"}):null,!a&&b.length===0&&!u?(0,te.jsxs)("div",{className:"wand-teams-empty",children:[(0,te.jsx)("p",{children:s?"\u6CA1\u6709\u5339\u914D\u7684\u5458\u5DE5":"\u8FD8\u6CA1\u6709\u7845\u57FA\u5458\u5DE5\u3002\u521B\u5EFA\u4E00\u4E2A\u89D2\u8272\uFF0C\u5E76\u4E3A\u5B83\u914D\u7F6E\u4E13\u5C5E\u7684\u6267\u884C\u5DE5\u5177\u94FE\u5427\uFF01"}),s?null:(0,te.jsxs)(Ke.WandButton,{kind:"primary",onClick:()=>v(!0),children:[(0,te.jsx)(Ke.WandIcon,{name:"plus",size:14,slot:"start"}),"\u521B\u5EFA\u4F60\u7684\u7B2C\u4E00\u4E2A\u7845\u57FA\u5458\u5DE5"]})]}):null,b.map(g=>(0,te.jsx)(Kn,{employee:g,catalog:e,providerOptions:t,onSave:N=>I(g.id,N),onArchive:()=>R(g.id),onUnarchive:()=>k(g.id),onDelete:()=>E(g.id)},g.id))]})]})}var o=y(se()),er="__new__",_s=["awaiting_approval","waiting_user"],Ls=[{id:"dev",name:"\u5F00\u53D1\u4E09\u4EBA\u7EC4",summary:"\u8D1F\u8D23\u4EBA\u62C6\u89E3\u4E0E\u9A8C\u6536\uFF0C\u4E00\u4EBA\u5B9E\u73B0\uFF0C\u4E00\u4EBA\u5BA1\u67E5",instructions:"\u5BA1\u67E5\u8005\u53EA\u8BFB\u4EE3\u7801\uFF0C\u95EE\u9898\u5199\u8FDB\u62A5\u544A\uFF0C\u7531\u8D1F\u8D23\u4EBA\u51B3\u5B9A\u662F\u5426\u8FD4\u5DE5\u3002",members:[{name:"\u8D1F\u8D23\u4EBA",isLeader:!0,duty:"\u62C6\u89E3\u4EFB\u52A1\u3001\u5206\u6D3E\u6B65\u9AA4\uFF0C\u5BA1\u9605\u62A5\u544A\u5E76\u51B3\u5B9A\u4E0B\u4E00\u6B65\u6216\u5B8C\u6210\u3002"},{name:"\u5B9E\u73B0\u8005",duty:"\u6309\u6B65\u9AA4\u6539\u4EE3\u7801\u5E76\u81EA\u6D4B\uFF0C\u62A5\u544A\u5199\u6E05\u6539\u52A8\u4E0E\u9A8C\u8BC1\u65B9\u5F0F\u3002"},{name:"\u5BA1\u67E5\u8005",duty:"\u5BA1\u67E5\u6539\u52A8\u4E0E\u6D4B\u8BD5\uFF0C\u6307\u51FA\u95EE\u9898\u548C\u98CE\u9669\uFF0C\u4E0D\u76F4\u63A5\u4FEE\u6539\u3002"}]},{id:"bugfix",name:"\u4FEE Bug \u4E8C\u4EBA\u7EC4",summary:"\u8D1F\u8D23\u4EBA\u5B9A\u4F4D\u4E0E\u9A8C\u8BC1\uFF0C\u4E00\u4EBA\u4FEE\u590D",instructions:"\u5148\u590D\u73B0\u518D\u4FEE\uFF0C\u4FEE\u590D\u9644\u4E0A\u9A8C\u8BC1\u6B65\u9AA4\u3002",members:[{name:"\u8D1F\u8D23\u4EBA",isLeader:!0,duty:"\u590D\u73B0\u5E76\u5B9A\u4F4D\u6839\u56E0\uFF0C\u5199\u6E05\u4FEE\u6539\u8303\u56F4\uFF0C\u4FEE\u5B8C\u540E\u9A8C\u8BC1\u3002"},{name:"\u4FEE\u590D\u8005",duty:"\u6309\u5B9A\u4F4D\u4FEE\u6539\u4EE3\u7801\uFF0C\u8865\u56DE\u5F52\u6D4B\u8BD5\uFF0C\u62A5\u544A\u9644\u9A8C\u8BC1\u8F93\u51FA\u3002"}]},{id:"research",name:"\u8C03\u7814\u52A0\u8BC4\u5BA1",summary:"\u4E24\u4EBA\u5E76\u884C\u8C03\u7814\u4E0D\u540C\u65B9\u5411\uFF0C\u8D1F\u8D23\u4EBA\u6C47\u603B",instructions:"\u8C03\u7814\u5458\u53EF\u540C\u65F6\u5F00\u59CB\uFF0C\u53EA\u8BFB\u4E0D\u6539\u6587\u4EF6\u3002",members:[{name:"\u8D1F\u8D23\u4EBA",isLeader:!0,duty:"\u62C6\u51FA\u4E92\u4E0D\u91CD\u53E0\u7684\u8C03\u7814\u65B9\u5411\uFF0C\u6C47\u603B\u7ED3\u8BBA\u7ED9\u51FA\u5EFA\u8BAE\u3002"},{name:"\u8C03\u7814\u5458\u7532",duty:"\u6309\u5206\u6D3E\u7684\u65B9\u5411\u8C03\u7814\uFF0C\u7ED3\u8BBA\u9644\u51FA\u5904\u3002"},{name:"\u8C03\u7814\u5458\u4E59",duty:"\u6309\u5206\u6D3E\u7684\u65B9\u5411\u8C03\u7814\uFF0C\u7ED3\u8BBA\u9644\u51FA\u5904\u3002"}]},{id:"blank",name:"\u7A7A\u767D\u56E2\u961F",summary:"\u4E00\u4F4D\u8D1F\u8D23\u4EBA\u52A0\u4E00\u4F4D\u6210\u5458\uFF0C\u81EA\u5DF1\u5199\u804C\u8D23",instructions:"",members:[{name:"\u8D1F\u8D23\u4EBA",isLeader:!0,duty:""},{name:"\u6210\u5458",duty:""}]}];function tr(e,t){return{name:e.id==="blank"?"":e.name,description:e.summary,instructions:e.instructions,requirePlanApproval:!0,maxSteps:30,members:e.members.map((n,a)=>({id:"",name:n.name,duty:n.duty,isLeader:!!n.isLeader,agents:[{...t}],agent:{...t},avatar:`cat:${a%ce.CAT_COATS.length}`}))}}function ir(e){return{name:e.name,description:e.description,instructions:e.instructions,requirePlanApproval:e.requirePlanApproval,maxSteps:e.maxSteps,members:e.members.map(t=>({...t,agent:{...t.agent}}))}}function Ds(e){return[...e].sort((t,n)=>Number(n.isLeader)-Number(t.isLeader))}function Ps(e){let t=[];e.length<2&&t.push(`\u81F3\u5C11\u8981\u6709 ${2} \u4F4D\u6210\u5458\u3002`),e.length>8&&t.push(`\u6700\u591A ${8} \u4F4D\u6210\u5458\u3002`);let n=e.filter(a=>a.isLeader).length;return n!==1&&t.push(`\u8D1F\u8D23\u4EBA\u8981\u6070\u597D 1 \u4F4D\uFF0C\u5F53\u524D ${n} \u4F4D\u3002`),e.forEach((a,r)=>{let m=je(na(a));m&&t.push(`${a.name||`\u6210\u5458 ${r+1}`}\uFF1A${m}`)}),t}function Ws({member:e,disabled:t,onChange:n}){let a=z.useRef(null),[r,m]=z.useState(""),s=e.avatar??"",c=(0,ce.memberCoatIndex)(e);return(0,o.jsxs)("div",{className:"wand-team-avatar-picker",role:"group","aria-label":"\u5934\u50CF",children:[ce.CAT_COATS.map((d,i)=>(0,o.jsx)("button",{type:"button",className:"wand-team-coat",title:d.name,"aria-label":d.name,"aria-pressed":!s.startsWith("data:")&&c===i,disabled:t,onClick:()=>n(`cat:${i}`),children:(0,o.jsx)(ce.PixelCat,{coat:i})},d.name)),(0,o.jsx)("button",{type:"button",className:"wand-team-coat is-upload",title:"\u4E0A\u4F20\u56FE\u7247","aria-label":"\u4E0A\u4F20\u5934\u50CF\u56FE\u7247","aria-pressed":s.startsWith("data:"),disabled:t,onClick:()=>a.current?.click(),children:s.startsWith("data:")?(0,o.jsx)("img",{src:s,alt:""}):(0,o.jsx)(F.WandIcon,{name:"image",size:14})}),(0,o.jsx)("input",{ref:a,type:"file",accept:"image/png,image/jpeg,image/webp",hidden:!0,onChange:d=>{let i=d.currentTarget.files?.[0];d.currentTarget.value="",i&&(m(""),(0,ce.shrinkAvatarImage)(i,_a).then(n).catch(u=>m((0,ct.failureMessage)(u,"\u56FE\u7247\u5904\u7406\u5931\u8D25\u3002"))))}}),r?(0,o.jsx)("small",{className:"wand-team-avatar-error",role:"alert",children:r}):null]})}function $s({member:e,index:t,open:n,catalog:a,providerOptions:r,disabled:m,canRemove:s,onToggle:c,onChange:d,onRemove:i}){let u=e.name||`\u6210\u5458 ${t+1}`,v=na(e),w=S=>{d({agents:S,agent:{...S[0]}})};return(0,o.jsxs)("article",{className:"wand-team-member","data-leader":e.isLeader||void 0,"data-open":n||void 0,children:[(0,o.jsxs)("button",{type:"button",className:"wand-team-member-head","aria-expanded":n,onClick:c,children:[(0,o.jsx)(ce.TeamAvatar,{member:e,size:"lg",showProvider:!0}),(0,o.jsxs)("span",{className:"wand-team-member-copy",children:[(0,o.jsxs)("strong",{children:[u,e.isLeader?(0,o.jsx)("em",{children:"\u8D1F\u8D23\u4EBA"}):null]}),(0,o.jsx)("small",{children:e.duty||"\u8FD8\u6CA1\u5199\u804C\u8D23"}),(0,o.jsx)("span",{className:"wand-team-member-agent",children:(0,Ne.issueAgentProviderModelLine)(e.agent,a)})]}),(0,o.jsx)(F.WandIcon,{name:"chevronDown",size:14})]}),(0,o.jsx)("div",{className:"wand-team-member-body",inert:!n,children:(0,o.jsxs)("div",{className:"wand-team-member-inner",children:[(0,o.jsx)(ie.SettingsField,{label:"\u540D\u5B57",htmlFor:`team-member-${t}-name`,children:(0,o.jsx)(ie.SettingsTextInput,{id:`team-member-${t}-name`,value:e.name,placeholder:"\u6210\u5458\u540D\u5B57",disabled:m,onChange:S=>d({name:S})})}),(0,o.jsx)(Ws,{member:e,disabled:m,onChange:S=>d({avatar:S})}),(0,o.jsx)("textarea",{className:"wand-settings-input wand-ai-team-duty resize-none",rows:3,value:e.duty,placeholder:"\u804C\u8D23\uFF1A\u8FD9\u4F4D\u6210\u5458\u8D1F\u8D23\u4EC0\u4E48\u3001\u4EA4\u4ED8\u4EC0\u4E48","aria-label":`${u}\u7684\u804C\u8D23`,disabled:m,onChange:S=>d({duty:S.currentTarget.value})}),(0,o.jsx)(lt,{agents:v,label:u,catalog:a,providerOptions:r,disabled:m,onChange:w}),(0,o.jsxs)("div",{className:"wand-team-member-actions",children:[e.isLeader?null:(0,o.jsx)(F.WandButton,{kind:"ghost",size:"small",disabled:m,onClick:()=>d({isLeader:!0}),children:"\u8BBE\u4E3A\u8D1F\u8D23\u4EBA"}),(0,o.jsxs)(F.WandButton,{kind:"ghost",size:"small",disabled:m||!s,onClick:i,children:[(0,o.jsx)(F.WandIcon,{name:"trash",size:14,slot:"start"}),"\u79FB\u9664"]})]})]})})]})}function ar({team:e,initial:t,catalog:n,providerOptions:a,defaultAgent:r,onSaved:m,onDeleted:s,onDirtyChange:c}){let[d,i]=z.useState(t),[u,v]=z.useState(-1),[w,S]=z.useState(!1),[b,f]=z.useState(!1),[I,R]=z.useState(""),[k,E]=z.useState("info"),g=w||b,N=`ai-team-${e?.id??"new"}`,O=d.members.findIndex(L=>L.isLeader),P=JSON.stringify(t),ee=z.useMemo(()=>JSON.stringify(d)!==P,[d,P]);z.useEffect(()=>{c?.(ee)},[ee,c]);let me=(L,j)=>{i(Y=>({...Y,members:Y.members.map((ke,We)=>We===L?{...ke,...j}:j.isLeader?{...ke,isLeader:!1}:ke)}))},V=L=>{v(-1),i(j=>{let Y=j.members.filter((ke,We)=>We!==L);return!Y.some(ke=>ke.isLeader)&&Y[0]&&(Y[0]={...Y[0],isLeader:!0}),{...j,members:Y}})};async function M(){let L=Ps(d.members);if(L.length>0){R(L[0]),E("error");return}S(!0),R("");try{let j=e?await xe.aiTeamsRepository.update(e.id,d):await xe.aiTeamsRepository.create(d);i(ir(j)),R(e?"\u5DF2\u4FDD\u5B58\u3002":"\u56E2\u961F\u5DF2\u521B\u5EFA\u3002"),E("success"),m(j,!e)}catch(j){R((0,ct.failureMessage)(j,"\u4FDD\u5B58\u56E2\u961F\u5931\u8D25\u3002")),E("error")}finally{S(!1)}}async function H(){if(!e)return;let L=await Ra.wandOverlay.dialog({title:`\u5220\u9664\u56E2\u961F\u300C${e.name}\u300D\uFF1F`,description:"\u5DF2\u7ECF\u5F00\u59CB\u7684\u8FD0\u884C\u4E0D\u53D7\u5F71\u54CD\uFF0C\u4F1A\u6309\u542F\u52A8\u65F6\u7684\u56E2\u961F\u5FEB\u7167\u7EE7\u7EED\u3002",actions:[{label:"\u53D6\u6D88",value:!1,autoFocus:!0},{label:"\u5220\u9664\u56E2\u961F",value:!0,kind:"danger"}]});if(!(L.dismissed===!0||!L.action)){f(!0);try{await xe.aiTeamsRepository.remove(e.id),s(e.id)}catch(j){return R((0,ct.failureMessage)(j,"\u5220\u9664\u56E2\u961F\u5931\u8D25\u3002")),E("error"),!1}finally{f(!1)}}}let W=L=>(0,o.jsx)($s,{member:d.members[L],index:L,open:u===L,catalog:n,providerOptions:a,disabled:g,canRemove:d.members.length>2,onToggle:()=>v(j=>j===L?-1:L),onChange:j=>me(L,j),onRemove:()=>V(L)},L);return(0,o.jsxs)("div",{className:"wand-team-editor",children:[(0,o.jsxs)("section",{className:"wand-team-section","aria-label":"\u6210\u5458",children:[(0,o.jsxs)("header",{className:"wand-team-section-head",children:[(0,o.jsx)("h3",{children:"\u6210\u5458"}),(0,o.jsxs)("small",{children:[d.members.length,"/",8," \xB7 \u70B9\u6210\u5458\u5361\u5C55\u5F00\u7F16\u8F91"]})]}),(0,o.jsxs)("div",{className:"wand-team-org",children:[O>=0?(0,o.jsx)("div",{className:"wand-team-org-leader",children:W(O)}):null,(0,o.jsxs)("div",{className:"wand-team-org-members",children:[d.members.map((L,j)=>L.isLeader?null:W(j)),(0,o.jsxs)("button",{type:"button",className:"wand-team-member-add",disabled:g||d.members.length>=8,onClick:()=>{i(L=>({...L,members:[...L.members,{id:"",name:"",duty:"",agents:[{...r}],agent:{...r},isLeader:!1,avatar:`cat:${L.members.length%ce.CAT_COATS.length}`}]})),v(d.members.length)},children:[(0,o.jsx)(F.WandIcon,{name:"plus",size:16}),(0,o.jsx)("span",{children:"\u6DFB\u52A0\u6210\u5458"})]})]})]})]}),(0,o.jsxs)("section",{className:"wand-team-section","aria-label":"\u534F\u4F5C\u8BBE\u7F6E",children:[(0,o.jsx)("header",{className:"wand-team-section-head",children:(0,o.jsx)("h3",{children:"\u534F\u4F5C\u8BBE\u7F6E"})}),(0,o.jsxs)("div",{className:"wand-ai-team-editor-grid",children:[(0,o.jsx)(ie.SettingsField,{label:"\u56E2\u961F\u540D",htmlFor:`${N}-name`,children:(0,o.jsx)(ie.SettingsTextInput,{id:`${N}-name`,value:d.name,placeholder:"\u4F8B\u5982\uFF1A\u5168\u6808\u5C0F\u7EC4",disabled:g,onChange:L=>i(j=>({...j,name:L}))})}),(0,o.jsx)(ie.SettingsField,{label:"\u6B65\u6570\u4E0A\u9650",htmlFor:`${N}-steps`,hint:`\u8D1F\u8D23\u4EBA\u8F6E\u6B21\u4E0E\u6210\u5458\u6B65\u9AA4\u5408\u8BA1\uFF0C${5}\u2013${200}`,children:(0,o.jsx)(ie.SettingsTextInput,{id:`${N}-steps`,type:"number",min:5,max:200,value:d.maxSteps,disabled:g,onChange:L=>i(j=>({...j,maxSteps:Number(L)}))})})]}),(0,o.jsx)(ie.SettingsField,{label:"\u7B80\u4ECB",htmlFor:`${N}-description`,children:(0,o.jsx)(ie.SettingsTextInput,{id:`${N}-description`,value:d.description,placeholder:"\u53EF\u9009\uFF1A\u8FD9\u4E2A\u56E2\u961F\u64C5\u957F\u4EC0\u4E48",disabled:g,onChange:L=>i(j=>({...j,description:L}))})}),(0,o.jsx)(ie.SettingsField,{label:"\u534F\u4F5C\u6307\u4EE4",htmlFor:`${N}-instructions`,hint:"\u5199\u8FDB\u8D1F\u8D23\u4EBA\u548C\u6BCF\u4F4D\u6210\u5458\u7684\u63D0\u793A\u8BCD\uFF1A\u5206\u5DE5\u7EA6\u5B9A\u3001\u5DE5\u4F5C\u8981\u6C42\u3001\u6CE8\u610F\u4E8B\u9879\u3002",children:(0,o.jsx)("textarea",{id:`${N}-instructions`,className:"wand-settings-input wand-ai-team-duty resize-none",rows:4,value:d.instructions,placeholder:"\u4F8B\u5982\uFF1A\u5148\u8BFB AGENTS.md\uFF1B\u6539\u52A8\u5FC5\u987B\u9644\u6D4B\u8BD5\uFF1B\u4E0D\u8981\u52A8 migrations \u76EE\u5F55\u3002",disabled:g,onChange:L=>{let j=L.currentTarget.value;i(Y=>({...Y,instructions:j}))}})}),(0,o.jsx)(ie.SettingsToggle,{label:"\u8BA1\u5212\u9700\u8981\u6211\u6279\u51C6",description:"\u8D1F\u8D23\u4EBA\u7ED9\u51FA\u7B2C\u4E00\u4EFD\u8BA1\u5212\u540E\u5148\u505C\u4E0B\uFF0C\u7B49\u4F60\u6279\u51C6\u6216\u9000\u56DE\u518D\u5F00\u59CB\u6267\u884C\u3002",checked:d.requirePlanApproval,disabled:g,onCheckedChange:L=>i(j=>({...j,requirePlanApproval:L}))})]}),(0,o.jsxs)("div",{className:"wand-ai-team-editor-footer",children:[e?(0,o.jsx)(ie.SettingsActionButton,{kind:"danger",size:"small",pending:b,pendingLabel:"\u5220\u9664\u4E2D\u2026",errorLabel:"\u5220\u9664\u5931\u8D25",disabled:w,onClick:H,children:"\u5220\u9664\u56E2\u961F"}):null,(0,o.jsx)(ie.SettingsSaveBar,{label:e?"\u4FDD\u5B58\u56E2\u961F":"\u521B\u5EFA\u56E2\u961F",pending:w,disabled:b,onSave:()=>{M()},status:I,tone:k})]})]})}function or(e){return e.filter(t=>t.kind!=="global")}function Os(e){return or(e)[0]?.id??""}function Bs({teamId:e,teamName:t,projects:n,projectsLoaded:a,openRequest:r=0,onStarted:m}){let s=or(n),[c,d]=z.useState(r>0),[i,u]=z.useState(!1),[v,w]=z.useState(""),[S,b]=z.useState(""),[f,I]=z.useState("idle"),[R,k]=z.useState(""),E=z.useRef(null),g=z.useRef(null),N="wand-team-start-project-menu-"+z.useId(),O=S||Os(n),P=f==="sending"||f==="sent";z.useEffect(()=>{r>0?(d(!0),u(!1)):(d(!1),u(!1))},[r]);function ee(){f!=="sending"&&(d(!1),u(!1),f==="failed"&&k(""))}z.useLayoutEffect(()=>{if(!c||i)return;let V=0,M=requestAnimationFrame(()=>{V=requestAnimationFrame(()=>{u(!0),g.current?.focus()})});return()=>{cancelAnimationFrame(M),cancelAnimationFrame(V)}},[c,i]),z.useEffect(()=>{if(!c)return;let V=M=>{E.current?.contains(M.target)||M.target instanceof Element&&M.target.closest(".wand-ui-select-content")?.classList.contains(N)||ee()};return window.addEventListener("pointerdown",V,!0),()=>window.removeEventListener("pointerdown",V,!0)},[c,f,N]);async function me(){if(P)return;let V=v.trim();if(!(!V||!O)){I("sending"),k("");try{let M=await xe.aiTeamsRepository.startDirect(e,{note:V,workspaceId:O});I("sent"),k(`${t}\u5DF2\u5F00\u5DE5\uFF0C\u6B63\u5728\u6253\u5F00\u7FA4\u804A\u2026`),await xe.aiTeamsRepository.settle("success"),m(M),d(!1),u(!1),I("idle"),k(""),w("")}catch(M){I("failed"),k((0,ct.failureMessage)(M,"\u5F00\u5DE5\u5931\u8D25\uFF0C\u8BF7\u6362\u4E2A\u9879\u76EE\u6216\u7A0D\u540E\u518D\u8BD5\u3002")),await xe.aiTeamsRepository.settle("error"),I("idle")}}}return(0,o.jsxs)("div",{ref:E,onKeyDown:V=>{V.key==="Escape"&&(V.stopPropagation(),ee())},children:[(0,o.jsx)("div",{className:"wand-team-member-actions",children:(0,o.jsxs)(F.WandButton,{className:"task-board-create-button",kind:"ghost",size:"small","aria-pressed":c,disabled:P,onClick:()=>c?ee():d(!0),children:[(0,o.jsx)(F.WandIcon,{name:"plus",slot:"start",className:"wand-teams-create-icon"}),(0,o.jsx)("span",{children:"\u76F4\u63A5\u5F00\u5DE5"})]})}),(0,o.jsx)("div",{className:"wand-team-candidate-slot","data-collapsed":!i||void 0,children:(0,o.jsx)("div",{className:"wand-team-member-inner",inert:!c,children:(0,o.jsxs)("div",{className:"wand-team-candidates",children:[s.length===0?a?(0,o.jsx)("p",{className:"wand-new-session-error",role:"alert",children:"\u8FD8\u6CA1\u6709\u53EF\u5F00\u5DE5\u7684\u9879\u76EE\uFF0C\u5148\u5728\u5DE5\u4F5C\u533A\u521B\u5EFA\u4E00\u4E2A\u9879\u76EE\u3002"}):(0,o.jsx)("p",{className:"wand-team-empty-line",children:"\u6B63\u5728\u52A0\u8F7D\u9879\u76EE\u2026"}):(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(ie.SettingsField,{label:"\u9879\u76EE",children:(0,o.jsx)(F.WandSelect,{ariaLabel:"\u5F00\u5DE5\u9879\u76EE",className:"wand-settings-input",contentClassName:N,value:O,disabled:P,searchable:!0,searchPlaceholder:"\u641C\u7D22\u9879\u76EE",options:s.map(V=>({value:V.id,label:`${V.name} \xB7 ${V.cwd}`})),onValueChange:b})}),(0,o.jsx)(ie.SettingsField,{label:"\u5F00\u5DE5\u8BF4\u660E",htmlFor:`team-start-note-${e}`,hint:"\u4F1A\u5EFA\u4E00\u5F20\u4EFB\u52A1\u5361\uFF0C\u5E76\u628A\u8FD9\u6BB5\u8BF4\u660E\u4EA4\u7ED9\u8D1F\u8D23\u4EBA\u3002",children:(0,o.jsx)("textarea",{id:`team-start-note-${e}`,ref:g,className:"wand-settings-input wand-ai-team-duty resize-none",rows:2,value:v,placeholder:"\u4F8B\u5982\uFF1A\u628A\u8BBE\u7F6E\u9875\u7684\u6A21\u578B\u4E0B\u62C9\u6362\u6210\u53EF\u641C\u7D22\u7684\u9009\u62E9\u5668\uFF0C\u5E76\u8865\u5355\u6D4B\u3002",disabled:P,onChange:V=>w(V.currentTarget.value)})})]}),R?(0,o.jsx)("p",{className:f==="failed"?"wand-new-session-error":"wand-new-session-field-hint",role:f==="failed"?"alert":"status",children:R}):null,c&&s.length>0?(0,o.jsx)("div",{className:"wand-team-member-actions",children:(0,o.jsx)(F.WandButton,{kind:"primary",size:"small",disabled:P||!v.trim()||!O,onClick:()=>{me()},children:f==="sending"?"\u6B63\u5728\u5F00\u5DE5\u2026":f==="sent"?"\u5DF2\u5F00\u5DE5":"\u5F00\u5DE5"})}):null]})})})]})}function Fs({runs:e,focusRunId:t,onOpenSession:n}){let[a,r]=z.useState(""),[m,s]=z.useState(null),c=z.useCallback(async d=>{try{s(await xe.aiTeamsRepository.detail(d))}catch{s(null)}},[]);return z.useEffect(()=>{t&&r(t)},[t]),z.useEffect(()=>{a&&c(a)},[c,a]),z.useEffect(()=>(0,xe.subscribeAiTeamRunChanges)(d=>{d.runId===a&&c(a)}),[c,a]),e===null?(0,o.jsx)("p",{className:"wand-team-empty-line",children:"\u6B63\u5728\u52A0\u8F7D\u8FD0\u884C\u8BB0\u5F55\u2026"}):e.length===0?(0,o.jsx)("p",{className:"wand-team-empty-line",children:"\u8FD8\u6CA1\u6709\u8FD0\u884C\u8FC7\u3002\u7528\u56E2\u961F\u5361\u4E0B\u9762\u7684\u300C\u76F4\u63A5\u5F00\u5DE5\u300D\uFF0C\u6216\u5728\u4EFB\u52A1\u770B\u677F\u6D3E\u53D1\u4EFB\u52A1\u65F6\u4ECE\u300CCLI \u5DE5\u5177\u300D\u91CC\u9009\u8FD9\u4E2A\u56E2\u961F\u3002"}):(0,o.jsx)("ol",{className:"wand-team-runs",children:e.map(d=>{let i=a===d.id,u=Tt[d.status];return(0,o.jsxs)("li",{className:"wand-team-run","data-open":i||void 0,children:[(0,o.jsxs)("button",{type:"button",className:"wand-team-run-head","aria-expanded":i,onClick:()=>{s(null),r(v=>v===d.id?"":d.id)},children:[(0,o.jsx)("span",{className:"wand-team-run-id",children:d.taskIdentifier}),(0,o.jsx)("strong",{children:d.taskTitle||d.objective.split(`
19
- `)[0]}),(0,o.jsx)(F.WandBadge,{tone:u.tone,children:u.label}),(0,o.jsx)("small",{children:new Date(d.updatedAt).toLocaleString([],{month:"numeric",day:"numeric",hour:"2-digit",minute:"2-digit"})}),(0,o.jsx)(F.WandIcon,{name:"chevronDown",size:14})]}),(0,o.jsx)("div",{className:"wand-team-run-body",inert:!i,children:(0,o.jsx)("div",{className:"wand-team-run-inner",children:i&&m?.run.id===d.id?(0,o.jsx)(ua,{detail:m,onChange:s,onOpenSession:n}):i?(0,o.jsx)("p",{className:"wand-team-empty-line",children:"\u6B63\u5728\u52A0\u8F7D\u2026"}):null})})]},d.id)})})}var nr=[{value:"members",label:"\u6210\u5458\u4E0E\u8BBE\u7F6E"},{value:"runs",label:"\u8FD0\u884C\u8BB0\u5F55"}],Hs=[{value:"all",label:"\u5168\u90E8"},{value:"running",label:"\u8FD0\u884C\u4E2D"},{value:"attention",label:"\u5F85\u4F60\u5904\u7406"}],js=[{value:"employees",label:"\u5458\u5DE5"},{value:"teams",label:"\u56E2\u961F"}];function dr({sidebarOpen:e=!1,onBack:t,onOpenSidebar:n,onOpenSession:a}){let r=z.useSyncExternalStore(tt.taskBoardStore.subscribe,tt.taskBoardStore.getSnapshot,tt.taskBoardStore.getSnapshot),m=(0,Yt.useProviderUsage)(!0),s=m===null?null:(0,Yt.sortProviderOptions)(Ne.ISSUE_AGENT_PROVIDERS,m,T=>T.value).map(T=>({value:T.value,label:T.label})),[c,d]=z.useState(null),[i,u]=z.useState("employees"),[v,w]=z.useState([]),[S,b]=z.useState(""),[f,I]=z.useState(null),[R,k]=z.useState(()=>(0,Ne.createDefaultIssueAgent)()),[E,g]=z.useState(""),[N,O]=z.useState(null),[P,ee]=z.useState(""),[me,V]=z.useState("all"),[M,H]=z.useState("members"),[W,L]=z.useState([]),[j,Y]=z.useState(!1),[ke,We]=z.useState("");z.useEffect(()=>{r.page!=="teams"||!r.teamId||(u("teams"),g(window.matchMedia("(max-width: 760px)").matches?"":r.teamId))},[r.page,r.teamId,r.revision]);let Ve=z.useCallback(async()=>{try{let T=await xe.aiTeamsRepository.list();d(T),b(""),g(U=>U||(window.matchMedia("(max-width: 760px)").matches?"":T[0]?.id??""))}catch(T){b((0,ct.failureMessage)(T,"\u56E2\u961F\u5217\u8868\u52A0\u8F7D\u5931\u8D25\u3002"))}},[]),K=z.useCallback(async()=>{try{w(await xe.aiTeamsRepository.runs({limit:200}))}catch{}},[]);z.useEffect(()=>(Ve(),K(),Kt.taskBoardRepository.models().then(T=>I((0,Ne.normalizeIssueModelCatalog)(T))).catch(()=>I(null)),Kt.taskBoardRepository.agentDefaults().then(k).catch(()=>{}),Kt.taskBoardRepository.workspaces().then(T=>{L(T),Y(!0)}).catch(()=>Y(!0)),(0,rr.subscribeWandModelCatalog)(I)),[K,Ve]),z.useEffect(()=>(0,xe.subscribeAiTeamRunChanges)(()=>{K()}),[K]),z.useEffect(()=>{let T=U=>{if(!(U.key!=="Escape"||U.defaultPrevented||U.target?.closest("input, textarea, [contenteditable='true'], [role='dialog']"))){if(E){Ce();return}t?t():tt.taskBoardController.close()}};return window.addEventListener("keydown",T),()=>window.removeEventListener("keydown",T)},[t,E]);let pe=T=>v.filter(U=>U.teamId===T),mt=T=>{let U=pe(T);return U.some(de=>_s.includes(de.status))?"attention":U.some(de=>de.status==="running")?"running":"idle"},pt=P.trim().toLowerCase(),$e=(c??[]).filter(T=>me!=="all"&&mt(T.id)!==me?!1:pt?[T.name,T.description,...T.members.map(U=>U.name)].some(U=>U.toLowerCase().includes(pt)):!0),ne=c?.find(T=>T.id===E)??null,J=E===er,Ee=J||!!ne,ut=async()=>{await Ye()&&(Q.current=!1,O(null),g(er))},Q=z.useRef(!1),gt=z.useCallback(T=>{Q.current=T},[]),Ye=async()=>{if(!Q.current)return!0;let T=await Ra.wandOverlay.dialog({title:"\u653E\u5F03\u672A\u4FDD\u5B58\u7684\u56E2\u961F\u6539\u52A8\uFF1F",description:"\u540D\u79F0\u3001\u6210\u5458\u548C\u5404\u81EA\u7684 CLI / \u6A21\u578B / \u6267\u884C\u6A21\u5F0F\u6539\u52A8\u8FD8\u6CA1\u4FDD\u5B58\uFF0C\u79BB\u5F00\u540E\u56DE\u5230\u4E0A\u6B21\u4FDD\u5B58\u7684\u5185\u5BB9\u3002",actions:[{label:"\u7EE7\u7EED\u7F16\u8F91",value:!1,autoFocus:!0},{label:"\u653E\u5F03\u6539\u52A8",value:!0,kind:"danger"}]});return T.dismissed===!1&&T.action===!0},Ce=async()=>{await Ye()&&(Q.current=!1,g(""))},ft=async T=>{T!==E&&await Ye()&&(Q.current=!1,g(T))},At=async()=>{await Ye()&&(Q.current=!1,O(null))},St=(T,U)=>{K();let de=U.run.chatSessionId;if(de&&a){a(de);return}We(U.run.id),g(T),H("runs")};return(0,o.jsxs)("section",{className:"task-board-native-page wand-teams-page","aria-label":"\u7845\u57FA\u5458\u5DE5\u4E0E AI \u56E2\u961F","data-detail":Ee||void 0,children:[(0,o.jsxs)("header",{className:"task-board-workspace-header",children:[(0,o.jsxs)("div",{className:"task-board-kicker",children:[n?(0,o.jsx)(F.WandIconButton,{className:"task-board-icon-button","aria-label":e?"\u5173\u95ED\u4EFB\u52A1\u5217\u8868":"\u6253\u5F00\u4EFB\u52A1",onClick:n,children:(0,o.jsx)(sr.SidebarToggleIcon,{open:e,size:16})}):null,ne?null:(0,o.jsx)(F.WandIconButton,{className:"task-board-icon-button","aria-label":"\u8FD4\u56DE\u5DE5\u4F5C\u533A",title:"\u8FD4\u56DE\u5DE5\u4F5C\u533A",onClick:()=>t?t():tt.taskBoardController.close(),children:(0,o.jsx)(F.WandIcon,{name:"chevronLeft"})}),(0,o.jsx)("div",{className:"task-board-heading-copy",children:i==="teams"&&ne?(0,o.jsx)(F.WandBreadcrumb,{variant:"title",ariaLabel:"AI \u56E2\u961F\u5BFC\u822A",items:[{label:"AI \u56E2\u961F",onNavigate:()=>{Ce()}},{label:ne.name}]}):(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("h1",{children:i==="employees"?"\u7845\u57FA\u5458\u5DE5":"AI \u56E2\u961F"}),(0,o.jsx)("p",{children:i==="employees"?"\u5B9A\u4E49\u4E13\u5C5E\u89D2\u8272\u4E0E\u5DE5\u5177\u94FE\u964D\u7EA7\u987A\u5E8F\uFF0C\u4EE5\u5BF9\u8BDD\u65B9\u5F0F\u534F\u4F5C\u5B8C\u6210\u5DE5\u4F5C\u3002":"\u8D1F\u8D23\u4EBA\u62C6\u89E3\u5206\u6D3E\uFF0C\u6210\u5458\u5404\u7528\u81EA\u5DF1\u7684 CLI \u534F\u4F5C\u5B8C\u6210\u3002"})]})})]}),(0,o.jsxs)("div",{className:"task-board-header-actions",style:{display:"flex",alignItems:"center",gap:"12px"},children:[(0,o.jsx)(F.WandStretchTabs,{tabs:js,value:i,ariaLabel:"\u5207\u6362\u5458\u5DE5\u6216\u56E2\u961F",onValueChange:T=>u(T)}),i==="teams"?(0,o.jsxs)(F.WandButton,{className:"task-board-create-button",kind:"primary",size:"small","aria-pressed":J,onClick:()=>J?void Ce():void ut(),children:[(0,o.jsx)(F.WandIcon,{name:"plus",slot:"start",className:"wand-teams-create-icon"}),(0,o.jsx)("span",{children:"\u65B0\u5EFA\u56E2\u961F"})]}):null]})]}),i==="employees"?(0,o.jsx)("div",{className:"wand-teams-layout wand-employees-layout",children:(0,o.jsx)(Jn,{catalog:f,providerOptions:s})}):(0,o.jsxs)("div",{className:"wand-teams-layout",children:[(0,o.jsxs)("aside",{className:"wand-teams-list","aria-label":"\u56E2\u961F\u5217\u8868",children:[(0,o.jsx)(F.WandSearchField,{value:P,onValueChange:ee,label:"\u641C\u7D22\u56E2\u961F\u6216\u6210\u5458"}),(0,o.jsx)(F.WandStretchTabs,{tabs:Hs,value:me,ariaLabel:"\u6309\u72B6\u6001\u7B5B\u9009",onValueChange:T=>V(T)}),S?(0,o.jsxs)("div",{className:"task-board-native-banner is-error",role:"alert",children:[(0,o.jsx)("span",{children:S}),(0,o.jsx)(F.WandButton,{kind:"ghost",size:"small",onClick:()=>{Ve()},children:"\u91CD\u65B0\u52A0\u8F7D"})]}):null,(0,o.jsxs)("div",{className:"wand-teams-cards",children:[$e.map(T=>{let U=mt(T.id),de=[...new Set(T.members.map(fe=>fe.agent.provider))];return(0,o.jsxs)("div",{children:[(0,o.jsxs)("button",{type:"button",className:"wand-teams-card","aria-pressed":E===T.id,"data-state":U,onClick:()=>{ft(T.id)},children:[(0,o.jsx)(ce.TeamAvatarStack,{members:T.members,max:4}),(0,o.jsxs)("span",{className:"wand-teams-card-copy",children:[(0,o.jsx)("strong",{children:T.name}),(0,o.jsx)("small",{children:T.description||Ds(T.members).map(fe=>fe.name).join(" \xB7 ")})]}),(0,o.jsx)("span",{className:"wand-teams-card-meta",children:U==="attention"?(0,o.jsx)(F.WandBadge,{tone:"warning",children:"\u5F85\u4F60\u5904\u7406"}):U==="running"?(0,o.jsx)(F.WandBadge,{tone:"info",children:"\u8FD0\u884C\u4E2D"}):(0,o.jsxs)("small",{children:[T.members.length," \u4EBA \xB7 ",de.map(Ne.issueAgentProviderLabel).join(" / ")]})})]}),(0,o.jsx)(Bs,{teamId:T.id,teamName:T.name,projects:W,projectsLoaded:j,openRequest:r.teamId===T.id?r.revision:0,onStarted:fe=>St(T.id,fe)})]},T.id)}),c!==null&&$e.length===0?(0,o.jsxs)("div",{className:"wand-teams-empty",children:[(0,o.jsx)("p",{children:c.length===0?"\u8FD8\u6CA1\u6709\u56E2\u961F\u3002":"\u6CA1\u6709\u5339\u914D\u7684\u56E2\u961F\u3002"}),c.length===0?(0,o.jsx)(F.WandButton,{kind:"soft",size:"small",onClick:()=>{ut()},children:"\u4ECE\u6A21\u677F\u521B\u5EFA"}):null]}):null]})]}),(0,o.jsx)("div",{className:"wand-teams-detail",children:J&&!N?(0,o.jsxs)("div",{className:"wand-teams-templates",children:[(0,o.jsxs)("header",{className:"wand-team-section-head",children:[(0,o.jsx)("h3",{children:"\u4ECE\u6A21\u677F\u5F00\u59CB"}),(0,o.jsx)("small",{children:"\u521B\u5EFA\u524D\u8FD8\u80FD\u4FEE\u6539"})]}),(0,o.jsx)("div",{className:"wand-teams-template-grid",children:Ls.map(T=>{let U=tr(T,R);return(0,o.jsxs)("button",{type:"button",className:"wand-teams-template",onClick:()=>O(T),children:[(0,o.jsx)(ce.TeamAvatarStack,{members:U.members,size:"md"}),(0,o.jsx)("strong",{children:T.name}),(0,o.jsx)("small",{children:T.summary})]},T.id)})})]}):J&&N?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)("div",{className:"wand-teams-detail-head",children:[(0,o.jsx)(F.WandIconButton,{className:"task-board-icon-button","aria-label":"\u6362\u4E00\u4E2A\u6A21\u677F",onClick:()=>{At()},children:(0,o.jsx)(F.WandIcon,{name:"chevronLeft"})}),(0,o.jsxs)("div",{children:[(0,o.jsx)("h2",{children:"\u65B0\u5EFA\u56E2\u961F"}),(0,o.jsxs)("p",{children:["\u6A21\u677F\uFF1A",N.name]})]})]}),(0,o.jsx)(ar,{team:null,initial:tr(N,R),catalog:f,providerOptions:s,defaultAgent:R,onDirtyChange:gt,onSaved:T=>{d(U=>[T,...U??[]]),g(T.id),H("members")},onDeleted:()=>{}})]}):ne?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)("div",{className:"wand-teams-detail-head",children:[(0,o.jsx)(ce.TeamAvatarStack,{members:ne.members,size:"md",max:6}),(0,o.jsx)("div",{children:(0,o.jsx)("p",{children:ne.description||`${ne.members.length} \u4F4D\u6210\u5458`})})]}),(0,o.jsx)(F.WandStretchTabs,{tabs:nr,value:M,ariaLabel:"\u56E2\u961F\u8BE6\u60C5",onValueChange:H}),(0,o.jsx)("div",{className:"wand-teams-detail-stack",children:nr.map(T=>(0,o.jsx)("div",{className:"wand-teams-detail-pane","data-hidden":M!==T.value||void 0,inert:M!==T.value,children:T.value==="runs"?(0,o.jsx)(Fs,{runs:c===null?null:pe(ne.id),focusRunId:ke,onOpenSession:a}):(0,o.jsx)(ar,{team:ne,initial:ir(ne),catalog:f,providerOptions:s,defaultAgent:R,onDirtyChange:gt,onSaved:U=>d(de=>(de??[]).map(fe=>fe.id===U.id?U:fe)),onDeleted:U=>{Q.current=!1,g(""),d(de=>(de??[]).filter(fe=>fe.id!==U))}},ne.id)},T.value))})]}):(0,o.jsxs)("div",{className:"wand-teams-empty is-detail",children:[(0,o.jsx)(F.WandIcon,{name:"parallel",size:28}),(0,o.jsx)("p",{children:"\u9009\u4E00\u4E2A\u56E2\u961F\uFF0C\u6216\u65B0\u5EFA\u4E00\u4E2A\u3002"})]})},J?`new-${N?.id??""}`:E)]})]})}var oe=y(Ae()),pr=y(bt());var Xt=y(Mt()),ur=y(fa()),gr=y(cr()),ge=y(Se()),Gt=y(st()),at=y(wt());var _=y(se()),mr={queued:"\u6392\u961F",running:"\u8FDB\u884C\u4E2D",done:"\u5B8C\u6210",failed:"\u5931\u8D25",skipped:"\u8DF3\u8FC7"};async function Us(e){let t=e.run.chatSessionId;if(!t)return null;try{let a=(await at.aiTeamsRepository.runsForChat(e.run.taskId,t))[0];return a&&a.id!==e.run.id?a.id:null}catch{return null}}function qs(e){return e==="running"?"working":e==="done"?"done":e==="failed"?"failed":"idle"}function Ks({detail:e,onOpenSession:t}){let[n,a]=oe.useState(()=>new Set),r=e.steps.filter(c=>c.kind==="work"),m=r.filter(c=>c.status==="done").length,s=c=>{a(d=>{let i=new Set(d);return i.has(c)?i.delete(c):i.add(c),i})};return(0,_.jsx)("section",{className:"wand-team-work-tasks","aria-label":"\u5DE5\u4F5C\u4EFB\u52A1",children:(0,_.jsxs)("div",{className:"wand-team-work-tasks-inner",children:[(0,_.jsxs)("header",{className:"wand-team-work-tasks-head",children:[(0,_.jsx)("h2",{children:"\u5DE5\u4F5C\u4EFB\u52A1"}),(0,_.jsx)("small",{children:r.length?`${m}/${r.length} \u5B8C\u6210`:"\u7B49\u5F85\u6D3E\u5DE5"})]}),r.length?(0,_.jsx)("ol",{className:"wand-team-work-list",children:r.map(c=>{let d=Le(e).members.find(u=>u.id===c.memberId),i=n.has(c.id);return(0,_.jsxs)("li",{className:"wand-team-work-item","data-status":c.status,"data-open":i||void 0,children:[(0,_.jsxs)("button",{type:"button",className:"wand-team-work-head","aria-expanded":i,onClick:()=>s(c.id),children:[(0,_.jsxs)("span",{className:"wand-team-work-seq",children:["#",c.seq]}),(0,_.jsx)("span",{className:"wand-team-work-title",children:c.title||"\u6210\u5458\u6B65\u9AA4"}),(0,_.jsx)("span",{className:"wand-team-work-status",children:mr[c.status]}),(0,_.jsx)(ge.WandIcon,{name:"chevronDown",size:14})]}),(0,_.jsx)("div",{className:"wand-team-work-body","data-open":i||void 0,inert:!i,children:(0,_.jsxs)("div",{className:"wand-team-work-body-inner",children:[(0,_.jsxs)("div",{className:"wand-team-work-member",children:[d?(0,_.jsx)(Gt.TeamAvatar,{member:d,size:"sm",state:qs(c.status)}):null,(0,_.jsx)("span",{className:"wand-team-work-member-name",children:d?.name??c.memberId}),d?.duty?(0,_.jsx)("small",{className:"wand-team-work-member-duty",children:d.duty}):null]}),(0,_.jsxs)("dl",{className:"wand-team-work-meta",children:[(0,_.jsxs)("div",{children:[(0,_.jsx)("dt",{children:"\u72B6\u6001"}),(0,_.jsx)("dd",{children:mr[c.status]})]}),c.reportPath?(0,_.jsxs)("div",{children:[(0,_.jsx)("dt",{children:"\u62A5\u544A\u6587\u4EF6"}),(0,_.jsx)("dd",{children:(0,_.jsx)("code",{children:c.reportPath})})]}):null]}),c.report?(0,_.jsx)("p",{className:"wand-team-work-report",children:c.report}):null,c.sessionId&&t?(0,_.jsxs)(ge.WandButton,{kind:"ghost",size:"small",onClick:()=>t(c.sessionId),children:[(0,_.jsx)(ge.WandIcon,{name:"terminal",size:14,slot:"start"}),"\u6253\u5F00\u4F1A\u8BDD"]}):null]})})]},c.id)})}):(0,_.jsx)("p",{className:"wand-team-empty-line",children:"\u8D1F\u8D23\u4EBA\u8FD8\u6CA1\u6709\u6D3E\u53D1\u5DE5\u4F5C\u4EFB\u52A1\u3002"})]})})}function fr({runId:e,sidebarOpen:t=!1,onBack:n,onOpenSidebar:a,onOpenSession:r}){let[m,s]=oe.useState(null),[c,d]=oe.useState(""),i=oe.useRef(e);i.current=e;let u=oe.useRef(0),v=oe.useRef(""),w=m&&(m.run.id===e||v.current===e)?m:null,S=!!w&&w.run.id!==e,b=w?.run.taskId??"";oe.useEffect(()=>()=>{u.current++},[]);let f=oe.useCallback(async()=>{let E=++u.current;if(!e){d("\u6CA1\u6709\u8981\u6253\u5F00\u7684\u7FA4\u804A\u3002");return}d("");try{let g=await at.aiTeamsRepository.detail(e);if(E!==u.current||i.current!==e)return;let N=await Us(g);if(E!==u.current||i.current!==e)return;if(N){v.current=N,Xt.taskBoardController.open("","","teamchat",N);return}s(O=>xt(O,g)),v.current="",d("")}catch(g){if(E!==u.current||i.current!==e)return;let N=(0,pr.failureMessage)(g,"\u7FA4\u804A\u52A0\u8F7D\u5931\u8D25\u3002");d(v.current===e?`\u65B0\u4E00\u8F6E\u52A0\u8F7D\u5931\u8D25\uFF0C\u5F53\u524D\u663E\u793A\u4E0A\u4E00\u8F6E\u8BB0\u5F55\u3002${N}`:N)}},[e]);oe.useEffect(()=>{v.current!==e&&(v.current="",s(null)),d(""),f()},[f]),oe.useEffect(()=>(0,at.subscribeAiTeamRunChanges)(E=>{(E.runId===e||b&&E.taskId===b)&&f()}),[f,e,b]),oe.useEffect(()=>(0,at.subscribeAiTeamDefinitionChanges)(E=>{E===w?.run.teamId&&f()}),[f,w?.run.teamId]),oe.useEffect(()=>(0,gr.subscribeTaskChanges)(()=>{f()}),[f]);let I=oe.useCallback(E=>{E.run.id===i.current&&s(g=>xt(g,E))},[]),R=oe.useCallback(()=>{n?n():Xt.taskBoardController.close()},[n]);oe.useEffect(()=>{let E=g=>{g.key!=="Escape"||g.defaultPrevented||g.target?.closest("input, textarea, [contenteditable='true'], [role='dialog']")||R()};return window.addEventListener("keydown",E),()=>window.removeEventListener("keydown",E)},[R]);let k=w&&!S?Tt[w.run.status]:null;return(0,_.jsxs)("section",{className:"task-board-native-page wand-team-chat-page","aria-label":"\u7FA4\u804A",children:[(0,_.jsxs)("header",{className:"task-board-workspace-header",children:[(0,_.jsxs)("div",{className:"task-board-kicker",children:[a?(0,_.jsx)(ge.WandIconButton,{className:"task-board-icon-button","aria-label":t?"\u5173\u95ED\u4EFB\u52A1\u5217\u8868":"\u6253\u5F00\u4EFB\u52A1",onClick:a,children:(0,_.jsx)(ur.SidebarToggleIcon,{open:t,size:16})}):null,(0,_.jsx)(ge.WandIconButton,{className:"task-board-icon-button","aria-label":"\u8FD4\u56DE\u4E0A\u4E00\u4F1A\u8BDD",title:"\u8FD4\u56DE\u4E0A\u4E00\u4F1A\u8BDD",onClick:R,children:(0,_.jsx)(ge.WandIcon,{name:"chevronLeft"})}),w?(0,_.jsx)("span",{className:"wand-team-chat-heading-avatar","aria-hidden":"true",children:(0,_.jsx)(Gt.TeamAvatarStack,{members:Le(w).members,max:2,size:"sm"})}):null,(0,_.jsxs)("div",{className:"task-board-heading-copy",children:[(0,_.jsx)(ge.WandBreadcrumb,{variant:"title",className:"wand-team-chat-crumb",ariaLabel:"\u7FA4\u804A\u5BFC\u822A",items:[{label:"\u4EFB\u52A1\u770B\u677F",onNavigate:()=>Xt.taskBoardController.open("","","board")},{label:w?.chatTitle||"\u4EFB\u52A1\u5904\u7406\u7FA4"}]}),(0,_.jsx)("p",{children:S?c?"\u4E0A\u4E00\u8F6E\u8BB0\u5F55 \xB7 \u65B0\u4E00\u8F6E\u52A0\u8F7D\u5931\u8D25":"\u4E0A\u4E00\u8F6E\u8BB0\u5F55 \xB7 \u6B63\u5728\u63A5\u5165\u65B0\u4E00\u8F6E\u2026":w?`${Le(w).members.length} \u4F4D\u6210\u5458 \xB7 \u56E2\u961F\u7FA4\u804A`:c||"\u6B63\u5728\u52A0\u8F7D\u7FA4\u804A\u2026"})]})]}),w&&k?(0,_.jsx)("div",{className:"task-board-header-actions wand-team-chat-head-meta",children:(0,_.jsx)(ge.WandBadge,{tone:k.tone,children:k.label})}):null]}),c?(0,_.jsxs)("div",{className:"task-board-native-banner is-error",role:"alert",children:[(0,_.jsx)("span",{children:c}),e?(0,_.jsx)(ge.WandButton,{kind:"ghost",size:"small",onClick:()=>{f()},children:"\u91CD\u65B0\u52A0\u8F7D"}):null]}):null,(0,_.jsx)("div",{className:"wand-team-chat-body",children:w?(0,_.jsx)(ot,{detail:w,staleRun:S,onChange:I,onOpenSession:r,details:(0,_.jsxs)(_.Fragment,{children:[(0,_.jsx)(Ks,{detail:w,onOpenSession:r}),w.run.chatSessionId&&r?(0,_.jsx)(ge.WandButton,{kind:"ghost",size:"small",onClick:()=>r(w.run.chatSessionId),children:"\u67E5\u770B\u5B8C\u6574\u4F1A\u8BDD\u8BB0\u5F55"}):null]})}):c?null:(0,_.jsx)("p",{className:"wand-team-empty-line",children:"\u6B63\u5728\u52A0\u8F7D\u2026"})})]})}var hr=__wandCssTextPool[0];var wr=y(br(),1);(0,wr.installStyleSheet)("wand-ai-teams-styles",hr);globalThis.__wandAiTeamsChunk={AiTeamsPage:dr,TaskTeamRunPanel:In,TeamChatView:ot,TeamChatPage:fr};})();
9
+ `+(t.trim()||"\u8BF7\u67E5\u770B\u9644\u4EF6\u3002"):t}function Sn(e){let t=/^\s*\[附件已上传,请查看以下文件:\n([\s\S]*?)\]\n*/.exec(e);if(!t)return{paths:[],body:e};let n=t[1].split(`
10
+ `).map(a=>a.trim()).filter(Boolean);return n.length?{paths:n,body:e.slice(t[0].length)}:{paths:[],body:e}}function es(e){return/\.(?:png|jpe?g|gif|webp|bmp|avif)$/i.test(e)}function hn(e){e.style.height="auto",e.style.height=`${e.scrollHeight}px`,e.style.overflowY=e.scrollHeight>e.clientHeight+1?"auto":"hidden"}var ts=5*6e4;function as(e,t,n){if(!e||typeof e!="object")return null;let a=e.messages;if(!Array.isArray(a))return null;let r=a.filter(s=>!!s&&typeof s=="object"&&Array.isArray(s.content)),m=r.map(tt),i=new Set(n),c=-1;for(let s=0;s<m.length;s++){let u=m[s];u!=null&&i.has(u)&&(c=s)}if(i.size>0&&c<0)return null;let o=r.slice(c+1).map(s=>s.role==="user"&&Pe(s)===t?tt(s):null).filter(s=>s!==null&&!i.has(s));return o.length===1?o[0]:null}function ns(e,t,n,a=[],r){if(e.role!=="user"||Pe(e)!==n)return!1;let m=tt(e);if(!m||a.includes(m))return!1;if(r)return m===r;let i=Date.parse(e.createdAt??"");return Number.isFinite(i)&&Math.abs(i-t)<=ts}function ga(e,t){if(!t)return e.map(r=>r.unconfirmed?r:{...r,unconfirmed:!0});let n=new Set,a=e.filter(r=>{if(r.accepted===!1||r.unconfirmed&&r.accepted!==!0)return!0;let m=t.flatMap((i,c)=>!n.has(c)&&ns(i,r.sentAt,r.text,r.knownFingerprints,r.ackFingerprint)?[c]:[]);return m.length!==1?!0:(n.add(m[0]),!1)});return a.length===e.length?e:a}function rs(e){return JSON.stringify(e.chatSessionId?["chat",e.chatSessionId]:["run",e.id])}function vn(e){return e instanceof et.HttpResponseError&&e.status>=400&&e.status<500&&e.status!==408&&e.status!==409}function $e(e){return e.displayTeam??e.run.team}function ss(e,t){let n=e.author;if(!n?.id)return e;let a=t.members.find(r=>r.id===n.id);return!a||a.name===n.name&&a.avatar===n.avatar?e:{...e,author:{...n,name:a.name,avatar:a.avatar}}}function is(e){return $e(e).members.map(t=>{let n=e.steps.filter(c=>c.memberId===t.id),a=n.find(c=>c.status==="running")??[...n].sort((c,o)=>o.seq-c.seq)[0],r=a?.sessionId?e.memberStates[a.sessionId]:void 0,m=a?.status==="running"?r==="needs_input"||r==="needs_permission"?"attention":"working":a?.status==="queued"?"queued":a?.status==="done"?"done":a?.status==="failed"?"failed":"idle",i=m==="attention"?r==="needs_permission"?"\u5F85\u6388\u6743":"\u5F85\u56DE\u7B54":{working:"\u5DE5\u4F5C\u4E2D",queued:"\u6392\u961F\u4E2D",done:"\u5DF2\u5B8C\u6210",failed:"\u5931\u8D25",idle:"\u5F85\u6D3E\u5DE5"}[m];return{member:t,state:m,label:i,task:a?.title||t.duty||"\u7B49\u5F85\u8D1F\u8D23\u4EBA\u6D3E\u5DE5",sessionId:a?.sessionId??null}})}function os({detail:e,onOpenSession:t}){let n=is(e),a=n.filter(m=>m.state==="working").length,r=n.filter(m=>m.state==="attention").length;return(0,d.jsxs)("section",{className:"team-chat-office","aria-label":"\u56E2\u961F\u5DE5\u4F4D",children:[(0,d.jsxs)("header",{className:"team-chat-office-head",children:[(0,d.jsx)("strong",{children:"\u56E2\u961F\u5DE5\u4F4D"}),(0,d.jsxs)("small",{children:[r?`${r} \u4EBA\u5F85\u5904\u7406 \xB7 `:"",a," \u4EBA\u5DE5\u4F5C\u4E2D \xB7 ",n.length," \u4EBA\u5728\u7EC4"]})]}),(0,d.jsx)("div",{className:"team-chat-office-members",children:n.map(({member:m,state:i,label:c,task:o,sessionId:s})=>{let u=(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(ct.TeamAvatar,{member:m,size:"sm",state:i==="working"?"working":i==="done"?"done":i==="failed"?"failed":"idle"}),(0,d.jsxs)("span",{className:"team-chat-office-copy",children:[(0,d.jsx)("strong",{children:m.name}),(0,d.jsx)("small",{title:o,children:o})]}),(0,d.jsx)("span",{className:"team-chat-office-state","data-state":i,children:c})]});return s&&t?(0,d.jsx)("button",{type:"button",className:"team-chat-office-member",onClick:()=>t(s),"aria-label":`\u67E5\u770B${m.name}\u7684\u4F1A\u8BDD\uFF1A${c}`,children:u},m.id):(0,d.jsx)("div",{className:"team-chat-office-member",children:u},m.id)})})]})}var ds={awaiting_approval:"\u56DE\u590D\u300E\u6279\u51C6\u300F\u5373\u5F00\u5DE5\uFF0C\u5176\u4ED6\u5185\u5BB9\u4F1A\u4F5C\u4E3A\u4FEE\u6539\u610F\u89C1\u8F6C\u7ED9\u8D1F\u8D23\u4EBA",running:"\u5C06\u4F5C\u4E3A\u63D2\u8BDD\uFF0C\u8D1F\u8D23\u4EBA\u4E0B\u4E00\u8F6E\u770B\u5230"},ls="\u53D1\u6D88\u606F\u4F1A\u63A5\u7740\u8FD9\u4E00\u8F6E\u7684\u8FDB\u5EA6\u5F00\u65B0\u4E00\u8F6E",cs="\u8F93\u5165\u6D88\u606F\u2026";function ha(e){return e==="running"||e==="awaiting_approval"||e==="waiting_user"}function ms(e,t,n=""){if(n==="send")return ha(e)?"send-and-stop":"send";let a=ha(e);return a&&t?"send-and-stop":a?"stop":t?"send":"blocked"}function ps(e){return e==="done"||e==="stopped"||e==="failed"?ls:ds[e]??""}function Pe(e){return e.content.filter(t=>t.type==="text").map(t=>"text"in t?t.text.trim():"").filter(Boolean).join(`
11
+ `)}function Kt(e){let t=Date.parse(e.completedAt||e.createdAt||"");return Number.isNaN(t)?"":new Date(t).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}function us(e,t,n=new Date){let a=new Date(e.createdAt||"");if(!Number.isFinite(a.getTime()))return"";let r=t?new Date(t.createdAt||""):null;if(r&&Number.isFinite(r.getTime())&&a.toDateString()===r.toDateString()&&a.getTime()-r.getTime()<60*6e4)return"";let m=a.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",hour12:!1}),i=n.toDateString()===a.toDateString(),c=new Date(n.getFullYear(),n.getMonth(),n.getDate()-1).toDateString()===a.toDateString();return`${i?"\u4ECA\u5929":c?"\u6628\u5929":a.getFullYear()===n.getFullYear()?`${a.getMonth()+1}\u6708${a.getDate()}\u65E5`:`${a.getFullYear()}\u5E74${a.getMonth()+1}\u6708${a.getDate()}\u65E5`} ${m}`}function gs(e){return e.notice?"notice":e.role==="user"?"user":e.author?.leader?"leader":"step"}var fs=/^(✅ 完成|❌ 没完成)「(.+?)」\s*/;function Nn(e){let t=fs.exec(e.trim());return t?{ok:t[1]==="\u2705 \u5B8C\u6210",title:t[2],body:e.trim().slice(t[0].length)}:null}function hs(e){return e&&e.title.trim()?`\u6210\u5458\u62A5\u544A \xB7 ${e.title}`:"\u6210\u5458\u53D1\u8A00"}var vs=/^\d+\.\s*\*\*@(.+?)\*\*\s*(.+)$/,bs=/^(.+?)((依据:.+?))$/,ws=/^(.+?)((等第.+?))$/;function ys(e){let t=e.trim().split(`
12
+ `),n=[],a=[];for(let r of t){let m=vs.exec(r.trim());if(!m){a.push(r);continue}let i=bs.exec(m[2])??ws.exec(m[2]);n.push({member:m[1],title:i?i[1]:m[2],note:i?i[2]:""})}return{head:a.join(`
13
+ `).trim(),assignments:n}}var va=6,ba=420;function ya(e){return e.length>ba||e.split(`
14
+ `).length>va}var Ot="\u6211",Cn="\uFF08\u8FD9\u6761\u6D88\u606F\u6CA1\u6709\u6B63\u6587\uFF09",xs="\u70B9\u51FB\u5C55\u5F00";function Ht(e,t,n=0){return e==="notice"?"notice":e==="user"?"bubble":ya(t)||n>0?"document":"bubble"}function ks(e){let t=e.split(`
15
+ `),n=t.length>va,a=t.slice(0,va).join(`
16
+ `);return a.length>ba&&(a=a.slice(0,ba).trimEnd(),n=!0),n?`${a}\u2026`:a}function In(e){let t=e?.avatar??"";return t.startsWith("data:image/")?{kind:"upload",src:t}:e&&(e.id||e.name)?{kind:"cat",coat:(0,ct.memberCoatIndex)({id:e.id,name:e.name,avatar:t})}:{kind:"brand"}}var Ts=/[\s((、「【《,,。;;::!!??]/,Rs=["**","__","~~","*","_"],As=/[\s((、「【《,,。;;::!!??))」】》、.\]}]/;function Es(e,t,n=e){let a=[...new Set(t.map(u=>u.trim()).filter(Boolean))].sort((u,g)=>g.length-u.length);if(!e||a.length===0)return e?[{text:e}]:[];let m=n!==e&&e.endsWith("\u2026")&&n.startsWith(e.slice(0,-1))?e.length-1:e.length,i=[],c=0;for(;c<n.length;){let u=c===0||Ts.test(n[c-1]),g=u?Rs.find(x=>n.startsWith(`${x}@`,c)):void 0,v=g?c+g.length:c;if((u||g)&&n[v]==="@"){let x=a.find(h=>n.startsWith(h,v+1));if(x){let h=v+1+x.length,b=g?n.startsWith(g,h):!1,I=b?h+g.length:h;if((!g||b)&&(I===n.length||As.test(n[I]))&&I<=m){i.push({start:v,end:h}),c=I;continue}}}c++}let o=[],s=0;for(let u of i)u.start>s&&o.push({text:e.slice(s,u.start)}),o.push({text:e.slice(u.start,u.end),mention:!0}),s=u.end;return s<e.length&&o.push({text:e.slice(s)}),o}var Ft=[];function jt({text:e,names:t,source:n}){return(0,d.jsx)(d.Fragment,{children:Es(e,t,n).map((a,r)=>a.mention?(0,d.jsx)("span",{className:"team-chat-mention",title:a.text,children:a.text},`mention#${r}`):(0,d.jsx)(A.Fragment,{children:a.text},`plain#${r}`))})}function Ss({path:e}){let[t,n]=A.useState(!1),a=e.split("/").at(-1)?.replace(/^\d{13}-[0-9a-f]{8}-/,"")||e,r=es(e)&&!t;return(0,d.jsx)("button",{type:"button",className:"team-chat-attachment","data-image":r||void 0,title:`\u9884\u89C8 ${a}`,onClick:()=>{wa.filePreviewController.open(e)},children:r?(0,d.jsx)("img",{src:`/api/file-raw?path=${encodeURIComponent(e)}`,alt:a,loading:"lazy",onError:()=>n(!0)}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(We.WandIcon,{name:"file",size:18}),(0,d.jsx)("span",{children:a})]})})}function zn({paths:e}){return e.length?(0,d.jsx)("div",{className:"team-chat-attachments","aria-label":"\u6D88\u606F\u9644\u4EF6",children:e.map((t,n)=>(0,d.jsx)(Ss,{path:t},`${t}#${n}`))}):null}function Ns({file:e}){let t=e.preview?.title||e.name,n=e.preview?.excerpt||(e.preview?"\u62A5\u544A\u6682\u65E0\u6B63\u6587":"\u70B9\u51FB\u67E5\u770B\u5B8C\u6574\u62A5\u544A");return(0,d.jsx)("div",{className:"team-chat-file-card",children:(0,d.jsxs)("button",{type:"button",className:"team-chat-file-open",title:`\u67E5\u770B\u5B8C\u6574\u62A5\u544A\uFF1A${t}`,onClick:()=>{wa.filePreviewController.open(e.path)},children:[(0,d.jsxs)("span",{className:"team-chat-file-copy",children:[(0,d.jsx)("strong",{children:t}),(0,d.jsx)("span",{className:"team-chat-file-excerpt",children:n})]}),(0,d.jsxs)("span",{className:"team-chat-file-icon","aria-hidden":"true",children:[(0,d.jsx)(We.WandIcon,{name:"file",size:12}),(0,d.jsx)("b",{children:t}),(0,d.jsx)("span",{children:e.preview?.excerpt})]}),(0,d.jsxs)("span",{className:"team-chat-file-meta",children:[(0,d.jsx)("span",{children:e.name}),(0,d.jsxs)("span",{children:["Markdown \xB7 ",(0,Rn.formatFilePreviewSize)(e.size)]})]})]})})}function Mn({spec:e,size:t="md"}){return(0,d.jsx)("span",{className:"team-chat-avatar","data-kind":e.kind,"data-size":t,"aria-hidden":"true",children:e.kind==="upload"?(0,d.jsx)("img",{className:"team-chat-avatar-upload",src:e.src,alt:""}):e.kind==="cat"?(0,d.jsx)(ct.PixelCat,{coat:e.coat}):(0,d.jsx)(We.WandBrandMark,{className:"team-chat-avatar-brand"})})}function Ut({shape:e,text:t,assignments:n,names:a,onExpand:r}){let m=Sn(t),i=m.paths.length&&m.body.trim()==="\u8BF7\u67E5\u770B\u9644\u4EF6\u3002"?"":m.body,c=ya(i),o=n??[];return(0,d.jsxs)("div",{className:e==="document"?"team-chat-doc":"chat-message-bubble team-chat-bubble","data-shape":e,children:[(0,d.jsx)(zn,{paths:m.paths}),i.trim()?c?(0,d.jsx)("p",{className:"team-chat-preview",children:(0,d.jsx)(jt,{text:ks(i),names:a,source:i})}):(0,d.jsx)("pre",{className:e==="document"?"team-chat-doc-text":"team-chat-bubble-text",children:(0,d.jsx)(jt,{text:i,names:a})}):o.length===0&&m.paths.length===0?(0,d.jsx)("p",{className:"team-chat-preview team-chat-msg-empty",children:Cn}):null,o.length>0?(0,d.jsx)("ol",{className:"team-chat-plan-list",children:o.map((s,u)=>(0,d.jsxs)("li",{children:[(0,d.jsxs)("span",{className:"team-chat-mention",children:["@",s.member]}),(0,d.jsx)("span",{className:"team-chat-plan-title",children:s.title}),s.note?(0,d.jsx)("small",{className:"team-chat-plan-basis",children:s.note}):null]},`${s.member}#${u}`))}):null,c&&r?(0,d.jsx)("button",{type:"button",className:"team-chat-expand","aria-haspopup":"dialog",onClick:r,children:xs}):null]})}function qt({kind:e,side:t,shape:n,status:a,avatar:r,name:m,sessionId:i,chip:c,badge:o,clock:s,onOpenSession:u,children:g,footer:v,presentationId:x,arriving:h=!1,onArrivalEnd:b}){return(0,d.jsxs)("div",{className:"chat-message assistant team-chat-msg","data-presentation-id":x,"data-arriving":h||void 0,onAnimationEnd:b,"data-kind":e,"data-side":t,"data-shape":n,"data-status":a,children:[(0,d.jsx)(Mn,{spec:r}),(0,d.jsxs)("div",{className:"team-chat-msg-content",children:[(0,d.jsxs)("div",{className:"team-chat-msg-head",children:[i&&u?(0,d.jsx)("button",{type:"button",className:"avatar-name chat-author-link",title:"\u67E5\u770B\u8FD9\u4E2A\u6210\u5458\u7684\u4F1A\u8BDD",onClick:()=>u(i),children:m}):(0,d.jsx)("span",{className:"avatar-name",children:m}),c,o?(0,d.jsx)("span",{className:"chat-author-badge",children:o}):null,s?(0,d.jsx)("span",{className:"chat-message-time",children:s}):null]}),g,v]})]})}function Cs({text:e,previewClassName:t,bodyClassName:n}){let a=ya(e),[r,m]=A.useState(!1),i=!a||r;return(0,d.jsxs)(d.Fragment,{children:[a&&!i?(0,d.jsx)("p",{className:t,children:e}):null,(0,d.jsx)("div",{className:n,"data-open":i||void 0,inert:!i,children:(0,d.jsx)("div",{className:`${n}-inner`,children:(0,d.jsx)("pre",{className:`${n}-text`,children:e})})}),a?(0,d.jsx)("button",{type:"button",className:"team-chat-expand","aria-expanded":i,onClick:()=>m(c=>!c),children:i?"\u6536\u8D77":"\u5C55\u5F00\u5168\u6587"}):null]})}function Is({detail:e}){let{run:t}=e;return(0,d.jsxs)("section",{className:"team-chat-goal",children:[(0,d.jsxs)("header",{className:"team-chat-goal-head",children:[(0,d.jsx)("span",{className:"team-chat-goal-label",children:"\u4E3B\u4EFB\u52A1"}),(0,d.jsxs)("span",{className:"team-chat-goal-meta",children:[t.stepsUsed,"/",t.stepLimit," \u6B65 \xB7 ",$e(e).name]})]}),(0,d.jsx)(Cs,{text:t.objective,previewClassName:"team-chat-goal-preview",bodyClassName:"team-chat-goal-body"})]})}function zs({turn:e,step:t,names:n,onOpenSession:a,onExpandDoc:r,presentationId:m,arriving:i,onArrivalEnd:c}){let o=e.author,s=Nn(Pe(e)),u=s?s.body:Pe(e),g=Kt(e),v=t?.status??(s?.ok===!1?"failed":s?"done":void 0),x=e.reportFile?"bubble":Ht("step",u,0),h=o?.name??"\u6210\u5458",b=In(o),I=s?`${s.ok?"\u2705":"\u274C"} ${s.title}`:"";return(0,d.jsx)(qt,{kind:"step",side:"start",shape:x,status:v,avatar:b,name:h,sessionId:o?.sessionId??null,chip:s?(0,d.jsx)("span",{className:"team-chat-step-chip","data-ok":s.ok||void 0,children:I}):null,clock:g,onOpenSession:a,presentationId:m,arriving:i,onArrivalEnd:c,children:e.reportFile?(0,d.jsx)(Ns,{file:e.reportFile}):(0,d.jsx)(Ut,{shape:x,text:u,names:n,onExpand:f=>r(f.currentTarget,{text:u,name:h,clock:g,typeLabel:hs(s),chip:I,avatar:b,side:"start",mentionNames:[...n]})})})}function Ms({turn:e,names:t,onOpenSession:n,onExpandDoc:a,presentationId:r,arriving:m,onArrivalEnd:i}){let c=e.author,o=Kt(e),s=Pe(e),{head:u,assignments:g}=ys(s),v=Ht("leader",u,g.length),x=c?.name??"\u8D1F\u8D23\u4EBA",h=In(c);return(0,d.jsx)(qt,{kind:"leader",side:"start",shape:v,avatar:h,name:x,sessionId:c?.sessionId??null,badge:"\u8D1F\u8D23\u4EBA",clock:o,onOpenSession:n,presentationId:r,arriving:m,onArrivalEnd:i,children:(0,d.jsx)(Ut,{shape:v,text:u,assignments:g,names:t,onExpand:b=>a(b.currentTarget,{text:s,name:x,clock:o,typeLabel:"\u8D1F\u8D23\u4EBA\u6D3E\u5DE5",avatar:h,side:"start",mentionNames:[...t]})})})}var Ln=24,bn="\u5DF2\u5F00\u59CB\uFF0C\u7B49\u5F85\u7B2C\u4E00\u6BB5\u8F93\u51FA\u2026",Ls={working:"\u5DE5\u4F5C\u4E2D",needs_input:"\u7B49\u5F85\u56DE\u7B54",needs_permission:"\u7B49\u5F85\u6388\u6743",done:"\u5DF2\u5B8C\u6210",failed:"\u5931\u8D25"};function _s(e){return e&&Ls[e]||""}function Ds(e,t,n,a=Ln){return t-(e+n)<=a}function _n(e,t=Ln){return Ds(e.scrollTop,e.scrollHeight,e.clientHeight,t)}function Ps(e){let t=new Set,n=[];for(let a of e)t.has(a.stepId)||(t.add(a.stepId),n.push(a));return n.sort((a,r)=>a.seq-r.seq)}var Ws=6;function $s(e){return e>0?`\u5DF2\u7701\u7565\u524D\u9762 ${e} \u5B57`:""}function wn(e,t,n=Date.now()){let a=Ps(t),r=new Set(a.map(i=>i.stepId)),m=e.filter(i=>!r.has(i.step.stepId)).map(i=>({...i,leaving:!0,leavingSince:i.leaving?i.leavingSince:n}));return[...a.map(i=>({step:i,leaving:!1,leavingSince:0})),...m].sort((i,c)=>i.step.seq-c.step.seq)}function yn(e,t){return e.filter(n=>!(n.leaving&&n.step.stepId===t))}var Os="--motion-quick-exit";function Fs(e){let t=e.trim(),n=/^(\d+(?:\.\d+)?)ms$/.exec(t);if(n)return Math.round(Number(n[1]));let a=/^(\d+(?:\.\d+)?)s$/.exec(t);return a?Math.round(Number(a[1])*1e3):null}function xn(){return typeof window>"u"?null:Fs(getComputedStyle(document.documentElement).getPropertyValue(Os))}function Bs(e,t,n){let a=e.filter(r=>!r.leaving||t-r.leavingSince<n);return a.length===e.length?e:a}function Hs({row:e,title:t,memberName:n,state:a,onOpenSession:r,onRetire:m}){let i=e.step,c=A.useRef(null),o=A.useRef(!0),s=A.useRef(null),[u,g]=A.useState(!1),v=_s(a??i.state),x=Kt({createdAt:i.updatedAt,completedAt:i.updatedAt}),h=$s(i.omittedChars),b=i.text.trim().split(`
17
+ `).filter(Boolean).at(-1)||bn;A.useEffect(()=>{let f=c.current;u&&f&&o.current&&(f.scrollTop=f.scrollHeight)},[u,i.text]);let I=()=>{r&&(window.getSelection()?.toString()||r(i.sessionId))};return(0,d.jsxs)("div",{className:"team-chat-live-row","data-leaving":e.leaving||void 0,onAnimationEnd:f=>{e.leaving&&f.target===f.currentTarget&&m(i.stepId)},children:[(0,d.jsxs)("div",{className:"team-chat-live-head",children:[(0,d.jsx)("span",{className:"team-chat-live-name",title:n,children:n}),(0,d.jsxs)("span",{className:"team-chat-live-chip",children:["#",i.seq,t?` ${t}`:""]}),v?(0,d.jsx)("span",{className:"team-chat-live-state","data-state":i.state,children:v}):null,x?(0,d.jsx)("span",{className:"chat-message-time",children:x}):null]}),(0,d.jsxs)("button",{type:"button",className:"team-chat-live-summary","aria-expanded":u,onClick:()=>g(f=>!f),children:[(0,d.jsx)("span",{children:b}),(0,d.jsx)("small",{children:u?"\u6536\u8D77\u8F93\u51FA":"\u5C55\u5F00\u8F93\u51FA"})]}),(0,d.jsx)("div",{className:"team-chat-live-body","data-open":u||void 0,inert:!u,children:(0,d.jsx)("div",{className:"team-chat-live-body-inner",children:(0,d.jsxs)("div",{className:"team-chat-live-card",role:"button",tabIndex:0,title:"\u67E5\u770B\u8FD9\u4E2A\u6210\u5458\u7684\u4F1A\u8BDD","aria-label":`\u6253\u5F00${n}\u6B63\u5728\u8F93\u51FA\u7684\u4F1A\u8BDD`,onPointerDown:f=>{s.current={x:f.clientX,y:f.clientY}},onClick:f=>{let T=s.current;T&&Math.hypot(f.clientX-T.x,f.clientY-T.y)>Ws||I()},onKeyDown:f=>{f.key!=="Enter"&&f.key!==" "||(f.preventDefault(),I())},children:[h?(0,d.jsx)("p",{className:"team-chat-live-omitted",children:h}):null,(0,d.jsx)("pre",{className:"team-chat-live-text",ref:c,onScroll:f=>{o.current=_n(f.currentTarget)},children:i.text||bn})]})})})]})}function tt(e){let t=e.content.map(a=>a.type==="text"?["text",a.text]:null);if(t.some(a=>a===null))return null;let n=e.author;return JSON.stringify([e.role,e.notice??null,e.createdAt??null,e.completedAt??null,n?[n.id??null,n.name??null,n.leader??null,n.sessionId??null,n.provider??null,n.model??null,n.thinkingEffort??null,n.avatar??null]:null,t,...e.reportFile?[[e.reportFile.stepId,e.reportFile.path,e.reportFile.name,e.reportFile.size,e.reportFile.preview?.title??null,e.reportFile.preview?.excerpt??null]]:[]])}function kn(e,t){for(let n=0;n<=e.length-t.length;n++)if(t.every((a,r)=>e[n+r]===a))return n;return-1}function Dn(e,t){if(e.length===0)return[...t];if(t.length===0)return e;let n=e.map(tt),a=t.map(tt);if(n.includes(null)||a.includes(null))return e;let r=n,m=a,i=kn(m,r);if(i>=0)return i+e.length<t.length?[...t]:e;if(kn(r,m)>=0)return e;let c=0;for(let o=1;o<=Math.min(e.length,t.length);o++)if(r.slice(-o).every((s,u)=>s===m[u])){if(c>0)return e;c=o}return c>0?[...e,...t.slice(c)].slice(-Va):e}function At(e,t){if(!e||e.run.id!==t.run.id)return t;let n=Date.parse(e.run.updatedAt??""),a=Date.parse(t.run.updatedAt??""),r=g=>g.steps.filter(v=>v.status==="done"||v.status==="failed"||v.status==="skipped").length,m=e.run.status==="done"||e.run.status==="failed"||e.run.status==="stopped",i=t.run.status==="done"||t.run.status==="failed"||t.run.status==="stopped",o=Number.isFinite(n)&&Number.isFinite(a)&&a<n||a===n&&(m&&!i||t.steps.length<e.steps.length||r(t)<r(e)||t.run.stepsUsed<e.run.stepsUsed)?e:t,s=Date.parse(e.displayTeam?.updatedAt??"")>Date.parse(t.displayTeam?.updatedAt??"")?e.displayTeam:t.displayTeam,u=t.chatTitle===void 0||Date.parse(e.chatTitleUpdatedAt??"")>Date.parse(t.chatTitleUpdatedAt??"")?e:t;return{...o,...s?{displayTeam:s}:{},...u.chatTitle!==void 0?{chatTitle:u.chatTitle,chatTitleUpdatedAt:u.chatTitleUpdatedAt}:{},chatTurns:Dn(e.chatTurns,t.chatTurns)}}function js(e,t){let n=null;for(let a=1;a<=Math.min(e.length,t.length);a++)if(e.slice(-a).every((r,m)=>r.fingerprint!==null&&r.fingerprint===t[m])){if(n!==null)return null;n=a}return n}function Us(e,t,n){let a=e?.scope===t?e.rows:[],r=n.map(tt),m=e?.scope===t?e.nextId:0,i=()=>`turn-${++m}`;if(a.length===n.length&&a.every((h,b)=>h.fingerprint!==null&&h.fingerprint===r[b]))return{scope:t,nextId:m,candidates:[],rows:n.map((h,b)=>({...a[b],turn:h}))};let o=js(a,r),s=new Map,u=new Map;for(let h of a)h.fingerprint!==null&&s.set(h.fingerprint,(s.get(h.fingerprint)??0)+1);for(let h of r)h!==null&&u.set(h,(u.get(h)??0)+1);let g=[],v=[],x=a.length?Date.parse(a.at(-1).turn.createdAt??""):-1/0;for(let h=0;h<n.length;h++){let b=r[h],I=o!==null&&h<o?a[a.length-o+h]:void 0,f=b!==null&&(s.get(b)??0)<=1&&u.get(b)===1,T=I&&b!==null&&s.get(b)===u.get(b)&&n.every((M,W)=>r[W]!==b||o!==null&&W<o&&a[a.length-o+W]?.fingerprint===b),R=I&&(f||T)?I:f?a.find(M=>M.fingerprint===b):void 0,y=R?.presentationId??i();g.push({turn:n[h],fingerprint:b,presentationId:y});let N=Date.parse(n[h].createdAt??"");!R&&f&&(a.length===0&&e?.scope===t||o!==null&&h>=o)&&Number.isFinite(N)&&(a.length===0||Number.isFinite(x)&&N>=x)&&v.push(y)}return{scope:t,rows:g,nextId:m,candidates:v}}function qs({layer:e,onExited:t}){let n=e.ownerId,a=Sn(e.text);return A.useEffect(()=>()=>t(n),[n,t]),(0,d.jsxs)("div",{className:"team-chat-doc-layer",children:[(0,d.jsxs)("div",{className:"team-chat-doc-layer-meta",children:[(0,d.jsx)(Mn,{spec:e.avatar,size:"sm"}),(0,d.jsx)("span",{className:"team-chat-doc-layer-name",children:e.name}),e.chip?(0,d.jsx)("span",{className:"team-chat-step-chip",children:e.chip}):null,e.clock?(0,d.jsx)("span",{className:"chat-message-time",children:e.clock}):null]}),(0,d.jsx)(zn,{paths:a.paths}),(0,d.jsx)("pre",{className:"team-chat-doc-layer-text",tabIndex:0,"data-wand-autofocus":!0,children:a.body.trim()?(0,d.jsx)(jt,{text:a.body,names:e.mentionNames}):Cn})]})}function Tn(e,t,n,a){return n?.scope!==t?!1:e.startsWith("local#")?a.some(r=>`local#${r.sentAt}`===e):n.rows.some(r=>r.presentationId===e)}function mt({detail:e,onChange:t,onOpenSession:n,details:a,staleRun:r=!1}){let{run:m,chatTurns:i,steps:c}=e,[o,s]=A.useState([]),[u,g]=A.useState(""),[v,x]=A.useState(""),[h,b]=A.useState("message"),[I,f]=A.useState(!1),[T,R]=A.useState(!1),y=A.useRef(null),N=A.useRef(null),M=A.useRef(null),W=A.useRef(null),ne=A.useRef(null),me=A.useRef(null),V=A.useRef(!1),L=A.useRef(0),[H,$]=A.useState([]),[D,j]=A.useState(!1),[Y,Te]=A.useState(null),[He,Je]=A.useState({scope:"",ids:new Set}),K=rs(m),pe=m.chatSessionId,ft=A.useCallback(()=>De.teamChatComposer.revision(pe),[pe]);A.useSyncExternalStore(De.teamChatComposer.subscribe,ft,ft);let ht=De.teamChatComposer.read(pe),je=ht.text,se=ht.attachments,J=A.useRef({scope:K,runId:m.id,epoch:0});A.useLayoutEffect(()=>{let p=J.current;J.current={scope:K,runId:m.id,epoch:p.epoch+(p.scope===K?0:1)}},[K,m.id]);let ze=A.useRef(e);A.useLayoutEffect(()=>{ze.current=e},[e]);let vt=A.useRef(null),Q=A.useMemo(()=>Us(vt.current,K,i),[K,i]);A.useLayoutEffect(()=>{vt.current=Q},[Q]);let bt=A.useId(),Qe=A.useId(),Me=A.useRef(null),wt=A.useRef(null),It=A.useRef({projection:Q,local:o});A.useLayoutEffect(()=>{It.current={projection:Q,local:o}},[Q,o]);let zt=A.useRef(null),E=A.useRef(null),U=A.useRef(K),de=A.useRef(K),fe=A.useRef(!0),sa=A.useRef(""),ia=A.useRef(null),Ue=A.useRef(!0),Mt=$e(e),oa=A.useMemo(()=>[...new Set([...Mt.members.map(p=>p.name),...m.team.members.map(p=>p.name),...i.map(p=>p.author?.name).filter(p=>!!p)])],[Mt,m.team,i]),da=r?"\u6B63\u5728\u63A5\u5165\u65B0\u4E00\u8F6E\uFF0C\u52A0\u8F7D\u5B8C\u6210\u540E\u53EF\u53D1\u9001":ps(m.status),_a=m.status==="running",la=ms(m.status,!!je.trim()||se.length>0,v),Lt=v!=="",ca=la==="stop",Wr=Lt||r||la==="blocked",$r=v==="send"?"sending":ca?"running":"idle",Da=v==="send"?h==="upload"?"\u4E0A\u4F20\u4E2D\u2026":"\u53D1\u9001\u4E2D\u2026":v==="stop"?"\u505C\u6B62\u4E2D\u2026":ca?"\u505C\u6B62\u56E2\u961F":"\u53D1\u9001\u6D88\u606F",Pa=u?"\u64CD\u4F5C\u5931\u8D25":v==="send"?h==="upload"?"\u4E0A\u4F20\u4E2D\u2026":"\u53D1\u9001\u4E2D\u2026":v==="stop"?"\u505C\u6B62\u4E2D\u2026":"Enter \u53D1\u9001 \xB7 Shift+Enter \u6362\u884C";A.useLayoutEffect(()=>{let p=W.current;p&&hn(p)},[je,pe]),A.useLayoutEffect(()=>{let p=W.current,S=p?.parentElement;if(!p||!S)return;let P=-1,C=new ResizeObserver(([F])=>{let le=F?.contentRect.width??S.getBoundingClientRect().width;le<=0||Math.abs(le-P)<.5||(P=le,hn(p))});return C.observe(S),()=>C.disconnect()},[pe]),A.useEffect(()=>{if(!T)return;let p=P=>{let C=P.target;C&&(ne.current?.contains(C)||me.current?.contains(C))||R(!1)},S=P=>{P.key==="Escape"&&(P.preventDefault(),P.stopPropagation(),R(!1),ne.current?.focus())};return document.addEventListener("pointerdown",p),document.addEventListener("keydown",S),()=>{document.removeEventListener("pointerdown",p),document.removeEventListener("keydown",S)}},[T]),A.useLayoutEffect(()=>{if(!T)return;let p=y.current,S=ne.current,P=me.current;if(!p||!S||!P)return;let C=()=>{let le=p.getBoundingClientRect(),he=S.getBoundingClientRect();P.style.left=`${Math.max(0,he.left-le.left)}px`,P.style.bottom=`${Math.max(0,le.bottom-he.top+8)}px`};C();let F=new ResizeObserver(C);return F.observe(p),F.observe(S),window.addEventListener("resize",C),()=>{F.disconnect(),window.removeEventListener("resize",C)}},[T,se.length,pe,da]),A.useEffect(()=>{R(!1)},[pe]);let yt=A.useCallback(()=>{Te(p=>p?.phase!=="open"?p:(ia.current=`${p.scope}/${p.ownerId}`,{...p,phase:"closing"}))},[]),Or=A.useCallback(p=>{ia.current===`${sa.current}/${p}`&&(ia.current=null,Te(S=>S?.ownerId===p&&S.phase==="closing"?null:S),queueMicrotask(()=>{if(!fe.current)return;let S=It.current;(Tn(p,sa.current,S.projection,S.local)&&wt.current?.isConnected?wt.current:Me.current)?.focus({preventScroll:!0})}))},[]);A.useEffect(()=>(fe.current=!0,()=>{fe.current=!1}),[]),A.useEffect(()=>{de.current!==K&&(de.current=K,s([]),g(""),x(""),Ue.current=!0)},[K]),A.useEffect(()=>{j(!1),yt()},[m.id,yt]),A.useEffect(()=>{s(p=>ga(p,i))},[i,K]),A.useLayoutEffect(()=>{Y?.phase==="open"&&(Tn(Y.ownerId,Y.scope,Q,o)||yt())},[Y,K,Q,o,yt]),A.useEffect(()=>{let p=window.matchMedia("(prefers-reduced-motion: reduce)"),S=()=>Je(F=>F.ids.size?{scope:F.scope,ids:new Set}:F),P=()=>{document.visibilityState!=="visible"&&S()},C=()=>{p.matches&&S()};return document.addEventListener("visibilitychange",P),window.addEventListener("pagehide",S),p.addEventListener("change",C),P(),C(),()=>{document.removeEventListener("visibilitychange",P),window.removeEventListener("pagehide",S),p.removeEventListener("change",C)}},[]),A.useLayoutEffect(()=>{if(zt.current===Q)return;zt.current=Q;let p=Me.current;if(!p)return;if(U.current!==K&&(E.current=null,Ue.current=!0,U.current=K),Ue.current)p.scrollTop=p.scrollHeight;else if(E.current){let P=[...p.children].find(C=>C.dataset.presentationId===E.current?.id);P&&(p.scrollTop+=P.getBoundingClientRect().top-p.getBoundingClientRect().top-E.current.offset)}let S=new Set;if(Ue.current&&document.visibilityState==="visible"&&!window.matchMedia("(prefers-reduced-motion: reduce)").matches){let P=p.getBoundingClientRect();for(let C of Q.candidates){let F=[...p.children].find(le=>le.dataset.presentationId===C);F&&F.getBoundingClientRect().bottom>P.top&&F.getBoundingClientRect().top<P.bottom&&S.add(C)}}Je(P=>({scope:K,ids:new Set([...(P.scope===K?[...P.ids]:[]).filter(C=>Q.rows.some(F=>F.presentationId===C)),...S])}))},[Q,K]),A.useEffect(()=>{if($([]),!_a)return;let p=!0;Rt.aiTeamsRepository.live(m.id).then(P=>{p&&$(wn([],P.steps))},()=>{});let S=Rt.aiTeamsRepository.subscribeAiTeamStepLive(P=>{!p||P.runId!==m.id||$(C=>wn(C,P.steps))});return()=>{p=!1,S()}},[m.id,_a]),A.useEffect(()=>{let p=xn();if(p===null)return;let S=Date.now(),P=H.filter(C=>C.leaving).map(C=>window.setTimeout(()=>$(F=>yn(F,C.step.stepId)),Math.max(0,C.leavingSince+p-S)));return()=>{for(let C of P)window.clearTimeout(C)}},[H]),A.useEffect(()=>{let p=xn();if(p===null)return;let S=()=>{document.visibilityState==="visible"&&$(P=>Bs(P,Date.now(),p))};return document.addEventListener("visibilitychange",S),()=>document.removeEventListener("visibilitychange",S)},[]),A.useEffect(()=>{let p=Me.current;!p||!Ue.current||(p.scrollTop=p.scrollHeight)},[Q.rows.at(-1)?.presentationId,o.length,H.length]);let _t=(p,S,P)=>{if(Y)return;let C=p.getBoundingClientRect(),F=C.top+C.height/2<window.innerHeight/2?"top":"bottom";wt.current=p,sa.current=K,Te({...P,ownerId:S,scope:K,half:F,phase:"open"})},Dt=p=>{if(!pe)return;let S=Array.from(p),P=Math.max(0,5-De.teamChatComposer.read(pe).attachments.length);S.length>P&&g("\u4E00\u6B21\u6700\u591A\u6DFB\u52A0 5 \u4E2A\u9644\u4EF6\u3002");for(let[C,F]of S.slice(0,P).entries()){if(F.size>10*1024*1024){g(`\u6587\u4EF6\u8D85\u8FC7 10 MB\uFF1A${F.name||"\u56FE\u7247"}`);continue}let le=F.type.startsWith("image/"),he=F.name&&F.name!=="blob"?F.name:`image-${Date.now()}-${C+1}.${F.type.split("/")[1]||"png"}`;De.teamChatComposer.edit(pe,{addAttachment:{file:F,name:he,size:F.size,previewUrl:le?URL.createObjectURL(F):null}})}},Wa=async()=>{let p=je.trim(),S=m.chatSessionId;if(!p&&!se.length||!S||Lt||r)return;let P=K,C=J.current.epoch,F=()=>J.current.scope===P&&J.current.epoch===C,le=i.map(tt).filter(ue=>ue!==null);x("send"),g(""),Ue.current=!0;let he=se.length?"upload":"message";b(he);try{await De.teamChatComposer.submit(S,p,async ue=>{let Le=[];if(ue.attachments.length){let re=new FormData;for(let qe of ue.attachments)re.append("files",qe.file,qe.name);if(Le=(await(0,et.requestJson)(Qr(S),{method:"POST",body:re})).files,!Array.isArray(Le)||Le.length!==ue.attachments.length)throw new Error("\u9644\u4EF6\u4E0A\u4F20\u7ED3\u679C\u4E0D\u5B8C\u6574\uFF0C\u8BF7\u91CD\u8BD5\u3002")}if(!F())throw new Error("\u5DF2\u5207\u6362\u7FA4\u804A\uFF0C\u539F\u6D88\u606F\u5DF2\u4FDD\u7559\u3002");let ot=Zr(Le,ue.text.trim()),dt=Date.now();he="message",b(he),s(re=>[...re,{local:!0,text:ot,sentAt:dt,unconfirmed:!1,accepted:!1,knownFingerprints:le}]);let ae;try{ae=await(0,et.requestJson)(Gr(S),{...(0,et.jsonBody)(Jr(ot)),headers:{"content-type":"application/json","X-Wand-Tool-Projection":"compact"}})}catch(re){let Ce=vn(re);throw F()&&s(qe=>Ce?qe.filter(xt=>xt.sentAt!==dt):qe.map(xt=>xt.sentAt===dt?{...xt,unconfirmed:!0}:xt)),!Ce&&re&&typeof re=="object"&&Object.assign(re,{__wandAmbiguousDelivery:!0}),re}if(!F())return;let we=as(ae,ot,le);s(re=>ga(re.map(Ce=>Ce.sentAt===dt?{...Ce,accepted:!0,ackFingerprint:we??void 0}:Ce),ze.current.chatTurns));let _e=null;try{let re=J.current.runId,Ce=await Rt.aiTeamsRepository.detail(re);if(!F())return;if(J.current.runId===re&&ze.current.run.id===re){let qe=At(ze.current,{...ze.current,chatTurns:Ce.chatTurns});t(qe),_e=qe.chatTurns}else _e=Dn(ze.current.chatTurns,Ce.chatTurns)}catch{if(!F())return;_e=null}s(re=>ga(re,_e))})}catch(ue){if(!F())return;g(he==="upload"?(0,Bt.failureMessage)(ue,"\u9644\u4EF6\u4E0A\u4F20\u5931\u8D25\uFF0C\u6587\u4EF6\u548C\u6587\u5B57\u5DF2\u4FDD\u7559\u3002"):vn(ue)?(0,Bt.failureMessage)(ue,"\u53D1\u9001\u5931\u8D25\uFF0C\u5185\u5BB9\u5DF2\u653E\u56DE\u8F93\u5165\u6846\u3002"):"\u9001\u8FBE\u72B6\u6001\u672A\u77E5\uFF0C\u8BF7\u5148\u67E5\u770B\u7FA4\u804A\u8BB0\u5F55\uFF0C\u907F\u514D\u91CD\u590D\u53D1\u9001\u3002")}finally{F()&&x("")}},$a=async()=>{if(!ha(m.status)||Lt||r)return;let p=K,S=m.id,P=J.current.epoch;x("stop"),g("");try{let C=await Rt.aiTeamsRepository.stop(S);J.current.scope===p&&J.current.epoch===P&&J.current.runId===S&&t(At(ze.current,C))}catch(C){J.current.scope===p&&J.current.epoch===P&&J.current.runId===S&&g((0,Bt.failureMessage)(C,"\u505C\u6B62\u5931\u8D25\u3002"))}finally{J.current.scope===p&&J.current.epoch===P&&x("")}};return(0,d.jsxs)("div",{className:"task-board-team-chat",children:[(0,d.jsxs)("button",{type:"button",className:"team-chat-context","aria-expanded":D,"aria-controls":bt,onClick:()=>j(p=>!p),children:[(0,d.jsx)("span",{className:"team-chat-context-label",children:"\u7FA4\u516C\u544A"}),(0,d.jsx)("span",{className:"team-chat-context-title",title:m.objective,children:m.objective.split(`
18
+ `)[0]||"\u67E5\u770B\u672C\u6B21\u4EFB\u52A1"}),(0,d.jsx)("span",{className:"team-chat-context-action",children:D?"\u6536\u8D77":"\u8BE6\u60C5"})]}),(0,d.jsx)("div",{id:bt,className:"team-chat-details","data-open":D||void 0,inert:!D,children:(0,d.jsxs)("div",{className:"team-chat-details-inner",children:[(0,d.jsx)(Is,{detail:e}),(0,d.jsx)(os,{detail:e,onOpenSession:n}),a]})}),(0,d.jsxs)("div",{className:"task-board-team-chat-list",ref:Me,tabIndex:-1,onScroll:p=>{if(p.currentTarget!==Me.current)return;let S=p.currentTarget;if(Ue.current=_n(p.currentTarget),Ue.current){E.current=null;return}let P=S.getBoundingClientRect(),C=[...S.children].find(F=>F.dataset.presentationId&&F.getBoundingClientRect().bottom>P.top);C?.dataset.presentationId&&(E.current={id:C.dataset.presentationId,offset:C.getBoundingClientRect().top-P.top})},children:[i.length+o.length+H.length===0?(0,d.jsx)("p",{className:"task-board-team-run-detail",children:"\u7FA4\u804A\u8FD8\u6CA1\u6709\u6D88\u606F\u3002"}):null,Q.rows.map(({turn:p,presentationId:S},P)=>{let C=ss(p,Mt),F=gs(C),le=us(C,Q.rows[P-1]?.turn),he=ae=>(0,d.jsxs)(A.Fragment,{children:[le?(0,d.jsx)("time",{className:"team-chat-time-marker",dateTime:C.createdAt,children:le}):null,ae]},S),ue=He.scope===K&&He.ids.has(S),Le=ae=>{ae.target===ae.currentTarget&&ae.animationName==="wand-team-msg-in"&&Je(we=>we.scope===K&&we.ids.has(S)?{scope:K,ids:new Set([...we.ids].filter(_e=>_e!==S))}:we)};if(F==="notice")return he((0,d.jsx)("div",{className:"chat-message chat-notice","data-presentation-id":S,"data-arriving":ue||void 0,onAnimationEnd:Le,children:(0,d.jsxs)("div",{className:"chat-notice-line",title:[C.author?.name,Pe(C)].filter(Boolean).join(" "),children:[C.author?.name?(0,d.jsx)("span",{className:"chat-notice-author",children:C.author.name}):null,(0,d.jsx)("span",{className:"chat-notice-text",children:(0,d.jsx)(jt,{text:Pe(C),names:oa})})]})}));if(F==="user"){let ae=Pe(C),we=Kt(C),_e=Ht("user",ae,0);return he((0,d.jsx)(qt,{presentationId:S,kind:"user",side:"end",shape:_e,avatar:{kind:"brand"},name:Ot,clock:we,arriving:ue,onArrivalEnd:Le,children:(0,d.jsx)(Ut,{shape:_e,text:ae,names:Ft,onExpand:re=>_t(re.currentTarget,S,{text:ae,name:Ot,clock:we,typeLabel:"\u6211\u7684\u6D88\u606F",avatar:{kind:"brand"},side:"end",mentionNames:Ft})})}))}if(F==="leader")return he((0,d.jsx)(Ms,{presentationId:S,turn:C,names:oa,arriving:ue,onArrivalEnd:Le,onOpenSession:n,onExpandDoc:(ae,we)=>_t(ae,S,we)}));let ot=Nn(Pe(C)),dt=C.reportFile?c.find(ae=>ae.id===C.reportFile.stepId):ot?c.find(ae=>ae.kind==="work"&&ae.title===ot.title):void 0;return he((0,d.jsx)(zs,{presentationId:S,turn:C,step:dt,names:oa,arriving:ue,onArrivalEnd:Le,onOpenSession:n,onExpandDoc:(ae,we)=>_t(ae,S,we)}))}),H.map(p=>(0,d.jsx)(Hs,{row:p,title:c.find(S=>S.id===p.step.stepId)?.title??"",memberName:Mt.members.find(S=>S.id===p.step.memberId)?.name??p.step.memberName,state:e.memberStates[p.step.sessionId],onOpenSession:n,onRetire:S=>$(P=>yn(P,S))},p.step.stepId)),o.map(p=>{let S=Ht("user",p.text,0);return(0,d.jsx)(qt,{kind:"user",side:"end",shape:S,avatar:{kind:"brand"},name:Ot,footer:p.unconfirmed?(0,d.jsx)("small",{className:"wand-team-chat-unconfirmed",children:"\u672A\u786E\u8BA4"}):null,children:(0,d.jsx)(Ut,{shape:S,text:p.text,names:Ft,onExpand:P=>_t(P.currentTarget,`local#${p.sentAt}`,{text:p.text,name:Ot,clock:"",typeLabel:"\u6211\u7684\u6D88\u606F",avatar:{kind:"brand"},side:"end",mentionNames:Ft})})},`local#${p.sentAt}`)})]}),m.chatSessionId?(0,d.jsxs)("div",{ref:y,className:"task-board-team-chat-input","data-dragging":I||void 0,onDragOver:p=>{p.dataTransfer.types.includes("Files")&&(p.preventDefault(),f(!0))},onDragLeave:p=>{p.currentTarget.contains(p.relatedTarget)||f(!1)},onDrop:p=>{p.dataTransfer.files.length&&(p.preventDefault(),f(!1),Dt(p.dataTransfer.files))},children:[da?(0,d.jsx)("p",{className:"task-board-team-chat-hint",children:da}):null,(0,d.jsx)("div",{className:"input-composer-row",children:(0,d.jsxs)("div",{className:`input-composer${je.trim()?" has-text":""}${v==="send"?" in-flight":""}${I?" drag-over":""}`,role:"group","aria-label":"\u6D88\u606F\u7F16\u8F91\u5668",children:[se.length?(0,d.jsx)(En.ComposerAttachmentList,{items:se.map((p,S)=>({index:S,name:p.name,previewUrl:p.previewUrl??null,sizeLabel:p.size<1024?`${p.size} B`:p.size<1024*1024?`${(p.size/1024).toFixed(1)} KB`:`${(p.size/(1024*1024)).toFixed(1)} MB`})),onRemove:p=>De.teamChatComposer.edit(pe,{removeAttachment:p})}):null,(0,d.jsxs)("div",{className:"composer-main-row team-chat-compose-main",children:[(0,d.jsx)("div",{className:"composer-input-wrap",children:(0,d.jsx)("textarea",{ref:W,className:"input-textarea",rows:1,value:je,placeholder:cs,"aria-label":"\u7FA4\u804A\u6D88\u606F",onChange:p=>De.teamChatComposer.edit(pe,{text:p.currentTarget.value}),onCompositionStart:()=>{L.current++,V.current=!0},onCompositionEnd:()=>{let p=L.current;window.setTimeout(()=>{p===L.current&&(V.current=!1)},0)},onKeyDown:p=>{p.key!=="Enter"||p.shiftKey||p.altKey||p.ctrlKey||p.metaKey||p.nativeEvent.isComposing||p.keyCode===229||V.current||(p.preventDefault(),Wa())},onPaste:p=>{p.clipboardData.files.length&&(p.preventDefault(),Dt(p.clipboardData.files))}})}),(0,d.jsxs)("div",{className:"composer-actions-left",role:"group","aria-label":"\u6DFB\u52A0\u5185\u5BB9",children:[(0,d.jsx)("button",{ref:ne,type:"button",className:"btn-circle btn-circle-action composer-attach-trigger",title:"\u66F4\u591A","aria-label":"\u66F4\u591A\u64CD\u4F5C","aria-haspopup":"dialog","aria-controls":Qe,"aria-expanded":T,onClick:()=>R(p=>!p),children:(0,d.jsx)(We.WandIcon,{name:"plus",size:18,strokeWidth:2.2})}),(0,d.jsx)("input",{ref:N,type:"file",accept:"image/*",multiple:!0,hidden:!0,tabIndex:-1,"aria-label":"\u9009\u62E9\u56FE\u7247",onChange:p=>{p.currentTarget.files&&Dt(p.currentTarget.files),p.currentTarget.value="",W.current?.focus()}}),(0,d.jsx)("input",{ref:M,type:"file",multiple:!0,hidden:!0,tabIndex:-1,"aria-label":"\u9009\u62E9\u9644\u4EF6",onChange:p=>{p.currentTarget.files&&Dt(p.currentTarget.files),p.currentTarget.value="",W.current?.focus()}}),(0,d.jsx)("div",{className:"composer-status-row",children:(0,d.jsx)("span",{className:"composer-status-line",role:u?"alert":"status","aria-live":u?"assertive":"polite","data-tone":u?"failed":v?"sending":void 0,title:Pa,children:Pa})})]}),(0,d.jsxs)("div",{className:"composer-actions-right",role:"group","aria-label":"\u53D1\u9001\u4E0E\u505C\u6B62",children:[la==="send-and-stop"?(0,d.jsx)("button",{type:"button",className:"btn-circle btn-circle-action team-chat-stop-action",disabled:Lt||r,title:"\u505C\u6B62\u56E2\u961F","aria-label":"\u505C\u6B62\u56E2\u961F",onClick:()=>{$a()},children:(0,d.jsx)(We.WandIcon,{name:"stop",size:16})}):null,(0,d.jsxs)("button",{type:"button",className:"btn-circle btn-circle-send","data-phase":$r,disabled:Wr,title:Da,"aria-label":Da,onClick:()=>{ca?$a():Wa()},children:[(0,d.jsx)("span",{className:"composer-send-glyph composer-send-glyph-arrow","aria-hidden":"true",children:(0,d.jsxs)("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.4",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M12 19V5"}),(0,d.jsx)("path",{d:"m6 11 6-6 6 6"})]})}),(0,d.jsx)("span",{className:"composer-send-glyph composer-send-glyph-stop","aria-hidden":"true",children:(0,d.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 16 16",fill:"currentColor",children:(0,d.jsx)("rect",{x:"3",y:"3",width:"10",height:"10",rx:"2"})})}),(0,d.jsx)("span",{className:"composer-send-glyph composer-send-glyph-sending","aria-hidden":"true",children:(0,d.jsx)("span",{className:"composer-send-spinner"})})]})]})]})]})}),(0,d.jsxs)("div",{ref:me,id:Qe,role:"dialog","aria-label":"\u66F4\u591A\u64CD\u4F5C","aria-modal":"false","aria-hidden":!T,inert:!T,className:`composer-plus-popover${T?"":" hidden"}`,children:[(0,d.jsx)(fa.ComposerPopoverAction,{icon:"image",label:"\u4E0A\u4F20\u56FE\u7247",onClick:()=>{R(!1),N.current?.click()}}),(0,d.jsx)(fa.ComposerPopoverAction,{icon:"paperclip",label:"\u4E0A\u4F20\u9644\u4EF6",onClick:()=>{R(!1),M.current?.click()}})]}),u?(0,d.jsx)("p",{className:"task-board-team-error",role:"alert",children:u}):null]}):(0,d.jsx)("p",{className:"task-board-team-run-detail",children:"\u8FD9\u6B21\u8FD0\u884C\u6CA1\u6709\u7FA4\u804A\u4F1A\u8BDD\uFF0C\u53EA\u80FD\u5728\u65F6\u95F4\u7EBF\u91CC\u770B\u3002"}),(0,d.jsx)(We.WandDialogSurface,{open:Y?.phase==="open",onOpenChange:p=>{p||yt()},title:Y?.name??"",description:Y?[Y.clock,Y.typeLabel].filter(Boolean).join(" \xB7 "):void 0,className:["wand-ui-dialog-content","wand-team-chat-doc-dialog",Y?.side==="end"?"wand-doc-dx-end":"wand-doc-dx-start",Y?.half==="top"?"wand-doc-dy-top":"wand-doc-dy-bottom"].join(" "),testId:"team-chat-doc-dialog",closeLabel:"\u5173\u95ED",children:Y?(0,d.jsx)(qs,{layer:Y,onExited:Or}):null})]})}var On=w(kt()),Fn=w(Ze()),Bn=w(Wt()),Vt=w(Wn()),xe=w(Ae()),k=w(Z()),St={running:{label:"\u8FDB\u884C\u4E2D",tone:"info"},awaiting_approval:{label:"\u7B49\u4F60\u6279\u51C6\u8BA1\u5212",tone:"warning"},waiting_user:{label:"\u7B49\u4F60\u56DE\u590D",tone:"warning"},done:{label:"\u5DF2\u5B8C\u6210",tone:"success"},failed:{label:"\u5931\u8D25",tone:"neutral"},stopped:{label:"\u5DF2\u505C\u6B62",tone:"neutral"}},Ks={queued:"\u6392\u961F",running:"\u8FDB\u884C\u4E2D",done:"\u5B8C\u6210",failed:"\u5931\u8D25",skipped:"\u8DF3\u8FC7"},Hn={needs_input:"\u7B49\u5F85\u56DE\u7B54",needs_permission:"\u7B49\u5F85\u6388\u6743"},Vs=["running","awaiting_approval","waiting_user"];function Ys(){let[e,t]=ee.useState(""),[n,a]=ee.useState(null),r=ee.useRef(null);ee.useEffect(()=>()=>{r.current!==null&&window.clearTimeout(r.current)},[]);let m=ee.useCallback(async(i,c)=>{t(i),a(null);let o=!0;try{await c()}catch{o=!1}finally{t("")}a({key:i,ok:o}),r.current!==null&&window.clearTimeout(r.current),r.current=window.setTimeout(()=>{r.current=null,a(null)},o?Vt.MOTION_DWELL_SENT_MS:Vt.MOTION_DWELL_FAILED_MS)},[]);return{pending:e,flash:n,run:m}}function pt({id:e,state:t,label:n,pendingLabel:a,kind:r="ghost",disabled:m,onClick:i}){let c=t.flash?.key===e?t.flash:null,o=t.pending===e;return(0,k.jsx)(xe.WandButton,{kind:r,size:"small","aria-busy":o||void 0,"aria-live":"polite",disabled:m||!!t.pending,onClick:()=>{t.run(e,i)},children:o?a:c?c.ok?"\u5DF2\u5B8C\u6210":"\u5931\u8D25":n})}function xa(e,t){return e.status==="running"?t&&Hn[t]?"waiting":"working":e.status==="done"?"done":e.status==="failed"?"failed":"idle"}function Xs(e,t,n){let a=t.filter(i=>i.memberId===e.id),r=a.find(i=>i.status==="running");if(r)return xa(r,r.sessionId?n[r.sessionId]:void 0);let m=[...a].reverse().find(i=>i.status!=="queued"&&i.status!=="skipped");return m?xa(m,void 0):"idle"}function Gs({step:e,steps:t,member:n,memberState:a,open:r,onToggle:m,onOpenSession:i,onComplete:c,actions:o}){let s=n?.name??(e.kind==="leader"?"\u8D1F\u8D23\u4EBA":e.memberId),[u,g]=ee.useState(""),[v,x]=ee.useState(!1),h=e.dispatchInfo?.skipped??[],b=a?Hn[a]:void 0,I=e.kind==="work"&&e.status==="running",f=e.status==="queued"?e.dependsOn.map(T=>t.find(R=>R.id===T)).filter(T=>!!T&&T.status!=="done").map(T=>`#${T.seq}`):[];return(0,k.jsxs)("li",{className:"task-board-team-step","data-status":e.status,"data-kind":e.kind,"data-open":r||void 0,children:[n?(0,k.jsx)(Et.TeamAvatar,{member:n,size:"sm",state:xa(e,a)}):(0,k.jsx)("span",{}),(0,k.jsxs)("div",{className:"task-board-team-step-card",children:[(0,k.jsxs)("button",{type:"button",className:"task-board-team-step-head","aria-expanded":r,onClick:m,children:[(0,k.jsxs)("span",{className:"task-board-team-step-title",children:[(0,k.jsxs)("small",{children:[s," \xB7 #",e.seq]}),(0,k.jsx)("strong",{children:e.title||(e.kind==="leader"?"\u8D1F\u8D23\u4EBA\u51B3\u7B56":"\u6210\u5458\u6B65\u9AA4")})]}),(0,k.jsx)("span",{className:"task-board-team-step-status",children:b??(f.length?`\u7B49\u5F85 ${f.join("\u3001")}`:Ks[e.status])}),(0,k.jsx)(xe.WandIcon,{name:"chevronDown",size:14})]}),e.report&&!r?(0,k.jsx)("p",{className:"task-board-team-step-preview",children:e.report}):null,(0,k.jsx)("div",{className:"task-board-team-step-body",inert:!r,children:(0,k.jsxs)("div",{className:"task-board-team-step-inner",children:[e.instructions?(0,k.jsxs)("section",{children:[(0,k.jsx)("h4",{children:e.kind==="leader"?"\u53D1\u7ED9\u8D1F\u8D23\u4EBA":"\u4EFB\u52A1\u8BF4\u660E"}),(0,k.jsx)("pre",{children:e.instructions})]}):null,e.report?(0,k.jsxs)("section",{children:[(0,k.jsx)("h4",{children:e.kind==="leader"?"\u8D1F\u8D23\u4EBA\u8BF4\u660E":"\u62A5\u544A"}),(0,k.jsx)("pre",{children:e.report})]}):null,(0,k.jsxs)("p",{className:"task-board-team-step-meta",children:["\u62A5\u544A\u6587\u4EF6\uFF1A",(0,k.jsx)("code",{children:e.reportPath})]}),e.sessionId&&i?(0,k.jsx)("div",{className:"task-board-native-editor-actions",children:(0,k.jsxs)(xe.WandButton,{kind:"ghost",size:"small",onClick:()=>i(e.sessionId),children:[(0,k.jsx)(xe.WandIcon,{name:"terminal",size:14,slot:"start"}),"\u6253\u5F00\u4F1A\u8BDD"]})}):null,I?(0,k.jsxs)("div",{className:"task-board-team-manual",children:[(0,k.jsx)("textarea",{className:"resize-none task-board-detail-body",rows:3,value:u,placeholder:"\u6210\u5458\u6CA1\u6709\u5199\u62A5\u544A\u6587\u4EF6\u65F6\uFF0C\u5728\u8FD9\u91CC\u8865\u4E00\u6BB5\u7ED3\u679C\u518D\u624B\u52A8\u5B8C\u6210","aria-label":"\u624B\u52A8\u5B8C\u6210\u7684\u62A5\u544A",onChange:T=>g(T.currentTarget.value)}),(0,k.jsx)(pt,{id:`complete-${e.id}`,state:o,label:"\u624B\u52A8\u5B8C\u6210\u6B64\u6B65",pendingLabel:"\u63D0\u4EA4\u4E2D\u2026",onClick:()=>c(u)})]}):null]})}),h.length?(0,k.jsxs)("div",{className:"task-board-team-step-skips","data-open":v||void 0,children:[(0,k.jsxs)("button",{type:"button",className:"task-board-team-step-skip-head","aria-expanded":v,onClick:()=>x(T=>!T),children:[(0,k.jsx)(xe.WandIcon,{name:"warning",size:13}),(0,k.jsxs)("span",{children:["\u5907\u7528\u5019\u9009 ",h.map(T=>T.candidate).join("\u3001")," \u6CA1\u7528\u4E0A"]}),(0,k.jsx)(xe.WandIcon,{name:"chevronDown",size:14})]}),(0,k.jsx)("div",{className:"task-board-team-step-skip-body",inert:!v,children:(0,k.jsx)("ul",{className:"task-board-team-step-skip-inner",children:h.map(T=>(0,k.jsxs)("li",{children:[(0,k.jsxs)("strong",{children:["\u5019\u9009 ",T.candidate," \xB7 ",(0,Fn.issueAgentProviderLabel)(T.agent.provider)]}),(0,k.jsx)("span",{children:T.reason})]},T.candidate))})})]}):null]})]})}var $n=[{value:"chat",label:"\u7FA4\u804A"},{value:"timeline",label:"\u65F6\u95F4\u7EBF"},{value:"members",label:"\u6309\u6210\u5458"}];function ka({detail:e,onChange:t,onOpenSession:n}){let{run:a,steps:r,memberStates:m}=e,i=Ys(),[c,o]=ee.useState(""),[s,u]=ee.useState(""),[g,v]=ee.useState("chat"),[x,h]=ee.useState(""),[b,I]=ee.useState(""),f=St[a.status],T=Vs.includes(a.status),R=a.stepsUsed>=a.stepLimit,y=a.status==="awaiting_approval"||a.status==="waiting_user",N=$e(e),M=[...N.members].sort((L,H)=>Number(H.isLeader)-Number(L.isLeader));ee.useEffect(()=>{h(""),I("")},[a.id,a.status]);let W=L=>async()=>{I("");try{t(await L()),h("")}catch(H){throw I((0,On.failureMessage)(H,"\u64CD\u4F5C\u5931\u8D25\u3002")),H}},ne=L=>(0,k.jsx)(Gs,{step:L,steps:r,member:N.members.find(H=>H.id===L.memberId),memberState:L.sessionId?m[L.sessionId]:void 0,open:c===L.id,onToggle:()=>o(H=>H===L.id?"":L.id),onOpenSession:n,onComplete:H=>W(()=>ye.aiTeamsRepository.completeStep(a.id,L.id,H))(),actions:i},L.id),me=s?r.filter(L=>L.memberId===s):r,V=s?"timeline":g;return(0,k.jsxs)("div",{className:"task-board-team-run","data-status":a.status,children:[(0,k.jsxs)("div",{className:"task-board-team-run-head",children:[(0,k.jsx)("span",{className:"task-board-team-run-kicker",children:"\u56E2\u961F\u8FD0\u884C"}),(0,k.jsx)(Et.TeamAvatarStack,{members:N.members,size:"sm"}),(0,k.jsx)("strong",{children:N.name}),(0,k.jsx)(xe.WandBadge,{tone:f.tone,children:f.label}),(0,k.jsxs)("small",{children:["\u6B65\u6570 ",a.stepsUsed,"/",a.stepLimit]}),a.chatSessionId?(0,k.jsx)(xe.WandButton,{kind:"secondary",size:"small",onClick:()=>Bn.taskBoardController.open("","","teamchat",a.id),children:"\u6253\u5F00\u7FA4\u804A"}):null,T?(0,k.jsx)(pt,{id:"stop",state:i,kind:"danger",label:"\u505C\u6B62",pendingLabel:"\u505C\u6B62\u4E2D\u2026",onClick:W(()=>ye.aiTeamsRepository.stop(a.id))}):null]}),(0,k.jsx)("div",{className:"task-board-team-roster",role:"group","aria-label":"\u6210\u5458",children:M.map(L=>{let H=r.filter(D=>D.memberId===L.id&&D.status!=="skipped"),$=H.filter(D=>D.status==="done").length;return(0,k.jsxs)("button",{type:"button",className:"task-board-team-roster-item","aria-pressed":s===L.id,title:s===L.id?"\u663E\u793A\u5168\u90E8\u6210\u5458":`\u53EA\u770B${L.name}`,onClick:()=>u(D=>D===L.id?"":L.id),children:[(0,k.jsx)(Et.TeamAvatar,{member:L,state:Xs(L,r,m),showProvider:!0}),(0,k.jsx)("span",{children:L.name}),(0,k.jsx)("small",{children:H.length?`${$}/${H.length}`:"\u5F85\u547D"})]},L.id)})}),y||a.statusDetail?(0,k.jsxs)("div",{className:"task-board-team-banner","data-attention":y||void 0,children:[a.statusDetail?(0,k.jsx)("p",{children:a.statusDetail}):null,y?(0,k.jsxs)("div",{className:"task-board-team-respond",children:[(0,k.jsx)("textarea",{className:"resize-none task-board-detail-body",rows:3,value:x,placeholder:a.status==="awaiting_approval"?"\u9000\u56DE\u65F6\u5199\u4E0B\u4FEE\u6539\u610F\u89C1":"\u56DE\u590D\u8D1F\u8D23\u4EBA\u7684\u95EE\u9898\u6216\u8865\u5145\u8981\u6C42","aria-label":a.status==="awaiting_approval"?"\u9000\u56DE\u610F\u89C1":"\u56DE\u590D\u8D1F\u8D23\u4EBA",onChange:L=>h(L.currentTarget.value)}),(0,k.jsx)("div",{className:"task-board-native-editor-actions",children:a.status==="awaiting_approval"?(0,k.jsxs)(k.Fragment,{children:[(0,k.jsx)(pt,{id:"reject",state:i,label:"\u9000\u56DE\u91CD\u505A",pendingLabel:"\u9000\u56DE\u4E2D\u2026",disabled:!x.trim(),onClick:W(()=>ye.aiTeamsRepository.reject(a.id,x))}),(0,k.jsx)(pt,{id:"approve",state:i,kind:"primary",label:"\u6279\u51C6\u8BA1\u5212",pendingLabel:"\u6279\u51C6\u4E2D\u2026",onClick:W(()=>ye.aiTeamsRepository.approve(a.id))})]}):(0,k.jsxs)(k.Fragment,{children:[R?(0,k.jsx)(pt,{id:"continue",state:i,label:"\u8FFD\u52A0 10 \u6B65\u7EE7\u7EED",pendingLabel:"\u7EE7\u7EED\u4E2D\u2026",onClick:W(()=>ye.aiTeamsRepository.continueRun(a.id,10))}):null,(0,k.jsx)(pt,{id:"reply",state:i,kind:"primary",label:"\u53D1\u9001\u56DE\u590D",pendingLabel:"\u53D1\u9001\u4E2D\u2026",disabled:!x.trim(),onClick:W(()=>ye.aiTeamsRepository.reply(a.id,x))})]})})]}):null]}):null,b?(0,k.jsx)("p",{className:"task-board-team-error",role:"alert",children:b}):null,s?null:(0,k.jsx)(xe.WandStretchTabs,{tabs:$n,value:g,ariaLabel:"\u8FD0\u884C\u89C6\u56FE",className:"task-board-team-views",onValueChange:v}),(0,k.jsx)("div",{className:"task-board-team-views-stack",children:$n.map(L=>(0,k.jsxs)("div",{className:"task-board-team-view","data-view":L.value,"data-hidden":V!==L.value||void 0,inert:V!==L.value,children:[L.value==="chat"?(0,k.jsx)(mt,{detail:e,onChange:t,onOpenSession:n}):null,L.value==="timeline"?(0,k.jsx)("ol",{className:"task-board-team-steps",children:me.map(ne)}):null,L.value==="members"?(0,k.jsx)("div",{className:"task-board-team-groups",children:M.map(H=>{let $=r.filter(D=>D.memberId===H.id);return(0,k.jsxs)("section",{className:"task-board-team-group",children:[(0,k.jsxs)("header",{children:[(0,k.jsx)("strong",{children:H.name}),(0,k.jsx)("small",{children:H.duty})]}),$.length?(0,k.jsx)("ol",{className:"task-board-team-steps",children:$.map(ne)}):(0,k.jsx)("p",{className:"task-board-team-run-detail",children:"\u8FD8\u6CA1\u6709\u5206\u5230\u6B65\u9AA4\u3002"})]},H.id)})}):null]},L.value))})]})}function jn({taskId:e,refreshKey:t=0,onOpenSession:n}){let[a,r]=ee.useState(null),m=a?.run.id??"",i=ee.useCallback(async()=>{try{let c=await ye.aiTeamsRepository.runsForTask(e);r(c[0]?await ye.aiTeamsRepository.detail(c[0].id):null)}catch{}},[e]);return ee.useEffect(()=>{r(null)},[e]),ee.useEffect(()=>{i()},[i,t]),ee.useEffect(()=>(0,ye.subscribeAiTeamRunChanges)(c=>{(c.taskId===e||c.runId===m)&&i()}),[m,i,e]),ee.useEffect(()=>(0,ye.subscribeAiTeamDefinitionChanges)(c=>{c===a?.run.teamId&&i()}),[a?.run.teamId,i]),a?(0,k.jsx)("section",{className:"task-board-team","aria-label":"AI \u56E2\u961F",children:(0,k.jsx)(ka,{detail:a,onChange:r,onOpenSession:n})}):null}var xr=w(ua()),La=w(Ta()),aa=w(Kn()),ie=w(Yn()),kr=w(Ra()),B=w(Ae()),ce=w(lt()),ke=w(Tt());var at=w(Re()),Nt=w(Ae());var Gn=w(Ze());function Yt(e){return e===0?"\u9996\u9009":`\u5907\u7528 ${e+1}`}function Aa(e){if(e.length>=4)return e;let t=e[e.length-1];return[...e,t?{...t}:(0,Gn.createDefaultIssueAgent)()]}function Ea(e,t,n){return e.map((a,r)=>r===t?{...n}:a)}function Sa(e,t){return e.length<=1?e:e.filter((n,a)=>a!==t)}function Na(e,t,n){let a=t+n;if(a<0||a>=e.length)return e;let r=[...e],m=r[t];return r[t]=r[a],r[a]=m,r}function Xt(e){let t=new Set,n=[];return e.forEach((a,r)=>{let m=Ba(a);t.has(m)?n.push(r):t.add(m)}),n}function Ve(e){if(e.length===0)return"\u81F3\u5C11\u4FDD\u7559 1 \u4E2A\u6267\u884C\u5019\u9009\u3002";if(e.length>4)return`\u6267\u884C\u5019\u9009\u6700\u591A ${4} \u4E2A\u3002`;let t=Xt(e);return t.length>0?`\u5019\u9009\u300C${Yt(t[0])}\u300D\u4E0E\u66F4\u9760\u524D\u7684\u914D\u7F6E\u76F8\u540C\uFF0C\u6539\u4E00\u9879\u5373\u53EF\u3002`:""}var Zn=w(Qn());var G=w(Z());function Js({id:e,agent:t,index:n,total:a,catalog:r,providerOptions:m,disabled:i,duplicate:c,ariaPrefix:o,structuredOnly:s=!1,onChange:u,onMove:g,onRemove:v}){let x=at.useRef(null),h=Yt(n);return(0,G.jsx)("div",{ref:x,"data-candidate-id":e,className:"wand-team-candidate","data-candidate-index":n,"data-duplicate":c||void 0,children:(0,G.jsxs)("div",{className:"wand-team-candidate-inner",children:[(0,G.jsx)("span",{className:"wand-team-candidate-tag",children:h}),(0,G.jsx)("div",{className:"wand-ai-team-member-agent",children:(0,G.jsx)(Zn.AgentFields,{agent:t,disabled:i,catalog:r,providerOptions:m,ariaPrefix:`${o} ${h}`,showKind:!s,onChange:b=>u(s?{...b,kind:"structured"}:b)})}),(0,G.jsxs)("div",{className:"wand-team-candidate-tools",children:[(0,G.jsx)("button",{type:"button",className:"wand-team-candidate-tool","data-tool":"up",title:"\u4E0A\u79FB","aria-label":`\u628A${h}\u4E0A\u79FB`,disabled:i||n===0,onClick:()=>g(-1),children:(0,G.jsx)(Nt.WandIcon,{name:"chevronUp",size:14})}),(0,G.jsx)("button",{type:"button",className:"wand-team-candidate-tool","data-tool":"down",title:"\u4E0B\u79FB","aria-label":`\u628A${h}\u4E0B\u79FB`,disabled:i||n===a-1,onClick:()=>g(1),children:(0,G.jsx)(Nt.WandIcon,{name:"chevronDown",size:14})}),(0,G.jsx)("button",{type:"button",className:"wand-team-candidate-tool","data-tool":"remove",title:a<=1?"\u81F3\u5C11\u8981\u4FDD\u7559 1 \u4E2A\u5019\u9009":"\u5220\u9664\u8BE5\u5019\u9009","aria-label":`\u5220\u9664${h}`,disabled:i||a<=1,onClick:v,children:(0,G.jsx)(Nt.WandIcon,{name:"close",size:14})})]})]})})}function ut({agents:e,label:t,catalog:n,providerOptions:a,disabled:r,structuredOnly:m=!1,onChange:i}){let c=at.useRef(null),o=at.useRef(new Map),s=at.useRef([]);for(;s.current.length<e.length;)s.current.push(`c_${Math.random().toString(36).slice(2,9)}`);s.current.length>e.length&&(s.current=s.current.slice(0,e.length)),at.useLayoutEffect(()=>{let b=c.current;if(!b)return;let I=Array.from(b.children).filter(R=>R instanceof HTMLElement&&R.hasAttribute("data-candidate-id")),f=new Map;I.forEach(R=>{let y=R.getAttribute("data-candidate-id");y&&f.set(y,R.getBoundingClientRect().top)});let T=typeof window<"u"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches;I.forEach(R=>{let y=R.getAttribute("data-candidate-id");if(!y)return;let N=o.current.get(y),M=f.get(y);if(N!==void 0&&M!==void 0&&N!==M){if(T){R.style.transform="",R.style.transition="";return}let W=N-M;R.style.transform=`translateY(${W}px)`,R.style.transition="none",requestAnimationFrame(()=>{R.style.transition="transform var(--motion-normal) var(--ease-in-out-smooth)",R.style.transform=""})}}),o.current=f});let u=Xt(e),g=Ve(e),v=()=>{let b=Aa(e);b!==e&&(s.current.push(`c_${Math.random().toString(36).slice(2,9)}`),i(b))},x=b=>{e.length<=1||(s.current.splice(b,1),i(Sa(e,b)))},h=(b,I)=>{let f=b+I;if(f<0||f>=e.length)return;let T=s.current[b];s.current[b]=s.current[f],s.current[f]=T,i(Na(e,b,I))};return(0,G.jsxs)("div",{ref:c,className:"wand-team-candidates",role:"group","aria-label":`${t} \u7684\u6267\u884C\u5019\u9009`,children:[(0,G.jsxs)("header",{className:"wand-team-candidates-head",children:[(0,G.jsx)("span",{children:"\u6267\u884C\u5019\u9009"}),(0,G.jsxs)("small",{children:["\u9996\u9009\u4E0D\u53EF\u7528\u65F6\u6309\u987A\u5E8F\u81EA\u52A8\u964D\u7EA7\uFF0C\u6700\u591A ",4," \u4E2A"]})]}),e.map((b,I)=>{let f=s.current[I]||`row-${I}`;return(0,G.jsx)(Js,{id:f,agent:b,index:I,total:e.length,catalog:n,providerOptions:a,disabled:r,duplicate:u.includes(I),ariaPrefix:t,structuredOnly:m,onChange:T=>i(Ea(e,I,T)),onMove:T=>h(I,T),onRemove:()=>x(I)},f)}),(0,G.jsxs)("div",{className:"wand-team-candidates-foot",children:[(0,G.jsxs)("button",{type:"button",className:"wand-team-candidate-add",disabled:r||e.length>=4,title:e.length>=4?`\u5DF2\u7ECF\u5230 ${4} \u4E2A\u5019\u9009\u4E0A\u9650`:"\u5728\u672B\u5C3E\u52A0\u4E00\u4E2A\u5907\u7528\u5019\u9009",onClick:v,children:[(0,G.jsx)(Nt.WandIcon,{name:"plus",size:14}),(0,G.jsx)("span",{children:"\u6DFB\u52A0\u5019\u9009"})]}),g?(0,G.jsx)("small",{className:"wand-team-candidate-error",role:"alert",children:g}):null]})]})}var rt=w(Re());var Ge=w(Ae());var nt=w(Re());var Oe=w(Re());var Ct=w($t()),tr=w(Ae()),ar=w(Gt()),Ee=w(Z()),Qs={communication:"\u6C9F\u901A",workflow:"\u5DE5\u4F5C\u65B9\u5F0F",focus:"\u8FD1\u671F\u5173\u6CE8"};function nr({active:e}){let[t,n]=Oe.useState(null),[a,r]=Oe.useState(null),[m,i]=Oe.useState({}),[c,o]=Oe.useState(""),s=Oe.useRef(0);Oe.useEffect(()=>{let g=++s.current;if(r(null),!!e)return n(null),(0,Ct.requestJson)("/api/user-memory").then(v=>{s.current===g&&(n(v),o(""))}).catch(v=>{s.current===g&&o(v instanceof Error?v.message:"\u8BFB\u53D6\u8BB0\u5FC6\u5931\u8D25\u3002")}),()=>{s.current++}},[e]);let u=async g=>{if(!t||a)return;let v=++s.current;r(g),i(x=>({...x,[g]:""})),o("");try{let x=await(0,Ct.requestJson)(g==="refresh"?"/api/user-memory/refresh":"/api/user-memory",g==="toggle"?(0,Ct.jsonBody)({enabled:!t.enabled},"PATCH"):{method:g==="clear"?"DELETE":"POST"});if(s.current!==v)return;n(x),i(h=>({...h,[g]:g==="toggle"?x.enabled?"\u5DF2\u5F00\u542F":"\u5DF2\u6682\u505C":g==="clear"?"\u5DF2\u6E05\u7A7A":x.updated?"\u5DF2\u66F4\u65B0":"\u6682\u65E0\u65B0\u8BB0\u5FC6"})),(0,ar.notifySiliconEmployeeDefinitionChanged)(qa)}catch(x){if(s.current!==v)return;i(h=>({...h,[g]:"\u64CD\u4F5C\u5931\u8D25"})),o(x instanceof Error?x.message:"\u8BB0\u5FC6\u64CD\u4F5C\u5931\u8D25\u3002")}finally{s.current===v&&r(null)}};return(0,Ee.jsxs)("section",{className:"wand-employee-memory","aria-label":"\u7528\u6237\u77ED\u671F\u8BB0\u5FC6",children:[(0,Ee.jsx)("strong",{children:"\u7528\u6237\u77ED\u671F\u8BB0\u5FC6"}),(0,Ee.jsx)("p",{children:"\u53EA\u53C2\u8003\u6700\u8FD1 30 \u5929\u7684\u6709\u6548\u63D0\u793A\u8BCD\u4E0E\u6210\u529F\u7684\u5173\u952E\u64CD\u4F5C\uFF0C\u6BCF\u5929\u6574\u7406\u4E00\u6B21\u3002\u5185\u5BB9\u4F1A\u7ECF\u654F\u611F\u4FE1\u606F\u8FC7\u6EE4\uFF0C\u6574\u7406\u4ECD\u7531\u7CFB\u7EDF\u8FD0\u7EF4\u5458\u5DE5\u7684 CLI \u5019\u9009\u6267\u884C\uFF1B\u8BF7\u52FF\u63D0\u4EA4\u51ED\u636E\u3002\u4E0D\u4F1A\u4FEE\u6539\u5DF2\u6709\u4F1A\u8BDD\u3001\u5176\u4ED6\u5458\u5DE5\u6216\u5DE5\u5177\u6743\u9650\u3002"}),(0,Ee.jsx)("div",{className:"wand-employee-memory-actions",children:["toggle","refresh","clear"].map(g=>(0,Ee.jsx)(tr.WandButton,{size:"small",kind:"ghost",disabled:!t||!!a||g==="refresh"&&!t.enabled,"aria-busy":a===g,onClick:()=>{u(g)},children:a===g?"\u5904\u7406\u4E2D\u2026":m[g]||(g==="toggle"?t?.enabled?"\u6682\u505C\u8BB0\u5FC6":"\u6062\u590D\u8BB0\u5FC6":g==="refresh"?"\u6574\u7406\u8BB0\u5FC6":"\u6E05\u7A7A\u8BB0\u5FC6")},g))}),(0,Ee.jsx)("p",{"aria-live":"polite",children:t?`${t.enabled?"\u5DF2\u5F00\u542F":"\u5DF2\u6682\u505C"} \xB7 ${t.eventCount} \u6761\u8FD1\u671F\u8BB0\u5F55${t.profile?` \xB7 \u6700\u8FD1\u6574\u7406 ${new Date(t.profile.generatedAt).toLocaleString()}`:" \xB7 \u5C1A\u672A\u5F62\u6210\u504F\u597D"}`:"\u6B63\u5728\u8BFB\u53D6\u8BB0\u5FC6\u2026"}),t?.profile?.preferences.length?(0,Ee.jsx)("ul",{children:t.profile.preferences.map((g,v)=>(0,Ee.jsxs)("li",{children:[(0,Ee.jsxs)("span",{children:[Qs[g.category],"\uFF1A"]}),g.text]},`${g.category}-${v}`))}):null,c||t?.lastError?(0,Ee.jsx)("p",{role:"alert",className:"wand-team-candidate-error",children:c||t?.lastError}):null]})}var Se=w(Re()),Ca=w($t()),Jt=w(Ae()),ve=w(Z()),Zs=180;function rr({employeeId:e,active:t}){let[n,a]=Se.useState(null),[r,m]=Se.useState(""),[i,c]=Se.useState(null),[o,s]=Se.useState({refresh:"",clear:""}),[u,g]=Se.useState(!1),[v,x]=Se.useState(""),h=Se.useRef(0),b=`/api/silicon-employees/${encodeURIComponent(e)}/knowledge`;Se.useEffect(()=>{let f=++h.current;if(g(!1),c(null),!t)return;a(null);let T=setTimeout(()=>{(0,Ca.requestJson)(`${b}?q=${encodeURIComponent(r)}`).then(R=>{h.current===f&&(a(R),x(""))}).catch(R=>{h.current===f&&x(R instanceof Error?R.message:"\u8BFB\u53D6\u77E5\u8BC6\u5E93\u5931\u8D25\u3002")})},r?Zs:0);return()=>{clearTimeout(T),h.current++}},[t,e,r]);let I=async f=>{if(!n||i)return;if(f==="clear"&&!u){g(!0);return}let T=++h.current;c(f),x(""),s(R=>({...R,[f]:""}));try{let R=await(0,Ca.requestJson)(f==="clear"?b:`${b}?q=${encodeURIComponent(r)}`,{method:f==="clear"?"DELETE":"GET"});if(h.current!==T)return;a(R),g(!1),s(y=>({...y,[f]:f==="clear"?"\u5DF2\u6E05\u7A7A":"\u5DF2\u5237\u65B0"}))}catch(R){if(h.current!==T)return;s(y=>({...y,[f]:"\u64CD\u4F5C\u5931\u8D25"})),x(R instanceof Error?R.message:"\u77E5\u8BC6\u5E93\u64CD\u4F5C\u5931\u8D25\u3002")}finally{h.current===T&&c(null)}};return(0,ve.jsxs)("section",{className:"wand-employee-memory","aria-label":"\u5458\u5DE5\u72EC\u7ACB\u77E5\u8BC6\u5E93",children:[(0,ve.jsx)("strong",{children:"\u81EA\u5DF1\u7684\u77E5\u8BC6\u5E93"}),(0,ve.jsx)("p",{children:"\u5BF9\u8FD9\u4F4D\u5458\u5DE5\u8BF4\u300C\u8BB0\u4E00\u4E0B\uFF1A\u2026\u300D\u5373\u53EF\u4FDD\u5B58\uFF1B\u53EA\u5C5E\u4E8E\u8FD9\u4F4D\u5458\u5DE5\uFF0C\u6539\u540D\u3001\u6362\u4F1A\u8BDD\u4ECD\u4FDD\u7559\uFF0C\u4E0D\u968F\u77ED\u671F\u4E60\u60EF\u8FC7\u671F\u3002\u6BCF\u6761\u6700\u591A4000\u5B57\u7B26\uFF0C\u4E0D\u4FDD\u5B58\u51ED\u636E\u3002"}),(0,ve.jsx)("div",{className:"wand-employee-knowledge-actions",children:["refresh","clear"].map(f=>(0,ve.jsx)(Jt.WandButton,{size:"small",kind:"ghost",disabled:!n||!!i,"aria-busy":i===f,onClick:()=>{I(f)},children:i===f?"\u5904\u7406\u4E2D\u2026":f==="clear"&&u?"\u786E\u8BA4\u6E05\u7A7A":o[f]||(f==="clear"?"\u6E05\u7A7A\u77E5\u8BC6\u5E93":"\u5237\u65B0\u77E5\u8BC6")},f))}),(0,ve.jsx)("p",{role:"status",children:u?"\u518D\u6B21\u70B9\u51FB\u786E\u8BA4\uFF0C\u53EA\u6E05\u7A7A\u6B64\u5458\u5DE5\u3002":"\u660E\u786E\u77E5\u8BC6\u4F1A\u4FDD\u7559\uFF0C\u76F4\u5230\u4F60\u5220\u9664\u3002"}),(0,ve.jsx)(Jt.WandSearchField,{value:r,onValueChange:m,label:"\u641C\u7D22\u8FD9\u4F4D\u5458\u5DE5\u7684\u77E5\u8BC6",placeholder:"\u641C\u7D22\u81EA\u5DF1\u7684\u77E5\u8BC6\u2026"}),(0,ve.jsx)("p",{"aria-live":"polite",children:n?`${n.total} / ${n.maxEntries} \u6761\u77E5\u8BC6`:"\u6B63\u5728\u8BFB\u53D6\u2026"}),(0,ve.jsxs)("ul",{className:"wand-employee-knowledge-list",children:[n?.entries.map(f=>(0,ve.jsx)("li",{children:f.content},f.id)),n?.entries.length===0?(0,ve.jsx)("li",{children:r?"\u6CA1\u6709\u5339\u914D\u7684\u77E5\u8BC6\u3002":"\u8FD8\u6CA1\u6709\u660E\u786E\u8BB0\u5F55\u7684\u77E5\u8BC6\u3002"}):null]}),v?(0,ve.jsx)("p",{role:"alert",className:"wand-team-candidate-error",children:v}):null]})}var Fe=w(Ae());var or=w(Re()),Ye=w(lt()),dr=w(ir()),Qt=w(Ae());var be=w(Z());function Ia({employee:e,size:t="md",className:n=""}){let a=e.avatar?.startsWith("data:image/")?e.avatar:"",r=`wand-team-avatar ${n}`.trim();return(0,be.jsx)("span",{className:r,"data-size":t,title:e.name,children:(0,be.jsx)("span",{className:"wand-team-avatar-face",children:a?(0,be.jsx)("img",{src:a,alt:""}):(0,be.jsx)(Ye.PixelCat,{coat:(0,Ye.memberCoatIndex)(e)})})})}function Zt({avatar:e,name:t,disabled:n,onChange:a}){let r=or.useRef(null),m=(0,Ye.memberCoatIndex)({id:"custom",name:t,avatar:e}),i=c=>{let o=c.target.files?.[0];o&&(0,Ye.shrinkAvatarImage)(o,ja).then(s=>{a(s)}).catch(s=>{console.error("\u7F29\u5C0F\u5934\u50CF\u5931\u8D25",s)})};return(0,be.jsxs)("div",{className:"wand-team-avatar-picker",role:"group","aria-label":"\u5458\u5DE5\u5934\u50CF",children:[(0,be.jsx)(Ia,{employee:{id:"preview",name:t,avatar:e},size:"lg"}),dr.CAT_COATS.map((c,o)=>(0,be.jsx)("button",{type:"button",className:"wand-team-coat",title:c.name,"aria-label":c.name,"aria-pressed":!e.startsWith("data:")&&m===o,disabled:n,onClick:()=>a(`cat:${o}`),children:(0,be.jsx)(Ye.PixelCat,{coat:o})},c.name)),(0,be.jsx)("button",{type:"button",className:"wand-team-coat is-upload",title:"\u4E0A\u4F20\u5934\u50CF\u56FE\u7247","aria-label":"\u4E0A\u4F20\u5934\u50CF\u56FE\u7247","aria-pressed":e.startsWith("data:"),disabled:n,onClick:()=>r.current?.click(),children:(0,be.jsx)(Qt.WandIcon,{name:"image",size:14})}),(0,be.jsx)("input",{ref:r,type:"file",accept:"image/*",hidden:!0,onChange:i}),e?(0,be.jsx)(Qt.WandButton,{kind:"ghost",size:"small",disabled:n,onClick:()=>a(""),children:"\u91CD\u7F6E"}):null]})}var lr=w(Ze());var O=w(Z());function cr({employee:e,catalog:t,providerOptions:n,onSave:a,onArchive:r,onUnarchive:m,onDelete:i}){let[c,o]=nt.useState(!1),[s,u]=nt.useState(e),[g,v]=nt.useState(!1),[x,h]=nt.useState(null);nt.useEffect(()=>{u(e)},[e]);let b=()=>{c?(u(e),h(null),o(!1)):o(!0)},I=async()=>{let M=s.agents.some(W=>W.kind!=="structured")?"\u7845\u57FA\u5458\u5DE5\u53EA\u80FD\u4F7F\u7528\u7ED3\u6784\u5316\u5019\u9009\u3002":Ve(s.agents);if(M){h(M);return}if(!s.name.trim()){h("\u5458\u5DE5\u540D\u5B57\u4E0D\u80FD\u4E3A\u7A7A\u3002");return}try{v(!0),h(null),await a(s),o(!1)}catch(W){h(W instanceof Error?W.message:String(W))}finally{v(!1)}},f=!!e.archivedAt,T=Pt(e),R=pa(e),y=R?Ka:Ua;return(0,O.jsxs)("article",{className:`wand-team-member wand-employee-card${f?" is-archived":""}${T?" is-system":""}`,"data-open":c||void 0,"data-employee-id":e.id,onKeyDown:M=>{M.key==="Escape"&&!M.defaultPrevented&&c&&!g&&(M.preventDefault(),b())},children:[(0,O.jsxs)("button",{type:"button",className:"wand-team-member-head","aria-expanded":c,onClick:b,children:[(0,O.jsx)(Ia,{employee:e,size:"lg"}),(0,O.jsxs)("span",{className:"wand-team-member-copy",children:[(0,O.jsxs)("strong",{children:[e.name,T?(0,O.jsx)("em",{className:"wand-employee-system-tag",children:y}):null,f?(0,O.jsx)("em",{className:"wand-employee-archived-tag",children:"\u5DF2\u5F52\u6863"}):null]}),(0,O.jsx)("small",{children:e.duty||"\u8FD8\u6CA1\u5199\u804C\u8D23"}),(0,O.jsxs)("span",{className:"wand-team-member-agent",children:[e.agents[0]?(0,lr.issueAgentProviderModelLine)(e.agents[0],t):"\u672A\u914D\u7F6E\u5019\u9009",e.agents.length>1?` (+${e.agents.length-1} \u4E2A\u5907\u7528)`:null]})]}),(0,O.jsx)(Fe.WandIcon,{name:"chevronDown",size:14})]}),(0,O.jsx)("div",{className:"wand-team-member-body",inert:!c,children:(0,O.jsxs)("div",{className:"wand-team-member-inner",children:[T?(0,O.jsxs)("div",{className:"wand-employee-system-note",role:"note",children:[(0,O.jsx)("strong",{children:y}),(0,O.jsx)("span",{children:R?"\u9009\u62E9 CLI \u6216\u672A\u9009\u62E9\u5458\u5DE5\u65F6\u4F7F\u7528\u8FD9\u4E2A\u9ED8\u8BA4\u89D2\u8272\uFF1B\u4F60\u9009\u7684\u5DE5\u5177\u3001\u6A21\u578B\u4E0E\u6743\u9650\u4FDD\u6301\u4E0D\u53D8\u3002\u540D\u5B57\u4E0E\u57FA\u7840\u8BBE\u5B9A\u56FA\u5B9A\uFF0C\u5DE5\u4F5C\u98CE\u683C\u7531\u77ED\u671F\u8BB0\u5FC6\u5B9A\u671F\u8C03\u6574\uFF1B\u4E0B\u9762\u7684\u5019\u9009\u7528\u4E8E\u76F4\u63A5\u627E\u8FD9\u4F4D\u5458\u5DE5\u6216\u672A\u914D\u7F6E\u5DE5\u5177\u7684\u4EFB\u52A1\u3002":"Wand \u5185\u7F6E\u5458\u5DE5\uFF1A\u540D\u5B57\u3001\u804C\u8D23\u4E0E\u89D2\u8272\u8BBE\u5B9A\u7531\u670D\u52A1\u7AEF\u56FA\u5B9A\uFF0C\u4E0D\u53EF\u4FEE\u6539\u3001\u4E0D\u53EF\u5220\u9664\uFF1BWand \u81EA\u5DF1\u7684 AI \u8C03\u7528\uFF08Commit\u3001\u6807\u9898\u3001\u63D0\u793A\u8BCD\u4F18\u5316\uFF09\u90FD\u6309\u4E0B\u9762\u7684\u5019\u9009\u94FE\u6267\u884C\u3002"})]}):(0,O.jsxs)(O.Fragment,{children:[(0,O.jsxs)("div",{className:"wand-settings-field",children:[(0,O.jsx)("label",{className:"wand-settings-label",htmlFor:`employee-${e.id}-name`,children:"\u540D\u5B57"}),(0,O.jsx)("input",{id:`employee-${e.id}-name`,type:"text",className:"wand-settings-input",value:s.name,placeholder:"\u5458\u5DE5\u540D\u5B57",disabled:g,onChange:M=>u({...s,name:M.target.value})})]}),(0,O.jsx)(Zt,{avatar:s.avatar,name:s.name,disabled:g,onChange:M=>u({...s,avatar:M})}),(0,O.jsxs)("div",{className:"wand-settings-field",children:[(0,O.jsx)("label",{className:"wand-settings-label",htmlFor:`employee-${e.id}-duty`,children:"\u804C\u8D23"}),(0,O.jsx)("textarea",{id:`employee-${e.id}-duty`,className:"wand-settings-input resize-none",rows:2,value:s.duty,placeholder:"\u4E00\u53E5\u8BDD\u804C\u8D23\uFF1A\u5728\u4FA7\u680F\u3001\u9009\u62E9\u5668\u548C\u7F72\u540D\u4E2D\u663E\u793A",disabled:g,onChange:M=>u({...s,duty:M.target.value})})]}),(0,O.jsxs)("div",{className:"wand-settings-field",children:[(0,O.jsx)("label",{className:"wand-settings-label",htmlFor:`employee-${e.id}-prompt`,children:"\u89D2\u8272\u8BBE\u5B9A (Prompt)"}),(0,O.jsx)("textarea",{id:`employee-${e.id}-prompt`,className:"wand-settings-input resize-none",rows:4,value:s.prompt,placeholder:"\u8BBE\u5B9A\u89D2\u8272\u7684\u4E13\u4E1A\u80FD\u529B\u3001\u884C\u4E3A\u5B88\u5219\u4E0E\u4EA4\u4ED8\u4E60\u60EF\uFF08\u521B\u5EFA\u4F1A\u8BDD\u65F6\u4F5C\u4E3A\u7CFB\u7EDF\u63D0\u793A\u751F\u6548\uFF09",disabled:g,onChange:M=>u({...s,prompt:M.target.value})})]})]}),R?(0,O.jsxs)(O.Fragment,{children:[(0,O.jsx)(nr,{active:c}),(0,O.jsxs)("div",{className:"wand-settings-field",children:[(0,O.jsx)("label",{className:"wand-settings-label",htmlFor:`employee-${e.id}-prompt`,children:"\u5F53\u524D\u89D2\u8272\u8BBE\u5B9A"}),(0,O.jsx)("textarea",{id:`employee-${e.id}-prompt`,className:"wand-settings-input resize-none",rows:6,value:e.prompt,readOnly:!0})]})]}):null,(0,O.jsx)(rr,{employeeId:e.id,active:c}),(0,O.jsx)(ut,{agents:s.agents,label:s.name||"\u5458\u5DE5",catalog:t,providerOptions:n,disabled:g,structuredOnly:!0,onChange:M=>u({...s,agents:M})}),x?(0,O.jsx)("div",{className:"wand-team-candidate-error",role:"alert",children:x}):null,(0,O.jsxs)("div",{className:"wand-team-member-actions",children:[(0,O.jsx)(Fe.WandButton,{kind:"primary",size:"small",disabled:g,onClick:I,children:"\u4FDD\u5B58\u4FEE\u6539"}),(0,O.jsx)(Fe.WandButton,{kind:"ghost",size:"small",disabled:g,onClick:b,children:"\u53D6\u6D88"}),T?null:f?(0,O.jsx)(Fe.WandButton,{kind:"ghost",size:"small",disabled:g,onClick:m,children:"\u6062\u590D"}):(0,O.jsx)(Fe.WandButton,{kind:"ghost",size:"small",disabled:g,onClick:r,children:"\u5F52\u6863"}),T?null:(0,O.jsxs)(Fe.WandButton,{kind:"ghost",size:"small",disabled:g,onClick:i,children:[(0,O.jsx)(Fe.WandIcon,{name:"trash",size:14,slot:"start"}),"\u5220\u9664"]})]})]})})]})}var Ne=w(Re()),Be=w(Ae());var mr=w(Ze()),za=w(Gt()),q=w(Z());function pr({catalog:e,providerOptions:t,onSave:n,onCancel:a}){let[r,m]=Ne.useState(""),[i,c]=Ne.useState(!1),[o,s]=Ne.useState(""),[u,g]=Ne.useState(""),[v,x]=Ne.useState(""),[h,b]=Ne.useState(""),[I,f]=Ne.useState(()=>[{...(0,mr.createDefaultIssueAgent)(),kind:"structured"}]),[T,R]=Ne.useState(!1),[y,N]=Ne.useState(!1),[M,W]=Ne.useState(null),ne=$=>$ instanceof Error?$.message:String($),me=()=>{if(!o.trim())return W("\u5458\u5DE5\u540D\u5B57\u4E0D\u80FD\u4E3A\u7A7A\uFF1B\u4E5F\u53EF\u4EE5\u7559\u7A7A\u8BA9 AI \u6309\u671F\u671B\u751F\u6210\u3002"),null;let $=I.some(D=>D.kind!=="structured")?"\u7845\u57FA\u5458\u5DE5\u53EA\u80FD\u4F7F\u7528\u7ED3\u6784\u5316\u5019\u9009\u3002":Ve(I);return $?(W($),null):{name:o,duty:u,prompt:v,avatar:h,agents:I}},V=async()=>{if(i&&o.trim()){let $=me();if(!$)return;try{R(!0),W(null),await n($)}catch(D){W(ne(D))}finally{R(!1)}return}if(!r.trim()){W("\u5148\u8BF4\u8BF4\u4F60\u5BF9\u8FD9\u4F4D\u5458\u5DE5\u7684\u671F\u671B\u5427\u3002");return}try{R(!0),W(null);let $=await za.siliconEmployeesRepository.draft(r);await n({name:$.name,duty:$.duty,prompt:$.prompt,avatar:"",agents:[$.agent]})}catch($){W(ne($))}finally{R(!1)}},L=async()=>{if(!r.trim()){W("\u5148\u5728\u4E0A\u9762\u5199\u4E0B\u4F60\u7684\u671F\u671B\uFF0C\u518D\u8BA9 AI \u8D77\u8349\u3002");return}try{N(!0),W(null);let $=await za.siliconEmployeesRepository.draft(r);s($.name),g($.duty),x($.prompt),b(""),f([$.agent])}catch($){W(ne($))}finally{N(!1)}},H=i&&o.trim().length>0;return(0,q.jsx)("div",{className:"wand-team-member wand-employee-card is-new","data-open":"true",children:(0,q.jsx)("div",{className:"wand-team-member-body",children:(0,q.jsxs)("div",{className:"wand-team-member-inner",children:[(0,q.jsxs)("div",{className:"wand-settings-field",children:[(0,q.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-expectation",children:"\u60F3\u8981\u4EC0\u4E48\u6837\u7684\u5458\u5DE5"}),(0,q.jsx)("textarea",{id:"new-employee-expectation",className:"wand-settings-input resize-none",rows:3,value:r,placeholder:"\u8BF4\u8BF4\u4F60\u7684\u671F\u671B\uFF1A\u8BA9\u5B83\u8D1F\u8D23\u4EC0\u4E48\u3001\u9700\u8981\u4EC0\u4E48\u4E13\u957F\u3001\u5E0C\u671B\u5B83\u600E\u4E48\u4EA4\u4ED8\u2026\u2026",disabled:T,autoFocus:!0,onChange:$=>m($.target.value)}),(0,q.jsx)("p",{className:"wand-employee-hint",children:H?"\u5C06\u6309\u4E0B\u9762\u586B\u597D\u7684\u914D\u7F6E\u521B\u5EFA\u3002":"AI \u4F1A\u6309\u4F60\u7684\u671F\u671B\u914D\u597D\u540D\u5B57\u3001\u804C\u8D23\u3001\u89D2\u8272\u8BBE\u5B9A\u548C\u6267\u884C\u5DE5\u5177\u3002"})]}),(0,q.jsx)("div",{className:"wand-employee-advanced-toggle","data-open":i||void 0,children:(0,q.jsxs)(Be.WandButton,{kind:"ghost",size:"small","aria-expanded":i,disabled:T,onClick:()=>c($=>!$),children:[(0,q.jsx)(Be.WandIcon,{name:"sliders",size:14,slot:"start"}),"\u9AD8\u7EA7\u914D\u7F6E",(0,q.jsx)(Be.WandIcon,{name:"chevronDown",size:14,slot:"end"})]})}),(0,q.jsx)("section",{className:"wand-employee-advanced","data-open":i||void 0,"aria-hidden":!i,inert:!i,children:(0,q.jsxs)("div",{className:"wand-employee-advanced-inner",children:[(0,q.jsxs)("div",{className:"wand-settings-field",children:[(0,q.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-name",children:"\u540D\u5B57"}),(0,q.jsx)("input",{id:"new-employee-name",type:"text",className:"wand-settings-input",value:o,placeholder:"\u5458\u5DE5\u540D\u5B57",disabled:T||y,onChange:$=>s($.target.value)})]}),(0,q.jsx)(Zt,{avatar:h,name:o,disabled:T||y,onChange:b}),(0,q.jsxs)("div",{className:"wand-settings-field",children:[(0,q.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-duty",children:"\u804C\u8D23"}),(0,q.jsx)("textarea",{id:"new-employee-duty",className:"wand-settings-input resize-none",rows:2,value:u,placeholder:"\u4E00\u53E5\u8BDD\u804C\u8D23\uFF1A\u5728\u4FA7\u680F\u3001\u9009\u62E9\u5668\u548C\u7F72\u540D\u4E2D\u663E\u793A",disabled:T||y,onChange:$=>g($.target.value)})]}),(0,q.jsxs)("div",{className:"wand-settings-field",children:[(0,q.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-prompt",children:"\u89D2\u8272\u8BBE\u5B9A (Prompt)"}),(0,q.jsx)("textarea",{id:"new-employee-prompt",className:"wand-settings-input resize-none",rows:4,value:v,placeholder:"\u8BBE\u5B9A\u89D2\u8272\u7684\u4E13\u4E1A\u80FD\u529B\u3001\u884C\u4E3A\u5B88\u5219\u4E0E\u4EA4\u4ED8\u4E60\u60EF\uFF08\u521B\u5EFA\u4F1A\u8BDD\u65F6\u4F5C\u4E3A\u7CFB\u7EDF\u63D0\u793A\u751F\u6548\uFF09",disabled:T||y,onChange:$=>x($.target.value)})]}),(0,q.jsx)(ut,{agents:I,label:o||"\u65B0\u5458\u5DE5",catalog:e,providerOptions:t,disabled:T||y,structuredOnly:!0,onChange:f}),(0,q.jsx)("div",{className:"wand-employee-advanced-tools",children:(0,q.jsxs)(Be.WandButton,{kind:"ghost",size:"small",disabled:T||y,onClick:()=>{L()},children:[(0,q.jsx)(Be.WandIcon,{name:"spark",size:14,slot:"start"}),y?"\u751F\u6210\u4E2D\u2026":"\u6309\u671F\u671B\u751F\u6210"]})})]})}),M?(0,q.jsx)("div",{className:"wand-team-candidate-error",role:"alert",children:M}):null,(0,q.jsxs)("div",{className:"wand-team-member-actions",children:[(0,q.jsx)(Be.WandButton,{kind:"primary",size:"small",className:"wand-employee-create-submit","aria-busy":T||void 0,disabled:T,onClick:()=>{V()},children:T?"\u6B63\u5728\u521B\u5EFA\u2026":"\u521B\u5EFA\u5458\u5DE5"}),(0,q.jsx)(Be.WandButton,{kind:"ghost",size:"small",disabled:T,onClick:a,children:"\u53D6\u6D88"})]})]})})})}var Xe=w(Gt()),ur=w(Ta()),te=w(Z());function gr({catalog:e,providerOptions:t}){let{employees:n,loading:a,error:r,reload:m}=(0,Xe.useSiliconEmployees)({includeArchived:!0}),[i,c]=rt.useState(""),[o,s]=rt.useState(!1),[u,g]=rt.useState(!1),[v,x]=rt.useState(""),h=rt.useMemo(()=>n.filter(y=>{if(!o&&y.archivedAt)return!1;if(!i.trim())return!0;let N=i.toLowerCase();return y.name.toLowerCase().includes(N)||y.duty.toLowerCase().includes(N)||y.prompt.toLowerCase().includes(N)}),[n,o,i]),b=async y=>{await Xe.siliconEmployeesRepository.create(y),g(!1),m()},I=async(y,N)=>{let M=n.find(W=>W.id===y);M&&(await Xe.siliconEmployeesRepository.update(y,Pt(M)?{agents:N.agents??M.agents}:{name:N.name??M.name,duty:N.duty??M.duty,prompt:N.prompt??M.prompt,avatar:N.avatar??M.avatar,agents:N.agents??M.agents}),m())},f=async y=>{try{x(""),await Xe.siliconEmployeesRepository.archive(y),m()}catch(N){x(N instanceof Error?N.message:"\u5F52\u6863\u5458\u5DE5\u5931\u8D25\u3002")}},T=async y=>{try{x(""),await Xe.siliconEmployeesRepository.unarchive(y),m()}catch(N){x(N instanceof Error?N.message:"\u6062\u590D\u5458\u5DE5\u5931\u8D25\u3002")}},R=async y=>{let N=n.find(W=>W.id===y);if(!N)return;let M=await ur.wandOverlay.dialog({title:`\u5220\u9664\u5458\u5DE5\u300C${N.name}\u300D\uFF1F`,description:"\u5458\u5DE5\u914D\u7F6E\u548C\u5176\u72EC\u7ACB\u77E5\u8BC6\u5E93\u5C06\u88AB\u5220\u9664\uFF1B\u5DF2\u6709\u4F1A\u8BDD\u4E0E\u5386\u53F2\u6D88\u606F\u4F1A\u4FDD\u7559\u3002",actions:[{label:"\u53D6\u6D88",value:!1,autoFocus:!0},{label:"\u5220\u9664\u5458\u5DE5",value:!0,kind:"danger"}]});if(!(M.dismissed===!0||!M.action))try{x(""),await Xe.siliconEmployeesRepository.remove(y),m()}catch(W){x(W instanceof Error?W.message:"\u5220\u9664\u5458\u5DE5\u5931\u8D25\u3002")}};return(0,te.jsxs)("div",{className:"wand-teams-list wand-employee-list",children:[(0,te.jsxs)("header",{className:"wand-teams-toolbar",children:[(0,te.jsx)("div",{className:"wand-teams-toolbar-search",children:(0,te.jsx)(Ge.WandSearchField,{value:i,label:"\u641C\u7D22\u5458\u5DE5\u540D\u5B57\u3001\u804C\u8D23\u6216 Prompt",placeholder:"\u641C\u7D22\u5458\u5DE5\u540D\u5B57\u3001\u804C\u8D23\u6216 Prompt\u2026",onValueChange:c})}),(0,te.jsxs)("div",{className:"wand-teams-toolbar-actions",children:[(0,te.jsxs)("label",{className:"wand-employee-filter-toggle",children:[(0,te.jsx)("input",{type:"checkbox",checked:o,onChange:y=>s(y.target.checked)}),(0,te.jsx)("span",{children:"\u663E\u793A\u5F52\u6863"})]}),(0,te.jsxs)(Ge.WandButton,{kind:"primary",disabled:u,onClick:()=>g(!0),children:[(0,te.jsx)(Ge.WandIcon,{name:"plus",size:14,slot:"start"}),"\u65B0\u5EFA\u5458\u5DE5"]})]})]}),r?(0,te.jsx)("div",{className:"wand-team-candidate-error",role:"alert",children:r}):null,v?(0,te.jsx)("div",{className:"wand-team-candidate-error",role:"alert",children:v}):null,(0,te.jsxs)("div",{className:"wand-team-members",children:[u?(0,te.jsx)(pr,{catalog:e,providerOptions:t,onSave:b,onCancel:()=>g(!1)}):null,a&&n.length===0?(0,te.jsx)("p",{className:"wand-teams-empty",role:"status",children:"\u6B63\u5728\u52A0\u8F7D\u5458\u5DE5\u5217\u8868\u2026"}):null,!a&&h.length===0&&!u?(0,te.jsxs)("div",{className:"wand-teams-empty",children:[(0,te.jsx)("p",{children:i?"\u6CA1\u6709\u5339\u914D\u7684\u5458\u5DE5":"\u8FD8\u6CA1\u6709\u7845\u57FA\u5458\u5DE5\u3002\u521B\u5EFA\u4E00\u4E2A\u89D2\u8272\uFF0C\u5E76\u4E3A\u5B83\u914D\u7F6E\u4E13\u5C5E\u7684\u6267\u884C\u5DE5\u5177\u94FE\u5427\uFF01"}),i?null:(0,te.jsxs)(Ge.WandButton,{kind:"primary",onClick:()=>g(!0),children:[(0,te.jsx)(Ge.WandIcon,{name:"plus",size:14,slot:"start"}),"\u521B\u5EFA\u4F60\u7684\u7B2C\u4E00\u4E2A\u7845\u57FA\u5458\u5DE5"]})]}):null,h.map(y=>(0,te.jsx)(cr,{employee:y,catalog:e,providerOptions:t,onSave:N=>I(y.id,N),onArchive:()=>f(y.id),onUnarchive:()=>T(y.id),onDelete:()=>R(y.id)},y.id))]})]})}var l=w(Z()),vr="__new__",ti=["awaiting_approval","waiting_user"],ai=[{id:"dev",name:"\u5F00\u53D1\u4E09\u4EBA\u7EC4",summary:"\u8D1F\u8D23\u4EBA\u62C6\u89E3\u4E0E\u9A8C\u6536\uFF0C\u4E00\u4EBA\u5B9E\u73B0\uFF0C\u4E00\u4EBA\u5BA1\u67E5",instructions:"\u5BA1\u67E5\u8005\u53EA\u8BFB\u4EE3\u7801\uFF0C\u95EE\u9898\u5199\u8FDB\u62A5\u544A\uFF0C\u7531\u8D1F\u8D23\u4EBA\u51B3\u5B9A\u662F\u5426\u8FD4\u5DE5\u3002",members:[{name:"\u8D1F\u8D23\u4EBA",isLeader:!0,duty:"\u62C6\u89E3\u4EFB\u52A1\u3001\u5206\u6D3E\u6B65\u9AA4\uFF0C\u5BA1\u9605\u62A5\u544A\u5E76\u51B3\u5B9A\u4E0B\u4E00\u6B65\u6216\u5B8C\u6210\u3002"},{name:"\u5B9E\u73B0\u8005",duty:"\u6309\u6B65\u9AA4\u6539\u4EE3\u7801\u5E76\u81EA\u6D4B\uFF0C\u62A5\u544A\u5199\u6E05\u6539\u52A8\u4E0E\u9A8C\u8BC1\u65B9\u5F0F\u3002"},{name:"\u5BA1\u67E5\u8005",duty:"\u5BA1\u67E5\u6539\u52A8\u4E0E\u6D4B\u8BD5\uFF0C\u6307\u51FA\u95EE\u9898\u548C\u98CE\u9669\uFF0C\u4E0D\u76F4\u63A5\u4FEE\u6539\u3002"}]},{id:"bugfix",name:"\u4FEE Bug \u4E8C\u4EBA\u7EC4",summary:"\u8D1F\u8D23\u4EBA\u5B9A\u4F4D\u4E0E\u9A8C\u8BC1\uFF0C\u4E00\u4EBA\u4FEE\u590D",instructions:"\u5148\u590D\u73B0\u518D\u4FEE\uFF0C\u4FEE\u590D\u9644\u4E0A\u9A8C\u8BC1\u6B65\u9AA4\u3002",members:[{name:"\u8D1F\u8D23\u4EBA",isLeader:!0,duty:"\u590D\u73B0\u5E76\u5B9A\u4F4D\u6839\u56E0\uFF0C\u5199\u6E05\u4FEE\u6539\u8303\u56F4\uFF0C\u4FEE\u5B8C\u540E\u9A8C\u8BC1\u3002"},{name:"\u4FEE\u590D\u8005",duty:"\u6309\u5B9A\u4F4D\u4FEE\u6539\u4EE3\u7801\uFF0C\u8865\u56DE\u5F52\u6D4B\u8BD5\uFF0C\u62A5\u544A\u9644\u9A8C\u8BC1\u8F93\u51FA\u3002"}]},{id:"research",name:"\u8C03\u7814\u52A0\u8BC4\u5BA1",summary:"\u4E24\u4EBA\u5E76\u884C\u8C03\u7814\u4E0D\u540C\u65B9\u5411\uFF0C\u8D1F\u8D23\u4EBA\u6C47\u603B",instructions:"\u8C03\u7814\u5458\u53EF\u540C\u65F6\u5F00\u59CB\uFF0C\u53EA\u8BFB\u4E0D\u6539\u6587\u4EF6\u3002",members:[{name:"\u8D1F\u8D23\u4EBA",isLeader:!0,duty:"\u62C6\u51FA\u4E92\u4E0D\u91CD\u53E0\u7684\u8C03\u7814\u65B9\u5411\uFF0C\u6C47\u603B\u7ED3\u8BBA\u7ED9\u51FA\u5EFA\u8BAE\u3002"},{name:"\u8C03\u7814\u5458\u7532",duty:"\u6309\u5206\u6D3E\u7684\u65B9\u5411\u8C03\u7814\uFF0C\u7ED3\u8BBA\u9644\u51FA\u5904\u3002"},{name:"\u8C03\u7814\u5458\u4E59",duty:"\u6309\u5206\u6D3E\u7684\u65B9\u5411\u8C03\u7814\uFF0C\u7ED3\u8BBA\u9644\u51FA\u5904\u3002"}]},{id:"blank",name:"\u7A7A\u767D\u56E2\u961F",summary:"\u4E00\u4F4D\u8D1F\u8D23\u4EBA\u52A0\u4E00\u4F4D\u6210\u5458\uFF0C\u81EA\u5DF1\u5199\u804C\u8D23",instructions:"",members:[{name:"\u8D1F\u8D23\u4EBA",isLeader:!0,duty:""},{name:"\u6210\u5458",duty:""}]}];function br(e,t){return{name:e.id==="blank"?"":e.name,description:e.summary,instructions:e.instructions,requirePlanApproval:!0,maxSteps:30,members:e.members.map((n,a)=>({id:"",name:n.name,duty:n.duty,isLeader:!!n.isLeader,agents:[{...t}],agent:{...t},avatar:`cat:${a%ce.CAT_COATS.length}`}))}}function Tr(e){return{name:e.name,description:e.description,instructions:e.instructions,requirePlanApproval:e.requirePlanApproval,maxSteps:e.maxSteps,members:e.members.map(t=>({...t,agent:{...t.agent}}))}}function ni(e){return[...e].sort((t,n)=>Number(n.isLeader)-Number(t.isLeader))}function ri(e){let t=[];e.length<2&&t.push(`\u81F3\u5C11\u8981\u6709 ${2} \u4F4D\u6210\u5458\u3002`),e.length>8&&t.push(`\u6700\u591A ${8} \u4F4D\u6210\u5458\u3002`);let n=e.filter(a=>a.isLeader).length;return n!==1&&t.push(`\u8D1F\u8D23\u4EBA\u8981\u6070\u597D 1 \u4F4D\uFF0C\u5F53\u524D ${n} \u4F4D\u3002`),e.forEach((a,r)=>{let m=Ve(ma(a));m&&t.push(`${a.name||`\u6210\u5458 ${r+1}`}\uFF1A${m}`)}),t}function si({member:e,disabled:t,onChange:n}){let a=z.useRef(null),[r,m]=z.useState(""),i=e.avatar??"",c=(0,ce.memberCoatIndex)(e);return(0,l.jsxs)("div",{className:"wand-team-avatar-picker",role:"group","aria-label":"\u5934\u50CF",children:[ce.CAT_COATS.map((o,s)=>(0,l.jsx)("button",{type:"button",className:"wand-team-coat",title:o.name,"aria-label":o.name,"aria-pressed":!i.startsWith("data:")&&c===s,disabled:t,onClick:()=>n(`cat:${s}`),children:(0,l.jsx)(ce.PixelCat,{coat:s})},o.name)),(0,l.jsx)("button",{type:"button",className:"wand-team-coat is-upload",title:"\u4E0A\u4F20\u56FE\u7247","aria-label":"\u4E0A\u4F20\u5934\u50CF\u56FE\u7247","aria-pressed":i.startsWith("data:"),disabled:t,onClick:()=>a.current?.click(),children:i.startsWith("data:")?(0,l.jsx)("img",{src:i,alt:""}):(0,l.jsx)(B.WandIcon,{name:"image",size:14})}),(0,l.jsx)("input",{ref:a,type:"file",accept:"image/png,image/jpeg,image/webp",hidden:!0,onChange:o=>{let s=o.currentTarget.files?.[0];o.currentTarget.value="",s&&(m(""),(0,ce.shrinkAvatarImage)(s,Ha).then(n).catch(u=>m((0,gt.failureMessage)(u,"\u56FE\u7247\u5904\u7406\u5931\u8D25\u3002"))))}}),r?(0,l.jsx)("small",{className:"wand-team-avatar-error",role:"alert",children:r}):null]})}function ii({member:e,index:t,open:n,catalog:a,providerOptions:r,disabled:m,canRemove:i,onToggle:c,onChange:o,onRemove:s}){let u=e.name||`\u6210\u5458 ${t+1}`,g=ma(e),v=x=>{o({agents:x,agent:{...x[0]}})};return(0,l.jsxs)("article",{className:"wand-team-member","data-leader":e.isLeader||void 0,"data-open":n||void 0,children:[(0,l.jsxs)("button",{type:"button",className:"wand-team-member-head","aria-expanded":n,onClick:c,children:[(0,l.jsx)(ce.TeamAvatar,{member:e,size:"lg",showProvider:!0}),(0,l.jsxs)("span",{className:"wand-team-member-copy",children:[(0,l.jsxs)("strong",{children:[u,e.isLeader?(0,l.jsx)("em",{children:"\u8D1F\u8D23\u4EBA"}):null]}),(0,l.jsx)("small",{children:e.duty||"\u8FD8\u6CA1\u5199\u804C\u8D23"}),(0,l.jsx)("span",{className:"wand-team-member-agent",children:(0,Ie.issueAgentProviderModelLine)(e.agent,a)})]}),(0,l.jsx)(B.WandIcon,{name:"chevronDown",size:14})]}),(0,l.jsx)("div",{className:"wand-team-member-body",inert:!n,children:(0,l.jsxs)("div",{className:"wand-team-member-inner",children:[(0,l.jsx)(ie.SettingsField,{label:"\u540D\u5B57",htmlFor:`team-member-${t}-name`,children:(0,l.jsx)(ie.SettingsTextInput,{id:`team-member-${t}-name`,value:e.name,placeholder:"\u6210\u5458\u540D\u5B57",disabled:m,onChange:x=>o({name:x})})}),(0,l.jsx)(si,{member:e,disabled:m,onChange:x=>o({avatar:x})}),(0,l.jsx)("textarea",{className:"wand-settings-input wand-ai-team-duty resize-none",rows:3,value:e.duty,placeholder:"\u804C\u8D23\uFF1A\u8FD9\u4F4D\u6210\u5458\u8D1F\u8D23\u4EC0\u4E48\u3001\u4EA4\u4ED8\u4EC0\u4E48","aria-label":`${u}\u7684\u804C\u8D23`,disabled:m,onChange:x=>o({duty:x.currentTarget.value})}),(0,l.jsx)(ut,{agents:g,label:u,catalog:a,providerOptions:r,disabled:m,onChange:v}),(0,l.jsxs)("div",{className:"wand-team-member-actions",children:[e.isLeader?null:(0,l.jsx)(B.WandButton,{kind:"ghost",size:"small",disabled:m,onClick:()=>o({isLeader:!0}),children:"\u8BBE\u4E3A\u8D1F\u8D23\u4EBA"}),(0,l.jsxs)(B.WandButton,{kind:"ghost",size:"small",disabled:m||!i,onClick:s,children:[(0,l.jsx)(B.WandIcon,{name:"trash",size:14,slot:"start"}),"\u79FB\u9664"]})]})]})})]})}function wr({team:e,initial:t,catalog:n,providerOptions:a,defaultAgent:r,onSaved:m,onDeleted:i,onDirtyChange:c}){let[o,s]=z.useState(t),[u,g]=z.useState(-1),[v,x]=z.useState(!1),[h,b]=z.useState(!1),[I,f]=z.useState(""),[T,R]=z.useState("info"),y=v||h,N=`ai-team-${e?.id??"new"}`,M=o.members.findIndex(D=>D.isLeader),W=JSON.stringify(t),ne=z.useMemo(()=>JSON.stringify(o)!==W,[o,W]);z.useEffect(()=>{c?.(ne)},[ne,c]);let me=(D,j)=>{s(Y=>({...Y,members:Y.members.map((Te,He)=>He===D?{...Te,...j}:j.isLeader?{...Te,isLeader:!1}:Te)}))},V=D=>{g(-1),s(j=>{let Y=j.members.filter((Te,He)=>He!==D);return!Y.some(Te=>Te.isLeader)&&Y[0]&&(Y[0]={...Y[0],isLeader:!0}),{...j,members:Y}})};async function L(){let D=ri(o.members);if(D.length>0){f(D[0]),R("error");return}x(!0),f("");try{let j=e?await ke.aiTeamsRepository.update(e.id,o):await ke.aiTeamsRepository.create(o);s(Tr(j)),f(e?"\u5DF2\u4FDD\u5B58\u3002":"\u56E2\u961F\u5DF2\u521B\u5EFA\u3002"),R("success"),m(j,!e)}catch(j){f((0,gt.failureMessage)(j,"\u4FDD\u5B58\u56E2\u961F\u5931\u8D25\u3002")),R("error")}finally{x(!1)}}async function H(){if(!e)return;let D=await La.wandOverlay.dialog({title:`\u5220\u9664\u56E2\u961F\u300C${e.name}\u300D\uFF1F`,description:"\u5DF2\u7ECF\u5F00\u59CB\u7684\u8FD0\u884C\u4E0D\u53D7\u5F71\u54CD\uFF0C\u4F1A\u6309\u542F\u52A8\u65F6\u7684\u56E2\u961F\u5FEB\u7167\u7EE7\u7EED\u3002",actions:[{label:"\u53D6\u6D88",value:!1,autoFocus:!0},{label:"\u5220\u9664\u56E2\u961F",value:!0,kind:"danger"}]});if(!(D.dismissed===!0||!D.action)){b(!0);try{await ke.aiTeamsRepository.remove(e.id),i(e.id)}catch(j){return f((0,gt.failureMessage)(j,"\u5220\u9664\u56E2\u961F\u5931\u8D25\u3002")),R("error"),!1}finally{b(!1)}}}let $=D=>(0,l.jsx)(ii,{member:o.members[D],index:D,open:u===D,catalog:n,providerOptions:a,disabled:y,canRemove:o.members.length>2,onToggle:()=>g(j=>j===D?-1:D),onChange:j=>me(D,j),onRemove:()=>V(D)},D);return(0,l.jsxs)("div",{className:"wand-team-editor",children:[(0,l.jsxs)("section",{className:"wand-team-section","aria-label":"\u6210\u5458",children:[(0,l.jsxs)("header",{className:"wand-team-section-head",children:[(0,l.jsx)("h3",{children:"\u6210\u5458"}),(0,l.jsxs)("small",{children:[o.members.length,"/",8," \xB7 \u70B9\u6210\u5458\u5361\u5C55\u5F00\u7F16\u8F91"]})]}),(0,l.jsxs)("div",{className:"wand-team-org",children:[M>=0?(0,l.jsx)("div",{className:"wand-team-org-leader",children:$(M)}):null,(0,l.jsxs)("div",{className:"wand-team-org-members",children:[o.members.map((D,j)=>D.isLeader?null:$(j)),(0,l.jsxs)("button",{type:"button",className:"wand-team-member-add",disabled:y||o.members.length>=8,onClick:()=>{s(D=>({...D,members:[...D.members,{id:"",name:"",duty:"",agents:[{...r}],agent:{...r},isLeader:!1,avatar:`cat:${D.members.length%ce.CAT_COATS.length}`}]})),g(o.members.length)},children:[(0,l.jsx)(B.WandIcon,{name:"plus",size:16}),(0,l.jsx)("span",{children:"\u6DFB\u52A0\u6210\u5458"})]})]})]})]}),(0,l.jsxs)("section",{className:"wand-team-section","aria-label":"\u534F\u4F5C\u8BBE\u7F6E",children:[(0,l.jsx)("header",{className:"wand-team-section-head",children:(0,l.jsx)("h3",{children:"\u534F\u4F5C\u8BBE\u7F6E"})}),(0,l.jsxs)("div",{className:"wand-ai-team-editor-grid",children:[(0,l.jsx)(ie.SettingsField,{label:"\u56E2\u961F\u540D",htmlFor:`${N}-name`,children:(0,l.jsx)(ie.SettingsTextInput,{id:`${N}-name`,value:o.name,placeholder:"\u4F8B\u5982\uFF1A\u5168\u6808\u5C0F\u7EC4",disabled:y,onChange:D=>s(j=>({...j,name:D}))})}),(0,l.jsx)(ie.SettingsField,{label:"\u6B65\u6570\u4E0A\u9650",htmlFor:`${N}-steps`,hint:`\u8D1F\u8D23\u4EBA\u8F6E\u6B21\u4E0E\u6210\u5458\u6B65\u9AA4\u5408\u8BA1\uFF0C${5}\u2013${200}`,children:(0,l.jsx)(ie.SettingsTextInput,{id:`${N}-steps`,type:"number",min:5,max:200,value:o.maxSteps,disabled:y,onChange:D=>s(j=>({...j,maxSteps:Number(D)}))})})]}),(0,l.jsx)(ie.SettingsField,{label:"\u7B80\u4ECB",htmlFor:`${N}-description`,children:(0,l.jsx)(ie.SettingsTextInput,{id:`${N}-description`,value:o.description,placeholder:"\u53EF\u9009\uFF1A\u8FD9\u4E2A\u56E2\u961F\u64C5\u957F\u4EC0\u4E48",disabled:y,onChange:D=>s(j=>({...j,description:D}))})}),(0,l.jsx)(ie.SettingsField,{label:"\u534F\u4F5C\u6307\u4EE4",htmlFor:`${N}-instructions`,hint:"\u5199\u8FDB\u8D1F\u8D23\u4EBA\u548C\u6BCF\u4F4D\u6210\u5458\u7684\u63D0\u793A\u8BCD\uFF1A\u5206\u5DE5\u7EA6\u5B9A\u3001\u5DE5\u4F5C\u8981\u6C42\u3001\u6CE8\u610F\u4E8B\u9879\u3002",children:(0,l.jsx)("textarea",{id:`${N}-instructions`,className:"wand-settings-input wand-ai-team-duty resize-none",rows:4,value:o.instructions,placeholder:"\u4F8B\u5982\uFF1A\u5148\u8BFB AGENTS.md\uFF1B\u6539\u52A8\u5FC5\u987B\u9644\u6D4B\u8BD5\uFF1B\u4E0D\u8981\u52A8 migrations \u76EE\u5F55\u3002",disabled:y,onChange:D=>{let j=D.currentTarget.value;s(Y=>({...Y,instructions:j}))}})}),(0,l.jsx)(ie.SettingsToggle,{label:"\u8BA1\u5212\u9700\u8981\u6211\u6279\u51C6",description:"\u8D1F\u8D23\u4EBA\u7ED9\u51FA\u7B2C\u4E00\u4EFD\u8BA1\u5212\u540E\u5148\u505C\u4E0B\uFF0C\u7B49\u4F60\u6279\u51C6\u6216\u9000\u56DE\u518D\u5F00\u59CB\u6267\u884C\u3002",checked:o.requirePlanApproval,disabled:y,onCheckedChange:D=>s(j=>({...j,requirePlanApproval:D}))})]}),(0,l.jsxs)("div",{className:"wand-ai-team-editor-footer",children:[e?(0,l.jsx)(ie.SettingsActionButton,{kind:"danger",size:"small",pending:h,pendingLabel:"\u5220\u9664\u4E2D\u2026",errorLabel:"\u5220\u9664\u5931\u8D25",disabled:v,onClick:H,children:"\u5220\u9664\u56E2\u961F"}):null,(0,l.jsx)(ie.SettingsSaveBar,{label:e?"\u4FDD\u5B58\u56E2\u961F":"\u521B\u5EFA\u56E2\u961F",pending:v,disabled:h,onSave:()=>{L()},status:I,tone:T})]})]})}function Rr(e){return e.filter(t=>t.kind!=="global")}function oi(e){return Rr(e)[0]?.id??""}function di({teamId:e,teamName:t,projects:n,projectsLoaded:a,openRequest:r=0,onStarted:m}){let i=Rr(n),[c,o]=z.useState(r>0),[s,u]=z.useState(!1),[g,v]=z.useState(""),[x,h]=z.useState(""),[b,I]=z.useState("idle"),[f,T]=z.useState(""),R=z.useRef(null),y=z.useRef(null),N="wand-team-start-project-menu-"+z.useId(),M=x||oi(n),W=b==="sending"||b==="sent";z.useEffect(()=>{r>0?(o(!0),u(!1)):(o(!1),u(!1))},[r]);function ne(){b!=="sending"&&(o(!1),u(!1),b==="failed"&&T(""))}z.useLayoutEffect(()=>{if(!c||s)return;let V=0,L=requestAnimationFrame(()=>{V=requestAnimationFrame(()=>{u(!0),y.current?.focus()})});return()=>{cancelAnimationFrame(L),cancelAnimationFrame(V)}},[c,s]),z.useEffect(()=>{if(!c)return;let V=L=>{R.current?.contains(L.target)||L.target instanceof Element&&L.target.closest(".wand-ui-select-content")?.classList.contains(N)||ne()};return window.addEventListener("pointerdown",V,!0),()=>window.removeEventListener("pointerdown",V,!0)},[c,b,N]);async function me(){if(W)return;let V=g.trim();if(!(!V||!M)){I("sending"),T("");try{let L=await ke.aiTeamsRepository.startDirect(e,{note:V,workspaceId:M});I("sent"),T(`${t}\u5DF2\u5F00\u5DE5\uFF0C\u6B63\u5728\u6253\u5F00\u7FA4\u804A\u2026`),await ke.aiTeamsRepository.settle("success"),m(L),o(!1),u(!1),I("idle"),T(""),v("")}catch(L){I("failed"),T((0,gt.failureMessage)(L,"\u5F00\u5DE5\u5931\u8D25\uFF0C\u8BF7\u6362\u4E2A\u9879\u76EE\u6216\u7A0D\u540E\u518D\u8BD5\u3002")),await ke.aiTeamsRepository.settle("error"),I("idle")}}}return(0,l.jsxs)("div",{ref:R,onKeyDown:V=>{V.key==="Escape"&&(V.stopPropagation(),ne())},children:[(0,l.jsx)("div",{className:"wand-team-member-actions",children:(0,l.jsxs)(B.WandButton,{className:"task-board-create-button",kind:"ghost",size:"small","aria-pressed":c,disabled:W,onClick:()=>c?ne():o(!0),children:[(0,l.jsx)(B.WandIcon,{name:"plus",slot:"start",className:"wand-teams-create-icon"}),(0,l.jsx)("span",{children:"\u76F4\u63A5\u5F00\u5DE5"})]})}),(0,l.jsx)("div",{className:"wand-team-candidate-slot","data-collapsed":!s||void 0,children:(0,l.jsx)("div",{className:"wand-team-member-inner",inert:!c,children:(0,l.jsxs)("div",{className:"wand-team-candidates",children:[i.length===0?a?(0,l.jsx)("p",{className:"wand-new-session-error",role:"alert",children:"\u8FD8\u6CA1\u6709\u53EF\u5F00\u5DE5\u7684\u9879\u76EE\uFF0C\u5148\u5728\u5DE5\u4F5C\u533A\u521B\u5EFA\u4E00\u4E2A\u9879\u76EE\u3002"}):(0,l.jsx)("p",{className:"wand-team-empty-line",children:"\u6B63\u5728\u52A0\u8F7D\u9879\u76EE\u2026"}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(ie.SettingsField,{label:"\u9879\u76EE",children:(0,l.jsx)(B.WandSelect,{ariaLabel:"\u5F00\u5DE5\u9879\u76EE",className:"wand-settings-input",contentClassName:N,value:M,disabled:W,searchable:!0,searchPlaceholder:"\u641C\u7D22\u9879\u76EE",options:i.map(V=>({value:V.id,label:`${V.name} \xB7 ${V.cwd}`})),onValueChange:h})}),(0,l.jsx)(ie.SettingsField,{label:"\u5F00\u5DE5\u8BF4\u660E",htmlFor:`team-start-note-${e}`,hint:"\u4F1A\u5EFA\u4E00\u5F20\u4EFB\u52A1\u5361\uFF0C\u5E76\u628A\u8FD9\u6BB5\u8BF4\u660E\u4EA4\u7ED9\u8D1F\u8D23\u4EBA\u3002",children:(0,l.jsx)("textarea",{id:`team-start-note-${e}`,ref:y,className:"wand-settings-input wand-ai-team-duty resize-none",rows:2,value:g,placeholder:"\u4F8B\u5982\uFF1A\u628A\u8BBE\u7F6E\u9875\u7684\u6A21\u578B\u4E0B\u62C9\u6362\u6210\u53EF\u641C\u7D22\u7684\u9009\u62E9\u5668\uFF0C\u5E76\u8865\u5355\u6D4B\u3002",disabled:W,onChange:V=>v(V.currentTarget.value)})})]}),f?(0,l.jsx)("p",{className:b==="failed"?"wand-new-session-error":"wand-new-session-field-hint",role:b==="failed"?"alert":"status",children:f}):null,c&&i.length>0?(0,l.jsx)("div",{className:"wand-team-member-actions",children:(0,l.jsx)(B.WandButton,{kind:"primary",size:"small",disabled:W||!g.trim()||!M,onClick:()=>{me()},children:b==="sending"?"\u6B63\u5728\u5F00\u5DE5\u2026":b==="sent"?"\u5DF2\u5F00\u5DE5":"\u5F00\u5DE5"})}):null]})})})]})}function li({runs:e,focusRunId:t,onOpenSession:n}){let[a,r]=z.useState(""),[m,i]=z.useState(null),c=z.useCallback(async o=>{try{i(await ke.aiTeamsRepository.detail(o))}catch{i(null)}},[]);return z.useEffect(()=>{t&&r(t)},[t]),z.useEffect(()=>{a&&c(a)},[c,a]),z.useEffect(()=>(0,ke.subscribeAiTeamRunChanges)(o=>{o.runId===a&&c(a)}),[c,a]),e===null?(0,l.jsx)("p",{className:"wand-team-empty-line",children:"\u6B63\u5728\u52A0\u8F7D\u8FD0\u884C\u8BB0\u5F55\u2026"}):e.length===0?(0,l.jsx)("p",{className:"wand-team-empty-line",children:"\u8FD8\u6CA1\u6709\u8FD0\u884C\u8FC7\u3002\u7528\u56E2\u961F\u5361\u4E0B\u9762\u7684\u300C\u76F4\u63A5\u5F00\u5DE5\u300D\uFF0C\u6216\u5728\u4EFB\u52A1\u770B\u677F\u6D3E\u53D1\u4EFB\u52A1\u65F6\u4ECE\u300CCLI \u5DE5\u5177\u300D\u91CC\u9009\u8FD9\u4E2A\u56E2\u961F\u3002"}):(0,l.jsx)("ol",{className:"wand-team-runs",children:e.map(o=>{let s=a===o.id,u=St[o.status];return(0,l.jsxs)("li",{className:"wand-team-run","data-open":s||void 0,children:[(0,l.jsxs)("button",{type:"button",className:"wand-team-run-head","aria-expanded":s,onClick:()=>{i(null),r(g=>g===o.id?"":o.id)},children:[(0,l.jsx)("span",{className:"wand-team-run-id",children:o.taskIdentifier}),(0,l.jsx)("strong",{children:o.taskTitle||o.objective.split(`
19
+ `)[0]}),(0,l.jsx)(B.WandBadge,{tone:u.tone,children:u.label}),(0,l.jsx)("small",{children:new Date(o.updatedAt).toLocaleString([],{month:"numeric",day:"numeric",hour:"2-digit",minute:"2-digit"})}),(0,l.jsx)(B.WandIcon,{name:"chevronDown",size:14})]}),(0,l.jsx)("div",{className:"wand-team-run-body",inert:!s,children:(0,l.jsx)("div",{className:"wand-team-run-inner",children:s&&m?.run.id===o.id?(0,l.jsx)(ka,{detail:m,onChange:i,onOpenSession:n}):s?(0,l.jsx)("p",{className:"wand-team-empty-line",children:"\u6B63\u5728\u52A0\u8F7D\u2026"}):null})})]},o.id)})})}var yr=[{value:"members",label:"\u6210\u5458\u4E0E\u8BBE\u7F6E"},{value:"runs",label:"\u8FD0\u884C\u8BB0\u5F55"}],ci=[{value:"all",label:"\u5168\u90E8"},{value:"running",label:"\u8FD0\u884C\u4E2D"},{value:"attention",label:"\u5F85\u4F60\u5904\u7406"}],mi=[{value:"employees",label:"\u5458\u5DE5"},{value:"teams",label:"\u56E2\u961F"}];function Ar({sidebarOpen:e=!1,onBack:t,onOpenSidebar:n,onOpenSession:a}){let r=z.useSyncExternalStore(st.taskBoardStore.subscribe,st.taskBoardStore.getSnapshot,st.taskBoardStore.getSnapshot),m=(0,aa.useProviderUsage)(!0),i=m===null?null:(0,aa.sortProviderOptions)(Ie.ISSUE_AGENT_PROVIDERS,m,E=>E.value).map(E=>({value:E.value,label:E.label})),[c,o]=z.useState(null),[s,u]=z.useState("employees"),[g,v]=z.useState([]),[x,h]=z.useState(""),[b,I]=z.useState(null),[f,T]=z.useState(()=>(0,Ie.createDefaultIssueAgent)()),[R,y]=z.useState(""),[N,M]=z.useState(null),[W,ne]=z.useState(""),[me,V]=z.useState("all"),[L,H]=z.useState("members"),[$,D]=z.useState([]),[j,Y]=z.useState(!1),[Te,He]=z.useState("");z.useEffect(()=>{r.page!=="teams"||!r.teamId||(u("teams"),y(window.matchMedia("(max-width: 760px)").matches?"":r.teamId))},[r.page,r.teamId,r.revision]);let Je=z.useCallback(async()=>{try{let E=await ke.aiTeamsRepository.list();o(E),h(""),y(U=>U||(window.matchMedia("(max-width: 760px)").matches?"":E[0]?.id??""))}catch(E){h((0,gt.failureMessage)(E,"\u56E2\u961F\u5217\u8868\u52A0\u8F7D\u5931\u8D25\u3002"))}},[]),K=z.useCallback(async()=>{try{v(await ke.aiTeamsRepository.runs({limit:200}))}catch{}},[]);z.useEffect(()=>(Je(),K(),ea.taskBoardRepository.models().then(E=>I((0,Ie.normalizeIssueModelCatalog)(E))).catch(()=>I(null)),ea.taskBoardRepository.agentDefaults().then(T).catch(()=>{}),ea.taskBoardRepository.workspaces().then(E=>{D(E),Y(!0)}).catch(()=>Y(!0)),(0,xr.subscribeWandModelCatalog)(I)),[K,Je]),z.useEffect(()=>(0,ke.subscribeAiTeamRunChanges)(()=>{K()}),[K]),z.useEffect(()=>{let E=U=>{if(!(U.key!=="Escape"||U.defaultPrevented||U.target?.closest("input, textarea, [contenteditable='true'], [role='dialog']"))){if(R){Me();return}t?t():st.taskBoardController.close()}};return window.addEventListener("keydown",E),()=>window.removeEventListener("keydown",E)},[t,R]);let pe=E=>g.filter(U=>U.teamId===E),ft=E=>{let U=pe(E);return U.some(de=>ti.includes(de.status))?"attention":U.some(de=>de.status==="running")?"running":"idle"},ht=W.trim().toLowerCase(),je=(c??[]).filter(E=>me!=="all"&&ft(E.id)!==me?!1:ht?[E.name,E.description,...E.members.map(U=>U.name)].some(U=>U.toLowerCase().includes(ht)):!0),se=c?.find(E=>E.id===R)??null,J=R===vr,ze=J||!!se,vt=async()=>{await Qe()&&(Q.current=!1,M(null),y(vr))},Q=z.useRef(!1),bt=z.useCallback(E=>{Q.current=E},[]),Qe=async()=>{if(!Q.current)return!0;let E=await La.wandOverlay.dialog({title:"\u653E\u5F03\u672A\u4FDD\u5B58\u7684\u56E2\u961F\u6539\u52A8\uFF1F",description:"\u540D\u79F0\u3001\u6210\u5458\u548C\u5404\u81EA\u7684 CLI / \u6A21\u578B / \u6267\u884C\u6A21\u5F0F\u6539\u52A8\u8FD8\u6CA1\u4FDD\u5B58\uFF0C\u79BB\u5F00\u540E\u56DE\u5230\u4E0A\u6B21\u4FDD\u5B58\u7684\u5185\u5BB9\u3002",actions:[{label:"\u7EE7\u7EED\u7F16\u8F91",value:!1,autoFocus:!0},{label:"\u653E\u5F03\u6539\u52A8",value:!0,kind:"danger"}]});return E.dismissed===!1&&E.action===!0},Me=async()=>{await Qe()&&(Q.current=!1,y(""))},wt=async E=>{E!==R&&await Qe()&&(Q.current=!1,y(E))},It=async()=>{await Qe()&&(Q.current=!1,M(null))},zt=(E,U)=>{K();let de=U.run.chatSessionId;if(de&&a){a(de);return}He(U.run.id),y(E),H("runs")};return(0,l.jsxs)("section",{className:"task-board-native-page wand-teams-page","aria-label":"\u7845\u57FA\u5458\u5DE5\u4E0E AI \u56E2\u961F","data-detail":ze||void 0,children:[(0,l.jsxs)("header",{className:"task-board-workspace-header",children:[(0,l.jsxs)("div",{className:"task-board-kicker",children:[n?(0,l.jsx)(B.WandIconButton,{className:"task-board-icon-button","aria-label":e?"\u5173\u95ED\u4EFB\u52A1\u5217\u8868":"\u6253\u5F00\u4EFB\u52A1",onClick:n,children:(0,l.jsx)(kr.SidebarToggleIcon,{open:e,size:16})}):null,se?null:(0,l.jsx)(B.WandIconButton,{className:"task-board-icon-button","aria-label":"\u8FD4\u56DE\u5DE5\u4F5C\u533A",title:"\u8FD4\u56DE\u5DE5\u4F5C\u533A",onClick:()=>t?t():st.taskBoardController.close(),children:(0,l.jsx)(B.WandIcon,{name:"chevronLeft"})}),(0,l.jsx)("div",{className:"task-board-heading-copy",children:s==="teams"&&se?(0,l.jsx)(B.WandBreadcrumb,{variant:"title",ariaLabel:"AI \u56E2\u961F\u5BFC\u822A",items:[{label:"AI \u56E2\u961F",onNavigate:()=>{Me()}},{label:se.name}]}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("h1",{children:s==="employees"?"\u7845\u57FA\u5458\u5DE5":"AI \u56E2\u961F"}),(0,l.jsx)("p",{children:s==="employees"?"\u5B9A\u4E49\u4E13\u5C5E\u89D2\u8272\u4E0E\u5DE5\u5177\u94FE\u964D\u7EA7\u987A\u5E8F\uFF0C\u4EE5\u5BF9\u8BDD\u65B9\u5F0F\u534F\u4F5C\u5B8C\u6210\u5DE5\u4F5C\u3002":"\u8D1F\u8D23\u4EBA\u62C6\u89E3\u5206\u6D3E\uFF0C\u6210\u5458\u5404\u7528\u81EA\u5DF1\u7684 CLI \u534F\u4F5C\u5B8C\u6210\u3002"})]})})]}),(0,l.jsxs)("div",{className:"task-board-header-actions",style:{display:"flex",alignItems:"center",gap:"12px"},children:[(0,l.jsx)(B.WandStretchTabs,{tabs:mi,value:s,ariaLabel:"\u5207\u6362\u5458\u5DE5\u6216\u56E2\u961F",onValueChange:E=>u(E)}),s==="teams"?(0,l.jsxs)(B.WandButton,{className:"task-board-create-button",kind:"primary",size:"small","aria-pressed":J,onClick:()=>J?void Me():void vt(),children:[(0,l.jsx)(B.WandIcon,{name:"plus",slot:"start",className:"wand-teams-create-icon"}),(0,l.jsx)("span",{children:"\u65B0\u5EFA\u56E2\u961F"})]}):null]})]}),s==="employees"?(0,l.jsx)("div",{className:"wand-teams-layout wand-employees-layout",children:(0,l.jsx)(gr,{catalog:b,providerOptions:i})}):(0,l.jsxs)("div",{className:"wand-teams-layout",children:[(0,l.jsxs)("aside",{className:"wand-teams-list","aria-label":"\u56E2\u961F\u5217\u8868",children:[(0,l.jsx)(B.WandSearchField,{value:W,onValueChange:ne,label:"\u641C\u7D22\u56E2\u961F\u6216\u6210\u5458"}),(0,l.jsx)(B.WandStretchTabs,{tabs:ci,value:me,ariaLabel:"\u6309\u72B6\u6001\u7B5B\u9009",onValueChange:E=>V(E)}),x?(0,l.jsxs)("div",{className:"task-board-native-banner is-error",role:"alert",children:[(0,l.jsx)("span",{children:x}),(0,l.jsx)(B.WandButton,{kind:"ghost",size:"small",onClick:()=>{Je()},children:"\u91CD\u65B0\u52A0\u8F7D"})]}):null,(0,l.jsxs)("div",{className:"wand-teams-cards",children:[je.map(E=>{let U=ft(E.id),de=[...new Set(E.members.map(fe=>fe.agent.provider))];return(0,l.jsxs)("div",{children:[(0,l.jsxs)("button",{type:"button",className:"wand-teams-card","aria-pressed":R===E.id,"data-state":U,onClick:()=>{wt(E.id)},children:[(0,l.jsx)(ce.TeamAvatarStack,{members:E.members,max:4}),(0,l.jsxs)("span",{className:"wand-teams-card-copy",children:[(0,l.jsx)("strong",{children:E.name}),(0,l.jsx)("small",{children:E.description||ni(E.members).map(fe=>fe.name).join(" \xB7 ")})]}),(0,l.jsx)("span",{className:"wand-teams-card-meta",children:U==="attention"?(0,l.jsx)(B.WandBadge,{tone:"warning",children:"\u5F85\u4F60\u5904\u7406"}):U==="running"?(0,l.jsx)(B.WandBadge,{tone:"info",children:"\u8FD0\u884C\u4E2D"}):(0,l.jsxs)("small",{children:[E.members.length," \u4EBA \xB7 ",de.map(Ie.issueAgentProviderLabel).join(" / ")]})})]}),(0,l.jsx)(di,{teamId:E.id,teamName:E.name,projects:$,projectsLoaded:j,openRequest:r.teamId===E.id?r.revision:0,onStarted:fe=>zt(E.id,fe)})]},E.id)}),c!==null&&je.length===0?(0,l.jsxs)("div",{className:"wand-teams-empty",children:[(0,l.jsx)("p",{children:c.length===0?"\u8FD8\u6CA1\u6709\u56E2\u961F\u3002":"\u6CA1\u6709\u5339\u914D\u7684\u56E2\u961F\u3002"}),c.length===0?(0,l.jsx)(B.WandButton,{kind:"soft",size:"small",onClick:()=>{vt()},children:"\u4ECE\u6A21\u677F\u521B\u5EFA"}):null]}):null]})]}),(0,l.jsx)("div",{className:"wand-teams-detail",children:J&&!N?(0,l.jsxs)("div",{className:"wand-teams-templates",children:[(0,l.jsxs)("header",{className:"wand-team-section-head",children:[(0,l.jsx)("h3",{children:"\u4ECE\u6A21\u677F\u5F00\u59CB"}),(0,l.jsx)("small",{children:"\u521B\u5EFA\u524D\u8FD8\u80FD\u4FEE\u6539"})]}),(0,l.jsx)("div",{className:"wand-teams-template-grid",children:ai.map(E=>{let U=br(E,f);return(0,l.jsxs)("button",{type:"button",className:"wand-teams-template",onClick:()=>M(E),children:[(0,l.jsx)(ce.TeamAvatarStack,{members:U.members,size:"md"}),(0,l.jsx)("strong",{children:E.name}),(0,l.jsx)("small",{children:E.summary})]},E.id)})})]}):J&&N?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)("div",{className:"wand-teams-detail-head",children:[(0,l.jsx)(B.WandIconButton,{className:"task-board-icon-button","aria-label":"\u6362\u4E00\u4E2A\u6A21\u677F",onClick:()=>{It()},children:(0,l.jsx)(B.WandIcon,{name:"chevronLeft"})}),(0,l.jsxs)("div",{children:[(0,l.jsx)("h2",{children:"\u65B0\u5EFA\u56E2\u961F"}),(0,l.jsxs)("p",{children:["\u6A21\u677F\uFF1A",N.name]})]})]}),(0,l.jsx)(wr,{team:null,initial:br(N,f),catalog:b,providerOptions:i,defaultAgent:f,onDirtyChange:bt,onSaved:E=>{o(U=>[E,...U??[]]),y(E.id),H("members")},onDeleted:()=>{}})]}):se?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)("div",{className:"wand-teams-detail-head",children:[(0,l.jsx)(ce.TeamAvatarStack,{members:se.members,size:"md",max:6}),(0,l.jsx)("div",{children:(0,l.jsx)("p",{children:se.description||`${se.members.length} \u4F4D\u6210\u5458`})})]}),(0,l.jsx)(B.WandStretchTabs,{tabs:yr,value:L,ariaLabel:"\u56E2\u961F\u8BE6\u60C5",onValueChange:H}),(0,l.jsx)("div",{className:"wand-teams-detail-stack",children:yr.map(E=>(0,l.jsx)("div",{className:"wand-teams-detail-pane","data-hidden":L!==E.value||void 0,inert:L!==E.value,children:E.value==="runs"?(0,l.jsx)(li,{runs:c===null?null:pe(se.id),focusRunId:Te,onOpenSession:a}):(0,l.jsx)(wr,{team:se,initial:Tr(se),catalog:b,providerOptions:i,defaultAgent:f,onDirtyChange:bt,onSaved:U=>o(de=>(de??[]).map(fe=>fe.id===U.id?U:fe)),onDeleted:U=>{Q.current=!1,y(""),o(de=>(de??[]).filter(fe=>fe.id!==U))}},se.id)},E.value))})]}):(0,l.jsxs)("div",{className:"wand-teams-empty is-detail",children:[(0,l.jsx)(B.WandIcon,{name:"parallel",size:28}),(0,l.jsx)("p",{children:"\u9009\u4E00\u4E2A\u56E2\u961F\uFF0C\u6216\u65B0\u5EFA\u4E00\u4E2A\u3002"})]})},J?`new-${N?.id??""}`:R)]})]})}var oe=w(Re()),Cr=w(kt());var na=w(Wt()),Ir=w(Ra()),zr=w(Sr()),ge=w(Ae()),ra=w(lt()),it=w(Tt());var _=w(Z()),Nr={queued:"\u6392\u961F",running:"\u8FDB\u884C\u4E2D",done:"\u5B8C\u6210",failed:"\u5931\u8D25",skipped:"\u8DF3\u8FC7"};async function pi(e){let t=e.run.chatSessionId;if(!t)return null;try{let a=(await it.aiTeamsRepository.runsForChat(e.run.taskId,t))[0];return a&&a.id!==e.run.id?a.id:null}catch{return null}}function ui(e){return e==="running"?"working":e==="done"?"done":e==="failed"?"failed":"idle"}function gi({detail:e,onOpenSession:t}){let[n,a]=oe.useState(()=>new Set),r=e.steps.filter(c=>c.kind==="work"),m=r.filter(c=>c.status==="done").length,i=c=>{a(o=>{let s=new Set(o);return s.has(c)?s.delete(c):s.add(c),s})};return(0,_.jsx)("section",{className:"wand-team-work-tasks","aria-label":"\u5DE5\u4F5C\u4EFB\u52A1",children:(0,_.jsxs)("div",{className:"wand-team-work-tasks-inner",children:[(0,_.jsxs)("header",{className:"wand-team-work-tasks-head",children:[(0,_.jsx)("h2",{children:"\u5DE5\u4F5C\u4EFB\u52A1"}),(0,_.jsx)("small",{children:r.length?`${m}/${r.length} \u5B8C\u6210`:"\u7B49\u5F85\u6D3E\u5DE5"})]}),r.length?(0,_.jsx)("ol",{className:"wand-team-work-list",children:r.map(c=>{let o=$e(e).members.find(u=>u.id===c.memberId),s=n.has(c.id);return(0,_.jsxs)("li",{className:"wand-team-work-item","data-status":c.status,"data-open":s||void 0,children:[(0,_.jsxs)("button",{type:"button",className:"wand-team-work-head","aria-expanded":s,onClick:()=>i(c.id),children:[(0,_.jsxs)("span",{className:"wand-team-work-seq",children:["#",c.seq]}),(0,_.jsx)("span",{className:"wand-team-work-title",children:c.title||"\u6210\u5458\u6B65\u9AA4"}),(0,_.jsx)("span",{className:"wand-team-work-status",children:Nr[c.status]}),(0,_.jsx)(ge.WandIcon,{name:"chevronDown",size:14})]}),(0,_.jsx)("div",{className:"wand-team-work-body","data-open":s||void 0,inert:!s,children:(0,_.jsxs)("div",{className:"wand-team-work-body-inner",children:[(0,_.jsxs)("div",{className:"wand-team-work-member",children:[o?(0,_.jsx)(ra.TeamAvatar,{member:o,size:"sm",state:ui(c.status)}):null,(0,_.jsx)("span",{className:"wand-team-work-member-name",children:o?.name??c.memberId}),o?.duty?(0,_.jsx)("small",{className:"wand-team-work-member-duty",children:o.duty}):null]}),(0,_.jsxs)("dl",{className:"wand-team-work-meta",children:[(0,_.jsxs)("div",{children:[(0,_.jsx)("dt",{children:"\u72B6\u6001"}),(0,_.jsx)("dd",{children:Nr[c.status]})]}),c.reportPath?(0,_.jsxs)("div",{children:[(0,_.jsx)("dt",{children:"\u62A5\u544A\u6587\u4EF6"}),(0,_.jsx)("dd",{children:(0,_.jsx)("code",{children:c.reportPath})})]}):null]}),c.report?(0,_.jsx)("p",{className:"wand-team-work-report",children:c.report}):null,c.sessionId&&t?(0,_.jsxs)(ge.WandButton,{kind:"ghost",size:"small",onClick:()=>t(c.sessionId),children:[(0,_.jsx)(ge.WandIcon,{name:"terminal",size:14,slot:"start"}),"\u6253\u5F00\u4F1A\u8BDD"]}):null]})})]},c.id)})}):(0,_.jsx)("p",{className:"wand-team-empty-line",children:"\u8D1F\u8D23\u4EBA\u8FD8\u6CA1\u6709\u6D3E\u53D1\u5DE5\u4F5C\u4EFB\u52A1\u3002"})]})})}function Mr({runId:e,sidebarOpen:t=!1,onBack:n,onOpenSidebar:a,onOpenSession:r}){let[m,i]=oe.useState(null),[c,o]=oe.useState(""),s=oe.useRef(e);s.current=e;let u=oe.useRef(0),g=oe.useRef(""),v=m&&(m.run.id===e||g.current===e)?m:null,x=!!v&&v.run.id!==e,h=v?.run.taskId??"";oe.useEffect(()=>()=>{u.current++},[]);let b=oe.useCallback(async()=>{let R=++u.current;if(!e){o("\u6CA1\u6709\u8981\u6253\u5F00\u7684\u7FA4\u804A\u3002");return}o("");try{let y=await it.aiTeamsRepository.detail(e);if(R!==u.current||s.current!==e)return;let N=await pi(y);if(R!==u.current||s.current!==e)return;if(N){g.current=N,na.taskBoardController.open("","","teamchat",N);return}i(M=>At(M,y)),g.current="",o("")}catch(y){if(R!==u.current||s.current!==e)return;let N=(0,Cr.failureMessage)(y,"\u7FA4\u804A\u52A0\u8F7D\u5931\u8D25\u3002");o(g.current===e?`\u65B0\u4E00\u8F6E\u52A0\u8F7D\u5931\u8D25\uFF0C\u5F53\u524D\u663E\u793A\u4E0A\u4E00\u8F6E\u8BB0\u5F55\u3002${N}`:N)}},[e]);oe.useEffect(()=>{g.current!==e&&(g.current="",i(null)),o(""),b()},[b]),oe.useEffect(()=>(0,it.subscribeAiTeamRunChanges)(R=>{(R.runId===e||h&&R.taskId===h)&&b()}),[b,e,h]),oe.useEffect(()=>(0,it.subscribeAiTeamDefinitionChanges)(R=>{R===v?.run.teamId&&b()}),[b,v?.run.teamId]),oe.useEffect(()=>(0,zr.subscribeTaskChanges)(()=>{b()}),[b]);let I=oe.useCallback(R=>{R.run.id===s.current&&i(y=>At(y,R))},[]),f=oe.useCallback(()=>{n?n():na.taskBoardController.close()},[n]);oe.useEffect(()=>{let R=y=>{y.key!=="Escape"||y.defaultPrevented||y.target?.closest("input, textarea, [contenteditable='true'], [role='dialog']")||f()};return window.addEventListener("keydown",R),()=>window.removeEventListener("keydown",R)},[f]);let T=v&&!x?St[v.run.status]:null;return(0,_.jsxs)("section",{className:"task-board-native-page wand-team-chat-page","aria-label":"\u7FA4\u804A",children:[(0,_.jsxs)("header",{className:"task-board-workspace-header",children:[(0,_.jsxs)("div",{className:"task-board-kicker",children:[a?(0,_.jsx)(ge.WandIconButton,{className:"task-board-icon-button","aria-label":t?"\u5173\u95ED\u4EFB\u52A1\u5217\u8868":"\u6253\u5F00\u4EFB\u52A1",onClick:a,children:(0,_.jsx)(Ir.SidebarToggleIcon,{open:t,size:16})}):null,(0,_.jsx)(ge.WandIconButton,{className:"task-board-icon-button","aria-label":"\u8FD4\u56DE\u4E0A\u4E00\u4F1A\u8BDD",title:"\u8FD4\u56DE\u4E0A\u4E00\u4F1A\u8BDD",onClick:f,children:(0,_.jsx)(ge.WandIcon,{name:"chevronLeft"})}),v?(0,_.jsx)("span",{className:"wand-team-chat-heading-avatar","aria-hidden":"true",children:(0,_.jsx)(ra.TeamAvatarStack,{members:$e(v).members,max:2,size:"sm"})}):null,(0,_.jsxs)("div",{className:"task-board-heading-copy",children:[(0,_.jsx)(ge.WandBreadcrumb,{variant:"title",className:"wand-team-chat-crumb",ariaLabel:"\u7FA4\u804A\u5BFC\u822A",items:[{label:"\u4EFB\u52A1\u770B\u677F",onNavigate:()=>na.taskBoardController.open("","","board")},{label:v?.chatTitle||"\u4EFB\u52A1\u5904\u7406\u7FA4"}]}),(0,_.jsx)("p",{children:x?c?"\u4E0A\u4E00\u8F6E\u8BB0\u5F55 \xB7 \u65B0\u4E00\u8F6E\u52A0\u8F7D\u5931\u8D25":"\u4E0A\u4E00\u8F6E\u8BB0\u5F55 \xB7 \u6B63\u5728\u63A5\u5165\u65B0\u4E00\u8F6E\u2026":v?`${$e(v).members.length} \u4F4D\u6210\u5458 \xB7 \u56E2\u961F\u7FA4\u804A`:c||"\u6B63\u5728\u52A0\u8F7D\u7FA4\u804A\u2026"})]})]}),v&&T?(0,_.jsx)("div",{className:"task-board-header-actions wand-team-chat-head-meta",children:(0,_.jsx)(ge.WandBadge,{tone:T.tone,children:T.label})}):null]}),c?(0,_.jsxs)("div",{className:"task-board-native-banner is-error",role:"alert",children:[(0,_.jsx)("span",{children:c}),e?(0,_.jsx)(ge.WandButton,{kind:"ghost",size:"small",onClick:()=>{b()},children:"\u91CD\u65B0\u52A0\u8F7D"}):null]}):null,(0,_.jsx)("div",{className:"wand-team-chat-body",children:v?(0,_.jsx)(mt,{detail:v,staleRun:x,onChange:I,onOpenSession:r,details:(0,_.jsxs)(_.Fragment,{children:[(0,_.jsx)(gi,{detail:v,onOpenSession:r}),v.run.chatSessionId&&r?(0,_.jsx)(ge.WandButton,{kind:"ghost",size:"small",onClick:()=>r(v.run.chatSessionId),children:"\u67E5\u770B\u5B8C\u6574\u4F1A\u8BDD\u8BB0\u5F55"}):null]})}):c?null:(0,_.jsx)("p",{className:"wand-team-empty-line",children:"\u6B63\u5728\u52A0\u8F7D\u2026"})})]})}var Lr=__wandCssTextPool[0];var Pr=w(Dr(),1);(0,Pr.installStyleSheet)("wand-ai-teams-styles",Lr);globalThis.__wandAiTeamsChunk={AiTeamsPage:Ar,TaskTeamRunPanel:jn,TeamChatView:mt,TeamChatPage:Mr};})();
20
20
 
21
21
  })();