@co0ontty/wand 4.80.0 → 4.80.1-beta.g1fbbefb
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.
- package/dist/ai-team-availability.js +0 -1
- package/dist/ai-team-live.d.ts +3 -1
- package/dist/ai-team-live.js +31 -2
- package/dist/ai-team-runner.d.ts +2 -1
- package/dist/ai-team-runner.js +17 -7
- package/dist/ai-team-types.d.ts +8 -0
- package/dist/ai-team-types.js +4 -0
- package/dist/build-info.json +4 -4
- package/dist/claude-pty-bridge.js +16 -1
- package/dist/cli.js +0 -9
- package/dist/config.d.ts +2 -10
- package/dist/config.js +1 -73
- package/dist/git-quick-commit.d.ts +3 -6
- package/dist/git-quick-commit.js +38 -75
- package/dist/language-prompt.d.ts +1 -1
- package/dist/language-prompt.js +1 -1
- package/dist/native-session-title.d.ts +17 -0
- package/dist/native-session-title.js +257 -0
- package/dist/process-manager.d.ts +3 -0
- package/dist/process-manager.js +37 -6
- package/dist/server-session-routes.js +4 -29
- package/dist/server-settings-routes.js +2 -177
- package/dist/server-task-routes.js +1 -1
- package/dist/server-workspace-routes.js +1 -1
- package/dist/server.js +1 -13
- package/dist/session-ai-context.d.ts +3 -7
- package/dist/session-ai-context.js +0 -25
- package/dist/session-topic.d.ts +19 -0
- package/dist/session-topic.js +53 -3
- package/dist/session-transport.js +0 -1
- package/dist/silicon-employee-draft.d.ts +1 -1
- package/dist/storage.js +12 -18
- package/dist/structured-claude-adapter.d.ts +0 -6
- package/dist/structured-claude-adapter.js +1 -5
- package/dist/structured-provider-common.d.ts +8 -4
- package/dist/structured-provider-common.js +14 -15
- package/dist/structured-session-manager.d.ts +4 -40
- package/dist/structured-session-manager.js +53 -773
- package/dist/types.d.ts +12 -27
- package/dist/web-ui/content/ai-teams.js +9 -9
- package/dist/web-ui/content/scripts.js +70 -70
- package/dist/web-ui/content/styles.css +1 -1
- package/dist/web-ui/embedded-assets.js +3 -3
- package/dist/ws-broadcast.js +19 -7
- package/package.json +1 -2
- package/dist/claude-sdk-runner.d.ts +0 -59
- package/dist/claude-sdk-runner.js +0 -188
- package/dist/claude-skills.d.ts +0 -6
- package/dist/claude-skills.js +0 -53
- package/dist/system-ai.d.ts +0 -27
- package/dist/system-ai.js +0 -424
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
(() => {
|
|
3
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
|
|
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:
|
|
5
5
|
${e.map(n=>n.savedPath).join(`
|
|
6
6
|
`)}
|
|
7
7
|
]
|
|
8
8
|
|
|
9
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
|
|
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
|
|
12
|
-
`),n=[],a=[];for(let r of t){let m=
|
|
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
13
|
`).trim(),assignments:n}}var la=6,ca=420;function ma(e){return e.length>ca||e.split(`
|
|
14
|
-
`).length>la}var
|
|
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
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
|
|
17
|
-
`).filter(Boolean).at(-1)||rn;w.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}`:""]}),x?(0,l.jsx)("span",{className:"team-chat-live-state","data-state":s.state,children:x}):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:()=>h(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)>gs||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(-Pa):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=u=>u.steps.filter(h=>h.status==="done"||h.status==="failed"||h.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;return{...d,...i?{displayTeam:i}:{},chatTurns:kn(e.chatTurns,t.chatTurns)}}function ys(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 xs(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=ys(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 h=[],x=[],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,D)=>r[D]!==f||d!==null&&D<d&&a[a.length-d+D]?.fingerprint===f),E=I&&(R||k)?I:R?a.find(O=>O.fingerprint===f):void 0,g=E?.presentationId??s();h.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)&&x.push(g)}return{scope:t,rows:h,nextId:m,candidates:x}}function ks({layer:e,onExited:t}){let n=e.ownerId,a=gn(e.text);return w.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]=w.useState([]),[u,h]=w.useState(""),[x,S]=w.useState(""),[b,f]=w.useState("message"),[I,R]=w.useState(!1),[k,E]=w.useState(!1),g=w.useRef(null),N=w.useRef(null),O=w.useRef(null),D=w.useRef(null),ee=w.useRef(null),me=w.useRef(null),V=w.useRef(!1),M=w.useRef(0),[H,W]=w.useState([]),[_,j]=w.useState(!1),[Y,ke]=w.useState(null),[We,Ve]=w.useState({scope:"",ids:new Set}),K=Dr(m),pe=m.chatSessionId,mt=w.useCallback(()=>Le.teamChatComposer.revision(pe),[pe]);w.useSyncExternalStore(Le.teamChatComposer.subscribe,mt,mt);let pt=Le.teamChatComposer.read(pe),$e=pt.text,ne=pt.attachments,J=w.useRef({scope:K,runId:m.id,epoch:0});w.useLayoutEffect(()=>{let p=J.current;J.current={scope:K,runId:m.id,epoch:p.epoch+(p.scope===K?0:1)}},[K,m.id]);let Ce=w.useRef(e);w.useLayoutEffect(()=>{Ce.current=e},[e]);let ut=w.useRef(null),Q=w.useMemo(()=>xs(ut.current,K,s),[K,s]);w.useLayoutEffect(()=>{ut.current=Q},[Q]);let gt=w.useId(),Ye=w.useId(),Ie=w.useRef(null),ft=w.useRef(null),At=w.useRef({projection:Q,local:d});w.useLayoutEffect(()=>{At.current={projection:Q,local:d}},[Q,d]);let St=w.useRef(null),T=w.useRef(null),q=w.useRef(K),de=w.useRef(K),fe=w.useRef(!0),Jt=w.useRef(""),Qt=w.useRef(null),Oe=w.useRef(!0),Nt=Ne(e),Zt=w.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":qr(m.status),Aa=m.status==="running",ta=jr(m.status,!!$e.trim()||ne.length>0,x),Et=x!=="",aa=ta==="stop",vr=Et||r||ta==="blocked",br=x==="send"?"sending":aa?"running":"idle",Sa=x==="send"?b==="upload"?"\u4E0A\u4F20\u4E2D\u2026":"\u53D1\u9001\u4E2D\u2026":x==="stop"?"\u505C\u6B62\u4E2D\u2026":aa?"\u505C\u6B62\u56E2\u961F":"\u53D1\u9001\u6D88\u606F",Na=u?"\u64CD\u4F5C\u5931\u8D25":x==="send"?b==="upload"?"\u4E0A\u4F20\u4E2D\u2026":"\u53D1\u9001\u4E2D\u2026":x==="stop"?"\u505C\u6B62\u4E2D\u2026":"Enter \u53D1\u9001 \xB7 Shift+Enter \u6362\u884C";w.useLayoutEffect(()=>{let p=D.current;p&&an(p)},[$e,pe]),w.useLayoutEffect(()=>{let p=D.current,A=p?.parentElement;if(!p||!A)return;let P=-1,C=new ResizeObserver(([$])=>{let le=$?.contentRect.width??A.getBoundingClientRect().width;le<=0||Math.abs(le-P)<.5||(P=le,an(p))});return C.observe(A),()=>C.disconnect()},[pe]),w.useEffect(()=>{if(!k)return;let p=P=>{let C=P.target;C&&(ee.current?.contains(C)||me.current?.contains(C))||E(!1)},A=P=>{P.key==="Escape"&&(P.preventDefault(),P.stopPropagation(),E(!1),ee.current?.focus())};return document.addEventListener("pointerdown",p),document.addEventListener("keydown",A),()=>{document.removeEventListener("pointerdown",p),document.removeEventListener("keydown",A)}},[k]),w.useLayoutEffect(()=>{if(!k)return;let p=g.current,A=ee.current,P=me.current;if(!p||!A||!P)return;let C=()=>{let le=p.getBoundingClientRect(),he=A.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 $=new ResizeObserver(C);return $.observe(p),$.observe(A),window.addEventListener("resize",C),()=>{$.disconnect(),window.removeEventListener("resize",C)}},[k,ne.length,pe,ea]),w.useEffect(()=>{E(!1)},[pe]);let ht=w.useCallback(()=>{ke(p=>p?.phase!=="open"?p:(Qt.current=`${p.scope}/${p.ownerId}`,{...p,phase:"closing"}))},[]),wr=w.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:Ie.current)?.focus({preventScroll:!0})}))},[]);w.useEffect(()=>(fe.current=!0,()=>{fe.current=!1}),[]),w.useEffect(()=>{de.current!==K&&(de.current=K,i([]),h(""),S(""),Oe.current=!0)},[K]),w.useEffect(()=>{j(!1),ht()},[m.id,ht]),w.useEffect(()=>{i(p=>ia(p,s))},[s,K]),w.useLayoutEffect(()=>{Y?.phase==="open"&&(cn(Y.ownerId,Y.scope,Q,d)||ht())},[Y,K,Q,d,ht]),w.useEffect(()=>{let p=window.matchMedia("(prefers-reduced-motion: reduce)"),A=()=>Ve($=>$.ids.size?{scope:$.scope,ids:new Set}:$),P=()=>{document.visibilityState!=="visible"&&A()},C=()=>{p.matches&&A()};return document.addEventListener("visibilitychange",P),window.addEventListener("pagehide",A),p.addEventListener("change",C),P(),C(),()=>{document.removeEventListener("visibilitychange",P),window.removeEventListener("pagehide",A),p.removeEventListener("change",C)}},[]),w.useLayoutEffect(()=>{if(St.current===Q)return;St.current=Q;let p=Ie.current;if(!p)return;if(q.current!==K&&(T.current=null,Oe.current=!0,q.current=K),Oe.current)p.scrollTop=p.scrollHeight;else if(T.current){let P=[...p.children].find(C=>C.dataset.presentationId===T.current?.id);P&&(p.scrollTop+=P.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 P=p.getBoundingClientRect();for(let C of Q.candidates){let $=[...p.children].find(le=>le.dataset.presentationId===C);$&&$.getBoundingClientRect().bottom>P.top&&$.getBoundingClientRect().top<P.bottom&&A.add(C)}}Ve(P=>({scope:K,ids:new Set([...(P.scope===K?[...P.ids]:[]).filter(C=>Q.rows.some($=>$.presentationId===C)),...A])}))},[Q,K]),w.useEffect(()=>{if(W([]),!Aa)return;let p=!0;yt.aiTeamsRepository.live(m.id).then(P=>{p&&W(sn([],P.steps))},()=>{});let A=yt.aiTeamsRepository.subscribeAiTeamStepLive(P=>{!p||P.runId!==m.id||W(C=>sn(C,P.steps))});return()=>{p=!1,A()}},[m.id,Aa]),w.useEffect(()=>{let p=dn();if(p===null)return;let A=Date.now(),P=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 P)window.clearTimeout(C)}},[H]),w.useEffect(()=>{let p=dn();if(p===null)return;let A=()=>{document.visibilityState==="visible"&&W(P=>bs(P,Date.now(),p))};return document.addEventListener("visibilitychange",A),()=>document.removeEventListener("visibilitychange",A)},[]),w.useEffect(()=>{let p=Ie.current;!p||!Oe.current||(p.scrollTop=p.scrollHeight)},[Q.rows.at(-1)?.presentationId,d.length,H.length]);let Ct=(p,A,P)=>{if(Y)return;let C=p.getBoundingClientRect(),$=C.top+C.height/2<window.innerHeight/2?"top":"bottom";ft.current=p,Jt.current=K,ke({...P,ownerId:A,scope:K,half:$,phase:"open"})},It=p=>{if(!pe)return;let A=Array.from(p),P=Math.max(0,5-Le.teamChatComposer.read(pe).attachments.length);A.length>P&&h("\u4E00\u6B21\u6700\u591A\u6DFB\u52A0 5 \u4E2A\u9644\u4EF6\u3002");for(let[C,$]of A.slice(0,P).entries()){if($.size>10*1024*1024){h(`\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"}`;Le.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 P=K,C=J.current.epoch,$=()=>J.current.scope===P&&J.current.epoch===C,le=s.map(Je).filter(ue=>ue!==null);S("send"),h(""),Oe.current=!0;let he=ne.length?"upload":"message";f(he);try{await Le.teamChatComposer.submit(A,p,async ue=>{let ze=[];if(ue.attachments.length){let ae=new FormData;for(let Be of ue.attachments)ae.append("files",Be.file,Be.name);if(ze=(await(0,Ge.requestJson)(Ir(A),{method:"POST",body:ae})).files,!Array.isArray(ze)||ze.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=zr(ze,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)(Er(A),(0,Ge.jsonBody)(Cr(nt)))}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=_r(re,nt,le);i(ae=>ia(ae.map(Re=>Re.sentAt===rt?{...Re,accepted:!0,ackFingerprint:be??void 0}:Re),Ce.current.chatTurns));let Me=null;try{let ae=J.current.runId,Re=await yt.aiTeamsRepository.detail(ae);if(!$())return;if(J.current.runId===ae&&Ce.current.run.id===ae){let Be=xt(Ce.current,{...Ce.current,chatTurns:Re.chatTurns});t(Be),Me=Be.chatTurns}else Me=kn(Ce.current.chatTurns,Re.chatTurns)}catch{if(!$())return;Me=null}i(ae=>ia(ae,Me))})}catch(ue){if(!$())return;h(he==="upload"?(0,Pt.failureMessage)(ue,"\u9644\u4EF6\u4E0A\u4F20\u5931\u8D25\uFF0C\u6587\u4EF6\u548C\u6587\u5B57\u5DF2\u4FDD\u7559\u3002"):nn(ue)?(0,Pt.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,P=J.current.epoch;S("stop"),h("");try{let C=await yt.aiTeamsRepository.stop(A);J.current.scope===p&&J.current.epoch===P&&J.current.runId===A&&t(xt(Ce.current,C))}catch(C){J.current.scope===p&&J.current.epoch===P&&J.current.runId===A&&h((0,Pt.failureMessage)(C,"\u505C\u6B62\u5931\u8D25\u3002"))}finally{J.current.scope===p&&J.current.epoch===P&&S("")}};return(0,l.jsxs)("div",{className:"task-board-team-chat",children:[(0,l.jsxs)("button",{type:"button",className:"team-chat-context","aria-expanded":_,"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:_?"\u6536\u8D77":"\u8BE6\u60C5"})]}),(0,l.jsx)("div",{id:gt,className:"team-chat-details","data-open":_||void 0,inert:!_,children:(0,l.jsxs)("div",{className:"team-chat-details-inner",children:[(0,l.jsx)(os,{detail:e}),(0,l.jsx)(Or,{detail:e,onOpenSession:n}),a]})}),(0,l.jsxs)("div",{className:"task-board-team-chat-list",ref:Ie,tabIndex:-1,onScroll:p=>{if(p.currentTarget!==Ie.current)return;let A=p.currentTarget;if(Oe.current=xn(p.currentTarget),Oe.current){T.current=null;return}let P=A.getBoundingClientRect(),C=[...A.children].find($=>$.dataset.presentationId&&$.getBoundingClientRect().bottom>P.top);C?.dataset.presentationId&&(T.current={id:C.dataset.presentationId,offset:C.getBoundingClientRect().top-P.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},P)=>{let C=Wr(p,Nt),$=Kr(C),le=Ur(C,Q.rows[P-1]?.turn),he=re=>(0,l.jsxs)(w.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),ze=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(Me=>Me!==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:ze,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),Me=Dt("user",re,0);return he((0,l.jsx)(Ot,{presentationId:A,kind:"user",side:"end",shape:Me,avatar:{kind:"brand"},name:Lt,clock:be,arriving:ue,onArrivalEnd:ze,children:(0,l.jsx)($t,{shape:Me,text:re,names:_t,onExpand:ae=>Ct(ae.currentTarget,A,{text:re,name:Lt,clock:be,typeLabel:"\u6211\u7684\u6D88\u606F",avatar:{kind:"brand"},side:"end",mentionNames:_t})})}))}if($==="leader")return he((0,l.jsx)(ls,{presentationId:A,turn:C,names:Zt,arriving:ue,onArrivalEnd:ze,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)(ds,{presentationId:A,turn:C,step:rt,names:Zt,arriving:ue,onArrivalEnd:ze,onOpenSession:n,onExpandDoc:(re,be)=>Ct(re,A,be)}))}),H.map(p=>(0,l.jsx)(ws,{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(P=>on(P,A))},p.step.stepId)),d.map(p=>{let A=Dt("user",p.text,0);return(0,l.jsx)(Ot,{kind:"user",side:"end",shape:A,avatar:{kind:"brand"},name:Lt,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:_t,onExpand:P=>Ct(P.currentTarget,`local#${p.sentAt}`,{text:p.text,name:Lt,clock:"",typeLabel:"\u6211\u7684\u6D88\u606F",avatar:{kind:"brand"},side:"end",mentionNames:_t})})},`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":""}${x==="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=>Le.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:D,className:"input-textarea",rows:1,value:$e,placeholder:Hr,"aria-label":"\u7FA4\u804A\u6D88\u606F",onChange:p=>Le.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="",D.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="",D.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":x?"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":br,disabled:vr,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)(ks,{layer:Y,onExited:wr}):null})]})}var Sn=y(bt()),Nn=y(Xe()),En=y(Mt()),Ft=y(Rn()),ye=y(Se()),v=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"}},Ts={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"},Rs=["running","awaiting_approval","waiting_user"];function As(){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,v.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 Ss(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 Ns({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,h]=Z.useState(""),[x,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,v.jsxs)("li",{className:"task-board-team-step","data-status":e.status,"data-kind":e.kind,"data-open":r||void 0,children:[n?(0,v.jsx)(kt.TeamAvatar,{member:n,size:"sm",state:pa(e,a)}):(0,v.jsx)("span",{}),(0,v.jsxs)("div",{className:"task-board-team-step-card",children:[(0,v.jsxs)("button",{type:"button",className:"task-board-team-step-head","aria-expanded":r,onClick:m,children:[(0,v.jsxs)("span",{className:"task-board-team-step-title",children:[(0,v.jsxs)("small",{children:[i," \xB7 #",e.seq]}),(0,v.jsx)("strong",{children:e.title||(e.kind==="leader"?"\u8D1F\u8D23\u4EBA\u51B3\u7B56":"\u6210\u5458\u6B65\u9AA4")})]}),(0,v.jsx)("span",{className:"task-board-team-step-status",children:f??(R.length?`\u7B49\u5F85 ${R.join("\u3001")}`:Ts[e.status])}),(0,v.jsx)(ye.WandIcon,{name:"chevronDown",size:14})]}),e.report&&!r?(0,v.jsx)("p",{className:"task-board-team-step-preview",children:e.report}):null,(0,v.jsx)("div",{className:"task-board-team-step-body",inert:!r,children:(0,v.jsxs)("div",{className:"task-board-team-step-inner",children:[e.instructions?(0,v.jsxs)("section",{children:[(0,v.jsx)("h4",{children:e.kind==="leader"?"\u53D1\u7ED9\u8D1F\u8D23\u4EBA":"\u4EFB\u52A1\u8BF4\u660E"}),(0,v.jsx)("pre",{children:e.instructions})]}):null,e.report?(0,v.jsxs)("section",{children:[(0,v.jsx)("h4",{children:e.kind==="leader"?"\u8D1F\u8D23\u4EBA\u8BF4\u660E":"\u62A5\u544A"}),(0,v.jsx)("pre",{children:e.report})]}):null,(0,v.jsxs)("p",{className:"task-board-team-step-meta",children:["\u62A5\u544A\u6587\u4EF6\uFF1A",(0,v.jsx)("code",{children:e.reportPath})]}),e.sessionId&&s?(0,v.jsx)("div",{className:"task-board-native-editor-actions",children:(0,v.jsxs)(ye.WandButton,{kind:"ghost",size:"small",onClick:()=>s(e.sessionId),children:[(0,v.jsx)(ye.WandIcon,{name:"terminal",size:14,slot:"start"}),"\u6253\u5F00\u4F1A\u8BDD"]})}):null,I?(0,v.jsxs)("div",{className:"task-board-team-manual",children:[(0,v.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=>h(k.currentTarget.value)}),(0,v.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,v.jsxs)("div",{className:"task-board-team-step-skips","data-open":x||void 0,children:[(0,v.jsxs)("button",{type:"button",className:"task-board-team-step-skip-head","aria-expanded":x,onClick:()=>S(k=>!k),children:[(0,v.jsx)(ye.WandIcon,{name:"warning",size:13}),(0,v.jsxs)("span",{children:["\u5907\u7528\u5019\u9009 ",b.map(k=>k.candidate).join("\u3001")," \u6CA1\u7528\u4E0A"]}),(0,v.jsx)(ye.WandIcon,{name:"chevronDown",size:14})]}),(0,v.jsx)("div",{className:"task-board-team-step-skip-body",inert:!x,children:(0,v.jsx)("ul",{className:"task-board-team-step-skip-inner",children:b.map(k=>(0,v.jsxs)("li",{children:[(0,v.jsxs)("strong",{children:["\u5019\u9009 ",k.candidate," \xB7 ",(0,Nn.issueAgentProviderLabel)(k.agent.provider)]}),(0,v.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=As(),[c,d]=Z.useState(""),[i,u]=Z.useState(""),[h,x]=Z.useState("chat"),[S,b]=Z.useState(""),[f,I]=Z.useState(""),R=Tt[a.status],k=Rs.includes(a.status),E=a.stepsUsed>=a.stepLimit,g=a.status==="awaiting_approval"||a.status==="waiting_user",N=Ne(e),O=[...N.members].sort((M,H)=>Number(H.isLeader)-Number(M.isLeader));Z.useEffect(()=>{b(""),I("")},[a.id,a.status]);let D=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,v.jsx)(Ns,{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=>D(()=>we.aiTeamsRepository.completeStep(a.id,M.id,H))(),actions:s},M.id),me=i?r.filter(M=>M.memberId===i):r,V=i?"timeline":h;return(0,v.jsxs)("div",{className:"task-board-team-run","data-status":a.status,children:[(0,v.jsxs)("div",{className:"task-board-team-run-head",children:[(0,v.jsx)("span",{className:"task-board-team-run-kicker",children:"\u56E2\u961F\u8FD0\u884C"}),(0,v.jsx)(kt.TeamAvatarStack,{members:N.members,size:"sm"}),(0,v.jsx)("strong",{children:N.name}),(0,v.jsx)(ye.WandBadge,{tone:R.tone,children:R.label}),(0,v.jsxs)("small",{children:["\u6B65\u6570 ",a.stepsUsed,"/",a.stepLimit]}),a.chatSessionId?(0,v.jsx)(ye.WandButton,{kind:"secondary",size:"small",onClick:()=>En.taskBoardController.open("","","teamchat",a.id),children:"\u6253\u5F00\u7FA4\u804A"}):null,k?(0,v.jsx)(dt,{id:"stop",state:s,kind:"danger",label:"\u505C\u6B62",pendingLabel:"\u505C\u6B62\u4E2D\u2026",onClick:D(()=>we.aiTeamsRepository.stop(a.id))}):null]}),(0,v.jsx)("div",{className:"task-board-team-roster",role:"group","aria-label":"\u6210\u5458",children:O.map(M=>{let H=r.filter(_=>_.memberId===M.id&&_.status!=="skipped"),W=H.filter(_=>_.status==="done").length;return(0,v.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(_=>_===M.id?"":M.id),children:[(0,v.jsx)(kt.TeamAvatar,{member:M,state:Ss(M,r,m),showProvider:!0}),(0,v.jsx)("span",{children:M.name}),(0,v.jsx)("small",{children:H.length?`${W}/${H.length}`:"\u5F85\u547D"})]},M.id)})}),g||a.statusDetail?(0,v.jsxs)("div",{className:"task-board-team-banner","data-attention":g||void 0,children:[a.statusDetail?(0,v.jsx)("p",{children:a.statusDetail}):null,g?(0,v.jsxs)("div",{className:"task-board-team-respond",children:[(0,v.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,v.jsx)("div",{className:"task-board-native-editor-actions",children:a.status==="awaiting_approval"?(0,v.jsxs)(v.Fragment,{children:[(0,v.jsx)(dt,{id:"reject",state:s,label:"\u9000\u56DE\u91CD\u505A",pendingLabel:"\u9000\u56DE\u4E2D\u2026",disabled:!S.trim(),onClick:D(()=>we.aiTeamsRepository.reject(a.id,S))}),(0,v.jsx)(dt,{id:"approve",state:s,kind:"primary",label:"\u6279\u51C6\u8BA1\u5212",pendingLabel:"\u6279\u51C6\u4E2D\u2026",onClick:D(()=>we.aiTeamsRepository.approve(a.id))})]}):(0,v.jsxs)(v.Fragment,{children:[E?(0,v.jsx)(dt,{id:"continue",state:s,label:"\u8FFD\u52A0 10 \u6B65\u7EE7\u7EED",pendingLabel:"\u7EE7\u7EED\u4E2D\u2026",onClick:D(()=>we.aiTeamsRepository.continueRun(a.id,10))}):null,(0,v.jsx)(dt,{id:"reply",state:s,kind:"primary",label:"\u53D1\u9001\u56DE\u590D",pendingLabel:"\u53D1\u9001\u4E2D\u2026",disabled:!S.trim(),onClick:D(()=>we.aiTeamsRepository.reply(a.id,S))})]})})]}):null]}):null,f?(0,v.jsx)("p",{className:"task-board-team-error",role:"alert",children:f}):null,i?null:(0,v.jsx)(ye.WandStretchTabs,{tabs:An,value:h,ariaLabel:"\u8FD0\u884C\u89C6\u56FE",className:"task-board-team-views",onValueChange:x}),(0,v.jsx)("div",{className:"task-board-team-views-stack",children:An.map(M=>(0,v.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,v.jsx)(ot,{detail:e,onChange:t,onOpenSession:n}):null,M.value==="timeline"?(0,v.jsx)("ol",{className:"task-board-team-steps",children:me.map(ee)}):null,M.value==="members"?(0,v.jsx)("div",{className:"task-board-team-groups",children:O.map(H=>{let W=r.filter(_=>_.memberId===H.id);return(0,v.jsxs)("section",{className:"task-board-team-group",children:[(0,v.jsxs)("header",{children:[(0,v.jsx)("strong",{children:H.name}),(0,v.jsx)("small",{children:H.duty})]}),W.length?(0,v.jsx)("ol",{className:"task-board-team-steps",children:W.map(ee)}):(0,v.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,v.jsx)("section",{className:"task-board-team","aria-label":"AI \u56E2\u961F",children:(0,v.jsx)(ua,{detail:a,onChange:r,onOpenSession:n})}):null}var rr=y(sa()),Ra=y(ga()),Yt=y(Ln()),ie=y(Pn()),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 Es({id:e,agent:t,index:n,total:a,catalog:r,providerOptions:m,disabled:s,duplicate:c,ariaPrefix:d,structuredOnly:i=!1,onChange:u,onMove:h,onRemove:x}){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:()=>h(-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:()=>h(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:x,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 D=N-O;E.style.transform=`translateY(${D}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),h=je(e),x=()=>{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)(Es,{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:x,children:[(0,G.jsx)(Rt.WandIcon,{name:"plus",size:14}),(0,G.jsx)("span",{children:"\u6DFB\u52A0\u5019\u9009"})]}),h?(0,G.jsx)("small",{className:"wand-team-candidate-error",role:"alert",children:h}):null]})]})}var et=y(Ae());var Ke=y(Se());var Ze=y(Ae());var Pe=y(Se());var jn=y(Ae()),qe=y(st()),qn=y(Hn()),qt=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)(qe.PixelCat,{coat:(0,qe.memberCoatIndex)(e)})})})}function Ut({avatar:e,name:t,disabled:n,onChange:a}){let r=jn.useRef(null),m=(0,qe.memberCoatIndex)({id:"custom",name:t,avatar:e}),s=c=>{let d=c.target.files?.[0];d&&(0,qe.shrinkAvatarImage)(d,_a).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"}),qn.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)(qe.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)(qt.WandIcon,{name:"image",size:14})}),(0,ve.jsx)("input",{ref:r,type:"file",accept:"image/*",hidden:!0,onChange:s}),e?(0,ve.jsx)(qt.WandButton,{kind:"ghost",size:"small",disabled:n,onClick:()=>a(""),children:"\u91CD\u7F6E"}):null]})}var Un=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),[h,x]=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{x(!0),b(null),await a(i),d(!1)}catch(N){b(N instanceof Error?N.message:String(N))}finally{x(!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,Un.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)(Pe.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:h,onChange:g=>u({...i,name:g.target.value})})]}),(0,B.jsx)(Ut,{avatar:i.avatar,name:i.name,disabled:h,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:h,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:h,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:h,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)(Pe.WandButton,{kind:"primary",size:"small",disabled:h,onClick:I,children:"\u4FDD\u5B58\u4FEE\u6539"}),(0,B.jsx)(Pe.WandButton,{kind:"ghost",size:"small",disabled:h,onClick:f,children:"\u53D6\u6D88"}),k?null:R?(0,B.jsx)(Pe.WandButton,{kind:"ghost",size:"small",disabled:h,onClick:m,children:"\u6062\u590D"}):(0,B.jsx)(Pe.WandButton,{kind:"ghost",size:"small",disabled:h,onClick:r,children:"\u5F52\u6863"}),k?null:(0,B.jsxs)(Pe.WandButton,{kind:"ghost",size:"small",disabled:h,onClick:s,children:[(0,B.jsx)(Pe.WandIcon,{name:"trash",size:14,slot:"start"}),"\u5220\u9664"]})]})]})})]})}var Te=y(Ae()),De=y(Se());var Yn=y(Xe()),ka=y(xa()),U=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,h]=Te.useState(""),[x,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,D]=Te.useState(null),ee=W=>W instanceof Error?W.message:String(W),me=()=>{if(!d.trim())return D("\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(_=>_.kind!=="structured")?"\u7845\u57FA\u5458\u5DE5\u53EA\u80FD\u4F7F\u7528\u7ED3\u6784\u5316\u5019\u9009\u3002":je(I);return W?(D(W),null):{name:d,duty:u,prompt:x,avatar:b,agents:I}},V=async()=>{if(s&&d.trim()){let W=me();if(!W)return;try{E(!0),D(null),await n(W)}catch(_){D(ee(_))}finally{E(!1)}return}if(!r.trim()){D("\u5148\u8BF4\u8BF4\u4F60\u5BF9\u8FD9\u4F4D\u5458\u5DE5\u7684\u671F\u671B\u5427\u3002");return}try{E(!0),D(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){D(ee(W))}finally{E(!1)}},M=async()=>{if(!r.trim()){D("\u5148\u5728\u4E0A\u9762\u5199\u4E0B\u4F60\u7684\u671F\u671B\uFF0C\u518D\u8BA9 AI \u8D77\u8349\u3002");return}try{N(!0),D(null);let W=await ka.siliconEmployeesRepository.draft(r);i(W.name),h(W.duty),S(W.prompt),f(""),R([W.agent])}catch(W){D(ee(W))}finally{N(!1)}},H=s&&d.trim().length>0;return(0,U.jsx)("div",{className:"wand-team-member wand-employee-card is-new","data-open":"true",children:(0,U.jsx)("div",{className:"wand-team-member-body",children:(0,U.jsxs)("div",{className:"wand-team-member-inner",children:[(0,U.jsxs)("div",{className:"wand-settings-field",children:[(0,U.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-expectation",children:"\u60F3\u8981\u4EC0\u4E48\u6837\u7684\u5458\u5DE5"}),(0,U.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,U.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,U.jsx)("div",{className:"wand-employee-advanced-toggle","data-open":s||void 0,children:(0,U.jsxs)(De.WandButton,{kind:"ghost",size:"small","aria-expanded":s,disabled:k,onClick:()=>c(W=>!W),children:[(0,U.jsx)(De.WandIcon,{name:"sliders",size:14,slot:"start"}),"\u9AD8\u7EA7\u914D\u7F6E",(0,U.jsx)(De.WandIcon,{name:"chevronDown",size:14,slot:"end"})]})}),(0,U.jsx)("section",{className:"wand-employee-advanced","data-open":s||void 0,"aria-hidden":!s,inert:!s,children:(0,U.jsxs)("div",{className:"wand-employee-advanced-inner",children:[(0,U.jsxs)("div",{className:"wand-settings-field",children:[(0,U.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-name",children:"\u540D\u5B57"}),(0,U.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,U.jsx)(Ut,{avatar:b,name:d,disabled:k||g,onChange:f}),(0,U.jsxs)("div",{className:"wand-settings-field",children:[(0,U.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-duty",children:"\u804C\u8D23"}),(0,U.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=>h(W.target.value)})]}),(0,U.jsxs)("div",{className:"wand-settings-field",children:[(0,U.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-prompt",children:"\u89D2\u8272\u8BBE\u5B9A (Prompt)"}),(0,U.jsx)("textarea",{id:"new-employee-prompt",className:"wand-settings-input resize-none",rows:4,value:x,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,U.jsx)(lt,{agents:I,label:d||"\u65B0\u5458\u5DE5",catalog:e,providerOptions:t,disabled:k||g,structuredOnly:!0,onChange:R}),(0,U.jsx)("div",{className:"wand-employee-advanced-tools",children:(0,U.jsxs)(De.WandButton,{kind:"ghost",size:"small",disabled:k||g,onClick:()=>{M()},children:[(0,U.jsx)(De.WandIcon,{name:"spark",size:14,slot:"start"}),g?"\u751F\u6210\u4E2D\u2026":"\u6309\u671F\u671B\u751F\u6210"]})})]})}),O?(0,U.jsx)("div",{className:"wand-team-candidate-error",role:"alert",children:O}):null,(0,U.jsxs)("div",{className:"wand-team-member-actions",children:[(0,U.jsx)(De.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,U.jsx)(De.WandButton,{kind:"ghost",size:"small",disabled:k,onClick:a,children:"\u53D6\u6D88"})]})]})})})}var Ue=y(xa()),Gn=y(ga()),te=y(se());function Jn({catalog:e,providerOptions:t}){let{employees:n,loading:a,error:r,reload:m}=(0,Ue.useSiliconEmployees)({includeArchived:!0}),[s,c]=et.useState(""),[d,i]=et.useState(!1),[u,h]=et.useState(!1),[x,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 Ue.siliconEmployeesRepository.create(g),h(!1),m()},I=async(g,N)=>{let O=n.find(ee=>ee.id===g);if(!O)return;let D=zt(O)?O:N;await Ue.siliconEmployeesRepository.update(g,{name:D.name??O.name,duty:D.duty??O.duty,prompt:D.prompt??O.prompt,avatar:D.avatar??O.avatar,agents:N.agents??O.agents}),m()},R=async g=>{try{S(""),await Ue.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 Ue.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(D=>D.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 Ue.siliconEmployeesRepository.remove(g),m()}catch(D){S(D instanceof Error?D.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:()=>h(!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,x?(0,te.jsx)("div",{className:"wand-team-candidate-error",role:"alert",children:x}):null,(0,te.jsxs)("div",{className:"wand-team-members",children:[u?(0,te.jsx)(Xn,{catalog:e,providerOptions:t,onSave:f,onCancel:()=>h(!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:()=>h(!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__",Is=["awaiting_approval","waiting_user"],zs=[{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 Ms(e){return[...e].sort((t,n)=>Number(n.isLeader)-Number(t.isLeader))}function Ls(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 _s({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,La).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 Ps({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}`,h=na(e),x=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,Ee.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)(_s,{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:h,label:u,catalog:a,providerOptions:r,disabled:m,onChange:x}),(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,h]=z.useState(-1),[x,S]=z.useState(!1),[b,f]=z.useState(!1),[I,R]=z.useState(""),[k,E]=z.useState("info"),g=x||b,N=`ai-team-${e?.id??"new"}`,O=d.members.findIndex(_=>_.isLeader),D=JSON.stringify(t),ee=z.useMemo(()=>JSON.stringify(d)!==D,[d,D]);z.useEffect(()=>{c?.(ee)},[ee,c]);let me=(_,j)=>{i(Y=>({...Y,members:Y.members.map((ke,We)=>We===_?{...ke,...j}:j.isLeader?{...ke,isLeader:!1}:ke)}))},V=_=>{h(-1),i(j=>{let Y=j.members.filter((ke,We)=>We!==_);return!Y.some(ke=>ke.isLeader)&&Y[0]&&(Y[0]={...Y[0],isLeader:!0}),{...j,members:Y}})};async function M(){let _=Ls(d.members);if(_.length>0){R(_[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 _=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(!(_.dismissed===!0||!_.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=_=>(0,o.jsx)(Ps,{member:d.members[_],index:_,open:u===_,catalog:n,providerOptions:a,disabled:g,canRemove:d.members.length>2,onToggle:()=>h(j=>j===_?-1:_),onChange:j=>me(_,j),onRemove:()=>V(_)},_);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((_,j)=>_.isLeader?null:W(j)),(0,o.jsxs)("button",{type:"button",className:"wand-team-member-add",disabled:g||d.members.length>=8,onClick:()=>{i(_=>({..._,members:[..._.members,{id:"",name:"",duty:"",agents:[{...r}],agent:{...r},isLeader:!1,avatar:`cat:${_.members.length%ce.CAT_COATS.length}`}]})),h(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:_=>i(j=>({...j,name:_}))})}),(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:_=>i(j=>({...j,maxSteps:Number(_)}))})})]}),(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:_=>i(j=>({...j,description:_}))})}),(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:_=>{let j=_.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:_=>i(j=>({...j,requirePlanApproval:_}))})]}),(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:x,onClick:H,children:"\u5220\u9664\u56E2\u961F"}):null,(0,o.jsx)(ie.SettingsSaveBar,{label:e?"\u4FDD\u5B58\u56E2\u961F":"\u521B\u5EFA\u56E2\u961F",pending:x,disabled:b,onSave:()=>{M()},status:I,tone:k})]})]})}function or(e){return e.filter(t=>t.kind!=="global")}function Ds(e){return or(e)[0]?.id??""}function Ws({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),[h,x]=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||Ds(n),D=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(D)return;let V=h.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(""),x("")}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:D,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:D,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:h,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:D,onChange:V=>x(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:D||!h.trim()||!O,onClick:()=>{me()},children:f==="sending"?"\u6B63\u5728\u5F00\u5DE5\u2026":f==="sent"?"\u5DF2\u5F00\u5DE5":"\u5F00\u5DE5"})}):null]})})})]})}function $s({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(h=>h===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"}],Os=[{value:"all",label:"\u5168\u90E8"},{value:"running",label:"\u8FD0\u884C\u4E2D"},{value:"attention",label:"\u5F85\u4F60\u5904\u7406"}],Bs=[{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)(Ee.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"),[h,x]=z.useState([]),[S,b]=z.useState(""),[f,I]=z.useState(null),[R,k]=z.useState(()=>(0,Ee.createDefaultIssueAgent)()),[E,g]=z.useState(""),[N,O]=z.useState(null),[D,ee]=z.useState(""),[me,V]=z.useState("all"),[M,H]=z.useState("members"),[W,_]=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(q=>q||(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{x(await xe.aiTeamsRepository.runs({limit:200}))}catch{}},[]);z.useEffect(()=>(Ve(),K(),Kt.taskBoardRepository.models().then(T=>I((0,Ee.normalizeIssueModelCatalog)(T))).catch(()=>I(null)),Kt.taskBoardRepository.agentDefaults().then(k).catch(()=>{}),Kt.taskBoardRepository.workspaces().then(T=>{_(T),Y(!0)}).catch(()=>Y(!0)),(0,rr.subscribeWandModelCatalog)(I)),[K,Ve]),z.useEffect(()=>(0,xe.subscribeAiTeamRunChanges)(()=>{K()}),[K]),z.useEffect(()=>{let T=q=>{if(!(q.key!=="Escape"||q.defaultPrevented||q.target?.closest("input, textarea, [contenteditable='true'], [role='dialog']"))){if(E){Ie();return}t?t():tt.taskBoardController.close()}};return window.addEventListener("keydown",T),()=>window.removeEventListener("keydown",T)},[t,E]);let pe=T=>h.filter(q=>q.teamId===T),mt=T=>{let q=pe(T);return q.some(de=>Is.includes(de.status))?"attention":q.some(de=>de.status==="running")?"running":"idle"},pt=D.trim().toLowerCase(),$e=(c??[]).filter(T=>me!=="all"&&mt(T.id)!==me?!1:pt?[T.name,T.description,...T.members.map(q=>q.name)].some(q=>q.toLowerCase().includes(pt)):!0),ne=c?.find(T=>T.id===E)??null,J=E===er,Ce=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},Ie=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,q)=>{K();let de=q.run.chatSessionId;if(de&&a){a(de);return}We(q.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":Ce||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:()=>{Ie()}},{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:Bs,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 Ie():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:D,onValueChange:ee,label:"\u641C\u7D22\u56E2\u961F\u6216\u6210\u5458"}),(0,o.jsx)(F.WandStretchTabs,{tabs:Os,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 q=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":q,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||Ms(T.members).map(fe=>fe.name).join(" \xB7 ")})]}),(0,o.jsx)("span",{className:"wand-teams-card-meta",children:q==="attention"?(0,o.jsx)(F.WandBadge,{tone:"warning",children:"\u5F85\u4F60\u5904\u7406"}):q==="running"?(0,o.jsx)(F.WandBadge,{tone:"info",children:"\u8FD0\u884C\u4E2D"}):(0,o.jsxs)("small",{children:[T.members.length," \u4EBA \xB7 ",de.map(Ee.issueAgentProviderLabel).join(" / ")]})})]}),(0,o.jsx)(Ws,{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:zs.map(T=>{let q=tr(T,R);return(0,o.jsxs)("button",{type:"button",className:"wand-teams-template",onClick:()=>O(T),children:[(0,o.jsx)(ce.TeamAvatarStack,{members:q.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(q=>[T,...q??[]]),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)($s,{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:q=>d(de=>(de??[]).map(fe=>fe.id===q.id?q:fe)),onDeleted:q=>{Q.current=!1,g(""),d(de=>(de??[]).filter(fe=>fe.id!==q))}},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()),cr=y(bt());var Xt=y(Mt()),mr=y(fa()),ge=y(Se()),Gt=y(st()),at=y(wt());var L=y(se()),lr={queued:"\u6392\u961F",running:"\u8FDB\u884C\u4E2D",done:"\u5B8C\u6210",failed:"\u5931\u8D25",skipped:"\u8DF3\u8FC7"};async function Fs(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 Hs(e){return e==="running"?"working":e==="done"?"done":e==="failed"?"failed":"idle"}function js({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,L.jsx)("section",{className:"wand-team-work-tasks","aria-label":"\u5DE5\u4F5C\u4EFB\u52A1",children:(0,L.jsxs)("div",{className:"wand-team-work-tasks-inner",children:[(0,L.jsxs)("header",{className:"wand-team-work-tasks-head",children:[(0,L.jsx)("h2",{children:"\u5DE5\u4F5C\u4EFB\u52A1"}),(0,L.jsx)("small",{children:r.length?`${m}/${r.length} \u5B8C\u6210`:"\u7B49\u5F85\u6D3E\u5DE5"})]}),r.length?(0,L.jsx)("ol",{className:"wand-team-work-list",children:r.map(c=>{let d=Ne(e).members.find(u=>u.id===c.memberId),i=n.has(c.id);return(0,L.jsxs)("li",{className:"wand-team-work-item","data-status":c.status,"data-open":i||void 0,children:[(0,L.jsxs)("button",{type:"button",className:"wand-team-work-head","aria-expanded":i,onClick:()=>s(c.id),children:[(0,L.jsxs)("span",{className:"wand-team-work-seq",children:["#",c.seq]}),(0,L.jsx)("span",{className:"wand-team-work-title",children:c.title||"\u6210\u5458\u6B65\u9AA4"}),(0,L.jsx)("span",{className:"wand-team-work-status",children:lr[c.status]}),(0,L.jsx)(ge.WandIcon,{name:"chevronDown",size:14})]}),(0,L.jsx)("div",{className:"wand-team-work-body","data-open":i||void 0,inert:!i,children:(0,L.jsxs)("div",{className:"wand-team-work-body-inner",children:[(0,L.jsxs)("div",{className:"wand-team-work-member",children:[d?(0,L.jsx)(Gt.TeamAvatar,{member:d,size:"sm",state:Hs(c.status)}):null,(0,L.jsx)("span",{className:"wand-team-work-member-name",children:d?.name??c.memberId}),d?.duty?(0,L.jsx)("small",{className:"wand-team-work-member-duty",children:d.duty}):null]}),(0,L.jsxs)("dl",{className:"wand-team-work-meta",children:[(0,L.jsxs)("div",{children:[(0,L.jsx)("dt",{children:"\u72B6\u6001"}),(0,L.jsx)("dd",{children:lr[c.status]})]}),c.reportPath?(0,L.jsxs)("div",{children:[(0,L.jsx)("dt",{children:"\u62A5\u544A\u6587\u4EF6"}),(0,L.jsx)("dd",{children:(0,L.jsx)("code",{children:c.reportPath})})]}):null]}),c.report?(0,L.jsx)("p",{className:"wand-team-work-report",children:c.report}):null,c.sessionId&&t?(0,L.jsxs)(ge.WandButton,{kind:"ghost",size:"small",onClick:()=>t(c.sessionId),children:[(0,L.jsx)(ge.WandIcon,{name:"terminal",size:14,slot:"start"}),"\u6253\u5F00\u4F1A\u8BDD"]}):null]})})]},c.id)})}):(0,L.jsx)("p",{className:"wand-team-empty-line",children:"\u8D1F\u8D23\u4EBA\u8FD8\u6CA1\u6709\u6D3E\u53D1\u5DE5\u4F5C\u4EFB\u52A1\u3002"})]})})}function pr({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),h=oe.useRef(""),x=m&&(m.run.id===e||h.current===e)?m:null,S=!!x&&x.run.id!==e,b=x?.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 Fs(g);if(E!==u.current||i.current!==e)return;if(N){h.current=N,Xt.taskBoardController.open("","","teamchat",N);return}s(O=>xt(O,g)),h.current="",d("")}catch(g){if(E!==u.current||i.current!==e)return;let N=(0,cr.failureMessage)(g,"\u7FA4\u804A\u52A0\u8F7D\u5931\u8D25\u3002");d(h.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(()=>{h.current!==e&&(h.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===x?.run.teamId&&f()}),[f,x?.run.teamId]);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=x&&!S?Tt[x.run.status]:null;return(0,L.jsxs)("section",{className:"task-board-native-page wand-team-chat-page","aria-label":"\u7FA4\u804A",children:[(0,L.jsxs)("header",{className:"task-board-workspace-header",children:[(0,L.jsxs)("div",{className:"task-board-kicker",children:[a?(0,L.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,L.jsx)(mr.SidebarToggleIcon,{open:t,size:16})}):null,(0,L.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,L.jsx)(ge.WandIcon,{name:"chevronLeft"})}),x?(0,L.jsx)("span",{className:"wand-team-chat-heading-avatar","aria-hidden":"true",children:(0,L.jsx)(Gt.TeamAvatarStack,{members:Ne(x).members,max:2,size:"sm"})}):null,(0,L.jsxs)("div",{className:"task-board-heading-copy",children:[(0,L.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:x?Ne(x).name:"\u7FA4\u804A"}]}),(0,L.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":x?`${Ne(x).members.length} \u4F4D\u6210\u5458 \xB7 \u56E2\u961F\u7FA4\u804A`:c||"\u6B63\u5728\u52A0\u8F7D\u7FA4\u804A\u2026"})]})]}),x&&k?(0,L.jsx)("div",{className:"task-board-header-actions wand-team-chat-head-meta",children:(0,L.jsx)(ge.WandBadge,{tone:k.tone,children:k.label})}):null]}),c?(0,L.jsxs)("div",{className:"task-board-native-banner is-error",role:"alert",children:[(0,L.jsx)("span",{children:c}),e?(0,L.jsx)(ge.WandButton,{kind:"ghost",size:"small",onClick:()=>{f()},children:"\u91CD\u65B0\u52A0\u8F7D"}):null]}):null,(0,L.jsx)("div",{className:"wand-team-chat-body",children:x?(0,L.jsx)(ot,{detail:x,staleRun:S,onChange:I,onOpenSession:r,details:(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(js,{detail:x,onOpenSession:r}),x.run.chatSessionId&&r?(0,L.jsx)(ge.WandButton,{kind:"ghost",size:"small",onClick:()=>r(x.run.chatSessionId),children:"\u67E5\u770B\u5B8C\u6574\u4F1A\u8BDD\u8BB0\u5F55"}):null]})}):c?null:(0,L.jsx)("p",{className:"wand-team-empty-line",children:"\u6B63\u5728\u52A0\u8F7D\u2026"})})]})}var ur=__wandCssTextPool[0];var hr=y(fr(),1);(0,hr.installStyleSheet)("wand-ai-teams-styles",ur);globalThis.__wandAiTeamsChunk={AiTeamsPage:dr,TaskTeamRunPanel:In,TeamChatView:ot,TeamChatPage:pr};})();
|
|
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)))}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};})();
|
|
20
20
|
|
|
21
21
|
})();
|