@co0ontty/wand 4.82.0 → 4.83.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/README.md +47 -9
  2. package/dist/agent-dispatch.d.ts +3 -2
  3. package/dist/agent-dispatch.js +19 -3
  4. package/dist/ai-team-delivery-types.d.ts +40 -0
  5. package/dist/ai-team-delivery-types.js +1 -0
  6. package/dist/ai-team-delivery.d.ts +13 -0
  7. package/dist/ai-team-delivery.js +89 -0
  8. package/dist/ai-team-employee-binding.d.ts +16 -0
  9. package/dist/ai-team-employee-binding.js +77 -0
  10. package/dist/ai-team-prompts.js +5 -0
  11. package/dist/ai-team-runner.d.ts +9 -2
  12. package/dist/ai-team-runner.js +52 -7
  13. package/dist/ai-team-types.d.ts +17 -3
  14. package/dist/ai-team-types.js +43 -3
  15. package/dist/build-info.json +3 -3
  16. package/dist/cli.js +36 -0
  17. package/dist/config.d.ts +18 -10
  18. package/dist/config.js +63 -105
  19. package/dist/decision-client.d.ts +4 -0
  20. package/dist/decision-client.js +91 -0
  21. package/dist/decision-runner.d.ts +9 -0
  22. package/dist/decision-runner.js +36 -0
  23. package/dist/decision-service.d.ts +46 -0
  24. package/dist/decision-service.js +230 -0
  25. package/dist/decision-skill.d.ts +6 -0
  26. package/dist/decision-skill.js +70 -0
  27. package/dist/decision-tool.d.ts +21 -0
  28. package/dist/decision-tool.js +346 -0
  29. package/dist/decision-types.d.ts +36 -0
  30. package/dist/decision-types.js +123 -0
  31. package/dist/decision-worker.py +86 -0
  32. package/dist/default-employee.d.ts +4 -1
  33. package/dist/default-employee.js +11 -1
  34. package/dist/env-utils.js +3 -0
  35. package/dist/git-quick-commit.js +7 -1
  36. package/dist/message-truncator.d.ts +1 -1
  37. package/dist/message-truncator.js +29 -22
  38. package/dist/models.d.ts +1 -0
  39. package/dist/models.js +31 -4
  40. package/dist/process-manager.d.ts +39 -1
  41. package/dist/process-manager.js +112 -8
  42. package/dist/provider-catalog.d.ts +47 -0
  43. package/dist/provider-catalog.js +138 -0
  44. package/dist/provider-cli-updater.d.ts +1 -1
  45. package/dist/pty-foreground.d.ts +37 -0
  46. package/dist/pty-foreground.js +56 -0
  47. package/dist/pty-turn-activity.d.ts +6 -5
  48. package/dist/pty-turn-activity.js +6 -5
  49. package/dist/retention.d.ts +29 -0
  50. package/dist/retention.js +142 -0
  51. package/dist/server-ai-team-routes.d.ts +2 -1
  52. package/dist/server-ai-team-routes.js +27 -9
  53. package/dist/server-decision-routes.d.ts +10 -0
  54. package/dist/server-decision-routes.js +52 -0
  55. package/dist/server-employee-routes.js +9 -1
  56. package/dist/server-session-routes.d.ts +2 -2
  57. package/dist/server-session-routes.js +97 -1
  58. package/dist/server-settings-routes.js +10 -36
  59. package/dist/server-update-routes.js +2 -1
  60. package/dist/server-workspace-routes.js +8 -0
  61. package/dist/server.js +37 -5
  62. package/dist/session-completion-state.d.ts +26 -0
  63. package/dist/session-completion-state.js +30 -0
  64. package/dist/session-completion.d.ts +12 -0
  65. package/dist/session-completion.js +62 -0
  66. package/dist/session-provider.d.ts +1 -15
  67. package/dist/session-provider.js +4 -54
  68. package/dist/session-registry.d.ts +5 -0
  69. package/dist/session-registry.js +19 -1
  70. package/dist/session-transport.js +2 -0
  71. package/dist/storage.d.ts +12 -0
  72. package/dist/storage.js +119 -16
  73. package/dist/structured-client-protocol.js +36 -1
  74. package/dist/structured-provider-common.js +3 -3
  75. package/dist/structured-session-manager.d.ts +13 -1
  76. package/dist/structured-session-manager.js +196 -27
  77. package/dist/system-employee.js +1 -0
  78. package/dist/task-types.d.ts +4 -2
  79. package/dist/tool-preview.d.ts +8 -0
  80. package/dist/tool-preview.js +158 -0
  81. package/dist/types.d.ts +35 -2
  82. package/dist/web-ui/content/ai-teams.js +13 -13
  83. package/dist/web-ui/content/scripts.js +66 -64
  84. package/dist/web-ui/content/styles.css +1 -1
  85. package/dist/web-ui/content/tailwind.css +3 -0
  86. package/dist/web-ui/embedded-assets.js +3 -3
  87. package/dist/web-ui/provider-identity.d.ts +7 -13
  88. package/dist/web-ui/provider-identity.js +8 -71
  89. package/package.json +3 -2
  90. package/skills/wand-decision/SKILL.md +61 -0
  91. package/skills/wand-decision/scripts/decide.mjs +16 -0
@@ -1,21 +1,21 @@
1
1
  "use strict";
2
2
  (() => {
3
- const __wandCssTextPool = Object.freeze([".wand-teams-layout{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);flex:1 1 auto;min-height:0;border-top:1px solid var(--border-subtle)}.wand-teams-list{display:flex;flex-direction:column;gap:10px;min-height:0;padding:14px 14px 18px 28px;overflow-y:auto;border-right:1px solid var(--border-subtle)}.wand-teams-cards{display:grid;gap:6px}.wand-teams-card{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:\"avatars avatars\" \"copy copy\" \"meta meta\";gap:6px;padding:12px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);background:var(--bg-secondary);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.wand-teams-card:hover{border-color:var(--border-default)}.wand-teams-card[aria-pressed=true]{border-color:color-mix(in srgb,var(--accent) 55%,var(--border-subtle));background:var(--accent-muted)}.wand-teams-card>.wand-team-avatar-stack{grid-area:avatars}.wand-teams-card-copy{grid-area:copy;display:grid;gap:2px;min-width:0}.wand-teams-card-copy strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.wand-teams-card-copy small,.wand-teams-card-meta small{overflow:hidden;color:var(--text-tertiary);font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap}.wand-teams-card-meta{grid-area:meta;display:flex;min-width:0}.wand-teams-empty{display:grid;justify-items:center;gap:10px;padding:28px 12px;color:var(--text-tertiary);font-size:var(--font-size-sm);text-align:center}.wand-teams-empty p{margin:0}.wand-teams-empty.is-detail{align-content:center;height:100%}.wand-teams-detail{display:flex;flex-direction:column;gap:14px;min-width:0;min-height:0;padding:18px 28px 32px;overflow-y:auto;animation:wand-settings-fade-in var(--transition-normal)}.wand-teams-detail>*{flex:0 0 auto;width:100%;max-width:920px}.wand-teams-detail-stack{position:relative;display:grid}.wand-teams-detail-pane{grid-area:1 / 1;min-width:0;opacity:1;transition:opacity var(--motion-normal) var(--ease-in-out-smooth)}.wand-teams-detail-pane[data-hidden]{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--motion-quick-exit) var(--ease-in-out-smooth),visibility var(--motion-quick-exit) step-end}.wand-teams-detail>.wand-stretch-tabs{width:auto;align-self:flex-start}.wand-teams-detail-head{display:flex;align-items:center;gap:14px;min-width:0}.wand-teams-detail-head h2{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.wand-teams-detail-head p{margin:2px 0 0;color:var(--text-tertiary);font-size:var(--font-size-sm)}.wand-teams-create-icon{transition:transform var(--transition-normal)}.task-board-create-button[aria-pressed=true] .wand-teams-create-icon{transform:rotate(45deg)}.wand-teams-templates{display:grid;gap:12px}.wand-teams-template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}.wand-teams-template{display:grid;justify-items:start;gap:6px;padding:14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);background:var(--bg-secondary);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--transition-fast),transform var(--transition-fast)}.wand-teams-template:hover{border-color:var(--accent)}.wand-teams-template:active{transform:scale(.98)}.wand-teams-template strong{font-size:var(--font-size-sm)}.wand-teams-template small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-team-editor{display:grid;gap:22px}.wand-team-section{display:grid;gap:12px}.wand-team-section-head{display:flex;align-items:baseline;gap:10px}.wand-team-section-head h3{margin:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.wand-team-section-head small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-team-org{display:grid;gap:22px}.wand-team-org-leader{position:relative;display:grid;justify-items:center}.wand-team-org-leader>.wand-team-member{width:min(100%,420px)}.wand-team-org-leader:after{content:\"\";position:absolute;top:100%;left:50%;width:1px;height:22px;background:var(--border-default)}.wand-team-org-members{position:relative;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));align-items:start;gap:10px;padding-top:12px;border-top:1px solid var(--border-default)}.wand-team-member{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary);transition:border-color var(--transition-fast)}.wand-team-member[data-leader]{border-color:color-mix(in srgb,var(--warning) 45%,var(--border-subtle))}.wand-team-member[data-open]{grid-column:1 / -1;border-color:var(--border-default)}.wand-team-member-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:14px 12px 12px;border:0;color:var(--text-primary);background:transparent;font:inherit;text-align:left;cursor:pointer}.wand-team-member-copy{display:grid;gap:2px;min-width:0}.wand-team-member-copy strong{display:flex;align-items:center;gap:6px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.wand-team-member-copy em{padding:0 6px;border-radius:var(--radius-full);color:var(--warning);background:var(--warning-muted);font-size:11px;font-style:normal;font-weight:var(--font-weight-medium)}.wand-team-member-copy small{display:-webkit-box;overflow:hidden;color:var(--text-secondary);font-size:var(--font-size-xs);-webkit-box-orient:vertical;-webkit-line-clamp:2}.wand-team-member-agent{overflow:hidden;color:var(--text-tertiary);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.wand-team-member-inner{display:grid;gap:10px;padding:0 12px}.wand-team-member[data-open] .wand-team-member-inner{padding-bottom:12px}.wand-team-member-actions{display:flex;justify-content:flex-end;gap:6px}.wand-team-member-add{display:grid;place-items:center;align-content:center;gap:4px;min-height:76px;border:1px dashed var(--border-default);border-radius:var(--radius-md);color:var(--text-tertiary);background:transparent;font:inherit;font-size:var(--font-size-xs);cursor:pointer}.wand-team-member-add:hover:not(:disabled){color:var(--text-primary);border-color:var(--border-strong)}.wand-team-member-add:disabled{opacity:.5;cursor:not-allowed}.wand-team-avatar-picker{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.wand-team-coat{display:grid;place-items:center;width:30px;height:30px;padding:0;overflow:hidden;border:1px solid var(--border-subtle);border-radius:30%;color:var(--text-tertiary);background:var(--bg-tertiary);cursor:pointer}.wand-team-coat svg{width:72%;height:72%}.wand-team-coat[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-muted)}.wand-team-avatar-error{color:var(--danger);font-size:var(--font-size-xs)}.wand-team-empty-line{margin:0;color:var(--text-tertiary);font-size:var(--font-size-sm)}.wand-ai-team-editor-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:12px}.wand-ai-team-duty{min-height:58px;resize:none}.wand-ai-team-member-agent{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.wand-ai-team-editor-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.wand-ai-team-editor-footer .wand-settings-save-bar{flex:1 1 auto}.wand-team-candidates{display:grid;gap:8px;padding:10px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-primary)}.wand-team-candidates-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.wand-team-candidates-head>span{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.wand-team-candidates-head>small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-team-candidates-foot{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.wand-team-candidate-slot{display:grid;grid-template-rows:1fr;opacity:1;transition:grid-template-rows var(--motion-normal) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth)}.wand-team-candidate-slot[data-collapsed]{grid-template-rows:0fr;opacity:0}.wand-team-candidate{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:8px;min-height:0;overflow:hidden}.wand-team-candidate-tag{padding:3px 8px;border-radius:var(--radius-full);color:var(--text-secondary);background:var(--bg-tertiary);font-size:11px;font-weight:var(--font-weight-medium);white-space:nowrap}.wand-team-candidate-slot:first-of-type .wand-team-candidate-tag{color:var(--accent);background:var(--accent-muted)}.wand-team-candidate[data-duplicate] .wand-team-candidate-tag{color:var(--danger);background:var(--danger-muted)}.wand-team-candidate-tools{display:flex;gap:2px}.wand-team-candidate-tool{display:grid;place-items:center;width:26px;height:26px;padding:0;border:0;border-radius:var(--radius-sm);color:var(--text-tertiary);background:transparent;cursor:pointer;transition:color var(--motion-fast) var(--ease-in-out-smooth),background var(--motion-fast) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth),transform var(--motion-press) var(--ease-out-expo)}.wand-team-candidate-tool>svg{transition:transform var(--motion-morph) var(--ease-out-back)}.wand-team-candidate-tool:hover:not(:disabled){color:var(--text-primary);background:var(--bg-hover)}.wand-team-candidate-tool:active:not(:disabled){transform:scale(.9)}.wand-team-candidate-tool[data-tool=up]:hover:not(:disabled)>svg{transform:translateY(-2px)}.wand-team-candidate-tool[data-tool=down]:hover:not(:disabled)>svg{transform:translateY(2px)}.wand-team-candidate-tool[data-tool=remove]:hover:not(:disabled)>svg{transform:rotate(-90deg)}.wand-team-candidate-add{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:1px dashed var(--border-default);border-radius:var(--radius-full);color:var(--text-tertiary);background:transparent;font:inherit;font-size:var(--font-size-xs);cursor:pointer;transition:color var(--motion-fast) var(--ease-in-out-smooth),border-color var(--motion-fast) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth),transform var(--motion-press) var(--ease-out-expo)}.wand-team-candidate-add>svg{transition:transform var(--motion-morph) var(--ease-out-back)}.wand-team-candidate-add:hover:not(:disabled){color:var(--text-primary);border-color:var(--accent)}.wand-team-candidate-add:hover:not(:disabled)>svg{transform:scale(1.15)}.wand-team-candidate-add:active:not(:disabled){transform:scale(.96)}.wand-team-candidate-tool:disabled,.wand-team-candidate-add:disabled{opacity:.4;cursor:not-allowed}.wand-team-candidate-error{color:var(--danger);font-size:var(--font-size-xs)}.wand-employee-create-submit{min-inline-size:92px}.wand-employee-hint{margin:0;color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-employee-advanced-toggle{display:flex;justify-content:flex-start}.wand-employee-advanced-toggle button>svg:last-child{transition:transform var(--transition-fast)}.wand-employee-advanced-toggle[data-open] button>svg:last-child{transform:rotate(180deg)}.wand-employee-advanced{display:grid;grid-template-rows:0fr;align-self:start;margin-block-start:-10px;opacity:0;transition:grid-template-rows var(--transition-normal),margin-block-start var(--transition-normal),opacity var(--transition-fast)}.wand-employee-advanced[data-open]{grid-template-rows:1fr;margin-block-start:0;opacity:1}.wand-employee-advanced-inner{display:grid;gap:10px;min-height:0;overflow:hidden}.wand-employee-advanced-tools{display:flex;justify-content:flex-end}.wand-team-runs{display:grid;gap:6px;margin:0;padding:0;list-style:none}.wand-team-run{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary)}.wand-team-run-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;color:var(--text-primary);background:transparent;font:inherit;text-align:left;cursor:pointer}.wand-team-run-head strong{overflow:hidden;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap}.wand-team-run-id{color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--font-size-xs)}.wand-team-run-head small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-team-run-inner{min-height:0;overflow:hidden}.wand-team-run[data-open] .wand-team-run-inner{padding:0 10px 10px}.wand-team-run-inner>.task-board-team-run{border:0;padding:4px 2px;background:transparent}.task-board-team{display:grid;gap:10px;margin-top:14px}.task-board-team-run{display:grid;gap:12px;padding:14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary)}.task-board-team-run-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.task-board-team-run-kicker{color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:.04em}.task-board-team-run-head strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.task-board-team-run-head small{margin-right:auto;color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-run-detail{margin:0;color:var(--text-secondary);font-size:var(--font-size-xs)}.task-board-team-error{margin:0;color:var(--danger);font-size:var(--font-size-xs)}.task-board-team-roster{display:flex;gap:6px;overflow-x:auto;padding:6px 2px 2px}.task-board-team-roster-item{display:grid;justify-items:center;gap:4px;min-width:64px;padding:8px 6px 6px;border:1px solid transparent;border-radius:var(--radius-md);color:var(--text-primary);background:transparent;font:inherit;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.task-board-team-roster-item:hover{background:var(--bg-hover)}.task-board-team-roster-item[aria-pressed=true]{border-color:var(--accent);background:var(--accent-muted)}.task-board-team-roster-item>span:not(.wand-team-avatar){max-width:72px;overflow:hidden;font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap}.task-board-team-roster-item small{color:var(--text-tertiary);font-size:11px;font-variant-numeric:tabular-nums}.task-board-team-banner{display:grid;gap:8px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--bg-tertiary)}.task-board-team-banner[data-attention]{background:var(--warning-muted);box-shadow:inset 3px 0 0 var(--warning)}.task-board-team-banner p{margin:0;color:var(--text-secondary);font-size:var(--font-size-xs);white-space:pre-wrap}.task-board-team-views{justify-self:start}.task-board-team-groups{display:grid;gap:14px}.task-board-team-views-stack{position:relative;display:grid}.task-board-team-view{grid-area:1 / 1;min-width:0;opacity:1;transition:opacity var(--motion-normal) var(--ease-in-out-smooth)}.task-board-team-view[data-hidden]{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--motion-quick-exit) var(--ease-in-out-smooth),visibility var(--motion-quick-exit) step-end}.task-board-team-chat{display:grid;gap:8px}.team-chat-context{display:flex;align-items:center;gap:8px;min-width:0;min-height:38px;padding:7px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);background:var(--bg-secondary);font:inherit;text-align:left;cursor:pointer}.team-chat-context:hover,.team-chat-context:focus-visible{border-color:var(--accent)}.team-chat-context-label{flex:none;color:var(--accent);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.team-chat-context-title{flex:1;min-width:0;overflow:hidden;font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap}.team-chat-context-action{flex:none;color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-details{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--motion-normal) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth)}.team-chat-details[data-open]{grid-template-rows:1fr;opacity:1}.team-chat-details-inner{display:grid;gap:12px;min-height:0;overflow:hidden}.team-chat-goal{display:grid;gap:6px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border-subtle));border-left:3px solid var(--accent);border-radius:var(--radius-md);background:var(--accent-muted)}.team-chat-goal-head{display:flex;align-items:center;gap:8px}.team-chat-goal-label{padding:1px 6px;border-radius:var(--radius-sm);color:var(--accent);background:var(--bg-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.team-chat-goal-meta{margin-left:auto;color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-goal-preview{display:-webkit-box;margin:0;overflow:hidden;color:var(--text-secondary);font-size:var(--font-size-xs);white-space:pre-wrap;-webkit-box-orient:vertical;-webkit-line-clamp:3}.team-chat-goal-body-text{margin:0;color:var(--text-secondary);font:inherit;font-size:var(--font-size-xs);white-space:pre-wrap;overflow-wrap:anywhere}.team-chat-office{display:grid;gap:8px}.team-chat-office-head{display:flex;align-items:baseline;gap:8px}.team-chat-office-head strong{font-size:var(--font-size-sm);color:var(--text-primary)}.team-chat-office-head small{min-width:0;margin-left:auto;color:var(--text-tertiary);font-size:var(--font-size-xs);text-align:right}.team-chat-office-members{display:flex;gap:8px;overflow-x:auto;padding:1px 1px 5px;scroll-snap-type:x proximity}.team-chat-office-member{display:flex;flex:0 0 210px;align-items:center;gap:7px;min-width:0;min-height:52px;padding:7px 8px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);text-align:left;scroll-snap-align:start}button.team-chat-office-member{cursor:pointer;transition:border-color var(--motion-fast) var(--ease-in-out-smooth)}button.team-chat-office-member:hover,button.team-chat-office-member:focus-visible{border-color:var(--accent)}.team-chat-office-copy{display:grid;flex:1;gap:2px;min-width:0}.team-chat-office-copy strong,.team-chat-office-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-chat-office-copy strong{font-size:var(--font-size-xs)}.team-chat-office-copy small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-office-state{flex:0 0 auto;color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-office-state[data-state=working]{color:var(--info)}.team-chat-office-state[data-state=attention]{color:var(--warning)}.team-chat-office-state[data-state=done]{color:var(--success)}.team-chat-office-state[data-state=failed]{color:var(--danger)}.task-board-team-chat-list{display:flex;flex-direction:column;gap:12px;max-height:360px;padding:4px 2px;overflow-y:auto;overscroll-behavior-y:contain}.task-board-team-chat .team-chat-time-marker{align-self:center;margin:6px 0 0;color:var(--text-tertiary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;line-height:var(--line-height-base)}.task-board-team-chat .chat-notice .team-chat-mention{display:inline;max-width:none;padding:0;border-radius:0;color:var(--accent);background:transparent;font-weight:inherit;white-space:inherit;overflow:visible}.task-board-team-chat .team-chat-msg{flex-direction:row;align-items:flex-start;gap:10px;width:100%;max-width:100%}.task-board-team-chat .team-chat-msg:hover{transform:none}.task-board-team-chat .team-chat-msg[data-side=end]{flex-direction:row-reverse}.task-board-team-chat .team-chat-msg-content{display:flex;flex:1 1 auto;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}.task-board-team-chat .team-chat-msg[data-side=end] .team-chat-msg-content{align-items:flex-end}.task-board-team-chat .team-chat-msg[data-shape=bubble] .team-chat-msg-content{max-width:min(100%,560px)}.task-board-team-chat .team-chat-msg[data-shape=document] .team-chat-msg-content{max-width:100%}.task-board-team-chat .chat-message.team-chat-msg{margin:0}.task-board-team-chat .team-chat-msg-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}.task-board-team-chat .team-chat-msg-head .avatar-name{max-width:160px;overflow:hidden;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap}.task-board-team-chat .team-chat-msg-head span.avatar-name{color:var(--text-primary)}.task-board-team-chat .team-chat-msg-head .chat-message-time{padding:0;font-size:var(--font-size-2xs)}.task-board-team-chat .team-chat-mention,.team-chat-doc-layer .team-chat-mention{display:inline-block;max-width:min(24ch,100%);overflow:hidden;padding:0 4px;border-radius:var(--radius-xs);color:var(--accent);background:var(--accent-muted);font-weight:var(--font-weight-medium);text-overflow:ellipsis;vertical-align:baseline;white-space:nowrap}.team-chat-doc-layer .team-chat-mention{max-width:100%;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}.task-board-team-chat .team-chat-avatar,.team-chat-doc-layer .team-chat-avatar{display:grid;flex:0 0 auto;place-items:center;width:32px;height:32px;overflow:hidden;border-radius:30%;background:var(--bg-tertiary)}.task-board-team-chat .team-chat-avatar[data-size=sm],.team-chat-doc-layer .team-chat-avatar[data-size=sm]{width:24px;height:24px}.task-board-team-chat .team-chat-avatar[data-kind=brand],.team-chat-doc-layer .team-chat-avatar[data-kind=brand]{background:transparent}.task-board-team-chat .team-chat-avatar .wand-team-avatar-cat,.team-chat-doc-layer .team-chat-avatar .wand-team-avatar-cat{width:74%;height:74%}.task-board-team-chat .team-chat-avatar-upload,.team-chat-doc-layer .team-chat-avatar-upload{display:block;width:100%;height:100%;object-fit:cover}.task-board-team-chat .team-chat-avatar-brand,.team-chat-doc-layer .team-chat-avatar-brand{display:block;width:100%;height:100%}.task-board-team-chat .chat-message.team-chat-msg .team-chat-bubble{display:grid;justify-items:start;gap:4px;padding:10px 14px;border:1px solid var(--border-subtle);border-radius:12px;color:var(--text-primary);background:var(--bg-surface);font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-base)}.task-board-team-chat .team-chat-msg[data-side=start] .team-chat-bubble{border-top-left-radius:6px}.task-board-team-chat .team-chat-msg[data-side=end] .team-chat-bubble{justify-items:end;border-color:transparent;border-top-right-radius:6px;color:var(--text-inverse);background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%)}.task-board-team-chat .team-chat-bubble-text,.task-board-team-chat .team-chat-doc-text{margin:0;font:inherit;font-size:inherit;line-height:inherit;white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-chat .team-chat-attachments,.team-chat-doc-layer .team-chat-attachments{display:flex;flex-wrap:wrap;gap:6px;max-width:100%}.task-board-team-chat .team-chat-attachment,.team-chat-doc-layer .team-chat-attachment{display:inline-flex;align-items:center;gap:6px;max-width:100%;min-height:34px;padding:6px 9px;overflow:hidden;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);background:var(--bg-elevated);font:inherit;font-size:var(--font-size-xs);text-align:left;cursor:pointer}.task-board-team-chat .team-chat-attachment:hover,.team-chat-doc-layer .team-chat-attachment:hover{border-color:var(--accent)}.task-board-team-chat .team-chat-attachment:focus-visible,.team-chat-doc-layer .team-chat-attachment:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.task-board-team-chat .team-chat-attachment span,.team-chat-doc-layer .team-chat-attachment span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-board-team-chat .team-chat-attachment[data-image],.team-chat-doc-layer .team-chat-attachment[data-image]{min-height:0;padding:0;line-height:0}.task-board-team-chat .team-chat-attachment img,.team-chat-doc-layer .team-chat-attachment img{display:block;width:auto;max-width:min(220px,52vw);height:auto;max-height:180px;object-fit:contain}.task-board-team-chat .team-chat-file-card{width:min(100%,360px);overflow:hidden;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary)}.task-board-team-chat .team-chat-file-open{display:grid;grid-template-columns:minmax(0,1fr) 54px;align-items:start;gap:12px;width:100%;padding:14px;border:0;color:var(--text-primary);background:transparent;font:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast)}.task-board-team-chat .team-chat-file-open:hover{background:var(--bg-tertiary)}.task-board-team-chat .team-chat-file-copy{display:grid;gap:6px;min-width:0}.task-board-team-chat .team-chat-file-copy strong,.task-board-team-chat .team-chat-file-excerpt{display:-webkit-box;overflow:hidden;overflow-wrap:anywhere;-webkit-box-orient:vertical}.task-board-team-chat .team-chat-file-copy strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);-webkit-line-clamp:2}.task-board-team-chat .team-chat-file-excerpt{color:var(--text-secondary);font-size:var(--font-size-xs);line-height:var(--line-height-base);white-space:pre-line;-webkit-line-clamp:3}.task-board-team-chat .team-chat-file-icon{display:flex;flex-direction:column;gap:4px;height:76px;padding:6px;overflow:hidden;border:1px solid var(--border-subtle);border-radius:var(--radius-xs);color:var(--text-tertiary);background:var(--bg-primary);font-size:6px;line-height:8px;overflow-wrap:anywhere}.task-board-team-chat .team-chat-file-icon svg{flex:0 0 auto;color:var(--accent)}.task-board-team-chat .team-chat-file-icon b{max-height:16px;overflow:hidden;color:var(--text-secondary)}.task-board-team-chat .team-chat-file-meta{display:flex;grid-column:1 / -1;gap:8px;min-width:0;padding-top:10px;border-top:1px solid var(--border-subtle);color:var(--text-tertiary);font-size:var(--font-size-2xs)}.task-board-team-chat .team-chat-file-meta>:first-child{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-board-team-chat .team-chat-file-meta>:last-child{flex:0 0 auto;white-space:nowrap}.task-board-team-chat .team-chat-file-open:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.task-board-team-chat .team-chat-doc{display:grid;justify-items:start;gap:6px;width:100%;padding:12px 14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);background:var(--bg-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-base)}.task-board-team-chat .team-chat-preview{min-width:0;max-width:100%;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-chat .team-chat-doc .team-chat-preview,.task-board-team-chat .team-chat-msg-empty{color:var(--text-secondary)}.task-board-team-chat .team-chat-msg[data-side=end] .team-chat-msg-empty{color:inherit;opacity:.78}.team-chat-step-chip{padding:1px 6px;border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-tertiary);font-size:var(--font-size-xs)}.team-chat-step-chip[data-ok]{color:var(--success)}.task-board-team-chat .team-chat-msg[data-status=failed] .team-chat-step-chip{color:var(--danger)}@keyframes wand-team-live-grow{0%{opacity:0;transform:translate(-10px)}}@keyframes wand-team-live-reduced{0%{opacity:0;transform:none}to{opacity:1;transform:none}}.team-chat-live-row{display:grid;gap:5px}.team-chat-live-row[data-leaving]{animation:wand-team-live-grow var(--motion-quick-exit) var(--ease-in-out-smooth) reverse forwards}.team-chat-live-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px;animation:wand-team-live-grow var(--motion-fast) var(--ease-out-expo) both}.team-chat-live-name{max-width:160px;overflow:hidden;color:var(--text-secondary);font-size:var(--font-size-2xs);text-overflow:ellipsis;white-space:nowrap}.team-chat-live-chip{padding:1px 6px;border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-tertiary);font-size:var(--font-size-xs)}.team-chat-live-state{padding:1px 6px;border-radius:var(--radius-sm);color:var(--info);background:color-mix(in srgb,var(--info) 14%,transparent);font-size:var(--font-size-xs)}.team-chat-live-state[data-state=needs_input],.team-chat-live-state[data-state=needs_permission]{color:var(--warning);background:var(--warning-muted)}.team-chat-live-state[data-state=failed]{color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,transparent)}.team-chat-live-summary{display:flex;align-items:center;gap:10px;width:min(100%,560px);min-height:38px;padding:7px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-secondary);font:inherit;font-size:var(--font-size-xs);text-align:left;cursor:pointer}.team-chat-live-summary>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-chat-live-summary>small{flex:none;color:var(--accent)}.team-chat-live-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--motion-normal) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth)}.team-chat-live-body[data-open]{grid-template-rows:1fr;opacity:1}.team-chat-live-body-inner{min-height:0;overflow:hidden}.team-chat-live-card{display:grid;grid-template-rows:auto minmax(0,1fr);width:100%;max-width:560px;height:200px;padding:8px 10px;overflow:hidden;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-tertiary);cursor:pointer;transition:border-color var(--motion-fast) var(--ease-in-out-smooth),background var(--motion-fast) var(--ease-in-out-smooth)}.team-chat-live-card:hover,.team-chat-live-card:focus-visible{border-color:color-mix(in srgb,var(--accent) 45%,var(--border-subtle))}.team-chat-live-omitted{margin:0 0 4px;color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-live-text{min-height:0;margin:0;overflow-y:auto;overscroll-behavior-y:contain;color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--font-size-xs);line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.team-chat-plan-list{display:grid;gap:4px;margin:0;padding:0;list-style:none}.team-chat-plan-list li{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;padding:3px 0;font-size:var(--font-size-xs)}.team-chat-plan-title{color:var(--text-primary)}.team-chat-plan-basis{color:var(--text-tertiary);font-size:var(--font-size-2xs)}.team-chat-goal-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--transition-normal),opacity var(--transition-fast)}.team-chat-goal-body[data-open]{grid-template-rows:1fr;opacity:1}.team-chat-goal-body-inner{min-height:0;overflow:hidden}.team-chat-expand{justify-self:start;min-height:28px;padding:4px 0 0;border:0;color:var(--accent);background:transparent;font:inherit;font-size:var(--font-size-xs);cursor:pointer;transition:color var(--motion-fast) var(--ease-in-out-smooth),transform var(--motion-press) var(--ease-out-expo)}.team-chat-expand:hover{text-decoration:underline}.team-chat-expand:active{transform:scale(.98)}.task-board-team-chat .team-chat-msg[data-side=end] .team-chat-expand{justify-self:end;color:var(--text-inverse)}@keyframes wand-team-msg-in{0%{opacity:0;translate:0 4px}}.task-board-team-chat .chat-message.team-chat-msg[data-arriving],.task-board-team-chat .chat-message.chat-notice[data-arriving]{animation:wand-team-msg-in var(--motion-normal) var(--ease-out-expo)}.task-board-team-chat-input{position:relative;display:grid;gap:8px;min-width:0}.task-board-team-chat-hint{margin:0 12px;color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-chat-input .input-composer-row{max-width:none}.task-board-team-chat-input .team-chat-stop-action{color:var(--danger)}.task-board-team-chat-input .team-chat-stop-action:hover:not(:disabled){color:var(--danger);background:var(--danger-muted)}.wand-ui-dialog-content.wand-team-chat-doc-dialog{display:flex;width:min(720px,calc(100vw - var(--wand-safe-left) - var(--wand-safe-right) - 32px));max-height:min(72vh,640px);flex-direction:column;overflow:hidden}.wand-ui-dialog-content.wand-team-chat-doc-dialog[data-open]{animation:team-chat-doc-in var(--motion-normal) var(--ease-out-expo)}.wand-ui-dialog-content.wand-team-chat-doc-dialog[data-ending-style]{animation:team-chat-doc-out var(--motion-quick-exit) var(--ease-in-out-smooth)}.wand-doc-dx-start{--wand-doc-dx: -10px}.wand-doc-dx-end{--wand-doc-dx: 10px}.wand-doc-dy-top{--wand-doc-dy: -10px}.wand-doc-dy-bottom{--wand-doc-dy: 10px}@keyframes team-chat-doc-in{0%{opacity:0;translate:var(--wand-doc-dx, 0) var(--wand-doc-dy, 0);scale:.98}}@keyframes team-chat-doc-out{to{opacity:0;translate:var(--wand-doc-dx, 0) var(--wand-doc-dy, 0);scale:.98}}.team-chat-doc-layer{display:flex;flex:1 1 auto;flex-direction:column;gap:8px;min-height:0}.team-chat-doc-layer-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.team-chat-doc-layer-name{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.team-chat-doc-layer-text{flex:1 1 auto;min-height:40px;margin:0;padding-right:4px;overflow:auto;overscroll-behavior-y:contain;color:var(--text-primary);font:inherit;font-size:var(--font-size-sm);line-height:var(--line-height-base);white-space:pre-wrap;overflow-wrap:anywhere}.wand-team-chat-body{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;padding:0 28px 20px}.wand-team-chat-body>.task-board-team-chat{display:flex;width:100%;max-width:920px;min-height:0;margin:0 auto;flex:1 1 auto;flex-direction:column}.wand-team-chat-body .task-board-team-chat-list{flex:1 1 auto;min-height:0;max-height:none}.wand-team-chat-body .task-board-team-chat-input{flex:0 0 auto}.wand-team-chat-body .team-chat-details[data-open]{max-height:42vh;overflow-y:auto;overscroll-behavior-y:contain}.wand-team-chat-head-meta{display:flex;align-items:center;gap:10px}.wand-team-chat-crumb{font-size:var(--font-size-sm)}.wand-team-chat-heading-avatar{flex:0 0 auto;display:inline-flex;align-items:center}.wand-team-chat-heading-avatar .wand-team-avatar-stack{padding-top:0}.wand-team-chat-unconfirmed{color:var(--warning);font-size:var(--font-size-xs)}.wand-team-work-tasks{padding:6px 0 0;border-top:1px solid var(--border-subtle)}.wand-team-work-tasks-inner{display:grid;gap:8px;width:100%;max-width:920px;margin:0 auto}.wand-team-work-tasks-head{display:flex;align-items:baseline;gap:10px}.wand-team-work-tasks-head h2{margin:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.wand-team-work-tasks-head small{margin-left:auto;color:var(--text-tertiary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.wand-team-work-list{display:grid;gap:4px;margin:0;padding:0;list-style:none}.wand-team-work-item{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-primary)}.wand-team-work-item[data-status=queued],.wand-team-work-item[data-status=skipped]{opacity:.66}.wand-team-work-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px;width:100%;padding:8px 10px;border:0;border-radius:var(--radius-sm);color:var(--text-primary);background:transparent;font:inherit;text-align:left;cursor:pointer}.wand-team-work-head>svg{color:var(--text-muted);transition:transform var(--motion-fast) var(--ease-in-out-smooth)}.wand-team-work-item[data-open] .wand-team-work-head>svg{transform:rotate(180deg)}.wand-team-work-seq{color:var(--text-tertiary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.wand-team-work-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.wand-team-work-status{color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-team-work-item[data-status=running] .wand-team-work-status{color:var(--info)}.wand-team-work-item[data-status=done] .wand-team-work-status{color:var(--success)}.wand-team-work-item[data-status=failed] .wand-team-work-status{color:var(--danger)}.wand-team-work-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--motion-normal) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth)}.wand-team-work-item[data-open] .wand-team-work-body{grid-template-rows:1fr;opacity:1}.wand-team-work-body-inner{min-height:0;overflow:hidden;display:grid;gap:8px;padding:0 10px}.wand-team-work-item[data-open] .wand-team-work-body-inner{padding-bottom:10px}.wand-team-work-member{display:flex;align-items:center;gap:8px}.wand-team-work-member-name{font-size:var(--font-size-sm)}.wand-team-work-member-duty{overflow:hidden;color:var(--text-tertiary);font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap}.wand-team-work-meta{display:grid;gap:2px;margin:0;font-size:var(--font-size-xs)}.wand-team-work-meta div{display:flex;gap:8px}.wand-team-work-meta dt{flex:none;color:var(--text-tertiary)}.wand-team-work-meta dd{min-width:0;margin:0;overflow:hidden;color:var(--text-secondary)}.wand-team-work-meta code{overflow:hidden;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap}.wand-team-work-report{max-height:180px;margin:0;padding:8px 10px;overflow:auto;border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-tertiary);font-size:var(--font-size-xs);white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-step-skips{display:grid;gap:2px;padding:0 8px 8px}.task-board-team-step-skip-head{display:flex;align-items:center;gap:6px;width:100%;padding:6px 8px;border:0;border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-tertiary);font:inherit;font-size:var(--font-size-xs);text-align:left;cursor:pointer;transition:background var(--motion-fast) var(--ease-in-out-smooth)}.task-board-team-step-skip-head>svg:first-child{color:var(--warning);flex:0 0 auto}.task-board-team-step-skip-head>span{margin-right:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-board-team-step-skip-head>svg:last-child{color:var(--text-muted);transition:transform var(--motion-morph) var(--ease-out-back)}.task-board-team-step-skips[data-open] .task-board-team-step-skip-head>svg:last-child{transform:rotate(180deg)}.task-board-team-step-skip-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--motion-normal) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth)}.task-board-team-step-skips[data-open] .task-board-team-step-skip-body{grid-template-rows:1fr;opacity:1}.task-board-team-step-skip-inner{display:grid;gap:4px;min-height:0;margin:0;padding:0;overflow:hidden;list-style:none;color:var(--text-secondary);font-size:var(--font-size-xs)}.task-board-team-step-skip-inner li{display:grid;gap:2px;padding:4px 8px}.task-board-team-step-skip-inner strong{color:var(--text-primary);font-weight:var(--font-weight-medium)}.task-board-team-step-skip-inner span{white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-group>header{display:grid;gap:2px;margin-bottom:6px}.task-board-team-group>header strong{font-size:var(--font-size-sm)}.task-board-team-group>header small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-steps{position:relative;display:grid;gap:8px;margin:0;padding:0;list-style:none;animation:wand-settings-fade-in var(--transition-normal)}.task-board-team-step{position:relative;display:grid;grid-template-columns:26px minmax(0,1fr);align-items:start;gap:10px}.task-board-team-step:not(:last-child):before{content:\"\";position:absolute;top:34px;bottom:-6px;left:13px;width:1px;background:var(--border-subtle)}.task-board-team-step>.wand-team-avatar{margin-top:6px}.task-board-team-step-card{min-width:0;border-radius:var(--radius-sm);background:var(--bg-primary)}.task-board-team-step[data-kind=leader] .task-board-team-step-card{background:color-mix(in srgb,var(--warning) 7%,var(--bg-primary))}.task-board-team-step[data-status=queued] .task-board-team-step-card,.task-board-team-step[data-status=skipped] .task-board-team-step-card{opacity:.66}.task-board-team-step-head{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;width:100%;padding:8px 10px;border:0;border-radius:var(--radius-sm);color:var(--text-primary);background:transparent;font:inherit;text-align:left;cursor:pointer}.task-board-team-step-head svg{color:var(--text-muted);transition:transform var(--transition-fast)}.task-board-team-step[data-open] .task-board-team-step-head svg{transform:rotate(180deg)}.task-board-team-step-title{display:grid;min-width:0}.task-board-team-step-title strong,.task-board-team-step-title small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-board-team-step-title strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.task-board-team-step-title small,.task-board-team-step-status{color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-step[data-status=running] .task-board-team-step-status{color:var(--info)}.task-board-team-step[data-status=failed] .task-board-team-step-status{color:var(--danger)}.task-board-team-step[data-status=done] .task-board-team-step-status{color:var(--success)}.task-board-team-step-preview{display:-webkit-box;margin:-2px 10px 8px;overflow:hidden;color:var(--text-secondary);font-size:var(--font-size-xs);white-space:pre-wrap;-webkit-box-orient:vertical;-webkit-line-clamp:2}.task-board-team-step-inner{display:grid;gap:8px;padding:0 10px}.task-board-team-step[data-open] .task-board-team-step-inner{padding-bottom:10px}.task-board-team-step-inner h4{margin:0 0 4px;color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.task-board-team-step-inner pre{max-height:320px;margin:0;overflow:auto;color:var(--text-secondary);font:inherit;font-size:var(--font-size-xs);white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-step-meta{margin:0;color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-manual,.task-board-team-respond{display:grid;gap:8px}.task-board-team-step-body,.wand-team-member-body,.wand-team-run-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--transition-normal),opacity var(--transition-fast)}.task-board-team-step[data-open] .task-board-team-step-body,.wand-team-member[data-open] .wand-team-member-body,.wand-team-run[data-open] .wand-team-run-body{grid-template-rows:1fr;opacity:1}.task-board-team-step-inner,.wand-team-member-inner{min-height:0;overflow:hidden}.wand-team-member-head>svg,.wand-team-run-head>svg{color:var(--text-muted);transition:transform var(--transition-fast)}.wand-team-member[data-open] .wand-team-member-head>svg,.wand-team-run[data-open] .wand-team-run-head>svg{transform:rotate(180deg)}@media(max-width:760px){.wand-ai-team-editor-grid{grid-template-columns:minmax(0,1fr)}.wand-team-chat-body{padding:0 14px 16px}.task-board-team-chat-input .composer-plus-popover{max-width:calc(100% - 8px)}.wand-team-work-tasks{padding:4px 0 0}.wand-teams-layout{grid-template-columns:minmax(0,1fr)}.wand-teams-list{padding:12px 14px;border-right:0}.wand-teams-detail{padding:14px 14px 28px}.wand-teams-page[data-detail] .wand-teams-list{display:none}.wand-teams-page:not([data-detail]) .wand-teams-detail{display:none}.wand-team-run-head{grid-template-columns:auto minmax(0,1fr) auto auto}.wand-team-run-head small{display:none}.wand-team-candidate{grid-template-columns:auto minmax(0,1fr)}.wand-team-candidate-tools{grid-column:1 / -1;justify-content:end}.task-board-team-views-stack{display:block}.task-board-team-view{opacity:1}.task-board-team-view[data-hidden]{display:none;visibility:visible;transition:none}.wand-teams-detail-stack{display:block}.wand-teams-detail-pane{opacity:1}.wand-teams-detail-pane[data-hidden]{display:none;visibility:visible;transition:none}}@media(prefers-reduced-motion:reduce){.task-board-team-step-body,.wand-team-work-body,.wand-team-work-head>svg,.wand-team-member-body,.wand-team-run-body,.team-chat-goal-body,.team-chat-details,.team-chat-live-body,.task-board-team-step-head svg,.wand-team-member-head>svg,.wand-team-run-head>svg,.wand-team-candidate-tool,.wand-team-candidate-tool>svg,.wand-team-candidate-add,.wand-team-candidate-add>svg,.task-board-team-view,.task-board-team-step-skip-head,.task-board-team-step-skip-head>svg:last-child,.task-board-team-step-skip-body,.wand-teams-create-icon,.task-board-team-chat .chat-message.team-chat-msg[data-arriving],.task-board-team-chat .chat-message.chat-notice[data-arriving]{animation:none}.task-board-team-chat .team-chat-expand:active{transform:none}.task-board-team-chat .team-chat-live-head{animation-name:wand-team-live-reduced;animation-duration:calc(var(--motion-fast) * 0)}.task-board-team-chat .team-chat-live-row[data-leaving]{animation-name:wand-team-live-reduced;animation-duration:calc(var(--motion-quick-exit) * 0)}.team-chat-live-card{transition:none}.task-board-team-step-body,.wand-team-member-body,.wand-team-run-body,.wand-team-member-head>svg,.wand-team-run-head>svg{transition:none}.wand-teams-detail,.task-board-team-steps{animation:none}.wand-teams-detail-pane{transition:none}.wand-employee-advanced,.wand-employee-advanced-toggle button>svg{transition:none}}.wand-employees-layout{display:block!important;max-width:960px;margin:0 auto;padding:16px 20px 40px}.wand-employee-list{display:grid;gap:16px;width:100%}.wand-employee-card.is-archived{opacity:.65}.wand-employee-card.is-system{border-color:color-mix(in srgb,var(--accent) 38%,var(--border-subtle));background:color-mix(in srgb,var(--accent) 4%,var(--bg-primary))}.wand-employee-system-note{display:grid;gap:4px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border-subtle));border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent) 6%,var(--bg-primary))}.wand-employee-system-note strong{color:var(--accent-active);font-size:var(--font-size-xs)}.wand-employee-system-note span{color:var(--text-secondary);font-size:var(--font-size-xs);line-height:1.5}.wand-employee-memory{color:var(--text-secondary);font-size:var(--font-size-xs);line-height:1.6}.wand-employee-memory p{margin:.5em 0}.wand-employee-memory ul{margin:.5em 0;padding-inline-start:1.5em;overflow-wrap:anywhere}.wand-employee-memory-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5em}.wand-employee-memory-actions button{width:100%;min-width:0;font-size:inherit}.wand-employee-knowledge-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5em}.wand-employee-knowledge-actions button{width:100%;min-width:0;font-size:inherit}.wand-employee-knowledge-list{height:240px;overflow-y:auto;white-space:pre-wrap}.wand-employee-knowledge-list li+li{margin-block-start:.5em}.wand-employee-archived-tag{display:inline-block;padding:1px 6px;border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-tertiary);font-size:11px;font-style:normal}.wand-employee-filter-toggle{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-xs);color:var(--text-secondary);cursor:pointer;user-select:none}.wand-employee-filter-toggle input{cursor:pointer}.wand-teams-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.wand-teams-toolbar-search{flex:1 1 300px;max-width:400px}.wand-teams-toolbar-actions{display:flex;align-items:center;gap:12px}.wand-settings-field{display:grid;gap:6px}.wand-settings-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.wand-execution-subject-picker{display:grid;gap:16px}.wand-subject-group{display:grid;gap:8px;margin-top:10px}.wand-subject-group-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-secondary)}.wand-subject-empty-row{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--bg-secondary);border-radius:var(--radius-md);color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-link-btn{background:transparent;border:0;color:var(--accent);cursor:pointer;padding:0;font:inherit;text-decoration:underline}.wand-link-btn:hover{color:var(--accent-strong)}\n"]);
4
- (()=>{var Fr=Object.create;var Oa=Object.defineProperty;var Br=Object.getOwnPropertyDescriptor;var Hr=Object.getOwnPropertyNames;var jr=Object.getPrototypeOf,Ur=Object.prototype.hasOwnProperty;var X=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var qr=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Hr(t))!Ur.call(e,r)&&r!==n&&Oa(e,r,{get:()=>t[r],enumerable:!(a=Br(t,r))||a.enumerable});return e};var w=(e,t,n)=>(n=e!=null?Fr(jr(e)):{},qr(t||!e||!e.__esModule?Oa(n,"default",{value:e,enumerable:!0}):n,e));var Re=X((hi,Fa)=>{Fa.exports=globalThis.__wandAiTeamsHost("react")});var kt=X((bi,Ya)=>{Ya.exports=globalThis.__wandAiTeamsHost("errors")});var Ze=X((wi,Xa)=>{Xa.exports=globalThis.__wandAiTeamsHost("issues/task-board-agent")});var Wt=X((yi,Ga)=>{Ga.exports=globalThis.__wandAiTeamsHost("issues/task-board-controller")});var Qa=X((xi,Ja)=>{Ja.exports=globalThis.__wandAiTeamsHost("issues/task-board-repository")});var Tt=X((ki,Za)=>{Za.exports=globalThis.__wandAiTeamsHost("ai-teams/repository")});var lt=X((Ti,en)=>{en.exports=globalThis.__wandAiTeamsHost("ai-teams/avatar")});var an=X((Ri,tn)=>{tn.exports=globalThis.__wandAiTeamsHost("file-preview/controller")});var rn=X((Ai,nn)=>{nn.exports=globalThis.__wandAiTeamsHost("file-preview/model")});var $t=X((Ei,sn)=>{sn.exports=globalThis.__wandAiTeamsHost("http-adapter")});var ua=X((Si,on)=>{on.exports=globalThis.__wandAiTeamsHost("model-catalog")});var Ae=X((Ni,dn)=>{dn.exports=globalThis.__wandAiTeamsHost("ui")});var cn=X((Ci,ln)=>{ln.exports=globalThis.__wandAiTeamsHost("composer-attachments/host")});var pn=X((Ii,mn)=>{mn.exports=globalThis.__wandAiTeamsHost("composer-popover/action")});var gn=X((zi,un)=>{un.exports=globalThis.__wandAiTeamsHost("ai-teams/composer-bridge")});var Z=X((Mi,fn)=>{fn.exports=globalThis.__wandAiTeamsHost("react/jsx-runtime")});var Wn=X((Pi,Pn)=>{Pn.exports=globalThis.__wandAiTeamsHost("ui/motion-tokens")});var Ta=X((Oi,Un)=>{Un.exports=globalThis.__wandAiTeamsHost("overlay-controller")});var Kn=X((Fi,qn)=>{qn.exports=globalThis.__wandAiTeamsHost("provider-usage")});var Yn=X((Bi,Vn)=>{Vn.exports=globalThis.__wandAiTeamsHost("settings/fields")});var Ra=X((Hi,Xn)=>{Xn.exports=globalThis.__wandAiTeamsHost("shell/sidebar-toggle-icon")});var Qn=X((qi,Jn)=>{Jn.exports=globalThis.__wandAiTeamsHost("issues/agent-fields")});var Gt=X((Xi,er)=>{er.exports=globalThis.__wandAiTeamsHost("agents/employee-repository")});var ir=X((Zi,sr)=>{sr.exports=globalThis.__wandAiTeamsHost("ai-teams/cat-coats")});var Sr=X((Eo,Er)=>{Er.exports=globalThis.__wandAiTeamsHost("task-changes")});var Dr=X((zo,_r)=>{_r.exports=globalThis.__wandAiTeamsHost("styles")});var z=w(Re());function ma(e){return Array.isArray(e.agents)&&e.agents.length>0?e.agents:e.agent?[e.agent]:[]}function Ba(e){return`${e.provider}|${e.model}|${e.thinkingEffort}|${e.mode}|${e.kind}`}var Ha=6e4,ja=6e4,Kr="wand-ops";var Ua="\u7CFB\u7EDF\u8FD0\u7EF4";function Vr(e){return e?.systemKey===Kr}var Yr="wand-default",qa="e_wand_default";var Ka="\u9ED8\u8BA4\u4F19\u4F34";function pa(e){return e?.systemKey===Yr}function Pt(e){return Vr(e)||pa(e)}var Va=200;var gt=w(kt()),Ie=w(Ze()),st=w(Wt()),ea=w(Qa());var ee=w(Re()),ye=w(Tt()),Et=w(lt());var A=w(Re());var Bt=w(kt()),wa=w(an()),Rn=w(rn()),et=w($t()),An=w(Ze()),Xr=w(ua()),We=w(Ae()),En=w(cn()),fa=w(pn()),ct=w(lt()),De=w(gn()),Rt=w(Tt()),d=w(Z());function Gr(e){return`/api/structured-sessions/${encodeURIComponent(e)}/messages`}function Jr(e){return{input:e}}function Qr(e){return`/api/sessions/${encodeURIComponent(e)}/upload`}function Zr(e,t){return e.length?`[\u9644\u4EF6\u5DF2\u4E0A\u4F20\uFF0C\u8BF7\u67E5\u770B\u4EE5\u4E0B\u6587\u4EF6:
3
+ const __wandCssTextPool = Object.freeze([".team-delivery-card{min-width:0;border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.team-delivery-trigger{display:flex;align-items:center;gap:8px;width:100%;height:44px;padding:0 12px;border:0;border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);font:inherit;text-align:left;cursor:pointer}.team-delivery-trigger>span{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:var(--font-size-sm)}.team-delivery-trigger>small{flex:none;color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-delivery-trigger>svg{flex:none;transition:transform var(--motion-normal) var(--ease-in-out-smooth)}.team-delivery-trigger[aria-expanded=true]>svg{transform:rotate(180deg)}.team-delivery-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-delivery-body[data-open]{grid-template-rows:1fr;opacity:1}.team-delivery-inner{min-height:0;overflow:hidden}.team-delivery-details{display:grid;gap:12px;padding:12px;color:var(--text-primary);font-size:var(--font-size-sm);overflow-wrap:anywhere}.team-delivery-details h4,.team-delivery-details p{margin:0}.team-delivery-details section,.team-delivery-details ul{display:grid;gap:6px}.team-delivery-details ul{list-style:none;padding:0;margin:0}.team-delivery-note,.team-delivery-details small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-delivery-attention{color:var(--accent)}.team-delivery-file{display:flex;align-items:start;gap:8px;width:100%;padding:8px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-secondary);color:inherit;font:inherit;text-align:left;cursor:pointer}.team-delivery-file:hover,.team-delivery-trigger:focus-visible{border-color:var(--accent)}.team-delivery-file>svg{flex:none}.team-delivery-file>span,.team-delivery-handoff{display:grid;min-width:0;gap:4px}.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-employee-invite{min-width:0}.wand-team-employee-invite-inner{min-width:0;min-height:0;overflow:hidden}.wand-team-employee-invite .wand-team-candidates{min-width:0;overflow-wrap:anywhere}.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,.wand-employee-save-submit{min-inline-size:92px}.wand-employee-hint{margin:0;color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-employee-advanced-toggle{display:flex;justify-content:flex-start}.wand-employee-advanced-toggle button>svg:last-child{transition:transform var(--transition-fast)}.wand-employee-advanced-toggle[data-open] button>svg:last-child{transform:rotate(180deg)}.wand-employee-advanced{display:grid;grid-template-rows:0fr;align-self:start;margin-block-start:-10px;opacity:0;transition:grid-template-rows var(--transition-normal),margin-block-start var(--transition-normal),opacity var(--transition-fast)}.wand-employee-advanced[data-open]{grid-template-rows:1fr;margin-block-start:0;opacity:1}.wand-employee-advanced-inner{display:grid;gap:10px;min-height:0;overflow:hidden}.wand-employee-advanced-tools{display:flex;justify-content:flex-end}.wand-team-runs{display:grid;gap:6px;margin:0;padding:0;list-style:none}.wand-team-run{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary)}.wand-team-run-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;color:var(--text-primary);background:transparent;font:inherit;text-align:left;cursor:pointer}.wand-team-run-head strong{overflow:hidden;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap}.wand-team-run-id{color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--font-size-xs)}.wand-team-run-head small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-team-run-inner{min-height:0;overflow:hidden}.wand-team-run[data-open] .wand-team-run-inner{padding:0 10px 10px}.wand-team-run-inner>.task-board-team-run{border:0;padding:4px 2px;background:transparent}.task-board-team{display:grid;gap:10px;margin-top:14px}.task-board-team-run{display:grid;gap:12px;padding:14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary)}.task-board-team-run-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.task-board-team-run-kicker{color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:.04em}.task-board-team-run-head strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.task-board-team-run-head small{margin-right:auto;color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-run-detail{margin:0;color:var(--text-secondary);font-size:var(--font-size-xs)}.task-board-team-error{margin:0;color:var(--danger);font-size:var(--font-size-xs)}.task-board-team-roster{display:flex;gap:6px;overflow-x:auto;padding:6px 2px 2px}.task-board-team-roster-item{display:grid;justify-items:center;gap:4px;min-width:64px;padding:8px 6px 6px;border:1px solid transparent;border-radius:var(--radius-md);color:var(--text-primary);background:transparent;font:inherit;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.task-board-team-roster-item:hover{background:var(--bg-hover)}.task-board-team-roster-item[aria-pressed=true]{border-color:var(--accent);background:var(--accent-muted)}.task-board-team-roster-item>span:not(.wand-team-avatar){max-width:72px;overflow:hidden;font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap}.task-board-team-roster-item small{color:var(--text-tertiary);font-size:11px;font-variant-numeric:tabular-nums}.task-board-team-banner{display:grid;gap:8px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--bg-tertiary)}.task-board-team-banner[data-attention]{background:var(--warning-muted);box-shadow:inset 3px 0 0 var(--warning)}.task-board-team-banner p{margin:0;color:var(--text-secondary);font-size:var(--font-size-xs);white-space:pre-wrap}.task-board-team-views{justify-self:start}.task-board-team-groups{display:grid;gap:14px}.task-board-team-views-stack{position:relative;display:grid}.task-board-team-view{grid-area:1 / 1;min-width:0;opacity:1;transition:opacity var(--motion-normal) var(--ease-in-out-smooth)}.task-board-team-view[data-hidden]{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--motion-quick-exit) var(--ease-in-out-smooth),visibility var(--motion-quick-exit) step-end}.task-board-team-chat{display:grid;gap:8px}.team-chat-context{display:flex;align-items:center;gap:8px;min-width:0;min-height:38px;padding:7px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);background:var(--bg-secondary);font:inherit;text-align:left;cursor:pointer}.team-chat-context:hover,.team-chat-context:focus-visible{border-color:var(--accent)}.team-chat-context-label{flex:none;color:var(--accent);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.team-chat-context-title{flex:1;min-width:0;overflow:hidden;font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap}.team-chat-context-action{flex:none;color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-details{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--motion-normal) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth)}.team-chat-details[data-open]{grid-template-rows:1fr;opacity:1}.team-chat-details-inner{display:grid;gap:12px;min-height:0;overflow:hidden}.team-chat-goal{display:grid;gap:6px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border-subtle));border-left:3px solid var(--accent);border-radius:var(--radius-md);background:var(--accent-muted)}.team-chat-goal-head{display:flex;align-items:center;gap:8px}.team-chat-goal-label{padding:1px 6px;border-radius:var(--radius-sm);color:var(--accent);background:var(--bg-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.team-chat-goal-meta{margin-left:auto;color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-goal-preview{display:-webkit-box;margin:0;overflow:hidden;color:var(--text-secondary);font-size:var(--font-size-xs);white-space:pre-wrap;-webkit-box-orient:vertical;-webkit-line-clamp:3}.team-chat-goal-body-text{margin:0;color:var(--text-secondary);font:inherit;font-size:var(--font-size-xs);white-space:pre-wrap;overflow-wrap:anywhere}.team-chat-office{display:grid;gap:8px}.team-chat-office-head{display:flex;align-items:baseline;gap:8px}.team-chat-office-head strong{font-size:var(--font-size-sm);color:var(--text-primary)}.team-chat-office-head small{min-width:0;margin-left:auto;color:var(--text-tertiary);font-size:var(--font-size-xs);text-align:right}.team-chat-office-members{display:flex;gap:8px;overflow-x:auto;padding:1px 1px 5px;scroll-snap-type:x proximity}.team-chat-office-member{display:flex;flex:0 0 210px;align-items:center;gap:7px;min-width:0;min-height:52px;padding:7px 8px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);text-align:left;scroll-snap-align:start}button.team-chat-office-member{cursor:pointer;transition:border-color var(--motion-fast) var(--ease-in-out-smooth)}button.team-chat-office-member:hover,button.team-chat-office-member:focus-visible{border-color:var(--accent)}.team-chat-office-copy{display:grid;flex:1;gap:2px;min-width:0}.team-chat-office-copy strong,.team-chat-office-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-chat-office-copy strong{font-size:var(--font-size-xs)}.team-chat-office-copy small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-office-state{flex:0 0 auto;color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-office-state[data-state=working]{color:var(--info)}.team-chat-office-state[data-state=attention]{color:var(--warning)}.team-chat-office-state[data-state=done]{color:var(--success)}.team-chat-office-state[data-state=failed]{color:var(--danger)}.task-board-team-chat-list{display:flex;flex-direction:column;gap:12px;max-height:360px;padding:4px 2px;overflow-y:auto;overscroll-behavior-y:contain}.task-board-team-chat .team-chat-time-marker{align-self:center;margin:6px 0 0;color:var(--text-tertiary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;line-height:var(--line-height-base)}.task-board-team-chat .chat-notice .team-chat-mention{display:inline;max-width:none;padding:0;border-radius:0;color:var(--accent);background:transparent;font-weight:inherit;white-space:inherit;overflow:visible}.task-board-team-chat .team-chat-msg{flex-direction:row;align-items:flex-start;gap:10px;width:100%;max-width:100%}.task-board-team-chat .team-chat-msg:hover{transform:none}.task-board-team-chat .team-chat-msg[data-side=end]{flex-direction:row-reverse}.task-board-team-chat .team-chat-msg-content{display:flex;flex:1 1 auto;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}.task-board-team-chat .team-chat-msg[data-side=end] .team-chat-msg-content{align-items:flex-end}.task-board-team-chat .team-chat-msg[data-shape=bubble] .team-chat-msg-content{max-width:min(100%,560px)}.task-board-team-chat .team-chat-msg[data-shape=document] .team-chat-msg-content{max-width:100%}.task-board-team-chat .chat-message.team-chat-msg{margin:0}.task-board-team-chat .team-chat-msg-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}.task-board-team-chat .team-chat-msg-head .avatar-name{max-width:160px;overflow:hidden;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap}.task-board-team-chat .team-chat-msg-head span.avatar-name{color:var(--text-primary)}.task-board-team-chat .team-chat-msg-head .chat-message-time{padding:0;font-size:var(--font-size-2xs)}.task-board-team-chat .team-chat-mention,.team-chat-doc-layer .team-chat-mention{display:inline-block;max-width:min(24ch,100%);overflow:hidden;padding:0 4px;border-radius:var(--radius-xs);color:var(--accent);background:var(--accent-muted);font-weight:var(--font-weight-medium);text-overflow:ellipsis;vertical-align:baseline;white-space:nowrap}.team-chat-doc-layer .team-chat-mention{max-width:100%;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}.task-board-team-chat .team-chat-avatar,.team-chat-doc-layer .team-chat-avatar{display:grid;flex:0 0 auto;place-items:center;width:32px;height:32px;overflow:hidden;border-radius:30%;background:var(--bg-tertiary)}.task-board-team-chat .team-chat-avatar[data-size=sm],.team-chat-doc-layer .team-chat-avatar[data-size=sm]{width:24px;height:24px}.task-board-team-chat .team-chat-avatar[data-kind=brand],.team-chat-doc-layer .team-chat-avatar[data-kind=brand]{background:transparent}.task-board-team-chat .team-chat-avatar .wand-team-avatar-cat,.team-chat-doc-layer .team-chat-avatar .wand-team-avatar-cat{width:74%;height:74%}.task-board-team-chat .team-chat-avatar-upload,.team-chat-doc-layer .team-chat-avatar-upload{display:block;width:100%;height:100%;object-fit:cover}.task-board-team-chat .team-chat-avatar-brand,.team-chat-doc-layer .team-chat-avatar-brand{display:block;width:100%;height:100%}.task-board-team-chat .chat-message.team-chat-msg .team-chat-bubble{display:grid;justify-items:start;gap:4px;padding:10px 14px;border:1px solid var(--border-subtle);border-radius:12px;color:var(--text-primary);background:var(--bg-surface);font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-base)}.task-board-team-chat .team-chat-msg[data-side=start] .team-chat-bubble{border-top-left-radius:6px}.task-board-team-chat .team-chat-msg[data-side=end] .team-chat-bubble{justify-items:end;border-color:transparent;border-top-right-radius:6px;color:var(--text-inverse);background:linear-gradient(135deg,var(--accent) 0%,var(--accent-hover) 100%)}.task-board-team-chat .team-chat-bubble-text,.task-board-team-chat .team-chat-doc-text{margin:0;font:inherit;font-size:inherit;line-height:inherit;white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-chat .team-chat-attachments,.team-chat-doc-layer .team-chat-attachments{display:flex;flex-wrap:wrap;gap:6px;max-width:100%}.task-board-team-chat .team-chat-attachment,.team-chat-doc-layer .team-chat-attachment{display:inline-flex;align-items:center;gap:6px;max-width:100%;min-height:34px;padding:6px 9px;overflow:hidden;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);background:var(--bg-elevated);font:inherit;font-size:var(--font-size-xs);text-align:left;cursor:pointer}.task-board-team-chat .team-chat-attachment:hover,.team-chat-doc-layer .team-chat-attachment:hover{border-color:var(--accent)}.task-board-team-chat .team-chat-attachment:focus-visible,.team-chat-doc-layer .team-chat-attachment:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.task-board-team-chat .team-chat-attachment span,.team-chat-doc-layer .team-chat-attachment span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-board-team-chat .team-chat-attachment[data-image],.team-chat-doc-layer .team-chat-attachment[data-image]{min-height:0;padding:0;line-height:0}.task-board-team-chat .team-chat-attachment img,.team-chat-doc-layer .team-chat-attachment img{display:block;width:auto;max-width:min(220px,52vw);height:auto;max-height:180px;object-fit:contain}.task-board-team-chat .team-chat-file-card{width:min(100%,360px);overflow:hidden;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary)}.task-board-team-chat .team-chat-file-open{display:grid;grid-template-columns:minmax(0,1fr) 54px;align-items:start;gap:12px;width:100%;padding:14px;border:0;color:var(--text-primary);background:transparent;font:inherit;text-align:left;cursor:pointer;transition:background var(--transition-fast)}.task-board-team-chat .team-chat-file-open:hover{background:var(--bg-tertiary)}.task-board-team-chat .team-chat-file-copy{display:grid;gap:6px;min-width:0}.task-board-team-chat .team-chat-file-copy strong,.task-board-team-chat .team-chat-file-excerpt{display:-webkit-box;overflow:hidden;overflow-wrap:anywhere;-webkit-box-orient:vertical}.task-board-team-chat .team-chat-file-copy strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);-webkit-line-clamp:2}.task-board-team-chat .team-chat-file-excerpt{color:var(--text-secondary);font-size:var(--font-size-xs);line-height:var(--line-height-base);white-space:pre-line;-webkit-line-clamp:3}.task-board-team-chat .team-chat-file-icon{display:flex;flex-direction:column;gap:4px;height:76px;padding:6px;overflow:hidden;border:1px solid var(--border-subtle);border-radius:var(--radius-xs);color:var(--text-tertiary);background:var(--bg-primary);font-size:6px;line-height:8px;overflow-wrap:anywhere}.task-board-team-chat .team-chat-file-icon svg{flex:0 0 auto;color:var(--accent)}.task-board-team-chat .team-chat-file-icon b{max-height:16px;overflow:hidden;color:var(--text-secondary)}.task-board-team-chat .team-chat-file-meta{display:flex;grid-column:1 / -1;gap:8px;min-width:0;padding-top:10px;border-top:1px solid var(--border-subtle);color:var(--text-tertiary);font-size:var(--font-size-2xs)}.task-board-team-chat .team-chat-file-meta>:first-child{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-board-team-chat .team-chat-file-meta>:last-child{flex:0 0 auto;white-space:nowrap}.task-board-team-chat .team-chat-file-open:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.task-board-team-chat .team-chat-doc{display:grid;justify-items:start;gap:6px;width:100%;padding:12px 14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);background:var(--bg-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-base)}.task-board-team-chat .team-chat-preview{min-width:0;max-width:100%;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-chat .team-chat-doc .team-chat-preview,.task-board-team-chat .team-chat-msg-empty{color:var(--text-secondary)}.task-board-team-chat .team-chat-msg[data-side=end] .team-chat-msg-empty{color:inherit;opacity:.78}.team-chat-step-chip{padding:1px 6px;border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-tertiary);font-size:var(--font-size-xs)}.team-chat-step-chip[data-ok]{color:var(--success)}.task-board-team-chat .team-chat-msg[data-status=failed] .team-chat-step-chip{color:var(--danger)}@keyframes wand-team-live-grow{0%{opacity:0;transform:translate(-10px)}}@keyframes wand-team-live-reduced{0%{opacity:0;transform:none}to{opacity:1;transform:none}}.team-chat-live-row{display:grid;gap:5px}.team-chat-live-row[data-leaving]{animation:wand-team-live-grow var(--motion-quick-exit) var(--ease-in-out-smooth) reverse forwards}.team-chat-live-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px;animation:wand-team-live-grow var(--motion-fast) var(--ease-out-expo) both}.team-chat-live-name{max-width:160px;overflow:hidden;color:var(--text-secondary);font-size:var(--font-size-2xs);text-overflow:ellipsis;white-space:nowrap}.team-chat-live-chip{padding:1px 6px;border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-tertiary);font-size:var(--font-size-xs)}.team-chat-live-state{padding:1px 6px;border-radius:var(--radius-sm);color:var(--info);background:color-mix(in srgb,var(--info) 14%,transparent);font-size:var(--font-size-xs)}.team-chat-live-state[data-state=needs_input],.team-chat-live-state[data-state=needs_permission]{color:var(--warning);background:var(--warning-muted)}.team-chat-live-state[data-state=failed]{color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,transparent)}.team-chat-live-summary{display:flex;align-items:center;gap:10px;width:min(100%,560px);min-height:38px;padding:7px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-secondary);font:inherit;font-size:var(--font-size-xs);text-align:left;cursor:pointer}.team-chat-live-summary>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-chat-live-summary>small{flex:none;color:var(--accent)}.team-chat-live-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--motion-normal) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth)}.team-chat-live-body[data-open]{grid-template-rows:1fr;opacity:1}.team-chat-live-body-inner{min-height:0;overflow:hidden}.team-chat-live-card{display:grid;grid-template-rows:auto minmax(0,1fr);width:100%;max-width:560px;height:200px;padding:8px 10px;overflow:hidden;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-tertiary);cursor:pointer;transition:border-color var(--motion-fast) var(--ease-in-out-smooth),background var(--motion-fast) var(--ease-in-out-smooth)}.team-chat-live-card:hover,.team-chat-live-card:focus-visible{border-color:color-mix(in srgb,var(--accent) 45%,var(--border-subtle))}.team-chat-live-omitted{margin:0 0 4px;color:var(--text-tertiary);font-size:var(--font-size-xs)}.team-chat-live-text{min-height:0;margin:0;overflow-y:auto;overscroll-behavior-y:contain;color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--font-size-xs);line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.team-chat-plan-list{display:grid;gap:4px;margin:0;padding:0;list-style:none}.team-chat-plan-list li{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;padding:3px 0;font-size:var(--font-size-xs)}.team-chat-plan-title{color:var(--text-primary)}.team-chat-plan-basis{color:var(--text-tertiary);font-size:var(--font-size-2xs)}.team-chat-goal-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--transition-normal),opacity var(--transition-fast)}.team-chat-goal-body[data-open]{grid-template-rows:1fr;opacity:1}.team-chat-goal-body-inner{min-height:0;overflow:hidden}.team-chat-expand{justify-self:start;min-height:28px;padding:4px 0 0;border:0;color:var(--accent);background:transparent;font:inherit;font-size:var(--font-size-xs);cursor:pointer;transition:color var(--motion-fast) var(--ease-in-out-smooth),transform var(--motion-press) var(--ease-out-expo)}.team-chat-expand:hover{text-decoration:underline}.team-chat-expand:active{transform:scale(.98)}.task-board-team-chat .team-chat-msg[data-side=end] .team-chat-expand{justify-self:end;color:var(--text-inverse)}@keyframes wand-team-msg-in{0%{opacity:0;translate:0 4px}}.task-board-team-chat .chat-message.team-chat-msg[data-arriving],.task-board-team-chat .chat-message.chat-notice[data-arriving]{animation:wand-team-msg-in var(--motion-normal) var(--ease-out-expo)}.task-board-team-chat-input{position:relative;display:grid;gap:8px;min-width:0}.task-board-team-chat-hint{margin:0 12px;color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-chat-input .input-composer-row{max-width:none}.task-board-team-chat-input .team-chat-stop-action{color:var(--danger)}.task-board-team-chat-input .team-chat-stop-action:hover:not(:disabled){color:var(--danger);background:var(--danger-muted)}.wand-ui-dialog-content.wand-team-chat-doc-dialog{display:flex;width:min(720px,calc(100vw - var(--wand-safe-left) - var(--wand-safe-right) - 32px));max-height:min(72vh,640px);flex-direction:column;overflow:hidden}.wand-ui-dialog-content.wand-team-chat-doc-dialog[data-open]{animation:team-chat-doc-in var(--motion-normal) var(--ease-out-expo)}.wand-ui-dialog-content.wand-team-chat-doc-dialog[data-ending-style]{animation:team-chat-doc-out var(--motion-quick-exit) var(--ease-in-out-smooth)}.wand-doc-dx-start{--wand-doc-dx: -10px}.wand-doc-dx-end{--wand-doc-dx: 10px}.wand-doc-dy-top{--wand-doc-dy: -10px}.wand-doc-dy-bottom{--wand-doc-dy: 10px}@keyframes team-chat-doc-in{0%{opacity:0;translate:var(--wand-doc-dx, 0) var(--wand-doc-dy, 0);scale:.98}}@keyframes team-chat-doc-out{to{opacity:0;translate:var(--wand-doc-dx, 0) var(--wand-doc-dy, 0);scale:.98}}.team-chat-doc-layer{display:flex;flex:1 1 auto;flex-direction:column;gap:8px;min-height:0}.team-chat-doc-layer-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.team-chat-doc-layer-name{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.team-chat-doc-layer-text{flex:1 1 auto;min-height:40px;margin:0;padding-right:4px;overflow:auto;overscroll-behavior-y:contain;color:var(--text-primary);font:inherit;font-size:var(--font-size-sm);line-height:var(--line-height-base);white-space:pre-wrap;overflow-wrap:anywhere}.wand-team-chat-body{display:flex;flex:1 1 auto;flex-direction:column;min-height:0;padding:0 28px 20px}.wand-team-chat-body>.task-board-team-chat{display:flex;width:100%;max-width:920px;min-height:0;margin:0 auto;flex:1 1 auto;flex-direction:column}.wand-team-chat-body .task-board-team-chat-list{flex:1 1 auto;min-height:0;max-height:none}.wand-team-chat-body .task-board-team-chat-input{flex:0 0 auto}.wand-team-chat-body .team-chat-details[data-open]{max-height:42vh;overflow-y:auto;overscroll-behavior-y:contain}.wand-team-chat-head-meta{display:flex;align-items:center;gap:10px}.wand-team-chat-crumb{font-size:var(--font-size-sm)}.wand-team-chat-heading-avatar{flex:0 0 auto;display:inline-flex;align-items:center}.wand-team-chat-heading-avatar .wand-team-avatar-stack{padding-top:0}.wand-team-chat-unconfirmed{color:var(--warning);font-size:var(--font-size-xs)}.wand-team-work-tasks{padding:6px 0 0;border-top:1px solid var(--border-subtle)}.wand-team-work-tasks-inner{display:grid;gap:8px;width:100%;max-width:920px;margin:0 auto}.wand-team-work-tasks-head{display:flex;align-items:baseline;gap:10px}.wand-team-work-tasks-head h2{margin:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.wand-team-work-tasks-head small{margin-left:auto;color:var(--text-tertiary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.wand-team-work-list{display:grid;gap:4px;margin:0;padding:0;list-style:none}.wand-team-work-item{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-primary)}.wand-team-work-item[data-status=queued],.wand-team-work-item[data-status=skipped]{opacity:.66}.wand-team-work-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px;width:100%;padding:8px 10px;border:0;border-radius:var(--radius-sm);color:var(--text-primary);background:transparent;font:inherit;text-align:left;cursor:pointer}.wand-team-work-head>svg{color:var(--text-muted);transition:transform var(--motion-fast) var(--ease-in-out-smooth)}.wand-team-work-item[data-open] .wand-team-work-head>svg{transform:rotate(180deg)}.wand-team-work-seq{color:var(--text-tertiary);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.wand-team-work-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.wand-team-work-status{color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-team-work-item[data-status=running] .wand-team-work-status{color:var(--info)}.wand-team-work-item[data-status=done] .wand-team-work-status{color:var(--success)}.wand-team-work-item[data-status=failed] .wand-team-work-status{color:var(--danger)}.wand-team-work-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--motion-normal) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth)}.wand-team-work-item[data-open] .wand-team-work-body{grid-template-rows:1fr;opacity:1}.wand-team-work-body-inner{min-height:0;overflow:hidden;display:grid;gap:8px;padding:0 10px}.wand-team-work-item[data-open] .wand-team-work-body-inner{padding-bottom:10px}.wand-team-work-member{display:flex;align-items:center;gap:8px}.wand-team-work-member-name{font-size:var(--font-size-sm)}.wand-team-work-member-duty{overflow:hidden;color:var(--text-tertiary);font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap}.wand-team-work-meta{display:grid;gap:2px;margin:0;font-size:var(--font-size-xs)}.wand-team-work-meta div{display:flex;gap:8px}.wand-team-work-meta dt{flex:none;color:var(--text-tertiary)}.wand-team-work-meta dd{min-width:0;margin:0;overflow:hidden;color:var(--text-secondary)}.wand-team-work-meta code{overflow:hidden;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap}.wand-team-work-report{max-height:180px;margin:0;padding:8px 10px;overflow:auto;border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-tertiary);font-size:var(--font-size-xs);white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-step-skips{display:grid;gap:2px;padding:0 8px 8px}.task-board-team-step-skip-head{display:flex;align-items:center;gap:6px;width:100%;padding:6px 8px;border:0;border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--bg-tertiary);font:inherit;font-size:var(--font-size-xs);text-align:left;cursor:pointer;transition:background var(--motion-fast) var(--ease-in-out-smooth)}.task-board-team-step-skip-head>svg:first-child{color:var(--warning);flex:0 0 auto}.task-board-team-step-skip-head>span{margin-right:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-board-team-step-skip-head>svg:last-child{color:var(--text-muted);transition:transform var(--motion-morph) var(--ease-out-back)}.task-board-team-step-skips[data-open] .task-board-team-step-skip-head>svg:last-child{transform:rotate(180deg)}.task-board-team-step-skip-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--motion-normal) var(--ease-in-out-smooth),opacity var(--motion-fast) var(--ease-in-out-smooth)}.task-board-team-step-skips[data-open] .task-board-team-step-skip-body{grid-template-rows:1fr;opacity:1}.task-board-team-step-skip-inner{display:grid;gap:4px;min-height:0;margin:0;padding:0;overflow:hidden;list-style:none;color:var(--text-secondary);font-size:var(--font-size-xs)}.task-board-team-step-skip-inner li{display:grid;gap:2px;padding:4px 8px}.task-board-team-step-skip-inner strong{color:var(--text-primary);font-weight:var(--font-weight-medium)}.task-board-team-step-skip-inner span{white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-group>header{display:grid;gap:2px;margin-bottom:6px}.task-board-team-group>header strong{font-size:var(--font-size-sm)}.task-board-team-group>header small{color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-steps{position:relative;display:grid;gap:8px;margin:0;padding:0;list-style:none;animation:wand-settings-fade-in var(--transition-normal)}.task-board-team-step{position:relative;display:grid;grid-template-columns:26px minmax(0,1fr);align-items:start;gap:10px}.task-board-team-step:not(:last-child):before{content:\"\";position:absolute;top:34px;bottom:-6px;left:13px;width:1px;background:var(--border-subtle)}.task-board-team-step>.wand-team-avatar{margin-top:6px}.task-board-team-step-card{min-width:0;border-radius:var(--radius-sm);background:var(--bg-primary)}.task-board-team-step[data-kind=leader] .task-board-team-step-card{background:color-mix(in srgb,var(--warning) 7%,var(--bg-primary))}.task-board-team-step[data-status=queued] .task-board-team-step-card,.task-board-team-step[data-status=skipped] .task-board-team-step-card{opacity:.66}.task-board-team-step-head{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;width:100%;padding:8px 10px;border:0;border-radius:var(--radius-sm);color:var(--text-primary);background:transparent;font:inherit;text-align:left;cursor:pointer}.task-board-team-step-head svg{color:var(--text-muted);transition:transform var(--transition-fast)}.task-board-team-step[data-open] .task-board-team-step-head svg{transform:rotate(180deg)}.task-board-team-step-title{display:grid;min-width:0}.task-board-team-step-title strong,.task-board-team-step-title small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-board-team-step-title strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.task-board-team-step-title small,.task-board-team-step-status{color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-step[data-status=running] .task-board-team-step-status{color:var(--info)}.task-board-team-step[data-status=failed] .task-board-team-step-status{color:var(--danger)}.task-board-team-step[data-status=done] .task-board-team-step-status{color:var(--success)}.task-board-team-step-preview{display:-webkit-box;margin:-2px 10px 8px;overflow:hidden;color:var(--text-secondary);font-size:var(--font-size-xs);white-space:pre-wrap;-webkit-box-orient:vertical;-webkit-line-clamp:2}.task-board-team-step-inner{display:grid;gap:8px;padding:0 10px}.task-board-team-step[data-open] .task-board-team-step-inner{padding-bottom:10px}.task-board-team-step-inner h4{margin:0 0 4px;color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.task-board-team-step-inner pre{max-height:320px;margin:0;overflow:auto;color:var(--text-secondary);font:inherit;font-size:var(--font-size-xs);white-space:pre-wrap;overflow-wrap:anywhere}.task-board-team-step-meta{margin:0;color:var(--text-tertiary);font-size:var(--font-size-xs)}.task-board-team-manual,.task-board-team-respond{display:grid;gap:8px}.task-board-team-step-body,.wand-team-member-body,.wand-team-run-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--transition-normal),opacity var(--transition-fast)}.task-board-team-step[data-open] .task-board-team-step-body,.wand-team-member[data-open] .wand-team-member-body,.wand-team-run[data-open] .wand-team-run-body{grid-template-rows:1fr;opacity:1}.task-board-team-step-inner,.wand-team-member-inner{min-height:0;overflow:hidden}.wand-team-member-head>svg,.wand-team-run-head>svg{color:var(--text-muted);transition:transform var(--transition-fast)}.wand-team-member[data-open] .wand-team-member-head>svg,.wand-team-run[data-open] .wand-team-run-head>svg{transform:rotate(180deg)}@media(max-width:760px){.wand-ai-team-editor-grid{grid-template-columns:minmax(0,1fr)}.wand-team-chat-body{padding:0 14px 16px}.task-board-team-chat-input .composer-plus-popover{max-width:calc(100% - 8px)}.wand-team-work-tasks{padding:4px 0 0}.wand-teams-layout{grid-template-columns:minmax(0,1fr)}.wand-teams-list{padding:12px 14px;border-right:0}.wand-teams-detail{padding:14px 14px 28px}.wand-teams-page[data-detail] .wand-teams-list{display:none}.wand-teams-page:not([data-detail]) .wand-teams-detail{display:none}.wand-team-run-head{grid-template-columns:auto minmax(0,1fr) auto auto}.wand-team-run-head small{display:none}.wand-team-candidate{grid-template-columns:auto minmax(0,1fr)}.wand-team-candidate-tools{grid-column:1 / -1;justify-content:end}.task-board-team-views-stack{display:block}.task-board-team-view{opacity:1}.task-board-team-view[data-hidden]{display:none;visibility:visible;transition:none}.wand-teams-detail-stack{display:block}.wand-teams-detail-pane{opacity:1}.wand-teams-detail-pane[data-hidden]{display:none;visibility:visible;transition:none}}@media(prefers-reduced-motion:reduce){.team-delivery-body,.team-delivery-trigger>svg,.team-chat-details{transition:none}.wand-team-employee-invite .wand-team-candidate-slot{transition:none}.task-board-team-step-body,.wand-team-work-body,.wand-team-work-head>svg,.wand-team-member-body,.wand-team-run-body,.team-chat-goal-body,.team-chat-details,.team-chat-live-body,.task-board-team-step-head svg,.wand-team-member-head>svg,.wand-team-run-head>svg,.wand-team-candidate-tool,.wand-team-candidate-tool>svg,.wand-team-candidate-add,.wand-team-candidate-add>svg,.task-board-team-view,.task-board-team-step-skip-head,.task-board-team-step-skip-head>svg:last-child,.task-board-team-step-skip-body,.wand-teams-create-icon,.task-board-team-chat .chat-message.team-chat-msg[data-arriving],.task-board-team-chat .chat-message.chat-notice[data-arriving]{animation:none}.task-board-team-chat .team-chat-expand:active{transform:none}.task-board-team-chat .team-chat-live-head{animation-name:wand-team-live-reduced;animation-duration:calc(var(--motion-fast) * 0)}.task-board-team-chat .team-chat-live-row[data-leaving]{animation-name:wand-team-live-reduced;animation-duration:calc(var(--motion-quick-exit) * 0)}.team-chat-live-card{transition:none}.task-board-team-step-body,.wand-team-member-body,.wand-team-run-body,.wand-team-member-head>svg,.wand-team-run-head>svg{transition:none}.wand-teams-detail,.task-board-team-steps{animation:none}.wand-teams-detail-pane{transition:none}.wand-employee-advanced,.wand-employee-advanced-toggle button>svg{transition:none}}.wand-employee-tags{display:flex;align-items:center;gap:4px;height:22px;overflow:hidden;white-space:nowrap}.wand-employee-tags .wand-employee-tag{flex-shrink:0;max-inline-size:100%;overflow:hidden;text-overflow:ellipsis;color:var(--text-secondary);background:var(--bg-tertiary);font-size:var(--font-size-xs)}.wand-employees-layout{display:block!important;max-width:960px;margin:0 auto;padding:16px 20px 40px;overflow-y:auto;overscroll-behavior:contain}.wand-employee-list{display:grid;gap:16px;width:100%}.wand-employee-card.is-archived{opacity:.65}.wand-employee-card.is-system{border-color:color-mix(in srgb,var(--accent) 38%,var(--border-subtle));background:color-mix(in srgb,var(--accent) 4%,var(--bg-primary))}.wand-employee-system-note{display:grid;gap:4px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border-subtle));border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent) 6%,var(--bg-primary))}.wand-employee-system-note strong{color:var(--accent-active);font-size:var(--font-size-xs)}.wand-employee-system-note span{color:var(--text-secondary);font-size:var(--font-size-xs);line-height:1.5}.wand-employee-memory{color:var(--text-secondary);font-size:var(--font-size-xs);line-height:1.6}.wand-employee-memory p{margin:.5em 0}.wand-employee-memory ul{margin:.5em 0;padding-inline-start:1.5em;overflow-wrap:anywhere}.wand-employee-memory-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5em}.wand-employee-memory-actions button{width:100%;min-width:0;font-size:inherit}.wand-employee-knowledge-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5em}.wand-employee-knowledge-actions button{width:100%;min-width:0;font-size:inherit}.wand-employee-knowledge-list{height:240px;overflow-y:auto;white-space:pre-wrap}.wand-employee-knowledge-list li+li{margin-block-start:.5em}.wand-employee-archived-tag{display:inline-block;padding:1px 6px;border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-tertiary);font-size:11px;font-style:normal}.wand-employee-filter-toggle{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-xs);color:var(--text-secondary);cursor:pointer;user-select:none}.wand-employee-filter-toggle input{cursor:pointer}.wand-teams-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.wand-teams-toolbar-search{flex:1 1 300px;max-width:400px}.wand-teams-toolbar-actions{display:flex;align-items:center;gap:12px}.wand-settings-field{display:grid;gap:6px}.wand-settings-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.wand-execution-subject-picker{display:grid;gap:16px}.wand-subject-group{display:grid;gap:8px;margin-top:10px}.wand-subject-group-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-secondary)}.wand-subject-empty-row{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--bg-secondary);border-radius:var(--radius-md);color:var(--text-tertiary);font-size:var(--font-size-xs)}.wand-link-btn{background:transparent;border:0;color:var(--accent);cursor:pointer;padding:0;font:inherit;text-decoration:underline}.wand-link-btn:hover{color:var(--accent-strong)}\n"]);
4
+ (()=>{var ys=Object.create;var mn=Object.defineProperty;var xs=Object.getOwnPropertyDescriptor;var ks=Object.getOwnPropertyNames;var Ts=Object.getPrototypeOf,Rs=Object.prototype.hasOwnProperty;var ae=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var As=(e,t,n,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of ks(t))!Rs.call(e,r)&&r!==n&&mn(e,r,{get:()=>t[r],enumerable:!(a=xs(t,r))||a.enumerable});return e};var b=(e,t,n)=>(n=e!=null?ys(Ts(e)):{},As(t||!e||!e.__esModule?mn(n,"default",{value:e,enumerable:!0}):n,e));var Te=ae((Ji,pn)=>{pn.exports=globalThis.__wandAiTeamsHost("react")});var Dt=ae((Zi,wn)=>{wn.exports=globalThis.__wandAiTeamsHost("agents/employee-repository")});var Re=ae((eo,yn)=>{yn.exports=globalThis.__wandAiTeamsHost("ui")});var Pt=ae((to,xn)=>{xn.exports=globalThis.__wandAiTeamsHost("http-adapter")});var Z=ae((no,An)=>{An.exports=globalThis.__wandAiTeamsHost("react/jsx-runtime")});var $t=ae((io,En)=>{En.exports=globalThis.__wandAiTeamsHost("errors")});var mt=ae((oo,Sn)=>{Sn.exports=globalThis.__wandAiTeamsHost("issues/task-board-agent")});var ra=ae((lo,Nn)=>{Nn.exports=globalThis.__wandAiTeamsHost("issues/task-board-controller")});var In=ae((co,Cn)=>{Cn.exports=globalThis.__wandAiTeamsHost("issues/task-board-repository")});var Wt=ae((mo,zn)=>{zn.exports=globalThis.__wandAiTeamsHost("ai-teams/repository")});var xt=ae((po,Mn)=>{Mn.exports=globalThis.__wandAiTeamsHost("ai-teams/avatar")});var _a=ae((uo,Ln)=>{Ln.exports=globalThis.__wandAiTeamsHost("file-preview/controller")});var Dn=ae((go,_n)=>{_n.exports=globalThis.__wandAiTeamsHost("file-preview/model")});var Da=ae((fo,Pn)=>{Pn.exports=globalThis.__wandAiTeamsHost("model-catalog")});var Wn=ae((ho,$n)=>{$n.exports=globalThis.__wandAiTeamsHost("composer-attachments/host")});var Fn=ae((vo,On)=>{On.exports=globalThis.__wandAiTeamsHost("composer-popover/action")});var Hn=ae((bo,Bn)=>{Bn.exports=globalThis.__wandAiTeamsHost("ai-teams/composer-bridge")});var pr=ae((Ro,mr)=>{mr.exports=globalThis.__wandAiTeamsHost("ui/motion-tokens")});var Ya=ae((No,wr)=>{wr.exports=globalThis.__wandAiTeamsHost("overlay-controller")});var xr=ae((Co,yr)=>{yr.exports=globalThis.__wandAiTeamsHost("provider-usage")});var Tr=ae((Io,kr)=>{kr.exports=globalThis.__wandAiTeamsHost("settings/fields")});var Xa=ae((zo,Rr)=>{Rr.exports=globalThis.__wandAiTeamsHost("shell/sidebar-toggle-icon")});var Sr=ae((_o,Er)=>{Er.exports=globalThis.__wandAiTeamsHost("issues/agent-fields")});var _r=ae((jo,Lr)=>{Lr.exports=globalThis.__wandAiTeamsHost("ai-teams/cat-coats")});var Pr=ae((Uo,Dr)=>{Dr.exports=globalThis.__wandAiTeamsHost("agents/employee-identity")});var Wr=ae((qo,$r)=>{$r.exports=globalThis.__wandAiTeamsHost("provider-logo")});var os=ae((Rd,is)=>{is.exports=globalThis.__wandAiTeamsHost("task-changes")});var fs=ae((Cd,gs)=>{gs.exports=globalThis.__wandAiTeamsHost("styles")});var I=b(Te());function Ma(e){return Array.isArray(e.agents)&&e.agents.length>0?e.agents:e.agent?[e.agent]:[]}function un(e){return`${e.provider}|${e.model}|${e.thinkingEffort}|${e.mode}|${e.kind}`}var gn=6e4,fn=6e4,Es="wand-ops";var Zt="\u7CFB\u7EDF\u7528\u6237";function hn(e){return e?.systemKey===Es}var Ss="wand-default",vn="e_wand_default";var ea="\u9ED8\u8BA4\u7528\u6237";function ta(e){return e?.systemKey===Ss}function _t(e){return hn(e)||ta(e)}var Jt=8,Qt=20;function nt(e){return hn(e)?[Zt]:ta(e)?[ea]:e.tags??[]}function Ns(e){if(!Array.isArray(e))throw new Error("\u5458\u5DE5\u6807\u7B7E\u5FC5\u987B\u662F\u6570\u7EC4\u3002");let t=[];for(let n of e){if(typeof n!="string")throw new Error("\u5458\u5DE5\u6807\u7B7E\u5FC5\u987B\u662F\u6587\u5B57\u3002");let a=n.trim();if(a){if(a.length>Qt)throw new Error(`\u6BCF\u4E2A\u5458\u5DE5\u6807\u7B7E\u4E0D\u80FD\u8D85\u8FC7 ${Qt} \u4E2A\u5B57\u7B26\u3002`);if(/[,,、\x00-\x1f\x7f]/.test(a))throw new Error("\u5458\u5DE5\u6807\u7B7E\u4E0D\u80FD\u5305\u542B\u5206\u9694\u7B26\u6216\u63A7\u5236\u5B57\u7B26\u3002");if(a===Zt||a===ea)throw new Error(`\u300C${a}\u300D\u662F\u5185\u7F6E\u6807\u7B7E\uFF0C\u4E0D\u53EF\u81EA\u5B9A\u4E49\u3002`);t.includes(a)||t.push(a)}}if(t.length>Jt)throw new Error(`\u6700\u591A ${Jt} \u4E2A\u5458\u5DE5\u6807\u7B7E\u3002`);return t}function aa(e){return Ns(e.split(/[,,、\n]+/))}var bn=200;var es=b(Dt());var Pe=b(Te()),ct=b(Re());var kn=b(Pt());function yt(e,t,n=-1){return e.archivedAt?"\u5DF2\u5F52\u6863":!e.agents.length||e.agents.some(a=>a.kind!=="structured")?"\u9700\u8981\u7ED3\u6784\u5316 CLI \u5019\u9009":t.some((a,r)=>r!==n&&a.employeeId===e.id)?"\u5DF2\u5728\u56E2\u961F\u4E2D":null}function na(e,t){let n=t.agents.map(a=>({...a}));return{...e,employeeId:t.id,name:t.name,avatar:t.avatar,agents:n,agent:{...n[0]}}}function Tn(e){let t=new Set;return e.flatMap(n=>n.employeeId?t.has(n.employeeId)?[n.name||n.employeeId]:(t.add(n.employeeId),[]):[])}function Rn(e){return e instanceof kn.HttpResponseError&&e.status>=400&&e.status<500&&e.status!==408&&e.status!==409}var Ae=b(Z());function La({employees:e,loading:t,error:n,reload:a,members:r,replacingIndex:d=-1,disabled:i,onPick:c}){let[m,s]=Pe.useState(!1),g=Pe.useRef(null),p=Pe.useRef(null),v=Pe.useRef(null),w="wand-team-employee-menu-"+Pe.useId(),h=d>=0;return Pe.useEffect(()=>{m&&!t&&!n&&v.current?.focus()},[m,t,n]),Pe.useEffect(()=>{if(!m)return;let f=R=>{g.current?.contains(R.target)||R.target instanceof Element&&R.target.closest(".wand-ui-select-content")?.classList.contains(w)||s(!1)};return window.addEventListener("pointerdown",f,!0),()=>window.removeEventListener("pointerdown",f,!0)},[m,w]),(0,Ae.jsxs)("div",{ref:g,className:"wand-team-employee-invite",onKeyDown:f=>{f.key!=="Escape"||f.defaultPrevented||(f.stopPropagation(),s(!1),p.current?.focus())},children:[(0,Ae.jsxs)(ct.WandButton,{ref:p,kind:"ghost",size:"small",className:"task-board-create-button","aria-pressed":m,disabled:i,onClick:()=>s(f=>!f),children:[(0,Ae.jsx)(ct.WandIcon,{name:"plus",slot:"start",className:"wand-teams-create-icon"}),h?"\u4ECE\u901A\u8BAF\u5F55\u9009\u62E9 / \u66FF\u6362":"\u4ECE\u901A\u8BAF\u5F55\u9080\u8BF7"]}),(0,Ae.jsx)("div",{className:"wand-team-candidate-slot","data-collapsed":!m||void 0,children:(0,Ae.jsx)("div",{className:"wand-team-employee-invite-inner",inert:!m,children:(0,Ae.jsxs)("div",{className:"wand-team-candidates",children:[(0,Ae.jsx)("small",{className:"wand-new-session-field-hint",children:"\u5458\u5DE5\u5728\u79C1\u804A\u4E0E\u56E2\u961F\u4E2D\u4F7F\u7528\u81EA\u5DF1\u7684\u77E5\u8BC6\u5E93\uFF0C\u4E0D\u5171\u4EAB\u79C1\u804A\u5386\u53F2\u6216\u5176\u4ED6\u5458\u5DE5\u77E5\u8BC6\u3002\u57FA\u7840\u89D2\u8272\u4E0E CLI \u5019\u9009\u7531\u5458\u5DE5\u8D44\u6599\u51B3\u5B9A\uFF1B\u56E2\u961F\u53EA\u914D\u7F6E\u5206\u5DE5\u3002"}),n?(0,Ae.jsxs)("div",{role:"alert",className:"wand-new-session-error",children:["\u901A\u8BAF\u5F55\u52A0\u8F7D\u5931\u8D25\uFF1A",n,(0,Ae.jsx)(ct.WandButton,{kind:"ghost",size:"small",disabled:t||i,onClick:a,children:"\u91CD\u8BD5\u901A\u8BAF\u5F55"})]}):t?(0,Ae.jsx)("p",{role:"status",children:"\u6B63\u5728\u52A0\u8F7D\u901A\u8BAF\u5F55\u2026"}):(0,Ae.jsx)(ct.WandSelect,{ariaLabel:h?"\u7ED1\u5B9A\u56E2\u961F\u5458\u5DE5":"\u9080\u8BF7\u56E2\u961F\u5458\u5DE5",triggerRef:v,contentClassName:w,className:"wand-settings-input",searchable:!0,searchPlaceholder:"\u641C\u7D22\u5458\u5DE5",placeholder:"\u9009\u62E9\u5458\u5DE5",disabled:i,options:e.map(f=>{let R=yt(f,r,d);return{value:f.id,label:`${f.name} \xB7 ${R||f.duty||"\u7845\u57FA\u5458\u5DE5"}`,disabled:!!R}}),onValueChange:f=>{let R=e.find(y=>y.id===f);!R||yt(R,r,d)||(c(R),s(!1),requestAnimationFrame(()=>p.current?.focus()))}}),!n&&!t&&e.length===0?(0,Ae.jsx)("p",{children:"\u901A\u8BAF\u5F55\u4E2D\u8FD8\u6CA1\u6709\u5458\u5DE5\uFF0C\u53EF\u7EE7\u7EED\u6DFB\u52A0\u624B\u5DE5 CLI \u6210\u5458\u3002"}):null]})})})]})}var St=b($t()),He=b(mt()),ht=b(ra()),ka=b(In());var ee=b(Te()),Ce=b(Wt()),Ft=b(xt());var A=b(Te());var da=b($t()),Ua=b(_a()),Zn=b(Dn()),pt=b(Pt()),er=b(mt()),Cs=b(Da()),Ye=b(Re()),tr=b(Wn()),Fa=b(Fn()),kt=b(xt()),Ke=b(Hn()),Ot=b(Wt());var rt=b(Te()),jn=b(_a()),Pa=b(Re()),V=b(Z());function Me(e,t=160){let n=e?.trim()??"";return n.length>t?`${n.slice(0,t).trimEnd()}\u2026`:n}function sa(e){return[Me(e.headline,80),e.conclusion?`\u8D1F\u8D23\u4EBA\u4EA4\u4ED8\u8BF4\u660E\uFF1A${Me(e.conclusion)}`:"",e.attention?`\u5F85\u5904\u7406\uFF1A${Me(e.attention.message)}`:""].filter(Boolean).join(" \xB7 ")}function $a(e){return`${sa(e)} \xB7 ${e.totalFiles} \u4E2A\u6587\u4EF6 \xB7 ${e.totalHandoffs} \u9879\u63A5\u529B`}function Wa({delivery:e}){let t=e.files.slice(0,20),n=e.handoffs.slice(0,6);return(0,V.jsxs)("div",{className:"team-delivery-details",children:[e.conclusion?(0,V.jsxs)("section",{children:[(0,V.jsx)("h4",{children:"\u8D1F\u8D23\u4EBA\u4EA4\u4ED8\u8BF4\u660E"}),(0,V.jsx)("p",{children:Me(e.conclusion,600)})]}):null,e.attention?(0,V.jsxs)("p",{className:"team-delivery-attention",children:["\u5F85\u5904\u7406\uFF1A",Me(e.attention.message,600)]}):null,(0,V.jsxs)("section",{"aria-label":"\u4EA4\u4ED8\u6587\u4EF6",children:[(0,V.jsxs)("h4",{children:["\u4EA4\u4ED8\u6587\u4EF6 \xB7 ",e.totalFiles]}),(0,V.jsx)("p",{className:"team-delivery-note",children:"\u5386\u53F2\u4EA4\u4ED8\u8BB0\u5F55\uFF0C\u6587\u4EF6\u5F53\u524D\u662F\u5426\u53EF\u7528\u4EE5\u6253\u5F00\u7ED3\u679C\u4E3A\u51C6\u3002"}),t.length?(0,V.jsx)("ul",{children:t.map(a=>(0,V.jsx)("li",{children:(0,V.jsxs)("button",{type:"button",className:"team-delivery-file",onClick:()=>{jn.filePreviewController.open(a.file.path)},children:[(0,V.jsx)(Pa.WandIcon,{name:"file",size:16}),(0,V.jsxs)("span",{children:[(0,V.jsx)("strong",{children:Me(a.file.preview?.title||a.file.name,100)}),a.file.preview?.excerpt?(0,V.jsx)("span",{children:Me(a.file.preview.excerpt,240)}):null,(0,V.jsxs)("small",{children:[Me(a.file.name)," \xB7 ",Me(a.memberName,80)," \xB7 #",a.seq]})]})]})},`${a.stepId}:${a.file.path}`))}):(0,V.jsx)("p",{children:"\u65E0\u53EF\u786E\u8BA4\u6587\u4EF6\u3002"}),e.totalFiles>t.length?(0,V.jsxs)("p",{children:["\u5DF2\u663E\u793A ",t.length,"/",e.totalFiles," \u4E2A\u6587\u4EF6\uFF0C\u53E6 ",e.totalFiles-t.length," \u4E2A\u672A\u5217\u51FA\u3002"]}):null]}),(0,V.jsxs)("section",{"aria-label":"\u6267\u884C\u4E0E\u63A5\u529B",children:[(0,V.jsxs)("h4",{children:["\u6267\u884C\u4E0E\u63A5\u529B \xB7 ",e.totalHandoffs]}),n.length?(0,V.jsx)("ul",{children:n.map(a=>(0,V.jsxs)("li",{className:"team-delivery-handoff",children:[(0,V.jsxs)("strong",{children:[Me(a.memberName,80)," \xB7 #",a.seq," ",Me(a.title)]}),(0,V.jsx)("span",{children:a.status==="running"?a.state==="needs_permission"?"\u7B49\u5F85\u6388\u6743":a.state==="needs_input"?"\u7B49\u5F85\u56DE\u7B54":"\u8FDB\u884C\u4E2D":"\u6392\u961F"}),a.waitingFor.length?(0,V.jsxs)("small",{children:["\u7B49\u5F85\uFF1A",a.waitingFor.slice(0,6).map(r=>Me(r,80)).join("\u3001")]}):null]},a.stepId))}):(0,V.jsx)("p",{children:"\u6682\u65E0\u63A5\u529B\u4E8B\u9879\u3002"}),e.totalHandoffs>n.length?(0,V.jsxs)("p",{children:["\u5DF2\u663E\u793A ",n.length,"/",e.totalHandoffs," \u9879\u63A5\u529B\uFF0C\u53E6 ",e.totalHandoffs-n.length," \u9879\u672A\u5217\u51FA\u3002"]}):null]})]})}function Un({delivery:e}){let[t,n]=rt.useState({runId:e.runId,open:!1}),a=t.runId===e.runId&&t.open;rt.useEffect(()=>{n({runId:e.runId,open:!1})},[e.runId]);let r=rt.useRef(null),d=rt.useId(),i=()=>{n({runId:e.runId,open:!1}),r.current?.focus()};return(0,V.jsxs)("section",{className:"team-delivery-card",onKeyDown:c=>{c.key==="Escape"&&a&&(c.stopPropagation(),i())},children:[(0,V.jsxs)("button",{ref:r,type:"button",className:"team-delivery-trigger","aria-expanded":a,"aria-controls":d,onClick:()=>n({runId:e.runId,open:!a}),children:[(0,V.jsx)("span",{title:$a(e),children:sa(e)}),(0,V.jsxs)("small",{children:[e.totalFiles," \u6587\u4EF6 \xB7 ",e.totalHandoffs," \u63A5\u529B"]}),(0,V.jsx)(Pa.WandIcon,{name:"chevronDown",size:14})]}),(0,V.jsx)("div",{id:d,className:"team-delivery-body","data-open":a||void 0,inert:!a,children:(0,V.jsx)("div",{className:"team-delivery-inner",children:(0,V.jsx)(Wa,{delivery:e})})})]})}var l=b(Z());function Is(e){return`/api/structured-sessions/${encodeURIComponent(e)}/messages`}function zs(e){return{input:e}}function Ms(e){return`/api/sessions/${encodeURIComponent(e)}/upload`}function Ls(e,t){return e.length?`[\u9644\u4EF6\u5DF2\u4E0A\u4F20\uFF0C\u8BF7\u67E5\u770B\u4EE5\u4E0B\u6587\u4EF6:
5
5
  ${e.map(n=>n.savedPath).join(`
6
6
  `)}
7
7
  ]
8
8
 
9
- `+(t.trim()||"\u8BF7\u67E5\u770B\u9644\u4EF6\u3002"):t}function Sn(e){let t=/^\s*\[附件已上传,请查看以下文件:\n([\s\S]*?)\]\n*/.exec(e);if(!t)return{paths:[],body:e};let n=t[1].split(`
10
- `).map(a=>a.trim()).filter(Boolean);return n.length?{paths:n,body:e.slice(t[0].length)}:{paths:[],body:e}}function es(e){return/\.(?:png|jpe?g|gif|webp|bmp|avif)$/i.test(e)}function hn(e){e.style.height="auto",e.style.height=`${e.scrollHeight}px`,e.style.overflowY=e.scrollHeight>e.clientHeight+1?"auto":"hidden"}var ts=5*6e4;function as(e,t,n){if(!e||typeof e!="object")return null;let a=e.messages;if(!Array.isArray(a))return null;let r=a.filter(s=>!!s&&typeof s=="object"&&Array.isArray(s.content)),m=r.map(tt),i=new Set(n),c=-1;for(let s=0;s<m.length;s++){let u=m[s];u!=null&&i.has(u)&&(c=s)}if(i.size>0&&c<0)return null;let o=r.slice(c+1).map(s=>s.role==="user"&&Pe(s)===t?tt(s):null).filter(s=>s!==null&&!i.has(s));return o.length===1?o[0]:null}function ns(e,t,n,a=[],r){if(e.role!=="user"||Pe(e)!==n)return!1;let m=tt(e);if(!m||a.includes(m))return!1;if(r)return m===r;let i=Date.parse(e.createdAt??"");return Number.isFinite(i)&&Math.abs(i-t)<=ts}function ga(e,t){if(!t)return e.map(r=>r.unconfirmed?r:{...r,unconfirmed:!0});let n=new Set,a=e.filter(r=>{if(r.accepted===!1||r.unconfirmed&&r.accepted!==!0)return!0;let m=t.flatMap((i,c)=>!n.has(c)&&ns(i,r.sentAt,r.text,r.knownFingerprints,r.ackFingerprint)?[c]:[]);return m.length!==1?!0:(n.add(m[0]),!1)});return a.length===e.length?e:a}function rs(e){return JSON.stringify(e.chatSessionId?["chat",e.chatSessionId]:["run",e.id])}function vn(e){return e instanceof et.HttpResponseError&&e.status>=400&&e.status<500&&e.status!==408&&e.status!==409}function $e(e){return e.displayTeam??e.run.team}function ss(e,t){let n=e.author;if(!n?.id)return e;let a=t.members.find(r=>r.id===n.id);return!a||a.name===n.name&&a.avatar===n.avatar?e:{...e,author:{...n,name:a.name,avatar:a.avatar}}}function is(e){return $e(e).members.map(t=>{let n=e.steps.filter(c=>c.memberId===t.id),a=n.find(c=>c.status==="running")??[...n].sort((c,o)=>o.seq-c.seq)[0],r=a?.sessionId?e.memberStates[a.sessionId]:void 0,m=a?.status==="running"?r==="needs_input"||r==="needs_permission"?"attention":"working":a?.status==="queued"?"queued":a?.status==="done"?"done":a?.status==="failed"?"failed":"idle",i=m==="attention"?r==="needs_permission"?"\u5F85\u6388\u6743":"\u5F85\u56DE\u7B54":{working:"\u5DE5\u4F5C\u4E2D",queued:"\u6392\u961F\u4E2D",done:"\u5DF2\u5B8C\u6210",failed:"\u5931\u8D25",idle:"\u5F85\u6D3E\u5DE5"}[m];return{member:t,state:m,label:i,task:a?.title||t.duty||"\u7B49\u5F85\u8D1F\u8D23\u4EBA\u6D3E\u5DE5",sessionId:a?.sessionId??null}})}function os({detail:e,onOpenSession:t}){let n=is(e),a=n.filter(m=>m.state==="working").length,r=n.filter(m=>m.state==="attention").length;return(0,d.jsxs)("section",{className:"team-chat-office","aria-label":"\u56E2\u961F\u5DE5\u4F4D",children:[(0,d.jsxs)("header",{className:"team-chat-office-head",children:[(0,d.jsx)("strong",{children:"\u56E2\u961F\u5DE5\u4F4D"}),(0,d.jsxs)("small",{children:[r?`${r} \u4EBA\u5F85\u5904\u7406 \xB7 `:"",a," \u4EBA\u5DE5\u4F5C\u4E2D \xB7 ",n.length," \u4EBA\u5728\u7EC4"]})]}),(0,d.jsx)("div",{className:"team-chat-office-members",children:n.map(({member:m,state:i,label:c,task:o,sessionId:s})=>{let u=(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(ct.TeamAvatar,{member:m,size:"sm",state:i==="working"?"working":i==="done"?"done":i==="failed"?"failed":"idle"}),(0,d.jsxs)("span",{className:"team-chat-office-copy",children:[(0,d.jsx)("strong",{children:m.name}),(0,d.jsx)("small",{title:o,children:o})]}),(0,d.jsx)("span",{className:"team-chat-office-state","data-state":i,children:c})]});return s&&t?(0,d.jsx)("button",{type:"button",className:"team-chat-office-member",onClick:()=>t(s),"aria-label":`\u67E5\u770B${m.name}\u7684\u4F1A\u8BDD\uFF1A${c}`,children:u},m.id):(0,d.jsx)("div",{className:"team-chat-office-member",children:u},m.id)})})]})}var ds={awaiting_approval:"\u56DE\u590D\u300E\u6279\u51C6\u300F\u5373\u5F00\u5DE5\uFF0C\u5176\u4ED6\u5185\u5BB9\u4F1A\u4F5C\u4E3A\u4FEE\u6539\u610F\u89C1\u8F6C\u7ED9\u8D1F\u8D23\u4EBA",running:"\u5C06\u4F5C\u4E3A\u63D2\u8BDD\uFF0C\u8D1F\u8D23\u4EBA\u4E0B\u4E00\u8F6E\u770B\u5230"},ls="\u53D1\u6D88\u606F\u4F1A\u63A5\u7740\u8FD9\u4E00\u8F6E\u7684\u8FDB\u5EA6\u5F00\u65B0\u4E00\u8F6E",cs="\u8F93\u5165\u6D88\u606F\u2026";function ha(e){return e==="running"||e==="awaiting_approval"||e==="waiting_user"}function ms(e,t,n=""){if(n==="send")return ha(e)?"send-and-stop":"send";let a=ha(e);return a&&t?"send-and-stop":a?"stop":t?"send":"blocked"}function ps(e){return e==="done"||e==="stopped"||e==="failed"?ls:ds[e]??""}function Pe(e){return e.content.filter(t=>t.type==="text").map(t=>"text"in t?t.text.trim():"").filter(Boolean).join(`
11
- `)}function Kt(e){let t=Date.parse(e.completedAt||e.createdAt||"");return Number.isNaN(t)?"":new Date(t).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}function us(e,t,n=new Date){let a=new Date(e.createdAt||"");if(!Number.isFinite(a.getTime()))return"";let r=t?new Date(t.createdAt||""):null;if(r&&Number.isFinite(r.getTime())&&a.toDateString()===r.toDateString()&&a.getTime()-r.getTime()<60*6e4)return"";let m=a.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",hour12:!1}),i=n.toDateString()===a.toDateString(),c=new Date(n.getFullYear(),n.getMonth(),n.getDate()-1).toDateString()===a.toDateString();return`${i?"\u4ECA\u5929":c?"\u6628\u5929":a.getFullYear()===n.getFullYear()?`${a.getMonth()+1}\u6708${a.getDate()}\u65E5`:`${a.getFullYear()}\u5E74${a.getMonth()+1}\u6708${a.getDate()}\u65E5`} ${m}`}function gs(e){return e.notice?"notice":e.role==="user"?"user":e.author?.leader?"leader":"step"}var fs=/^(✅ 完成|❌ 没完成)「(.+?)」\s*/;function Nn(e){let t=fs.exec(e.trim());return t?{ok:t[1]==="\u2705 \u5B8C\u6210",title:t[2],body:e.trim().slice(t[0].length)}:null}function hs(e){return e&&e.title.trim()?`\u6210\u5458\u62A5\u544A \xB7 ${e.title}`:"\u6210\u5458\u53D1\u8A00"}var vs=/^\d+\.\s*\*\*@(.+?)\*\*\s*(.+)$/,bs=/^(.+?)((依据:.+?))$/,ws=/^(.+?)((等第.+?))$/;function ys(e){let t=e.trim().split(`
12
- `),n=[],a=[];for(let r of t){let m=vs.exec(r.trim());if(!m){a.push(r);continue}let i=bs.exec(m[2])??ws.exec(m[2]);n.push({member:m[1],title:i?i[1]:m[2],note:i?i[2]:""})}return{head:a.join(`
13
- `).trim(),assignments:n}}var va=6,ba=420;function ya(e){return e.length>ba||e.split(`
14
- `).length>va}var Ot="\u6211",Cn="\uFF08\u8FD9\u6761\u6D88\u606F\u6CA1\u6709\u6B63\u6587\uFF09",xs="\u70B9\u51FB\u5C55\u5F00";function Ht(e,t,n=0){return e==="notice"?"notice":e==="user"?"bubble":ya(t)||n>0?"document":"bubble"}function ks(e){let t=e.split(`
15
- `),n=t.length>va,a=t.slice(0,va).join(`
16
- `);return a.length>ba&&(a=a.slice(0,ba).trimEnd(),n=!0),n?`${a}\u2026`:a}function In(e){let t=e?.avatar??"";return t.startsWith("data:image/")?{kind:"upload",src:t}:e&&(e.id||e.name)?{kind:"cat",coat:(0,ct.memberCoatIndex)({id:e.id,name:e.name,avatar:t})}:{kind:"brand"}}var Ts=/[\s((、「【《,,。;;::!!??]/,Rs=["**","__","~~","*","_"],As=/[\s((、「【《,,。;;::!!??))」】》、.\]}]/;function Es(e,t,n=e){let a=[...new Set(t.map(u=>u.trim()).filter(Boolean))].sort((u,g)=>g.length-u.length);if(!e||a.length===0)return e?[{text:e}]:[];let m=n!==e&&e.endsWith("\u2026")&&n.startsWith(e.slice(0,-1))?e.length-1:e.length,i=[],c=0;for(;c<n.length;){let u=c===0||Ts.test(n[c-1]),g=u?Rs.find(x=>n.startsWith(`${x}@`,c)):void 0,v=g?c+g.length:c;if((u||g)&&n[v]==="@"){let x=a.find(h=>n.startsWith(h,v+1));if(x){let h=v+1+x.length,b=g?n.startsWith(g,h):!1,I=b?h+g.length:h;if((!g||b)&&(I===n.length||As.test(n[I]))&&I<=m){i.push({start:v,end:h}),c=I;continue}}}c++}let o=[],s=0;for(let u of i)u.start>s&&o.push({text:e.slice(s,u.start)}),o.push({text:e.slice(u.start,u.end),mention:!0}),s=u.end;return s<e.length&&o.push({text:e.slice(s)}),o}var Ft=[];function jt({text:e,names:t,source:n}){return(0,d.jsx)(d.Fragment,{children:Es(e,t,n).map((a,r)=>a.mention?(0,d.jsx)("span",{className:"team-chat-mention",title:a.text,children:a.text},`mention#${r}`):(0,d.jsx)(A.Fragment,{children:a.text},`plain#${r}`))})}function Ss({path:e}){let[t,n]=A.useState(!1),a=e.split("/").at(-1)?.replace(/^\d{13}-[0-9a-f]{8}-/,"")||e,r=es(e)&&!t;return(0,d.jsx)("button",{type:"button",className:"team-chat-attachment","data-image":r||void 0,title:`\u9884\u89C8 ${a}`,onClick:()=>{wa.filePreviewController.open(e)},children:r?(0,d.jsx)("img",{src:`/api/file-raw?path=${encodeURIComponent(e)}`,alt:a,loading:"lazy",onError:()=>n(!0)}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(We.WandIcon,{name:"file",size:18}),(0,d.jsx)("span",{children:a})]})})}function zn({paths:e}){return e.length?(0,d.jsx)("div",{className:"team-chat-attachments","aria-label":"\u6D88\u606F\u9644\u4EF6",children:e.map((t,n)=>(0,d.jsx)(Ss,{path:t},`${t}#${n}`))}):null}function Ns({file:e}){let t=e.preview?.title||e.name,n=e.preview?.excerpt||(e.preview?"\u62A5\u544A\u6682\u65E0\u6B63\u6587":"\u70B9\u51FB\u67E5\u770B\u5B8C\u6574\u62A5\u544A");return(0,d.jsx)("div",{className:"team-chat-file-card",children:(0,d.jsxs)("button",{type:"button",className:"team-chat-file-open",title:`\u67E5\u770B\u5B8C\u6574\u62A5\u544A\uFF1A${t}`,onClick:()=>{wa.filePreviewController.open(e.path)},children:[(0,d.jsxs)("span",{className:"team-chat-file-copy",children:[(0,d.jsx)("strong",{children:t}),(0,d.jsx)("span",{className:"team-chat-file-excerpt",children:n})]}),(0,d.jsxs)("span",{className:"team-chat-file-icon","aria-hidden":"true",children:[(0,d.jsx)(We.WandIcon,{name:"file",size:12}),(0,d.jsx)("b",{children:t}),(0,d.jsx)("span",{children:e.preview?.excerpt})]}),(0,d.jsxs)("span",{className:"team-chat-file-meta",children:[(0,d.jsx)("span",{children:e.name}),(0,d.jsxs)("span",{children:["Markdown \xB7 ",(0,Rn.formatFilePreviewSize)(e.size)]})]})]})})}function Mn({spec:e,size:t="md"}){return(0,d.jsx)("span",{className:"team-chat-avatar","data-kind":e.kind,"data-size":t,"aria-hidden":"true",children:e.kind==="upload"?(0,d.jsx)("img",{className:"team-chat-avatar-upload",src:e.src,alt:""}):e.kind==="cat"?(0,d.jsx)(ct.PixelCat,{coat:e.coat}):(0,d.jsx)(We.WandBrandMark,{className:"team-chat-avatar-brand"})})}function Ut({shape:e,text:t,assignments:n,names:a,onExpand:r}){let m=Sn(t),i=m.paths.length&&m.body.trim()==="\u8BF7\u67E5\u770B\u9644\u4EF6\u3002"?"":m.body,c=ya(i),o=n??[];return(0,d.jsxs)("div",{className:e==="document"?"team-chat-doc":"chat-message-bubble team-chat-bubble","data-shape":e,children:[(0,d.jsx)(zn,{paths:m.paths}),i.trim()?c?(0,d.jsx)("p",{className:"team-chat-preview",children:(0,d.jsx)(jt,{text:ks(i),names:a,source:i})}):(0,d.jsx)("pre",{className:e==="document"?"team-chat-doc-text":"team-chat-bubble-text",children:(0,d.jsx)(jt,{text:i,names:a})}):o.length===0&&m.paths.length===0?(0,d.jsx)("p",{className:"team-chat-preview team-chat-msg-empty",children:Cn}):null,o.length>0?(0,d.jsx)("ol",{className:"team-chat-plan-list",children:o.map((s,u)=>(0,d.jsxs)("li",{children:[(0,d.jsxs)("span",{className:"team-chat-mention",children:["@",s.member]}),(0,d.jsx)("span",{className:"team-chat-plan-title",children:s.title}),s.note?(0,d.jsx)("small",{className:"team-chat-plan-basis",children:s.note}):null]},`${s.member}#${u}`))}):null,c&&r?(0,d.jsx)("button",{type:"button",className:"team-chat-expand","aria-haspopup":"dialog",onClick:r,children:xs}):null]})}function qt({kind:e,side:t,shape:n,status:a,avatar:r,name:m,sessionId:i,chip:c,badge:o,clock:s,onOpenSession:u,children:g,footer:v,presentationId:x,arriving:h=!1,onArrivalEnd:b}){return(0,d.jsxs)("div",{className:"chat-message assistant team-chat-msg","data-presentation-id":x,"data-arriving":h||void 0,onAnimationEnd:b,"data-kind":e,"data-side":t,"data-shape":n,"data-status":a,children:[(0,d.jsx)(Mn,{spec:r}),(0,d.jsxs)("div",{className:"team-chat-msg-content",children:[(0,d.jsxs)("div",{className:"team-chat-msg-head",children:[i&&u?(0,d.jsx)("button",{type:"button",className:"avatar-name chat-author-link",title:"\u67E5\u770B\u8FD9\u4E2A\u6210\u5458\u7684\u4F1A\u8BDD",onClick:()=>u(i),children:m}):(0,d.jsx)("span",{className:"avatar-name",children:m}),c,o?(0,d.jsx)("span",{className:"chat-author-badge",children:o}):null,s?(0,d.jsx)("span",{className:"chat-message-time",children:s}):null]}),g,v]})]})}function Cs({text:e,previewClassName:t,bodyClassName:n}){let a=ya(e),[r,m]=A.useState(!1),i=!a||r;return(0,d.jsxs)(d.Fragment,{children:[a&&!i?(0,d.jsx)("p",{className:t,children:e}):null,(0,d.jsx)("div",{className:n,"data-open":i||void 0,inert:!i,children:(0,d.jsx)("div",{className:`${n}-inner`,children:(0,d.jsx)("pre",{className:`${n}-text`,children:e})})}),a?(0,d.jsx)("button",{type:"button",className:"team-chat-expand","aria-expanded":i,onClick:()=>m(c=>!c),children:i?"\u6536\u8D77":"\u5C55\u5F00\u5168\u6587"}):null]})}function Is({detail:e}){let{run:t}=e;return(0,d.jsxs)("section",{className:"team-chat-goal",children:[(0,d.jsxs)("header",{className:"team-chat-goal-head",children:[(0,d.jsx)("span",{className:"team-chat-goal-label",children:"\u4E3B\u4EFB\u52A1"}),(0,d.jsxs)("span",{className:"team-chat-goal-meta",children:[t.stepsUsed,"/",t.stepLimit," \u6B65 \xB7 ",$e(e).name]})]}),(0,d.jsx)(Cs,{text:t.objective,previewClassName:"team-chat-goal-preview",bodyClassName:"team-chat-goal-body"})]})}function zs({turn:e,step:t,names:n,onOpenSession:a,onExpandDoc:r,presentationId:m,arriving:i,onArrivalEnd:c}){let o=e.author,s=Nn(Pe(e)),u=s?s.body:Pe(e),g=Kt(e),v=t?.status??(s?.ok===!1?"failed":s?"done":void 0),x=e.reportFile?"bubble":Ht("step",u,0),h=o?.name??"\u6210\u5458",b=In(o),I=s?`${s.ok?"\u2705":"\u274C"} ${s.title}`:"";return(0,d.jsx)(qt,{kind:"step",side:"start",shape:x,status:v,avatar:b,name:h,sessionId:o?.sessionId??null,chip:s?(0,d.jsx)("span",{className:"team-chat-step-chip","data-ok":s.ok||void 0,children:I}):null,clock:g,onOpenSession:a,presentationId:m,arriving:i,onArrivalEnd:c,children:e.reportFile?(0,d.jsx)(Ns,{file:e.reportFile}):(0,d.jsx)(Ut,{shape:x,text:u,names:n,onExpand:f=>r(f.currentTarget,{text:u,name:h,clock:g,typeLabel:hs(s),chip:I,avatar:b,side:"start",mentionNames:[...n]})})})}function Ms({turn:e,names:t,onOpenSession:n,onExpandDoc:a,presentationId:r,arriving:m,onArrivalEnd:i}){let c=e.author,o=Kt(e),s=Pe(e),{head:u,assignments:g}=ys(s),v=Ht("leader",u,g.length),x=c?.name??"\u8D1F\u8D23\u4EBA",h=In(c);return(0,d.jsx)(qt,{kind:"leader",side:"start",shape:v,avatar:h,name:x,sessionId:c?.sessionId??null,badge:"\u8D1F\u8D23\u4EBA",clock:o,onOpenSession:n,presentationId:r,arriving:m,onArrivalEnd:i,children:(0,d.jsx)(Ut,{shape:v,text:u,assignments:g,names:t,onExpand:b=>a(b.currentTarget,{text:s,name:x,clock:o,typeLabel:"\u8D1F\u8D23\u4EBA\u6D3E\u5DE5",avatar:h,side:"start",mentionNames:[...t]})})})}var Ln=24,bn="\u5DF2\u5F00\u59CB\uFF0C\u7B49\u5F85\u7B2C\u4E00\u6BB5\u8F93\u51FA\u2026",Ls={working:"\u5DE5\u4F5C\u4E2D",needs_input:"\u7B49\u5F85\u56DE\u7B54",needs_permission:"\u7B49\u5F85\u6388\u6743",done:"\u5DF2\u5B8C\u6210",failed:"\u5931\u8D25"};function _s(e){return e&&Ls[e]||""}function Ds(e,t,n,a=Ln){return t-(e+n)<=a}function _n(e,t=Ln){return Ds(e.scrollTop,e.scrollHeight,e.clientHeight,t)}function Ps(e){let t=new Set,n=[];for(let a of e)t.has(a.stepId)||(t.add(a.stepId),n.push(a));return n.sort((a,r)=>a.seq-r.seq)}var Ws=6;function $s(e){return e>0?`\u5DF2\u7701\u7565\u524D\u9762 ${e} \u5B57`:""}function wn(e,t,n=Date.now()){let a=Ps(t),r=new Set(a.map(i=>i.stepId)),m=e.filter(i=>!r.has(i.step.stepId)).map(i=>({...i,leaving:!0,leavingSince:i.leaving?i.leavingSince:n}));return[...a.map(i=>({step:i,leaving:!1,leavingSince:0})),...m].sort((i,c)=>i.step.seq-c.step.seq)}function yn(e,t){return e.filter(n=>!(n.leaving&&n.step.stepId===t))}var Os="--motion-quick-exit";function Fs(e){let t=e.trim(),n=/^(\d+(?:\.\d+)?)ms$/.exec(t);if(n)return Math.round(Number(n[1]));let a=/^(\d+(?:\.\d+)?)s$/.exec(t);return a?Math.round(Number(a[1])*1e3):null}function xn(){return typeof window>"u"?null:Fs(getComputedStyle(document.documentElement).getPropertyValue(Os))}function Bs(e,t,n){let a=e.filter(r=>!r.leaving||t-r.leavingSince<n);return a.length===e.length?e:a}function Hs({row:e,title:t,memberName:n,state:a,onOpenSession:r,onRetire:m}){let i=e.step,c=A.useRef(null),o=A.useRef(!0),s=A.useRef(null),[u,g]=A.useState(!1),v=_s(a??i.state),x=Kt({createdAt:i.updatedAt,completedAt:i.updatedAt}),h=$s(i.omittedChars),b=i.text.trim().split(`
17
- `).filter(Boolean).at(-1)||bn;A.useEffect(()=>{let f=c.current;u&&f&&o.current&&(f.scrollTop=f.scrollHeight)},[u,i.text]);let I=()=>{r&&(window.getSelection()?.toString()||r(i.sessionId))};return(0,d.jsxs)("div",{className:"team-chat-live-row","data-leaving":e.leaving||void 0,onAnimationEnd:f=>{e.leaving&&f.target===f.currentTarget&&m(i.stepId)},children:[(0,d.jsxs)("div",{className:"team-chat-live-head",children:[(0,d.jsx)("span",{className:"team-chat-live-name",title:n,children:n}),(0,d.jsxs)("span",{className:"team-chat-live-chip",children:["#",i.seq,t?` ${t}`:""]}),v?(0,d.jsx)("span",{className:"team-chat-live-state","data-state":i.state,children:v}):null,x?(0,d.jsx)("span",{className:"chat-message-time",children:x}):null]}),(0,d.jsxs)("button",{type:"button",className:"team-chat-live-summary","aria-expanded":u,onClick:()=>g(f=>!f),children:[(0,d.jsx)("span",{children:b}),(0,d.jsx)("small",{children:u?"\u6536\u8D77\u8F93\u51FA":"\u5C55\u5F00\u8F93\u51FA"})]}),(0,d.jsx)("div",{className:"team-chat-live-body","data-open":u||void 0,inert:!u,children:(0,d.jsx)("div",{className:"team-chat-live-body-inner",children:(0,d.jsxs)("div",{className:"team-chat-live-card",role:"button",tabIndex:0,title:"\u67E5\u770B\u8FD9\u4E2A\u6210\u5458\u7684\u4F1A\u8BDD","aria-label":`\u6253\u5F00${n}\u6B63\u5728\u8F93\u51FA\u7684\u4F1A\u8BDD`,onPointerDown:f=>{s.current={x:f.clientX,y:f.clientY}},onClick:f=>{let T=s.current;T&&Math.hypot(f.clientX-T.x,f.clientY-T.y)>Ws||I()},onKeyDown:f=>{f.key!=="Enter"&&f.key!==" "||(f.preventDefault(),I())},children:[h?(0,d.jsx)("p",{className:"team-chat-live-omitted",children:h}):null,(0,d.jsx)("pre",{className:"team-chat-live-text",ref:c,onScroll:f=>{o.current=_n(f.currentTarget)},children:i.text||bn})]})})})]})}function tt(e){let t=e.content.map(a=>a.type==="text"?["text",a.text]:null);if(t.some(a=>a===null))return null;let n=e.author;return JSON.stringify([e.role,e.notice??null,e.createdAt??null,e.completedAt??null,n?[n.id??null,n.name??null,n.leader??null,n.sessionId??null,n.provider??null,n.model??null,n.thinkingEffort??null,n.avatar??null]:null,t,...e.reportFile?[[e.reportFile.stepId,e.reportFile.path,e.reportFile.name,e.reportFile.size,e.reportFile.preview?.title??null,e.reportFile.preview?.excerpt??null]]:[]])}function kn(e,t){for(let n=0;n<=e.length-t.length;n++)if(t.every((a,r)=>e[n+r]===a))return n;return-1}function Dn(e,t){if(e.length===0)return[...t];if(t.length===0)return e;let n=e.map(tt),a=t.map(tt);if(n.includes(null)||a.includes(null))return e;let r=n,m=a,i=kn(m,r);if(i>=0)return i+e.length<t.length?[...t]:e;if(kn(r,m)>=0)return e;let c=0;for(let o=1;o<=Math.min(e.length,t.length);o++)if(r.slice(-o).every((s,u)=>s===m[u])){if(c>0)return e;c=o}return c>0?[...e,...t.slice(c)].slice(-Va):e}function At(e,t){if(!e||e.run.id!==t.run.id)return t;let n=Date.parse(e.run.updatedAt??""),a=Date.parse(t.run.updatedAt??""),r=g=>g.steps.filter(v=>v.status==="done"||v.status==="failed"||v.status==="skipped").length,m=e.run.status==="done"||e.run.status==="failed"||e.run.status==="stopped",i=t.run.status==="done"||t.run.status==="failed"||t.run.status==="stopped",o=Number.isFinite(n)&&Number.isFinite(a)&&a<n||a===n&&(m&&!i||t.steps.length<e.steps.length||r(t)<r(e)||t.run.stepsUsed<e.run.stepsUsed)?e:t,s=Date.parse(e.displayTeam?.updatedAt??"")>Date.parse(t.displayTeam?.updatedAt??"")?e.displayTeam:t.displayTeam,u=t.chatTitle===void 0||Date.parse(e.chatTitleUpdatedAt??"")>Date.parse(t.chatTitleUpdatedAt??"")?e:t;return{...o,...s?{displayTeam:s}:{},...u.chatTitle!==void 0?{chatTitle:u.chatTitle,chatTitleUpdatedAt:u.chatTitleUpdatedAt}:{},chatTurns:Dn(e.chatTurns,t.chatTurns)}}function js(e,t){let n=null;for(let a=1;a<=Math.min(e.length,t.length);a++)if(e.slice(-a).every((r,m)=>r.fingerprint!==null&&r.fingerprint===t[m])){if(n!==null)return null;n=a}return n}function Us(e,t,n){let a=e?.scope===t?e.rows:[],r=n.map(tt),m=e?.scope===t?e.nextId:0,i=()=>`turn-${++m}`;if(a.length===n.length&&a.every((h,b)=>h.fingerprint!==null&&h.fingerprint===r[b]))return{scope:t,nextId:m,candidates:[],rows:n.map((h,b)=>({...a[b],turn:h}))};let o=js(a,r),s=new Map,u=new Map;for(let h of a)h.fingerprint!==null&&s.set(h.fingerprint,(s.get(h.fingerprint)??0)+1);for(let h of r)h!==null&&u.set(h,(u.get(h)??0)+1);let g=[],v=[],x=a.length?Date.parse(a.at(-1).turn.createdAt??""):-1/0;for(let h=0;h<n.length;h++){let b=r[h],I=o!==null&&h<o?a[a.length-o+h]:void 0,f=b!==null&&(s.get(b)??0)<=1&&u.get(b)===1,T=I&&b!==null&&s.get(b)===u.get(b)&&n.every((M,W)=>r[W]!==b||o!==null&&W<o&&a[a.length-o+W]?.fingerprint===b),R=I&&(f||T)?I:f?a.find(M=>M.fingerprint===b):void 0,y=R?.presentationId??i();g.push({turn:n[h],fingerprint:b,presentationId:y});let N=Date.parse(n[h].createdAt??"");!R&&f&&(a.length===0&&e?.scope===t||o!==null&&h>=o)&&Number.isFinite(N)&&(a.length===0||Number.isFinite(x)&&N>=x)&&v.push(y)}return{scope:t,rows:g,nextId:m,candidates:v}}function qs({layer:e,onExited:t}){let n=e.ownerId,a=Sn(e.text);return A.useEffect(()=>()=>t(n),[n,t]),(0,d.jsxs)("div",{className:"team-chat-doc-layer",children:[(0,d.jsxs)("div",{className:"team-chat-doc-layer-meta",children:[(0,d.jsx)(Mn,{spec:e.avatar,size:"sm"}),(0,d.jsx)("span",{className:"team-chat-doc-layer-name",children:e.name}),e.chip?(0,d.jsx)("span",{className:"team-chat-step-chip",children:e.chip}):null,e.clock?(0,d.jsx)("span",{className:"chat-message-time",children:e.clock}):null]}),(0,d.jsx)(zn,{paths:a.paths}),(0,d.jsx)("pre",{className:"team-chat-doc-layer-text",tabIndex:0,"data-wand-autofocus":!0,children:a.body.trim()?(0,d.jsx)(jt,{text:a.body,names:e.mentionNames}):Cn})]})}function Tn(e,t,n,a){return n?.scope!==t?!1:e.startsWith("local#")?a.some(r=>`local#${r.sentAt}`===e):n.rows.some(r=>r.presentationId===e)}function mt({detail:e,onChange:t,onOpenSession:n,details:a,staleRun:r=!1}){let{run:m,chatTurns:i,steps:c}=e,[o,s]=A.useState([]),[u,g]=A.useState(""),[v,x]=A.useState(""),[h,b]=A.useState("message"),[I,f]=A.useState(!1),[T,R]=A.useState(!1),y=A.useRef(null),N=A.useRef(null),M=A.useRef(null),W=A.useRef(null),ne=A.useRef(null),me=A.useRef(null),V=A.useRef(!1),L=A.useRef(0),[H,$]=A.useState([]),[D,j]=A.useState(!1),[Y,Te]=A.useState(null),[He,Je]=A.useState({scope:"",ids:new Set}),K=rs(m),pe=m.chatSessionId,ft=A.useCallback(()=>De.teamChatComposer.revision(pe),[pe]);A.useSyncExternalStore(De.teamChatComposer.subscribe,ft,ft);let ht=De.teamChatComposer.read(pe),je=ht.text,se=ht.attachments,J=A.useRef({scope:K,runId:m.id,epoch:0});A.useLayoutEffect(()=>{let p=J.current;J.current={scope:K,runId:m.id,epoch:p.epoch+(p.scope===K?0:1)}},[K,m.id]);let ze=A.useRef(e);A.useLayoutEffect(()=>{ze.current=e},[e]);let vt=A.useRef(null),Q=A.useMemo(()=>Us(vt.current,K,i),[K,i]);A.useLayoutEffect(()=>{vt.current=Q},[Q]);let bt=A.useId(),Qe=A.useId(),Me=A.useRef(null),wt=A.useRef(null),It=A.useRef({projection:Q,local:o});A.useLayoutEffect(()=>{It.current={projection:Q,local:o}},[Q,o]);let zt=A.useRef(null),E=A.useRef(null),U=A.useRef(K),de=A.useRef(K),fe=A.useRef(!0),sa=A.useRef(""),ia=A.useRef(null),Ue=A.useRef(!0),Mt=$e(e),oa=A.useMemo(()=>[...new Set([...Mt.members.map(p=>p.name),...m.team.members.map(p=>p.name),...i.map(p=>p.author?.name).filter(p=>!!p)])],[Mt,m.team,i]),da=r?"\u6B63\u5728\u63A5\u5165\u65B0\u4E00\u8F6E\uFF0C\u52A0\u8F7D\u5B8C\u6210\u540E\u53EF\u53D1\u9001":ps(m.status),_a=m.status==="running",la=ms(m.status,!!je.trim()||se.length>0,v),Lt=v!=="",ca=la==="stop",Wr=Lt||r||la==="blocked",$r=v==="send"?"sending":ca?"running":"idle",Da=v==="send"?h==="upload"?"\u4E0A\u4F20\u4E2D\u2026":"\u53D1\u9001\u4E2D\u2026":v==="stop"?"\u505C\u6B62\u4E2D\u2026":ca?"\u505C\u6B62\u56E2\u961F":"\u53D1\u9001\u6D88\u606F",Pa=u?"\u64CD\u4F5C\u5931\u8D25":v==="send"?h==="upload"?"\u4E0A\u4F20\u4E2D\u2026":"\u53D1\u9001\u4E2D\u2026":v==="stop"?"\u505C\u6B62\u4E2D\u2026":"Enter \u53D1\u9001 \xB7 Shift+Enter \u6362\u884C";A.useLayoutEffect(()=>{let p=W.current;p&&hn(p)},[je,pe]),A.useLayoutEffect(()=>{let p=W.current,S=p?.parentElement;if(!p||!S)return;let P=-1,C=new ResizeObserver(([F])=>{let le=F?.contentRect.width??S.getBoundingClientRect().width;le<=0||Math.abs(le-P)<.5||(P=le,hn(p))});return C.observe(S),()=>C.disconnect()},[pe]),A.useEffect(()=>{if(!T)return;let p=P=>{let C=P.target;C&&(ne.current?.contains(C)||me.current?.contains(C))||R(!1)},S=P=>{P.key==="Escape"&&(P.preventDefault(),P.stopPropagation(),R(!1),ne.current?.focus())};return document.addEventListener("pointerdown",p),document.addEventListener("keydown",S),()=>{document.removeEventListener("pointerdown",p),document.removeEventListener("keydown",S)}},[T]),A.useLayoutEffect(()=>{if(!T)return;let p=y.current,S=ne.current,P=me.current;if(!p||!S||!P)return;let C=()=>{let le=p.getBoundingClientRect(),he=S.getBoundingClientRect();P.style.left=`${Math.max(0,he.left-le.left)}px`,P.style.bottom=`${Math.max(0,le.bottom-he.top+8)}px`};C();let F=new ResizeObserver(C);return F.observe(p),F.observe(S),window.addEventListener("resize",C),()=>{F.disconnect(),window.removeEventListener("resize",C)}},[T,se.length,pe,da]),A.useEffect(()=>{R(!1)},[pe]);let yt=A.useCallback(()=>{Te(p=>p?.phase!=="open"?p:(ia.current=`${p.scope}/${p.ownerId}`,{...p,phase:"closing"}))},[]),Or=A.useCallback(p=>{ia.current===`${sa.current}/${p}`&&(ia.current=null,Te(S=>S?.ownerId===p&&S.phase==="closing"?null:S),queueMicrotask(()=>{if(!fe.current)return;let S=It.current;(Tn(p,sa.current,S.projection,S.local)&&wt.current?.isConnected?wt.current:Me.current)?.focus({preventScroll:!0})}))},[]);A.useEffect(()=>(fe.current=!0,()=>{fe.current=!1}),[]),A.useEffect(()=>{de.current!==K&&(de.current=K,s([]),g(""),x(""),Ue.current=!0)},[K]),A.useEffect(()=>{j(!1),yt()},[m.id,yt]),A.useEffect(()=>{s(p=>ga(p,i))},[i,K]),A.useLayoutEffect(()=>{Y?.phase==="open"&&(Tn(Y.ownerId,Y.scope,Q,o)||yt())},[Y,K,Q,o,yt]),A.useEffect(()=>{let p=window.matchMedia("(prefers-reduced-motion: reduce)"),S=()=>Je(F=>F.ids.size?{scope:F.scope,ids:new Set}:F),P=()=>{document.visibilityState!=="visible"&&S()},C=()=>{p.matches&&S()};return document.addEventListener("visibilitychange",P),window.addEventListener("pagehide",S),p.addEventListener("change",C),P(),C(),()=>{document.removeEventListener("visibilitychange",P),window.removeEventListener("pagehide",S),p.removeEventListener("change",C)}},[]),A.useLayoutEffect(()=>{if(zt.current===Q)return;zt.current=Q;let p=Me.current;if(!p)return;if(U.current!==K&&(E.current=null,Ue.current=!0,U.current=K),Ue.current)p.scrollTop=p.scrollHeight;else if(E.current){let P=[...p.children].find(C=>C.dataset.presentationId===E.current?.id);P&&(p.scrollTop+=P.getBoundingClientRect().top-p.getBoundingClientRect().top-E.current.offset)}let S=new Set;if(Ue.current&&document.visibilityState==="visible"&&!window.matchMedia("(prefers-reduced-motion: reduce)").matches){let P=p.getBoundingClientRect();for(let C of Q.candidates){let F=[...p.children].find(le=>le.dataset.presentationId===C);F&&F.getBoundingClientRect().bottom>P.top&&F.getBoundingClientRect().top<P.bottom&&S.add(C)}}Je(P=>({scope:K,ids:new Set([...(P.scope===K?[...P.ids]:[]).filter(C=>Q.rows.some(F=>F.presentationId===C)),...S])}))},[Q,K]),A.useEffect(()=>{if($([]),!_a)return;let p=!0;Rt.aiTeamsRepository.live(m.id).then(P=>{p&&$(wn([],P.steps))},()=>{});let S=Rt.aiTeamsRepository.subscribeAiTeamStepLive(P=>{!p||P.runId!==m.id||$(C=>wn(C,P.steps))});return()=>{p=!1,S()}},[m.id,_a]),A.useEffect(()=>{let p=xn();if(p===null)return;let S=Date.now(),P=H.filter(C=>C.leaving).map(C=>window.setTimeout(()=>$(F=>yn(F,C.step.stepId)),Math.max(0,C.leavingSince+p-S)));return()=>{for(let C of P)window.clearTimeout(C)}},[H]),A.useEffect(()=>{let p=xn();if(p===null)return;let S=()=>{document.visibilityState==="visible"&&$(P=>Bs(P,Date.now(),p))};return document.addEventListener("visibilitychange",S),()=>document.removeEventListener("visibilitychange",S)},[]),A.useEffect(()=>{let p=Me.current;!p||!Ue.current||(p.scrollTop=p.scrollHeight)},[Q.rows.at(-1)?.presentationId,o.length,H.length]);let _t=(p,S,P)=>{if(Y)return;let C=p.getBoundingClientRect(),F=C.top+C.height/2<window.innerHeight/2?"top":"bottom";wt.current=p,sa.current=K,Te({...P,ownerId:S,scope:K,half:F,phase:"open"})},Dt=p=>{if(!pe)return;let S=Array.from(p),P=Math.max(0,5-De.teamChatComposer.read(pe).attachments.length);S.length>P&&g("\u4E00\u6B21\u6700\u591A\u6DFB\u52A0 5 \u4E2A\u9644\u4EF6\u3002");for(let[C,F]of S.slice(0,P).entries()){if(F.size>10*1024*1024){g(`\u6587\u4EF6\u8D85\u8FC7 10 MB\uFF1A${F.name||"\u56FE\u7247"}`);continue}let le=F.type.startsWith("image/"),he=F.name&&F.name!=="blob"?F.name:`image-${Date.now()}-${C+1}.${F.type.split("/")[1]||"png"}`;De.teamChatComposer.edit(pe,{addAttachment:{file:F,name:he,size:F.size,previewUrl:le?URL.createObjectURL(F):null}})}},Wa=async()=>{let p=je.trim(),S=m.chatSessionId;if(!p&&!se.length||!S||Lt||r)return;let P=K,C=J.current.epoch,F=()=>J.current.scope===P&&J.current.epoch===C,le=i.map(tt).filter(ue=>ue!==null);x("send"),g(""),Ue.current=!0;let he=se.length?"upload":"message";b(he);try{await De.teamChatComposer.submit(S,p,async ue=>{let Le=[];if(ue.attachments.length){let re=new FormData;for(let qe of ue.attachments)re.append("files",qe.file,qe.name);if(Le=(await(0,et.requestJson)(Qr(S),{method:"POST",body:re})).files,!Array.isArray(Le)||Le.length!==ue.attachments.length)throw new Error("\u9644\u4EF6\u4E0A\u4F20\u7ED3\u679C\u4E0D\u5B8C\u6574\uFF0C\u8BF7\u91CD\u8BD5\u3002")}if(!F())throw new Error("\u5DF2\u5207\u6362\u7FA4\u804A\uFF0C\u539F\u6D88\u606F\u5DF2\u4FDD\u7559\u3002");let ot=Zr(Le,ue.text.trim()),dt=Date.now();he="message",b(he),s(re=>[...re,{local:!0,text:ot,sentAt:dt,unconfirmed:!1,accepted:!1,knownFingerprints:le}]);let ae;try{ae=await(0,et.requestJson)(Gr(S),{...(0,et.jsonBody)(Jr(ot)),headers:{"content-type":"application/json","X-Wand-Tool-Projection":"compact"}})}catch(re){let Ce=vn(re);throw F()&&s(qe=>Ce?qe.filter(xt=>xt.sentAt!==dt):qe.map(xt=>xt.sentAt===dt?{...xt,unconfirmed:!0}:xt)),!Ce&&re&&typeof re=="object"&&Object.assign(re,{__wandAmbiguousDelivery:!0}),re}if(!F())return;let we=as(ae,ot,le);s(re=>ga(re.map(Ce=>Ce.sentAt===dt?{...Ce,accepted:!0,ackFingerprint:we??void 0}:Ce),ze.current.chatTurns));let _e=null;try{let re=J.current.runId,Ce=await Rt.aiTeamsRepository.detail(re);if(!F())return;if(J.current.runId===re&&ze.current.run.id===re){let qe=At(ze.current,{...ze.current,chatTurns:Ce.chatTurns});t(qe),_e=qe.chatTurns}else _e=Dn(ze.current.chatTurns,Ce.chatTurns)}catch{if(!F())return;_e=null}s(re=>ga(re,_e))})}catch(ue){if(!F())return;g(he==="upload"?(0,Bt.failureMessage)(ue,"\u9644\u4EF6\u4E0A\u4F20\u5931\u8D25\uFF0C\u6587\u4EF6\u548C\u6587\u5B57\u5DF2\u4FDD\u7559\u3002"):vn(ue)?(0,Bt.failureMessage)(ue,"\u53D1\u9001\u5931\u8D25\uFF0C\u5185\u5BB9\u5DF2\u653E\u56DE\u8F93\u5165\u6846\u3002"):"\u9001\u8FBE\u72B6\u6001\u672A\u77E5\uFF0C\u8BF7\u5148\u67E5\u770B\u7FA4\u804A\u8BB0\u5F55\uFF0C\u907F\u514D\u91CD\u590D\u53D1\u9001\u3002")}finally{F()&&x("")}},$a=async()=>{if(!ha(m.status)||Lt||r)return;let p=K,S=m.id,P=J.current.epoch;x("stop"),g("");try{let C=await Rt.aiTeamsRepository.stop(S);J.current.scope===p&&J.current.epoch===P&&J.current.runId===S&&t(At(ze.current,C))}catch(C){J.current.scope===p&&J.current.epoch===P&&J.current.runId===S&&g((0,Bt.failureMessage)(C,"\u505C\u6B62\u5931\u8D25\u3002"))}finally{J.current.scope===p&&J.current.epoch===P&&x("")}};return(0,d.jsxs)("div",{className:"task-board-team-chat",children:[(0,d.jsxs)("button",{type:"button",className:"team-chat-context","aria-expanded":D,"aria-controls":bt,onClick:()=>j(p=>!p),children:[(0,d.jsx)("span",{className:"team-chat-context-label",children:"\u7FA4\u516C\u544A"}),(0,d.jsx)("span",{className:"team-chat-context-title",title:m.objective,children:m.objective.split(`
18
- `)[0]||"\u67E5\u770B\u672C\u6B21\u4EFB\u52A1"}),(0,d.jsx)("span",{className:"team-chat-context-action",children:D?"\u6536\u8D77":"\u8BE6\u60C5"})]}),(0,d.jsx)("div",{id:bt,className:"team-chat-details","data-open":D||void 0,inert:!D,children:(0,d.jsxs)("div",{className:"team-chat-details-inner",children:[(0,d.jsx)(Is,{detail:e}),(0,d.jsx)(os,{detail:e,onOpenSession:n}),a]})}),(0,d.jsxs)("div",{className:"task-board-team-chat-list",ref:Me,tabIndex:-1,onScroll:p=>{if(p.currentTarget!==Me.current)return;let S=p.currentTarget;if(Ue.current=_n(p.currentTarget),Ue.current){E.current=null;return}let P=S.getBoundingClientRect(),C=[...S.children].find(F=>F.dataset.presentationId&&F.getBoundingClientRect().bottom>P.top);C?.dataset.presentationId&&(E.current={id:C.dataset.presentationId,offset:C.getBoundingClientRect().top-P.top})},children:[i.length+o.length+H.length===0?(0,d.jsx)("p",{className:"task-board-team-run-detail",children:"\u7FA4\u804A\u8FD8\u6CA1\u6709\u6D88\u606F\u3002"}):null,Q.rows.map(({turn:p,presentationId:S},P)=>{let C=ss(p,Mt),F=gs(C),le=us(C,Q.rows[P-1]?.turn),he=ae=>(0,d.jsxs)(A.Fragment,{children:[le?(0,d.jsx)("time",{className:"team-chat-time-marker",dateTime:C.createdAt,children:le}):null,ae]},S),ue=He.scope===K&&He.ids.has(S),Le=ae=>{ae.target===ae.currentTarget&&ae.animationName==="wand-team-msg-in"&&Je(we=>we.scope===K&&we.ids.has(S)?{scope:K,ids:new Set([...we.ids].filter(_e=>_e!==S))}:we)};if(F==="notice")return he((0,d.jsx)("div",{className:"chat-message chat-notice","data-presentation-id":S,"data-arriving":ue||void 0,onAnimationEnd:Le,children:(0,d.jsxs)("div",{className:"chat-notice-line",title:[C.author?.name,Pe(C)].filter(Boolean).join(" "),children:[C.author?.name?(0,d.jsx)("span",{className:"chat-notice-author",children:C.author.name}):null,(0,d.jsx)("span",{className:"chat-notice-text",children:(0,d.jsx)(jt,{text:Pe(C),names:oa})})]})}));if(F==="user"){let ae=Pe(C),we=Kt(C),_e=Ht("user",ae,0);return he((0,d.jsx)(qt,{presentationId:S,kind:"user",side:"end",shape:_e,avatar:{kind:"brand"},name:Ot,clock:we,arriving:ue,onArrivalEnd:Le,children:(0,d.jsx)(Ut,{shape:_e,text:ae,names:Ft,onExpand:re=>_t(re.currentTarget,S,{text:ae,name:Ot,clock:we,typeLabel:"\u6211\u7684\u6D88\u606F",avatar:{kind:"brand"},side:"end",mentionNames:Ft})})}))}if(F==="leader")return he((0,d.jsx)(Ms,{presentationId:S,turn:C,names:oa,arriving:ue,onArrivalEnd:Le,onOpenSession:n,onExpandDoc:(ae,we)=>_t(ae,S,we)}));let ot=Nn(Pe(C)),dt=C.reportFile?c.find(ae=>ae.id===C.reportFile.stepId):ot?c.find(ae=>ae.kind==="work"&&ae.title===ot.title):void 0;return he((0,d.jsx)(zs,{presentationId:S,turn:C,step:dt,names:oa,arriving:ue,onArrivalEnd:Le,onOpenSession:n,onExpandDoc:(ae,we)=>_t(ae,S,we)}))}),H.map(p=>(0,d.jsx)(Hs,{row:p,title:c.find(S=>S.id===p.step.stepId)?.title??"",memberName:Mt.members.find(S=>S.id===p.step.memberId)?.name??p.step.memberName,state:e.memberStates[p.step.sessionId],onOpenSession:n,onRetire:S=>$(P=>yn(P,S))},p.step.stepId)),o.map(p=>{let S=Ht("user",p.text,0);return(0,d.jsx)(qt,{kind:"user",side:"end",shape:S,avatar:{kind:"brand"},name:Ot,footer:p.unconfirmed?(0,d.jsx)("small",{className:"wand-team-chat-unconfirmed",children:"\u672A\u786E\u8BA4"}):null,children:(0,d.jsx)(Ut,{shape:S,text:p.text,names:Ft,onExpand:P=>_t(P.currentTarget,`local#${p.sentAt}`,{text:p.text,name:Ot,clock:"",typeLabel:"\u6211\u7684\u6D88\u606F",avatar:{kind:"brand"},side:"end",mentionNames:Ft})})},`local#${p.sentAt}`)})]}),m.chatSessionId?(0,d.jsxs)("div",{ref:y,className:"task-board-team-chat-input","data-dragging":I||void 0,onDragOver:p=>{p.dataTransfer.types.includes("Files")&&(p.preventDefault(),f(!0))},onDragLeave:p=>{p.currentTarget.contains(p.relatedTarget)||f(!1)},onDrop:p=>{p.dataTransfer.files.length&&(p.preventDefault(),f(!1),Dt(p.dataTransfer.files))},children:[da?(0,d.jsx)("p",{className:"task-board-team-chat-hint",children:da}):null,(0,d.jsx)("div",{className:"input-composer-row",children:(0,d.jsxs)("div",{className:`input-composer${je.trim()?" has-text":""}${v==="send"?" in-flight":""}${I?" drag-over":""}`,role:"group","aria-label":"\u6D88\u606F\u7F16\u8F91\u5668",children:[se.length?(0,d.jsx)(En.ComposerAttachmentList,{items:se.map((p,S)=>({index:S,name:p.name,previewUrl:p.previewUrl??null,sizeLabel:p.size<1024?`${p.size} B`:p.size<1024*1024?`${(p.size/1024).toFixed(1)} KB`:`${(p.size/(1024*1024)).toFixed(1)} MB`})),onRemove:p=>De.teamChatComposer.edit(pe,{removeAttachment:p})}):null,(0,d.jsxs)("div",{className:"composer-main-row team-chat-compose-main",children:[(0,d.jsx)("div",{className:"composer-input-wrap",children:(0,d.jsx)("textarea",{ref:W,className:"input-textarea",rows:1,value:je,placeholder:cs,"aria-label":"\u7FA4\u804A\u6D88\u606F",onChange:p=>De.teamChatComposer.edit(pe,{text:p.currentTarget.value}),onCompositionStart:()=>{L.current++,V.current=!0},onCompositionEnd:()=>{let p=L.current;window.setTimeout(()=>{p===L.current&&(V.current=!1)},0)},onKeyDown:p=>{p.key!=="Enter"||p.shiftKey||p.altKey||p.ctrlKey||p.metaKey||p.nativeEvent.isComposing||p.keyCode===229||V.current||(p.preventDefault(),Wa())},onPaste:p=>{p.clipboardData.files.length&&(p.preventDefault(),Dt(p.clipboardData.files))}})}),(0,d.jsxs)("div",{className:"composer-actions-left",role:"group","aria-label":"\u6DFB\u52A0\u5185\u5BB9",children:[(0,d.jsx)("button",{ref:ne,type:"button",className:"btn-circle btn-circle-action composer-attach-trigger",title:"\u66F4\u591A","aria-label":"\u66F4\u591A\u64CD\u4F5C","aria-haspopup":"dialog","aria-controls":Qe,"aria-expanded":T,onClick:()=>R(p=>!p),children:(0,d.jsx)(We.WandIcon,{name:"plus",size:18,strokeWidth:2.2})}),(0,d.jsx)("input",{ref:N,type:"file",accept:"image/*",multiple:!0,hidden:!0,tabIndex:-1,"aria-label":"\u9009\u62E9\u56FE\u7247",onChange:p=>{p.currentTarget.files&&Dt(p.currentTarget.files),p.currentTarget.value="",W.current?.focus()}}),(0,d.jsx)("input",{ref:M,type:"file",multiple:!0,hidden:!0,tabIndex:-1,"aria-label":"\u9009\u62E9\u9644\u4EF6",onChange:p=>{p.currentTarget.files&&Dt(p.currentTarget.files),p.currentTarget.value="",W.current?.focus()}}),(0,d.jsx)("div",{className:"composer-status-row",children:(0,d.jsx)("span",{className:"composer-status-line",role:u?"alert":"status","aria-live":u?"assertive":"polite","data-tone":u?"failed":v?"sending":void 0,title:Pa,children:Pa})})]}),(0,d.jsxs)("div",{className:"composer-actions-right",role:"group","aria-label":"\u53D1\u9001\u4E0E\u505C\u6B62",children:[la==="send-and-stop"?(0,d.jsx)("button",{type:"button",className:"btn-circle btn-circle-action team-chat-stop-action",disabled:Lt||r,title:"\u505C\u6B62\u56E2\u961F","aria-label":"\u505C\u6B62\u56E2\u961F",onClick:()=>{$a()},children:(0,d.jsx)(We.WandIcon,{name:"stop",size:16})}):null,(0,d.jsxs)("button",{type:"button",className:"btn-circle btn-circle-send","data-phase":$r,disabled:Wr,title:Da,"aria-label":Da,onClick:()=>{ca?$a():Wa()},children:[(0,d.jsx)("span",{className:"composer-send-glyph composer-send-glyph-arrow","aria-hidden":"true",children:(0,d.jsxs)("svg",{width:"15",height:"15",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.4",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,d.jsx)("path",{d:"M12 19V5"}),(0,d.jsx)("path",{d:"m6 11 6-6 6 6"})]})}),(0,d.jsx)("span",{className:"composer-send-glyph composer-send-glyph-stop","aria-hidden":"true",children:(0,d.jsx)("svg",{width:"12",height:"12",viewBox:"0 0 16 16",fill:"currentColor",children:(0,d.jsx)("rect",{x:"3",y:"3",width:"10",height:"10",rx:"2"})})}),(0,d.jsx)("span",{className:"composer-send-glyph composer-send-glyph-sending","aria-hidden":"true",children:(0,d.jsx)("span",{className:"composer-send-spinner"})})]})]})]})]})}),(0,d.jsxs)("div",{ref:me,id:Qe,role:"dialog","aria-label":"\u66F4\u591A\u64CD\u4F5C","aria-modal":"false","aria-hidden":!T,inert:!T,className:`composer-plus-popover${T?"":" hidden"}`,children:[(0,d.jsx)(fa.ComposerPopoverAction,{icon:"image",label:"\u4E0A\u4F20\u56FE\u7247",onClick:()=>{R(!1),N.current?.click()}}),(0,d.jsx)(fa.ComposerPopoverAction,{icon:"paperclip",label:"\u4E0A\u4F20\u9644\u4EF6",onClick:()=>{R(!1),M.current?.click()}})]}),u?(0,d.jsx)("p",{className:"task-board-team-error",role:"alert",children:u}):null]}):(0,d.jsx)("p",{className:"task-board-team-run-detail",children:"\u8FD9\u6B21\u8FD0\u884C\u6CA1\u6709\u7FA4\u804A\u4F1A\u8BDD\uFF0C\u53EA\u80FD\u5728\u65F6\u95F4\u7EBF\u91CC\u770B\u3002"}),(0,d.jsx)(We.WandDialogSurface,{open:Y?.phase==="open",onOpenChange:p=>{p||yt()},title:Y?.name??"",description:Y?[Y.clock,Y.typeLabel].filter(Boolean).join(" \xB7 "):void 0,className:["wand-ui-dialog-content","wand-team-chat-doc-dialog",Y?.side==="end"?"wand-doc-dx-end":"wand-doc-dx-start",Y?.half==="top"?"wand-doc-dy-top":"wand-doc-dy-bottom"].join(" "),testId:"team-chat-doc-dialog",closeLabel:"\u5173\u95ED",children:Y?(0,d.jsx)(qs,{layer:Y,onExited:Or}):null})]})}var On=w(kt()),Fn=w(Ze()),Bn=w(Wt()),Vt=w(Wn()),xe=w(Ae()),k=w(Z()),St={running:{label:"\u8FDB\u884C\u4E2D",tone:"info"},awaiting_approval:{label:"\u7B49\u4F60\u6279\u51C6\u8BA1\u5212",tone:"warning"},waiting_user:{label:"\u7B49\u4F60\u56DE\u590D",tone:"warning"},done:{label:"\u5DF2\u5B8C\u6210",tone:"success"},failed:{label:"\u5931\u8D25",tone:"neutral"},stopped:{label:"\u5DF2\u505C\u6B62",tone:"neutral"}},Ks={queued:"\u6392\u961F",running:"\u8FDB\u884C\u4E2D",done:"\u5B8C\u6210",failed:"\u5931\u8D25",skipped:"\u8DF3\u8FC7"},Hn={needs_input:"\u7B49\u5F85\u56DE\u7B54",needs_permission:"\u7B49\u5F85\u6388\u6743"},Vs=["running","awaiting_approval","waiting_user"];function Ys(){let[e,t]=ee.useState(""),[n,a]=ee.useState(null),r=ee.useRef(null);ee.useEffect(()=>()=>{r.current!==null&&window.clearTimeout(r.current)},[]);let m=ee.useCallback(async(i,c)=>{t(i),a(null);let o=!0;try{await c()}catch{o=!1}finally{t("")}a({key:i,ok:o}),r.current!==null&&window.clearTimeout(r.current),r.current=window.setTimeout(()=>{r.current=null,a(null)},o?Vt.MOTION_DWELL_SENT_MS:Vt.MOTION_DWELL_FAILED_MS)},[]);return{pending:e,flash:n,run:m}}function pt({id:e,state:t,label:n,pendingLabel:a,kind:r="ghost",disabled:m,onClick:i}){let c=t.flash?.key===e?t.flash:null,o=t.pending===e;return(0,k.jsx)(xe.WandButton,{kind:r,size:"small","aria-busy":o||void 0,"aria-live":"polite",disabled:m||!!t.pending,onClick:()=>{t.run(e,i)},children:o?a:c?c.ok?"\u5DF2\u5B8C\u6210":"\u5931\u8D25":n})}function xa(e,t){return e.status==="running"?t&&Hn[t]?"waiting":"working":e.status==="done"?"done":e.status==="failed"?"failed":"idle"}function Xs(e,t,n){let a=t.filter(i=>i.memberId===e.id),r=a.find(i=>i.status==="running");if(r)return xa(r,r.sessionId?n[r.sessionId]:void 0);let m=[...a].reverse().find(i=>i.status!=="queued"&&i.status!=="skipped");return m?xa(m,void 0):"idle"}function Gs({step:e,steps:t,member:n,memberState:a,open:r,onToggle:m,onOpenSession:i,onComplete:c,actions:o}){let s=n?.name??(e.kind==="leader"?"\u8D1F\u8D23\u4EBA":e.memberId),[u,g]=ee.useState(""),[v,x]=ee.useState(!1),h=e.dispatchInfo?.skipped??[],b=a?Hn[a]:void 0,I=e.kind==="work"&&e.status==="running",f=e.status==="queued"?e.dependsOn.map(T=>t.find(R=>R.id===T)).filter(T=>!!T&&T.status!=="done").map(T=>`#${T.seq}`):[];return(0,k.jsxs)("li",{className:"task-board-team-step","data-status":e.status,"data-kind":e.kind,"data-open":r||void 0,children:[n?(0,k.jsx)(Et.TeamAvatar,{member:n,size:"sm",state:xa(e,a)}):(0,k.jsx)("span",{}),(0,k.jsxs)("div",{className:"task-board-team-step-card",children:[(0,k.jsxs)("button",{type:"button",className:"task-board-team-step-head","aria-expanded":r,onClick:m,children:[(0,k.jsxs)("span",{className:"task-board-team-step-title",children:[(0,k.jsxs)("small",{children:[s," \xB7 #",e.seq]}),(0,k.jsx)("strong",{children:e.title||(e.kind==="leader"?"\u8D1F\u8D23\u4EBA\u51B3\u7B56":"\u6210\u5458\u6B65\u9AA4")})]}),(0,k.jsx)("span",{className:"task-board-team-step-status",children:b??(f.length?`\u7B49\u5F85 ${f.join("\u3001")}`:Ks[e.status])}),(0,k.jsx)(xe.WandIcon,{name:"chevronDown",size:14})]}),e.report&&!r?(0,k.jsx)("p",{className:"task-board-team-step-preview",children:e.report}):null,(0,k.jsx)("div",{className:"task-board-team-step-body",inert:!r,children:(0,k.jsxs)("div",{className:"task-board-team-step-inner",children:[e.instructions?(0,k.jsxs)("section",{children:[(0,k.jsx)("h4",{children:e.kind==="leader"?"\u53D1\u7ED9\u8D1F\u8D23\u4EBA":"\u4EFB\u52A1\u8BF4\u660E"}),(0,k.jsx)("pre",{children:e.instructions})]}):null,e.report?(0,k.jsxs)("section",{children:[(0,k.jsx)("h4",{children:e.kind==="leader"?"\u8D1F\u8D23\u4EBA\u8BF4\u660E":"\u62A5\u544A"}),(0,k.jsx)("pre",{children:e.report})]}):null,(0,k.jsxs)("p",{className:"task-board-team-step-meta",children:["\u62A5\u544A\u6587\u4EF6\uFF1A",(0,k.jsx)("code",{children:e.reportPath})]}),e.sessionId&&i?(0,k.jsx)("div",{className:"task-board-native-editor-actions",children:(0,k.jsxs)(xe.WandButton,{kind:"ghost",size:"small",onClick:()=>i(e.sessionId),children:[(0,k.jsx)(xe.WandIcon,{name:"terminal",size:14,slot:"start"}),"\u6253\u5F00\u4F1A\u8BDD"]})}):null,I?(0,k.jsxs)("div",{className:"task-board-team-manual",children:[(0,k.jsx)("textarea",{className:"resize-none task-board-detail-body",rows:3,value:u,placeholder:"\u6210\u5458\u6CA1\u6709\u5199\u62A5\u544A\u6587\u4EF6\u65F6\uFF0C\u5728\u8FD9\u91CC\u8865\u4E00\u6BB5\u7ED3\u679C\u518D\u624B\u52A8\u5B8C\u6210","aria-label":"\u624B\u52A8\u5B8C\u6210\u7684\u62A5\u544A",onChange:T=>g(T.currentTarget.value)}),(0,k.jsx)(pt,{id:`complete-${e.id}`,state:o,label:"\u624B\u52A8\u5B8C\u6210\u6B64\u6B65",pendingLabel:"\u63D0\u4EA4\u4E2D\u2026",onClick:()=>c(u)})]}):null]})}),h.length?(0,k.jsxs)("div",{className:"task-board-team-step-skips","data-open":v||void 0,children:[(0,k.jsxs)("button",{type:"button",className:"task-board-team-step-skip-head","aria-expanded":v,onClick:()=>x(T=>!T),children:[(0,k.jsx)(xe.WandIcon,{name:"warning",size:13}),(0,k.jsxs)("span",{children:["\u5907\u7528\u5019\u9009 ",h.map(T=>T.candidate).join("\u3001")," \u6CA1\u7528\u4E0A"]}),(0,k.jsx)(xe.WandIcon,{name:"chevronDown",size:14})]}),(0,k.jsx)("div",{className:"task-board-team-step-skip-body",inert:!v,children:(0,k.jsx)("ul",{className:"task-board-team-step-skip-inner",children:h.map(T=>(0,k.jsxs)("li",{children:[(0,k.jsxs)("strong",{children:["\u5019\u9009 ",T.candidate," \xB7 ",(0,Fn.issueAgentProviderLabel)(T.agent.provider)]}),(0,k.jsx)("span",{children:T.reason})]},T.candidate))})})]}):null]})]})}var $n=[{value:"chat",label:"\u7FA4\u804A"},{value:"timeline",label:"\u65F6\u95F4\u7EBF"},{value:"members",label:"\u6309\u6210\u5458"}];function ka({detail:e,onChange:t,onOpenSession:n}){let{run:a,steps:r,memberStates:m}=e,i=Ys(),[c,o]=ee.useState(""),[s,u]=ee.useState(""),[g,v]=ee.useState("chat"),[x,h]=ee.useState(""),[b,I]=ee.useState(""),f=St[a.status],T=Vs.includes(a.status),R=a.stepsUsed>=a.stepLimit,y=a.status==="awaiting_approval"||a.status==="waiting_user",N=$e(e),M=[...N.members].sort((L,H)=>Number(H.isLeader)-Number(L.isLeader));ee.useEffect(()=>{h(""),I("")},[a.id,a.status]);let W=L=>async()=>{I("");try{t(await L()),h("")}catch(H){throw I((0,On.failureMessage)(H,"\u64CD\u4F5C\u5931\u8D25\u3002")),H}},ne=L=>(0,k.jsx)(Gs,{step:L,steps:r,member:N.members.find(H=>H.id===L.memberId),memberState:L.sessionId?m[L.sessionId]:void 0,open:c===L.id,onToggle:()=>o(H=>H===L.id?"":L.id),onOpenSession:n,onComplete:H=>W(()=>ye.aiTeamsRepository.completeStep(a.id,L.id,H))(),actions:i},L.id),me=s?r.filter(L=>L.memberId===s):r,V=s?"timeline":g;return(0,k.jsxs)("div",{className:"task-board-team-run","data-status":a.status,children:[(0,k.jsxs)("div",{className:"task-board-team-run-head",children:[(0,k.jsx)("span",{className:"task-board-team-run-kicker",children:"\u56E2\u961F\u8FD0\u884C"}),(0,k.jsx)(Et.TeamAvatarStack,{members:N.members,size:"sm"}),(0,k.jsx)("strong",{children:N.name}),(0,k.jsx)(xe.WandBadge,{tone:f.tone,children:f.label}),(0,k.jsxs)("small",{children:["\u6B65\u6570 ",a.stepsUsed,"/",a.stepLimit]}),a.chatSessionId?(0,k.jsx)(xe.WandButton,{kind:"secondary",size:"small",onClick:()=>Bn.taskBoardController.open("","","teamchat",a.id),children:"\u6253\u5F00\u7FA4\u804A"}):null,T?(0,k.jsx)(pt,{id:"stop",state:i,kind:"danger",label:"\u505C\u6B62",pendingLabel:"\u505C\u6B62\u4E2D\u2026",onClick:W(()=>ye.aiTeamsRepository.stop(a.id))}):null]}),(0,k.jsx)("div",{className:"task-board-team-roster",role:"group","aria-label":"\u6210\u5458",children:M.map(L=>{let H=r.filter(D=>D.memberId===L.id&&D.status!=="skipped"),$=H.filter(D=>D.status==="done").length;return(0,k.jsxs)("button",{type:"button",className:"task-board-team-roster-item","aria-pressed":s===L.id,title:s===L.id?"\u663E\u793A\u5168\u90E8\u6210\u5458":`\u53EA\u770B${L.name}`,onClick:()=>u(D=>D===L.id?"":L.id),children:[(0,k.jsx)(Et.TeamAvatar,{member:L,state:Xs(L,r,m),showProvider:!0}),(0,k.jsx)("span",{children:L.name}),(0,k.jsx)("small",{children:H.length?`${$}/${H.length}`:"\u5F85\u547D"})]},L.id)})}),y||a.statusDetail?(0,k.jsxs)("div",{className:"task-board-team-banner","data-attention":y||void 0,children:[a.statusDetail?(0,k.jsx)("p",{children:a.statusDetail}):null,y?(0,k.jsxs)("div",{className:"task-board-team-respond",children:[(0,k.jsx)("textarea",{className:"resize-none task-board-detail-body",rows:3,value:x,placeholder:a.status==="awaiting_approval"?"\u9000\u56DE\u65F6\u5199\u4E0B\u4FEE\u6539\u610F\u89C1":"\u56DE\u590D\u8D1F\u8D23\u4EBA\u7684\u95EE\u9898\u6216\u8865\u5145\u8981\u6C42","aria-label":a.status==="awaiting_approval"?"\u9000\u56DE\u610F\u89C1":"\u56DE\u590D\u8D1F\u8D23\u4EBA",onChange:L=>h(L.currentTarget.value)}),(0,k.jsx)("div",{className:"task-board-native-editor-actions",children:a.status==="awaiting_approval"?(0,k.jsxs)(k.Fragment,{children:[(0,k.jsx)(pt,{id:"reject",state:i,label:"\u9000\u56DE\u91CD\u505A",pendingLabel:"\u9000\u56DE\u4E2D\u2026",disabled:!x.trim(),onClick:W(()=>ye.aiTeamsRepository.reject(a.id,x))}),(0,k.jsx)(pt,{id:"approve",state:i,kind:"primary",label:"\u6279\u51C6\u8BA1\u5212",pendingLabel:"\u6279\u51C6\u4E2D\u2026",onClick:W(()=>ye.aiTeamsRepository.approve(a.id))})]}):(0,k.jsxs)(k.Fragment,{children:[R?(0,k.jsx)(pt,{id:"continue",state:i,label:"\u8FFD\u52A0 10 \u6B65\u7EE7\u7EED",pendingLabel:"\u7EE7\u7EED\u4E2D\u2026",onClick:W(()=>ye.aiTeamsRepository.continueRun(a.id,10))}):null,(0,k.jsx)(pt,{id:"reply",state:i,kind:"primary",label:"\u53D1\u9001\u56DE\u590D",pendingLabel:"\u53D1\u9001\u4E2D\u2026",disabled:!x.trim(),onClick:W(()=>ye.aiTeamsRepository.reply(a.id,x))})]})})]}):null]}):null,b?(0,k.jsx)("p",{className:"task-board-team-error",role:"alert",children:b}):null,s?null:(0,k.jsx)(xe.WandStretchTabs,{tabs:$n,value:g,ariaLabel:"\u8FD0\u884C\u89C6\u56FE",className:"task-board-team-views",onValueChange:v}),(0,k.jsx)("div",{className:"task-board-team-views-stack",children:$n.map(L=>(0,k.jsxs)("div",{className:"task-board-team-view","data-view":L.value,"data-hidden":V!==L.value||void 0,inert:V!==L.value,children:[L.value==="chat"?(0,k.jsx)(mt,{detail:e,onChange:t,onOpenSession:n}):null,L.value==="timeline"?(0,k.jsx)("ol",{className:"task-board-team-steps",children:me.map(ne)}):null,L.value==="members"?(0,k.jsx)("div",{className:"task-board-team-groups",children:M.map(H=>{let $=r.filter(D=>D.memberId===H.id);return(0,k.jsxs)("section",{className:"task-board-team-group",children:[(0,k.jsxs)("header",{children:[(0,k.jsx)("strong",{children:H.name}),(0,k.jsx)("small",{children:H.duty})]}),$.length?(0,k.jsx)("ol",{className:"task-board-team-steps",children:$.map(ne)}):(0,k.jsx)("p",{className:"task-board-team-run-detail",children:"\u8FD8\u6CA1\u6709\u5206\u5230\u6B65\u9AA4\u3002"})]},H.id)})}):null]},L.value))})]})}function jn({taskId:e,refreshKey:t=0,onOpenSession:n}){let[a,r]=ee.useState(null),m=a?.run.id??"",i=ee.useCallback(async()=>{try{let c=await ye.aiTeamsRepository.runsForTask(e);r(c[0]?await ye.aiTeamsRepository.detail(c[0].id):null)}catch{}},[e]);return ee.useEffect(()=>{r(null)},[e]),ee.useEffect(()=>{i()},[i,t]),ee.useEffect(()=>(0,ye.subscribeAiTeamRunChanges)(c=>{(c.taskId===e||c.runId===m)&&i()}),[m,i,e]),ee.useEffect(()=>(0,ye.subscribeAiTeamDefinitionChanges)(c=>{c===a?.run.teamId&&i()}),[a?.run.teamId,i]),a?(0,k.jsx)("section",{className:"task-board-team","aria-label":"AI \u56E2\u961F",children:(0,k.jsx)(ka,{detail:a,onChange:r,onOpenSession:n})}):null}var xr=w(ua()),La=w(Ta()),aa=w(Kn()),ie=w(Yn()),kr=w(Ra()),B=w(Ae()),ce=w(lt()),ke=w(Tt());var at=w(Re()),Nt=w(Ae());var Gn=w(Ze());function Yt(e){return e===0?"\u9996\u9009":`\u5907\u7528 ${e+1}`}function Aa(e){if(e.length>=4)return e;let t=e[e.length-1];return[...e,t?{...t}:(0,Gn.createDefaultIssueAgent)()]}function Ea(e,t,n){return e.map((a,r)=>r===t?{...n}:a)}function Sa(e,t){return e.length<=1?e:e.filter((n,a)=>a!==t)}function Na(e,t,n){let a=t+n;if(a<0||a>=e.length)return e;let r=[...e],m=r[t];return r[t]=r[a],r[a]=m,r}function Xt(e){let t=new Set,n=[];return e.forEach((a,r)=>{let m=Ba(a);t.has(m)?n.push(r):t.add(m)}),n}function Ve(e){if(e.length===0)return"\u81F3\u5C11\u4FDD\u7559 1 \u4E2A\u6267\u884C\u5019\u9009\u3002";if(e.length>4)return`\u6267\u884C\u5019\u9009\u6700\u591A ${4} \u4E2A\u3002`;let t=Xt(e);return t.length>0?`\u5019\u9009\u300C${Yt(t[0])}\u300D\u4E0E\u66F4\u9760\u524D\u7684\u914D\u7F6E\u76F8\u540C\uFF0C\u6539\u4E00\u9879\u5373\u53EF\u3002`:""}var Zn=w(Qn());var G=w(Z());function Js({id:e,agent:t,index:n,total:a,catalog:r,providerOptions:m,disabled:i,duplicate:c,ariaPrefix:o,structuredOnly:s=!1,onChange:u,onMove:g,onRemove:v}){let x=at.useRef(null),h=Yt(n);return(0,G.jsx)("div",{ref:x,"data-candidate-id":e,className:"wand-team-candidate","data-candidate-index":n,"data-duplicate":c||void 0,children:(0,G.jsxs)("div",{className:"wand-team-candidate-inner",children:[(0,G.jsx)("span",{className:"wand-team-candidate-tag",children:h}),(0,G.jsx)("div",{className:"wand-ai-team-member-agent",children:(0,G.jsx)(Zn.AgentFields,{agent:t,disabled:i,catalog:r,providerOptions:m,ariaPrefix:`${o} ${h}`,showKind:!s,onChange:b=>u(s?{...b,kind:"structured"}:b)})}),(0,G.jsxs)("div",{className:"wand-team-candidate-tools",children:[(0,G.jsx)("button",{type:"button",className:"wand-team-candidate-tool","data-tool":"up",title:"\u4E0A\u79FB","aria-label":`\u628A${h}\u4E0A\u79FB`,disabled:i||n===0,onClick:()=>g(-1),children:(0,G.jsx)(Nt.WandIcon,{name:"chevronUp",size:14})}),(0,G.jsx)("button",{type:"button",className:"wand-team-candidate-tool","data-tool":"down",title:"\u4E0B\u79FB","aria-label":`\u628A${h}\u4E0B\u79FB`,disabled:i||n===a-1,onClick:()=>g(1),children:(0,G.jsx)(Nt.WandIcon,{name:"chevronDown",size:14})}),(0,G.jsx)("button",{type:"button",className:"wand-team-candidate-tool","data-tool":"remove",title:a<=1?"\u81F3\u5C11\u8981\u4FDD\u7559 1 \u4E2A\u5019\u9009":"\u5220\u9664\u8BE5\u5019\u9009","aria-label":`\u5220\u9664${h}`,disabled:i||a<=1,onClick:v,children:(0,G.jsx)(Nt.WandIcon,{name:"close",size:14})})]})]})})}function ut({agents:e,label:t,catalog:n,providerOptions:a,disabled:r,structuredOnly:m=!1,onChange:i}){let c=at.useRef(null),o=at.useRef(new Map),s=at.useRef([]);for(;s.current.length<e.length;)s.current.push(`c_${Math.random().toString(36).slice(2,9)}`);s.current.length>e.length&&(s.current=s.current.slice(0,e.length)),at.useLayoutEffect(()=>{let b=c.current;if(!b)return;let I=Array.from(b.children).filter(R=>R instanceof HTMLElement&&R.hasAttribute("data-candidate-id")),f=new Map;I.forEach(R=>{let y=R.getAttribute("data-candidate-id");y&&f.set(y,R.getBoundingClientRect().top)});let T=typeof window<"u"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches;I.forEach(R=>{let y=R.getAttribute("data-candidate-id");if(!y)return;let N=o.current.get(y),M=f.get(y);if(N!==void 0&&M!==void 0&&N!==M){if(T){R.style.transform="",R.style.transition="";return}let W=N-M;R.style.transform=`translateY(${W}px)`,R.style.transition="none",requestAnimationFrame(()=>{R.style.transition="transform var(--motion-normal) var(--ease-in-out-smooth)",R.style.transform=""})}}),o.current=f});let u=Xt(e),g=Ve(e),v=()=>{let b=Aa(e);b!==e&&(s.current.push(`c_${Math.random().toString(36).slice(2,9)}`),i(b))},x=b=>{e.length<=1||(s.current.splice(b,1),i(Sa(e,b)))},h=(b,I)=>{let f=b+I;if(f<0||f>=e.length)return;let T=s.current[b];s.current[b]=s.current[f],s.current[f]=T,i(Na(e,b,I))};return(0,G.jsxs)("div",{ref:c,className:"wand-team-candidates",role:"group","aria-label":`${t} \u7684\u6267\u884C\u5019\u9009`,children:[(0,G.jsxs)("header",{className:"wand-team-candidates-head",children:[(0,G.jsx)("span",{children:"\u6267\u884C\u5019\u9009"}),(0,G.jsxs)("small",{children:["\u9996\u9009\u4E0D\u53EF\u7528\u65F6\u6309\u987A\u5E8F\u81EA\u52A8\u964D\u7EA7\uFF0C\u6700\u591A ",4," \u4E2A"]})]}),e.map((b,I)=>{let f=s.current[I]||`row-${I}`;return(0,G.jsx)(Js,{id:f,agent:b,index:I,total:e.length,catalog:n,providerOptions:a,disabled:r,duplicate:u.includes(I),ariaPrefix:t,structuredOnly:m,onChange:T=>i(Ea(e,I,T)),onMove:T=>h(I,T),onRemove:()=>x(I)},f)}),(0,G.jsxs)("div",{className:"wand-team-candidates-foot",children:[(0,G.jsxs)("button",{type:"button",className:"wand-team-candidate-add",disabled:r||e.length>=4,title:e.length>=4?`\u5DF2\u7ECF\u5230 ${4} \u4E2A\u5019\u9009\u4E0A\u9650`:"\u5728\u672B\u5C3E\u52A0\u4E00\u4E2A\u5907\u7528\u5019\u9009",onClick:v,children:[(0,G.jsx)(Nt.WandIcon,{name:"plus",size:14}),(0,G.jsx)("span",{children:"\u6DFB\u52A0\u5019\u9009"})]}),g?(0,G.jsx)("small",{className:"wand-team-candidate-error",role:"alert",children:g}):null]})]})}var rt=w(Re());var Ge=w(Ae());var nt=w(Re());var Oe=w(Re());var Ct=w($t()),tr=w(Ae()),ar=w(Gt()),Ee=w(Z()),Qs={communication:"\u6C9F\u901A",workflow:"\u5DE5\u4F5C\u65B9\u5F0F",focus:"\u8FD1\u671F\u5173\u6CE8"};function nr({active:e}){let[t,n]=Oe.useState(null),[a,r]=Oe.useState(null),[m,i]=Oe.useState({}),[c,o]=Oe.useState(""),s=Oe.useRef(0);Oe.useEffect(()=>{let g=++s.current;if(r(null),!!e)return n(null),(0,Ct.requestJson)("/api/user-memory").then(v=>{s.current===g&&(n(v),o(""))}).catch(v=>{s.current===g&&o(v instanceof Error?v.message:"\u8BFB\u53D6\u8BB0\u5FC6\u5931\u8D25\u3002")}),()=>{s.current++}},[e]);let u=async g=>{if(!t||a)return;let v=++s.current;r(g),i(x=>({...x,[g]:""})),o("");try{let x=await(0,Ct.requestJson)(g==="refresh"?"/api/user-memory/refresh":"/api/user-memory",g==="toggle"?(0,Ct.jsonBody)({enabled:!t.enabled},"PATCH"):{method:g==="clear"?"DELETE":"POST"});if(s.current!==v)return;n(x),i(h=>({...h,[g]:g==="toggle"?x.enabled?"\u5DF2\u5F00\u542F":"\u5DF2\u6682\u505C":g==="clear"?"\u5DF2\u6E05\u7A7A":x.updated?"\u5DF2\u66F4\u65B0":"\u6682\u65E0\u65B0\u8BB0\u5FC6"})),(0,ar.notifySiliconEmployeeDefinitionChanged)(qa)}catch(x){if(s.current!==v)return;i(h=>({...h,[g]:"\u64CD\u4F5C\u5931\u8D25"})),o(x instanceof Error?x.message:"\u8BB0\u5FC6\u64CD\u4F5C\u5931\u8D25\u3002")}finally{s.current===v&&r(null)}};return(0,Ee.jsxs)("section",{className:"wand-employee-memory","aria-label":"\u7528\u6237\u77ED\u671F\u8BB0\u5FC6",children:[(0,Ee.jsx)("strong",{children:"\u7528\u6237\u77ED\u671F\u8BB0\u5FC6"}),(0,Ee.jsx)("p",{children:"\u53EA\u53C2\u8003\u6700\u8FD1 30 \u5929\u7684\u6709\u6548\u63D0\u793A\u8BCD\u4E0E\u6210\u529F\u7684\u5173\u952E\u64CD\u4F5C\uFF0C\u6BCF\u5929\u6574\u7406\u4E00\u6B21\u3002\u5185\u5BB9\u4F1A\u7ECF\u654F\u611F\u4FE1\u606F\u8FC7\u6EE4\uFF0C\u6574\u7406\u4ECD\u7531\u7CFB\u7EDF\u8FD0\u7EF4\u5458\u5DE5\u7684 CLI \u5019\u9009\u6267\u884C\uFF1B\u8BF7\u52FF\u63D0\u4EA4\u51ED\u636E\u3002\u4E0D\u4F1A\u4FEE\u6539\u5DF2\u6709\u4F1A\u8BDD\u3001\u5176\u4ED6\u5458\u5DE5\u6216\u5DE5\u5177\u6743\u9650\u3002"}),(0,Ee.jsx)("div",{className:"wand-employee-memory-actions",children:["toggle","refresh","clear"].map(g=>(0,Ee.jsx)(tr.WandButton,{size:"small",kind:"ghost",disabled:!t||!!a||g==="refresh"&&!t.enabled,"aria-busy":a===g,onClick:()=>{u(g)},children:a===g?"\u5904\u7406\u4E2D\u2026":m[g]||(g==="toggle"?t?.enabled?"\u6682\u505C\u8BB0\u5FC6":"\u6062\u590D\u8BB0\u5FC6":g==="refresh"?"\u6574\u7406\u8BB0\u5FC6":"\u6E05\u7A7A\u8BB0\u5FC6")},g))}),(0,Ee.jsx)("p",{"aria-live":"polite",children:t?`${t.enabled?"\u5DF2\u5F00\u542F":"\u5DF2\u6682\u505C"} \xB7 ${t.eventCount} \u6761\u8FD1\u671F\u8BB0\u5F55${t.profile?` \xB7 \u6700\u8FD1\u6574\u7406 ${new Date(t.profile.generatedAt).toLocaleString()}`:" \xB7 \u5C1A\u672A\u5F62\u6210\u504F\u597D"}`:"\u6B63\u5728\u8BFB\u53D6\u8BB0\u5FC6\u2026"}),t?.profile?.preferences.length?(0,Ee.jsx)("ul",{children:t.profile.preferences.map((g,v)=>(0,Ee.jsxs)("li",{children:[(0,Ee.jsxs)("span",{children:[Qs[g.category],"\uFF1A"]}),g.text]},`${g.category}-${v}`))}):null,c||t?.lastError?(0,Ee.jsx)("p",{role:"alert",className:"wand-team-candidate-error",children:c||t?.lastError}):null]})}var Se=w(Re()),Ca=w($t()),Jt=w(Ae()),ve=w(Z()),Zs=180;function rr({employeeId:e,active:t}){let[n,a]=Se.useState(null),[r,m]=Se.useState(""),[i,c]=Se.useState(null),[o,s]=Se.useState({refresh:"",clear:""}),[u,g]=Se.useState(!1),[v,x]=Se.useState(""),h=Se.useRef(0),b=`/api/silicon-employees/${encodeURIComponent(e)}/knowledge`;Se.useEffect(()=>{let f=++h.current;if(g(!1),c(null),!t)return;a(null);let T=setTimeout(()=>{(0,Ca.requestJson)(`${b}?q=${encodeURIComponent(r)}`).then(R=>{h.current===f&&(a(R),x(""))}).catch(R=>{h.current===f&&x(R instanceof Error?R.message:"\u8BFB\u53D6\u77E5\u8BC6\u5E93\u5931\u8D25\u3002")})},r?Zs:0);return()=>{clearTimeout(T),h.current++}},[t,e,r]);let I=async f=>{if(!n||i)return;if(f==="clear"&&!u){g(!0);return}let T=++h.current;c(f),x(""),s(R=>({...R,[f]:""}));try{let R=await(0,Ca.requestJson)(f==="clear"?b:`${b}?q=${encodeURIComponent(r)}`,{method:f==="clear"?"DELETE":"GET"});if(h.current!==T)return;a(R),g(!1),s(y=>({...y,[f]:f==="clear"?"\u5DF2\u6E05\u7A7A":"\u5DF2\u5237\u65B0"}))}catch(R){if(h.current!==T)return;s(y=>({...y,[f]:"\u64CD\u4F5C\u5931\u8D25"})),x(R instanceof Error?R.message:"\u77E5\u8BC6\u5E93\u64CD\u4F5C\u5931\u8D25\u3002")}finally{h.current===T&&c(null)}};return(0,ve.jsxs)("section",{className:"wand-employee-memory","aria-label":"\u5458\u5DE5\u72EC\u7ACB\u77E5\u8BC6\u5E93",children:[(0,ve.jsx)("strong",{children:"\u81EA\u5DF1\u7684\u77E5\u8BC6\u5E93"}),(0,ve.jsx)("p",{children:"\u5BF9\u8FD9\u4F4D\u5458\u5DE5\u8BF4\u300C\u8BB0\u4E00\u4E0B\uFF1A\u2026\u300D\u5373\u53EF\u4FDD\u5B58\uFF1B\u53EA\u5C5E\u4E8E\u8FD9\u4F4D\u5458\u5DE5\uFF0C\u6539\u540D\u3001\u6362\u4F1A\u8BDD\u4ECD\u4FDD\u7559\uFF0C\u4E0D\u968F\u77ED\u671F\u4E60\u60EF\u8FC7\u671F\u3002\u6BCF\u6761\u6700\u591A4000\u5B57\u7B26\uFF0C\u4E0D\u4FDD\u5B58\u51ED\u636E\u3002"}),(0,ve.jsx)("div",{className:"wand-employee-knowledge-actions",children:["refresh","clear"].map(f=>(0,ve.jsx)(Jt.WandButton,{size:"small",kind:"ghost",disabled:!n||!!i,"aria-busy":i===f,onClick:()=>{I(f)},children:i===f?"\u5904\u7406\u4E2D\u2026":f==="clear"&&u?"\u786E\u8BA4\u6E05\u7A7A":o[f]||(f==="clear"?"\u6E05\u7A7A\u77E5\u8BC6\u5E93":"\u5237\u65B0\u77E5\u8BC6")},f))}),(0,ve.jsx)("p",{role:"status",children:u?"\u518D\u6B21\u70B9\u51FB\u786E\u8BA4\uFF0C\u53EA\u6E05\u7A7A\u6B64\u5458\u5DE5\u3002":"\u660E\u786E\u77E5\u8BC6\u4F1A\u4FDD\u7559\uFF0C\u76F4\u5230\u4F60\u5220\u9664\u3002"}),(0,ve.jsx)(Jt.WandSearchField,{value:r,onValueChange:m,label:"\u641C\u7D22\u8FD9\u4F4D\u5458\u5DE5\u7684\u77E5\u8BC6",placeholder:"\u641C\u7D22\u81EA\u5DF1\u7684\u77E5\u8BC6\u2026"}),(0,ve.jsx)("p",{"aria-live":"polite",children:n?`${n.total} / ${n.maxEntries} \u6761\u77E5\u8BC6`:"\u6B63\u5728\u8BFB\u53D6\u2026"}),(0,ve.jsxs)("ul",{className:"wand-employee-knowledge-list",children:[n?.entries.map(f=>(0,ve.jsx)("li",{children:f.content},f.id)),n?.entries.length===0?(0,ve.jsx)("li",{children:r?"\u6CA1\u6709\u5339\u914D\u7684\u77E5\u8BC6\u3002":"\u8FD8\u6CA1\u6709\u660E\u786E\u8BB0\u5F55\u7684\u77E5\u8BC6\u3002"}):null]}),v?(0,ve.jsx)("p",{role:"alert",className:"wand-team-candidate-error",children:v}):null]})}var Fe=w(Ae());var or=w(Re()),Ye=w(lt()),dr=w(ir()),Qt=w(Ae());var be=w(Z());function Ia({employee:e,size:t="md",className:n=""}){let a=e.avatar?.startsWith("data:image/")?e.avatar:"",r=`wand-team-avatar ${n}`.trim();return(0,be.jsx)("span",{className:r,"data-size":t,title:e.name,children:(0,be.jsx)("span",{className:"wand-team-avatar-face",children:a?(0,be.jsx)("img",{src:a,alt:""}):(0,be.jsx)(Ye.PixelCat,{coat:(0,Ye.memberCoatIndex)(e)})})})}function Zt({avatar:e,name:t,disabled:n,onChange:a}){let r=or.useRef(null),m=(0,Ye.memberCoatIndex)({id:"custom",name:t,avatar:e}),i=c=>{let o=c.target.files?.[0];o&&(0,Ye.shrinkAvatarImage)(o,ja).then(s=>{a(s)}).catch(s=>{console.error("\u7F29\u5C0F\u5934\u50CF\u5931\u8D25",s)})};return(0,be.jsxs)("div",{className:"wand-team-avatar-picker",role:"group","aria-label":"\u5458\u5DE5\u5934\u50CF",children:[(0,be.jsx)(Ia,{employee:{id:"preview",name:t,avatar:e},size:"lg"}),dr.CAT_COATS.map((c,o)=>(0,be.jsx)("button",{type:"button",className:"wand-team-coat",title:c.name,"aria-label":c.name,"aria-pressed":!e.startsWith("data:")&&m===o,disabled:n,onClick:()=>a(`cat:${o}`),children:(0,be.jsx)(Ye.PixelCat,{coat:o})},c.name)),(0,be.jsx)("button",{type:"button",className:"wand-team-coat is-upload",title:"\u4E0A\u4F20\u5934\u50CF\u56FE\u7247","aria-label":"\u4E0A\u4F20\u5934\u50CF\u56FE\u7247","aria-pressed":e.startsWith("data:"),disabled:n,onClick:()=>r.current?.click(),children:(0,be.jsx)(Qt.WandIcon,{name:"image",size:14})}),(0,be.jsx)("input",{ref:r,type:"file",accept:"image/*",hidden:!0,onChange:i}),e?(0,be.jsx)(Qt.WandButton,{kind:"ghost",size:"small",disabled:n,onClick:()=>a(""),children:"\u91CD\u7F6E"}):null]})}var lr=w(Ze());var O=w(Z());function cr({employee:e,catalog:t,providerOptions:n,onSave:a,onArchive:r,onUnarchive:m,onDelete:i}){let[c,o]=nt.useState(!1),[s,u]=nt.useState(e),[g,v]=nt.useState(!1),[x,h]=nt.useState(null);nt.useEffect(()=>{u(e)},[e]);let b=()=>{c?(u(e),h(null),o(!1)):o(!0)},I=async()=>{let M=s.agents.some(W=>W.kind!=="structured")?"\u7845\u57FA\u5458\u5DE5\u53EA\u80FD\u4F7F\u7528\u7ED3\u6784\u5316\u5019\u9009\u3002":Ve(s.agents);if(M){h(M);return}if(!s.name.trim()){h("\u5458\u5DE5\u540D\u5B57\u4E0D\u80FD\u4E3A\u7A7A\u3002");return}try{v(!0),h(null),await a(s),o(!1)}catch(W){h(W instanceof Error?W.message:String(W))}finally{v(!1)}},f=!!e.archivedAt,T=Pt(e),R=pa(e),y=R?Ka:Ua;return(0,O.jsxs)("article",{className:`wand-team-member wand-employee-card${f?" is-archived":""}${T?" is-system":""}`,"data-open":c||void 0,"data-employee-id":e.id,onKeyDown:M=>{M.key==="Escape"&&!M.defaultPrevented&&c&&!g&&(M.preventDefault(),b())},children:[(0,O.jsxs)("button",{type:"button",className:"wand-team-member-head","aria-expanded":c,onClick:b,children:[(0,O.jsx)(Ia,{employee:e,size:"lg"}),(0,O.jsxs)("span",{className:"wand-team-member-copy",children:[(0,O.jsxs)("strong",{children:[e.name,T?(0,O.jsx)("em",{className:"wand-employee-system-tag",children:y}):null,f?(0,O.jsx)("em",{className:"wand-employee-archived-tag",children:"\u5DF2\u5F52\u6863"}):null]}),(0,O.jsx)("small",{children:e.duty||"\u8FD8\u6CA1\u5199\u804C\u8D23"}),(0,O.jsxs)("span",{className:"wand-team-member-agent",children:[e.agents[0]?(0,lr.issueAgentProviderModelLine)(e.agents[0],t):"\u672A\u914D\u7F6E\u5019\u9009",e.agents.length>1?` (+${e.agents.length-1} \u4E2A\u5907\u7528)`:null]})]}),(0,O.jsx)(Fe.WandIcon,{name:"chevronDown",size:14})]}),(0,O.jsx)("div",{className:"wand-team-member-body",inert:!c,children:(0,O.jsxs)("div",{className:"wand-team-member-inner",children:[T?(0,O.jsxs)("div",{className:"wand-employee-system-note",role:"note",children:[(0,O.jsx)("strong",{children:y}),(0,O.jsx)("span",{children:R?"\u9009\u62E9 CLI \u6216\u672A\u9009\u62E9\u5458\u5DE5\u65F6\u4F7F\u7528\u8FD9\u4E2A\u9ED8\u8BA4\u89D2\u8272\uFF1B\u4F60\u9009\u7684\u5DE5\u5177\u3001\u6A21\u578B\u4E0E\u6743\u9650\u4FDD\u6301\u4E0D\u53D8\u3002\u540D\u5B57\u4E0E\u57FA\u7840\u8BBE\u5B9A\u56FA\u5B9A\uFF0C\u5DE5\u4F5C\u98CE\u683C\u7531\u77ED\u671F\u8BB0\u5FC6\u5B9A\u671F\u8C03\u6574\uFF1B\u4E0B\u9762\u7684\u5019\u9009\u7528\u4E8E\u76F4\u63A5\u627E\u8FD9\u4F4D\u5458\u5DE5\u6216\u672A\u914D\u7F6E\u5DE5\u5177\u7684\u4EFB\u52A1\u3002":"Wand \u5185\u7F6E\u5458\u5DE5\uFF1A\u540D\u5B57\u3001\u804C\u8D23\u4E0E\u89D2\u8272\u8BBE\u5B9A\u7531\u670D\u52A1\u7AEF\u56FA\u5B9A\uFF0C\u4E0D\u53EF\u4FEE\u6539\u3001\u4E0D\u53EF\u5220\u9664\uFF1BWand \u81EA\u5DF1\u7684 AI \u8C03\u7528\uFF08Commit\u3001\u6807\u9898\u3001\u63D0\u793A\u8BCD\u4F18\u5316\uFF09\u90FD\u6309\u4E0B\u9762\u7684\u5019\u9009\u94FE\u6267\u884C\u3002"})]}):(0,O.jsxs)(O.Fragment,{children:[(0,O.jsxs)("div",{className:"wand-settings-field",children:[(0,O.jsx)("label",{className:"wand-settings-label",htmlFor:`employee-${e.id}-name`,children:"\u540D\u5B57"}),(0,O.jsx)("input",{id:`employee-${e.id}-name`,type:"text",className:"wand-settings-input",value:s.name,placeholder:"\u5458\u5DE5\u540D\u5B57",disabled:g,onChange:M=>u({...s,name:M.target.value})})]}),(0,O.jsx)(Zt,{avatar:s.avatar,name:s.name,disabled:g,onChange:M=>u({...s,avatar:M})}),(0,O.jsxs)("div",{className:"wand-settings-field",children:[(0,O.jsx)("label",{className:"wand-settings-label",htmlFor:`employee-${e.id}-duty`,children:"\u804C\u8D23"}),(0,O.jsx)("textarea",{id:`employee-${e.id}-duty`,className:"wand-settings-input resize-none",rows:2,value:s.duty,placeholder:"\u4E00\u53E5\u8BDD\u804C\u8D23\uFF1A\u5728\u4FA7\u680F\u3001\u9009\u62E9\u5668\u548C\u7F72\u540D\u4E2D\u663E\u793A",disabled:g,onChange:M=>u({...s,duty:M.target.value})})]}),(0,O.jsxs)("div",{className:"wand-settings-field",children:[(0,O.jsx)("label",{className:"wand-settings-label",htmlFor:`employee-${e.id}-prompt`,children:"\u89D2\u8272\u8BBE\u5B9A (Prompt)"}),(0,O.jsx)("textarea",{id:`employee-${e.id}-prompt`,className:"wand-settings-input resize-none",rows:4,value:s.prompt,placeholder:"\u8BBE\u5B9A\u89D2\u8272\u7684\u4E13\u4E1A\u80FD\u529B\u3001\u884C\u4E3A\u5B88\u5219\u4E0E\u4EA4\u4ED8\u4E60\u60EF\uFF08\u521B\u5EFA\u4F1A\u8BDD\u65F6\u4F5C\u4E3A\u7CFB\u7EDF\u63D0\u793A\u751F\u6548\uFF09",disabled:g,onChange:M=>u({...s,prompt:M.target.value})})]})]}),R?(0,O.jsxs)(O.Fragment,{children:[(0,O.jsx)(nr,{active:c}),(0,O.jsxs)("div",{className:"wand-settings-field",children:[(0,O.jsx)("label",{className:"wand-settings-label",htmlFor:`employee-${e.id}-prompt`,children:"\u5F53\u524D\u89D2\u8272\u8BBE\u5B9A"}),(0,O.jsx)("textarea",{id:`employee-${e.id}-prompt`,className:"wand-settings-input resize-none",rows:6,value:e.prompt,readOnly:!0})]})]}):null,(0,O.jsx)(rr,{employeeId:e.id,active:c}),(0,O.jsx)(ut,{agents:s.agents,label:s.name||"\u5458\u5DE5",catalog:t,providerOptions:n,disabled:g,structuredOnly:!0,onChange:M=>u({...s,agents:M})}),x?(0,O.jsx)("div",{className:"wand-team-candidate-error",role:"alert",children:x}):null,(0,O.jsxs)("div",{className:"wand-team-member-actions",children:[(0,O.jsx)(Fe.WandButton,{kind:"primary",size:"small",disabled:g,onClick:I,children:"\u4FDD\u5B58\u4FEE\u6539"}),(0,O.jsx)(Fe.WandButton,{kind:"ghost",size:"small",disabled:g,onClick:b,children:"\u53D6\u6D88"}),T?null:f?(0,O.jsx)(Fe.WandButton,{kind:"ghost",size:"small",disabled:g,onClick:m,children:"\u6062\u590D"}):(0,O.jsx)(Fe.WandButton,{kind:"ghost",size:"small",disabled:g,onClick:r,children:"\u5F52\u6863"}),T?null:(0,O.jsxs)(Fe.WandButton,{kind:"ghost",size:"small",disabled:g,onClick:i,children:[(0,O.jsx)(Fe.WandIcon,{name:"trash",size:14,slot:"start"}),"\u5220\u9664"]})]})]})})]})}var Ne=w(Re()),Be=w(Ae());var mr=w(Ze()),za=w(Gt()),q=w(Z());function pr({catalog:e,providerOptions:t,onSave:n,onCancel:a}){let[r,m]=Ne.useState(""),[i,c]=Ne.useState(!1),[o,s]=Ne.useState(""),[u,g]=Ne.useState(""),[v,x]=Ne.useState(""),[h,b]=Ne.useState(""),[I,f]=Ne.useState(()=>[{...(0,mr.createDefaultIssueAgent)(),kind:"structured"}]),[T,R]=Ne.useState(!1),[y,N]=Ne.useState(!1),[M,W]=Ne.useState(null),ne=$=>$ instanceof Error?$.message:String($),me=()=>{if(!o.trim())return W("\u5458\u5DE5\u540D\u5B57\u4E0D\u80FD\u4E3A\u7A7A\uFF1B\u4E5F\u53EF\u4EE5\u7559\u7A7A\u8BA9 AI \u6309\u671F\u671B\u751F\u6210\u3002"),null;let $=I.some(D=>D.kind!=="structured")?"\u7845\u57FA\u5458\u5DE5\u53EA\u80FD\u4F7F\u7528\u7ED3\u6784\u5316\u5019\u9009\u3002":Ve(I);return $?(W($),null):{name:o,duty:u,prompt:v,avatar:h,agents:I}},V=async()=>{if(i&&o.trim()){let $=me();if(!$)return;try{R(!0),W(null),await n($)}catch(D){W(ne(D))}finally{R(!1)}return}if(!r.trim()){W("\u5148\u8BF4\u8BF4\u4F60\u5BF9\u8FD9\u4F4D\u5458\u5DE5\u7684\u671F\u671B\u5427\u3002");return}try{R(!0),W(null);let $=await za.siliconEmployeesRepository.draft(r);await n({name:$.name,duty:$.duty,prompt:$.prompt,avatar:"",agents:[$.agent]})}catch($){W(ne($))}finally{R(!1)}},L=async()=>{if(!r.trim()){W("\u5148\u5728\u4E0A\u9762\u5199\u4E0B\u4F60\u7684\u671F\u671B\uFF0C\u518D\u8BA9 AI \u8D77\u8349\u3002");return}try{N(!0),W(null);let $=await za.siliconEmployeesRepository.draft(r);s($.name),g($.duty),x($.prompt),b(""),f([$.agent])}catch($){W(ne($))}finally{N(!1)}},H=i&&o.trim().length>0;return(0,q.jsx)("div",{className:"wand-team-member wand-employee-card is-new","data-open":"true",children:(0,q.jsx)("div",{className:"wand-team-member-body",children:(0,q.jsxs)("div",{className:"wand-team-member-inner",children:[(0,q.jsxs)("div",{className:"wand-settings-field",children:[(0,q.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-expectation",children:"\u60F3\u8981\u4EC0\u4E48\u6837\u7684\u5458\u5DE5"}),(0,q.jsx)("textarea",{id:"new-employee-expectation",className:"wand-settings-input resize-none",rows:3,value:r,placeholder:"\u8BF4\u8BF4\u4F60\u7684\u671F\u671B\uFF1A\u8BA9\u5B83\u8D1F\u8D23\u4EC0\u4E48\u3001\u9700\u8981\u4EC0\u4E48\u4E13\u957F\u3001\u5E0C\u671B\u5B83\u600E\u4E48\u4EA4\u4ED8\u2026\u2026",disabled:T,autoFocus:!0,onChange:$=>m($.target.value)}),(0,q.jsx)("p",{className:"wand-employee-hint",children:H?"\u5C06\u6309\u4E0B\u9762\u586B\u597D\u7684\u914D\u7F6E\u521B\u5EFA\u3002":"AI \u4F1A\u6309\u4F60\u7684\u671F\u671B\u914D\u597D\u540D\u5B57\u3001\u804C\u8D23\u3001\u89D2\u8272\u8BBE\u5B9A\u548C\u6267\u884C\u5DE5\u5177\u3002"})]}),(0,q.jsx)("div",{className:"wand-employee-advanced-toggle","data-open":i||void 0,children:(0,q.jsxs)(Be.WandButton,{kind:"ghost",size:"small","aria-expanded":i,disabled:T,onClick:()=>c($=>!$),children:[(0,q.jsx)(Be.WandIcon,{name:"sliders",size:14,slot:"start"}),"\u9AD8\u7EA7\u914D\u7F6E",(0,q.jsx)(Be.WandIcon,{name:"chevronDown",size:14,slot:"end"})]})}),(0,q.jsx)("section",{className:"wand-employee-advanced","data-open":i||void 0,"aria-hidden":!i,inert:!i,children:(0,q.jsxs)("div",{className:"wand-employee-advanced-inner",children:[(0,q.jsxs)("div",{className:"wand-settings-field",children:[(0,q.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-name",children:"\u540D\u5B57"}),(0,q.jsx)("input",{id:"new-employee-name",type:"text",className:"wand-settings-input",value:o,placeholder:"\u5458\u5DE5\u540D\u5B57",disabled:T||y,onChange:$=>s($.target.value)})]}),(0,q.jsx)(Zt,{avatar:h,name:o,disabled:T||y,onChange:b}),(0,q.jsxs)("div",{className:"wand-settings-field",children:[(0,q.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-duty",children:"\u804C\u8D23"}),(0,q.jsx)("textarea",{id:"new-employee-duty",className:"wand-settings-input resize-none",rows:2,value:u,placeholder:"\u4E00\u53E5\u8BDD\u804C\u8D23\uFF1A\u5728\u4FA7\u680F\u3001\u9009\u62E9\u5668\u548C\u7F72\u540D\u4E2D\u663E\u793A",disabled:T||y,onChange:$=>g($.target.value)})]}),(0,q.jsxs)("div",{className:"wand-settings-field",children:[(0,q.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-prompt",children:"\u89D2\u8272\u8BBE\u5B9A (Prompt)"}),(0,q.jsx)("textarea",{id:"new-employee-prompt",className:"wand-settings-input resize-none",rows:4,value:v,placeholder:"\u8BBE\u5B9A\u89D2\u8272\u7684\u4E13\u4E1A\u80FD\u529B\u3001\u884C\u4E3A\u5B88\u5219\u4E0E\u4EA4\u4ED8\u4E60\u60EF\uFF08\u521B\u5EFA\u4F1A\u8BDD\u65F6\u4F5C\u4E3A\u7CFB\u7EDF\u63D0\u793A\u751F\u6548\uFF09",disabled:T||y,onChange:$=>x($.target.value)})]}),(0,q.jsx)(ut,{agents:I,label:o||"\u65B0\u5458\u5DE5",catalog:e,providerOptions:t,disabled:T||y,structuredOnly:!0,onChange:f}),(0,q.jsx)("div",{className:"wand-employee-advanced-tools",children:(0,q.jsxs)(Be.WandButton,{kind:"ghost",size:"small",disabled:T||y,onClick:()=>{L()},children:[(0,q.jsx)(Be.WandIcon,{name:"spark",size:14,slot:"start"}),y?"\u751F\u6210\u4E2D\u2026":"\u6309\u671F\u671B\u751F\u6210"]})})]})}),M?(0,q.jsx)("div",{className:"wand-team-candidate-error",role:"alert",children:M}):null,(0,q.jsxs)("div",{className:"wand-team-member-actions",children:[(0,q.jsx)(Be.WandButton,{kind:"primary",size:"small",className:"wand-employee-create-submit","aria-busy":T||void 0,disabled:T,onClick:()=>{V()},children:T?"\u6B63\u5728\u521B\u5EFA\u2026":"\u521B\u5EFA\u5458\u5DE5"}),(0,q.jsx)(Be.WandButton,{kind:"ghost",size:"small",disabled:T,onClick:a,children:"\u53D6\u6D88"})]})]})})})}var Xe=w(Gt()),ur=w(Ta()),te=w(Z());function gr({catalog:e,providerOptions:t}){let{employees:n,loading:a,error:r,reload:m}=(0,Xe.useSiliconEmployees)({includeArchived:!0}),[i,c]=rt.useState(""),[o,s]=rt.useState(!1),[u,g]=rt.useState(!1),[v,x]=rt.useState(""),h=rt.useMemo(()=>n.filter(y=>{if(!o&&y.archivedAt)return!1;if(!i.trim())return!0;let N=i.toLowerCase();return y.name.toLowerCase().includes(N)||y.duty.toLowerCase().includes(N)||y.prompt.toLowerCase().includes(N)}),[n,o,i]),b=async y=>{await Xe.siliconEmployeesRepository.create(y),g(!1),m()},I=async(y,N)=>{let M=n.find(W=>W.id===y);M&&(await Xe.siliconEmployeesRepository.update(y,Pt(M)?{agents:N.agents??M.agents}:{name:N.name??M.name,duty:N.duty??M.duty,prompt:N.prompt??M.prompt,avatar:N.avatar??M.avatar,agents:N.agents??M.agents}),m())},f=async y=>{try{x(""),await Xe.siliconEmployeesRepository.archive(y),m()}catch(N){x(N instanceof Error?N.message:"\u5F52\u6863\u5458\u5DE5\u5931\u8D25\u3002")}},T=async y=>{try{x(""),await Xe.siliconEmployeesRepository.unarchive(y),m()}catch(N){x(N instanceof Error?N.message:"\u6062\u590D\u5458\u5DE5\u5931\u8D25\u3002")}},R=async y=>{let N=n.find(W=>W.id===y);if(!N)return;let M=await ur.wandOverlay.dialog({title:`\u5220\u9664\u5458\u5DE5\u300C${N.name}\u300D\uFF1F`,description:"\u5458\u5DE5\u914D\u7F6E\u548C\u5176\u72EC\u7ACB\u77E5\u8BC6\u5E93\u5C06\u88AB\u5220\u9664\uFF1B\u5DF2\u6709\u4F1A\u8BDD\u4E0E\u5386\u53F2\u6D88\u606F\u4F1A\u4FDD\u7559\u3002",actions:[{label:"\u53D6\u6D88",value:!1,autoFocus:!0},{label:"\u5220\u9664\u5458\u5DE5",value:!0,kind:"danger"}]});if(!(M.dismissed===!0||!M.action))try{x(""),await Xe.siliconEmployeesRepository.remove(y),m()}catch(W){x(W instanceof Error?W.message:"\u5220\u9664\u5458\u5DE5\u5931\u8D25\u3002")}};return(0,te.jsxs)("div",{className:"wand-teams-list wand-employee-list",children:[(0,te.jsxs)("header",{className:"wand-teams-toolbar",children:[(0,te.jsx)("div",{className:"wand-teams-toolbar-search",children:(0,te.jsx)(Ge.WandSearchField,{value:i,label:"\u641C\u7D22\u5458\u5DE5\u540D\u5B57\u3001\u804C\u8D23\u6216 Prompt",placeholder:"\u641C\u7D22\u5458\u5DE5\u540D\u5B57\u3001\u804C\u8D23\u6216 Prompt\u2026",onValueChange:c})}),(0,te.jsxs)("div",{className:"wand-teams-toolbar-actions",children:[(0,te.jsxs)("label",{className:"wand-employee-filter-toggle",children:[(0,te.jsx)("input",{type:"checkbox",checked:o,onChange:y=>s(y.target.checked)}),(0,te.jsx)("span",{children:"\u663E\u793A\u5F52\u6863"})]}),(0,te.jsxs)(Ge.WandButton,{kind:"primary",disabled:u,onClick:()=>g(!0),children:[(0,te.jsx)(Ge.WandIcon,{name:"plus",size:14,slot:"start"}),"\u65B0\u5EFA\u5458\u5DE5"]})]})]}),r?(0,te.jsx)("div",{className:"wand-team-candidate-error",role:"alert",children:r}):null,v?(0,te.jsx)("div",{className:"wand-team-candidate-error",role:"alert",children:v}):null,(0,te.jsxs)("div",{className:"wand-team-members",children:[u?(0,te.jsx)(pr,{catalog:e,providerOptions:t,onSave:b,onCancel:()=>g(!1)}):null,a&&n.length===0?(0,te.jsx)("p",{className:"wand-teams-empty",role:"status",children:"\u6B63\u5728\u52A0\u8F7D\u5458\u5DE5\u5217\u8868\u2026"}):null,!a&&h.length===0&&!u?(0,te.jsxs)("div",{className:"wand-teams-empty",children:[(0,te.jsx)("p",{children:i?"\u6CA1\u6709\u5339\u914D\u7684\u5458\u5DE5":"\u8FD8\u6CA1\u6709\u7845\u57FA\u5458\u5DE5\u3002\u521B\u5EFA\u4E00\u4E2A\u89D2\u8272\uFF0C\u5E76\u4E3A\u5B83\u914D\u7F6E\u4E13\u5C5E\u7684\u6267\u884C\u5DE5\u5177\u94FE\u5427\uFF01"}),i?null:(0,te.jsxs)(Ge.WandButton,{kind:"primary",onClick:()=>g(!0),children:[(0,te.jsx)(Ge.WandIcon,{name:"plus",size:14,slot:"start"}),"\u521B\u5EFA\u4F60\u7684\u7B2C\u4E00\u4E2A\u7845\u57FA\u5458\u5DE5"]})]}):null,h.map(y=>(0,te.jsx)(cr,{employee:y,catalog:e,providerOptions:t,onSave:N=>I(y.id,N),onArchive:()=>f(y.id),onUnarchive:()=>T(y.id),onDelete:()=>R(y.id)},y.id))]})]})}var l=w(Z()),vr="__new__",ti=["awaiting_approval","waiting_user"],ai=[{id:"dev",name:"\u5F00\u53D1\u4E09\u4EBA\u7EC4",summary:"\u8D1F\u8D23\u4EBA\u62C6\u89E3\u4E0E\u9A8C\u6536\uFF0C\u4E00\u4EBA\u5B9E\u73B0\uFF0C\u4E00\u4EBA\u5BA1\u67E5",instructions:"\u5BA1\u67E5\u8005\u53EA\u8BFB\u4EE3\u7801\uFF0C\u95EE\u9898\u5199\u8FDB\u62A5\u544A\uFF0C\u7531\u8D1F\u8D23\u4EBA\u51B3\u5B9A\u662F\u5426\u8FD4\u5DE5\u3002",members:[{name:"\u8D1F\u8D23\u4EBA",isLeader:!0,duty:"\u62C6\u89E3\u4EFB\u52A1\u3001\u5206\u6D3E\u6B65\u9AA4\uFF0C\u5BA1\u9605\u62A5\u544A\u5E76\u51B3\u5B9A\u4E0B\u4E00\u6B65\u6216\u5B8C\u6210\u3002"},{name:"\u5B9E\u73B0\u8005",duty:"\u6309\u6B65\u9AA4\u6539\u4EE3\u7801\u5E76\u81EA\u6D4B\uFF0C\u62A5\u544A\u5199\u6E05\u6539\u52A8\u4E0E\u9A8C\u8BC1\u65B9\u5F0F\u3002"},{name:"\u5BA1\u67E5\u8005",duty:"\u5BA1\u67E5\u6539\u52A8\u4E0E\u6D4B\u8BD5\uFF0C\u6307\u51FA\u95EE\u9898\u548C\u98CE\u9669\uFF0C\u4E0D\u76F4\u63A5\u4FEE\u6539\u3002"}]},{id:"bugfix",name:"\u4FEE Bug \u4E8C\u4EBA\u7EC4",summary:"\u8D1F\u8D23\u4EBA\u5B9A\u4F4D\u4E0E\u9A8C\u8BC1\uFF0C\u4E00\u4EBA\u4FEE\u590D",instructions:"\u5148\u590D\u73B0\u518D\u4FEE\uFF0C\u4FEE\u590D\u9644\u4E0A\u9A8C\u8BC1\u6B65\u9AA4\u3002",members:[{name:"\u8D1F\u8D23\u4EBA",isLeader:!0,duty:"\u590D\u73B0\u5E76\u5B9A\u4F4D\u6839\u56E0\uFF0C\u5199\u6E05\u4FEE\u6539\u8303\u56F4\uFF0C\u4FEE\u5B8C\u540E\u9A8C\u8BC1\u3002"},{name:"\u4FEE\u590D\u8005",duty:"\u6309\u5B9A\u4F4D\u4FEE\u6539\u4EE3\u7801\uFF0C\u8865\u56DE\u5F52\u6D4B\u8BD5\uFF0C\u62A5\u544A\u9644\u9A8C\u8BC1\u8F93\u51FA\u3002"}]},{id:"research",name:"\u8C03\u7814\u52A0\u8BC4\u5BA1",summary:"\u4E24\u4EBA\u5E76\u884C\u8C03\u7814\u4E0D\u540C\u65B9\u5411\uFF0C\u8D1F\u8D23\u4EBA\u6C47\u603B",instructions:"\u8C03\u7814\u5458\u53EF\u540C\u65F6\u5F00\u59CB\uFF0C\u53EA\u8BFB\u4E0D\u6539\u6587\u4EF6\u3002",members:[{name:"\u8D1F\u8D23\u4EBA",isLeader:!0,duty:"\u62C6\u51FA\u4E92\u4E0D\u91CD\u53E0\u7684\u8C03\u7814\u65B9\u5411\uFF0C\u6C47\u603B\u7ED3\u8BBA\u7ED9\u51FA\u5EFA\u8BAE\u3002"},{name:"\u8C03\u7814\u5458\u7532",duty:"\u6309\u5206\u6D3E\u7684\u65B9\u5411\u8C03\u7814\uFF0C\u7ED3\u8BBA\u9644\u51FA\u5904\u3002"},{name:"\u8C03\u7814\u5458\u4E59",duty:"\u6309\u5206\u6D3E\u7684\u65B9\u5411\u8C03\u7814\uFF0C\u7ED3\u8BBA\u9644\u51FA\u5904\u3002"}]},{id:"blank",name:"\u7A7A\u767D\u56E2\u961F",summary:"\u4E00\u4F4D\u8D1F\u8D23\u4EBA\u52A0\u4E00\u4F4D\u6210\u5458\uFF0C\u81EA\u5DF1\u5199\u804C\u8D23",instructions:"",members:[{name:"\u8D1F\u8D23\u4EBA",isLeader:!0,duty:""},{name:"\u6210\u5458",duty:""}]}];function br(e,t){return{name:e.id==="blank"?"":e.name,description:e.summary,instructions:e.instructions,requirePlanApproval:!0,maxSteps:30,members:e.members.map((n,a)=>({id:"",name:n.name,duty:n.duty,isLeader:!!n.isLeader,agents:[{...t}],agent:{...t},avatar:`cat:${a%ce.CAT_COATS.length}`}))}}function Tr(e){return{name:e.name,description:e.description,instructions:e.instructions,requirePlanApproval:e.requirePlanApproval,maxSteps:e.maxSteps,members:e.members.map(t=>({...t,agent:{...t.agent}}))}}function ni(e){return[...e].sort((t,n)=>Number(n.isLeader)-Number(t.isLeader))}function ri(e){let t=[];e.length<2&&t.push(`\u81F3\u5C11\u8981\u6709 ${2} \u4F4D\u6210\u5458\u3002`),e.length>8&&t.push(`\u6700\u591A ${8} \u4F4D\u6210\u5458\u3002`);let n=e.filter(a=>a.isLeader).length;return n!==1&&t.push(`\u8D1F\u8D23\u4EBA\u8981\u6070\u597D 1 \u4F4D\uFF0C\u5F53\u524D ${n} \u4F4D\u3002`),e.forEach((a,r)=>{let m=Ve(ma(a));m&&t.push(`${a.name||`\u6210\u5458 ${r+1}`}\uFF1A${m}`)}),t}function si({member:e,disabled:t,onChange:n}){let a=z.useRef(null),[r,m]=z.useState(""),i=e.avatar??"",c=(0,ce.memberCoatIndex)(e);return(0,l.jsxs)("div",{className:"wand-team-avatar-picker",role:"group","aria-label":"\u5934\u50CF",children:[ce.CAT_COATS.map((o,s)=>(0,l.jsx)("button",{type:"button",className:"wand-team-coat",title:o.name,"aria-label":o.name,"aria-pressed":!i.startsWith("data:")&&c===s,disabled:t,onClick:()=>n(`cat:${s}`),children:(0,l.jsx)(ce.PixelCat,{coat:s})},o.name)),(0,l.jsx)("button",{type:"button",className:"wand-team-coat is-upload",title:"\u4E0A\u4F20\u56FE\u7247","aria-label":"\u4E0A\u4F20\u5934\u50CF\u56FE\u7247","aria-pressed":i.startsWith("data:"),disabled:t,onClick:()=>a.current?.click(),children:i.startsWith("data:")?(0,l.jsx)("img",{src:i,alt:""}):(0,l.jsx)(B.WandIcon,{name:"image",size:14})}),(0,l.jsx)("input",{ref:a,type:"file",accept:"image/png,image/jpeg,image/webp",hidden:!0,onChange:o=>{let s=o.currentTarget.files?.[0];o.currentTarget.value="",s&&(m(""),(0,ce.shrinkAvatarImage)(s,Ha).then(n).catch(u=>m((0,gt.failureMessage)(u,"\u56FE\u7247\u5904\u7406\u5931\u8D25\u3002"))))}}),r?(0,l.jsx)("small",{className:"wand-team-avatar-error",role:"alert",children:r}):null]})}function ii({member:e,index:t,open:n,catalog:a,providerOptions:r,disabled:m,canRemove:i,onToggle:c,onChange:o,onRemove:s}){let u=e.name||`\u6210\u5458 ${t+1}`,g=ma(e),v=x=>{o({agents:x,agent:{...x[0]}})};return(0,l.jsxs)("article",{className:"wand-team-member","data-leader":e.isLeader||void 0,"data-open":n||void 0,children:[(0,l.jsxs)("button",{type:"button",className:"wand-team-member-head","aria-expanded":n,onClick:c,children:[(0,l.jsx)(ce.TeamAvatar,{member:e,size:"lg",showProvider:!0}),(0,l.jsxs)("span",{className:"wand-team-member-copy",children:[(0,l.jsxs)("strong",{children:[u,e.isLeader?(0,l.jsx)("em",{children:"\u8D1F\u8D23\u4EBA"}):null]}),(0,l.jsx)("small",{children:e.duty||"\u8FD8\u6CA1\u5199\u804C\u8D23"}),(0,l.jsx)("span",{className:"wand-team-member-agent",children:(0,Ie.issueAgentProviderModelLine)(e.agent,a)})]}),(0,l.jsx)(B.WandIcon,{name:"chevronDown",size:14})]}),(0,l.jsx)("div",{className:"wand-team-member-body",inert:!n,children:(0,l.jsxs)("div",{className:"wand-team-member-inner",children:[(0,l.jsx)(ie.SettingsField,{label:"\u540D\u5B57",htmlFor:`team-member-${t}-name`,children:(0,l.jsx)(ie.SettingsTextInput,{id:`team-member-${t}-name`,value:e.name,placeholder:"\u6210\u5458\u540D\u5B57",disabled:m,onChange:x=>o({name:x})})}),(0,l.jsx)(si,{member:e,disabled:m,onChange:x=>o({avatar:x})}),(0,l.jsx)("textarea",{className:"wand-settings-input wand-ai-team-duty resize-none",rows:3,value:e.duty,placeholder:"\u804C\u8D23\uFF1A\u8FD9\u4F4D\u6210\u5458\u8D1F\u8D23\u4EC0\u4E48\u3001\u4EA4\u4ED8\u4EC0\u4E48","aria-label":`${u}\u7684\u804C\u8D23`,disabled:m,onChange:x=>o({duty:x.currentTarget.value})}),(0,l.jsx)(ut,{agents:g,label:u,catalog:a,providerOptions:r,disabled:m,onChange:v}),(0,l.jsxs)("div",{className:"wand-team-member-actions",children:[e.isLeader?null:(0,l.jsx)(B.WandButton,{kind:"ghost",size:"small",disabled:m,onClick:()=>o({isLeader:!0}),children:"\u8BBE\u4E3A\u8D1F\u8D23\u4EBA"}),(0,l.jsxs)(B.WandButton,{kind:"ghost",size:"small",disabled:m||!i,onClick:s,children:[(0,l.jsx)(B.WandIcon,{name:"trash",size:14,slot:"start"}),"\u79FB\u9664"]})]})]})})]})}function wr({team:e,initial:t,catalog:n,providerOptions:a,defaultAgent:r,onSaved:m,onDeleted:i,onDirtyChange:c}){let[o,s]=z.useState(t),[u,g]=z.useState(-1),[v,x]=z.useState(!1),[h,b]=z.useState(!1),[I,f]=z.useState(""),[T,R]=z.useState("info"),y=v||h,N=`ai-team-${e?.id??"new"}`,M=o.members.findIndex(D=>D.isLeader),W=JSON.stringify(t),ne=z.useMemo(()=>JSON.stringify(o)!==W,[o,W]);z.useEffect(()=>{c?.(ne)},[ne,c]);let me=(D,j)=>{s(Y=>({...Y,members:Y.members.map((Te,He)=>He===D?{...Te,...j}:j.isLeader?{...Te,isLeader:!1}:Te)}))},V=D=>{g(-1),s(j=>{let Y=j.members.filter((Te,He)=>He!==D);return!Y.some(Te=>Te.isLeader)&&Y[0]&&(Y[0]={...Y[0],isLeader:!0}),{...j,members:Y}})};async function L(){let D=ri(o.members);if(D.length>0){f(D[0]),R("error");return}x(!0),f("");try{let j=e?await ke.aiTeamsRepository.update(e.id,o):await ke.aiTeamsRepository.create(o);s(Tr(j)),f(e?"\u5DF2\u4FDD\u5B58\u3002":"\u56E2\u961F\u5DF2\u521B\u5EFA\u3002"),R("success"),m(j,!e)}catch(j){f((0,gt.failureMessage)(j,"\u4FDD\u5B58\u56E2\u961F\u5931\u8D25\u3002")),R("error")}finally{x(!1)}}async function H(){if(!e)return;let D=await La.wandOverlay.dialog({title:`\u5220\u9664\u56E2\u961F\u300C${e.name}\u300D\uFF1F`,description:"\u5DF2\u7ECF\u5F00\u59CB\u7684\u8FD0\u884C\u4E0D\u53D7\u5F71\u54CD\uFF0C\u4F1A\u6309\u542F\u52A8\u65F6\u7684\u56E2\u961F\u5FEB\u7167\u7EE7\u7EED\u3002",actions:[{label:"\u53D6\u6D88",value:!1,autoFocus:!0},{label:"\u5220\u9664\u56E2\u961F",value:!0,kind:"danger"}]});if(!(D.dismissed===!0||!D.action)){b(!0);try{await ke.aiTeamsRepository.remove(e.id),i(e.id)}catch(j){return f((0,gt.failureMessage)(j,"\u5220\u9664\u56E2\u961F\u5931\u8D25\u3002")),R("error"),!1}finally{b(!1)}}}let $=D=>(0,l.jsx)(ii,{member:o.members[D],index:D,open:u===D,catalog:n,providerOptions:a,disabled:y,canRemove:o.members.length>2,onToggle:()=>g(j=>j===D?-1:D),onChange:j=>me(D,j),onRemove:()=>V(D)},D);return(0,l.jsxs)("div",{className:"wand-team-editor",children:[(0,l.jsxs)("section",{className:"wand-team-section","aria-label":"\u6210\u5458",children:[(0,l.jsxs)("header",{className:"wand-team-section-head",children:[(0,l.jsx)("h3",{children:"\u6210\u5458"}),(0,l.jsxs)("small",{children:[o.members.length,"/",8," \xB7 \u70B9\u6210\u5458\u5361\u5C55\u5F00\u7F16\u8F91"]})]}),(0,l.jsxs)("div",{className:"wand-team-org",children:[M>=0?(0,l.jsx)("div",{className:"wand-team-org-leader",children:$(M)}):null,(0,l.jsxs)("div",{className:"wand-team-org-members",children:[o.members.map((D,j)=>D.isLeader?null:$(j)),(0,l.jsxs)("button",{type:"button",className:"wand-team-member-add",disabled:y||o.members.length>=8,onClick:()=>{s(D=>({...D,members:[...D.members,{id:"",name:"",duty:"",agents:[{...r}],agent:{...r},isLeader:!1,avatar:`cat:${D.members.length%ce.CAT_COATS.length}`}]})),g(o.members.length)},children:[(0,l.jsx)(B.WandIcon,{name:"plus",size:16}),(0,l.jsx)("span",{children:"\u6DFB\u52A0\u6210\u5458"})]})]})]})]}),(0,l.jsxs)("section",{className:"wand-team-section","aria-label":"\u534F\u4F5C\u8BBE\u7F6E",children:[(0,l.jsx)("header",{className:"wand-team-section-head",children:(0,l.jsx)("h3",{children:"\u534F\u4F5C\u8BBE\u7F6E"})}),(0,l.jsxs)("div",{className:"wand-ai-team-editor-grid",children:[(0,l.jsx)(ie.SettingsField,{label:"\u56E2\u961F\u540D",htmlFor:`${N}-name`,children:(0,l.jsx)(ie.SettingsTextInput,{id:`${N}-name`,value:o.name,placeholder:"\u4F8B\u5982\uFF1A\u5168\u6808\u5C0F\u7EC4",disabled:y,onChange:D=>s(j=>({...j,name:D}))})}),(0,l.jsx)(ie.SettingsField,{label:"\u6B65\u6570\u4E0A\u9650",htmlFor:`${N}-steps`,hint:`\u8D1F\u8D23\u4EBA\u8F6E\u6B21\u4E0E\u6210\u5458\u6B65\u9AA4\u5408\u8BA1\uFF0C${5}\u2013${200}`,children:(0,l.jsx)(ie.SettingsTextInput,{id:`${N}-steps`,type:"number",min:5,max:200,value:o.maxSteps,disabled:y,onChange:D=>s(j=>({...j,maxSteps:Number(D)}))})})]}),(0,l.jsx)(ie.SettingsField,{label:"\u7B80\u4ECB",htmlFor:`${N}-description`,children:(0,l.jsx)(ie.SettingsTextInput,{id:`${N}-description`,value:o.description,placeholder:"\u53EF\u9009\uFF1A\u8FD9\u4E2A\u56E2\u961F\u64C5\u957F\u4EC0\u4E48",disabled:y,onChange:D=>s(j=>({...j,description:D}))})}),(0,l.jsx)(ie.SettingsField,{label:"\u534F\u4F5C\u6307\u4EE4",htmlFor:`${N}-instructions`,hint:"\u5199\u8FDB\u8D1F\u8D23\u4EBA\u548C\u6BCF\u4F4D\u6210\u5458\u7684\u63D0\u793A\u8BCD\uFF1A\u5206\u5DE5\u7EA6\u5B9A\u3001\u5DE5\u4F5C\u8981\u6C42\u3001\u6CE8\u610F\u4E8B\u9879\u3002",children:(0,l.jsx)("textarea",{id:`${N}-instructions`,className:"wand-settings-input wand-ai-team-duty resize-none",rows:4,value:o.instructions,placeholder:"\u4F8B\u5982\uFF1A\u5148\u8BFB AGENTS.md\uFF1B\u6539\u52A8\u5FC5\u987B\u9644\u6D4B\u8BD5\uFF1B\u4E0D\u8981\u52A8 migrations \u76EE\u5F55\u3002",disabled:y,onChange:D=>{let j=D.currentTarget.value;s(Y=>({...Y,instructions:j}))}})}),(0,l.jsx)(ie.SettingsToggle,{label:"\u8BA1\u5212\u9700\u8981\u6211\u6279\u51C6",description:"\u8D1F\u8D23\u4EBA\u7ED9\u51FA\u7B2C\u4E00\u4EFD\u8BA1\u5212\u540E\u5148\u505C\u4E0B\uFF0C\u7B49\u4F60\u6279\u51C6\u6216\u9000\u56DE\u518D\u5F00\u59CB\u6267\u884C\u3002",checked:o.requirePlanApproval,disabled:y,onCheckedChange:D=>s(j=>({...j,requirePlanApproval:D}))})]}),(0,l.jsxs)("div",{className:"wand-ai-team-editor-footer",children:[e?(0,l.jsx)(ie.SettingsActionButton,{kind:"danger",size:"small",pending:h,pendingLabel:"\u5220\u9664\u4E2D\u2026",errorLabel:"\u5220\u9664\u5931\u8D25",disabled:v,onClick:H,children:"\u5220\u9664\u56E2\u961F"}):null,(0,l.jsx)(ie.SettingsSaveBar,{label:e?"\u4FDD\u5B58\u56E2\u961F":"\u521B\u5EFA\u56E2\u961F",pending:v,disabled:h,onSave:()=>{L()},status:I,tone:T})]})]})}function Rr(e){return e.filter(t=>t.kind!=="global")}function oi(e){return Rr(e)[0]?.id??""}function di({teamId:e,teamName:t,projects:n,projectsLoaded:a,openRequest:r=0,onStarted:m}){let i=Rr(n),[c,o]=z.useState(r>0),[s,u]=z.useState(!1),[g,v]=z.useState(""),[x,h]=z.useState(""),[b,I]=z.useState("idle"),[f,T]=z.useState(""),R=z.useRef(null),y=z.useRef(null),N="wand-team-start-project-menu-"+z.useId(),M=x||oi(n),W=b==="sending"||b==="sent";z.useEffect(()=>{r>0?(o(!0),u(!1)):(o(!1),u(!1))},[r]);function ne(){b!=="sending"&&(o(!1),u(!1),b==="failed"&&T(""))}z.useLayoutEffect(()=>{if(!c||s)return;let V=0,L=requestAnimationFrame(()=>{V=requestAnimationFrame(()=>{u(!0),y.current?.focus()})});return()=>{cancelAnimationFrame(L),cancelAnimationFrame(V)}},[c,s]),z.useEffect(()=>{if(!c)return;let V=L=>{R.current?.contains(L.target)||L.target instanceof Element&&L.target.closest(".wand-ui-select-content")?.classList.contains(N)||ne()};return window.addEventListener("pointerdown",V,!0),()=>window.removeEventListener("pointerdown",V,!0)},[c,b,N]);async function me(){if(W)return;let V=g.trim();if(!(!V||!M)){I("sending"),T("");try{let L=await ke.aiTeamsRepository.startDirect(e,{note:V,workspaceId:M});I("sent"),T(`${t}\u5DF2\u5F00\u5DE5\uFF0C\u6B63\u5728\u6253\u5F00\u7FA4\u804A\u2026`),await ke.aiTeamsRepository.settle("success"),m(L),o(!1),u(!1),I("idle"),T(""),v("")}catch(L){I("failed"),T((0,gt.failureMessage)(L,"\u5F00\u5DE5\u5931\u8D25\uFF0C\u8BF7\u6362\u4E2A\u9879\u76EE\u6216\u7A0D\u540E\u518D\u8BD5\u3002")),await ke.aiTeamsRepository.settle("error"),I("idle")}}}return(0,l.jsxs)("div",{ref:R,onKeyDown:V=>{V.key==="Escape"&&(V.stopPropagation(),ne())},children:[(0,l.jsx)("div",{className:"wand-team-member-actions",children:(0,l.jsxs)(B.WandButton,{className:"task-board-create-button",kind:"ghost",size:"small","aria-pressed":c,disabled:W,onClick:()=>c?ne():o(!0),children:[(0,l.jsx)(B.WandIcon,{name:"plus",slot:"start",className:"wand-teams-create-icon"}),(0,l.jsx)("span",{children:"\u76F4\u63A5\u5F00\u5DE5"})]})}),(0,l.jsx)("div",{className:"wand-team-candidate-slot","data-collapsed":!s||void 0,children:(0,l.jsx)("div",{className:"wand-team-member-inner",inert:!c,children:(0,l.jsxs)("div",{className:"wand-team-candidates",children:[i.length===0?a?(0,l.jsx)("p",{className:"wand-new-session-error",role:"alert",children:"\u8FD8\u6CA1\u6709\u53EF\u5F00\u5DE5\u7684\u9879\u76EE\uFF0C\u5148\u5728\u5DE5\u4F5C\u533A\u521B\u5EFA\u4E00\u4E2A\u9879\u76EE\u3002"}):(0,l.jsx)("p",{className:"wand-team-empty-line",children:"\u6B63\u5728\u52A0\u8F7D\u9879\u76EE\u2026"}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(ie.SettingsField,{label:"\u9879\u76EE",children:(0,l.jsx)(B.WandSelect,{ariaLabel:"\u5F00\u5DE5\u9879\u76EE",className:"wand-settings-input",contentClassName:N,value:M,disabled:W,searchable:!0,searchPlaceholder:"\u641C\u7D22\u9879\u76EE",options:i.map(V=>({value:V.id,label:`${V.name} \xB7 ${V.cwd}`})),onValueChange:h})}),(0,l.jsx)(ie.SettingsField,{label:"\u5F00\u5DE5\u8BF4\u660E",htmlFor:`team-start-note-${e}`,hint:"\u4F1A\u5EFA\u4E00\u5F20\u4EFB\u52A1\u5361\uFF0C\u5E76\u628A\u8FD9\u6BB5\u8BF4\u660E\u4EA4\u7ED9\u8D1F\u8D23\u4EBA\u3002",children:(0,l.jsx)("textarea",{id:`team-start-note-${e}`,ref:y,className:"wand-settings-input wand-ai-team-duty resize-none",rows:2,value:g,placeholder:"\u4F8B\u5982\uFF1A\u628A\u8BBE\u7F6E\u9875\u7684\u6A21\u578B\u4E0B\u62C9\u6362\u6210\u53EF\u641C\u7D22\u7684\u9009\u62E9\u5668\uFF0C\u5E76\u8865\u5355\u6D4B\u3002",disabled:W,onChange:V=>v(V.currentTarget.value)})})]}),f?(0,l.jsx)("p",{className:b==="failed"?"wand-new-session-error":"wand-new-session-field-hint",role:b==="failed"?"alert":"status",children:f}):null,c&&i.length>0?(0,l.jsx)("div",{className:"wand-team-member-actions",children:(0,l.jsx)(B.WandButton,{kind:"primary",size:"small",disabled:W||!g.trim()||!M,onClick:()=>{me()},children:b==="sending"?"\u6B63\u5728\u5F00\u5DE5\u2026":b==="sent"?"\u5DF2\u5F00\u5DE5":"\u5F00\u5DE5"})}):null]})})})]})}function li({runs:e,focusRunId:t,onOpenSession:n}){let[a,r]=z.useState(""),[m,i]=z.useState(null),c=z.useCallback(async o=>{try{i(await ke.aiTeamsRepository.detail(o))}catch{i(null)}},[]);return z.useEffect(()=>{t&&r(t)},[t]),z.useEffect(()=>{a&&c(a)},[c,a]),z.useEffect(()=>(0,ke.subscribeAiTeamRunChanges)(o=>{o.runId===a&&c(a)}),[c,a]),e===null?(0,l.jsx)("p",{className:"wand-team-empty-line",children:"\u6B63\u5728\u52A0\u8F7D\u8FD0\u884C\u8BB0\u5F55\u2026"}):e.length===0?(0,l.jsx)("p",{className:"wand-team-empty-line",children:"\u8FD8\u6CA1\u6709\u8FD0\u884C\u8FC7\u3002\u7528\u56E2\u961F\u5361\u4E0B\u9762\u7684\u300C\u76F4\u63A5\u5F00\u5DE5\u300D\uFF0C\u6216\u5728\u4EFB\u52A1\u770B\u677F\u6D3E\u53D1\u4EFB\u52A1\u65F6\u4ECE\u300CCLI \u5DE5\u5177\u300D\u91CC\u9009\u8FD9\u4E2A\u56E2\u961F\u3002"}):(0,l.jsx)("ol",{className:"wand-team-runs",children:e.map(o=>{let s=a===o.id,u=St[o.status];return(0,l.jsxs)("li",{className:"wand-team-run","data-open":s||void 0,children:[(0,l.jsxs)("button",{type:"button",className:"wand-team-run-head","aria-expanded":s,onClick:()=>{i(null),r(g=>g===o.id?"":o.id)},children:[(0,l.jsx)("span",{className:"wand-team-run-id",children:o.taskIdentifier}),(0,l.jsx)("strong",{children:o.taskTitle||o.objective.split(`
19
- `)[0]}),(0,l.jsx)(B.WandBadge,{tone:u.tone,children:u.label}),(0,l.jsx)("small",{children:new Date(o.updatedAt).toLocaleString([],{month:"numeric",day:"numeric",hour:"2-digit",minute:"2-digit"})}),(0,l.jsx)(B.WandIcon,{name:"chevronDown",size:14})]}),(0,l.jsx)("div",{className:"wand-team-run-body",inert:!s,children:(0,l.jsx)("div",{className:"wand-team-run-inner",children:s&&m?.run.id===o.id?(0,l.jsx)(ka,{detail:m,onChange:i,onOpenSession:n}):s?(0,l.jsx)("p",{className:"wand-team-empty-line",children:"\u6B63\u5728\u52A0\u8F7D\u2026"}):null})})]},o.id)})})}var yr=[{value:"members",label:"\u6210\u5458\u4E0E\u8BBE\u7F6E"},{value:"runs",label:"\u8FD0\u884C\u8BB0\u5F55"}],ci=[{value:"all",label:"\u5168\u90E8"},{value:"running",label:"\u8FD0\u884C\u4E2D"},{value:"attention",label:"\u5F85\u4F60\u5904\u7406"}],mi=[{value:"employees",label:"\u5458\u5DE5"},{value:"teams",label:"\u56E2\u961F"}];function Ar({sidebarOpen:e=!1,onBack:t,onOpenSidebar:n,onOpenSession:a}){let r=z.useSyncExternalStore(st.taskBoardStore.subscribe,st.taskBoardStore.getSnapshot,st.taskBoardStore.getSnapshot),m=(0,aa.useProviderUsage)(!0),i=m===null?null:(0,aa.sortProviderOptions)(Ie.ISSUE_AGENT_PROVIDERS,m,E=>E.value).map(E=>({value:E.value,label:E.label})),[c,o]=z.useState(null),[s,u]=z.useState("employees"),[g,v]=z.useState([]),[x,h]=z.useState(""),[b,I]=z.useState(null),[f,T]=z.useState(()=>(0,Ie.createDefaultIssueAgent)()),[R,y]=z.useState(""),[N,M]=z.useState(null),[W,ne]=z.useState(""),[me,V]=z.useState("all"),[L,H]=z.useState("members"),[$,D]=z.useState([]),[j,Y]=z.useState(!1),[Te,He]=z.useState("");z.useEffect(()=>{r.page!=="teams"||!r.teamId||(u("teams"),y(window.matchMedia("(max-width: 760px)").matches?"":r.teamId))},[r.page,r.teamId,r.revision]);let Je=z.useCallback(async()=>{try{let E=await ke.aiTeamsRepository.list();o(E),h(""),y(U=>U||(window.matchMedia("(max-width: 760px)").matches?"":E[0]?.id??""))}catch(E){h((0,gt.failureMessage)(E,"\u56E2\u961F\u5217\u8868\u52A0\u8F7D\u5931\u8D25\u3002"))}},[]),K=z.useCallback(async()=>{try{v(await ke.aiTeamsRepository.runs({limit:200}))}catch{}},[]);z.useEffect(()=>(Je(),K(),ea.taskBoardRepository.models().then(E=>I((0,Ie.normalizeIssueModelCatalog)(E))).catch(()=>I(null)),ea.taskBoardRepository.agentDefaults().then(T).catch(()=>{}),ea.taskBoardRepository.workspaces().then(E=>{D(E),Y(!0)}).catch(()=>Y(!0)),(0,xr.subscribeWandModelCatalog)(I)),[K,Je]),z.useEffect(()=>(0,ke.subscribeAiTeamRunChanges)(()=>{K()}),[K]),z.useEffect(()=>{let E=U=>{if(!(U.key!=="Escape"||U.defaultPrevented||U.target?.closest("input, textarea, [contenteditable='true'], [role='dialog']"))){if(R){Me();return}t?t():st.taskBoardController.close()}};return window.addEventListener("keydown",E),()=>window.removeEventListener("keydown",E)},[t,R]);let pe=E=>g.filter(U=>U.teamId===E),ft=E=>{let U=pe(E);return U.some(de=>ti.includes(de.status))?"attention":U.some(de=>de.status==="running")?"running":"idle"},ht=W.trim().toLowerCase(),je=(c??[]).filter(E=>me!=="all"&&ft(E.id)!==me?!1:ht?[E.name,E.description,...E.members.map(U=>U.name)].some(U=>U.toLowerCase().includes(ht)):!0),se=c?.find(E=>E.id===R)??null,J=R===vr,ze=J||!!se,vt=async()=>{await Qe()&&(Q.current=!1,M(null),y(vr))},Q=z.useRef(!1),bt=z.useCallback(E=>{Q.current=E},[]),Qe=async()=>{if(!Q.current)return!0;let E=await La.wandOverlay.dialog({title:"\u653E\u5F03\u672A\u4FDD\u5B58\u7684\u56E2\u961F\u6539\u52A8\uFF1F",description:"\u540D\u79F0\u3001\u6210\u5458\u548C\u5404\u81EA\u7684 CLI / \u6A21\u578B / \u6267\u884C\u6A21\u5F0F\u6539\u52A8\u8FD8\u6CA1\u4FDD\u5B58\uFF0C\u79BB\u5F00\u540E\u56DE\u5230\u4E0A\u6B21\u4FDD\u5B58\u7684\u5185\u5BB9\u3002",actions:[{label:"\u7EE7\u7EED\u7F16\u8F91",value:!1,autoFocus:!0},{label:"\u653E\u5F03\u6539\u52A8",value:!0,kind:"danger"}]});return E.dismissed===!1&&E.action===!0},Me=async()=>{await Qe()&&(Q.current=!1,y(""))},wt=async E=>{E!==R&&await Qe()&&(Q.current=!1,y(E))},It=async()=>{await Qe()&&(Q.current=!1,M(null))},zt=(E,U)=>{K();let de=U.run.chatSessionId;if(de&&a){a(de);return}He(U.run.id),y(E),H("runs")};return(0,l.jsxs)("section",{className:"task-board-native-page wand-teams-page","aria-label":"\u7845\u57FA\u5458\u5DE5\u4E0E AI \u56E2\u961F","data-detail":ze||void 0,children:[(0,l.jsxs)("header",{className:"task-board-workspace-header",children:[(0,l.jsxs)("div",{className:"task-board-kicker",children:[n?(0,l.jsx)(B.WandIconButton,{className:"task-board-icon-button","aria-label":e?"\u5173\u95ED\u4EFB\u52A1\u5217\u8868":"\u6253\u5F00\u4EFB\u52A1",onClick:n,children:(0,l.jsx)(kr.SidebarToggleIcon,{open:e,size:16})}):null,se?null:(0,l.jsx)(B.WandIconButton,{className:"task-board-icon-button","aria-label":"\u8FD4\u56DE\u5DE5\u4F5C\u533A",title:"\u8FD4\u56DE\u5DE5\u4F5C\u533A",onClick:()=>t?t():st.taskBoardController.close(),children:(0,l.jsx)(B.WandIcon,{name:"chevronLeft"})}),(0,l.jsx)("div",{className:"task-board-heading-copy",children:s==="teams"&&se?(0,l.jsx)(B.WandBreadcrumb,{variant:"title",ariaLabel:"AI \u56E2\u961F\u5BFC\u822A",items:[{label:"AI \u56E2\u961F",onNavigate:()=>{Me()}},{label:se.name}]}):(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("h1",{children:s==="employees"?"\u7845\u57FA\u5458\u5DE5":"AI \u56E2\u961F"}),(0,l.jsx)("p",{children:s==="employees"?"\u5B9A\u4E49\u4E13\u5C5E\u89D2\u8272\u4E0E\u5DE5\u5177\u94FE\u964D\u7EA7\u987A\u5E8F\uFF0C\u4EE5\u5BF9\u8BDD\u65B9\u5F0F\u534F\u4F5C\u5B8C\u6210\u5DE5\u4F5C\u3002":"\u8D1F\u8D23\u4EBA\u62C6\u89E3\u5206\u6D3E\uFF0C\u6210\u5458\u5404\u7528\u81EA\u5DF1\u7684 CLI \u534F\u4F5C\u5B8C\u6210\u3002"})]})})]}),(0,l.jsxs)("div",{className:"task-board-header-actions",style:{display:"flex",alignItems:"center",gap:"12px"},children:[(0,l.jsx)(B.WandStretchTabs,{tabs:mi,value:s,ariaLabel:"\u5207\u6362\u5458\u5DE5\u6216\u56E2\u961F",onValueChange:E=>u(E)}),s==="teams"?(0,l.jsxs)(B.WandButton,{className:"task-board-create-button",kind:"primary",size:"small","aria-pressed":J,onClick:()=>J?void Me():void vt(),children:[(0,l.jsx)(B.WandIcon,{name:"plus",slot:"start",className:"wand-teams-create-icon"}),(0,l.jsx)("span",{children:"\u65B0\u5EFA\u56E2\u961F"})]}):null]})]}),s==="employees"?(0,l.jsx)("div",{className:"wand-teams-layout wand-employees-layout",children:(0,l.jsx)(gr,{catalog:b,providerOptions:i})}):(0,l.jsxs)("div",{className:"wand-teams-layout",children:[(0,l.jsxs)("aside",{className:"wand-teams-list","aria-label":"\u56E2\u961F\u5217\u8868",children:[(0,l.jsx)(B.WandSearchField,{value:W,onValueChange:ne,label:"\u641C\u7D22\u56E2\u961F\u6216\u6210\u5458"}),(0,l.jsx)(B.WandStretchTabs,{tabs:ci,value:me,ariaLabel:"\u6309\u72B6\u6001\u7B5B\u9009",onValueChange:E=>V(E)}),x?(0,l.jsxs)("div",{className:"task-board-native-banner is-error",role:"alert",children:[(0,l.jsx)("span",{children:x}),(0,l.jsx)(B.WandButton,{kind:"ghost",size:"small",onClick:()=>{Je()},children:"\u91CD\u65B0\u52A0\u8F7D"})]}):null,(0,l.jsxs)("div",{className:"wand-teams-cards",children:[je.map(E=>{let U=ft(E.id),de=[...new Set(E.members.map(fe=>fe.agent.provider))];return(0,l.jsxs)("div",{children:[(0,l.jsxs)("button",{type:"button",className:"wand-teams-card","aria-pressed":R===E.id,"data-state":U,onClick:()=>{wt(E.id)},children:[(0,l.jsx)(ce.TeamAvatarStack,{members:E.members,max:4}),(0,l.jsxs)("span",{className:"wand-teams-card-copy",children:[(0,l.jsx)("strong",{children:E.name}),(0,l.jsx)("small",{children:E.description||ni(E.members).map(fe=>fe.name).join(" \xB7 ")})]}),(0,l.jsx)("span",{className:"wand-teams-card-meta",children:U==="attention"?(0,l.jsx)(B.WandBadge,{tone:"warning",children:"\u5F85\u4F60\u5904\u7406"}):U==="running"?(0,l.jsx)(B.WandBadge,{tone:"info",children:"\u8FD0\u884C\u4E2D"}):(0,l.jsxs)("small",{children:[E.members.length," \u4EBA \xB7 ",de.map(Ie.issueAgentProviderLabel).join(" / ")]})})]}),(0,l.jsx)(di,{teamId:E.id,teamName:E.name,projects:$,projectsLoaded:j,openRequest:r.teamId===E.id?r.revision:0,onStarted:fe=>zt(E.id,fe)})]},E.id)}),c!==null&&je.length===0?(0,l.jsxs)("div",{className:"wand-teams-empty",children:[(0,l.jsx)("p",{children:c.length===0?"\u8FD8\u6CA1\u6709\u56E2\u961F\u3002":"\u6CA1\u6709\u5339\u914D\u7684\u56E2\u961F\u3002"}),c.length===0?(0,l.jsx)(B.WandButton,{kind:"soft",size:"small",onClick:()=>{vt()},children:"\u4ECE\u6A21\u677F\u521B\u5EFA"}):null]}):null]})]}),(0,l.jsx)("div",{className:"wand-teams-detail",children:J&&!N?(0,l.jsxs)("div",{className:"wand-teams-templates",children:[(0,l.jsxs)("header",{className:"wand-team-section-head",children:[(0,l.jsx)("h3",{children:"\u4ECE\u6A21\u677F\u5F00\u59CB"}),(0,l.jsx)("small",{children:"\u521B\u5EFA\u524D\u8FD8\u80FD\u4FEE\u6539"})]}),(0,l.jsx)("div",{className:"wand-teams-template-grid",children:ai.map(E=>{let U=br(E,f);return(0,l.jsxs)("button",{type:"button",className:"wand-teams-template",onClick:()=>M(E),children:[(0,l.jsx)(ce.TeamAvatarStack,{members:U.members,size:"md"}),(0,l.jsx)("strong",{children:E.name}),(0,l.jsx)("small",{children:E.summary})]},E.id)})})]}):J&&N?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)("div",{className:"wand-teams-detail-head",children:[(0,l.jsx)(B.WandIconButton,{className:"task-board-icon-button","aria-label":"\u6362\u4E00\u4E2A\u6A21\u677F",onClick:()=>{It()},children:(0,l.jsx)(B.WandIcon,{name:"chevronLeft"})}),(0,l.jsxs)("div",{children:[(0,l.jsx)("h2",{children:"\u65B0\u5EFA\u56E2\u961F"}),(0,l.jsxs)("p",{children:["\u6A21\u677F\uFF1A",N.name]})]})]}),(0,l.jsx)(wr,{team:null,initial:br(N,f),catalog:b,providerOptions:i,defaultAgent:f,onDirtyChange:bt,onSaved:E=>{o(U=>[E,...U??[]]),y(E.id),H("members")},onDeleted:()=>{}})]}):se?(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)("div",{className:"wand-teams-detail-head",children:[(0,l.jsx)(ce.TeamAvatarStack,{members:se.members,size:"md",max:6}),(0,l.jsx)("div",{children:(0,l.jsx)("p",{children:se.description||`${se.members.length} \u4F4D\u6210\u5458`})})]}),(0,l.jsx)(B.WandStretchTabs,{tabs:yr,value:L,ariaLabel:"\u56E2\u961F\u8BE6\u60C5",onValueChange:H}),(0,l.jsx)("div",{className:"wand-teams-detail-stack",children:yr.map(E=>(0,l.jsx)("div",{className:"wand-teams-detail-pane","data-hidden":L!==E.value||void 0,inert:L!==E.value,children:E.value==="runs"?(0,l.jsx)(li,{runs:c===null?null:pe(se.id),focusRunId:Te,onOpenSession:a}):(0,l.jsx)(wr,{team:se,initial:Tr(se),catalog:b,providerOptions:i,defaultAgent:f,onDirtyChange:bt,onSaved:U=>o(de=>(de??[]).map(fe=>fe.id===U.id?U:fe)),onDeleted:U=>{Q.current=!1,y(""),o(de=>(de??[]).filter(fe=>fe.id!==U))}},se.id)},E.value))})]}):(0,l.jsxs)("div",{className:"wand-teams-empty is-detail",children:[(0,l.jsx)(B.WandIcon,{name:"parallel",size:28}),(0,l.jsx)("p",{children:"\u9009\u4E00\u4E2A\u56E2\u961F\uFF0C\u6216\u65B0\u5EFA\u4E00\u4E2A\u3002"})]})},J?`new-${N?.id??""}`:R)]})]})}var oe=w(Re()),Cr=w(kt());var na=w(Wt()),Ir=w(Ra()),zr=w(Sr()),ge=w(Ae()),ra=w(lt()),it=w(Tt());var _=w(Z()),Nr={queued:"\u6392\u961F",running:"\u8FDB\u884C\u4E2D",done:"\u5B8C\u6210",failed:"\u5931\u8D25",skipped:"\u8DF3\u8FC7"};async function pi(e){let t=e.run.chatSessionId;if(!t)return null;try{let a=(await it.aiTeamsRepository.runsForChat(e.run.taskId,t))[0];return a&&a.id!==e.run.id?a.id:null}catch{return null}}function ui(e){return e==="running"?"working":e==="done"?"done":e==="failed"?"failed":"idle"}function gi({detail:e,onOpenSession:t}){let[n,a]=oe.useState(()=>new Set),r=e.steps.filter(c=>c.kind==="work"),m=r.filter(c=>c.status==="done").length,i=c=>{a(o=>{let s=new Set(o);return s.has(c)?s.delete(c):s.add(c),s})};return(0,_.jsx)("section",{className:"wand-team-work-tasks","aria-label":"\u5DE5\u4F5C\u4EFB\u52A1",children:(0,_.jsxs)("div",{className:"wand-team-work-tasks-inner",children:[(0,_.jsxs)("header",{className:"wand-team-work-tasks-head",children:[(0,_.jsx)("h2",{children:"\u5DE5\u4F5C\u4EFB\u52A1"}),(0,_.jsx)("small",{children:r.length?`${m}/${r.length} \u5B8C\u6210`:"\u7B49\u5F85\u6D3E\u5DE5"})]}),r.length?(0,_.jsx)("ol",{className:"wand-team-work-list",children:r.map(c=>{let o=$e(e).members.find(u=>u.id===c.memberId),s=n.has(c.id);return(0,_.jsxs)("li",{className:"wand-team-work-item","data-status":c.status,"data-open":s||void 0,children:[(0,_.jsxs)("button",{type:"button",className:"wand-team-work-head","aria-expanded":s,onClick:()=>i(c.id),children:[(0,_.jsxs)("span",{className:"wand-team-work-seq",children:["#",c.seq]}),(0,_.jsx)("span",{className:"wand-team-work-title",children:c.title||"\u6210\u5458\u6B65\u9AA4"}),(0,_.jsx)("span",{className:"wand-team-work-status",children:Nr[c.status]}),(0,_.jsx)(ge.WandIcon,{name:"chevronDown",size:14})]}),(0,_.jsx)("div",{className:"wand-team-work-body","data-open":s||void 0,inert:!s,children:(0,_.jsxs)("div",{className:"wand-team-work-body-inner",children:[(0,_.jsxs)("div",{className:"wand-team-work-member",children:[o?(0,_.jsx)(ra.TeamAvatar,{member:o,size:"sm",state:ui(c.status)}):null,(0,_.jsx)("span",{className:"wand-team-work-member-name",children:o?.name??c.memberId}),o?.duty?(0,_.jsx)("small",{className:"wand-team-work-member-duty",children:o.duty}):null]}),(0,_.jsxs)("dl",{className:"wand-team-work-meta",children:[(0,_.jsxs)("div",{children:[(0,_.jsx)("dt",{children:"\u72B6\u6001"}),(0,_.jsx)("dd",{children:Nr[c.status]})]}),c.reportPath?(0,_.jsxs)("div",{children:[(0,_.jsx)("dt",{children:"\u62A5\u544A\u6587\u4EF6"}),(0,_.jsx)("dd",{children:(0,_.jsx)("code",{children:c.reportPath})})]}):null]}),c.report?(0,_.jsx)("p",{className:"wand-team-work-report",children:c.report}):null,c.sessionId&&t?(0,_.jsxs)(ge.WandButton,{kind:"ghost",size:"small",onClick:()=>t(c.sessionId),children:[(0,_.jsx)(ge.WandIcon,{name:"terminal",size:14,slot:"start"}),"\u6253\u5F00\u4F1A\u8BDD"]}):null]})})]},c.id)})}):(0,_.jsx)("p",{className:"wand-team-empty-line",children:"\u8D1F\u8D23\u4EBA\u8FD8\u6CA1\u6709\u6D3E\u53D1\u5DE5\u4F5C\u4EFB\u52A1\u3002"})]})})}function Mr({runId:e,sidebarOpen:t=!1,onBack:n,onOpenSidebar:a,onOpenSession:r}){let[m,i]=oe.useState(null),[c,o]=oe.useState(""),s=oe.useRef(e);s.current=e;let u=oe.useRef(0),g=oe.useRef(""),v=m&&(m.run.id===e||g.current===e)?m:null,x=!!v&&v.run.id!==e,h=v?.run.taskId??"";oe.useEffect(()=>()=>{u.current++},[]);let b=oe.useCallback(async()=>{let R=++u.current;if(!e){o("\u6CA1\u6709\u8981\u6253\u5F00\u7684\u7FA4\u804A\u3002");return}o("");try{let y=await it.aiTeamsRepository.detail(e);if(R!==u.current||s.current!==e)return;let N=await pi(y);if(R!==u.current||s.current!==e)return;if(N){g.current=N,na.taskBoardController.open("","","teamchat",N);return}i(M=>At(M,y)),g.current="",o("")}catch(y){if(R!==u.current||s.current!==e)return;let N=(0,Cr.failureMessage)(y,"\u7FA4\u804A\u52A0\u8F7D\u5931\u8D25\u3002");o(g.current===e?`\u65B0\u4E00\u8F6E\u52A0\u8F7D\u5931\u8D25\uFF0C\u5F53\u524D\u663E\u793A\u4E0A\u4E00\u8F6E\u8BB0\u5F55\u3002${N}`:N)}},[e]);oe.useEffect(()=>{g.current!==e&&(g.current="",i(null)),o(""),b()},[b]),oe.useEffect(()=>(0,it.subscribeAiTeamRunChanges)(R=>{(R.runId===e||h&&R.taskId===h)&&b()}),[b,e,h]),oe.useEffect(()=>(0,it.subscribeAiTeamDefinitionChanges)(R=>{R===v?.run.teamId&&b()}),[b,v?.run.teamId]),oe.useEffect(()=>(0,zr.subscribeTaskChanges)(()=>{b()}),[b]);let I=oe.useCallback(R=>{R.run.id===s.current&&i(y=>At(y,R))},[]),f=oe.useCallback(()=>{n?n():na.taskBoardController.close()},[n]);oe.useEffect(()=>{let R=y=>{y.key!=="Escape"||y.defaultPrevented||y.target?.closest("input, textarea, [contenteditable='true'], [role='dialog']")||f()};return window.addEventListener("keydown",R),()=>window.removeEventListener("keydown",R)},[f]);let T=v&&!x?St[v.run.status]:null;return(0,_.jsxs)("section",{className:"task-board-native-page wand-team-chat-page","aria-label":"\u7FA4\u804A",children:[(0,_.jsxs)("header",{className:"task-board-workspace-header",children:[(0,_.jsxs)("div",{className:"task-board-kicker",children:[a?(0,_.jsx)(ge.WandIconButton,{className:"task-board-icon-button","aria-label":t?"\u5173\u95ED\u4EFB\u52A1\u5217\u8868":"\u6253\u5F00\u4EFB\u52A1",onClick:a,children:(0,_.jsx)(Ir.SidebarToggleIcon,{open:t,size:16})}):null,(0,_.jsx)(ge.WandIconButton,{className:"task-board-icon-button","aria-label":"\u8FD4\u56DE\u4E0A\u4E00\u4F1A\u8BDD",title:"\u8FD4\u56DE\u4E0A\u4E00\u4F1A\u8BDD",onClick:f,children:(0,_.jsx)(ge.WandIcon,{name:"chevronLeft"})}),v?(0,_.jsx)("span",{className:"wand-team-chat-heading-avatar","aria-hidden":"true",children:(0,_.jsx)(ra.TeamAvatarStack,{members:$e(v).members,max:2,size:"sm"})}):null,(0,_.jsxs)("div",{className:"task-board-heading-copy",children:[(0,_.jsx)(ge.WandBreadcrumb,{variant:"title",className:"wand-team-chat-crumb",ariaLabel:"\u7FA4\u804A\u5BFC\u822A",items:[{label:"\u4EFB\u52A1\u770B\u677F",onNavigate:()=>na.taskBoardController.open("","","board")},{label:v?.chatTitle||"\u4EFB\u52A1\u5904\u7406\u7FA4"}]}),(0,_.jsx)("p",{children:x?c?"\u4E0A\u4E00\u8F6E\u8BB0\u5F55 \xB7 \u65B0\u4E00\u8F6E\u52A0\u8F7D\u5931\u8D25":"\u4E0A\u4E00\u8F6E\u8BB0\u5F55 \xB7 \u6B63\u5728\u63A5\u5165\u65B0\u4E00\u8F6E\u2026":v?`${$e(v).members.length} \u4F4D\u6210\u5458 \xB7 \u56E2\u961F\u7FA4\u804A`:c||"\u6B63\u5728\u52A0\u8F7D\u7FA4\u804A\u2026"})]})]}),v&&T?(0,_.jsx)("div",{className:"task-board-header-actions wand-team-chat-head-meta",children:(0,_.jsx)(ge.WandBadge,{tone:T.tone,children:T.label})}):null]}),c?(0,_.jsxs)("div",{className:"task-board-native-banner is-error",role:"alert",children:[(0,_.jsx)("span",{children:c}),e?(0,_.jsx)(ge.WandButton,{kind:"ghost",size:"small",onClick:()=>{b()},children:"\u91CD\u65B0\u52A0\u8F7D"}):null]}):null,(0,_.jsx)("div",{className:"wand-team-chat-body",children:v?(0,_.jsx)(mt,{detail:v,staleRun:x,onChange:I,onOpenSession:r,details:(0,_.jsxs)(_.Fragment,{children:[(0,_.jsx)(gi,{detail:v,onOpenSession:r}),v.run.chatSessionId&&r?(0,_.jsx)(ge.WandButton,{kind:"ghost",size:"small",onClick:()=>r(v.run.chatSessionId),children:"\u67E5\u770B\u5B8C\u6574\u4F1A\u8BDD\u8BB0\u5F55"}):null]})}):c?null:(0,_.jsx)("p",{className:"wand-team-empty-line",children:"\u6B63\u5728\u52A0\u8F7D\u2026"})})]})}var Lr=__wandCssTextPool[0];var Pr=w(Dr(),1);(0,Pr.installStyleSheet)("wand-ai-teams-styles",Lr);globalThis.__wandAiTeamsChunk={AiTeamsPage:Ar,TaskTeamRunPanel:jn,TeamChatView:mt,TeamChatPage:Mr};})();
9
+ `+(t.trim()||"\u8BF7\u67E5\u770B\u9644\u4EF6\u3002"):t}function ar(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 _s(e){return/\.(?:png|jpe?g|gif|webp|bmp|avif)$/i.test(e)}function qn(e){e.style.height="auto",e.style.height=`${e.scrollHeight}px`,e.style.overflowY=e.scrollHeight>e.clientHeight+1?"auto":"hidden"}var Ds=5*6e4;function Ps(e,t,n){if(!e||typeof e!="object")return null;let a=e.messages;if(!Array.isArray(a))return null;let r=a.filter(s=>!!s&&typeof s=="object"&&Array.isArray(s.content)),d=r.map(ut),i=new Set(n),c=-1;for(let s=0;s<d.length;s++){let g=d[s];g!=null&&i.has(g)&&(c=s)}if(i.size>0&&c<0)return null;let m=r.slice(c+1).map(s=>s.role==="user"&&Ve(s)===t?ut(s):null).filter(s=>s!==null&&!i.has(s));return m.length===1?m[0]:null}function $s(e,t,n,a=[],r){if(e.role!=="user"||Ve(e)!==n)return!1;let d=ut(e);if(!d||a.includes(d))return!1;if(r)return d===r;let i=Date.parse(e.createdAt??"");return Number.isFinite(i)&&Math.abs(i-t)<=Ds}function Oa(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 d=t.flatMap((i,c)=>!n.has(c)&&$s(i,r.sentAt,r.text,r.knownFingerprints,r.ackFingerprint)?[c]:[]);return d.length!==1?!0:(n.add(d[0]),!1)});return a.length===e.length?e:a}function Ws(e){return JSON.stringify(e.chatSessionId?["chat",e.chatSessionId]:["run",e.id])}function Kn(e){return e instanceof pt.HttpResponseError&&e.status>=400&&e.status<500&&e.status!==408&&e.status!==409}function Xe(e){return e.displayTeam??e.run.team}function Os(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 Fs(e){return Xe(e).members.map(t=>{let n=e.steps.filter(c=>c.memberId===t.id),a=n.find(c=>c.status==="running")??[...n].sort((c,m)=>m.seq-c.seq)[0],r=a?.sessionId?e.memberStates[a.sessionId]:void 0,d=a?.status==="running"?r==="needs_input"||r==="needs_permission"?"attention":"working":a?.status==="queued"?"queued":a?.status==="done"?"done":a?.status==="failed"?"failed":"idle",i=d==="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"}[d];return{member:t,state:d,label:i,task:a?.title||t.duty||"\u7B49\u5F85\u8D1F\u8D23\u4EBA\u6D3E\u5DE5",sessionId:a?.sessionId??null}})}function Bs({detail:e,onOpenSession:t}){let n=Fs(e),a=n.filter(d=>d.state==="working").length,r=n.filter(d=>d.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:d,state:i,label:c,task:m,sessionId:s})=>{let g=(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(kt.TeamAvatar,{member:d,size:"sm",state:i==="working"?"working":i==="done"?"done":i==="failed"?"failed":"idle"}),(0,l.jsxs)("span",{className:"team-chat-office-copy",children:[(0,l.jsx)("strong",{children:d.name}),(0,l.jsx)("small",{title:m,children:m})]}),(0,l.jsx)("span",{className:"team-chat-office-state","data-state":i,children:c})]});return s&&t?(0,l.jsx)("button",{type:"button",className:"team-chat-office-member",onClick:()=>t(s),"aria-label":`\u67E5\u770B${d.name}\u7684\u4F1A\u8BDD\uFF1A${c}`,children:g},d.id):(0,l.jsx)("div",{className:"team-chat-office-member",children:g},d.id)})})]})}var Hs={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"},js="\u53D1\u6D88\u606F\u4F1A\u63A5\u7740\u8FD9\u4E00\u8F6E\u7684\u8FDB\u5EA6\u5F00\u65B0\u4E00\u8F6E",Us="\u8F93\u5165\u6D88\u606F\u2026";function Ba(e){return e==="running"||e==="awaiting_approval"||e==="waiting_user"}function qs(e,t,n=""){if(n==="send")return Ba(e)?"send-and-stop":"send";let a=Ba(e);return a&&t?"send-and-stop":a?"stop":t?"send":"blocked"}function Ks(e){return e==="done"||e==="stopped"||e==="failed"?js:Hs[e]??""}function Ve(e){return e.content.filter(t=>t.type==="text").map(t=>"text"in t?t.text.trim():"").filter(Boolean).join(`
11
+ `)}function ua(e){let t=Date.parse(e.completedAt||e.createdAt||"");return Number.isNaN(t)?"":new Date(t).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}function Vs(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 d=a.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit",hour12:!1}),i=n.toDateString()===a.toDateString(),c=new Date(n.getFullYear(),n.getMonth(),n.getDate()-1).toDateString()===a.toDateString();return`${i?"\u4ECA\u5929":c?"\u6628\u5929":a.getFullYear()===n.getFullYear()?`${a.getMonth()+1}\u6708${a.getDate()}\u65E5`:`${a.getFullYear()}\u5E74${a.getMonth()+1}\u6708${a.getDate()}\u65E5`} ${d}`}function Ys(e){return e.notice?"notice":e.role==="user"?"user":e.author?.leader?"leader":"step"}var Xs=/^(✅ 完成|❌ 没完成)「(.+?)」\s*/;function nr(e){let t=Xs.exec(e.trim());return t?{ok:t[1]==="\u2705 \u5B8C\u6210",title:t[2],body:e.trim().slice(t[0].length)}:null}function Gs(e){return e&&e.title.trim()?`\u6210\u5458\u62A5\u544A \xB7 ${e.title}`:"\u6210\u5458\u53D1\u8A00"}var Js=/^\d+\.\s*\*\*@(.+?)\*\*\s*(.+)$/,Qs=/^(.+?)((依据:.+?))$/,Zs=/^(.+?)((等第.+?))$/;function ei(e){let t=e.trim().split(`
12
+ `),n=[],a=[];for(let r of t){let d=Js.exec(r.trim());if(!d){a.push(r);continue}let i=Qs.exec(d[2])??Zs.exec(d[2]);n.push({member:d[1],title:i?i[1]:d[2],note:i?i[2]:""})}return{head:a.join(`
13
+ `).trim(),assignments:n}}var Ha=6,ja=420;function qa(e){return e.length>ja||e.split(`
14
+ `).length>Ha}var ia="\u6211",rr="\uFF08\u8FD9\u6761\u6D88\u606F\u6CA1\u6709\u6B63\u6587\uFF09",ti="\u70B9\u51FB\u5C55\u5F00";function la(e,t,n=0){return e==="notice"?"notice":e==="user"?"bubble":qa(t)||n>0?"document":"bubble"}function ai(e){let t=e.split(`
15
+ `),n=t.length>Ha,a=t.slice(0,Ha).join(`
16
+ `);return a.length>ja&&(a=a.slice(0,ja).trimEnd(),n=!0),n?`${a}\u2026`:a}function sr(e){let t=e?.avatar??"";return t.startsWith("data:image/")?{kind:"upload",src:t}:e&&(e.id||e.name)?{kind:"cat",coat:(0,kt.memberCoatIndex)({id:e.id,name:e.name,avatar:t})}:{kind:"brand"}}var ni=/[\s((、「【《,,。;;::!!??]/,ri=["**","__","~~","*","_"],si=/[\s((、「【《,,。;;::!!??))」】》、.\]}]/;function ii(e,t,n=e){let a=[...new Set(t.map(g=>g.trim()).filter(Boolean))].sort((g,p)=>p.length-g.length);if(!e||a.length===0)return e?[{text:e}]:[];let d=n!==e&&e.endsWith("\u2026")&&n.startsWith(e.slice(0,-1))?e.length-1:e.length,i=[],c=0;for(;c<n.length;){let g=c===0||ni.test(n[c-1]),p=g?ri.find(w=>n.startsWith(`${w}@`,c)):void 0,v=p?c+p.length:c;if((g||p)&&n[v]==="@"){let w=a.find(h=>n.startsWith(h,v+1));if(w){let h=v+1+w.length,f=p?n.startsWith(p,h):!1,R=f?h+p.length:h;if((!p||f)&&(R===n.length||si.test(n[R]))&&R<=d){i.push({start:v,end:h}),c=R;continue}}}c++}let m=[],s=0;for(let g of i)g.start>s&&m.push({text:e.slice(s,g.start)}),m.push({text:e.slice(g.start,g.end),mention:!0}),s=g.end;return s<e.length&&m.push({text:e.slice(s)}),m}var oa=[];function ca({text:e,names:t,source:n}){return(0,l.jsx)(l.Fragment,{children:ii(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)(A.Fragment,{children:a.text},`plain#${r}`))})}function oi({path:e}){let[t,n]=A.useState(!1),a=e.split("/").at(-1)?.replace(/^\d{13}-[0-9a-f]{8}-/,"")||e,r=_s(e)&&!t;return(0,l.jsx)("button",{type:"button",className:"team-chat-attachment","data-image":r||void 0,title:`\u9884\u89C8 ${a}`,onClick:()=>{Ua.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)(Ye.WandIcon,{name:"file",size:18}),(0,l.jsx)("span",{children:a})]})})}function ir({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)(oi,{path:t},`${t}#${n}`))}):null}function di({file:e}){let t=e.preview?.title||e.name,n=e.preview?.excerpt||(e.preview?"\u62A5\u544A\u6682\u65E0\u6B63\u6587":"\u70B9\u51FB\u67E5\u770B\u5B8C\u6574\u62A5\u544A");return(0,l.jsx)("div",{className:"team-chat-file-card",children:(0,l.jsxs)("button",{type:"button",className:"team-chat-file-open",title:`\u67E5\u770B\u5B8C\u6574\u62A5\u544A\uFF1A${t}`,onClick:()=>{Ua.filePreviewController.open(e.path)},children:[(0,l.jsxs)("span",{className:"team-chat-file-copy",children:[(0,l.jsx)("strong",{children:t}),(0,l.jsx)("span",{className:"team-chat-file-excerpt",children:n})]}),(0,l.jsxs)("span",{className:"team-chat-file-icon","aria-hidden":"true",children:[(0,l.jsx)(Ye.WandIcon,{name:"file",size:12}),(0,l.jsx)("b",{children:t}),(0,l.jsx)("span",{children:e.preview?.excerpt})]}),(0,l.jsxs)("span",{className:"team-chat-file-meta",children:[(0,l.jsx)("span",{children:e.name}),(0,l.jsxs)("span",{children:["Markdown \xB7 ",(0,Zn.formatFilePreviewSize)(e.size)]})]})]})})}function or({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)(kt.PixelCat,{coat:e.coat}):(0,l.jsx)(Ye.WandBrandMark,{className:"team-chat-avatar-brand"})})}function ma({shape:e,text:t,assignments:n,names:a,onExpand:r}){let d=ar(t),i=d.paths.length&&d.body.trim()==="\u8BF7\u67E5\u770B\u9644\u4EF6\u3002"?"":d.body,c=qa(i),m=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)(ir,{paths:d.paths}),i.trim()?c?(0,l.jsx)("p",{className:"team-chat-preview",children:(0,l.jsx)(ca,{text:ai(i),names:a,source:i})}):(0,l.jsx)("pre",{className:e==="document"?"team-chat-doc-text":"team-chat-bubble-text",children:(0,l.jsx)(ca,{text:i,names:a})}):m.length===0&&d.paths.length===0?(0,l.jsx)("p",{className:"team-chat-preview team-chat-msg-empty",children:rr}):null,m.length>0?(0,l.jsx)("ol",{className:"team-chat-plan-list",children:m.map((s,g)=>(0,l.jsxs)("li",{children:[(0,l.jsxs)("span",{className:"team-chat-mention",children:["@",s.member]}),(0,l.jsx)("span",{className:"team-chat-plan-title",children:s.title}),s.note?(0,l.jsx)("small",{className:"team-chat-plan-basis",children:s.note}):null]},`${s.member}#${g}`))}):null,c&&r?(0,l.jsx)("button",{type:"button",className:"team-chat-expand","aria-haspopup":"dialog",onClick:r,children:ti}):null]})}function pa({kind:e,side:t,shape:n,status:a,avatar:r,name:d,sessionId:i,chip:c,badge:m,clock:s,onOpenSession:g,children:p,footer:v,presentationId:w,arriving:h=!1,onArrivalEnd:f}){return(0,l.jsxs)("div",{className:"chat-message assistant team-chat-msg","data-presentation-id":w,"data-arriving":h||void 0,onAnimationEnd:f,"data-kind":e,"data-side":t,"data-shape":n,"data-status":a,children:[(0,l.jsx)(or,{spec:r}),(0,l.jsxs)("div",{className:"team-chat-msg-content",children:[(0,l.jsxs)("div",{className:"team-chat-msg-head",children:[i&&g?(0,l.jsx)("button",{type:"button",className:"avatar-name chat-author-link",title:"\u67E5\u770B\u8FD9\u4E2A\u6210\u5458\u7684\u4F1A\u8BDD",onClick:()=>g(i),children:d}):(0,l.jsx)("span",{className:"avatar-name",children:d}),c,m?(0,l.jsx)("span",{className:"chat-author-badge",children:m}):null,s?(0,l.jsx)("span",{className:"chat-message-time",children:s}):null]}),p,v]})]})}function li({text:e,previewClassName:t,bodyClassName:n}){let a=qa(e),[r,d]=A.useState(!1),i=!a||r;return(0,l.jsxs)(l.Fragment,{children:[a&&!i?(0,l.jsx)("p",{className:t,children:e}):null,(0,l.jsx)("div",{className:n,"data-open":i||void 0,inert:!i,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":i,onClick:()=>d(c=>!c),children:i?"\u6536\u8D77":"\u5C55\u5F00\u5168\u6587"}):null]})}function ci({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 ",Xe(e).name]})]}),(0,l.jsx)(li,{text:t.objective,previewClassName:"team-chat-goal-preview",bodyClassName:"team-chat-goal-body"})]})}function mi({turn:e,step:t,names:n,onOpenSession:a,onExpandDoc:r,presentationId:d,arriving:i,onArrivalEnd:c}){let m=e.author,s=nr(Ve(e)),g=s?s.body:Ve(e),p=ua(e),v=t?.status??(s?.ok===!1?"failed":s?"done":void 0),w=e.reportFile?"bubble":la("step",g,0),h=m?.name??"\u6210\u5458",f=sr(m),R=s?`${s.ok?"\u2705":"\u274C"} ${s.title}`:"";return(0,l.jsx)(pa,{kind:"step",side:"start",shape:w,status:v,avatar:f,name:h,sessionId:m?.sessionId??null,chip:s?(0,l.jsx)("span",{className:"team-chat-step-chip","data-ok":s.ok||void 0,children:R}):null,clock:p,onOpenSession:a,presentationId:d,arriving:i,onArrivalEnd:c,children:e.reportFile?(0,l.jsx)(di,{file:e.reportFile}):(0,l.jsx)(ma,{shape:w,text:g,names:n,onExpand:y=>r(y.currentTarget,{text:g,name:h,clock:p,typeLabel:Gs(s),chip:R,avatar:f,side:"start",mentionNames:[...n]})})})}function pi({turn:e,names:t,onOpenSession:n,onExpandDoc:a,presentationId:r,arriving:d,onArrivalEnd:i}){let c=e.author,m=ua(e),s=Ve(e),{head:g,assignments:p}=ei(s),v=la("leader",g,p.length),w=c?.name??"\u8D1F\u8D23\u4EBA",h=sr(c);return(0,l.jsx)(pa,{kind:"leader",side:"start",shape:v,avatar:h,name:w,sessionId:c?.sessionId??null,badge:"\u8D1F\u8D23\u4EBA",clock:m,onOpenSession:n,presentationId:r,arriving:d,onArrivalEnd:i,children:(0,l.jsx)(ma,{shape:v,text:g,assignments:p,names:t,onExpand:f=>a(f.currentTarget,{text:s,name:w,clock:m,typeLabel:"\u8D1F\u8D23\u4EBA\u6D3E\u5DE5",avatar:h,side:"start",mentionNames:[...t]})})})}var dr=24,Vn="\u5DF2\u5F00\u59CB\uFF0C\u7B49\u5F85\u7B2C\u4E00\u6BB5\u8F93\u51FA\u2026",ui={working:"\u5DE5\u4F5C\u4E2D",needs_input:"\u7B49\u5F85\u56DE\u7B54",needs_permission:"\u7B49\u5F85\u6388\u6743",done:"\u5DF2\u5B8C\u6210",failed:"\u5931\u8D25"};function gi(e){return e&&ui[e]||""}function fi(e,t,n,a=dr){return t-(e+n)<=a}function lr(e,t=dr){return fi(e.scrollTop,e.scrollHeight,e.clientHeight,t)}function hi(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 vi=6;function bi(e){return e>0?`\u5DF2\u7701\u7565\u524D\u9762 ${e} \u5B57`:""}function Yn(e,t,n=Date.now()){let a=hi(t),r=new Set(a.map(i=>i.stepId)),d=e.filter(i=>!r.has(i.step.stepId)).map(i=>({...i,leaving:!0,leavingSince:i.leaving?i.leavingSince:n}));return[...a.map(i=>({step:i,leaving:!1,leavingSince:0})),...d].sort((i,c)=>i.step.seq-c.step.seq)}function Xn(e,t){return e.filter(n=>!(n.leaving&&n.step.stepId===t))}var wi="--motion-quick-exit";function yi(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 Gn(){return typeof window>"u"?null:yi(getComputedStyle(document.documentElement).getPropertyValue(wi))}function xi(e,t,n){let a=e.filter(r=>!r.leaving||t-r.leavingSince<n);return a.length===e.length?e:a}function ki({row:e,title:t,memberName:n,state:a,onOpenSession:r,onRetire:d}){let i=e.step,c=A.useRef(null),m=A.useRef(!0),s=A.useRef(null),[g,p]=A.useState(!1),v=gi(a??i.state),w=ua({createdAt:i.updatedAt,completedAt:i.updatedAt}),h=bi(i.omittedChars),f=i.text.trim().split(`
17
+ `).filter(Boolean).at(-1)||Vn;A.useEffect(()=>{let y=c.current;g&&y&&m.current&&(y.scrollTop=y.scrollHeight)},[g,i.text]);let R=()=>{r&&(window.getSelection()?.toString()||r(i.sessionId))};return(0,l.jsxs)("div",{className:"team-chat-live-row","data-leaving":e.leaving||void 0,onAnimationEnd:y=>{e.leaving&&y.target===y.currentTarget&&d(i.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:["#",i.seq,t?` ${t}`:""]}),v?(0,l.jsx)("span",{className:"team-chat-live-state","data-state":i.state,children:v}):null,w?(0,l.jsx)("span",{className:"chat-message-time",children:w}):null]}),(0,l.jsxs)("button",{type:"button",className:"team-chat-live-summary","aria-expanded":g,onClick:()=>p(y=>!y),children:[(0,l.jsx)("span",{children:f}),(0,l.jsx)("small",{children:g?"\u6536\u8D77\u8F93\u51FA":"\u5C55\u5F00\u8F93\u51FA"})]}),(0,l.jsx)("div",{className:"team-chat-live-body","data-open":g||void 0,inert:!g,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:y=>{s.current={x:y.clientX,y:y.clientY}},onClick:y=>{let x=s.current;x&&Math.hypot(y.clientX-x.x,y.clientY-x.y)>vi||R()},onKeyDown:y=>{y.key!=="Enter"&&y.key!==" "||(y.preventDefault(),R())},children:[h?(0,l.jsx)("p",{className:"team-chat-live-omitted",children:h}):null,(0,l.jsx)("pre",{className:"team-chat-live-text",ref:c,onScroll:y=>{m.current=lr(y.currentTarget)},children:i.text||Vn})]})})})]})}function ut(e){let t=e.content.map(a=>a.type==="text"?["text",a.text]:null);if(t.some(a=>a===null))return null;let n=e.author;return JSON.stringify([e.role,e.notice??null,e.createdAt??null,e.completedAt??null,n?[n.id??null,n.name??null,n.leader??null,n.sessionId??null,n.provider??null,n.model??null,n.thinkingEffort??null,n.avatar??null]:null,t,...e.reportFile?[[e.reportFile.stepId,e.reportFile.path,e.reportFile.name,e.reportFile.size,e.reportFile.preview?.title??null,e.reportFile.preview?.excerpt??null]]:[]])}function Jn(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 cr(e,t){if(e.length===0)return[...t];if(t.length===0)return e;let n=e.map(ut),a=t.map(ut);if(n.includes(null)||a.includes(null))return e;let r=n,d=a,i=Jn(d,r);if(i>=0)return i+e.length<t.length?[...t]:e;if(Jn(r,d)>=0)return e;let c=0;for(let m=1;m<=Math.min(e.length,t.length);m++)if(r.slice(-m).every((s,g)=>s===d[g])){if(c>0)return e;c=m}return c>0?[...e,...t.slice(c)].slice(-bn):e}function $e(e,t){if(!e)return t;if(e.run.id!==t.run.id)return e.run.taskId===t.run.taskId&&Date.parse(t.run.createdAt)<Date.parse(e.run.createdAt)?e:t;let n=Date.parse(e.run.updatedAt??""),a=Date.parse(t.run.updatedAt??""),r=h=>h.steps.filter(f=>f.status==="done"||f.status==="failed"||f.status==="skipped").length,d=e.run.status==="done"||e.run.status==="failed"||e.run.status==="stopped",i=t.run.status==="done"||t.run.status==="failed"||t.run.status==="stopped",c=Number.isFinite(n)&&Number.isFinite(a)&&a<n||a===n&&(d&&!i||t.steps.length<e.steps.length||r(t)<r(e)||t.run.stepsUsed<e.run.stepsUsed),m=c?e:t,s=Date.parse(e.displayTeam?.updatedAt??"")>Date.parse(t.displayTeam?.updatedAt??"")?e.displayTeam:t.displayTeam,g=t.chatTitle===void 0||Date.parse(e.chatTitleUpdatedAt??"")>Date.parse(t.chatTitleUpdatedAt??"")?e:t,p=e.delivery,v=t.delivery,w=c||p&&(a===n&&!v||v&&(Date.parse(v.updatedAt)<Date.parse(p.updatedAt)||v.updatedAt===p.updatedAt&&(v.totalFiles<p.totalFiles||v.files.length<p.files.length||v.handoffs.length<p.handoffs.length||p.files.some(h=>{let f=v.files.find(R=>R.stepId===h.stepId&&R.file.path===h.file.path);return!f||h.file.preview?.title.trim()&&!f.file.preview?.title.trim()||h.file.preview?.excerpt.trim()&&!f.file.preview?.excerpt.trim()}))))?p:v;return{...m,...w?{delivery:w}:{},...s?{displayTeam:s}:{},...g.chatTitle!==void 0?{chatTitle:g.chatTitle,chatTitleUpdatedAt:g.chatTitleUpdatedAt}:{},chatTurns:cr(e.chatTurns,t.chatTurns)}}function Ti(e,t){let n=null;for(let a=1;a<=Math.min(e.length,t.length);a++)if(e.slice(-a).every((r,d)=>r.fingerprint!==null&&r.fingerprint===t[d])){if(n!==null)return null;n=a}return n}function Ri(e,t,n){let a=e?.scope===t?e.rows:[],r=n.map(ut),d=e?.scope===t?e.nextId:0,i=()=>`turn-${++d}`;if(a.length===n.length&&a.every((h,f)=>h.fingerprint!==null&&h.fingerprint===r[f]))return{scope:t,nextId:d,candidates:[],rows:n.map((h,f)=>({...a[f],turn:h}))};let m=Ti(a,r),s=new Map,g=new Map;for(let h of a)h.fingerprint!==null&&s.set(h.fingerprint,(s.get(h.fingerprint)??0)+1);for(let h of r)h!==null&&g.set(h,(g.get(h)??0)+1);let p=[],v=[],w=a.length?Date.parse(a.at(-1).turn.createdAt??""):-1/0;for(let h=0;h<n.length;h++){let f=r[h],R=m!==null&&h<m?a[a.length-m+h]:void 0,y=f!==null&&(s.get(f)??0)<=1&&g.get(f)===1,x=R&&f!==null&&s.get(f)===g.get(f)&&n.every((L,B)=>r[B]!==f||m!==null&&B<m&&a[a.length-m+B]?.fingerprint===f),E=R&&(y||x)?R:y?a.find(L=>L.fingerprint===f):void 0,k=E?.presentationId??i();p.push({turn:n[h],fingerprint:f,presentationId:k});let C=Date.parse(n[h].createdAt??"");!E&&y&&(a.length===0&&e?.scope===t||m!==null&&h>=m)&&Number.isFinite(C)&&(a.length===0||Number.isFinite(w)&&C>=w)&&v.push(k)}return{scope:t,rows:p,nextId:d,candidates:v}}function Ai({layer:e,onExited:t}){let n=e.ownerId,a=ar(e.text);return A.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)(or,{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)(ir,{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)(ca,{text:a.body,names:e.mentionNames}):rr})]})}function Qn(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 Tt({detail:e,onChange:t,onOpenSession:n,details:a,staleRun:r=!1}){let{run:d,chatTurns:i,steps:c}=e,[m,s]=A.useState([]),[g,p]=A.useState(""),[v,w]=A.useState(""),[h,f]=A.useState("message"),[R,y]=A.useState(!1),[x,E]=A.useState(!1),k=A.useRef(null),C=A.useRef(null),L=A.useRef(null),B=A.useRef(null),G=A.useRef(null),j=A.useRef(null),Y=A.useRef(!1),W=A.useRef(0),[ne,P]=A.useState([]),[Q,H]=A.useState(!1),X=A.useRef(null),[se,$]=A.useState(null),[F,te]=A.useState({scope:"",ids:new Set}),q=Ws(d),oe=d.chatSessionId,Nt=A.useCallback(()=>Ke.teamChatComposer.revision(oe),[oe]);A.useSyncExternalStore(Ke.teamChatComposer.subscribe,Nt,Nt);let Ct=Ke.teamChatComposer.read(oe),pe=Ct.text,Se=Ct.attachments,ue=A.useRef({scope:q,runId:d.id,epoch:0});A.useLayoutEffect(()=>{let u=ue.current;ue.current={scope:q,runId:d.id,epoch:u.epoch+(u.scope===q?0:1)}},[q,d.id]);let Oe=A.useRef(e);A.useLayoutEffect(()=>{Oe.current=e},[e]);let De=A.useRef(null),ge=A.useMemo(()=>Ri(De.current,q,i),[q,i]);A.useLayoutEffect(()=>{De.current=ge},[ge]);let It=A.useId(),et=A.useId(),je=A.useRef(null),zt=A.useRef(null),qt=A.useRef({projection:ge,local:m});A.useLayoutEffect(()=>{qt.current={projection:ge,local:m}},[ge,m]);let Kt=A.useRef(null),S=A.useRef(null),K=A.useRef(q),fe=A.useRef(q),xe=A.useRef(!0),Ea=A.useRef(""),Sa=A.useRef(null),tt=A.useRef(!0),Vt=Xe(e),Na=A.useMemo(()=>[...new Set([...Vt.members.map(u=>u.name),...d.team.members.map(u=>u.name),...i.map(u=>u.author?.name).filter(u=>!!u)])],[Vt,d.team,i]),Ca=r?"\u6B63\u5728\u63A5\u5165\u65B0\u4E00\u8F6E\uFF0C\u52A0\u8F7D\u5B8C\u6210\u540E\u53EF\u53D1\u9001":Ks(d.status),sn=d.status==="running",Ia=qs(d.status,!!pe.trim()||Se.length>0,v),Yt=v!=="",za=Ia==="stop",vs=Yt||r||Ia==="blocked",bs=v==="send"?"sending":za?"running":"idle",on=v==="send"?h==="upload"?"\u4E0A\u4F20\u4E2D\u2026":"\u53D1\u9001\u4E2D\u2026":v==="stop"?"\u505C\u6B62\u4E2D\u2026":za?"\u505C\u6B62\u56E2\u961F":"\u53D1\u9001\u6D88\u606F",dn=g?"\u64CD\u4F5C\u5931\u8D25":v==="send"?h==="upload"?"\u4E0A\u4F20\u4E2D\u2026":"\u53D1\u9001\u4E2D\u2026":v==="stop"?"\u505C\u6B62\u4E2D\u2026":"Enter \u53D1\u9001 \xB7 Shift+Enter \u6362\u884C";A.useLayoutEffect(()=>{let u=B.current;u&&qn(u)},[pe,oe]),A.useLayoutEffect(()=>{let u=B.current,N=u?.parentElement;if(!u||!N)return;let _=-1,z=new ResizeObserver(([O])=>{let he=O?.contentRect.width??N.getBoundingClientRect().width;he<=0||Math.abs(he-_)<.5||(_=he,qn(u))});return z.observe(N),()=>z.disconnect()},[oe]),A.useEffect(()=>{if(!x)return;let u=_=>{let z=_.target;z&&(G.current?.contains(z)||j.current?.contains(z))||E(!1)},N=_=>{_.key==="Escape"&&(_.preventDefault(),_.stopPropagation(),E(!1),G.current?.focus())};return document.addEventListener("pointerdown",u),document.addEventListener("keydown",N),()=>{document.removeEventListener("pointerdown",u),document.removeEventListener("keydown",N)}},[x]),A.useLayoutEffect(()=>{if(!x)return;let u=k.current,N=G.current,_=j.current;if(!u||!N||!_)return;let z=()=>{let he=u.getBoundingClientRect(),ke=N.getBoundingClientRect();_.style.left=`${Math.max(0,ke.left-he.left)}px`,_.style.bottom=`${Math.max(0,he.bottom-ke.top+8)}px`};z();let O=new ResizeObserver(z);return O.observe(u),O.observe(N),window.addEventListener("resize",z),()=>{O.disconnect(),window.removeEventListener("resize",z)}},[x,Se.length,oe,Ca]),A.useEffect(()=>{E(!1)},[oe]);let Mt=A.useCallback(()=>{$(u=>u?.phase!=="open"?u:(Sa.current=`${u.scope}/${u.ownerId}`,{...u,phase:"closing"}))},[]),ws=A.useCallback(u=>{Sa.current===`${Ea.current}/${u}`&&(Sa.current=null,$(N=>N?.ownerId===u&&N.phase==="closing"?null:N),queueMicrotask(()=>{if(!xe.current)return;let N=qt.current;(Qn(u,Ea.current,N.projection,N.local)&&zt.current?.isConnected?zt.current:je.current)?.focus({preventScroll:!0})}))},[]);A.useEffect(()=>(xe.current=!0,()=>{xe.current=!1}),[]),A.useEffect(()=>{fe.current!==q&&(fe.current=q,s([]),p(""),w(""),tt.current=!0)},[q]),A.useEffect(()=>{H(!1),Mt()},[d.id,Mt]),A.useEffect(()=>{s(u=>Oa(u,i))},[i,q]),A.useLayoutEffect(()=>{se?.phase==="open"&&(Qn(se.ownerId,se.scope,ge,m)||Mt())},[se,q,ge,m,Mt]),A.useEffect(()=>{let u=window.matchMedia("(prefers-reduced-motion: reduce)"),N=()=>te(O=>O.ids.size?{scope:O.scope,ids:new Set}:O),_=()=>{document.visibilityState!=="visible"&&N()},z=()=>{u.matches&&N()};return document.addEventListener("visibilitychange",_),window.addEventListener("pagehide",N),u.addEventListener("change",z),_(),z(),()=>{document.removeEventListener("visibilitychange",_),window.removeEventListener("pagehide",N),u.removeEventListener("change",z)}},[]),A.useLayoutEffect(()=>{if(Kt.current===ge)return;Kt.current=ge;let u=je.current;if(!u)return;if(K.current!==q&&(S.current=null,tt.current=!0,K.current=q),tt.current)u.scrollTop=u.scrollHeight;else if(S.current){let _=[...u.children].find(z=>z.dataset.presentationId===S.current?.id);_&&(u.scrollTop+=_.getBoundingClientRect().top-u.getBoundingClientRect().top-S.current.offset)}let N=new Set;if(tt.current&&document.visibilityState==="visible"&&!window.matchMedia("(prefers-reduced-motion: reduce)").matches){let _=u.getBoundingClientRect();for(let z of ge.candidates){let O=[...u.children].find(he=>he.dataset.presentationId===z);O&&O.getBoundingClientRect().bottom>_.top&&O.getBoundingClientRect().top<_.bottom&&N.add(z)}}te(_=>({scope:q,ids:new Set([...(_.scope===q?[..._.ids]:[]).filter(z=>ge.rows.some(O=>O.presentationId===z)),...N])}))},[ge,q]),A.useEffect(()=>{if(P([]),!sn)return;let u=!0;Ot.aiTeamsRepository.live(d.id).then(_=>{u&&P(Yn([],_.steps))},()=>{});let N=Ot.aiTeamsRepository.subscribeAiTeamStepLive(_=>{!u||_.runId!==d.id||P(z=>Yn(z,_.steps))});return()=>{u=!1,N()}},[d.id,sn]),A.useEffect(()=>{let u=Gn();if(u===null)return;let N=Date.now(),_=ne.filter(z=>z.leaving).map(z=>window.setTimeout(()=>P(O=>Xn(O,z.step.stepId)),Math.max(0,z.leavingSince+u-N)));return()=>{for(let z of _)window.clearTimeout(z)}},[ne]),A.useEffect(()=>{let u=Gn();if(u===null)return;let N=()=>{document.visibilityState==="visible"&&P(_=>xi(_,Date.now(),u))};return document.addEventListener("visibilitychange",N),()=>document.removeEventListener("visibilitychange",N)},[]),A.useEffect(()=>{let u=je.current;!u||!tt.current||(u.scrollTop=u.scrollHeight)},[ge.rows.at(-1)?.presentationId,m.length,ne.length]);let Xt=(u,N,_)=>{if(se)return;let z=u.getBoundingClientRect(),O=z.top+z.height/2<window.innerHeight/2?"top":"bottom";zt.current=u,Ea.current=q,$({..._,ownerId:N,scope:q,half:O,phase:"open"})},Gt=u=>{if(!oe)return;let N=Array.from(u),_=Math.max(0,5-Ke.teamChatComposer.read(oe).attachments.length);N.length>_&&p("\u4E00\u6B21\u6700\u591A\u6DFB\u52A0 5 \u4E2A\u9644\u4EF6\u3002");for(let[z,O]of N.slice(0,_).entries()){if(O.size>10*1024*1024){p(`\u6587\u4EF6\u8D85\u8FC7 10 MB\uFF1A${O.name||"\u56FE\u7247"}`);continue}let he=O.type.startsWith("image/"),ke=O.name&&O.name!=="blob"?O.name:`image-${Date.now()}-${z+1}.${O.type.split("/")[1]||"png"}`;Ke.teamChatComposer.edit(oe,{addAttachment:{file:O,name:ke,size:O.size,previewUrl:he?URL.createObjectURL(O):null}})}},ln=async()=>{let u=pe.trim(),N=d.chatSessionId;if(!u&&!Se.length||!N||Yt||r)return;let _=q,z=ue.current.epoch,O=()=>ue.current.scope===_&&ue.current.epoch===z,he=i.map(ut).filter(we=>we!==null);w("send"),p(""),tt.current=!0;let ke=Se.length?"upload":"message";f(ke);try{await Ke.teamChatComposer.submit(N,u,async we=>{let Ue=[];if(we.attachments.length){let le=new FormData;for(let at of we.attachments)le.append("files",at.file,at.name);if(Ue=(await(0,pt.requestJson)(Ms(N),{method:"POST",body:le})).files,!Array.isArray(Ue)||Ue.length!==we.attachments.length)throw new Error("\u9644\u4EF6\u4E0A\u4F20\u7ED3\u679C\u4E0D\u5B8C\u6574\uFF0C\u8BF7\u91CD\u8BD5\u3002")}if(!O())throw new Error("\u5DF2\u5207\u6362\u7FA4\u804A\uFF0C\u539F\u6D88\u606F\u5DF2\u4FDD\u7559\u3002");let bt=Ls(Ue,we.text.trim()),wt=Date.now();ke="message",f(ke),s(le=>[...le,{local:!0,text:bt,sentAt:wt,unconfirmed:!1,accepted:!1,knownFingerprints:he}]);let de;try{de=await(0,pt.requestJson)(Is(N),{...(0,pt.jsonBody)(zs(bt)),headers:{"content-type":"application/json","X-Wand-Tool-Projection":"compact"}})}catch(le){let Be=Kn(le);throw O()&&s(at=>Be?at.filter(Lt=>Lt.sentAt!==wt):at.map(Lt=>Lt.sentAt===wt?{...Lt,unconfirmed:!0}:Lt)),!Be&&le&&typeof le=="object"&&Object.assign(le,{__wandAmbiguousDelivery:!0}),le}if(!O())return;let Ne=Ps(de,bt,he);s(le=>Oa(le.map(Be=>Be.sentAt===wt?{...Be,accepted:!0,ackFingerprint:Ne??void 0}:Be),Oe.current.chatTurns));let qe=null;try{let le=ue.current.runId,Be=await Ot.aiTeamsRepository.detail(le);if(!O())return;if(ue.current.runId===le&&Oe.current.run.id===le){let at=$e(Oe.current,{...Oe.current,chatTurns:Be.chatTurns});t(at),qe=at.chatTurns}else qe=cr(Oe.current.chatTurns,Be.chatTurns)}catch{if(!O())return;qe=null}s(le=>Oa(le,qe))})}catch(we){if(!O())return;p(ke==="upload"?(0,da.failureMessage)(we,"\u9644\u4EF6\u4E0A\u4F20\u5931\u8D25\uFF0C\u6587\u4EF6\u548C\u6587\u5B57\u5DF2\u4FDD\u7559\u3002"):Kn(we)?(0,da.failureMessage)(we,"\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{O()&&w("")}},cn=async()=>{if(!Ba(d.status)||Yt||r)return;let u=q,N=d.id,_=ue.current.epoch;w("stop"),p("");try{let z=await Ot.aiTeamsRepository.stop(N);ue.current.scope===u&&ue.current.epoch===_&&ue.current.runId===N&&t($e(Oe.current,z))}catch(z){ue.current.scope===u&&ue.current.epoch===_&&ue.current.runId===N&&p((0,da.failureMessage)(z,"\u505C\u6B62\u5931\u8D25\u3002"))}finally{ue.current.scope===u&&ue.current.epoch===_&&w("")}},Fe=e.delivery?.runId===d.id?e.delivery:void 0;return(0,l.jsxs)("div",{className:"task-board-team-chat",onKeyDown:u=>{u.key==="Escape"&&Q&&!se&&(u.stopPropagation(),H(!1),X.current?.focus({preventScroll:!0}))},children:[(0,l.jsxs)("button",{ref:X,type:"button",className:"team-chat-context","aria-expanded":Q,"aria-controls":It,onClick:()=>H(u=>!u),children:[(0,l.jsx)("span",{className:"team-chat-context-label",children:Fe?"\u4EA4\u4ED8":"\u7FA4\u516C\u544A"}),(0,l.jsx)("span",{className:"team-chat-context-title",title:Fe?$a(Fe):d.objective,children:Fe?sa(Fe):d.objective.split(`
18
+ `)[0]||"\u67E5\u770B\u672C\u6B21\u4EFB\u52A1"}),Fe?(0,l.jsxs)("small",{className:"team-chat-context-action",children:[Fe.totalFiles," \u6587\u4EF6 \xB7 ",Fe.totalHandoffs," \u63A5\u529B"]}):null,(0,l.jsx)("span",{className:"team-chat-context-action",children:Q?"\u6536\u8D77":"\u8BE6\u60C5"})]}),(0,l.jsx)("div",{id:It,className:"team-chat-details","data-open":Q||void 0,inert:!Q,children:(0,l.jsxs)("div",{className:"team-chat-details-inner",children:[Fe?(0,l.jsx)(Wa,{delivery:Fe}):null,(0,l.jsx)(ci,{detail:e}),(0,l.jsx)(Bs,{detail:e,onOpenSession:n}),a]})}),(0,l.jsxs)("div",{className:"task-board-team-chat-list",ref:je,tabIndex:-1,onScroll:u=>{if(u.currentTarget!==je.current)return;let N=u.currentTarget;if(tt.current=lr(u.currentTarget),tt.current){S.current=null;return}let _=N.getBoundingClientRect(),z=[...N.children].find(O=>O.dataset.presentationId&&O.getBoundingClientRect().bottom>_.top);z?.dataset.presentationId&&(S.current={id:z.dataset.presentationId,offset:z.getBoundingClientRect().top-_.top})},children:[i.length+m.length+ne.length===0?(0,l.jsx)("p",{className:"task-board-team-run-detail",children:"\u7FA4\u804A\u8FD8\u6CA1\u6709\u6D88\u606F\u3002"}):null,ge.rows.map(({turn:u,presentationId:N},_)=>{let z=Os(u,Vt),O=Ys(z),he=Vs(z,ge.rows[_-1]?.turn),ke=de=>(0,l.jsxs)(A.Fragment,{children:[he?(0,l.jsx)("time",{className:"team-chat-time-marker",dateTime:z.createdAt,children:he}):null,de]},N),we=F.scope===q&&F.ids.has(N),Ue=de=>{de.target===de.currentTarget&&de.animationName==="wand-team-msg-in"&&te(Ne=>Ne.scope===q&&Ne.ids.has(N)?{scope:q,ids:new Set([...Ne.ids].filter(qe=>qe!==N))}:Ne)};if(O==="notice")return ke((0,l.jsx)("div",{className:"chat-message chat-notice","data-presentation-id":N,"data-arriving":we||void 0,onAnimationEnd:Ue,children:(0,l.jsxs)("div",{className:"chat-notice-line",title:[z.author?.name,Ve(z)].filter(Boolean).join(" "),children:[z.author?.name?(0,l.jsx)("span",{className:"chat-notice-author",children:z.author.name}):null,(0,l.jsx)("span",{className:"chat-notice-text",children:(0,l.jsx)(ca,{text:Ve(z),names:Na})})]})}));if(O==="user"){let de=Ve(z),Ne=ua(z),qe=la("user",de,0);return ke((0,l.jsx)(pa,{presentationId:N,kind:"user",side:"end",shape:qe,avatar:{kind:"brand"},name:ia,clock:Ne,arriving:we,onArrivalEnd:Ue,children:(0,l.jsx)(ma,{shape:qe,text:de,names:oa,onExpand:le=>Xt(le.currentTarget,N,{text:de,name:ia,clock:Ne,typeLabel:"\u6211\u7684\u6D88\u606F",avatar:{kind:"brand"},side:"end",mentionNames:oa})})}))}if(O==="leader")return ke((0,l.jsx)(pi,{presentationId:N,turn:z,names:Na,arriving:we,onArrivalEnd:Ue,onOpenSession:n,onExpandDoc:(de,Ne)=>Xt(de,N,Ne)}));let bt=nr(Ve(z)),wt=z.reportFile?c.find(de=>de.id===z.reportFile.stepId):bt?c.find(de=>de.kind==="work"&&de.title===bt.title):void 0;return ke((0,l.jsx)(mi,{presentationId:N,turn:z,step:wt,names:Na,arriving:we,onArrivalEnd:Ue,onOpenSession:n,onExpandDoc:(de,Ne)=>Xt(de,N,Ne)}))}),ne.map(u=>(0,l.jsx)(ki,{row:u,title:c.find(N=>N.id===u.step.stepId)?.title??"",memberName:Vt.members.find(N=>N.id===u.step.memberId)?.name??u.step.memberName,state:e.memberStates[u.step.sessionId],onOpenSession:n,onRetire:N=>P(_=>Xn(_,N))},u.step.stepId)),m.map(u=>{let N=la("user",u.text,0);return(0,l.jsx)(pa,{kind:"user",side:"end",shape:N,avatar:{kind:"brand"},name:ia,footer:u.unconfirmed?(0,l.jsx)("small",{className:"wand-team-chat-unconfirmed",children:"\u672A\u786E\u8BA4"}):null,children:(0,l.jsx)(ma,{shape:N,text:u.text,names:oa,onExpand:_=>Xt(_.currentTarget,`local#${u.sentAt}`,{text:u.text,name:ia,clock:"",typeLabel:"\u6211\u7684\u6D88\u606F",avatar:{kind:"brand"},side:"end",mentionNames:oa})})},`local#${u.sentAt}`)})]}),d.chatSessionId?(0,l.jsxs)("div",{ref:k,className:"task-board-team-chat-input","data-dragging":R||void 0,onDragOver:u=>{u.dataTransfer.types.includes("Files")&&(u.preventDefault(),y(!0))},onDragLeave:u=>{u.currentTarget.contains(u.relatedTarget)||y(!1)},onDrop:u=>{u.dataTransfer.files.length&&(u.preventDefault(),y(!1),Gt(u.dataTransfer.files))},children:[Ca?(0,l.jsx)("p",{className:"task-board-team-chat-hint",children:Ca}):null,(0,l.jsx)("div",{className:"input-composer-row",children:(0,l.jsxs)("div",{className:`input-composer${pe.trim()?" has-text":""}${v==="send"?" in-flight":""}${R?" drag-over":""}`,role:"group","aria-label":"\u6D88\u606F\u7F16\u8F91\u5668",children:[Se.length?(0,l.jsx)(tr.ComposerAttachmentList,{items:Se.map((u,N)=>({index:N,name:u.name,previewUrl:u.previewUrl??null,sizeLabel:u.size<1024?`${u.size} B`:u.size<1024*1024?`${(u.size/1024).toFixed(1)} KB`:`${(u.size/(1024*1024)).toFixed(1)} MB`})),onRemove:u=>Ke.teamChatComposer.edit(oe,{removeAttachment:u})}):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:B,className:"input-textarea",rows:1,value:pe,placeholder:Us,"aria-label":"\u7FA4\u804A\u6D88\u606F",onChange:u=>Ke.teamChatComposer.edit(oe,{text:u.currentTarget.value}),onCompositionStart:()=>{W.current++,Y.current=!0},onCompositionEnd:()=>{let u=W.current;window.setTimeout(()=>{u===W.current&&(Y.current=!1)},0)},onKeyDown:u=>{u.key!=="Enter"||u.shiftKey||u.altKey||u.ctrlKey||u.metaKey||u.nativeEvent.isComposing||u.keyCode===229||Y.current||(u.preventDefault(),ln())},onPaste:u=>{u.clipboardData.files.length&&(u.preventDefault(),Gt(u.clipboardData.files))}})}),(0,l.jsxs)("div",{className:"composer-actions-left",role:"group","aria-label":"\u6DFB\u52A0\u5185\u5BB9",children:[(0,l.jsx)("button",{ref:G,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":et,"aria-expanded":x,onClick:()=>E(u=>!u),children:(0,l.jsx)(Ye.WandIcon,{name:"plus",size:18,strokeWidth:2.2})}),(0,l.jsx)("input",{ref:C,type:"file",accept:"image/*",multiple:!0,hidden:!0,tabIndex:-1,"aria-label":"\u9009\u62E9\u56FE\u7247",onChange:u=>{u.currentTarget.files&&Gt(u.currentTarget.files),u.currentTarget.value="",B.current?.focus()}}),(0,l.jsx)("input",{ref:L,type:"file",multiple:!0,hidden:!0,tabIndex:-1,"aria-label":"\u9009\u62E9\u9644\u4EF6",onChange:u=>{u.currentTarget.files&&Gt(u.currentTarget.files),u.currentTarget.value="",B.current?.focus()}}),(0,l.jsx)("div",{className:"composer-status-row",children:(0,l.jsx)("span",{className:"composer-status-line",role:g?"alert":"status","aria-live":g?"assertive":"polite","data-tone":g?"failed":v?"sending":void 0,title:dn,children:dn})})]}),(0,l.jsxs)("div",{className:"composer-actions-right",role:"group","aria-label":"\u53D1\u9001\u4E0E\u505C\u6B62",children:[Ia==="send-and-stop"?(0,l.jsx)("button",{type:"button",className:"btn-circle btn-circle-action team-chat-stop-action",disabled:Yt||r,title:"\u505C\u6B62\u56E2\u961F","aria-label":"\u505C\u6B62\u56E2\u961F",onClick:()=>{cn()},children:(0,l.jsx)(Ye.WandIcon,{name:"stop",size:16})}):null,(0,l.jsxs)("button",{type:"button",className:"btn-circle btn-circle-send","data-phase":bs,disabled:vs,title:on,"aria-label":on,onClick:()=>{za?cn():ln()},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:j,id:et,role:"dialog","aria-label":"\u66F4\u591A\u64CD\u4F5C","aria-modal":"false","aria-hidden":!x,inert:!x,className:`composer-plus-popover${x?"":" hidden"}`,children:[(0,l.jsx)(Fa.ComposerPopoverAction,{icon:"image",label:"\u4E0A\u4F20\u56FE\u7247",onClick:()=>{E(!1),C.current?.click()}}),(0,l.jsx)(Fa.ComposerPopoverAction,{icon:"paperclip",label:"\u4E0A\u4F20\u9644\u4EF6",onClick:()=>{E(!1),L.current?.click()}})]}),g?(0,l.jsx)("p",{className:"task-board-team-error",role:"alert",children:g}):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)(Ye.WandDialogSurface,{open:se?.phase==="open",onOpenChange:u=>{u||Mt()},title:se?.name??"",description:se?[se.clock,se.typeLabel].filter(Boolean).join(" \xB7 "):void 0,className:["wand-ui-dialog-content","wand-team-chat-doc-dialog",se?.side==="end"?"wand-doc-dx-end":"wand-doc-dx-start",se?.half==="top"?"wand-doc-dy-top":"wand-doc-dy-bottom"].join(" "),testId:"team-chat-doc-dialog",closeLabel:"\u5173\u95ED",children:se?(0,l.jsx)(Ai,{layer:se,onExited:ws}):null})]})}var gr=b($t()),fr=b(mt()),hr=b(ra()),ga=b(pr()),Ie=b(Re()),T=b(Z()),Bt={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"}},Ei={queued:"\u6392\u961F",running:"\u8FDB\u884C\u4E2D",done:"\u5B8C\u6210",failed:"\u5931\u8D25",skipped:"\u8DF3\u8FC7"},vr={needs_input:"\u7B49\u5F85\u56DE\u7B54",needs_permission:"\u7B49\u5F85\u6388\u6743"},Si=["running","awaiting_approval","waiting_user"];function Ni(){let[e,t]=ee.useState(""),[n,a]=ee.useState(null),r=ee.useRef(null);ee.useEffect(()=>()=>{r.current!==null&&window.clearTimeout(r.current)},[]);let d=ee.useCallback(async(i,c)=>{t(i),a(null);let m=!0;try{await c()}catch{m=!1}finally{t("")}a({key:i,ok:m}),r.current!==null&&window.clearTimeout(r.current),r.current=window.setTimeout(()=>{r.current=null,a(null)},m?ga.MOTION_DWELL_SENT_MS:ga.MOTION_DWELL_FAILED_MS)},[]);return{pending:e,flash:n,run:d}}function Rt({id:e,state:t,label:n,pendingLabel:a,kind:r="ghost",disabled:d,onClick:i}){let c=t.flash?.key===e?t.flash:null,m=t.pending===e;return(0,T.jsx)(Ie.WandButton,{kind:r,size:"small","aria-busy":m||void 0,"aria-live":"polite",disabled:d||!!t.pending,onClick:()=>{t.run(e,i)},children:m?a:c?c.ok?"\u5DF2\u5B8C\u6210":"\u5931\u8D25":n})}function Ka(e,t){return e.status==="running"?t&&vr[t]?"waiting":"working":e.status==="done"?"done":e.status==="failed"?"failed":"idle"}function Ci(e,t,n){let a=t.filter(i=>i.memberId===e.id),r=a.find(i=>i.status==="running");if(r)return Ka(r,r.sessionId?n[r.sessionId]:void 0);let d=[...a].reverse().find(i=>i.status!=="queued"&&i.status!=="skipped");return d?Ka(d,void 0):"idle"}function Ii({step:e,steps:t,member:n,memberState:a,open:r,onToggle:d,onOpenSession:i,onComplete:c,actions:m}){let s=n?.name??(e.kind==="leader"?"\u8D1F\u8D23\u4EBA":e.memberId),[g,p]=ee.useState(""),[v,w]=ee.useState(!1),h=e.dispatchInfo?.skipped??[],f=a?vr[a]:void 0,R=e.kind==="work"&&e.status==="running",y=e.status==="queued"?e.dependsOn.map(x=>t.find(E=>E.id===x)).filter(x=>!!x&&x.status!=="done").map(x=>`#${x.seq}`):[];return(0,T.jsxs)("li",{className:"task-board-team-step","data-status":e.status,"data-kind":e.kind,"data-open":r||void 0,children:[n?(0,T.jsx)(Ft.TeamAvatar,{member:n,size:"sm",state:Ka(e,a)}):(0,T.jsx)("span",{}),(0,T.jsxs)("div",{className:"task-board-team-step-card",children:[(0,T.jsxs)("button",{type:"button",className:"task-board-team-step-head","aria-expanded":r,onClick:d,children:[(0,T.jsxs)("span",{className:"task-board-team-step-title",children:[(0,T.jsxs)("small",{children:[s," \xB7 #",e.seq]}),(0,T.jsx)("strong",{children:e.title||(e.kind==="leader"?"\u8D1F\u8D23\u4EBA\u51B3\u7B56":"\u6210\u5458\u6B65\u9AA4")})]}),(0,T.jsx)("span",{className:"task-board-team-step-status",children:f??(y.length?`\u7B49\u5F85 ${y.join("\u3001")}`:Ei[e.status])}),(0,T.jsx)(Ie.WandIcon,{name:"chevronDown",size:14})]}),e.report&&!r?(0,T.jsx)("p",{className:"task-board-team-step-preview",children:e.report}):null,(0,T.jsx)("div",{className:"task-board-team-step-body",inert:!r,children:(0,T.jsxs)("div",{className:"task-board-team-step-inner",children:[e.instructions?(0,T.jsxs)("section",{children:[(0,T.jsx)("h4",{children:e.kind==="leader"?"\u53D1\u7ED9\u8D1F\u8D23\u4EBA":"\u4EFB\u52A1\u8BF4\u660E"}),(0,T.jsx)("pre",{children:e.instructions})]}):null,e.report?(0,T.jsxs)("section",{children:[(0,T.jsx)("h4",{children:e.kind==="leader"?"\u8D1F\u8D23\u4EBA\u8BF4\u660E":"\u62A5\u544A"}),(0,T.jsx)("pre",{children:e.report})]}):null,(0,T.jsxs)("p",{className:"task-board-team-step-meta",children:["\u62A5\u544A\u6587\u4EF6\uFF1A",(0,T.jsx)("code",{children:e.reportPath})]}),e.sessionId&&i?(0,T.jsx)("div",{className:"task-board-native-editor-actions",children:(0,T.jsxs)(Ie.WandButton,{kind:"ghost",size:"small",onClick:()=>i(e.sessionId),children:[(0,T.jsx)(Ie.WandIcon,{name:"terminal",size:14,slot:"start"}),"\u6253\u5F00\u4F1A\u8BDD"]})}):null,R?(0,T.jsxs)("div",{className:"task-board-team-manual",children:[(0,T.jsx)("textarea",{className:"resize-none task-board-detail-body",rows:3,value:g,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:x=>p(x.currentTarget.value)}),(0,T.jsx)(Rt,{id:`complete-${e.id}`,state:m,label:"\u624B\u52A8\u5B8C\u6210\u6B64\u6B65",pendingLabel:"\u63D0\u4EA4\u4E2D\u2026",onClick:()=>c(g)})]}):null]})}),h.length?(0,T.jsxs)("div",{className:"task-board-team-step-skips","data-open":v||void 0,children:[(0,T.jsxs)("button",{type:"button",className:"task-board-team-step-skip-head","aria-expanded":v,onClick:()=>w(x=>!x),children:[(0,T.jsx)(Ie.WandIcon,{name:"warning",size:13}),(0,T.jsxs)("span",{children:["\u5907\u7528\u5019\u9009 ",h.map(x=>x.candidate).join("\u3001")," \u6CA1\u7528\u4E0A"]}),(0,T.jsx)(Ie.WandIcon,{name:"chevronDown",size:14})]}),(0,T.jsx)("div",{className:"task-board-team-step-skip-body",inert:!v,children:(0,T.jsx)("ul",{className:"task-board-team-step-skip-inner",children:h.map(x=>(0,T.jsxs)("li",{children:[(0,T.jsxs)("strong",{children:["\u5019\u9009 ",x.candidate," \xB7 ",(0,fr.issueAgentProviderLabel)(x.agent.provider)]}),(0,T.jsx)("span",{children:x.reason})]},x.candidate))})})]}):null]})]})}var ur=[{value:"chat",label:"\u7FA4\u804A"},{value:"timeline",label:"\u65F6\u95F4\u7EBF"},{value:"members",label:"\u6309\u6210\u5458"}];function Va({detail:e,onChange:t,onOpenSession:n}){let{run:a,steps:r,memberStates:d}=e,i=Ni(),[c,m]=ee.useState(""),[s,g]=ee.useState(""),[p,v]=ee.useState("chat"),[w,h]=ee.useState(""),[f,R]=ee.useState(""),y=Bt[a.status],x=Si.includes(a.status),E=a.stepsUsed>=a.stepLimit,k=a.status==="awaiting_approval"||a.status==="waiting_user",C=Xe(e),L=[...C.members].sort((P,Q)=>Number(Q.isLeader)-Number(P.isLeader)),B=ee.useRef(0),G=ee.useRef(a.id);G.current=a.id,ee.useEffect(()=>{h(""),R("")},[a.id]),ee.useEffect(()=>(G.current=a.id,()=>{G.current=""}),[a.id]);let j=P=>async()=>{let Q=a.id,H=B.current;R("");try{let X=await P();if(G.current!==Q)return;t(X),B.current===H&&h("")}catch(X){throw G.current===Q&&R((0,gr.failureMessage)(X,"\u64CD\u4F5C\u5931\u8D25\u3002")),X}},Y=P=>(0,T.jsx)(Ii,{step:P,steps:r,member:C.members.find(Q=>Q.id===P.memberId),memberState:P.sessionId?d[P.sessionId]:void 0,open:c===P.id,onToggle:()=>m(Q=>Q===P.id?"":P.id),onOpenSession:n,onComplete:Q=>j(()=>Ce.aiTeamsRepository.completeStep(a.id,P.id,Q))(),actions:i},P.id),W=s?r.filter(P=>P.memberId===s):r,ne=s?"timeline":p;return(0,T.jsxs)("div",{className:"task-board-team-run","data-status":a.status,children:[(0,T.jsxs)("div",{className:"task-board-team-run-head",children:[(0,T.jsx)("span",{className:"task-board-team-run-kicker",children:"\u56E2\u961F\u8FD0\u884C"}),(0,T.jsx)(Ft.TeamAvatarStack,{members:C.members,size:"sm"}),(0,T.jsx)("strong",{children:C.name}),(0,T.jsx)(Ie.WandBadge,{tone:y.tone,children:y.label}),(0,T.jsxs)("small",{children:["\u6B65\u6570 ",a.stepsUsed,"/",a.stepLimit]}),a.chatSessionId?(0,T.jsx)(Ie.WandButton,{kind:"secondary",size:"small",onClick:()=>hr.taskBoardController.open("","","teamchat",a.id),children:"\u6253\u5F00\u7FA4\u804A"}):null,x?(0,T.jsx)(Rt,{id:"stop",state:i,kind:"danger",label:"\u505C\u6B62",pendingLabel:"\u505C\u6B62\u4E2D\u2026",onClick:j(()=>Ce.aiTeamsRepository.stop(a.id))}):null]}),(0,T.jsx)("div",{className:"task-board-team-roster",role:"group","aria-label":"\u6210\u5458",children:L.map(P=>{let Q=r.filter(X=>X.memberId===P.id&&X.status!=="skipped"),H=Q.filter(X=>X.status==="done").length;return(0,T.jsxs)("button",{type:"button",className:"task-board-team-roster-item","aria-pressed":s===P.id,title:s===P.id?"\u663E\u793A\u5168\u90E8\u6210\u5458":`\u53EA\u770B${P.name}`,onClick:()=>g(X=>X===P.id?"":P.id),children:[(0,T.jsx)(Ft.TeamAvatar,{member:P,state:Ci(P,r,d),showProvider:!0}),(0,T.jsx)("span",{children:P.name}),(0,T.jsx)("small",{children:Q.length?`${H}/${Q.length}`:"\u5F85\u547D"})]},P.id)})}),e.delivery?.runId===a.id?(0,T.jsx)("div",{hidden:ne==="chat",inert:ne==="chat",children:(0,T.jsx)(Un,{delivery:e.delivery})}):null,k||!e.delivery&&a.statusDetail?(0,T.jsxs)("div",{className:"task-board-team-banner","data-attention":k||void 0,children:[!e.delivery&&a.statusDetail?(0,T.jsx)("p",{children:a.statusDetail}):null,k?(0,T.jsxs)("div",{className:"task-board-team-respond",children:[(0,T.jsx)("textarea",{className:"resize-none task-board-detail-body",rows:3,value:w,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:P=>{B.current++,h(P.currentTarget.value)}}),(0,T.jsx)("div",{className:"task-board-native-editor-actions",children:a.status==="awaiting_approval"?(0,T.jsxs)(T.Fragment,{children:[(0,T.jsx)(Rt,{id:"reject",state:i,label:"\u9000\u56DE\u91CD\u505A",pendingLabel:"\u9000\u56DE\u4E2D\u2026",disabled:!w.trim(),onClick:j(()=>Ce.aiTeamsRepository.reject(a.id,w))}),(0,T.jsx)(Rt,{id:"approve",state:i,kind:"primary",label:"\u6279\u51C6\u8BA1\u5212",pendingLabel:"\u6279\u51C6\u4E2D\u2026",onClick:j(()=>Ce.aiTeamsRepository.approve(a.id))})]}):(0,T.jsxs)(T.Fragment,{children:[E?(0,T.jsx)(Rt,{id:"continue",state:i,label:"\u8FFD\u52A0 10 \u6B65\u7EE7\u7EED",pendingLabel:"\u7EE7\u7EED\u4E2D\u2026",onClick:j(()=>Ce.aiTeamsRepository.continueRun(a.id,10))}):null,(0,T.jsx)(Rt,{id:"reply",state:i,kind:"primary",label:"\u53D1\u9001\u56DE\u590D",pendingLabel:"\u53D1\u9001\u4E2D\u2026",disabled:!w.trim(),onClick:j(()=>Ce.aiTeamsRepository.reply(a.id,w))})]})})]}):null]}):null,f?(0,T.jsx)("p",{className:"task-board-team-error",role:"alert",children:f}):null,s?null:(0,T.jsx)(Ie.WandStretchTabs,{tabs:ur,value:p,ariaLabel:"\u8FD0\u884C\u89C6\u56FE",className:"task-board-team-views",onValueChange:v}),(0,T.jsx)("div",{className:"task-board-team-views-stack",children:ur.map(P=>(0,T.jsxs)("div",{className:"task-board-team-view","data-view":P.value,"data-hidden":ne!==P.value||void 0,inert:ne!==P.value,children:[P.value==="chat"?(0,T.jsx)(Tt,{detail:e,onChange:t,onOpenSession:n}):null,P.value==="timeline"?(0,T.jsx)("ol",{className:"task-board-team-steps",children:W.map(Y)}):null,P.value==="members"?(0,T.jsx)("div",{className:"task-board-team-groups",children:L.map(Q=>{let H=r.filter(X=>X.memberId===Q.id);return(0,T.jsxs)("section",{className:"task-board-team-group",children:[(0,T.jsxs)("header",{children:[(0,T.jsx)("strong",{children:Q.name}),(0,T.jsx)("small",{children:Q.duty})]}),H.length?(0,T.jsx)("ol",{className:"task-board-team-steps",children:H.map(Y)}):(0,T.jsx)("p",{className:"task-board-team-run-detail",children:"\u8FD8\u6CA1\u6709\u5206\u5230\u6B65\u9AA4\u3002"})]},Q.id)})}):null]},P.value))})]})}function br(e){return(0,T.jsx)(zi,{...e},e.taskId)}function zi({taskId:e,refreshKey:t=0,onOpenSession:n}){let[a,r]=ee.useState(null),d=ee.useRef(0),i=ee.useRef(!0);ee.useEffect(()=>(i.current=!0,()=>{i.current=!1,d.current++}),[]);let c=a?.run.id??"",m=ee.useCallback(async()=>{let g=++d.current,p=()=>i.current&&g===d.current;try{let v=await Ce.aiTeamsRepository.runsForTask(e);if(!p())return;let w=v[0]?await Ce.aiTeamsRepository.detail(v[0].id):null;if(!p()||w&&w.run.taskId!==e)return;r(h=>w?$e(h,w):null)}catch{}},[e]);return ee.useEffect(()=>{r(null)},[e]),ee.useEffect(()=>{m()},[m,t]),ee.useEffect(()=>(0,Ce.subscribeAiTeamRunChanges)(g=>{(g.taskId===e||g.runId===c)&&m()}),[c,m,e]),ee.useEffect(()=>(0,Ce.subscribeAiTeamDefinitionChanges)(g=>{g===a?.run.teamId&&m()}),[a?.run.teamId,m]),a?(0,T.jsx)("section",{className:"task-board-team","aria-label":"AI \u56E2\u961F",children:(0,T.jsx)(Va,{detail:a,onChange:g=>{!i.current||g.run.taskId!==e||g.run.id!==c||(d.current++,r(p=>$e(p,g)))},onOpenSession:n},a.run.id)}):null}var ts=b(Da()),rn=b(Ya()),Ta=b(xr()),ce=b(Tr()),as=b(Xa()),U=b(Re()),be=b(xt()),ze=b(Wt());var gt=b(Te()),Ht=b(Re());var Ar=b(mt());function fa(e){return e===0?"\u9996\u9009":`\u5907\u7528 ${e+1}`}function Ga(e){if(e.length>=4)return e;let t=e[e.length-1];return[...e,t?{...t}:(0,Ar.createDefaultIssueAgent)()]}function Ja(e,t,n){return e.map((a,r)=>r===t?{...n}:a)}function Qa(e,t){return e.length<=1?e:e.filter((n,a)=>a!==t)}function Za(e,t,n){let a=t+n;if(a<0||a>=e.length)return e;let r=[...e],d=r[t];return r[t]=r[a],r[a]=d,r}function ha(e){let t=new Set,n=[];return e.forEach((a,r)=>{let d=un(a);t.has(d)?n.push(r):t.add(d)}),n}function it(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=ha(e);return t.length>0?`\u5019\u9009\u300C${fa(t[0])}\u300D\u4E0E\u66F4\u9760\u524D\u7684\u914D\u7F6E\u76F8\u540C\uFF0C\u6539\u4E00\u9879\u5373\u53EF\u3002`:""}var Nr=b(Sr());var re=b(Z());function Mi({id:e,agent:t,index:n,total:a,catalog:r,providerOptions:d,disabled:i,duplicate:c,ariaPrefix:m,structuredOnly:s=!1,onChange:g,onMove:p,onRemove:v}){let w=gt.useRef(null),h=fa(n);return(0,re.jsx)("div",{ref:w,"data-candidate-id":e,className:"wand-team-candidate","data-candidate-index":n,"data-duplicate":c||void 0,children:(0,re.jsxs)("div",{className:"wand-team-candidate-inner",children:[(0,re.jsx)("span",{className:"wand-team-candidate-tag",children:h}),(0,re.jsx)("div",{className:"wand-ai-team-member-agent",children:(0,re.jsx)(Nr.AgentFields,{agent:t,disabled:i,catalog:r,providerOptions:d,ariaPrefix:`${m} ${h}`,showKind:!s,onChange:f=>g(s?{...f,kind:"structured"}:f)})}),(0,re.jsxs)("div",{className:"wand-team-candidate-tools",children:[(0,re.jsx)("button",{type:"button",className:"wand-team-candidate-tool","data-tool":"up",title:"\u4E0A\u79FB","aria-label":`\u628A${h}\u4E0A\u79FB`,disabled:i||n===0,onClick:()=>p(-1),children:(0,re.jsx)(Ht.WandIcon,{name:"chevronUp",size:14})}),(0,re.jsx)("button",{type:"button",className:"wand-team-candidate-tool","data-tool":"down",title:"\u4E0B\u79FB","aria-label":`\u628A${h}\u4E0B\u79FB`,disabled:i||n===a-1,onClick:()=>p(1),children:(0,re.jsx)(Ht.WandIcon,{name:"chevronDown",size:14})}),(0,re.jsx)("button",{type:"button",className:"wand-team-candidate-tool","data-tool":"remove",title:a<=1?"\u81F3\u5C11\u8981\u4FDD\u7559 1 \u4E2A\u5019\u9009":"\u5220\u9664\u8BE5\u5019\u9009","aria-label":`\u5220\u9664${h}`,disabled:i||a<=1,onClick:v,children:(0,re.jsx)(Ht.WandIcon,{name:"close",size:14})})]})]})})}function At({agents:e,label:t,catalog:n,providerOptions:a,disabled:r,structuredOnly:d=!1,onChange:i}){let c=gt.useRef(null),m=gt.useRef(new Map),s=gt.useRef([]);for(;s.current.length<e.length;)s.current.push(`c_${Math.random().toString(36).slice(2,9)}`);s.current.length>e.length&&(s.current=s.current.slice(0,e.length)),gt.useLayoutEffect(()=>{let f=c.current;if(!f)return;let R=Array.from(f.children).filter(E=>E instanceof HTMLElement&&E.hasAttribute("data-candidate-id")),y=new Map;R.forEach(E=>{let k=E.getAttribute("data-candidate-id");k&&y.set(k,E.getBoundingClientRect().top)});let x=typeof window<"u"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches;R.forEach(E=>{let k=E.getAttribute("data-candidate-id");if(!k)return;let C=m.current.get(k),L=y.get(k);if(C!==void 0&&L!==void 0&&C!==L){if(x){E.style.transform="",E.style.transition="";return}let B=C-L;E.style.transform=`translateY(${B}px)`,E.style.transition="none",requestAnimationFrame(()=>{E.style.transition="transform var(--motion-normal) var(--ease-in-out-smooth)",E.style.transform=""})}}),m.current=y});let g=ha(e),p=it(e),v=()=>{let f=Ga(e);f!==e&&(s.current.push(`c_${Math.random().toString(36).slice(2,9)}`),i(f))},w=f=>{e.length<=1||(s.current.splice(f,1),i(Qa(e,f)))},h=(f,R)=>{let y=f+R;if(y<0||y>=e.length)return;let x=s.current[f];s.current[f]=s.current[y],s.current[y]=x,i(Za(e,f,R))};return(0,re.jsxs)("div",{ref:c,className:"wand-team-candidates",role:"group","aria-label":`${t} \u7684\u6267\u884C\u5019\u9009`,children:[(0,re.jsxs)("header",{className:"wand-team-candidates-head",children:[(0,re.jsx)("span",{children:"\u6267\u884C\u5019\u9009"}),(0,re.jsxs)("small",{children:["\u9996\u9009\u4E0D\u53EF\u7528\u65F6\u6309\u987A\u5E8F\u81EA\u52A8\u964D\u7EA7\uFF0C\u6700\u591A ",4," \u4E2A"]})]}),e.map((f,R)=>{let y=s.current[R]||`row-${R}`;return(0,re.jsx)(Mi,{id:y,agent:f,index:R,total:e.length,catalog:n,providerOptions:a,disabled:r,duplicate:g.includes(R),ariaPrefix:t,structuredOnly:d,onChange:x=>i(Ja(e,R,x)),onMove:x=>h(R,x),onRemove:()=>w(R)},y)}),(0,re.jsxs)("div",{className:"wand-team-candidates-foot",children:[(0,re.jsxs)("button",{type:"button",className:"wand-team-candidate-add",disabled:r||e.length>=4,title:e.length>=4?`\u5DF2\u7ECF\u5230 ${4} \u4E2A\u5019\u9009\u4E0A\u9650`:"\u5728\u672B\u5C3E\u52A0\u4E00\u4E2A\u5907\u7528\u5019\u9009",onClick:v,children:[(0,re.jsx)(Ht.WandIcon,{name:"plus",size:14}),(0,re.jsx)("span",{children:"\u6DFB\u52A0\u5019\u9009"})]}),p?(0,re.jsx)("small",{className:"wand-team-candidate-error",role:"alert",children:p}):null]})]})}var ft=b(Te());var lt=b(Re());var Je=b(Te());var Ge=b(Te());var jt=b(Pt()),Cr=b(Re()),Ir=b(Dt()),Le=b(Z()),Li={communication:"\u6C9F\u901A",workflow:"\u5DE5\u4F5C\u65B9\u5F0F",focus:"\u8FD1\u671F\u5173\u6CE8"};function zr({active:e}){let[t,n]=Ge.useState(null),[a,r]=Ge.useState(null),[d,i]=Ge.useState({}),[c,m]=Ge.useState(""),s=Ge.useRef(0);Ge.useEffect(()=>{let p=++s.current;if(r(null),!!e)return n(null),(0,jt.requestJson)("/api/user-memory").then(v=>{s.current===p&&(n(v),m(""))}).catch(v=>{s.current===p&&m(v instanceof Error?v.message:"\u8BFB\u53D6\u8BB0\u5FC6\u5931\u8D25\u3002")}),()=>{s.current++}},[e]);let g=async p=>{if(!t||a)return;let v=++s.current;r(p),i(w=>({...w,[p]:""})),m("");try{let w=await(0,jt.requestJson)(p==="refresh"?"/api/user-memory/refresh":"/api/user-memory",p==="toggle"?(0,jt.jsonBody)({enabled:!t.enabled},"PATCH"):{method:p==="clear"?"DELETE":"POST"});if(s.current!==v)return;n(w),i(h=>({...h,[p]:p==="toggle"?w.enabled?"\u5DF2\u5F00\u542F":"\u5DF2\u6682\u505C":p==="clear"?"\u5DF2\u6E05\u7A7A":w.updated?"\u5DF2\u66F4\u65B0":"\u6682\u65E0\u65B0\u8BB0\u5FC6"})),(0,Ir.notifySiliconEmployeeDefinitionChanged)(vn)}catch(w){if(s.current!==v)return;i(h=>({...h,[p]:"\u64CD\u4F5C\u5931\u8D25"})),m(w instanceof Error?w.message:"\u8BB0\u5FC6\u64CD\u4F5C\u5931\u8D25\u3002")}finally{s.current===v&&r(null)}};return(0,Le.jsxs)("section",{className:"wand-employee-memory","aria-label":"\u7528\u6237\u77ED\u671F\u8BB0\u5FC6",children:[(0,Le.jsx)("strong",{children:"\u7528\u6237\u77ED\u671F\u8BB0\u5FC6"}),(0,Le.jsx)("p",{children:"\u53EA\u53C2\u8003\u6700\u8FD1 30 \u5929\u7684\u6709\u6548\u63D0\u793A\u8BCD\u4E0E\u6210\u529F\u7684\u5173\u952E\u64CD\u4F5C\uFF0C\u6BCF\u5929\u6574\u7406\u4E00\u6B21\u3002\u5185\u5BB9\u4F1A\u7ECF\u654F\u611F\u4FE1\u606F\u8FC7\u6EE4\uFF0C\u6574\u7406\u4ECD\u7531\u7CFB\u7EDF\u8FD0\u7EF4\u5458\u5DE5\u7684 CLI \u5019\u9009\u6267\u884C\uFF1B\u8BF7\u52FF\u63D0\u4EA4\u51ED\u636E\u3002\u4E0D\u4F1A\u4FEE\u6539\u5DF2\u6709\u4F1A\u8BDD\u3001\u5176\u4ED6\u5458\u5DE5\u6216\u5DE5\u5177\u6743\u9650\u3002"}),(0,Le.jsx)("div",{className:"wand-employee-memory-actions",children:["toggle","refresh","clear"].map(p=>(0,Le.jsx)(Cr.WandButton,{size:"small",kind:"ghost",disabled:!t||!!a||p==="refresh"&&!t.enabled,"aria-busy":a===p,onClick:()=>{g(p)},children:a===p?"\u5904\u7406\u4E2D\u2026":d[p]||(p==="toggle"?t?.enabled?"\u6682\u505C\u8BB0\u5FC6":"\u6062\u590D\u8BB0\u5FC6":p==="refresh"?"\u6574\u7406\u8BB0\u5FC6":"\u6E05\u7A7A\u8BB0\u5FC6")},p))}),(0,Le.jsx)("p",{"aria-live":"polite",children:t?`${t.enabled?"\u5DF2\u5F00\u542F":"\u5DF2\u6682\u505C"} \xB7 ${t.eventCount} \u6761\u8FD1\u671F\u8BB0\u5F55${t.profile?` \xB7 \u6700\u8FD1\u6574\u7406 ${new Date(t.profile.generatedAt).toLocaleString()}`:" \xB7 \u5C1A\u672A\u5F62\u6210\u504F\u597D"}`:"\u6B63\u5728\u8BFB\u53D6\u8BB0\u5FC6\u2026"}),t?.profile?.preferences.length?(0,Le.jsx)("ul",{children:t.profile.preferences.map((p,v)=>(0,Le.jsxs)("li",{children:[(0,Le.jsxs)("span",{children:[Li[p.category],"\uFF1A"]}),p.text]},`${p.category}-${v}`))}):null,c||t?.lastError?(0,Le.jsx)("p",{role:"alert",className:"wand-team-candidate-error",children:c||t?.lastError}):null]})}var We=b(Te()),en=b(Pt()),va=b(Re()),Ee=b(Z()),_i=180;function Mr({employeeId:e,active:t}){let[n,a]=We.useState(null),[r,d]=We.useState(""),[i,c]=We.useState(null),[m,s]=We.useState({refresh:"",clear:""}),[g,p]=We.useState(!1),[v,w]=We.useState(""),h=We.useRef(0),f=`/api/silicon-employees/${encodeURIComponent(e)}/knowledge`;We.useEffect(()=>{let y=++h.current;if(p(!1),c(null),!t)return;a(null);let x=setTimeout(()=>{(0,en.requestJson)(`${f}?q=${encodeURIComponent(r)}`).then(E=>{h.current===y&&(a(E),w(""))}).catch(E=>{h.current===y&&w(E instanceof Error?E.message:"\u8BFB\u53D6\u77E5\u8BC6\u5E93\u5931\u8D25\u3002")})},r?_i:0);return()=>{clearTimeout(x),h.current++}},[t,e,r]);let R=async y=>{if(!n||i)return;if(y==="clear"&&!g){p(!0);return}let x=++h.current;c(y),w(""),s(E=>({...E,[y]:""}));try{let E=await(0,en.requestJson)(y==="clear"?f:`${f}?q=${encodeURIComponent(r)}`,{method:y==="clear"?"DELETE":"GET"});if(h.current!==x)return;a(E),p(!1),s(k=>({...k,[y]:y==="clear"?"\u5DF2\u6E05\u7A7A":"\u5DF2\u5237\u65B0"}))}catch(E){if(h.current!==x)return;s(k=>({...k,[y]:"\u64CD\u4F5C\u5931\u8D25"})),w(E instanceof Error?E.message:"\u77E5\u8BC6\u5E93\u64CD\u4F5C\u5931\u8D25\u3002")}finally{h.current===x&&c(null)}};return(0,Ee.jsxs)("section",{className:"wand-employee-memory","aria-label":"\u5458\u5DE5\u72EC\u7ACB\u77E5\u8BC6\u5E93",children:[(0,Ee.jsx)("strong",{children:"\u81EA\u5DF1\u7684\u77E5\u8BC6\u5E93"}),(0,Ee.jsx)("p",{children:"\u5BF9\u8FD9\u4F4D\u5458\u5DE5\u8BF4\u300C\u8BB0\u4E00\u4E0B\uFF1A\u2026\u300D\u5373\u53EF\u4FDD\u5B58\uFF1B\u53EA\u5C5E\u4E8E\u8FD9\u4F4D\u5458\u5DE5\uFF0C\u6539\u540D\u3001\u6362\u4F1A\u8BDD\u4ECD\u4FDD\u7559\uFF0C\u4E0D\u968F\u77ED\u671F\u4E60\u60EF\u8FC7\u671F\u3002\u6BCF\u6761\u6700\u591A4000\u5B57\u7B26\uFF0C\u4E0D\u4FDD\u5B58\u51ED\u636E\u3002"}),(0,Ee.jsx)("div",{className:"wand-employee-knowledge-actions",children:["refresh","clear"].map(y=>(0,Ee.jsx)(va.WandButton,{size:"small",kind:"ghost",disabled:!n||!!i,"aria-busy":i===y,onClick:()=>{R(y)},children:i===y?"\u5904\u7406\u4E2D\u2026":y==="clear"&&g?"\u786E\u8BA4\u6E05\u7A7A":m[y]||(y==="clear"?"\u6E05\u7A7A\u77E5\u8BC6\u5E93":"\u5237\u65B0\u77E5\u8BC6")},y))}),(0,Ee.jsx)("p",{role:"status",children:g?"\u518D\u6B21\u70B9\u51FB\u786E\u8BA4\uFF0C\u53EA\u6E05\u7A7A\u6B64\u5458\u5DE5\u3002":"\u660E\u786E\u77E5\u8BC6\u4F1A\u4FDD\u7559\uFF0C\u76F4\u5230\u4F60\u5220\u9664\u3002"}),(0,Ee.jsx)(va.WandSearchField,{value:r,onValueChange:d,label:"\u641C\u7D22\u8FD9\u4F4D\u5458\u5DE5\u7684\u77E5\u8BC6",placeholder:"\u641C\u7D22\u81EA\u5DF1\u7684\u77E5\u8BC6\u2026"}),(0,Ee.jsx)("p",{"aria-live":"polite",children:n?`${n.total} / ${n.maxEntries} \u6761\u77E5\u8BC6`:"\u6B63\u5728\u8BFB\u53D6\u2026"}),(0,Ee.jsxs)("ul",{className:"wand-employee-knowledge-list",children:[n?.entries.map(y=>(0,Ee.jsx)("li",{children:y.content},y.id)),n?.entries.length===0?(0,Ee.jsx)("li",{children:r?"\u6CA1\u6709\u5339\u914D\u7684\u77E5\u8BC6\u3002":"\u8FD8\u6CA1\u6709\u660E\u786E\u8BB0\u5F55\u7684\u77E5\u8BC6\u3002"}):null]}),v?(0,Ee.jsx)("p",{role:"alert",className:"wand-team-candidate-error",children:v}):null]})}var Et=b(Z());function ba({id:e,value:t,disabled:n,onChange:a}){return(0,Et.jsxs)("div",{className:"wand-settings-field",children:[(0,Et.jsx)("label",{className:"wand-settings-label",htmlFor:e,children:"\u6807\u7B7E"}),(0,Et.jsx)("input",{id:e,type:"text",className:"wand-settings-input",value:t,placeholder:"\u4F8B\u5982\uFF1A\u5F00\u53D1\u3001\u6D4B\u8BD5\u3001\u8BBE\u8BA1\uFF08\u7528\u9017\u53F7\u5206\u9694\uFF09","aria-describedby":`${e}-hint`,disabled:n,onChange:r=>a(r.target.value)}),(0,Et.jsxs)("p",{id:`${e}-hint`,className:"wand-employee-hint",children:["\u6700\u591A ",Jt," \u4E2A\uFF0C\u6BCF\u4E2A ",Qt," \u5B57\uFF1B \u300C\u7CFB\u7EDF\u7528\u6237\u300D\u300C\u9ED8\u8BA4\u7528\u6237\u300D\u7531\u7CFB\u7EDF\u4FDD\u7559\uFF0C\u4E0D\u80FD\u81EA\u5B9A\u4E49\u3002"]})]})}var Qe=b(Re());var Or=b(Te()),ot=b(xt()),Fr=b(_r()),wa=b(Re());var ya=b(Pr()),Br=b(Wr()),ve=b(Z());function tn({employee:e,provider:t,size:n="md",className:a=""}){let r=e.avatar?.startsWith("data:image/")?e.avatar:"",d=(0,ya.employeeAvatarProvider)(e,t),i=d?(0,ya.employeeCliLabel)(d):"",c=`wand-team-avatar wand-employee-avatar ${a}`.trim();return(0,ve.jsxs)("span",{className:c,"data-size":n,title:e.name,children:[(0,ve.jsx)("span",{className:"wand-team-avatar-face",children:r?(0,ve.jsx)("img",{src:r,alt:""}):(0,ve.jsx)(ot.PixelCat,{coat:(0,ot.memberCoatIndex)(e)})}),d?(0,ve.jsx)("span",{className:"wand-employee-avatar-provider",role:"img","aria-label":i,title:i,children:(0,ve.jsx)(Br.ProviderLogo,{provider:d})}):null]})}function xa({avatar:e,name:t,disabled:n,onChange:a}){let r=Or.useRef(null),d=(0,ot.memberCoatIndex)({id:"custom",name:t,avatar:e}),i=c=>{let m=c.target.files?.[0];m&&(0,ot.shrinkAvatarImage)(m,fn).then(s=>{a(s)}).catch(s=>{console.error("\u7F29\u5C0F\u5934\u50CF\u5931\u8D25",s)})};return(0,ve.jsxs)("div",{className:"wand-team-avatar-picker",role:"group","aria-label":"\u5458\u5DE5\u5934\u50CF",children:[(0,ve.jsx)(tn,{employee:{id:"preview",name:t,avatar:e},size:"lg"}),Fr.CAT_COATS.map((c,m)=>(0,ve.jsx)("button",{type:"button",className:"wand-team-coat",title:c.name,"aria-label":c.name,"aria-pressed":!e.startsWith("data:")&&d===m,disabled:n,onClick:()=>a(`cat:${m}`),children:(0,ve.jsx)(ot.PixelCat,{coat:m})},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)(wa.WandIcon,{name:"image",size:14})}),(0,ve.jsx)("input",{ref:r,type:"file",accept:"image/*",hidden:!0,onChange:i}),e?(0,ve.jsx)(wa.WandButton,{kind:"ghost",size:"small",disabled:n,onClick:()=>a(""),children:"\u91CD\u7F6E"}):null]})}var Hr=b(mt());var D=b(Z());function jr({employee:e,catalog:t,providerOptions:n,onSave:a,onArchive:r,onUnarchive:d,onDelete:i}){let[c,m]=Je.useState(!1),[s,g]=Je.useState(e),[p,v]=Je.useState(!1),[w,h]=Je.useState(()=>nt(e).join("\uFF0C")),[f,R]=Je.useState("idle"),[y,x]=Je.useState(null);Je.useEffect(()=>{g(e),h(nt(e).join("\uFF0C"))},[e]);let E=()=>{p||(R("idle"),h(nt(e).join("\uFF0C")),c?(g(e),x(null),m(!1)):m(!0))},k=async()=>{R("failed");let W=s.agents.some(ne=>ne.kind!=="structured")?"\u7845\u57FA\u5458\u5DE5\u53EA\u80FD\u4F7F\u7528\u7ED3\u6784\u5316\u5019\u9009\u3002":it(s.agents);if(W){x(W);return}if(!s.name.trim()){x("\u5458\u5DE5\u540D\u5B57\u4E0D\u80FD\u4E3A\u7A7A\u3002");return}try{v(!0),x(null);let ne=_t(e)?nt(e):aa(w);await a({...s,tags:ne}),R("saved")}catch(ne){x(ne instanceof Error?ne.message:String(ne)),R("failed")}finally{v(!1)}},C=!!e.archivedAt,L=_t(e),B=ta(e),G=B?ea:Zt,j=nt(e);return(0,D.jsxs)("article",{className:`wand-team-member wand-employee-card${C?" is-archived":""}${L?" is-system":""}`,"data-open":c||void 0,"data-employee-id":e.id,onChange:()=>{R("idle"),x(null)},onKeyDown:W=>{W.key==="Escape"&&!W.defaultPrevented&&c&&!p&&(W.preventDefault(),E())},children:[(0,D.jsxs)("button",{type:"button",className:"wand-team-member-head","aria-expanded":c,onClick:E,children:[(0,D.jsx)(tn,{employee:e,size:"lg"}),(0,D.jsxs)("span",{className:"wand-team-member-copy",children:[(0,D.jsxs)("strong",{children:[e.name,L?(0,D.jsx)("em",{className:"wand-employee-system-tag",children:G}):null,C?(0,D.jsx)("em",{className:"wand-employee-archived-tag",children:"\u5DF2\u5F52\u6863"}):null]}),L?null:(0,D.jsx)("span",{className:"wand-employee-tags","aria-label":`\u5458\u5DE5\u6807\u7B7E\uFF1A${j.join("\u3001")||"\u6682\u65E0"}`,children:j.length?j.map(W=>(0,D.jsx)("em",{className:"wand-employee-tag",children:W},W)):(0,D.jsx)("small",{children:"\u6682\u65E0\u6807\u7B7E"})}),(0,D.jsx)("small",{children:e.duty||"\u8FD8\u6CA1\u5199\u804C\u8D23"}),(0,D.jsxs)("span",{className:"wand-team-member-agent",children:[e.agents[0]?(0,Hr.issueAgentProviderModelLine)(e.agents[0],t):"\u672A\u914D\u7F6E\u5019\u9009",e.agents.length>1?` (+${e.agents.length-1} \u4E2A\u5907\u7528)`:null]})]}),(0,D.jsx)(Qe.WandIcon,{name:"chevronDown",size:14})]}),(0,D.jsx)("div",{className:"wand-team-member-body",inert:!c,children:(0,D.jsxs)("div",{className:"wand-team-member-inner",children:[L?(0,D.jsxs)("div",{className:"wand-employee-system-note",role:"note",children:[(0,D.jsx)("strong",{children:G}),(0,D.jsx)("span",{children:B?"\u9009\u62E9 CLI \u6216\u672A\u9009\u62E9\u5458\u5DE5\u65F6\u4F7F\u7528\u8FD9\u4E2A\u9ED8\u8BA4\u89D2\u8272\uFF1B\u4F60\u9009\u7684\u5DE5\u5177\u3001\u6A21\u578B\u4E0E\u6743\u9650\u4FDD\u6301\u4E0D\u53D8\u3002\u5185\u7F6E\u6807\u7B7E\u3001\u540D\u5B57\u4E0E\u57FA\u7840\u8BBE\u5B9A\u56FA\u5B9A\uFF0C\u5DE5\u4F5C\u98CE\u683C\u7531\u77ED\u671F\u8BB0\u5FC6\u5B9A\u671F\u8C03\u6574\uFF1B\u4E0B\u9762\u7684\u5019\u9009\u7528\u4E8E\u76F4\u63A5\u627E\u8FD9\u4F4D\u5458\u5DE5\u6216\u672A\u914D\u7F6E\u5DE5\u5177\u7684\u4EFB\u52A1\u3002":"Wand \u5185\u7F6E\u5458\u5DE5\uFF1A\u6807\u7B7E\u3001\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,D.jsxs)(D.Fragment,{children:[(0,D.jsxs)("div",{className:"wand-settings-field",children:[(0,D.jsx)("label",{className:"wand-settings-label",htmlFor:`employee-${e.id}-name`,children:"\u540D\u5B57"}),(0,D.jsx)("input",{id:`employee-${e.id}-name`,type:"text",className:"wand-settings-input",value:s.name,placeholder:"\u5458\u5DE5\u540D\u5B57",disabled:p,onChange:W=>g({...s,name:W.target.value})})]}),(0,D.jsx)(ba,{id:`employee-${e.id}-tags`,value:w,disabled:p,onChange:h}),(0,D.jsx)(xa,{avatar:s.avatar,name:s.name,disabled:p,onChange:W=>g({...s,avatar:W})}),(0,D.jsxs)("div",{className:"wand-settings-field",children:[(0,D.jsx)("label",{className:"wand-settings-label",htmlFor:`employee-${e.id}-duty`,children:"\u804C\u8D23"}),(0,D.jsx)("textarea",{id:`employee-${e.id}-duty`,className:"wand-settings-input resize-none",rows:2,value:s.duty,placeholder:"\u4E00\u53E5\u8BDD\u804C\u8D23\uFF1A\u5728\u4FA7\u680F\u3001\u9009\u62E9\u5668\u548C\u7F72\u540D\u4E2D\u663E\u793A",disabled:p,onChange:W=>g({...s,duty:W.target.value})})]}),(0,D.jsxs)("div",{className:"wand-settings-field",children:[(0,D.jsx)("label",{className:"wand-settings-label",htmlFor:`employee-${e.id}-prompt`,children:"\u89D2\u8272\u8BBE\u5B9A (Prompt)"}),(0,D.jsx)("textarea",{id:`employee-${e.id}-prompt`,className:"wand-settings-input resize-none",rows:4,value:s.prompt,placeholder:"\u8BBE\u5B9A\u89D2\u8272\u7684\u4E13\u4E1A\u80FD\u529B\u3001\u884C\u4E3A\u5B88\u5219\u4E0E\u4EA4\u4ED8\u4E60\u60EF\uFF08\u521B\u5EFA\u4F1A\u8BDD\u65F6\u4F5C\u4E3A\u7CFB\u7EDF\u63D0\u793A\u751F\u6548\uFF09",disabled:p,onChange:W=>g({...s,prompt:W.target.value})})]})]}),B?(0,D.jsxs)(D.Fragment,{children:[(0,D.jsx)(zr,{active:c}),(0,D.jsxs)("div",{className:"wand-settings-field",children:[(0,D.jsx)("label",{className:"wand-settings-label",htmlFor:`employee-${e.id}-prompt`,children:"\u5F53\u524D\u89D2\u8272\u8BBE\u5B9A"}),(0,D.jsx)("textarea",{id:`employee-${e.id}-prompt`,className:"wand-settings-input resize-none",rows:6,value:e.prompt,readOnly:!0})]})]}):null,(0,D.jsx)(Mr,{employeeId:e.id,active:c}),(0,D.jsx)(At,{agents:s.agents,label:s.name||"\u5458\u5DE5",catalog:t,providerOptions:n,disabled:p,structuredOnly:!0,onChange:W=>{R("idle"),g({...s,agents:W})}}),(0,D.jsxs)("div",{className:"wand-team-member-actions",children:[(0,D.jsx)(Qe.WandButton,{kind:"primary",size:"small",className:"wand-employee-save-submit","aria-busy":p||void 0,disabled:p,onClick:k,children:p?"\u4FDD\u5B58\u4E2D\u2026":f==="saved"?"\u5DF2\u4FDD\u5B58":f==="failed"?"\u4FDD\u5B58\u5931\u8D25":"\u4FDD\u5B58\u4FEE\u6539"}),(0,D.jsx)(Qe.WandButton,{kind:"ghost",size:"small",disabled:p,onClick:E,children:"\u53D6\u6D88"}),L?null:C?(0,D.jsx)(Qe.WandButton,{kind:"ghost",size:"small",disabled:p,onClick:d,children:"\u6062\u590D"}):(0,D.jsx)(Qe.WandButton,{kind:"ghost",size:"small",disabled:p,onClick:r,children:"\u5F52\u6863"}),L?null:(0,D.jsxs)(Qe.WandButton,{kind:"ghost",size:"small",disabled:p,onClick:i,children:[(0,D.jsx)(Qe.WandIcon,{name:"trash",size:14,slot:"start"}),"\u5220\u9664"]})]}),y?(0,D.jsx)("div",{className:"wand-team-candidate-error",role:"alert",children:y}):null]})})]})}var _e=b(Te()),Ze=b(Re());var Ur=b(mt()),an=b(Dt());var J=b(Z());function qr({catalog:e,providerOptions:t,onSave:n,onCancel:a}){let[r,d]=_e.useState(""),[i,c]=_e.useState(!1),[m,s]=_e.useState(""),[g,p]=_e.useState(""),[v,w]=_e.useState(""),[h,f]=_e.useState(""),[R,y]=_e.useState(""),[x,E]=_e.useState(()=>[{...(0,Ur.createDefaultIssueAgent)(),kind:"structured"}]),[k,C]=_e.useState(!1),[L,B]=_e.useState(!1),[G,j]=_e.useState(null),Y=H=>H instanceof Error?H.message:String(H),W=()=>{if(!m.trim())return j("\u5458\u5DE5\u540D\u5B57\u4E0D\u80FD\u4E3A\u7A7A\uFF1B\u4E5F\u53EF\u4EE5\u7559\u7A7A\u8BA9 AI \u6309\u671F\u671B\u751F\u6210\u3002"),null;let H=x.some(X=>X.kind!=="structured")?"\u7845\u57FA\u5458\u5DE5\u53EA\u80FD\u4F7F\u7528\u7ED3\u6784\u5316\u5019\u9009\u3002":it(x);return H?(j(H),null):{name:m,duty:g,prompt:v,avatar:h,agents:x}},ne=async()=>{let H;try{H=aa(R)}catch(X){j(Y(X));return}if(i&&m.trim()){let X=W();if(!X)return;try{C(!0),j(null),await n({...X,tags:H})}catch(se){j(Y(se))}finally{C(!1)}return}if(!r.trim()){j("\u5148\u8BF4\u8BF4\u4F60\u5BF9\u8FD9\u4F4D\u5458\u5DE5\u7684\u671F\u671B\u5427\u3002");return}try{C(!0),j(null);let X=await an.siliconEmployeesRepository.draft(r);await n({name:X.name,duty:X.duty,prompt:X.prompt,avatar:"",tags:H,agents:[X.agent]})}catch(X){j(Y(X))}finally{C(!1)}},P=async()=>{if(!r.trim()){j("\u5148\u5728\u4E0A\u9762\u5199\u4E0B\u4F60\u7684\u671F\u671B\uFF0C\u518D\u8BA9 AI \u8D77\u8349\u3002");return}try{B(!0),j(null);let H=await an.siliconEmployeesRepository.draft(r);s(H.name),p(H.duty),w(H.prompt),f(""),E([H.agent])}catch(H){j(Y(H))}finally{B(!1)}},Q=i&&m.trim().length>0;return(0,J.jsx)("div",{className:"wand-team-member wand-employee-card is-new","data-open":"true",children:(0,J.jsx)("div",{className:"wand-team-member-body",children:(0,J.jsxs)("div",{className:"wand-team-member-inner",children:[(0,J.jsxs)("div",{className:"wand-settings-field",children:[(0,J.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-expectation",children:"\u60F3\u8981\u4EC0\u4E48\u6837\u7684\u5458\u5DE5"}),(0,J.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:H=>d(H.target.value)}),(0,J.jsx)("p",{className:"wand-employee-hint",children:Q?"\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,J.jsx)(ba,{id:"new-employee-tags",value:R,disabled:k||L,onChange:y}),(0,J.jsx)("div",{className:"wand-employee-advanced-toggle","data-open":i||void 0,children:(0,J.jsxs)(Ze.WandButton,{kind:"ghost",size:"small","aria-expanded":i,disabled:k,onClick:()=>c(H=>!H),children:[(0,J.jsx)(Ze.WandIcon,{name:"sliders",size:14,slot:"start"}),"\u9AD8\u7EA7\u914D\u7F6E",(0,J.jsx)(Ze.WandIcon,{name:"chevronDown",size:14,slot:"end"})]})}),(0,J.jsx)("section",{className:"wand-employee-advanced","data-open":i||void 0,"aria-hidden":!i,inert:!i,children:(0,J.jsxs)("div",{className:"wand-employee-advanced-inner",children:[(0,J.jsxs)("div",{className:"wand-settings-field",children:[(0,J.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-name",children:"\u540D\u5B57"}),(0,J.jsx)("input",{id:"new-employee-name",type:"text",className:"wand-settings-input",value:m,placeholder:"\u5458\u5DE5\u540D\u5B57",disabled:k||L,onChange:H=>s(H.target.value)})]}),(0,J.jsx)(xa,{avatar:h,name:m,disabled:k||L,onChange:f}),(0,J.jsxs)("div",{className:"wand-settings-field",children:[(0,J.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-duty",children:"\u804C\u8D23"}),(0,J.jsx)("textarea",{id:"new-employee-duty",className:"wand-settings-input resize-none",rows:2,value:g,placeholder:"\u4E00\u53E5\u8BDD\u804C\u8D23\uFF1A\u5728\u4FA7\u680F\u3001\u9009\u62E9\u5668\u548C\u7F72\u540D\u4E2D\u663E\u793A",disabled:k||L,onChange:H=>p(H.target.value)})]}),(0,J.jsxs)("div",{className:"wand-settings-field",children:[(0,J.jsx)("label",{className:"wand-settings-label",htmlFor:"new-employee-prompt",children:"\u89D2\u8272\u8BBE\u5B9A (Prompt)"}),(0,J.jsx)("textarea",{id:"new-employee-prompt",className:"wand-settings-input resize-none",rows:4,value:v,placeholder:"\u8BBE\u5B9A\u89D2\u8272\u7684\u4E13\u4E1A\u80FD\u529B\u3001\u884C\u4E3A\u5B88\u5219\u4E0E\u4EA4\u4ED8\u4E60\u60EF\uFF08\u521B\u5EFA\u4F1A\u8BDD\u65F6\u4F5C\u4E3A\u7CFB\u7EDF\u63D0\u793A\u751F\u6548\uFF09",disabled:k||L,onChange:H=>w(H.target.value)})]}),(0,J.jsx)(At,{agents:x,label:m||"\u65B0\u5458\u5DE5",catalog:e,providerOptions:t,disabled:k||L,structuredOnly:!0,onChange:E}),(0,J.jsx)("div",{className:"wand-employee-advanced-tools",children:(0,J.jsxs)(Ze.WandButton,{kind:"ghost",size:"small",disabled:k||L,onClick:()=>{P()},children:[(0,J.jsx)(Ze.WandIcon,{name:"spark",size:14,slot:"start"}),L?"\u751F\u6210\u4E2D\u2026":"\u6309\u671F\u671B\u751F\u6210"]})})]})}),(0,J.jsxs)("div",{className:"wand-team-member-actions",children:[(0,J.jsx)(Ze.WandButton,{kind:"primary",size:"small",className:"wand-employee-create-submit","aria-busy":k||void 0,disabled:k,onClick:()=>{ne()},children:k?"\u6B63\u5728\u521B\u5EFA\u2026":"\u521B\u5EFA\u5458\u5DE5"}),(0,J.jsx)(Ze.WandButton,{kind:"ghost",size:"small",disabled:k,onClick:a,children:"\u53D6\u6D88"})]}),G?(0,J.jsx)("div",{className:"wand-team-candidate-error",role:"alert",children:G}):null]})})})}var dt=b(Dt()),Kr=b(Ya()),ie=b(Z());function Vr({catalog:e,providerOptions:t}){let{employees:n,loading:a,error:r,reload:d}=(0,dt.useSiliconEmployees)({includeArchived:!0}),[i,c]=ft.useState(""),[m,s]=ft.useState(!1),[g,p]=ft.useState(!1),[v,w]=ft.useState(""),h=ft.useMemo(()=>n.filter(k=>{if(!m&&k.archivedAt)return!1;if(!i.trim())return!0;let C=i.toLowerCase();return k.name.toLowerCase().includes(C)||k.duty.toLowerCase().includes(C)||k.prompt.toLowerCase().includes(C)||nt(k).some(L=>L.toLowerCase().includes(C))}),[n,m,i]),f=async k=>{await dt.siliconEmployeesRepository.create(k),p(!1),d()},R=async(k,C)=>{let L=n.find(B=>B.id===k);L&&(await dt.siliconEmployeesRepository.update(k,_t(L)?{agents:C.agents??L.agents}:{name:C.name??L.name,duty:C.duty??L.duty,prompt:C.prompt??L.prompt,avatar:C.avatar??L.avatar,tags:C.tags??L.tags??[],agents:C.agents??L.agents}),d())},y=async k=>{try{w(""),await dt.siliconEmployeesRepository.archive(k),d()}catch(C){w(C instanceof Error?C.message:"\u5F52\u6863\u5458\u5DE5\u5931\u8D25\u3002")}},x=async k=>{try{w(""),await dt.siliconEmployeesRepository.unarchive(k),d()}catch(C){w(C instanceof Error?C.message:"\u6062\u590D\u5458\u5DE5\u5931\u8D25\u3002")}},E=async k=>{let C=n.find(B=>B.id===k);if(!C)return;let L=await Kr.wandOverlay.dialog({title:`\u5220\u9664\u5458\u5DE5\u300C${C.name}\u300D\uFF1F`,description:"\u5458\u5DE5\u914D\u7F6E\u548C\u5176\u72EC\u7ACB\u77E5\u8BC6\u5E93\u5C06\u88AB\u5220\u9664\uFF1B\u5DF2\u6709\u4F1A\u8BDD\u4E0E\u5386\u53F2\u6D88\u606F\u4F1A\u4FDD\u7559\u3002",actions:[{label:"\u53D6\u6D88",value:!1,autoFocus:!0},{label:"\u5220\u9664\u5458\u5DE5",value:!0,kind:"danger"}]});if(!(L.dismissed===!0||!L.action))try{w(""),await dt.siliconEmployeesRepository.remove(k),d()}catch(B){w(B instanceof Error?B.message:"\u5220\u9664\u5458\u5DE5\u5931\u8D25\u3002")}};return(0,ie.jsxs)("div",{className:"wand-teams-list wand-employee-list",children:[(0,ie.jsxs)("header",{className:"wand-teams-toolbar",children:[(0,ie.jsx)("div",{className:"wand-teams-toolbar-search",children:(0,ie.jsx)(lt.WandSearchField,{value:i,label:"\u641C\u7D22\u5458\u5DE5\u540D\u5B57\u3001\u6807\u7B7E\u3001\u804C\u8D23\u6216 Prompt",placeholder:"\u641C\u7D22\u5458\u5DE5\u540D\u5B57\u3001\u6807\u7B7E\u3001\u804C\u8D23\u6216 Prompt\u2026",onValueChange:c})}),(0,ie.jsxs)("div",{className:"wand-teams-toolbar-actions",children:[(0,ie.jsxs)("label",{className:"wand-employee-filter-toggle",children:[(0,ie.jsx)("input",{type:"checkbox",checked:m,onChange:k=>s(k.target.checked)}),(0,ie.jsx)("span",{children:"\u663E\u793A\u5F52\u6863"})]}),(0,ie.jsxs)(lt.WandButton,{kind:"primary",disabled:g,onClick:()=>p(!0),children:[(0,ie.jsx)(lt.WandIcon,{name:"plus",size:14,slot:"start"}),"\u65B0\u5EFA\u5458\u5DE5"]})]})]}),r?(0,ie.jsx)("div",{className:"wand-team-candidate-error",role:"alert",children:r}):null,v?(0,ie.jsx)("div",{className:"wand-team-candidate-error",role:"alert",children:v}):null,(0,ie.jsxs)("div",{className:"wand-team-members",children:[g?(0,ie.jsx)(qr,{catalog:e,providerOptions:t,onSave:f,onCancel:()=>p(!1)}):null,a&&n.length===0?(0,ie.jsx)("p",{className:"wand-teams-empty",role:"status",children:"\u6B63\u5728\u52A0\u8F7D\u5458\u5DE5\u5217\u8868\u2026"}):null,!a&&h.length===0&&!g?(0,ie.jsxs)("div",{className:"wand-teams-empty",children:[(0,ie.jsx)("p",{children:i?"\u6CA1\u6709\u5339\u914D\u7684\u5458\u5DE5":"\u8FD8\u6CA1\u6709\u7845\u57FA\u5458\u5DE5\u3002\u521B\u5EFA\u4E00\u4E2A\u89D2\u8272\uFF0C\u5E76\u4E3A\u5B83\u914D\u7F6E\u4E13\u5C5E\u7684\u6267\u884C\u5DE5\u5177\u94FE\u5427\uFF01"}),i?null:(0,ie.jsxs)(lt.WandButton,{kind:"primary",onClick:()=>p(!0),children:[(0,ie.jsx)(lt.WandIcon,{name:"plus",size:14,slot:"start"}),"\u521B\u5EFA\u4F60\u7684\u7B2C\u4E00\u4E2A\u7845\u57FA\u5458\u5DE5"]})]}):null,h.map(k=>(0,ie.jsx)(jr,{employee:k,catalog:e,providerOptions:t,onSave:C=>R(k.id,C),onArchive:()=>y(k.id),onUnarchive:()=>x(k.id),onDelete:()=>E(k.id)},k.id))]})]})}var o=b(Z()),Gr="__new__",Pi=["awaiting_approval","waiting_user"],$i=[{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 Jr(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%be.CAT_COATS.length}`}))}}function ns(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 Wi(e){return[...e].sort((t,n)=>Number(n.isLeader)-Number(t.isLeader))}function Oi(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;n!==1&&t.push(`\u8D1F\u8D23\u4EBA\u8981\u6070\u597D 1 \u4F4D\uFF0C\u5F53\u524D ${n} \u4F4D\u3002`);for(let a of Tn(e))t.push(`${a}\uFF1A\u540C\u4E00\u5458\u5DE5\u4E0D\u80FD\u91CD\u590D\u52A0\u5165\u56E2\u961F\u3002`);return e.forEach((a,r)=>{let d=it(Ma(a));d&&t.push(`${a.name||`\u6210\u5458 ${r+1}`}\uFF1A${d}`)}),t}function Fi({member:e,disabled:t,onChange:n}){let a=I.useRef(null),[r,d]=I.useState(""),i=e.avatar??"",c=(0,be.memberCoatIndex)(e);return(0,o.jsxs)("div",{className:"wand-team-avatar-picker",role:"group","aria-label":"\u5934\u50CF",children:[be.CAT_COATS.map((m,s)=>(0,o.jsx)("button",{type:"button",className:"wand-team-coat",title:m.name,"aria-label":m.name,"aria-pressed":!i.startsWith("data:")&&c===s,disabled:t,onClick:()=>n(`cat:${s}`),children:(0,o.jsx)(be.PixelCat,{coat:s})},m.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":i.startsWith("data:"),disabled:t,onClick:()=>a.current?.click(),children:i.startsWith("data:")?(0,o.jsx)("img",{src:i,alt:""}):(0,o.jsx)(U.WandIcon,{name:"image",size:14})}),(0,o.jsx)("input",{ref:a,type:"file",accept:"image/png,image/jpeg,image/webp",hidden:!0,onChange:m=>{let s=m.currentTarget.files?.[0];m.currentTarget.value="",s&&(d(""),(0,be.shrinkAvatarImage)(s,gn).then(n).catch(g=>d((0,St.failureMessage)(g,"\u56FE\u7247\u5904\u7406\u5931\u8D25\u3002"))))}}),r?(0,o.jsx)("small",{className:"wand-team-avatar-error",role:"alert",children:r}):null]})}function Bi({member:e,index:t,open:n,catalog:a,providerOptions:r,disabled:d,canRemove:i,employeeSource:c,members:m,onBind:s,onToggle:g,onChange:p,onRemove:v}){let w=!!e.employeeId,h=c.employees.find(x=>x.id===e.employeeId);w&&h?.agents.length&&(e=na(e,h));let f=e.name||`\u6210\u5458 ${t+1}`,R=Ma(e),y=x=>{p({agents:x,agent:{...x[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:g,children:[(0,o.jsx)(be.TeamAvatar,{member:e,size:"lg",showProvider:!0}),(0,o.jsxs)("span",{className:"wand-team-member-copy",children:[(0,o.jsxs)("strong",{children:[f,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,He.issueAgentProviderModelLine)(e.agent,a)})]}),(0,o.jsx)(U.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)(La,{...c,members:m,replacingIndex:t,disabled:d,onPick:s}),w?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("small",{className:"wand-new-session-field-hint",children:"\u5DF2\u7ED1\u5B9A\u901A\u8BAF\u5F55\u5458\u5DE5\uFF1B\u540D\u5B57\u3001\u5934\u50CF\u3001\u57FA\u7840\u89D2\u8272\u4E0E\u5019\u9009\u53EA\u8BFB\u3002\u77E5\u8BC6\u5F52\u5C5E\u4ECD\u662F\u8BE5\u5458\u5DE5\uFF0C\u4E0D\u5171\u4EAB\u79C1\u804A\u3002"}),h?.archivedAt||!c.loading&&!c.error&&!h?(0,o.jsx)("small",{className:"wand-new-session-error",role:"alert",children:"\u7ED1\u5B9A\u5458\u5DE5\u5DF2\u5F52\u6863\u6216\u5220\u9664\uFF0C\u7ED1\u5B9A\u4FDD\u7559\u3002\u8BF7\u660E\u786E\u66FF\u6362\u3001\u79FB\u9664\u6216\u6539\u4E3A\u624B\u5DE5 CLI \u6210\u5458\u3002"}):null,(0,o.jsx)(U.WandButton,{kind:"ghost",size:"small",disabled:d,onClick:()=>p({...e,employeeId:null}),children:"\u6539\u4E3A\u624B\u5DE5 CLI \u6210\u5458\uFF08\u89E3\u9664\u7ED1\u5B9A\uFF09"})]}):null,(0,o.jsx)(ce.SettingsField,{label:"\u540D\u5B57",htmlFor:`team-member-${t}-name`,children:(0,o.jsx)(ce.SettingsTextInput,{id:`team-member-${t}-name`,value:e.name,placeholder:"\u6210\u5458\u540D\u5B57",disabled:d||w,onChange:x=>p({name:x})})}),(0,o.jsx)(Fi,{member:e,disabled:d||w,onChange:x=>p({avatar:x})}),(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":`${f}\u7684\u804C\u8D23`,disabled:d,onChange:x=>p({duty:x.currentTarget.value})}),(0,o.jsx)(At,{agents:R,label:f,catalog:a,providerOptions:r,disabled:d||w,onChange:y}),(0,o.jsx)(ce.SettingsField,{label:"\u56E2\u961F\u89D2\u8272",children:(0,o.jsx)(U.WandSelect,{ariaLabel:`${f}\u7684\u56E2\u961F\u89D2\u8272`,value:e.role??"any",disabled:d,options:[{value:"any",label:"\u4E0D\u9650"},{value:"plan",label:"\u89C4\u5212"},{value:"work",label:"\u6267\u884C"},{value:"verify",label:"\u9A8C\u8BC1"}],onValueChange:x=>p({role:x})})}),(0,o.jsxs)("div",{className:"wand-team-member-actions",children:[e.isLeader?null:(0,o.jsx)(U.WandButton,{kind:"ghost",size:"small",disabled:d,onClick:()=>p({isLeader:!0}),children:"\u8BBE\u4E3A\u8D1F\u8D23\u4EBA"}),(0,o.jsxs)(U.WandButton,{kind:"ghost",size:"small",disabled:d||!i,onClick:v,children:[(0,o.jsx)(U.WandIcon,{name:"trash",size:14,slot:"start"}),"\u79FB\u9664"]})]})]})})]})}function Qr({team:e,initial:t,active:n=!0,catalog:a,providerOptions:r,defaultAgent:d,onSaved:i,onDeleted:c,onDirtyChange:m}){let[s,g]=I.useState(t),[p,v]=I.useState(-1),[w,h]=I.useState(!1),f=(0,es.useSiliconEmployees)({includeArchived:!0,enabled:n}),[R,y]=I.useState(!1),[x,E]=I.useState(!1),[k,C]=I.useState(""),[L,B]=I.useState("info"),G=w||x||R,j=`ai-team-${e?.id??"new"}`,Y=s.members.findIndex($=>$.isLeader),W=JSON.stringify(t),ne=I.useMemo(()=>JSON.stringify(s)!==W,[s,W]);I.useEffect(()=>{m?.(ne||G,w||x)},[ne,G,w,x,m]);let P=($,F)=>{g(te=>({...te,members:te.members.map((q,oe)=>oe===$?{...q,...F}:F.isLeader?{...q,isLeader:!1}:q)}))},Q=$=>{v(-1),g(F=>{let te=F.members.filter((q,oe)=>oe!==$);return!te.some(q=>q.isLeader)&&te[0]&&(te[0]={...te[0],isLeader:!0}),{...F,members:te}})};async function H(){if(G)return;let $=Oi(s.members);if($.length>0){C($[0]),B("error");return}h(!0),C("");try{let F=e?await ze.aiTeamsRepository.update(e.id,s):await ze.aiTeamsRepository.create(s);g(ns(F)),C(e?"\u5DF2\u4FDD\u5B58\u3002":"\u56E2\u961F\u5DF2\u521B\u5EFA\u3002"),B("success"),i(F,!e)}catch(F){let te=Rn(F);y(!te),C(te?(0,St.failureMessage)(F,"\u4FDD\u5B58\u56E2\u961F\u5931\u8D25\u3002"):"\u4FDD\u5B58\u7ED3\u679C\u5C1A\u672A\u786E\u8BA4\uFF0C\u8349\u7A3F\u4FDD\u7559\u3002\u8BF7\u5148\u6838\u5BF9\u56E2\u961F\u5217\u8868\uFF0C\u4E0D\u8981\u91CD\u590D\u4FDD\u5B58\u3002"),B("error")}finally{h(!1)}}async function X(){if(!e)return;let $=await rn.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)){E(!0);try{await ze.aiTeamsRepository.remove(e.id),c(e.id)}catch(F){return C((0,St.failureMessage)(F,"\u5220\u9664\u56E2\u961F\u5931\u8D25\u3002")),B("error"),!1}finally{E(!1)}}}let se=$=>(0,o.jsx)(Bi,{member:s.members[$],index:$,open:p===$,catalog:a,providerOptions:r,disabled:G,canRemove:s.members.length>2,employeeSource:f,members:s.members,onBind:F=>g(te=>yt(F,te.members,$)?te:{...te,members:te.members.map((q,oe)=>oe===$?na(q,F):q)}),onToggle:()=>v(F=>F===$?-1:$),onChange:F=>P($,F),onRemove:()=>Q($)},$);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:[s.members.length,"/",8," \xB7 \u70B9\u6210\u5458\u5361\u5C55\u5F00\u7F16\u8F91"]})]}),(0,o.jsx)(La,{...f,members:s.members,disabled:G||s.members.length>=8,onPick:$=>{g(F=>yt($,F.members)?F:{...F,members:[...F.members,na({id:"",name:"",duty:$.duty,agents:[],agent:d,isLeader:!1},$)]}),v(s.members.length)}}),(0,o.jsxs)("div",{className:"wand-team-org",children:[Y>=0?(0,o.jsx)("div",{className:"wand-team-org-leader",children:se(Y)}):null,(0,o.jsxs)("div",{className:"wand-team-org-members",children:[s.members.map(($,F)=>$.isLeader?null:se(F)),(0,o.jsxs)("button",{type:"button",className:"wand-team-member-add",disabled:G||s.members.length>=8,onClick:()=>{g($=>({...$,members:[...$.members,{id:"",name:"",duty:"",agents:[{...d}],agent:{...d},isLeader:!1,avatar:`cat:${$.members.length%be.CAT_COATS.length}`}]})),v(s.members.length)},children:[(0,o.jsx)(U.WandIcon,{name:"plus",size:16}),(0,o.jsx)("span",{children:"\u6DFB\u52A0\u624B\u5DE5 CLI \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)(ce.SettingsField,{label:"\u56E2\u961F\u540D",htmlFor:`${j}-name`,children:(0,o.jsx)(ce.SettingsTextInput,{id:`${j}-name`,value:s.name,placeholder:"\u4F8B\u5982\uFF1A\u5168\u6808\u5C0F\u7EC4",disabled:G,onChange:$=>g(F=>({...F,name:$}))})}),(0,o.jsx)(ce.SettingsField,{label:"\u6B65\u6570\u4E0A\u9650",htmlFor:`${j}-steps`,hint:`\u8D1F\u8D23\u4EBA\u8F6E\u6B21\u4E0E\u6210\u5458\u6B65\u9AA4\u5408\u8BA1\uFF0C${5}\u2013${200}`,children:(0,o.jsx)(ce.SettingsTextInput,{id:`${j}-steps`,type:"number",min:5,max:200,value:s.maxSteps,disabled:G,onChange:$=>g(F=>({...F,maxSteps:Number($)}))})})]}),(0,o.jsx)(ce.SettingsField,{label:"\u7B80\u4ECB",htmlFor:`${j}-description`,children:(0,o.jsx)(ce.SettingsTextInput,{id:`${j}-description`,value:s.description,placeholder:"\u53EF\u9009\uFF1A\u8FD9\u4E2A\u56E2\u961F\u64C5\u957F\u4EC0\u4E48",disabled:G,onChange:$=>g(F=>({...F,description:$}))})}),(0,o.jsx)(ce.SettingsField,{label:"\u534F\u4F5C\u6307\u4EE4",htmlFor:`${j}-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:`${j}-instructions`,className:"wand-settings-input wand-ai-team-duty resize-none",rows:4,value:s.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 F=$.currentTarget.value;g(te=>({...te,instructions:F}))}})}),(0,o.jsx)(ce.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:s.requirePlanApproval,disabled:G,onCheckedChange:$=>g(F=>({...F,requirePlanApproval:$}))})]}),(0,o.jsxs)("div",{className:"wand-ai-team-editor-footer",children:[e?(0,o.jsx)(ce.SettingsActionButton,{kind:"danger",size:"small",pending:x,pendingLabel:"\u5220\u9664\u4E2D\u2026",errorLabel:"\u5220\u9664\u5931\u8D25",disabled:w||R,onClick:X,children:"\u5220\u9664\u56E2\u961F"}):null,(0,o.jsx)(ce.SettingsSaveBar,{label:e?"\u4FDD\u5B58\u56E2\u961F":"\u521B\u5EFA\u56E2\u961F",pending:w,disabled:x||R,onSave:()=>{H()},status:k,tone:L})]})]})}function rs(e){return e.filter(t=>t.kind!=="global")}function Hi(e){return rs(e)[0]?.id??""}function ji({teamId:e,teamName:t,projects:n,projectsLoaded:a,openRequest:r=0,onStarted:d}){let i=rs(n),[c,m]=I.useState(r>0),[s,g]=I.useState(!1),[p,v]=I.useState(""),[w,h]=I.useState(""),[f,R]=I.useState("idle"),[y,x]=I.useState(""),E=I.useRef(null),k=I.useRef(null),C="wand-team-start-project-menu-"+I.useId(),L=w||Hi(n),B=f==="sending"||f==="sent";I.useEffect(()=>{r>0?(m(!0),g(!1)):(m(!1),g(!1))},[r]);function G(){f!=="sending"&&(m(!1),g(!1),f==="failed"&&x(""))}I.useLayoutEffect(()=>{if(!c||s)return;let Y=0,W=requestAnimationFrame(()=>{Y=requestAnimationFrame(()=>{g(!0),k.current?.focus()})});return()=>{cancelAnimationFrame(W),cancelAnimationFrame(Y)}},[c,s]),I.useEffect(()=>{if(!c)return;let Y=W=>{E.current?.contains(W.target)||W.target instanceof Element&&W.target.closest(".wand-ui-select-content")?.classList.contains(C)||G()};return window.addEventListener("pointerdown",Y,!0),()=>window.removeEventListener("pointerdown",Y,!0)},[c,f,C]);async function j(){if(B)return;let Y=p.trim();if(!(!Y||!L)){R("sending"),x("");try{let W=await ze.aiTeamsRepository.startDirect(e,{note:Y,workspaceId:L});R("sent"),x(`${t}\u5DF2\u5F00\u5DE5\uFF0C\u6B63\u5728\u6253\u5F00\u7FA4\u804A\u2026`),await ze.aiTeamsRepository.settle("success"),d(W),m(!1),g(!1),R("idle"),x(""),v("")}catch(W){R("failed"),x((0,St.failureMessage)(W,"\u5F00\u5DE5\u5931\u8D25\uFF0C\u8BF7\u6362\u4E2A\u9879\u76EE\u6216\u7A0D\u540E\u518D\u8BD5\u3002")),await ze.aiTeamsRepository.settle("error"),R("idle")}}}return(0,o.jsxs)("div",{ref:E,onKeyDown:Y=>{Y.key==="Escape"&&(Y.stopPropagation(),G())},children:[(0,o.jsx)("div",{className:"wand-team-member-actions",children:(0,o.jsxs)(U.WandButton,{className:"task-board-create-button",kind:"ghost",size:"small","aria-pressed":c,disabled:B,onClick:()=>c?G():m(!0),children:[(0,o.jsx)(U.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":!s||void 0,children:(0,o.jsx)("div",{className:"wand-team-member-inner",inert:!c,children:(0,o.jsxs)("div",{className:"wand-team-candidates",children:[i.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)(ce.SettingsField,{label:"\u9879\u76EE",children:(0,o.jsx)(U.WandSelect,{ariaLabel:"\u5F00\u5DE5\u9879\u76EE",className:"wand-settings-input",contentClassName:C,value:L,disabled:B,searchable:!0,searchPlaceholder:"\u641C\u7D22\u9879\u76EE",options:i.map(Y=>({value:Y.id,label:`${Y.name} \xB7 ${Y.cwd}`})),onValueChange:h})}),(0,o.jsx)(ce.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:k,className:"wand-settings-input wand-ai-team-duty resize-none",rows:2,value:p,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:B,onChange:Y=>v(Y.currentTarget.value)})})]}),y?(0,o.jsx)("p",{className:f==="failed"?"wand-new-session-error":"wand-new-session-field-hint",role:f==="failed"?"alert":"status",children:y}):null,c&&i.length>0?(0,o.jsx)("div",{className:"wand-team-member-actions",children:(0,o.jsx)(U.WandButton,{kind:"primary",size:"small",disabled:B||!p.trim()||!L,onClick:()=>{j()},children:f==="sending"?"\u6B63\u5728\u5F00\u5DE5\u2026":f==="sent"?"\u5DF2\u5F00\u5DE5":"\u5F00\u5DE5"})}):null]})})})]})}function Ui({runs:e,focusRunId:t,onOpenSession:n}){let[a,r]=I.useState(""),[d,i]=I.useState(null),c=I.useRef(a),m=I.useRef(0),s=I.useRef(!0);c.current=a,I.useEffect(()=>(s.current=!0,()=>{s.current=!1,m.current++}),[]);let g=I.useCallback(async p=>{let v=++m.current,w=()=>s.current&&c.current===p&&v===m.current;try{let h=await ze.aiTeamsRepository.detail(p);w()&&h.run.id===p&&i(f=>$e(f,h))}catch{}},[]);return I.useEffect(()=>{t&&r(t)},[t]),I.useEffect(()=>{a&&g(a)},[g,a]),I.useEffect(()=>(0,ze.subscribeAiTeamRunChanges)(p=>{p.runId===a&&g(a)}),[g,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(p=>{let v=a===p.id,w=Bt[p.status];return(0,o.jsxs)("li",{className:"wand-team-run","data-open":v||void 0,children:[(0,o.jsxs)("button",{type:"button",className:"wand-team-run-head","aria-expanded":v,onClick:()=>{m.current++,c.current=v?"":p.id,i(null),r(h=>h===p.id?"":p.id)},children:[(0,o.jsx)("span",{className:"wand-team-run-id",children:p.taskIdentifier}),(0,o.jsx)("strong",{children:p.taskTitle||p.objective.split(`
19
+ `)[0]}),(0,o.jsx)(U.WandBadge,{tone:w.tone,children:w.label}),(0,o.jsx)("small",{children:new Date(p.updatedAt).toLocaleString([],{month:"numeric",day:"numeric",hour:"2-digit",minute:"2-digit"})}),(0,o.jsx)(U.WandIcon,{name:"chevronDown",size:14})]}),(0,o.jsx)("div",{className:"wand-team-run-body",inert:!v,children:(0,o.jsx)("div",{className:"wand-team-run-inner",children:v&&d?.run.id===p.id?(0,o.jsx)(Va,{detail:d,onChange:h=>{!s.current||h.run.id!==c.current||(m.current++,i(f=>$e(f,h)))},onOpenSession:n}):v?(0,o.jsx)("p",{className:"wand-team-empty-line",children:"\u6B63\u5728\u52A0\u8F7D\u2026"}):null})})]},p.id)})})}var Zr=[{value:"members",label:"\u6210\u5458\u4E0E\u8BBE\u7F6E"},{value:"runs",label:"\u8FD0\u884C\u8BB0\u5F55"}],qi=[{value:"all",label:"\u5168\u90E8"},{value:"running",label:"\u8FD0\u884C\u4E2D"},{value:"attention",label:"\u5F85\u4F60\u5904\u7406"}],Ki=[{value:"employees",label:"\u5458\u5DE5"},{value:"teams",label:"\u56E2\u961F"}];function ss({sidebarOpen:e=!1,onBack:t,onOpenSidebar:n,onOpenSession:a}){let r=I.useSyncExternalStore(ht.taskBoardStore.subscribe,ht.taskBoardStore.getSnapshot,ht.taskBoardStore.getSnapshot),d=(0,Ta.useProviderUsage)(!0),i=d===null?null:(0,Ta.sortProviderOptions)(He.ISSUE_AGENT_PROVIDERS,d,S=>S.value).map(S=>({value:S.value,label:S.label})),[c,m]=I.useState(null),[s,g]=I.useState("employees"),[p,v]=I.useState([]),[w,h]=I.useState(""),[f,R]=I.useState(null),[y,x]=I.useState(()=>(0,He.createDefaultIssueAgent)()),[E,k]=I.useState(""),[C,L]=I.useState(null),[B,G]=I.useState(""),[j,Y]=I.useState("all"),[W,ne]=I.useState("members"),[P,Q]=I.useState([]),[H,X]=I.useState(!1),[se,$]=I.useState("");I.useEffect(()=>{r.page!=="teams"||!r.teamId||(g("teams"),k(window.matchMedia("(max-width: 760px)").matches?"":r.teamId))},[r.page,r.teamId,r.revision]);let F=I.useCallback(async()=>{try{let S=await ze.aiTeamsRepository.list();m(S),h(""),k(K=>K||(window.matchMedia("(max-width: 760px)").matches?"":S[0]?.id??""))}catch(S){h((0,St.failureMessage)(S,"\u56E2\u961F\u5217\u8868\u52A0\u8F7D\u5931\u8D25\u3002"))}},[]),te=I.useCallback(async()=>{try{v(await ze.aiTeamsRepository.runs({limit:200}))}catch{}},[]);I.useEffect(()=>(F(),te(),ka.taskBoardRepository.models().then(S=>R((0,He.normalizeIssueModelCatalog)(S))).catch(()=>R(null)),ka.taskBoardRepository.agentDefaults().then(x).catch(()=>{}),ka.taskBoardRepository.workspaces().then(S=>{Q(S),X(!0)}).catch(()=>X(!0)),(0,ts.subscribeWandModelCatalog)(R)),[te,F]),I.useEffect(()=>(0,ze.subscribeAiTeamRunChanges)(()=>{te()}),[te]),I.useEffect(()=>{let S=K=>{if(!(K.key!=="Escape"||K.defaultPrevented||K.target?.closest("input, textarea, [contenteditable='true'], [role='dialog']"))){if(E){je();return}t?t():ht.taskBoardController.close()}};return window.addEventListener("keydown",S),()=>window.removeEventListener("keydown",S)},[t,E]);let q=S=>p.filter(K=>K.teamId===S),oe=S=>{let K=q(S);return K.some(fe=>Pi.includes(fe.status))?"attention":K.some(fe=>fe.status==="running")?"running":"idle"},Nt=B.trim().toLowerCase(),Ct=(c??[]).filter(S=>j!=="all"&&oe(S.id)!==j?!1:Nt?[S.name,S.description,...S.members.map(K=>K.name)].some(K=>K.toLowerCase().includes(Nt)):!0),pe=c?.find(S=>S.id===E)??null,Se=E===Gr,ue=Se||!!pe,Oe=async()=>{await et()&&(De.current=!1,L(null),k(Gr))},De=I.useRef(!1),ge=I.useRef(!1),It=I.useCallback((S,K)=>{De.current=S,ge.current=K},[]),et=async()=>{if(ge.current)return!1;if(!De.current)return!0;let S=await rn.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 S.dismissed===!1&&S.action===!0},je=async()=>{await et()&&(De.current=!1,k(""))},zt=async S=>{S!==E&&await et()&&(De.current=!1,k(S))},qt=async()=>{await et()&&(De.current=!1,L(null))},Kt=(S,K)=>{te();let fe=K.run.chatSessionId;if(fe&&a){a(fe);return}$(K.run.id),k(S),ne("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":ue||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)(U.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)(as.SidebarToggleIcon,{open:e,size:16})}):null,pe?null:(0,o.jsx)(U.WandIconButton,{className:"task-board-icon-button","aria-label":"\u8FD4\u56DE\u5DE5\u4F5C\u533A",title:"\u8FD4\u56DE\u5DE5\u4F5C\u533A",onClick:()=>t?t():ht.taskBoardController.close(),children:(0,o.jsx)(U.WandIcon,{name:"chevronLeft"})}),(0,o.jsx)("div",{className:"task-board-heading-copy",children:s==="teams"&&pe?(0,o.jsx)(U.WandBreadcrumb,{variant:"title",ariaLabel:"AI \u56E2\u961F\u5BFC\u822A",items:[{label:"AI \u56E2\u961F",onNavigate:()=>{je()}},{label:pe.name}]}):(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)("h1",{children:s==="employees"?"\u7845\u57FA\u5458\u5DE5":"AI \u56E2\u961F"}),(0,o.jsx)("p",{children:s==="employees"?"\u5B9A\u4E49\u4E13\u5C5E\u89D2\u8272\u4E0E\u5DE5\u5177\u94FE\u964D\u7EA7\u987A\u5E8F\uFF0C\u4EE5\u5BF9\u8BDD\u65B9\u5F0F\u534F\u4F5C\u5B8C\u6210\u5DE5\u4F5C\u3002":"\u8D1F\u8D23\u4EBA\u62C6\u89E3\u5206\u6D3E\uFF0C\u6210\u5458\u5404\u7528\u81EA\u5DF1\u7684 CLI \u534F\u4F5C\u5B8C\u6210\u3002"})]})})]}),(0,o.jsxs)("div",{className:"task-board-header-actions",style:{display:"flex",alignItems:"center",gap:"12px"},children:[(0,o.jsx)(U.WandStretchTabs,{tabs:Ki,value:s,ariaLabel:"\u5207\u6362\u5458\u5DE5\u6216\u56E2\u961F",onValueChange:S=>{et().then(K=>{K&&(De.current=!1,g(S))})}}),s==="teams"?(0,o.jsxs)(U.WandButton,{className:"task-board-create-button",kind:"primary",size:"small","aria-pressed":Se,onClick:()=>Se?void je():void Oe(),children:[(0,o.jsx)(U.WandIcon,{name:"plus",slot:"start",className:"wand-teams-create-icon"}),(0,o.jsx)("span",{children:"\u65B0\u5EFA\u56E2\u961F"})]}):null]})]}),s==="employees"?(0,o.jsx)("div",{className:"wand-teams-layout wand-employees-layout",children:(0,o.jsx)(Vr,{catalog:f,providerOptions:i})}):(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)(U.WandSearchField,{value:B,onValueChange:G,label:"\u641C\u7D22\u56E2\u961F\u6216\u6210\u5458"}),(0,o.jsx)(U.WandStretchTabs,{tabs:qi,value:j,ariaLabel:"\u6309\u72B6\u6001\u7B5B\u9009",onValueChange:S=>Y(S)}),w?(0,o.jsxs)("div",{className:"task-board-native-banner is-error",role:"alert",children:[(0,o.jsx)("span",{children:w}),(0,o.jsx)(U.WandButton,{kind:"ghost",size:"small",onClick:()=>{F()},children:"\u91CD\u65B0\u52A0\u8F7D"})]}):null,(0,o.jsxs)("div",{className:"wand-teams-cards",children:[Ct.map(S=>{let K=oe(S.id),fe=[...new Set(S.members.map(xe=>xe.agent.provider))];return(0,o.jsxs)("div",{children:[(0,o.jsxs)("button",{type:"button",className:"wand-teams-card","aria-pressed":E===S.id,"data-state":K,onClick:()=>{zt(S.id)},children:[(0,o.jsx)(be.TeamAvatarStack,{members:S.members,max:4}),(0,o.jsxs)("span",{className:"wand-teams-card-copy",children:[(0,o.jsx)("strong",{children:S.name}),(0,o.jsx)("small",{children:S.description||Wi(S.members).map(xe=>xe.name).join(" \xB7 ")})]}),(0,o.jsx)("span",{className:"wand-teams-card-meta",children:K==="attention"?(0,o.jsx)(U.WandBadge,{tone:"warning",children:"\u5F85\u4F60\u5904\u7406"}):K==="running"?(0,o.jsx)(U.WandBadge,{tone:"info",children:"\u8FD0\u884C\u4E2D"}):(0,o.jsxs)("small",{children:[S.members.length," \u4EBA \xB7 ",fe.map(He.issueAgentProviderLabel).join(" / ")]})})]}),(0,o.jsx)(ji,{teamId:S.id,teamName:S.name,projects:P,projectsLoaded:H,openRequest:r.teamId===S.id?r.revision:0,onStarted:xe=>Kt(S.id,xe)})]},S.id)}),c!==null&&Ct.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)(U.WandButton,{kind:"soft",size:"small",onClick:()=>{Oe()},children:"\u4ECE\u6A21\u677F\u521B\u5EFA"}):null]}):null]})]}),(0,o.jsx)("div",{className:"wand-teams-detail",children:Se&&!C?(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:$i.map(S=>{let K=Jr(S,y);return(0,o.jsxs)("button",{type:"button",className:"wand-teams-template",onClick:()=>L(S),children:[(0,o.jsx)(be.TeamAvatarStack,{members:K.members,size:"md"}),(0,o.jsx)("strong",{children:S.name}),(0,o.jsx)("small",{children:S.summary})]},S.id)})})]}):Se&&C?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)("div",{className:"wand-teams-detail-head",children:[(0,o.jsx)(U.WandIconButton,{className:"task-board-icon-button","aria-label":"\u6362\u4E00\u4E2A\u6A21\u677F",onClick:()=>{qt()},children:(0,o.jsx)(U.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",C.name]})]})]}),(0,o.jsx)(Qr,{team:null,initial:Jr(C,y),catalog:f,providerOptions:i,defaultAgent:y,onDirtyChange:It,onSaved:S=>{m(K=>[S,...K??[]]),k(S.id),ne("members")},onDeleted:()=>{}})]}):pe?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)("div",{className:"wand-teams-detail-head",children:[(0,o.jsx)(be.TeamAvatarStack,{members:pe.members,size:"md",max:6}),(0,o.jsx)("div",{children:(0,o.jsx)("p",{children:pe.description||`${pe.members.length} \u4F4D\u6210\u5458`})})]}),(0,o.jsx)(U.WandStretchTabs,{tabs:Zr,value:W,ariaLabel:"\u56E2\u961F\u8BE6\u60C5",onValueChange:ne}),(0,o.jsx)("div",{className:"wand-teams-detail-stack",children:Zr.map(S=>(0,o.jsx)("div",{className:"wand-teams-detail-pane","data-hidden":W!==S.value||void 0,inert:W!==S.value,children:S.value==="runs"?(0,o.jsx)(Ui,{runs:c===null?null:q(pe.id),focusRunId:se,onOpenSession:a}):(0,o.jsx)(Qr,{active:W==="members",team:pe,initial:ns(pe),catalog:f,providerOptions:i,defaultAgent:y,onDirtyChange:It,onSaved:K=>m(fe=>(fe??[]).map(xe=>xe.id===K.id?K:xe)),onDeleted:K=>{De.current=!1,k(""),m(fe=>(fe??[]).filter(xe=>xe.id!==K))}},pe.id)},S.value))})]}):(0,o.jsxs)("div",{className:"wand-teams-empty is-detail",children:[(0,o.jsx)(U.WandIcon,{name:"parallel",size:28}),(0,o.jsx)("p",{children:"\u9009\u4E00\u4E2A\u56E2\u961F\uFF0C\u6216\u65B0\u5EFA\u4E00\u4E2A\u3002"})]})},Se?`new-${C?.id??""}`:E)]})]})}var me=b(Te()),ls=b($t());var Ra=b(ra()),cs=b(Xa()),ms=b(os()),ye=b(Re()),Aa=b(xt()),vt=b(Wt());var M=b(Z()),ds={queued:"\u6392\u961F",running:"\u8FDB\u884C\u4E2D",done:"\u5B8C\u6210",failed:"\u5931\u8D25",skipped:"\u8DF3\u8FC7"};async function Vi(e){let t=e.run.chatSessionId;if(!t)return null;try{let a=(await vt.aiTeamsRepository.runsForChat(e.run.taskId,t))[0];return a&&a.id!==e.run.id?a.id:null}catch{return null}}function Yi(e){return e==="running"?"working":e==="done"?"done":e==="failed"?"failed":"idle"}function Xi({detail:e,onOpenSession:t}){let[n,a]=me.useState(()=>new Set),r=e.steps.filter(c=>c.kind==="work"),d=r.filter(c=>c.status==="done").length,i=c=>{a(m=>{let s=new Set(m);return s.has(c)?s.delete(c):s.add(c),s})};return(0,M.jsx)("section",{className:"wand-team-work-tasks","aria-label":"\u5DE5\u4F5C\u4EFB\u52A1",children:(0,M.jsxs)("div",{className:"wand-team-work-tasks-inner",children:[(0,M.jsxs)("header",{className:"wand-team-work-tasks-head",children:[(0,M.jsx)("h2",{children:"\u5DE5\u4F5C\u4EFB\u52A1"}),(0,M.jsx)("small",{children:r.length?`${d}/${r.length} \u5B8C\u6210`:"\u7B49\u5F85\u6D3E\u5DE5"})]}),r.length?(0,M.jsx)("ol",{className:"wand-team-work-list",children:r.map(c=>{let m=Xe(e).members.find(g=>g.id===c.memberId),s=n.has(c.id);return(0,M.jsxs)("li",{className:"wand-team-work-item","data-status":c.status,"data-open":s||void 0,children:[(0,M.jsxs)("button",{type:"button",className:"wand-team-work-head","aria-expanded":s,onClick:()=>i(c.id),children:[(0,M.jsxs)("span",{className:"wand-team-work-seq",children:["#",c.seq]}),(0,M.jsx)("span",{className:"wand-team-work-title",children:c.title||"\u6210\u5458\u6B65\u9AA4"}),(0,M.jsx)("span",{className:"wand-team-work-status",children:ds[c.status]}),(0,M.jsx)(ye.WandIcon,{name:"chevronDown",size:14})]}),(0,M.jsx)("div",{className:"wand-team-work-body","data-open":s||void 0,inert:!s,children:(0,M.jsxs)("div",{className:"wand-team-work-body-inner",children:[(0,M.jsxs)("div",{className:"wand-team-work-member",children:[m?(0,M.jsx)(Aa.TeamAvatar,{member:m,size:"sm",state:Yi(c.status)}):null,(0,M.jsx)("span",{className:"wand-team-work-member-name",children:m?.name??c.memberId}),m?.duty?(0,M.jsx)("small",{className:"wand-team-work-member-duty",children:m.duty}):null]}),(0,M.jsxs)("dl",{className:"wand-team-work-meta",children:[(0,M.jsxs)("div",{children:[(0,M.jsx)("dt",{children:"\u72B6\u6001"}),(0,M.jsx)("dd",{children:ds[c.status]})]}),c.reportPath?(0,M.jsxs)("div",{children:[(0,M.jsx)("dt",{children:"\u62A5\u544A\u6587\u4EF6"}),(0,M.jsx)("dd",{children:(0,M.jsx)("code",{children:c.reportPath})})]}):null]}),c.report?(0,M.jsx)("p",{className:"wand-team-work-report",children:c.report}):null,c.sessionId&&t?(0,M.jsxs)(ye.WandButton,{kind:"ghost",size:"small",onClick:()=>t(c.sessionId),children:[(0,M.jsx)(ye.WandIcon,{name:"terminal",size:14,slot:"start"}),"\u6253\u5F00\u4F1A\u8BDD"]}):null]})})]},c.id)})}):(0,M.jsx)("p",{className:"wand-team-empty-line",children:"\u8D1F\u8D23\u4EBA\u8FD8\u6CA1\u6709\u6D3E\u53D1\u5DE5\u4F5C\u4EFB\u52A1\u3002"})]})})}function ps({runId:e,sidebarOpen:t=!1,onBack:n,onOpenSidebar:a,onOpenSession:r}){let[d,i]=me.useState(null),[c,m]=me.useState(""),s=me.useRef(e);s.current=e;let g=me.useRef(0),p=me.useRef(""),v=d&&(d.run.id===e||p.current===e)?d:null,w=!!v&&v.run.id!==e,h=v?.run.taskId??"";me.useEffect(()=>()=>{g.current++},[]);let f=me.useCallback(async()=>{let E=++g.current;if(!e){m("\u6CA1\u6709\u8981\u6253\u5F00\u7684\u7FA4\u804A\u3002");return}m("");try{let k=await vt.aiTeamsRepository.detail(e);if(E!==g.current||s.current!==e)return;let C=await Vi(k);if(E!==g.current||s.current!==e)return;if(C){p.current=C,Ra.taskBoardController.open("","","teamchat",C);return}i(L=>$e(L,k)),p.current="",m("")}catch(k){if(E!==g.current||s.current!==e)return;let C=(0,ls.failureMessage)(k,"\u7FA4\u804A\u52A0\u8F7D\u5931\u8D25\u3002");m(p.current===e?`\u65B0\u4E00\u8F6E\u52A0\u8F7D\u5931\u8D25\uFF0C\u5F53\u524D\u663E\u793A\u4E0A\u4E00\u8F6E\u8BB0\u5F55\u3002${C}`:C)}},[e]);me.useEffect(()=>{p.current!==e&&(p.current="",i(null)),m(""),f()},[f]),me.useEffect(()=>(0,vt.subscribeAiTeamRunChanges)(E=>{(E.runId===e||h&&E.taskId===h)&&f()}),[f,e,h]),me.useEffect(()=>(0,vt.subscribeAiTeamDefinitionChanges)(E=>{E===v?.run.teamId&&f()}),[f,v?.run.teamId]),me.useEffect(()=>(0,ms.subscribeTaskChanges)(()=>{f()}),[f]);let R=me.useCallback(E=>{E.run.id===s.current&&i(k=>$e(k,E))},[]),y=me.useCallback(()=>{n?n():Ra.taskBoardController.close()},[n]);me.useEffect(()=>{let E=k=>{k.key!=="Escape"||k.defaultPrevented||k.target?.closest("input, textarea, [contenteditable='true'], [role='dialog']")||y()};return window.addEventListener("keydown",E),()=>window.removeEventListener("keydown",E)},[y]);let x=v&&!w?Bt[v.run.status]:null;return(0,M.jsxs)("section",{className:"task-board-native-page wand-team-chat-page","aria-label":"\u7FA4\u804A",children:[(0,M.jsxs)("header",{className:"task-board-workspace-header",children:[(0,M.jsxs)("div",{className:"task-board-kicker",children:[a?(0,M.jsx)(ye.WandIconButton,{className:"task-board-icon-button","aria-label":t?"\u5173\u95ED\u4EFB\u52A1\u5217\u8868":"\u6253\u5F00\u4EFB\u52A1",onClick:a,children:(0,M.jsx)(cs.SidebarToggleIcon,{open:t,size:16})}):null,(0,M.jsx)(ye.WandIconButton,{className:"task-board-icon-button","aria-label":"\u8FD4\u56DE\u4E0A\u4E00\u4F1A\u8BDD",title:"\u8FD4\u56DE\u4E0A\u4E00\u4F1A\u8BDD",onClick:y,children:(0,M.jsx)(ye.WandIcon,{name:"chevronLeft"})}),v?(0,M.jsx)("span",{className:"wand-team-chat-heading-avatar","aria-hidden":"true",children:(0,M.jsx)(Aa.TeamAvatarStack,{members:Xe(v).members,max:2,size:"sm"})}):null,(0,M.jsxs)("div",{className:"task-board-heading-copy",children:[(0,M.jsx)(ye.WandBreadcrumb,{variant:"title",className:"wand-team-chat-crumb",ariaLabel:"\u7FA4\u804A\u5BFC\u822A",items:[{label:"\u4EFB\u52A1\u770B\u677F",onNavigate:()=>Ra.taskBoardController.open("","","board")},{label:v?.chatTitle||"\u4EFB\u52A1\u5904\u7406\u7FA4"}]}),(0,M.jsx)("p",{children:w?c?"\u4E0A\u4E00\u8F6E\u8BB0\u5F55 \xB7 \u65B0\u4E00\u8F6E\u52A0\u8F7D\u5931\u8D25":"\u4E0A\u4E00\u8F6E\u8BB0\u5F55 \xB7 \u6B63\u5728\u63A5\u5165\u65B0\u4E00\u8F6E\u2026":v?`${Xe(v).members.length} \u4F4D\u6210\u5458 \xB7 \u56E2\u961F\u7FA4\u804A`:c||"\u6B63\u5728\u52A0\u8F7D\u7FA4\u804A\u2026"})]})]}),v&&x?(0,M.jsx)("div",{className:"task-board-header-actions wand-team-chat-head-meta",children:(0,M.jsx)(ye.WandBadge,{tone:x.tone,children:x.label})}):null]}),c?(0,M.jsxs)("div",{className:"task-board-native-banner is-error",role:"alert",children:[(0,M.jsx)("span",{children:c}),e?(0,M.jsx)(ye.WandButton,{kind:"ghost",size:"small",onClick:()=>{f()},children:"\u91CD\u65B0\u52A0\u8F7D"}):null]}):null,(0,M.jsx)("div",{className:"wand-team-chat-body",children:v?(0,M.jsx)(Tt,{detail:v,staleRun:w,onChange:R,onOpenSession:r,details:(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(Xi,{detail:v,onOpenSession:r}),v.run.chatSessionId&&r?(0,M.jsx)(ye.WandButton,{kind:"ghost",size:"small",onClick:()=>r(v.run.chatSessionId),children:"\u67E5\u770B\u5B8C\u6574\u4F1A\u8BDD\u8BB0\u5F55"}):null]})}):c?null:(0,M.jsx)("p",{className:"wand-team-empty-line",children:"\u6B63\u5728\u52A0\u8F7D\u2026"})})]})}var us=__wandCssTextPool[0];var hs=b(fs(),1);(0,hs.installStyleSheet)("wand-ai-teams-styles",us);globalThis.__wandAiTeamsChunk={AiTeamsPage:ss,TaskTeamRunPanel:br,TeamChatView:Tt,TeamChatPage:ps};})();
20
20
 
21
21
  })();