@tutti-os/agent-gui 0.0.201 → 0.0.203
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent-conversation/index.js +3 -3
- package/dist/agent-gui.d.ts +2 -1
- package/dist/agent-gui.js +8 -8
- package/dist/agent-message-center/index.js +3 -3
- package/dist/app/renderer/agentactivity.css +45 -115
- package/dist/{chunk-F5ARZZES.js → chunk-4OJSSUEU.js} +2 -2
- package/dist/{chunk-PWPVYNGO.js → chunk-FFMVDJOE.js} +2 -2
- package/dist/{chunk-3FA5JIDL.js → chunk-K5AOJ5DO.js} +1 -1
- package/dist/chunk-K5AOJ5DO.js.map +1 -0
- package/dist/{chunk-DAP74J63.js → chunk-LHT2UBPE.js} +302 -165
- package/dist/chunk-LHT2UBPE.js.map +1 -0
- package/dist/{chunk-ZADHMOME.js → chunk-NEH45ROF.js} +30 -16
- package/dist/chunk-NEH45ROF.js.map +1 -0
- package/dist/{chunk-MFQB4LR5.js → chunk-RD3ZAYNV.js} +3 -3
- package/dist/{chunk-5ZO3H4C5.js → chunk-VDTG6M6K.js} +2 -2
- package/dist/{chunk-7NUEEGAA.js → chunk-X5V6P2EB.js} +5 -1
- package/dist/chunk-X5V6P2EB.js.map +1 -0
- package/dist/context-mention-palette/index.js +3 -3
- package/dist/conversation-rail-runtime.d.ts +2 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +8 -8
- package/dist/mention-search.js +2 -2
- package/dist/workbench/contribution.js +1 -1
- package/dist/workbench/index.js +1 -1
- package/dist/workbench/tool-sidebar/index.js +1 -1
- package/dist/workbench/tool-sidebar/index.js.map +1 -1
- package/package.json +14 -14
- package/dist/chunk-3FA5JIDL.js.map +0 -1
- package/dist/chunk-7NUEEGAA.js.map +0 -1
- package/dist/chunk-DAP74J63.js.map +0 -1
- package/dist/chunk-ZADHMOME.js.map +0 -1
- /package/dist/{chunk-F5ARZZES.js.map → chunk-4OJSSUEU.js.map} +0 -0
- /package/dist/{chunk-PWPVYNGO.js.map → chunk-FFMVDJOE.js.map} +0 -0
- /package/dist/{chunk-MFQB4LR5.js.map → chunk-RD3ZAYNV.js.map} +0 -0
- /package/dist/{chunk-5ZO3H4C5.js.map → chunk-VDTG6M6K.js.map} +0 -0
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
resolveAgentGuiSessionProviderFlatIconUrl,
|
|
16
16
|
resolveNextAgentGUIConversationRailWidthPx,
|
|
17
17
|
shouldAutoCollapseAgentGUIConversationRail
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-X5V6P2EB.js";
|
|
19
19
|
import {
|
|
20
20
|
resolveAgentGuiWorkbenchProviderLabel
|
|
21
21
|
} from "./chunk-MGSRWYRN.js";
|
|
@@ -69,7 +69,7 @@ import {
|
|
|
69
69
|
toLocalShortDateTime,
|
|
70
70
|
updateAgentComposerDraft,
|
|
71
71
|
useProjectedAgentConversation
|
|
72
|
-
} from "./chunk-
|
|
72
|
+
} from "./chunk-NEH45ROF.js";
|
|
73
73
|
import {
|
|
74
74
|
agentRichTextContentToPromptText,
|
|
75
75
|
createAgentRichTextInputExtensions,
|
|
@@ -94,7 +94,7 @@ import {
|
|
|
94
94
|
AgentFileMentionPalette,
|
|
95
95
|
agentMentionItemKey,
|
|
96
96
|
isAgentMentionItemDisabled
|
|
97
|
-
} from "./chunk-
|
|
97
|
+
} from "./chunk-VDTG6M6K.js";
|
|
98
98
|
import {
|
|
99
99
|
normalizeAgentGUIAgents,
|
|
100
100
|
projectAgentGUIAgentsToTargets
|
|
@@ -105,7 +105,7 @@ import {
|
|
|
105
105
|
DEFAULT_AGENT_MENTION_FILTER,
|
|
106
106
|
agentGuiScheduler,
|
|
107
107
|
buildWorkspaceAgentActivityListViewModel
|
|
108
|
-
} from "./chunk-
|
|
108
|
+
} from "./chunk-4OJSSUEU.js";
|
|
109
109
|
import {
|
|
110
110
|
AGENT_RICH_TEXT_CARET_ANCHOR,
|
|
111
111
|
agentComposerFileMentionReferences,
|
|
@@ -134,7 +134,7 @@ import {
|
|
|
134
134
|
normalizePlanIssueBudgetPreset,
|
|
135
135
|
planImplementationPromptFromPlanTurn,
|
|
136
136
|
planIssueBudgetPresetsEqual
|
|
137
|
-
} from "./chunk-
|
|
137
|
+
} from "./chunk-RD3ZAYNV.js";
|
|
138
138
|
import {
|
|
139
139
|
useEngineSelector
|
|
140
140
|
} from "./chunk-EVQ4JY3N.js";
|
|
@@ -144,7 +144,7 @@ import {
|
|
|
144
144
|
blobToBase64,
|
|
145
145
|
normalizeAgentApprovalPurpose,
|
|
146
146
|
resolveWorkspaceLinkAction
|
|
147
|
-
} from "./chunk-
|
|
147
|
+
} from "./chunk-FFMVDJOE.js";
|
|
148
148
|
import {
|
|
149
149
|
AgentTargetPresentationProvider,
|
|
150
150
|
cn,
|
|
@@ -162,7 +162,7 @@ import {
|
|
|
162
162
|
useAgentHostApi,
|
|
163
163
|
useOptionalAgentActivityRuntime,
|
|
164
164
|
useOptionalAgentHostApi
|
|
165
|
-
} from "./chunk-
|
|
165
|
+
} from "./chunk-K5AOJ5DO.js";
|
|
166
166
|
import {
|
|
167
167
|
MANAGED_AGENT_ICON_FALLBACK_URL,
|
|
168
168
|
MANAGED_AGENT_ICON_URLS,
|
|
@@ -188,11 +188,11 @@ import {
|
|
|
188
188
|
} from "./chunk-O433KXLK.js";
|
|
189
189
|
|
|
190
190
|
// AgentGUI.tsx
|
|
191
|
-
import { memo as
|
|
191
|
+
import { memo as memo16, useMemo as useMemo51 } from "react";
|
|
192
192
|
import { TooltipProvider as TooltipProvider8 } from "@tutti-os/ui-system";
|
|
193
193
|
|
|
194
194
|
// agent-gui/agentGuiNode/AgentGUINode.tsx
|
|
195
|
-
import { memo as
|
|
195
|
+
import { memo as memo15, useCallback as useCallback69, useMemo as useMemo50, useRef as useRef61 } from "react";
|
|
196
196
|
import { createWorkspaceUserProjectI18nRuntime } from "@tutti-os/workspace-user-project/i18n";
|
|
197
197
|
import { createWorkspaceFileManagerI18nRuntime } from "@tutti-os/workspace-file-manager";
|
|
198
198
|
import { useReferenceProvenanceFilterCatalog } from "@tutti-os/workspace-file-reference/react";
|
|
@@ -5887,6 +5887,7 @@ function useAgentGUIActivation({
|
|
|
5887
5887
|
...input.initialTurnExpected !== void 0 ? { initialTurnExpected: input.initialTurnExpected } : {},
|
|
5888
5888
|
...input.initialGoalControl ? { initialGoalControl: { ...input.initialGoalControl } } : {},
|
|
5889
5889
|
...input.railSectionKey?.trim() ? { railSectionKey: input.railSectionKey.trim() } : {},
|
|
5890
|
+
...input.railPlacement ? { railPlacement: { ...input.railPlacement } } : {},
|
|
5890
5891
|
...input.initialDisplayPrompt ? { initialDisplayPrompt: input.initialDisplayPrompt } : {},
|
|
5891
5892
|
...input.runtimeContent ? { runtimeContent: input.runtimeContent } : {},
|
|
5892
5893
|
...input.submitDiagnostics ? { submitDiagnostics: input.submitDiagnostics } : {},
|
|
@@ -9154,6 +9155,30 @@ function normalizeOrchestrationIntensity(value) {
|
|
|
9154
9155
|
if (typeof value !== "number" || !Number.isFinite(value)) return null;
|
|
9155
9156
|
return Math.min(100, Math.max(0, Math.round(value)));
|
|
9156
9157
|
}
|
|
9158
|
+
function resolveInitialRailPlacement(input) {
|
|
9159
|
+
const selectedProjectPath = input.selectedProjectPath?.trim() ?? "";
|
|
9160
|
+
if (!selectedProjectPath) {
|
|
9161
|
+
return {
|
|
9162
|
+
version: 1,
|
|
9163
|
+
kind: "conversations",
|
|
9164
|
+
sectionKey: "conversations"
|
|
9165
|
+
};
|
|
9166
|
+
}
|
|
9167
|
+
const selectedProject = resolveAgentGUIConversationProject(
|
|
9168
|
+
selectedProjectPath,
|
|
9169
|
+
input.userProjects
|
|
9170
|
+
);
|
|
9171
|
+
const sectionKey = selectedProject?.sectionKey?.trim() ?? "";
|
|
9172
|
+
if (!sectionKey) {
|
|
9173
|
+
return null;
|
|
9174
|
+
}
|
|
9175
|
+
return {
|
|
9176
|
+
version: 1,
|
|
9177
|
+
kind: "project",
|
|
9178
|
+
projectPath: selectedProjectPath,
|
|
9179
|
+
sectionKey
|
|
9180
|
+
};
|
|
9181
|
+
}
|
|
9157
9182
|
function useAgentGUINewConversationActivation(input) {
|
|
9158
9183
|
const {
|
|
9159
9184
|
getCachedComposerOptions,
|
|
@@ -9222,11 +9247,14 @@ function useAgentGUINewConversationActivation(input) {
|
|
|
9222
9247
|
}
|
|
9223
9248
|
);
|
|
9224
9249
|
const selectedProjectPath = selectedProjectPathRef.current;
|
|
9225
|
-
const
|
|
9250
|
+
const railPlacement = resolveInitialRailPlacement({
|
|
9226
9251
|
selectedProjectPath,
|
|
9227
|
-
userProjectsRef.current
|
|
9228
|
-
);
|
|
9229
|
-
|
|
9252
|
+
userProjects: userProjectsRef.current
|
|
9253
|
+
});
|
|
9254
|
+
if (railPlacement === null) {
|
|
9255
|
+
return null;
|
|
9256
|
+
}
|
|
9257
|
+
const railSectionKey = railPlacement.sectionKey;
|
|
9230
9258
|
const initialNodeSettings = readNodeDefaultDraftSettings({
|
|
9231
9259
|
data: targetData.data,
|
|
9232
9260
|
defaultReasoningEffort,
|
|
@@ -9287,7 +9315,8 @@ function useAgentGUINewConversationActivation(input) {
|
|
|
9287
9315
|
...submitOptions?.capabilityRefs?.length ? { capabilityRefs: submitOptions.capabilityRefs } : {},
|
|
9288
9316
|
clientSubmitId: submitTrace.clientSubmitId,
|
|
9289
9317
|
cwd: selectedProjectPath ?? "",
|
|
9290
|
-
|
|
9318
|
+
railPlacement,
|
|
9319
|
+
railSectionKey,
|
|
9291
9320
|
initialContent: normalizedInitialContent,
|
|
9292
9321
|
...initialTurnExpected !== void 0 ? { initialTurnExpected } : {},
|
|
9293
9322
|
...initialGoalControl ? { initialGoalControl } : {},
|
|
@@ -11508,7 +11537,8 @@ function useAgentGUIConversationDetail(input) {
|
|
|
11508
11537
|
);
|
|
11509
11538
|
const sessionTurns = useEngineSelector(
|
|
11510
11539
|
input.sessionEngine,
|
|
11511
|
-
(state) => selectEngineTurnsForSession(state, input.activeConversationId)
|
|
11540
|
+
(state) => selectEngineTurnsForSession(state, input.activeConversationId),
|
|
11541
|
+
referenceArrayEqual
|
|
11512
11542
|
);
|
|
11513
11543
|
const projectionConversation = useMemo11(() => {
|
|
11514
11544
|
if (!input.activeConversation) {
|
|
@@ -11679,6 +11709,9 @@ function useAgentGUIConversationDetail(input) {
|
|
|
11679
11709
|
serverInteractivePrompt: hasProviderSessionNotFoundError ? null : rawPendingInteractivePrompt
|
|
11680
11710
|
};
|
|
11681
11711
|
}
|
|
11712
|
+
function referenceArrayEqual(left, right) {
|
|
11713
|
+
return left.length === right.length && left.every((value, index) => value === right[index]);
|
|
11714
|
+
}
|
|
11682
11715
|
|
|
11683
11716
|
// agent-gui/agentGuiNode/controller/useAgentGUIConversationPresentation.ts
|
|
11684
11717
|
import { useEffect as useEffect9, useMemo as useMemo12, useRef as useRef15 } from "react";
|
|
@@ -24379,10 +24412,46 @@ function handleAgentRichTextKeyDownCapture(event, input) {
|
|
|
24379
24412
|
input.onSubmitRef.current();
|
|
24380
24413
|
}
|
|
24381
24414
|
|
|
24415
|
+
// agent-gui/agentGuiNode/agentRichText/agentRichTextControlledValue.ts
|
|
24416
|
+
function createAgentRichTextControlledValueTracker(scopeKey) {
|
|
24417
|
+
return { nextRevision: 0, pendingLocalEchoes: [], scopeKey };
|
|
24418
|
+
}
|
|
24419
|
+
function recordAgentRichTextLocalEdit(tracker, value) {
|
|
24420
|
+
tracker.nextRevision += 1;
|
|
24421
|
+
tracker.pendingLocalEchoes.push({
|
|
24422
|
+
revision: tracker.nextRevision,
|
|
24423
|
+
scopeKey: tracker.scopeKey,
|
|
24424
|
+
value
|
|
24425
|
+
});
|
|
24426
|
+
}
|
|
24427
|
+
function shouldApplyAgentRichTextControlledValue(input) {
|
|
24428
|
+
const { lastEmittedValue, scopeKey, tracker, value } = input;
|
|
24429
|
+
const scopeChanged = tracker.scopeKey !== scopeKey;
|
|
24430
|
+
if (scopeChanged) {
|
|
24431
|
+
tracker.scopeKey = scopeKey;
|
|
24432
|
+
tracker.pendingLocalEchoes = [];
|
|
24433
|
+
}
|
|
24434
|
+
const localEcho = tracker.pendingLocalEchoes.find(
|
|
24435
|
+
(candidate) => candidate.scopeKey === scopeKey && candidate.value === value
|
|
24436
|
+
);
|
|
24437
|
+
if (!scopeChanged && localEcho) {
|
|
24438
|
+
tracker.pendingLocalEchoes = tracker.pendingLocalEchoes.filter(
|
|
24439
|
+
(candidate) => candidate.scopeKey !== scopeKey || candidate.revision > localEcho.revision
|
|
24440
|
+
);
|
|
24441
|
+
return false;
|
|
24442
|
+
}
|
|
24443
|
+
if (!scopeChanged && value === lastEmittedValue) {
|
|
24444
|
+
return false;
|
|
24445
|
+
}
|
|
24446
|
+
tracker.pendingLocalEchoes = [];
|
|
24447
|
+
return true;
|
|
24448
|
+
}
|
|
24449
|
+
|
|
24382
24450
|
// agent-gui/agentGuiNode/agentRichText/AgentRichTextEditor.tsx
|
|
24383
24451
|
import { jsx as jsx31 } from "react/jsx-runtime";
|
|
24384
24452
|
var AgentRichTextEditor = forwardRef3(function AgentRichTextEditor2({
|
|
24385
24453
|
value,
|
|
24454
|
+
contentScopeKey = "default",
|
|
24386
24455
|
disabled,
|
|
24387
24456
|
placeholder,
|
|
24388
24457
|
removeMentionLabel,
|
|
@@ -24411,7 +24480,9 @@ var AgentRichTextEditor = forwardRef3(function AgentRichTextEditor2({
|
|
|
24411
24480
|
"use memo";
|
|
24412
24481
|
const { t } = useTranslation();
|
|
24413
24482
|
const lastEmittedPromptRef = useRef31(value);
|
|
24414
|
-
const
|
|
24483
|
+
const controlledValueTrackerRef = useRef31(
|
|
24484
|
+
createAgentRichTextControlledValueTracker(contentScopeKey)
|
|
24485
|
+
);
|
|
24415
24486
|
const editorRef = useRef31(null);
|
|
24416
24487
|
const onChangeRef = useRef31(onChange);
|
|
24417
24488
|
const onContentLayoutInvalidatedRef = useRef31(onContentLayoutInvalidated);
|
|
@@ -24843,7 +24914,10 @@ var AgentRichTextEditor = forwardRef3(function AgentRichTextEditor2({
|
|
|
24843
24914
|
return;
|
|
24844
24915
|
}
|
|
24845
24916
|
lastEmittedPromptRef.current = nextPrompt;
|
|
24846
|
-
|
|
24917
|
+
recordAgentRichTextLocalEdit(
|
|
24918
|
+
controlledValueTrackerRef.current,
|
|
24919
|
+
nextPrompt
|
|
24920
|
+
);
|
|
24847
24921
|
if (isAgentRichTextUserContentInsertion(transaction)) {
|
|
24848
24922
|
onUserContentChangeRef.current?.(nextPrompt);
|
|
24849
24923
|
}
|
|
@@ -24924,16 +24998,14 @@ var AgentRichTextEditor = forwardRef3(function AgentRichTextEditor2({
|
|
|
24924
24998
|
if (!editor || editor.isDestroyed) {
|
|
24925
24999
|
return;
|
|
24926
25000
|
}
|
|
24927
|
-
if (
|
|
24928
|
-
|
|
24929
|
-
|
|
24930
|
-
|
|
24931
|
-
|
|
24932
|
-
}
|
|
24933
|
-
if (value === lastEmittedPromptRef.current) {
|
|
25001
|
+
if (!shouldApplyAgentRichTextControlledValue({
|
|
25002
|
+
lastEmittedValue: lastEmittedPromptRef.current,
|
|
25003
|
+
scopeKey: contentScopeKey,
|
|
25004
|
+
tracker: controlledValueTrackerRef.current,
|
|
25005
|
+
value
|
|
25006
|
+
})) {
|
|
24934
25007
|
return;
|
|
24935
25008
|
}
|
|
24936
|
-
pendingLocalPromptEchoesRef.current.clear();
|
|
24937
25009
|
const nextDoc = plainTextToAgentRichTextDoc(value, {
|
|
24938
25010
|
capabilities: availableCapabilities,
|
|
24939
25011
|
skills: availableSkills
|
|
@@ -24946,7 +25018,7 @@ var AgentRichTextEditor = forwardRef3(function AgentRichTextEditor2({
|
|
|
24946
25018
|
editor.commands.setTextSelection(editor.state.doc.content.size);
|
|
24947
25019
|
lastEmittedPromptRef.current = value;
|
|
24948
25020
|
onContentLayoutInvalidatedRef.current?.();
|
|
24949
|
-
}, [availableCapabilities, availableSkills, editor, value]);
|
|
25021
|
+
}, [availableCapabilities, availableSkills, contentScopeKey, editor, value]);
|
|
24950
25022
|
return /* @__PURE__ */ jsx31(
|
|
24951
25023
|
AgentRichTextEditorSurface,
|
|
24952
25024
|
{
|
|
@@ -28102,6 +28174,7 @@ function AgentComposerView(input) {
|
|
|
28102
28174
|
{
|
|
28103
28175
|
ref: input.editorHandleRef,
|
|
28104
28176
|
value: input.paletteDraftPrompt,
|
|
28177
|
+
contentScopeKey: input.props.draftScopeKey,
|
|
28105
28178
|
placeholder: effectivePlaceholder,
|
|
28106
28179
|
disabled: inputDisabled,
|
|
28107
28180
|
className: AgentGUINode_styles_default.composerTextarea,
|
|
@@ -36847,15 +36920,7 @@ var AgentGUIConversationRailController = memo9(
|
|
|
36847
36920
|
);
|
|
36848
36921
|
|
|
36849
36922
|
// agent-gui/agentGuiNode/view/AgentGUIDetailPane.tsx
|
|
36850
|
-
import {
|
|
36851
|
-
memo as memo12,
|
|
36852
|
-
useCallback as useCallback61,
|
|
36853
|
-
useEffect as useEffect35,
|
|
36854
|
-
useMemo as useMemo44,
|
|
36855
|
-
useRef as useRef53,
|
|
36856
|
-
useState as useState48
|
|
36857
|
-
} from "react";
|
|
36858
|
-
import { ScrollArea as ScrollArea3 } from "@tutti-os/ui-system/components";
|
|
36923
|
+
import { memo as memo13, useCallback as useCallback61, useEffect as useEffect35, useMemo as useMemo44, useRef as useRef53, useState as useState48 } from "react";
|
|
36859
36924
|
|
|
36860
36925
|
// agent-gui/agentGuiNode/view/agentGUIDetailModelHelpers.ts
|
|
36861
36926
|
import { useRef as useRef50 } from "react";
|
|
@@ -39236,6 +39301,12 @@ function AgentGUIContentToast({
|
|
|
39236
39301
|
] });
|
|
39237
39302
|
}
|
|
39238
39303
|
|
|
39304
|
+
// agent-gui/agentGuiNode/view/AgentGUIDetailTimeline.tsx
|
|
39305
|
+
import {
|
|
39306
|
+
memo as memo12
|
|
39307
|
+
} from "react";
|
|
39308
|
+
import { ScrollArea as ScrollArea3 } from "@tutti-os/ui-system/components";
|
|
39309
|
+
|
|
39239
39310
|
// agent-gui/agentGuiNode/view/AgentGUIConversationTimelinePane.tsx
|
|
39240
39311
|
import { memo as memo11 } from "react";
|
|
39241
39312
|
import { Fragment as Fragment24, jsx as jsx77, jsxs as jsxs57 } from "react/jsx-runtime";
|
|
@@ -39304,6 +39375,65 @@ function setTimelineScrollTopWithUserTransition(element, top) {
|
|
|
39304
39375
|
element.scrollTop = top;
|
|
39305
39376
|
}
|
|
39306
39377
|
|
|
39378
|
+
// agent-gui/agentGuiNode/view/AgentGUIDetailTimeline.tsx
|
|
39379
|
+
import { jsx as jsx78 } from "react/jsx-runtime";
|
|
39380
|
+
var TIMELINE_CONTENT_STYLE = {
|
|
39381
|
+
width: "100%",
|
|
39382
|
+
minWidth: "100%",
|
|
39383
|
+
display: "grid",
|
|
39384
|
+
gridTemplateColumns: "minmax(0, 1fr)",
|
|
39385
|
+
gap: "24px"
|
|
39386
|
+
};
|
|
39387
|
+
var AgentGUIDetailTimeline = memo12(function AgentGUIDetailTimeline2({
|
|
39388
|
+
availableSkills,
|
|
39389
|
+
conversation,
|
|
39390
|
+
conversationFlowEmpty,
|
|
39391
|
+
conversationFlowLabels,
|
|
39392
|
+
hasActiveConversation,
|
|
39393
|
+
homeContent,
|
|
39394
|
+
isLoadingOlderMessages,
|
|
39395
|
+
isTimelineScrolledToTop,
|
|
39396
|
+
labels,
|
|
39397
|
+
onAuthLogin,
|
|
39398
|
+
onLinkAction,
|
|
39399
|
+
previewMode,
|
|
39400
|
+
showTimelineSkeleton,
|
|
39401
|
+
showUnavailableChatEmpty,
|
|
39402
|
+
timelineContentRef,
|
|
39403
|
+
timelineRef,
|
|
39404
|
+
workspaceAppIcons
|
|
39405
|
+
}) {
|
|
39406
|
+
"use memo";
|
|
39407
|
+
return /* @__PURE__ */ jsx78(
|
|
39408
|
+
ScrollArea3,
|
|
39409
|
+
{
|
|
39410
|
+
scrollbarMode: "native",
|
|
39411
|
+
className: "flex h-full min-h-0 flex-1 flex-col [&_[data-orientation=vertical][data-slot=scroll-area-scrollbar]]:opacity-100",
|
|
39412
|
+
viewportRef: timelineRef,
|
|
39413
|
+
viewportContentRef: timelineContentRef,
|
|
39414
|
+
viewportTestId: "agent-gui-timeline",
|
|
39415
|
+
viewportClassName: `${AgentGUINode_styles_default.timeline} ${hasActiveConversation ? AgentGUINode_styles_default.timelineWithComposer : AgentGUINode_styles_default.timelineCentered} ${!isTimelineScrolledToTop ? AgentGUINode_styles_default.timelineScrolledFromTop : ""} ${showUnavailableChatEmpty ? AgentGUINode_styles_default.timelineUnavailableChatEmpty : ""}`.trim(),
|
|
39416
|
+
viewportContentStyle: TIMELINE_CONTENT_STYLE,
|
|
39417
|
+
children: hasActiveConversation ? /* @__PURE__ */ jsx78(
|
|
39418
|
+
AgentGUIConversationTimelinePane,
|
|
39419
|
+
{
|
|
39420
|
+
conversation,
|
|
39421
|
+
isLoading: showTimelineSkeleton,
|
|
39422
|
+
isLoadingOlderMessages,
|
|
39423
|
+
loadingLabel: labels.loadingConversation,
|
|
39424
|
+
empty: conversationFlowEmpty,
|
|
39425
|
+
onLinkAction,
|
|
39426
|
+
onAuthLogin,
|
|
39427
|
+
availableSkills,
|
|
39428
|
+
workspaceAppIcons,
|
|
39429
|
+
previewMode,
|
|
39430
|
+
labels: conversationFlowLabels
|
|
39431
|
+
}
|
|
39432
|
+
) : homeContent
|
|
39433
|
+
}
|
|
39434
|
+
);
|
|
39435
|
+
});
|
|
39436
|
+
|
|
39307
39437
|
// agent-gui/agentGuiNode/view/useAgentGUIDetailScroll.ts
|
|
39308
39438
|
import {
|
|
39309
39439
|
useCallback as useCallback60,
|
|
@@ -39699,10 +39829,10 @@ function useAgentGUIDetailScroll(input) {
|
|
|
39699
39829
|
import { useMemo as useMemo43 } from "react";
|
|
39700
39830
|
|
|
39701
39831
|
// app/renderer/components/icons/UnavailableChatIcon.tsx
|
|
39702
|
-
import { jsx as
|
|
39832
|
+
import { jsx as jsx79 } from "react/jsx-runtime";
|
|
39703
39833
|
function UnavailableChatIcon(props) {
|
|
39704
39834
|
"use memo";
|
|
39705
|
-
return /* @__PURE__ */
|
|
39835
|
+
return /* @__PURE__ */ jsx79(
|
|
39706
39836
|
"svg",
|
|
39707
39837
|
{
|
|
39708
39838
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -39710,7 +39840,7 @@ function UnavailableChatIcon(props) {
|
|
|
39710
39840
|
fill: "currentColor",
|
|
39711
39841
|
"aria-hidden": true,
|
|
39712
39842
|
...props,
|
|
39713
|
-
children: /* @__PURE__ */
|
|
39843
|
+
children: /* @__PURE__ */ jsx79("path", { d: "M20.833 2.125C21.6507 2.125 22.4355 2.45019 23.0137 3.02832C23.5916 3.60645 23.9159 4.39053 23.916 5.20801V17.708C23.916 18.5257 23.5918 19.3104 23.0137 19.8887C22.4355 20.4668 21.6507 20.792 20.833 20.792H7.1123C6.82516 20.7922 6.5497 20.9063 6.34668 21.1094L4.05273 23.4033C3.80954 23.6464 3.49934 23.8118 3.16211 23.8789C2.82492 23.9459 2.47487 23.9118 2.15723 23.7803C1.83953 23.6486 1.56707 23.4256 1.37598 23.1396C1.18489 22.8536 1.08305 22.5168 1.08301 22.1729V5.20801C1.08309 4.39045 1.40827 3.60647 1.98633 3.02832C2.56441 2.45024 3.3485 2.12517 4.16602 2.125H20.833ZM16.1533 7.80566C15.7628 7.41518 15.1298 7.41527 14.7393 7.80566L12.5 10.0439L10.2607 7.80469C9.87031 7.41464 9.23712 7.41465 8.84668 7.80469C8.45627 8.19509 8.45651 8.8282 8.84668 9.21875L11.0859 11.458L8.84668 13.6982C8.45651 14.0888 8.45627 14.7219 8.84668 15.1123C9.2371 15.5026 9.87024 15.5024 10.2607 15.1123L12.5 12.873L14.7393 15.1113C15.1298 15.5017 15.7628 15.5018 16.1533 15.1113C16.5434 14.7208 16.5436 14.0877 16.1533 13.6973L13.9141 11.458L16.1533 9.21973C16.5437 8.82924 16.5437 8.19616 16.1533 7.80566Z" })
|
|
39714
39844
|
}
|
|
39715
39845
|
);
|
|
39716
39846
|
}
|
|
@@ -39756,7 +39886,7 @@ function useAgentGUITimelineTransition(input) {
|
|
|
39756
39886
|
}
|
|
39757
39887
|
|
|
39758
39888
|
// agent-gui/agentGuiNode/view/useAgentGUIDetailModel.tsx
|
|
39759
|
-
import { Fragment as Fragment25, jsx as
|
|
39889
|
+
import { Fragment as Fragment25, jsx as jsx80, jsxs as jsxs58 } from "react/jsx-runtime";
|
|
39760
39890
|
function resolveTuttiModeUpdateInlineNotice(input) {
|
|
39761
39891
|
if (input.status !== "failed" && input.status !== "uncertain") return null;
|
|
39762
39892
|
const localizedMessage = input.status === "failed" ? input.failedMessage : input.uncertainMessage;
|
|
@@ -39950,11 +40080,11 @@ function useAgentGUIDetailModel(input) {
|
|
|
39950
40080
|
className: AgentGUINode_styles_default.unavailableChatEmpty,
|
|
39951
40081
|
"data-testid": "agent-gui-unavailable-chat-empty",
|
|
39952
40082
|
children: [
|
|
39953
|
-
/* @__PURE__ */
|
|
39954
|
-
/* @__PURE__ */
|
|
40083
|
+
/* @__PURE__ */ jsx80(UnavailableChatIcon, { className: AgentGUINode_styles_default.unavailableChatEmptyIcon }),
|
|
40084
|
+
/* @__PURE__ */ jsx80("span", { className: AgentGUINode_styles_default.unavailableChatEmptyText, children: labels.conversationUnavailable })
|
|
39955
40085
|
]
|
|
39956
40086
|
}
|
|
39957
|
-
) : /* @__PURE__ */
|
|
40087
|
+
) : /* @__PURE__ */ jsx80(Fragment25, {}),
|
|
39958
40088
|
[labels.conversationUnavailable, showUnavailableChatEmpty]
|
|
39959
40089
|
);
|
|
39960
40090
|
const chromeLabels = useMemo43(
|
|
@@ -40625,17 +40755,16 @@ function useAgentGUITuttiWorkflow(input) {
|
|
|
40625
40755
|
}
|
|
40626
40756
|
|
|
40627
40757
|
// agent-gui/agentGuiNode/view/AgentGUIDetailPane.tsx
|
|
40628
|
-
import { Fragment as Fragment26, jsx as
|
|
40629
|
-
var AGENT_GUI_TIMELINE_SCROLL_AREA_CONTENT_STYLE = {
|
|
40630
|
-
width: "100%",
|
|
40631
|
-
minWidth: "100%",
|
|
40632
|
-
display: "grid",
|
|
40633
|
-
gridTemplateColumns: "minmax(0, 1fr)",
|
|
40634
|
-
gap: "24px"
|
|
40635
|
-
};
|
|
40758
|
+
import { Fragment as Fragment26, jsx as jsx81, jsxs as jsxs59 } from "react/jsx-runtime";
|
|
40636
40759
|
var EMPTY_WORKSPACE_APP_ICONS4 = [];
|
|
40637
|
-
var AgentGUIDetailPane =
|
|
40638
|
-
|
|
40760
|
+
var AgentGUIDetailPane = memo13(function AgentGUIDetailPane2({
|
|
40761
|
+
shell,
|
|
40762
|
+
rail,
|
|
40763
|
+
detail,
|
|
40764
|
+
composer,
|
|
40765
|
+
interaction,
|
|
40766
|
+
readiness,
|
|
40767
|
+
operations,
|
|
40639
40768
|
homeTargetProjection,
|
|
40640
40769
|
referenceProvenanceFilter = null,
|
|
40641
40770
|
composerEngagement,
|
|
@@ -40671,6 +40800,15 @@ var AgentGUIDetailPane = memo12(function AgentGUIDetailPane2({
|
|
|
40671
40800
|
renderProviderUnavailableState
|
|
40672
40801
|
}) {
|
|
40673
40802
|
"use memo";
|
|
40803
|
+
const viewModel = {
|
|
40804
|
+
shell,
|
|
40805
|
+
rail,
|
|
40806
|
+
detail,
|
|
40807
|
+
composer,
|
|
40808
|
+
interaction,
|
|
40809
|
+
readiness,
|
|
40810
|
+
operations
|
|
40811
|
+
};
|
|
40674
40812
|
const timelineRef = useRef53(null);
|
|
40675
40813
|
const timelineContentRef = useRef53(null);
|
|
40676
40814
|
const bottomDockRef = useRef53(null);
|
|
@@ -41110,6 +41248,41 @@ var AgentGUIDetailPane = memo12(function AgentGUIDetailPane2({
|
|
|
41110
41248
|
timelineScrollAnchorRef,
|
|
41111
41249
|
viewModel
|
|
41112
41250
|
});
|
|
41251
|
+
const homeContent = !hasActiveConversation ? shouldRenderProviderUnavailableState && disabledProviderTarget ? /* @__PURE__ */ jsx81(Fragment26, { children: renderProviderUnavailableState?.({
|
|
41252
|
+
provider: disabledProviderTarget.provider,
|
|
41253
|
+
providerLabel: labels.emptyProviderForProvider?.(
|
|
41254
|
+
disabledProviderTarget.provider
|
|
41255
|
+
) ?? resolveAgentGuiWorkbenchProviderLabel(
|
|
41256
|
+
disabledProviderTarget.provider
|
|
41257
|
+
),
|
|
41258
|
+
target: disabledProviderTarget,
|
|
41259
|
+
iconUrl: resolveAgentGUIHeroIconUrl2(disabledProviderTarget.provider),
|
|
41260
|
+
unavailableReason: disabledProviderTarget.unavailableReason ?? null
|
|
41261
|
+
}) }) : /* @__PURE__ */ jsx81(
|
|
41262
|
+
AgentGUIEmptyHomePane,
|
|
41263
|
+
{
|
|
41264
|
+
provider: emptyHeroProvider,
|
|
41265
|
+
providerReadinessGate: emptyProviderReadinessGate,
|
|
41266
|
+
showAllProviders: viewModel.rail.conversationFilter.kind === "all",
|
|
41267
|
+
agentTargets: composerProviderTargets,
|
|
41268
|
+
selectedAgentTarget: composerSelectedProviderTarget,
|
|
41269
|
+
onProviderSelect: canSwitchComposerProvider && viewModel.rail.activeConversationId === null ? selectHomeComposerAgentTargetAndFocus : void 0,
|
|
41270
|
+
noticeChrome: homeNoticeChrome,
|
|
41271
|
+
isRespondingApproval: isInteractionPending,
|
|
41272
|
+
previewMode,
|
|
41273
|
+
onSubmitApprovalOption: submitApprovalOption,
|
|
41274
|
+
onRetryActivation: retryActivation,
|
|
41275
|
+
onAuthLogin: authLogin,
|
|
41276
|
+
onContinueInNewConversation: continueInNewConversation,
|
|
41277
|
+
chromeLabels,
|
|
41278
|
+
composerProps: emptyHeroComposerProps,
|
|
41279
|
+
labels,
|
|
41280
|
+
suggestions: labels.homeSuggestions ?? EMPTY_HOME_SUGGESTIONS,
|
|
41281
|
+
suggestionsCloseLabel: labels.homeSuggestionsClose,
|
|
41282
|
+
onSelectSuggestion: handleSelectHomeSuggestion,
|
|
41283
|
+
onSelectSuggestionAction: handleHomeSuggestionAction
|
|
41284
|
+
}
|
|
41285
|
+
) : null;
|
|
41113
41286
|
return /* @__PURE__ */ jsxs59(
|
|
41114
41287
|
"main",
|
|
41115
41288
|
{
|
|
@@ -41117,7 +41290,7 @@ var AgentGUIDetailPane = memo12(function AgentGUIDetailPane2({
|
|
|
41117
41290
|
"aria-busy": timelineInteractionLocked || void 0,
|
|
41118
41291
|
inert: timelineInteractionLocked,
|
|
41119
41292
|
children: [
|
|
41120
|
-
viewModel.operations.goalClearNoticeSequence > 0 ? /* @__PURE__ */
|
|
41293
|
+
viewModel.operations.goalClearNoticeSequence > 0 ? /* @__PURE__ */ jsx81(
|
|
41121
41294
|
AgentGUIContentToast,
|
|
41122
41295
|
{
|
|
41123
41296
|
insetTopPx: 16,
|
|
@@ -41125,71 +41298,29 @@ var AgentGUIDetailPane = memo12(function AgentGUIDetailPane2({
|
|
|
41125
41298
|
},
|
|
41126
41299
|
viewModel.operations.goalClearNoticeSequence
|
|
41127
41300
|
) : null,
|
|
41128
|
-
/* @__PURE__ */
|
|
41129
|
-
|
|
41301
|
+
/* @__PURE__ */ jsx81(
|
|
41302
|
+
AgentGUIDetailTimeline,
|
|
41130
41303
|
{
|
|
41131
|
-
|
|
41132
|
-
|
|
41133
|
-
|
|
41134
|
-
|
|
41135
|
-
|
|
41136
|
-
|
|
41137
|
-
|
|
41138
|
-
|
|
41139
|
-
|
|
41140
|
-
|
|
41141
|
-
|
|
41142
|
-
|
|
41143
|
-
|
|
41144
|
-
|
|
41145
|
-
|
|
41146
|
-
|
|
41147
|
-
|
|
41148
|
-
),
|
|
41149
|
-
unavailableReason: disabledProviderTarget.unavailableReason ?? null
|
|
41150
|
-
}) }) : /* @__PURE__ */ jsx80(
|
|
41151
|
-
AgentGUIEmptyHomePane,
|
|
41152
|
-
{
|
|
41153
|
-
provider: emptyHeroProvider,
|
|
41154
|
-
providerReadinessGate: emptyProviderReadinessGate,
|
|
41155
|
-
showAllProviders: viewModel.rail.conversationFilter.kind === "all",
|
|
41156
|
-
agentTargets: composerProviderTargets,
|
|
41157
|
-
selectedAgentTarget: composerSelectedProviderTarget,
|
|
41158
|
-
onProviderSelect: canSwitchComposerProvider && viewModel.rail.activeConversationId === null ? selectHomeComposerAgentTargetAndFocus : void 0,
|
|
41159
|
-
noticeChrome: homeNoticeChrome,
|
|
41160
|
-
isRespondingApproval: isInteractionPending,
|
|
41161
|
-
previewMode,
|
|
41162
|
-
onSubmitApprovalOption: submitApprovalOption,
|
|
41163
|
-
onRetryActivation: retryActivation,
|
|
41164
|
-
onAuthLogin: authLogin,
|
|
41165
|
-
onContinueInNewConversation: continueInNewConversation,
|
|
41166
|
-
chromeLabels,
|
|
41167
|
-
composerProps: emptyHeroComposerProps,
|
|
41168
|
-
labels,
|
|
41169
|
-
suggestions: labels.homeSuggestions ?? EMPTY_HOME_SUGGESTIONS,
|
|
41170
|
-
suggestionsCloseLabel: labels.homeSuggestionsClose,
|
|
41171
|
-
onSelectSuggestion: handleSelectHomeSuggestion,
|
|
41172
|
-
onSelectSuggestionAction: handleHomeSuggestionAction
|
|
41173
|
-
}
|
|
41174
|
-
) : /* @__PURE__ */ jsx80(Fragment26, { children: /* @__PURE__ */ jsx80(
|
|
41175
|
-
AgentGUIConversationTimelinePane,
|
|
41176
|
-
{
|
|
41177
|
-
conversation,
|
|
41178
|
-
isLoading: showTimelineSkeleton,
|
|
41179
|
-
isLoadingOlderMessages: viewModel.detail.isLoadingOlderMessages,
|
|
41180
|
-
loadingLabel: labels.loadingConversation,
|
|
41181
|
-
empty: conversationFlowEmpty,
|
|
41182
|
-
onLinkAction: stableLinkAction,
|
|
41183
|
-
onAuthLogin: authLogin,
|
|
41184
|
-
availableSkills: viewModel.composer.availableSkills,
|
|
41185
|
-
workspaceAppIcons,
|
|
41186
|
-
previewMode,
|
|
41187
|
-
labels: conversationFlowLabels
|
|
41188
|
-
}
|
|
41189
|
-
) })
|
|
41304
|
+
availableSkills: viewModel.composer.availableSkills,
|
|
41305
|
+
conversation,
|
|
41306
|
+
conversationFlowEmpty,
|
|
41307
|
+
conversationFlowLabels,
|
|
41308
|
+
hasActiveConversation,
|
|
41309
|
+
homeContent,
|
|
41310
|
+
isLoadingOlderMessages: viewModel.detail.isLoadingOlderMessages,
|
|
41311
|
+
isTimelineScrolledToTop,
|
|
41312
|
+
labels,
|
|
41313
|
+
onAuthLogin: authLogin,
|
|
41314
|
+
onLinkAction: stableLinkAction,
|
|
41315
|
+
previewMode,
|
|
41316
|
+
showTimelineSkeleton,
|
|
41317
|
+
showUnavailableChatEmpty,
|
|
41318
|
+
timelineContentRef,
|
|
41319
|
+
timelineRef,
|
|
41320
|
+
workspaceAppIcons
|
|
41190
41321
|
}
|
|
41191
41322
|
),
|
|
41192
|
-
hasActiveConversation ? /* @__PURE__ */
|
|
41323
|
+
hasActiveConversation ? /* @__PURE__ */ jsx81(
|
|
41193
41324
|
AgentGUIBottomDockPane,
|
|
41194
41325
|
{
|
|
41195
41326
|
bottomDockRef,
|
|
@@ -41226,10 +41357,10 @@ var AgentGUIDetailPane = memo12(function AgentGUIDetailPane2({
|
|
|
41226
41357
|
});
|
|
41227
41358
|
|
|
41228
41359
|
// agent-gui/agentGuiNode/view/AgentGUIRenameConversationDialog.tsx
|
|
41229
|
-
import { memo as
|
|
41360
|
+
import { memo as memo14, useCallback as useCallback62, useEffect as useEffect36, useRef as useRef54, useState as useState49 } from "react";
|
|
41230
41361
|
import { ConfirmationDialog as ConfirmationDialog4, Input as Input4 } from "@tutti-os/ui-system";
|
|
41231
|
-
import { jsx as
|
|
41232
|
-
var AgentGUIRenameConversationDialog =
|
|
41362
|
+
import { jsx as jsx82, jsxs as jsxs60 } from "react/jsx-runtime";
|
|
41363
|
+
var AgentGUIRenameConversationDialog = memo14(
|
|
41233
41364
|
function AgentGUIRenameConversationDialog2({
|
|
41234
41365
|
conversation,
|
|
41235
41366
|
open,
|
|
@@ -41284,7 +41415,7 @@ var AgentGUIRenameConversationDialog = memo13(
|
|
|
41284
41415
|
setIsSaving(false);
|
|
41285
41416
|
});
|
|
41286
41417
|
}, [conversation, onOpenChange, onRename, trimmedTitle]);
|
|
41287
|
-
return /* @__PURE__ */
|
|
41418
|
+
return /* @__PURE__ */ jsx82(
|
|
41288
41419
|
ConfirmationDialog4,
|
|
41289
41420
|
{
|
|
41290
41421
|
cancelLabel: labels.cancel,
|
|
@@ -41294,7 +41425,7 @@ var AgentGUIRenameConversationDialog = memo13(
|
|
|
41294
41425
|
confirmLabel: labels.renameSessionSave,
|
|
41295
41426
|
description: labels.renameSessionDescription,
|
|
41296
41427
|
footer: /* @__PURE__ */ jsxs60("div", { className: "flex justify-end gap-2", children: [
|
|
41297
|
-
/* @__PURE__ */
|
|
41428
|
+
/* @__PURE__ */ jsx82(
|
|
41298
41429
|
Button,
|
|
41299
41430
|
{
|
|
41300
41431
|
disabled: isSaving,
|
|
@@ -41332,7 +41463,7 @@ var AgentGUIRenameConversationDialog = memo13(
|
|
|
41332
41463
|
children: labels.cancel
|
|
41333
41464
|
}
|
|
41334
41465
|
),
|
|
41335
|
-
/* @__PURE__ */
|
|
41466
|
+
/* @__PURE__ */ jsx82(
|
|
41336
41467
|
Button,
|
|
41337
41468
|
{
|
|
41338
41469
|
className: "shadow-none",
|
|
@@ -41387,7 +41518,7 @@ var AgentGUIRenameConversationDialog = memo13(
|
|
|
41387
41518
|
title: labels.renameSessionTitle,
|
|
41388
41519
|
onConfirm: confirmRename,
|
|
41389
41520
|
onOpenChange,
|
|
41390
|
-
children: /* @__PURE__ */
|
|
41521
|
+
children: /* @__PURE__ */ jsx82(
|
|
41391
41522
|
Input4,
|
|
41392
41523
|
{
|
|
41393
41524
|
ref: inputRef,
|
|
@@ -41415,7 +41546,7 @@ import {
|
|
|
41415
41546
|
ReferenceSourcePicker,
|
|
41416
41547
|
WorkspaceFileReferencePicker
|
|
41417
41548
|
} from "@tutti-os/workspace-file-reference/ui";
|
|
41418
|
-
import { jsx as
|
|
41549
|
+
import { jsx as jsx83 } from "react/jsx-runtime";
|
|
41419
41550
|
function AgentGUIReferencePickerSurface({
|
|
41420
41551
|
aggregator,
|
|
41421
41552
|
copy,
|
|
@@ -41432,7 +41563,7 @@ function AgentGUIReferencePickerSurface({
|
|
|
41432
41563
|
onConfirm,
|
|
41433
41564
|
onConfirmBundles
|
|
41434
41565
|
}) {
|
|
41435
|
-
return aggregator ? /* @__PURE__ */
|
|
41566
|
+
return aggregator ? /* @__PURE__ */ jsx83(
|
|
41436
41567
|
ReferenceSourcePicker,
|
|
41437
41568
|
{
|
|
41438
41569
|
aggregator,
|
|
@@ -41448,7 +41579,7 @@ function AgentGUIReferencePickerSurface({
|
|
|
41448
41579
|
onConfirm,
|
|
41449
41580
|
onConfirmBundles
|
|
41450
41581
|
}
|
|
41451
|
-
) : /* @__PURE__ */
|
|
41582
|
+
) : /* @__PURE__ */ jsx83(
|
|
41452
41583
|
WorkspaceFileReferencePicker,
|
|
41453
41584
|
{
|
|
41454
41585
|
copy,
|
|
@@ -41465,7 +41596,7 @@ function AgentGUIReferencePickerSurface({
|
|
|
41465
41596
|
|
|
41466
41597
|
// agent-gui/agentGuiNode/view/AgentTargetSetupRoot.tsx
|
|
41467
41598
|
import { useCallback as useCallback63, useMemo as useMemo45 } from "react";
|
|
41468
|
-
import { jsx as
|
|
41599
|
+
import { jsx as jsx84, jsxs as jsxs61 } from "react/jsx-runtime";
|
|
41469
41600
|
function useAgentTargetSetupRoot(input) {
|
|
41470
41601
|
const { preferences } = useAgentGUIProviderRailPreferences();
|
|
41471
41602
|
const homeTargetProjection = useMemo45(
|
|
@@ -41509,9 +41640,9 @@ function AgentTargetSetupRoot({
|
|
|
41509
41640
|
controller,
|
|
41510
41641
|
openEnvironmentSetup
|
|
41511
41642
|
}) {
|
|
41512
|
-
return /* @__PURE__ */
|
|
41643
|
+
return /* @__PURE__ */ jsx84(AgentEnvPanelActionProvider, { openPanel: openEnvironmentSetup, children: /* @__PURE__ */ jsxs61(AgentTargetSetupControllerProvider, { controller, children: [
|
|
41513
41644
|
children,
|
|
41514
|
-
/* @__PURE__ */
|
|
41645
|
+
/* @__PURE__ */ jsx84(
|
|
41515
41646
|
AgentTargetSetupGate,
|
|
41516
41647
|
{
|
|
41517
41648
|
carouselMountedExternally: false,
|
|
@@ -42074,7 +42205,7 @@ function useAgentGUIExternalRequests(input) {
|
|
|
42074
42205
|
}
|
|
42075
42206
|
|
|
42076
42207
|
// agent-gui/agentGuiNode/AgentGUINodeView.tsx
|
|
42077
|
-
import { jsx as
|
|
42208
|
+
import { jsx as jsx85, jsxs as jsxs62 } from "react/jsx-runtime";
|
|
42078
42209
|
function AgentGUINodeView({
|
|
42079
42210
|
viewModel,
|
|
42080
42211
|
referenceProvenanceFilter = null,
|
|
@@ -42503,7 +42634,7 @@ function AgentGUINodeView({
|
|
|
42503
42634
|
}),
|
|
42504
42635
|
[targetPresentationKey, viewModel.shell.workspaceId]
|
|
42505
42636
|
);
|
|
42506
|
-
const content = /* @__PURE__ */
|
|
42637
|
+
const content = /* @__PURE__ */ jsx85(AgentTargetPresentationProvider, { agentTargets: agentTargetPresentations, children: /* @__PURE__ */ jsxs62(
|
|
42507
42638
|
AgentTargetSetupRoot,
|
|
42508
42639
|
{
|
|
42509
42640
|
controller: targetSetupController,
|
|
@@ -42527,7 +42658,7 @@ function AgentGUINodeView({
|
|
|
42527
42658
|
"aria-hidden": conversationRailCollapsed ? "true" : void 0,
|
|
42528
42659
|
inert: conversationRailCollapsed ? true : void 0,
|
|
42529
42660
|
children: [
|
|
42530
|
-
/* @__PURE__ */
|
|
42661
|
+
/* @__PURE__ */ jsx85(
|
|
42531
42662
|
AgentGUIProviderRail,
|
|
42532
42663
|
{
|
|
42533
42664
|
activeConversation: viewModel.rail.activeConversation,
|
|
@@ -42551,7 +42682,7 @@ function AgentGUINodeView({
|
|
|
42551
42682
|
onRequestComposerFocus: requestComposerFocus
|
|
42552
42683
|
}
|
|
42553
42684
|
),
|
|
42554
|
-
renderSidebarFooter ? /* @__PURE__ */
|
|
42685
|
+
renderSidebarFooter ? /* @__PURE__ */ jsx85(
|
|
42555
42686
|
"div",
|
|
42556
42687
|
{
|
|
42557
42688
|
className: `${AgentGUINode_styles_default.providerRailFooter} ${AgentGUINode_styles_default.providerRailSidebarFooter} nodrag tsh-desktop-no-drag`,
|
|
@@ -42562,12 +42693,12 @@ function AgentGUINodeView({
|
|
|
42562
42693
|
})
|
|
42563
42694
|
}
|
|
42564
42695
|
) : null,
|
|
42565
|
-
shouldShowProviderRailConfigButton ? /* @__PURE__ */
|
|
42696
|
+
shouldShowProviderRailConfigButton ? /* @__PURE__ */ jsx85(
|
|
42566
42697
|
"div",
|
|
42567
42698
|
{
|
|
42568
42699
|
className: `${AgentGUINode_styles_default.providerRailFooter} ${AgentGUINode_styles_default.providerRailConfigFooter} nodrag tsh-desktop-no-drag`,
|
|
42569
42700
|
"data-testid": "agent-gui-config-footer",
|
|
42570
|
-
children: /* @__PURE__ */
|
|
42701
|
+
children: /* @__PURE__ */ jsx85(
|
|
42571
42702
|
AgentGUIConfigMenu,
|
|
42572
42703
|
{
|
|
42573
42704
|
environmentSetupVisible,
|
|
@@ -42594,14 +42725,14 @@ function AgentGUINodeView({
|
|
|
42594
42725
|
]
|
|
42595
42726
|
}
|
|
42596
42727
|
),
|
|
42597
|
-
/* @__PURE__ */
|
|
42728
|
+
/* @__PURE__ */ jsx85(
|
|
42598
42729
|
"aside",
|
|
42599
42730
|
{
|
|
42600
42731
|
id: "agent-gui-conversation-rail",
|
|
42601
42732
|
className: `${AgentGUINode_styles_default.railPanel}${conversationRailCollapsed ? ` ${AgentGUINode_styles_default.railPanelCollapsed}` : ""}`,
|
|
42602
42733
|
"aria-hidden": conversationRailCollapsed ? "true" : void 0,
|
|
42603
42734
|
inert: conversationRailCollapsed ? true : void 0,
|
|
42604
|
-
children: /* @__PURE__ */
|
|
42735
|
+
children: /* @__PURE__ */ jsx85(
|
|
42605
42736
|
AgentGUIConversationRailController,
|
|
42606
42737
|
{
|
|
42607
42738
|
...conversationRailStoreState,
|
|
@@ -42610,7 +42741,7 @@ function AgentGUINodeView({
|
|
|
42610
42741
|
registerInteractionLockProbe: registerRailInteractionLockProbe,
|
|
42611
42742
|
userProjects: viewModel.rail.userProjects,
|
|
42612
42743
|
workspaceId: viewModel.shell.workspaceId,
|
|
42613
|
-
footer: accountMenuState?.user ? /* @__PURE__ */
|
|
42744
|
+
footer: accountMenuState?.user ? /* @__PURE__ */ jsx85(
|
|
42614
42745
|
AgentGUIAccountRailMenu,
|
|
42615
42746
|
{
|
|
42616
42747
|
accountMenuState,
|
|
@@ -42622,7 +42753,7 @@ function AgentGUINodeView({
|
|
|
42622
42753
|
)
|
|
42623
42754
|
}
|
|
42624
42755
|
),
|
|
42625
|
-
/* @__PURE__ */
|
|
42756
|
+
/* @__PURE__ */ jsx85(
|
|
42626
42757
|
"div",
|
|
42627
42758
|
{
|
|
42628
42759
|
id: "agent-gui-conversation-rail-resize",
|
|
@@ -42646,10 +42777,16 @@ function AgentGUINodeView({
|
|
|
42646
42777
|
onPointerUp: endConversationRailResize
|
|
42647
42778
|
}
|
|
42648
42779
|
),
|
|
42649
|
-
/* @__PURE__ */
|
|
42780
|
+
/* @__PURE__ */ jsx85("section", { id: "agent-gui-detail", className: AgentGUINode_styles_default.detailPanel, children: /* @__PURE__ */ jsx85(
|
|
42650
42781
|
AgentGUIDetailPane,
|
|
42651
42782
|
{
|
|
42652
|
-
viewModel,
|
|
42783
|
+
shell: viewModel.shell,
|
|
42784
|
+
rail: viewModel.rail,
|
|
42785
|
+
detail: viewModel.detail,
|
|
42786
|
+
composer: viewModel.composer,
|
|
42787
|
+
interaction: viewModel.interaction,
|
|
42788
|
+
readiness: viewModel.readiness,
|
|
42789
|
+
operations: viewModel.operations,
|
|
42653
42790
|
homeTargetProjection,
|
|
42654
42791
|
referenceProvenanceFilter,
|
|
42655
42792
|
composerEngagement,
|
|
@@ -42688,7 +42825,7 @@ function AgentGUINodeView({
|
|
|
42688
42825
|
]
|
|
42689
42826
|
}
|
|
42690
42827
|
),
|
|
42691
|
-
/* @__PURE__ */
|
|
42828
|
+
/* @__PURE__ */ jsx85(
|
|
42692
42829
|
AgentGUIReferencePickerSurface,
|
|
42693
42830
|
{
|
|
42694
42831
|
aggregator: workspaceReferencePickerAggregator,
|
|
@@ -42707,7 +42844,7 @@ function AgentGUINodeView({
|
|
|
42707
42844
|
onConfirmBundles: workspaceReferencePickerPurpose === "reference" ? confirmWorkspaceReferenceBundles : void 0
|
|
42708
42845
|
}
|
|
42709
42846
|
),
|
|
42710
|
-
/* @__PURE__ */
|
|
42847
|
+
/* @__PURE__ */ jsx85(
|
|
42711
42848
|
AgentGUIRenameConversationDialog,
|
|
42712
42849
|
{
|
|
42713
42850
|
conversation: renameConversationTarget,
|
|
@@ -42725,7 +42862,7 @@ function AgentGUINodeView({
|
|
|
42725
42862
|
]
|
|
42726
42863
|
}
|
|
42727
42864
|
) });
|
|
42728
|
-
return previewMode ? content : /* @__PURE__ */
|
|
42865
|
+
return previewMode ? content : /* @__PURE__ */ jsx85(TooltipProvider7, { children: content });
|
|
42729
42866
|
}
|
|
42730
42867
|
|
|
42731
42868
|
// agent-gui/workspaceDesktop/view/AgentProbeInfoPopover.tsx
|
|
@@ -42738,7 +42875,7 @@ import {
|
|
|
42738
42875
|
useState as useState52
|
|
42739
42876
|
} from "react";
|
|
42740
42877
|
import { createPortal as createPortal5 } from "react-dom";
|
|
42741
|
-
import { Fragment as Fragment27, jsx as
|
|
42878
|
+
import { Fragment as Fragment27, jsx as jsx86, jsxs as jsxs63 } from "react/jsx-runtime";
|
|
42742
42879
|
var POPOVER_MIN_VIEWPORT_INSET_PX = 16;
|
|
42743
42880
|
var POPOVER_DEFAULT_WIDTH_PX = 260;
|
|
42744
42881
|
function dockAgentProbeLineKey(line) {
|
|
@@ -42752,7 +42889,7 @@ function renderDockAgentProbeLine(line) {
|
|
|
42752
42889
|
line.primary,
|
|
42753
42890
|
line.secondary ? /* @__PURE__ */ jsxs63(Fragment27, { children: [
|
|
42754
42891
|
" ",
|
|
42755
|
-
/* @__PURE__ */
|
|
42892
|
+
/* @__PURE__ */ jsx86("span", { className: "desktop-dock-popup__agent-status-secondary", children: line.secondary })
|
|
42756
42893
|
] }) : null
|
|
42757
42894
|
] });
|
|
42758
42895
|
}
|
|
@@ -42845,7 +42982,7 @@ function AgentProbeInfoPopover({
|
|
|
42845
42982
|
if (lines.length === 0) {
|
|
42846
42983
|
return null;
|
|
42847
42984
|
}
|
|
42848
|
-
const popover = /* @__PURE__ */
|
|
42985
|
+
const popover = /* @__PURE__ */ jsx86(
|
|
42849
42986
|
"div",
|
|
42850
42987
|
{
|
|
42851
42988
|
ref: popoverRef,
|
|
@@ -42854,7 +42991,7 @@ function AgentProbeInfoPopover({
|
|
|
42854
42991
|
style: popoverStyle ?? void 0,
|
|
42855
42992
|
onMouseEnter: openPopover,
|
|
42856
42993
|
onMouseLeave: closeIfPointerLeavesPopover,
|
|
42857
|
-
children: /* @__PURE__ */
|
|
42994
|
+
children: /* @__PURE__ */ jsx86("ul", { className: "desktop-dock-popup__agent-info-list", children: lines.map((line) => {
|
|
42858
42995
|
const label = getDockAgentProbeLineLabel(line);
|
|
42859
42996
|
const valueText = formatDockAgentProbeLineText(line);
|
|
42860
42997
|
return /* @__PURE__ */ jsxs63(
|
|
@@ -42863,8 +43000,8 @@ function AgentProbeInfoPopover({
|
|
|
42863
43000
|
className: "desktop-dock-popup__agent-info-item",
|
|
42864
43001
|
"data-has-label": label ? "true" : "false",
|
|
42865
43002
|
children: [
|
|
42866
|
-
label ? /* @__PURE__ */
|
|
42867
|
-
/* @__PURE__ */
|
|
43003
|
+
label ? /* @__PURE__ */ jsx86("span", { className: "desktop-dock-popup__agent-info-label", children: label }) : null,
|
|
43004
|
+
/* @__PURE__ */ jsx86(
|
|
42868
43005
|
"span",
|
|
42869
43006
|
{
|
|
42870
43007
|
className: "desktop-dock-popup__agent-info-value",
|
|
@@ -42899,7 +43036,7 @@ function AgentProbeInfoPopover({
|
|
|
42899
43036
|
},
|
|
42900
43037
|
onBlur: closePopover,
|
|
42901
43038
|
children: [
|
|
42902
|
-
/* @__PURE__ */
|
|
43039
|
+
/* @__PURE__ */ jsx86(Info2, { size: 15, strokeWidth: 2.1, "aria-hidden": "true" }),
|
|
42903
43040
|
isOpen ? createPortal5(popover, document.body) : null
|
|
42904
43041
|
]
|
|
42905
43042
|
}
|
|
@@ -43035,7 +43172,7 @@ function composeAgentGUIMentionService(input) {
|
|
|
43035
43172
|
}
|
|
43036
43173
|
|
|
43037
43174
|
// agent-gui/agentGuiNode/AgentGUIMentionServiceBoundary.tsx
|
|
43038
|
-
import { jsx as
|
|
43175
|
+
import { jsx as jsx87 } from "react/jsx-runtime";
|
|
43039
43176
|
function AgentGUIMentionServiceBoundary({
|
|
43040
43177
|
children,
|
|
43041
43178
|
service
|
|
@@ -43051,7 +43188,7 @@ function AgentGUIMentionServiceBoundary({
|
|
|
43051
43188
|
if (!effectiveService || effectiveService === inheritedService) {
|
|
43052
43189
|
return children;
|
|
43053
43190
|
}
|
|
43054
|
-
return /* @__PURE__ */
|
|
43191
|
+
return /* @__PURE__ */ jsx87(RichTextMentionServiceProvider, { service: effectiveService, children });
|
|
43055
43192
|
}
|
|
43056
43193
|
|
|
43057
43194
|
// agent-gui/agentGuiNode/AgentGUINode.labels.ts
|
|
@@ -44209,13 +44346,13 @@ function useAgentGUIWorkspaceFileReferenceCopy(t) {
|
|
|
44209
44346
|
}
|
|
44210
44347
|
|
|
44211
44348
|
// agent-gui/agentGuiNode/AgentGUINode.tsx
|
|
44212
|
-
import { jsx as
|
|
44349
|
+
import { jsx as jsx88, jsxs as jsxs64 } from "react/jsx-runtime";
|
|
44213
44350
|
var DISABLED_REFERENCE_PROVENANCE_CATALOG = {
|
|
44214
44351
|
enabledDimensions: [],
|
|
44215
44352
|
agentOptions: [],
|
|
44216
44353
|
memberOptions: []
|
|
44217
44354
|
};
|
|
44218
|
-
var AgentGUINode =
|
|
44355
|
+
var AgentGUINode = memo15(function AgentGUINode2({
|
|
44219
44356
|
identity,
|
|
44220
44357
|
workspace,
|
|
44221
44358
|
frame,
|
|
@@ -44523,7 +44660,7 @@ var AgentGUINode = memo14(function AgentGUINode2({
|
|
|
44523
44660
|
t,
|
|
44524
44661
|
viewModel
|
|
44525
44662
|
});
|
|
44526
|
-
return /* @__PURE__ */
|
|
44663
|
+
return /* @__PURE__ */ jsx88(AgentGUIMentionServiceBoundary, { service: mentionService, children: /* @__PURE__ */ jsx88(
|
|
44527
44664
|
WorkspaceNodeWindow,
|
|
44528
44665
|
{
|
|
44529
44666
|
nodeId,
|
|
@@ -44540,7 +44677,7 @@ var AgentGUINode = memo14(function AgentGUINode2({
|
|
|
44540
44677
|
bodyClassName: `${AgentGUINode_styles_default.shell} nodrag size-full min-h-0 min-w-0 !bg-transparent p-0`,
|
|
44541
44678
|
hideHeader: embedded,
|
|
44542
44679
|
titleAccessory: /* @__PURE__ */ jsxs64("span", { className: "inline-flex flex-none items-center gap-1", children: [
|
|
44543
|
-
/* @__PURE__ */
|
|
44680
|
+
/* @__PURE__ */ jsx88(
|
|
44544
44681
|
AgentProbeInfoPopover,
|
|
44545
44682
|
{
|
|
44546
44683
|
lines: agentProbeLines,
|
|
@@ -44550,7 +44687,7 @@ var AgentGUINode = memo14(function AgentGUINode2({
|
|
|
44550
44687
|
onClose: handleAgentProbeInfoClose
|
|
44551
44688
|
}
|
|
44552
44689
|
),
|
|
44553
|
-
/* @__PURE__ */
|
|
44690
|
+
/* @__PURE__ */ jsx88(
|
|
44554
44691
|
CanvasNodeGhostIconButton,
|
|
44555
44692
|
{
|
|
44556
44693
|
"aria-label": isConversationRailCollapsed ? t("agentHost.agentGui.expandConversationRail") : t("agentHost.agentGui.collapseConversationRail"),
|
|
@@ -44562,7 +44699,7 @@ var AgentGUINode = memo14(function AgentGUINode2({
|
|
|
44562
44699
|
event.stopPropagation();
|
|
44563
44700
|
handleConversationRailToggle();
|
|
44564
44701
|
},
|
|
44565
|
-
children: /* @__PURE__ */
|
|
44702
|
+
children: /* @__PURE__ */ jsx88(
|
|
44566
44703
|
CanvasNodePanelLinedIcon,
|
|
44567
44704
|
{
|
|
44568
44705
|
width: 18,
|
|
@@ -44586,7 +44723,7 @@ var AgentGUINode = memo14(function AgentGUINode2({
|
|
|
44586
44723
|
renderedWidth,
|
|
44587
44724
|
railAutoCollapseWidthPx
|
|
44588
44725
|
);
|
|
44589
|
-
return /* @__PURE__ */
|
|
44726
|
+
return /* @__PURE__ */ jsx88(
|
|
44590
44727
|
AgentGUINodeView,
|
|
44591
44728
|
{
|
|
44592
44729
|
viewModel,
|
|
@@ -44668,8 +44805,8 @@ var AgentGUINode = memo14(function AgentGUINode2({
|
|
|
44668
44805
|
}, areAgentGUINodePropsEqual);
|
|
44669
44806
|
|
|
44670
44807
|
// AgentGUI.tsx
|
|
44671
|
-
import { jsx as
|
|
44672
|
-
var AgentGUI =
|
|
44808
|
+
import { jsx as jsx89 } from "react/jsx-runtime";
|
|
44809
|
+
var AgentGUI = memo16(function AgentGUI2({
|
|
44673
44810
|
agentActivityRuntime,
|
|
44674
44811
|
agentHostApi,
|
|
44675
44812
|
tuttiModePlanReviewRuntime,
|
|
@@ -44740,15 +44877,15 @@ var AgentGUI = memo15(function AgentGUI2({
|
|
|
44740
44877
|
hostCapabilities: nodeHostCapabilities,
|
|
44741
44878
|
renderSlots: nodeRenderSlots
|
|
44742
44879
|
};
|
|
44743
|
-
const content = /* @__PURE__ */
|
|
44880
|
+
const content = /* @__PURE__ */ jsx89(AgentGuiI18nProvider, { runtime: i18n, locale, children: /* @__PURE__ */ jsx89(TuttiModePlanReviewRuntimeProvider, { runtime: tuttiModePlanReviewRuntime, children: /* @__PURE__ */ jsx89(
|
|
44744
44881
|
AgentActivityHostProvider,
|
|
44745
44882
|
{
|
|
44746
44883
|
agentActivityRuntime,
|
|
44747
44884
|
agentHostApi,
|
|
44748
|
-
children: /* @__PURE__ */
|
|
44885
|
+
children: /* @__PURE__ */ jsx89(AgentGUINode, { ...nodeProps })
|
|
44749
44886
|
}
|
|
44750
44887
|
) }) });
|
|
44751
|
-
return props.frame.previewMode ? content : /* @__PURE__ */
|
|
44888
|
+
return props.frame.previewMode ? content : /* @__PURE__ */ jsx89(TooltipProvider8, { delayDuration: 120, skipDelayDuration: 0, children: content });
|
|
44752
44889
|
});
|
|
44753
44890
|
|
|
44754
44891
|
export {
|
|
@@ -44764,4 +44901,4 @@ export {
|
|
|
44764
44901
|
AgentHandoffMenu,
|
|
44765
44902
|
AgentGUI
|
|
44766
44903
|
};
|
|
44767
|
-
//# sourceMappingURL=chunk-
|
|
44904
|
+
//# sourceMappingURL=chunk-LHT2UBPE.js.map
|