@tutti-os/agent-gui 0.0.33 → 0.0.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -0
- package/dist/{AgentMessageMarkdown-Cp70W-Z2.d.ts → AgentMessageMarkdown-CU6gRvTm.d.ts} +53 -2
- package/dist/agent-conversation/index.d.ts +4 -4
- package/dist/agent-conversation/index.js +5 -5
- package/dist/agent-message-center/index.d.ts +2 -2
- package/dist/agent-message-center/index.js +29 -8
- package/dist/agent-message-center/index.js.map +1 -1
- package/dist/{agentConversationVM-BElW2LNR.d.ts → agentConversationVM-xuzmD5IL.d.ts} +2 -0
- package/dist/app/renderer/agentactivity.css +53 -76
- package/dist/{chunk-SGQ4C7JE.js → chunk-2ADVHCST.js} +2 -1
- package/dist/chunk-2ADVHCST.js.map +1 -0
- package/dist/{chunk-ERRANBGS.js → chunk-I5GHWK6X.js} +7 -11
- package/dist/chunk-I5GHWK6X.js.map +1 -0
- package/dist/{chunk-ZWYHKGQ7.js → chunk-NCS7X3XY.js} +11 -9
- package/dist/{chunk-ZWYHKGQ7.js.map → chunk-NCS7X3XY.js.map} +1 -1
- package/dist/{chunk-A4KUAXE5.js → chunk-PVEFWBH6.js} +2 -2
- package/dist/{chunk-WPWZKKKV.js → chunk-RUO6SDNC.js} +2 -2
- package/dist/{chunk-OOQIJXCA.js → chunk-SV4UKLJO.js} +3 -2
- package/dist/{chunk-RDCBACWR.js → chunk-TCKH7GZ6.js} +5 -5
- package/dist/{chunk-RQ3HEF42.js → chunk-TQFYX7KY.js} +36 -6
- package/dist/chunk-TQFYX7KY.js.map +1 -0
- package/dist/{chunk-AFTAFV2C.js → chunk-XPVYQUFK.js} +78 -12
- package/dist/chunk-XPVYQUFK.js.map +1 -0
- package/dist/{chunk-GSZPMKFW.js → chunk-ZR2LZVN6.js} +229 -21
- package/dist/chunk-ZR2LZVN6.js.map +1 -0
- package/dist/context-mention-palette/index.js +6 -6
- package/dist/i18n/index.d.ts +34 -4
- package/dist/i18n/index.js +1 -1
- package/dist/index.d.ts +5 -4
- package/dist/index.js +892 -198
- package/dist/index.js.map +1 -1
- package/dist/plan-decision-ops.d.ts +1 -1
- package/dist/workbench/contribution.js +1 -1
- package/dist/workbench/index.js +1 -1
- package/dist/workspace-agent-generated-files.js +2 -2
- package/dist/{workspaceLinkActions-CqWZaCY4.d.ts → workspaceLinkActions-C6POH38D.d.ts} +7 -1
- package/package.json +12 -12
- package/dist/chunk-AFTAFV2C.js.map +0 -1
- package/dist/chunk-ERRANBGS.js.map +0 -1
- package/dist/chunk-GSZPMKFW.js.map +0 -1
- package/dist/chunk-RQ3HEF42.js.map +0 -1
- package/dist/chunk-SGQ4C7JE.js.map +0 -1
- /package/dist/{chunk-A4KUAXE5.js.map → chunk-PVEFWBH6.js.map} +0 -0
- /package/dist/{chunk-WPWZKKKV.js.map → chunk-RUO6SDNC.js.map} +0 -0
- /package/dist/{chunk-OOQIJXCA.js.map → chunk-SV4UKLJO.js.map} +0 -0
- /package/dist/{chunk-RDCBACWR.js.map → chunk-TCKH7GZ6.js.map} +0 -0
package/README.md
CHANGED
|
@@ -3,6 +3,11 @@
|
|
|
3
3
|
AgentGUI renders workspace agent sessions, timelines, approvals, and composer
|
|
4
4
|
UI. It is a UI package, not a host transport or business-core package.
|
|
5
5
|
|
|
6
|
+
Before changing AgentGUI, AgentGuiNode, or the agent conversation module, read
|
|
7
|
+
[AgentGuiNode Architecture and Troubleshooting](../../../docs/architecture/agent-gui-node.md).
|
|
8
|
+
It records the source-of-truth rules, common chains, debugging playbooks, and
|
|
9
|
+
the self-evolution loop for durable lessons.
|
|
10
|
+
|
|
6
11
|
## Data Source
|
|
7
12
|
|
|
8
13
|
`AgentActivityRuntime` is the AgentGUI source for agent activity data.
|
|
@@ -1,8 +1,18 @@
|
|
|
1
1
|
import { AgentActivityUsage } from '@tutti-os/agent-activity-core';
|
|
2
2
|
import { A as AgentHostBatchUserInfoInput, a as AgentHostBatchUserInfoResult, b as AgentHostDeleteWorkspaceAgentSessionInput, k as AgentHostWorkspaceAgentSessionSummaryInput, j as AgentHostWorkspaceAgentSessionSummary, e as AgentHostWorkspaceAgentListInput, l as AgentHostWorkspaceAgentSnapshot, i as AgentHostWorkspaceAgentSessionMessagesInput, h as AgentHostWorkspaceAgentSessionMessages, p as WorkspaceAgentActivitySyncState } from './workspaceAgentActivityListViewModel-DwpbJGDx.js';
|
|
3
|
-
import { A as AgentApprovalItemVM, a as AgentAskUserQuestionVM, b as AgentConversationPromptVM, c as AgentConversationVM, W as WorkspaceAgentSessionDetailViewModel } from './agentConversationVM-
|
|
3
|
+
import { A as AgentApprovalItemVM, a as AgentAskUserQuestionVM, b as AgentConversationPromptVM, c as AgentConversationVM, W as WorkspaceAgentSessionDetailViewModel } from './agentConversationVM-xuzmD5IL.js';
|
|
4
4
|
import { WorkspaceUserProjectService } from '@tutti-os/workspace-user-project/contracts';
|
|
5
5
|
|
|
6
|
+
declare const APP_ERROR_CODES: readonly ["common.invalid_input", "common.approved_path_required", "common.unavailable", "common.unexpected", "session.not_found", "control_surface.unauthorized", "workspace.select_directory_failed", "workspace.select_files_failed", "workspace.ensure_directory_failed", "workspace.import_files_failed", "workspace.read_file_failed", "workspace.write_file_failed", "workspace.export_file_failed", "workspace.copy_path_failed", "workspace.host_unsupported", "workspace.runtime_artifact_unavailable", "runtime.guest_agent_lane_unavailable", "workspace.room_full", "workspace.room_delete_forbidden", "workspace.room_delete_not_found", "filesystem.create_directory_failed", "filesystem.read_file_bytes_failed", "filesystem.read_file_text_failed", "filesystem.write_file_text_failed", "filesystem.copy_entry_failed", "filesystem.move_entry_failed", "filesystem.rename_entry_failed", "filesystem.delete_entry_failed", "filesystem.read_directory_failed", "filesystem.stat_failed", "terminal.spawn_failed", "terminal.write_failed", "terminal.resize_failed", "terminal.close_failed", "terminal.attach_failed", "terminal.detach_failed", "terminal.snapshot_failed", "agent.list_models_failed", "agent.launch_failed", "agent.read_last_message_failed", "agent.provider_session_not_found", "agent.resume_session_not_local", "agent.resume_session_resolve_failed", "agent.settings_require_new_session", "task.suggest_title_failed", "persistence.unavailable", "persistence.quota_exceeded", "persistence.payload_too_large", "persistence.io_failed", "persistence.invalid_state", "persistence.invalid_node_id", "update.get_state_failed", "update.configure_failed", "update.check_failed", "update.download_failed", "update.install_failed", "PACKAGE_DOWNLOAD_INTERRUPTED", "PACKAGE_DOWNLOAD_HTTP_STATUS", "PACKAGE_DOWNLOAD_INVALID", "PACKAGE_DOWNLOAD_DISK_ERROR"];
|
|
7
|
+
type AppErrorCode = (typeof APP_ERROR_CODES)[number];
|
|
8
|
+
type AppErrorParamValue = boolean | number | string | null;
|
|
9
|
+
type AppErrorParams = Record<string, AppErrorParamValue>;
|
|
10
|
+
interface AppErrorDescriptor {
|
|
11
|
+
code: AppErrorCode;
|
|
12
|
+
params?: AppErrorParams;
|
|
13
|
+
debugMessage?: string;
|
|
14
|
+
}
|
|
15
|
+
|
|
6
16
|
type AgentHostAgentSessionProvider = "claude-code" | "codex" | "nexight" | "gemini" | "hermes" | "openclaw";
|
|
7
17
|
type AgentHostAgentSessionPermissionModeSemantic = "ask-before-write" | "accept-edits" | "locked-down" | "auto" | "full-access" | "unconfigurable";
|
|
8
18
|
type AgentHostAgentSessionReasoningEffort = "minimal" | "low" | "medium" | "high" | "xhigh" | string;
|
|
@@ -194,6 +204,37 @@ interface AgentHostListWorkspaceAgentProbesInput {
|
|
|
194
204
|
}
|
|
195
205
|
type AgentHostWorkspaceAgentProbesResult = AgentProbeSnapshot;
|
|
196
206
|
|
|
207
|
+
type PersistWriteLevel = "full" | "no_scrollback" | "settings_only";
|
|
208
|
+
type PersistWriteFailureReason = "unavailable" | "quota" | "payload_too_large" | "io" | "unknown";
|
|
209
|
+
type PersistWriteResult = {
|
|
210
|
+
ok: true;
|
|
211
|
+
level: PersistWriteLevel;
|
|
212
|
+
bytes: number;
|
|
213
|
+
revision?: number;
|
|
214
|
+
} | {
|
|
215
|
+
ok: false;
|
|
216
|
+
reason: PersistWriteFailureReason;
|
|
217
|
+
error: AppErrorDescriptor;
|
|
218
|
+
};
|
|
219
|
+
type WorkspaceAgentReadStateKind = "completed" | "failed";
|
|
220
|
+
interface WorkspaceAgentReadStateBucket {
|
|
221
|
+
readIds: string[];
|
|
222
|
+
unreadIds: string[];
|
|
223
|
+
}
|
|
224
|
+
interface WorkspaceAgentReadStateSnapshot {
|
|
225
|
+
completed: WorkspaceAgentReadStateBucket;
|
|
226
|
+
failed: WorkspaceAgentReadStateBucket;
|
|
227
|
+
}
|
|
228
|
+
interface ReadWorkspaceAgentReadStateInput {
|
|
229
|
+
roomId: string;
|
|
230
|
+
userId: string;
|
|
231
|
+
}
|
|
232
|
+
interface WriteWorkspaceAgentReadStateInput extends ReadWorkspaceAgentReadStateInput {
|
|
233
|
+
kind: WorkspaceAgentReadStateKind;
|
|
234
|
+
readIds: string[];
|
|
235
|
+
unreadIds: string[];
|
|
236
|
+
}
|
|
237
|
+
|
|
197
238
|
interface ReadWorkspaceFileResult {
|
|
198
239
|
bytes: Uint8Array;
|
|
199
240
|
}
|
|
@@ -239,6 +280,10 @@ type AgentHostEnvironmentApi = AgentHostRecord & {
|
|
|
239
280
|
getBaseUrl?: () => AgentHostAsyncResult<string>;
|
|
240
281
|
warmupOpenclawGateway?: (input?: unknown) => AgentHostAsyncResult<unknown>;
|
|
241
282
|
};
|
|
283
|
+
type AgentHostPersistenceApi = AgentHostRecord & {
|
|
284
|
+
readWorkspaceAgentReadState: (input: ReadWorkspaceAgentReadStateInput) => AgentHostAsyncResult<WorkspaceAgentReadStateSnapshot>;
|
|
285
|
+
writeWorkspaceAgentReadState: (input: WriteWorkspaceAgentReadStateInput) => AgentHostAsyncResult<PersistWriteResult>;
|
|
286
|
+
};
|
|
242
287
|
interface AgentHostSelectedFile {
|
|
243
288
|
name?: string;
|
|
244
289
|
path: string;
|
|
@@ -278,6 +323,7 @@ interface AgentHostInputApi {
|
|
|
278
323
|
filesystem: AgentHostFilesystemApi;
|
|
279
324
|
meta?: AgentHostMetaApi;
|
|
280
325
|
onHostEvent?: (listener: (event: any) => void) => AgentHostUnsubscribe;
|
|
326
|
+
persistence?: AgentHostPersistenceApi;
|
|
281
327
|
runtime?: AgentHostEnvironmentApi;
|
|
282
328
|
userProjects?: AgentHostUserProjectsApi;
|
|
283
329
|
workspace: AgentHostWorkspaceApi;
|
|
@@ -424,6 +470,7 @@ interface AgentHostRuntimeApi {
|
|
|
424
470
|
filesystem: AgentHostFilesystemApi;
|
|
425
471
|
meta?: AgentHostMetaApi;
|
|
426
472
|
onHostEvent?: (listener: (event: any) => void) => AgentHostUnsubscribe;
|
|
473
|
+
persistence?: AgentHostPersistenceApi;
|
|
427
474
|
runtime?: AgentHostEnvironmentApi;
|
|
428
475
|
userProjects?: AgentHostUserProjectsApi;
|
|
429
476
|
workspace: AgentHostWorkspaceApi;
|
|
@@ -491,6 +538,7 @@ interface AgentGUIConversationSummary {
|
|
|
491
538
|
sortTimeUnixMs?: number;
|
|
492
539
|
updatedAtUnixMs: number;
|
|
493
540
|
hasUnreadCompletion?: boolean;
|
|
541
|
+
unreadCompletionKey?: string | null;
|
|
494
542
|
syncState?: WorkspaceAgentActivitySyncState;
|
|
495
543
|
}
|
|
496
544
|
type AgentGUIConversationStatus = "working" | "waiting" | "ready" | "completed" | "failed" | "canceled";
|
|
@@ -638,9 +686,12 @@ interface AgentGUINodeViewModel {
|
|
|
638
686
|
draftContent: AgentComposerDraft;
|
|
639
687
|
isLoadingConversations: boolean;
|
|
640
688
|
isLoadingMessages: boolean;
|
|
689
|
+
isLoadingOlderMessages: boolean;
|
|
690
|
+
hasOlderMessages: boolean;
|
|
641
691
|
isCreatingConversation: boolean;
|
|
642
692
|
isSubmitting: boolean;
|
|
643
693
|
isInterrupting: boolean;
|
|
694
|
+
isCancelPending: boolean;
|
|
644
695
|
isRespondingApproval: boolean;
|
|
645
696
|
promptImagesSupported: boolean;
|
|
646
697
|
compactSupported: boolean | null;
|
|
@@ -676,4 +727,4 @@ interface AgentMessageMarkdownWorkspaceAppIcon {
|
|
|
676
727
|
workspaceId?: string | null;
|
|
677
728
|
}
|
|
678
729
|
|
|
679
|
-
export type { AgentGUINodeData as A, NodeFrame as N,
|
|
730
|
+
export type { AgentGUINodeData as A, NodeFrame as N, PersistWriteResult as P, ReadWorkspaceAgentReadStateInput as R, WorkspaceAgentReadStateSnapshot as W, AgentGUINodeViewModel as a, AgentGUIProviderSkillOption as b, AgentHostActivateAgentSessionResult as c, AgentHostAgentSessionComposerSettings as d, AgentHostAgentSessionState as e, AgentHostApi as f, AgentHostInputApi as g, AgentHostRuntimeApi as h, AgentHostSelectFilesInput as i, AgentHostUnactivateAgentSessionResult as j, AgentHostUpdateAgentSessionSettingsResult as k, AgentMessageMarkdownWorkspaceAppIcon as l, AgentProbeProvider as m, AgentProbeSnapshot as n, AgentProvider as o, AgentProviderProbeListInput as p, AgentProviderProbeListResult as q, AgentUsageQuota as r, AgentUsageSnapshot as s, Point as t, WriteWorkspaceAgentReadStateInput as u };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as react from 'react';
|
|
2
2
|
import { ReactNode, JSX } from 'react';
|
|
3
|
-
import { W as WorkspaceLinkAction } from '../workspaceLinkActions-
|
|
4
|
-
import { b as AgentGUIProviderSkillOption, l as AgentMessageMarkdownWorkspaceAppIcon } from '../AgentMessageMarkdown-
|
|
5
|
-
import { c as AgentConversationVM, W as WorkspaceAgentSessionDetailViewModel } from '../agentConversationVM-
|
|
6
|
-
export { B as BuildWorkspaceAgentSessionDetailInput, d as buildWorkspaceAgentSessionDetailViewModel } from '../agentConversationVM-
|
|
3
|
+
import { W as WorkspaceLinkAction } from '../workspaceLinkActions-C6POH38D.js';
|
|
4
|
+
import { b as AgentGUIProviderSkillOption, l as AgentMessageMarkdownWorkspaceAppIcon } from '../AgentMessageMarkdown-CU6gRvTm.js';
|
|
5
|
+
import { c as AgentConversationVM, W as WorkspaceAgentSessionDetailViewModel } from '../agentConversationVM-xuzmD5IL.js';
|
|
6
|
+
export { B as BuildWorkspaceAgentSessionDetailInput, d as buildWorkspaceAgentSessionDetailViewModel } from '../agentConversationVM-xuzmD5IL.js';
|
|
7
7
|
export { W as WorkspaceAgentActivityCard, n as WorkspaceAgentActivitySession, q as WorkspaceAgentActivityTimelineItem } from '../workspaceAgentActivityListViewModel-DwpbJGDx.js';
|
|
8
8
|
import '@tutti-os/workspace-issue-manager/core';
|
|
9
9
|
import '@tutti-os/agent-activity-core';
|
|
@@ -6,15 +6,15 @@ import {
|
|
|
6
6
|
projectAgentConversationVM,
|
|
7
7
|
reconcileProjectedAgentConversationVM,
|
|
8
8
|
useProjectedAgentConversation
|
|
9
|
-
} from "../chunk-
|
|
10
|
-
import "../chunk-
|
|
11
|
-
import "../chunk-
|
|
9
|
+
} from "../chunk-ZR2LZVN6.js";
|
|
10
|
+
import "../chunk-XPVYQUFK.js";
|
|
11
|
+
import "../chunk-PVEFWBH6.js";
|
|
12
12
|
import "../chunk-Y35GDLP2.js";
|
|
13
|
-
import "../chunk-
|
|
13
|
+
import "../chunk-2ADVHCST.js";
|
|
14
14
|
import "../chunk-TYGL25EL.js";
|
|
15
15
|
import {
|
|
16
16
|
translate
|
|
17
|
-
} from "../chunk-
|
|
17
|
+
} from "../chunk-TQFYX7KY.js";
|
|
18
18
|
import "../chunk-LUGELG5V.js";
|
|
19
19
|
import "../chunk-PJP5BUU6.js";
|
|
20
20
|
|
|
@@ -2,9 +2,9 @@ import * as react from 'react';
|
|
|
2
2
|
import { JSX } from 'react';
|
|
3
3
|
import { I18nRuntime } from '@tutti-os/ui-i18n-runtime';
|
|
4
4
|
import { useTranslation, AgentGuiI18nLocale, TranslateFn } from '../i18n/index.js';
|
|
5
|
-
import { W as WorkspaceLinkAction } from '../workspaceLinkActions-
|
|
5
|
+
import { W as WorkspaceLinkAction } from '../workspaceLinkActions-C6POH38D.js';
|
|
6
6
|
import { AgentActivityNeedsAttentionItem, AgentActivitySnapshot } from '@tutti-os/agent-activity-core';
|
|
7
|
-
import { b as AgentConversationPromptVM } from '../agentConversationVM-
|
|
7
|
+
import { b as AgentConversationPromptVM } from '../agentConversationVM-xuzmD5IL.js';
|
|
8
8
|
import { o as WorkspaceAgentActivityStatus } from '../workspaceAgentActivityListViewModel-DwpbJGDx.js';
|
|
9
9
|
export { PLAN_IMPLEMENTATION_ACTION_IMPLEMENT, PLAN_IMPLEMENTATION_PROMPT } from '../plan-decision-ops.js';
|
|
10
10
|
import '@tutti-os/workspace-issue-manager/core';
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
approvalOptionDisplayLabel,
|
|
4
4
|
getPromptToolDetails,
|
|
5
5
|
isPromptRequestIdTitle
|
|
6
|
-
} from "../chunk-
|
|
6
|
+
} from "../chunk-TCKH7GZ6.js";
|
|
7
7
|
import {
|
|
8
8
|
PLAN_IMPLEMENTATION_ACTION_IMPLEMENT,
|
|
9
9
|
PLAN_IMPLEMENTATION_PROMPT,
|
|
@@ -16,17 +16,17 @@ import {
|
|
|
16
16
|
cn,
|
|
17
17
|
extractAgentMcpToolTarget,
|
|
18
18
|
normalizeAskUserQuestions
|
|
19
|
-
} from "../chunk-
|
|
19
|
+
} from "../chunk-XPVYQUFK.js";
|
|
20
20
|
import {
|
|
21
21
|
managedAgentRoundedIconUrl,
|
|
22
22
|
userAvatarPlaceholderUrl,
|
|
23
23
|
workspaceAgentActivityStatusLabel
|
|
24
|
-
} from "../chunk-
|
|
24
|
+
} from "../chunk-RUO6SDNC.js";
|
|
25
25
|
import "../chunk-MTFSQWZ6.js";
|
|
26
26
|
import {
|
|
27
27
|
resolveWorkspaceAgentSessionSortTimeUnixMs
|
|
28
28
|
} from "../chunk-IBIMGLCD.js";
|
|
29
|
-
import "../chunk-
|
|
29
|
+
import "../chunk-2ADVHCST.js";
|
|
30
30
|
import {
|
|
31
31
|
workspaceAgentProviderLabel
|
|
32
32
|
} from "../chunk-TYGL25EL.js";
|
|
@@ -36,7 +36,7 @@ import {
|
|
|
36
36
|
import {
|
|
37
37
|
AgentGuiI18nProvider,
|
|
38
38
|
useTranslation
|
|
39
|
-
} from "../chunk-
|
|
39
|
+
} from "../chunk-TQFYX7KY.js";
|
|
40
40
|
import "../chunk-PJP5BUU6.js";
|
|
41
41
|
|
|
42
42
|
// agent-message-center/WorkspaceAgentMessageCenterPanel.tsx
|
|
@@ -963,6 +963,7 @@ var WorkspaceAgentMessageCenterCard = memo(
|
|
|
963
963
|
const displayTitle = normalizeAgentTitleText(item.title);
|
|
964
964
|
const summary = messageCenterVisibleSummary(item);
|
|
965
965
|
const displayStatus = statusClass(item);
|
|
966
|
+
const statusTone = messageCenterStatusTone(item);
|
|
966
967
|
const statusLabel = workspaceAgentActivityStatusLabel(displayStatus, t);
|
|
967
968
|
return /* @__PURE__ */ jsxs(
|
|
968
969
|
"article",
|
|
@@ -1004,14 +1005,17 @@ var WorkspaceAgentMessageCenterCard = memo(
|
|
|
1004
1005
|
/* @__PURE__ */ jsxs(
|
|
1005
1006
|
"span",
|
|
1006
1007
|
{
|
|
1007
|
-
className:
|
|
1008
|
+
className: cn2(
|
|
1009
|
+
"workspace-agent-message-center__status inline-flex shrink-0 items-center gap-1.5 text-[11px] font-semibold leading-4",
|
|
1010
|
+
messageCenterStatusToneClass(statusTone)
|
|
1011
|
+
),
|
|
1008
1012
|
"data-status": displayStatus,
|
|
1009
1013
|
title: statusLabel,
|
|
1010
1014
|
children: [
|
|
1011
1015
|
/* @__PURE__ */ jsx2(
|
|
1012
1016
|
StatusDot,
|
|
1013
1017
|
{
|
|
1014
|
-
tone:
|
|
1018
|
+
tone: statusTone,
|
|
1015
1019
|
pulse: isWaitingMessageCenterItem(item) || item.status === "working",
|
|
1016
1020
|
size: "sm",
|
|
1017
1021
|
title: statusLabel
|
|
@@ -1859,6 +1863,20 @@ function messageCenterStatusTone(item) {
|
|
|
1859
1863
|
}
|
|
1860
1864
|
return "neutral";
|
|
1861
1865
|
}
|
|
1866
|
+
function messageCenterStatusToneClass(tone) {
|
|
1867
|
+
switch (tone) {
|
|
1868
|
+
case "amber":
|
|
1869
|
+
return "text-[var(--state-warning)]";
|
|
1870
|
+
case "blue":
|
|
1871
|
+
return "text-[var(--status-running)]";
|
|
1872
|
+
case "green":
|
|
1873
|
+
return "text-[var(--state-success)]";
|
|
1874
|
+
case "red":
|
|
1875
|
+
return "text-[var(--state-danger)]";
|
|
1876
|
+
case "neutral":
|
|
1877
|
+
return "text-[var(--text-secondary)]";
|
|
1878
|
+
}
|
|
1879
|
+
}
|
|
1862
1880
|
|
|
1863
1881
|
// agent-message-center/WorkspaceAgentMessageCenterAttentionDeck.tsx
|
|
1864
1882
|
import { jsx as jsx3, jsxs as jsxs2 } from "react/jsx-runtime";
|
|
@@ -3020,7 +3038,10 @@ function MessageCenterGroupHeading({
|
|
|
3020
3038
|
return /* @__PURE__ */ jsxs4(
|
|
3021
3039
|
"h3",
|
|
3022
3040
|
{
|
|
3023
|
-
className:
|
|
3041
|
+
className: cn5(
|
|
3042
|
+
"flex min-w-0 items-center gap-1.5 text-[11px] font-normal leading-4",
|
|
3043
|
+
statusSignal ? messageCenterStatusToneClass(statusSignal.tone) : "text-[var(--text-tertiary)]"
|
|
3044
|
+
),
|
|
3024
3045
|
title: `${group.label} \xB7 ${group.items.length}`,
|
|
3025
3046
|
children: [
|
|
3026
3047
|
statusSignal ? /* @__PURE__ */ jsx5(
|