@tutti-os/agent-gui 0.0.47 → 0.0.48
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.d.ts +4 -4
- package/dist/agent-conversation/index.js +6 -6
- package/dist/agent-message-center/index.d.ts +2 -2
- package/dist/agent-message-center/index.js +35 -13
- package/dist/agent-message-center/index.js.map +1 -1
- package/dist/{agentConversationVM-BTMtRteS.d.ts → agentConversationVM-DSXrFL9v.d.ts} +5 -1
- package/dist/{agentGuiNodeTypes-B5Y6yDKy.d.ts → agentGuiNodeTypes-Bp1G8pOj.d.ts} +4 -4
- package/dist/app/renderer/agentactivity.css +62 -12
- package/dist/{chunk-XJXSR5XI.js → chunk-6YN7HQL5.js} +125 -34
- package/dist/chunk-6YN7HQL5.js.map +1 -0
- package/dist/{chunk-MCH35MAX.js → chunk-7W3VWU5R.js} +10 -6
- package/dist/chunk-7W3VWU5R.js.map +1 -0
- package/dist/{chunk-Q4X6Q4E6.js → chunk-EUOGIKT7.js} +2 -2
- package/dist/{chunk-ZAF4IVUT.js → chunk-LWMC2YA3.js} +431 -359
- package/dist/chunk-LWMC2YA3.js.map +1 -0
- package/dist/{chunk-5QTC2L52.js → chunk-N6HRVMIS.js} +2 -2
- package/dist/{chunk-KACBTC7Y.js → chunk-NETHPCSA.js} +11 -3
- package/dist/chunk-NETHPCSA.js.map +1 -0
- package/dist/{chunk-J3SJZMI5.js → chunk-OB43QOMC.js} +2 -2
- package/dist/{chunk-2FOBSURO.js → chunk-OYQZRLJQ.js} +2 -2
- package/dist/{chunk-7NCWSH7U.js → chunk-RNIY43TA.js} +5 -5
- package/dist/{chunk-VE6JY2TH.js → chunk-U6JWW45G.js} +1 -1
- package/dist/chunk-U6JWW45G.js.map +1 -0
- package/dist/{chunk-HCS3HUUX.js → chunk-VGDPBC6W.js} +37 -7
- package/dist/chunk-VGDPBC6W.js.map +1 -0
- package/dist/{chunk-KUCWRSXU.js → chunk-ZVKRNEOF.js} +2 -2
- package/dist/context-mention-palette/index.js +7 -7
- package/dist/i18n/index.d.ts +10 -2
- package/dist/i18n/index.js +2 -2
- package/dist/index.d.ts +290 -8
- package/dist/index.js +189 -44
- package/dist/index.js.map +1 -1
- package/dist/plan-decision-ops.d.ts +2 -2
- package/dist/queued-prompt-runtime.d.ts +3 -3
- package/dist/workbench/index.js +3 -3
- package/dist/workbench/sessionTitle.js +3 -3
- package/dist/workspace-agent-generated-files.d.ts +1 -1
- package/dist/workspace-agent-generated-files.js +3 -3
- package/dist/{workspaceAgentActivityListViewModel-DLnMBMoh.d.ts → workspaceAgentActivityListViewModel-B5viw5Da.d.ts} +1 -1
- package/package.json +12 -12
- package/dist/chunk-HCS3HUUX.js.map +0 -1
- package/dist/chunk-KACBTC7Y.js.map +0 -1
- package/dist/chunk-MCH35MAX.js.map +0 -1
- package/dist/chunk-VE6JY2TH.js.map +0 -1
- package/dist/chunk-XJXSR5XI.js.map +0 -1
- package/dist/chunk-ZAF4IVUT.js.map +0 -1
- /package/dist/{chunk-Q4X6Q4E6.js.map → chunk-EUOGIKT7.js.map} +0 -0
- /package/dist/{chunk-5QTC2L52.js.map → chunk-N6HRVMIS.js.map} +0 -0
- /package/dist/{chunk-J3SJZMI5.js.map → chunk-OB43QOMC.js.map} +0 -0
- /package/dist/{chunk-2FOBSURO.js.map → chunk-OYQZRLJQ.js.map} +0 -0
- /package/dist/{chunk-7NCWSH7U.js.map → chunk-RNIY43TA.js.map} +0 -0
- /package/dist/{chunk-KUCWRSXU.js.map → chunk-ZVKRNEOF.js.map} +0 -0
|
@@ -6,11 +6,14 @@ import {
|
|
|
6
6
|
ZoomableImage,
|
|
7
7
|
cn,
|
|
8
8
|
extractAgentMcpToolTarget,
|
|
9
|
+
extractExitPlanKeepPlanningOptionId,
|
|
10
|
+
extractExitPlanModeOptions,
|
|
11
|
+
isExitPlanSwitchModeInput,
|
|
9
12
|
normalizeAskUserQuestions,
|
|
10
13
|
resolveWorkspaceFileLinkAction,
|
|
11
14
|
resolveWorkspaceFilePathCandidate,
|
|
12
15
|
resolveWorkspaceLinkAction
|
|
13
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-6YN7HQL5.js";
|
|
14
17
|
import {
|
|
15
18
|
AGENT_RICH_TEXT_CARET_ANCHOR,
|
|
16
19
|
attrsToMentionItem,
|
|
@@ -18,7 +21,7 @@ import {
|
|
|
18
21
|
formatAgentMentionMarkdown,
|
|
19
22
|
mentionItemToAttrs,
|
|
20
23
|
parseAgentMentionMarkdown
|
|
21
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-OYQZRLJQ.js";
|
|
22
25
|
import {
|
|
23
26
|
fileChangeCountFromChanges,
|
|
24
27
|
fileChangeEntriesFromChanges,
|
|
@@ -28,14 +31,14 @@ import {
|
|
|
28
31
|
import {
|
|
29
32
|
getOptionalAgentActivityRuntime,
|
|
30
33
|
useOptionalAgentHostApi
|
|
31
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-U6JWW45G.js";
|
|
32
35
|
import {
|
|
33
36
|
workspaceAgentProviderLabel
|
|
34
37
|
} from "./chunk-TYGL25EL.js";
|
|
35
38
|
import {
|
|
36
39
|
getActiveUiLanguage,
|
|
37
40
|
translate
|
|
38
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-N6HRVMIS.js";
|
|
39
42
|
|
|
40
43
|
// shared/imageGenerationTool.ts
|
|
41
44
|
var KNOWN_IMAGE_GENERATION_TOOL_NAMES = /* @__PURE__ */ new Set([
|
|
@@ -2287,7 +2290,7 @@ function projectAgentApprovalItem(call, input, output) {
|
|
|
2287
2290
|
const options = normalizeApprovalOptions(
|
|
2288
2291
|
arrayValue(input?.options) ?? arrayValue(call.payload?.options) ?? []
|
|
2289
2292
|
);
|
|
2290
|
-
if (
|
|
2293
|
+
if (isExitPlanSwitchModeInput(input)) {
|
|
2291
2294
|
return null;
|
|
2292
2295
|
}
|
|
2293
2296
|
const mcpTarget = extractAgentMcpToolTarget({
|
|
@@ -2311,14 +2314,6 @@ function projectAgentApprovalItem(call, input, output) {
|
|
|
2311
2314
|
occurredAtUnixMs: call.occurredAtUnixMs ?? null
|
|
2312
2315
|
};
|
|
2313
2316
|
}
|
|
2314
|
-
function isExitPlanApprovalInput(input, options) {
|
|
2315
|
-
const toolCall = objectValue(input?.toolCall);
|
|
2316
|
-
const kind = normalizeToken(stringValue2(toolCall?.kind));
|
|
2317
|
-
if (kind !== "switch_mode") {
|
|
2318
|
-
return false;
|
|
2319
|
-
}
|
|
2320
|
-
return options.some((option) => option.id === "plan");
|
|
2321
|
-
}
|
|
2322
2317
|
function normalizeApprovalOptions(values) {
|
|
2323
2318
|
return values.flatMap((value) => {
|
|
2324
2319
|
const option = objectValue(value);
|
|
@@ -2375,7 +2370,7 @@ function projectAgentAskUserQuestionItem(call, input, output) {
|
|
|
2375
2370
|
};
|
|
2376
2371
|
}
|
|
2377
2372
|
function projectAgentPlanModeItem(call, input) {
|
|
2378
|
-
if (
|
|
2373
|
+
if (isExitPlanSwitchModeInput(input)) {
|
|
2379
2374
|
return {
|
|
2380
2375
|
itemKind: "plan-mode",
|
|
2381
2376
|
id: call.id,
|
|
@@ -2386,6 +2381,8 @@ function projectAgentPlanModeItem(call, input) {
|
|
|
2386
2381
|
status: call.status,
|
|
2387
2382
|
plan: stringValue3(input?.plan) ?? stringValue3(call.payload?.plan) ?? (call.summary.trim() || null),
|
|
2388
2383
|
filePath: stringValue3(input?.filePath) ?? stringValue3(call.payload?.filePath),
|
|
2384
|
+
options: extractExitPlanModeOptions(input),
|
|
2385
|
+
...keepPlanningOption(extractExitPlanKeepPlanningOptionId(input)),
|
|
2389
2386
|
occurredAtUnixMs: call.occurredAtUnixMs ?? null
|
|
2390
2387
|
};
|
|
2391
2388
|
}
|
|
@@ -2419,17 +2416,6 @@ function projectAgentPlanModeItem(call, input) {
|
|
|
2419
2416
|
occurredAtUnixMs: call.occurredAtUnixMs ?? null
|
|
2420
2417
|
};
|
|
2421
2418
|
}
|
|
2422
|
-
function isExitPlanApprovalInput2(input) {
|
|
2423
|
-
const toolCall = objectValue2(input?.toolCall);
|
|
2424
|
-
const kind = normalizeToolName2(stringValue3(toolCall?.kind));
|
|
2425
|
-
if (kind !== "switchmode") {
|
|
2426
|
-
return false;
|
|
2427
|
-
}
|
|
2428
|
-
return (arrayValue2(input?.options) ?? []).some((value) => {
|
|
2429
|
-
const option = objectValue2(value);
|
|
2430
|
-
return stringValue3(option?.optionId) === "plan" || stringValue3(option?.id) === "plan";
|
|
2431
|
-
});
|
|
2432
|
-
}
|
|
2433
2419
|
function answerForQuestion(questionId, answersByQuestionId, output) {
|
|
2434
2420
|
const value = answersByQuestionId[questionId];
|
|
2435
2421
|
if (Array.isArray(value)) {
|
|
@@ -2445,6 +2431,9 @@ function answerForQuestion(questionId, answersByQuestionId, output) {
|
|
|
2445
2431
|
(item) => typeof item === "string" && item.trim().length > 0
|
|
2446
2432
|
) : null;
|
|
2447
2433
|
}
|
|
2434
|
+
function keepPlanningOption(optionId) {
|
|
2435
|
+
return optionId ? { keepPlanningOptionId: optionId } : {};
|
|
2436
|
+
}
|
|
2448
2437
|
function normalizeToolName2(value) {
|
|
2449
2438
|
return (value ?? "").replace(/[_\s-]+/g, "").trim().toLowerCase();
|
|
2450
2439
|
}
|
|
@@ -4843,7 +4832,9 @@ function selectPendingInteractivePrompt(rows) {
|
|
|
4843
4832
|
return {
|
|
4844
4833
|
kind: "exit-plan",
|
|
4845
4834
|
requestId: call.planMode.requestId ?? call.id.replace(/^call:/, ""),
|
|
4846
|
-
title: call.planMode.title
|
|
4835
|
+
title: call.planMode.title,
|
|
4836
|
+
options: call.planMode.options ?? [],
|
|
4837
|
+
...call.planMode.keepPlanningOptionId ? { keepPlanningOptionId: call.planMode.keepPlanningOptionId } : {}
|
|
4847
4838
|
};
|
|
4848
4839
|
}
|
|
4849
4840
|
}
|
|
@@ -9573,7 +9564,54 @@ function normalizeToolName7(value) {
|
|
|
9573
9564
|
|
|
9574
9565
|
// shared/agentConversation/components/tool-renderers/code/AgentCodeBlock.tsx
|
|
9575
9566
|
import { useMemo as useMemo2, useState as useState6 } from "react";
|
|
9576
|
-
|
|
9567
|
+
|
|
9568
|
+
// shared/agentConversation/components/tool-renderers/AgentPathTailLabel.tsx
|
|
9569
|
+
import { jsx as jsx20, jsxs as jsxs13 } from "react/jsx-runtime";
|
|
9570
|
+
function AgentPathTailLabel({
|
|
9571
|
+
path,
|
|
9572
|
+
fallback,
|
|
9573
|
+
className
|
|
9574
|
+
}) {
|
|
9575
|
+
"use memo";
|
|
9576
|
+
const label = path?.trim() || fallback;
|
|
9577
|
+
const parts = splitPathTail(label);
|
|
9578
|
+
if (!parts) {
|
|
9579
|
+
return /* @__PURE__ */ jsx20(
|
|
9580
|
+
"span",
|
|
9581
|
+
{
|
|
9582
|
+
className: `agent-path-tail-label ${className ?? ""}`,
|
|
9583
|
+
title: path ?? void 0,
|
|
9584
|
+
children: /* @__PURE__ */ jsx20("span", { className: "agent-path-tail-label__file", children: label })
|
|
9585
|
+
}
|
|
9586
|
+
);
|
|
9587
|
+
}
|
|
9588
|
+
return /* @__PURE__ */ jsxs13(
|
|
9589
|
+
"span",
|
|
9590
|
+
{
|
|
9591
|
+
className: `agent-path-tail-label ${className ?? ""}`,
|
|
9592
|
+
title: path ?? void 0,
|
|
9593
|
+
children: [
|
|
9594
|
+
/* @__PURE__ */ jsx20("span", { className: "agent-path-tail-label__directory", children: parts.directory }),
|
|
9595
|
+
/* @__PURE__ */ jsx20("span", { className: "agent-path-tail-label__file", children: parts.fileName })
|
|
9596
|
+
]
|
|
9597
|
+
}
|
|
9598
|
+
);
|
|
9599
|
+
}
|
|
9600
|
+
function splitPathTail(value) {
|
|
9601
|
+
const lastForwardSlash = value.lastIndexOf("/");
|
|
9602
|
+
const lastBackwardSlash = value.lastIndexOf("\\");
|
|
9603
|
+
const lastSeparator = Math.max(lastForwardSlash, lastBackwardSlash);
|
|
9604
|
+
if (lastSeparator <= 0 || lastSeparator === value.length - 1) {
|
|
9605
|
+
return null;
|
|
9606
|
+
}
|
|
9607
|
+
return {
|
|
9608
|
+
directory: value.slice(0, lastSeparator + 1),
|
|
9609
|
+
fileName: value.slice(lastSeparator + 1)
|
|
9610
|
+
};
|
|
9611
|
+
}
|
|
9612
|
+
|
|
9613
|
+
// shared/agentConversation/components/tool-renderers/code/AgentCodeBlock.tsx
|
|
9614
|
+
import { Fragment as Fragment3, jsx as jsx21, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
9577
9615
|
var MAX_VISIBLE_LINES = 120;
|
|
9578
9616
|
function AgentCodeBlock({
|
|
9579
9617
|
path,
|
|
@@ -9608,7 +9646,7 @@ function AgentCodeBlock({
|
|
|
9608
9646
|
if (!normalized) {
|
|
9609
9647
|
return null;
|
|
9610
9648
|
}
|
|
9611
|
-
const disclosureButton = collapsible && lineCount > MAX_VISIBLE_LINES ? /* @__PURE__ */
|
|
9649
|
+
const disclosureButton = collapsible && lineCount > MAX_VISIBLE_LINES ? /* @__PURE__ */ jsx21(
|
|
9612
9650
|
"button",
|
|
9613
9651
|
{
|
|
9614
9652
|
type: "button",
|
|
@@ -9619,13 +9657,13 @@ function AgentCodeBlock({
|
|
|
9619
9657
|
})
|
|
9620
9658
|
}
|
|
9621
9659
|
) : null;
|
|
9622
|
-
return /* @__PURE__ */
|
|
9660
|
+
return /* @__PURE__ */ jsx21(
|
|
9623
9661
|
"div",
|
|
9624
9662
|
{
|
|
9625
9663
|
className: `workspace-agents-status-panel__detail-tool-code overflow-hidden rounded-[8px] border border-[var(--line-2)] bg-[var(--background-panel)] ${flat ? "workspace-agents-status-panel__detail-tool-code--flat" : ""}`,
|
|
9626
|
-
children: flat ? /* @__PURE__ */
|
|
9627
|
-
showHeader ? /* @__PURE__ */
|
|
9628
|
-
/* @__PURE__ */
|
|
9664
|
+
children: flat ? /* @__PURE__ */ jsxs14(Fragment3, { children: [
|
|
9665
|
+
showHeader ? /* @__PURE__ */ jsxs14("div", { className: "flex items-center justify-between gap-3 border-b border-[var(--line-2)] bg-[var(--transparency-block)] px-3 py-1.5 text-[11px]", children: [
|
|
9666
|
+
/* @__PURE__ */ jsx21(
|
|
9629
9667
|
"span",
|
|
9630
9668
|
{
|
|
9631
9669
|
className: "truncate font-[var(--tsh-font-mono)] text-[var(--text-secondary)]",
|
|
@@ -9633,35 +9671,42 @@ function AgentCodeBlock({
|
|
|
9633
9671
|
children: fileLabel
|
|
9634
9672
|
}
|
|
9635
9673
|
),
|
|
9636
|
-
/* @__PURE__ */
|
|
9674
|
+
/* @__PURE__ */ jsxs14("span", { className: "shrink-0 font-semibold text-[var(--state-success)]", children: [
|
|
9637
9675
|
"+",
|
|
9638
9676
|
addedCount
|
|
9639
9677
|
] })
|
|
9640
9678
|
] }) : null,
|
|
9641
|
-
/* @__PURE__ */
|
|
9642
|
-
visibleLines.map((line) => /* @__PURE__ */
|
|
9679
|
+
/* @__PURE__ */ jsxs14("div", { className: "workspace-agents-status-panel__detail-scroll-region max-h-[240px] overflow-auto bg-[var(--background-panel)]", children: [
|
|
9680
|
+
visibleLines.map((line) => /* @__PURE__ */ jsxs14(
|
|
9643
9681
|
"div",
|
|
9644
9682
|
{
|
|
9645
9683
|
className: "grid grid-cols-[56px_minmax(0,1fr)] border-l-[3px] border-l-[var(--state-success)] font-[var(--tsh-font-mono)] text-[11px] leading-6",
|
|
9646
9684
|
children: [
|
|
9647
|
-
/* @__PURE__ */
|
|
9648
|
-
/* @__PURE__ */
|
|
9685
|
+
/* @__PURE__ */ jsx21("div", { className: "select-none px-2.5 text-right text-[color:color-mix(in_srgb,var(--state-success)_90%,transparent)]", children: line.lineNumber }),
|
|
9686
|
+
/* @__PURE__ */ jsx21("pre", { className: "m-0 overflow-x-auto px-3 py-0 text-[var(--text-primary)]", children: /* @__PURE__ */ jsx21("code", { children: line.line || " " }) })
|
|
9649
9687
|
]
|
|
9650
9688
|
},
|
|
9651
9689
|
line.key
|
|
9652
9690
|
)),
|
|
9653
9691
|
disclosureButton
|
|
9654
9692
|
] })
|
|
9655
|
-
] }) : /* @__PURE__ */
|
|
9656
|
-
showHeader ? /* @__PURE__ */
|
|
9657
|
-
/* @__PURE__ */
|
|
9658
|
-
|
|
9693
|
+
] }) : /* @__PURE__ */ jsxs14(Fragment3, { children: [
|
|
9694
|
+
showHeader ? /* @__PURE__ */ jsxs14("div", { className: "flex items-center justify-between gap-3 border-b border-[var(--line-2)] bg-[var(--transparency-block)] px-3 py-1.5 text-[11px] text-[var(--text-secondary)]", children: [
|
|
9695
|
+
/* @__PURE__ */ jsx21(
|
|
9696
|
+
AgentPathTailLabel,
|
|
9697
|
+
{
|
|
9698
|
+
path,
|
|
9699
|
+
fallback: "Code",
|
|
9700
|
+
className: "font-[var(--tsh-font-mono)]"
|
|
9701
|
+
}
|
|
9702
|
+
),
|
|
9703
|
+
/* @__PURE__ */ jsxs14("span", { className: "shrink-0", children: [
|
|
9659
9704
|
language ? `${language} \xB7 ` : "",
|
|
9660
9705
|
lineCount,
|
|
9661
9706
|
" lines"
|
|
9662
9707
|
] })
|
|
9663
9708
|
] }) : null,
|
|
9664
|
-
/* @__PURE__ */
|
|
9709
|
+
/* @__PURE__ */ jsx21("pre", { className: "workspace-agents-status-panel__detail-scroll-region max-h-[200px] overflow-auto px-3 py-2 text-[11px] leading-5 text-[var(--text-primary)]", children: /* @__PURE__ */ jsx21("code", { children: visibleContent }) }),
|
|
9665
9710
|
disclosureButton
|
|
9666
9711
|
] })
|
|
9667
9712
|
}
|
|
@@ -9695,7 +9740,7 @@ import {
|
|
|
9695
9740
|
useAnimation as useAnimation5,
|
|
9696
9741
|
useReducedMotion as useReducedMotion5
|
|
9697
9742
|
} from "framer-motion";
|
|
9698
|
-
import { jsx as
|
|
9743
|
+
import { jsx as jsx22, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
9699
9744
|
var ATOM_ICON_ANIMATION_DURATION = 0.75;
|
|
9700
9745
|
var ATOM_ICON_REPEAT_DELAY = 1.5;
|
|
9701
9746
|
var PATH_VARIANTS = {
|
|
@@ -9787,14 +9832,14 @@ var AtomIcon = forwardRef7(
|
|
|
9787
9832
|
},
|
|
9788
9833
|
[onMouseLeave, stopAnimation]
|
|
9789
9834
|
);
|
|
9790
|
-
return /* @__PURE__ */
|
|
9835
|
+
return /* @__PURE__ */ jsx22(
|
|
9791
9836
|
"div",
|
|
9792
9837
|
{
|
|
9793
9838
|
className: cn("inline-flex items-center justify-center", className),
|
|
9794
9839
|
onMouseEnter: handleMouseEnter,
|
|
9795
9840
|
onMouseLeave: handleMouseLeave,
|
|
9796
9841
|
...props,
|
|
9797
|
-
children: /* @__PURE__ */
|
|
9842
|
+
children: /* @__PURE__ */ jsxs15(
|
|
9798
9843
|
"svg",
|
|
9799
9844
|
{
|
|
9800
9845
|
fill: "none",
|
|
@@ -9807,7 +9852,7 @@ var AtomIcon = forwardRef7(
|
|
|
9807
9852
|
width: size,
|
|
9808
9853
|
xmlns: "http://www.w3.org/2000/svg",
|
|
9809
9854
|
children: [
|
|
9810
|
-
/* @__PURE__ */
|
|
9855
|
+
/* @__PURE__ */ jsx22(
|
|
9811
9856
|
motion5.circle,
|
|
9812
9857
|
{
|
|
9813
9858
|
animate: controls,
|
|
@@ -9818,7 +9863,7 @@ var AtomIcon = forwardRef7(
|
|
|
9818
9863
|
variants: PATH_VARIANTS
|
|
9819
9864
|
}
|
|
9820
9865
|
),
|
|
9821
|
-
/* @__PURE__ */
|
|
9866
|
+
/* @__PURE__ */ jsx22(
|
|
9822
9867
|
motion5.path,
|
|
9823
9868
|
{
|
|
9824
9869
|
animate: controls,
|
|
@@ -9827,7 +9872,7 @@ var AtomIcon = forwardRef7(
|
|
|
9827
9872
|
variants: PATH_VARIANTS
|
|
9828
9873
|
}
|
|
9829
9874
|
),
|
|
9830
|
-
/* @__PURE__ */
|
|
9875
|
+
/* @__PURE__ */ jsx22(
|
|
9831
9876
|
motion5.path,
|
|
9832
9877
|
{
|
|
9833
9878
|
animate: controls,
|
|
@@ -9846,7 +9891,7 @@ var AtomIcon = forwardRef7(
|
|
|
9846
9891
|
AtomIcon.displayName = "AtomIcon";
|
|
9847
9892
|
|
|
9848
9893
|
// shared/agentConversation/components/tool-renderers/file-diff/AgentMonacoDiffViewer.tsx
|
|
9849
|
-
import { jsx as
|
|
9894
|
+
import { jsx as jsx23, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
9850
9895
|
var MonacoDiffEditor = lazy(async () => {
|
|
9851
9896
|
const module = await import("@monaco-editor/react");
|
|
9852
9897
|
return { default: module.DiffEditor };
|
|
@@ -9859,24 +9904,31 @@ function AgentMonacoDiffViewer({
|
|
|
9859
9904
|
showHeader = true
|
|
9860
9905
|
}) {
|
|
9861
9906
|
"use memo";
|
|
9862
|
-
return /* @__PURE__ */
|
|
9907
|
+
return /* @__PURE__ */ jsxs16(
|
|
9863
9908
|
"div",
|
|
9864
9909
|
{
|
|
9865
9910
|
className: `overflow-hidden rounded-[8px] border border-[var(--line-2)] bg-[var(--background-panel)] ${flat ? "workspace-agents-status-panel__detail-tool-monaco--flat" : ""}`,
|
|
9866
9911
|
children: [
|
|
9867
|
-
showHeader ? /* @__PURE__ */
|
|
9912
|
+
showHeader ? /* @__PURE__ */ jsx23(
|
|
9868
9913
|
"div",
|
|
9869
9914
|
{
|
|
9870
9915
|
className: "border-b border-[var(--line-2)] bg-[var(--transparency-block)] px-3 py-1.5 text-[11px] text-[var(--text-secondary)]",
|
|
9871
9916
|
"data-agent-diff-header": "true",
|
|
9872
|
-
children:
|
|
9917
|
+
children: /* @__PURE__ */ jsx23(
|
|
9918
|
+
AgentPathTailLabel,
|
|
9919
|
+
{
|
|
9920
|
+
path,
|
|
9921
|
+
fallback: "Diff",
|
|
9922
|
+
className: "font-[var(--tsh-font-mono)]"
|
|
9923
|
+
}
|
|
9924
|
+
)
|
|
9873
9925
|
}
|
|
9874
9926
|
) : null,
|
|
9875
|
-
/* @__PURE__ */
|
|
9927
|
+
/* @__PURE__ */ jsx23("div", { className: "h-[220px] bg-[var(--background-panel)]", children: /* @__PURE__ */ jsx23(
|
|
9876
9928
|
Suspense,
|
|
9877
9929
|
{
|
|
9878
|
-
fallback: /* @__PURE__ */
|
|
9879
|
-
/* @__PURE__ */
|
|
9930
|
+
fallback: /* @__PURE__ */ jsxs16("div", { className: "flex items-center gap-1.5 px-3 py-2.5 text-[11px] text-[var(--text-secondary)]", children: [
|
|
9931
|
+
/* @__PURE__ */ jsx23(
|
|
9880
9932
|
AtomIcon,
|
|
9881
9933
|
{
|
|
9882
9934
|
size: 14,
|
|
@@ -9885,9 +9937,9 @@ function AgentMonacoDiffViewer({
|
|
|
9885
9937
|
className: "shrink-0"
|
|
9886
9938
|
}
|
|
9887
9939
|
),
|
|
9888
|
-
/* @__PURE__ */
|
|
9940
|
+
/* @__PURE__ */ jsx23("span", { children: translate("agentHost.agentTool.details.loadingDiff") })
|
|
9889
9941
|
] }),
|
|
9890
|
-
children: /* @__PURE__ */
|
|
9942
|
+
children: /* @__PURE__ */ jsx23(
|
|
9891
9943
|
MonacoDiffEditor,
|
|
9892
9944
|
{
|
|
9893
9945
|
original: oldValue,
|
|
@@ -9933,7 +9985,7 @@ function languageForPath2(path) {
|
|
|
9933
9985
|
import { useMemo as useMemo3, useState as useState7 } from "react";
|
|
9934
9986
|
|
|
9935
9987
|
// shared/agentConversation/components/tool-renderers/AgentToolScrollArea.tsx
|
|
9936
|
-
import { jsx as
|
|
9988
|
+
import { jsx as jsx24 } from "react/jsx-runtime";
|
|
9937
9989
|
function AgentToolScrollArea({
|
|
9938
9990
|
children,
|
|
9939
9991
|
className,
|
|
@@ -9942,7 +9994,7 @@ function AgentToolScrollArea({
|
|
|
9942
9994
|
...props
|
|
9943
9995
|
}) {
|
|
9944
9996
|
"use memo";
|
|
9945
|
-
return /* @__PURE__ */
|
|
9997
|
+
return /* @__PURE__ */ jsx24(
|
|
9946
9998
|
CustomScrollArea,
|
|
9947
9999
|
{
|
|
9948
10000
|
className: cn(
|
|
@@ -10046,7 +10098,7 @@ function parseAgentUnifiedDiffStats(diffText) {
|
|
|
10046
10098
|
}
|
|
10047
10099
|
|
|
10048
10100
|
// shared/agentConversation/components/tool-renderers/file-diff/AgentUnifiedPatchViewer.tsx
|
|
10049
|
-
import { Fragment as Fragment4, jsx as
|
|
10101
|
+
import { Fragment as Fragment4, jsx as jsx25, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
10050
10102
|
var MAX_VISIBLE_LINES2 = 120;
|
|
10051
10103
|
function AgentUnifiedPatchViewer({
|
|
10052
10104
|
path,
|
|
@@ -10092,7 +10144,7 @@ function AgentUnifiedPatchViewer({
|
|
|
10092
10144
|
if (!normalized) {
|
|
10093
10145
|
return null;
|
|
10094
10146
|
}
|
|
10095
|
-
const disclosureButton = collapsible && lines.length > MAX_VISIBLE_LINES2 ? /* @__PURE__ */
|
|
10147
|
+
const disclosureButton = collapsible && lines.length > MAX_VISIBLE_LINES2 ? /* @__PURE__ */ jsx25(
|
|
10096
10148
|
"button",
|
|
10097
10149
|
{
|
|
10098
10150
|
type: "button",
|
|
@@ -10103,18 +10155,18 @@ function AgentUnifiedPatchViewer({
|
|
|
10103
10155
|
})
|
|
10104
10156
|
}
|
|
10105
10157
|
) : null;
|
|
10106
|
-
return /* @__PURE__ */
|
|
10158
|
+
return /* @__PURE__ */ jsx25(
|
|
10107
10159
|
"div",
|
|
10108
10160
|
{
|
|
10109
10161
|
className: `workspace-agents-status-panel__detail-tool-diff overflow-hidden rounded-[8px] border border-[var(--line-2)] bg-[var(--background-panel)] ${flat ? "workspace-agents-status-panel__detail-tool-diff--flat" : ""}`,
|
|
10110
|
-
children: flat ? /* @__PURE__ */
|
|
10111
|
-
showHeader ? /* @__PURE__ */
|
|
10162
|
+
children: flat ? /* @__PURE__ */ jsxs17(Fragment4, { children: [
|
|
10163
|
+
showHeader ? /* @__PURE__ */ jsxs17(
|
|
10112
10164
|
"div",
|
|
10113
10165
|
{
|
|
10114
10166
|
className: "flex items-center justify-between gap-3 border-b border-[var(--line-2)] bg-[var(--transparency-block)] px-3 py-1.5 text-[11px]",
|
|
10115
10167
|
"data-agent-diff-header": "true",
|
|
10116
10168
|
children: [
|
|
10117
|
-
/* @__PURE__ */
|
|
10169
|
+
/* @__PURE__ */ jsx25(
|
|
10118
10170
|
"span",
|
|
10119
10171
|
{
|
|
10120
10172
|
className: "truncate font-[var(--tsh-font-mono)] text-[var(--text-secondary)]",
|
|
@@ -10122,12 +10174,12 @@ function AgentUnifiedPatchViewer({
|
|
|
10122
10174
|
children: fileLabel
|
|
10123
10175
|
}
|
|
10124
10176
|
),
|
|
10125
|
-
/* @__PURE__ */
|
|
10126
|
-
/* @__PURE__ */
|
|
10177
|
+
/* @__PURE__ */ jsxs17("span", { className: "inline-flex items-center gap-2 text-[11px] font-semibold", children: [
|
|
10178
|
+
/* @__PURE__ */ jsxs17("span", { className: "text-[var(--state-success)]", children: [
|
|
10127
10179
|
"+",
|
|
10128
10180
|
stats.added
|
|
10129
10181
|
] }),
|
|
10130
|
-
/* @__PURE__ */
|
|
10182
|
+
/* @__PURE__ */ jsxs17("span", { className: "text-[var(--state-danger)]", children: [
|
|
10131
10183
|
"-",
|
|
10132
10184
|
stats.removed
|
|
10133
10185
|
] })
|
|
@@ -10135,23 +10187,30 @@ function AgentUnifiedPatchViewer({
|
|
|
10135
10187
|
]
|
|
10136
10188
|
}
|
|
10137
10189
|
) : null,
|
|
10138
|
-
/* @__PURE__ */
|
|
10139
|
-
visibleDiffLines.map(({ key, line }) => /* @__PURE__ */
|
|
10140
|
-
/* @__PURE__ */
|
|
10141
|
-
/* @__PURE__ */
|
|
10190
|
+
/* @__PURE__ */ jsxs17(AgentToolScrollArea, { viewportClassName: "agent-tool-diff__viewport", children: [
|
|
10191
|
+
visibleDiffLines.map(({ key, line }) => /* @__PURE__ */ jsxs17("div", { className: flatLineClassName(line.kind), children: [
|
|
10192
|
+
/* @__PURE__ */ jsx25("div", { className: "select-none px-2.5 text-right text-[var(--text-tertiary)]", children: line.newLineNumber ?? line.oldLineNumber ?? "" }),
|
|
10193
|
+
/* @__PURE__ */ jsx25("pre", { className: "m-0 overflow-x-auto px-3 py-0 text-[var(--text-primary)]", children: /* @__PURE__ */ jsx25("code", { children: line.text || " " }) })
|
|
10142
10194
|
] }, key)),
|
|
10143
10195
|
disclosureButton
|
|
10144
10196
|
] })
|
|
10145
|
-
] }) : /* @__PURE__ */
|
|
10146
|
-
showHeader ? /* @__PURE__ */
|
|
10197
|
+
] }) : /* @__PURE__ */ jsxs17(Fragment4, { children: [
|
|
10198
|
+
showHeader ? /* @__PURE__ */ jsx25(
|
|
10147
10199
|
"div",
|
|
10148
10200
|
{
|
|
10149
10201
|
className: "border-b border-[var(--line-2)] bg-[var(--transparency-block)] px-3 py-1.5 text-[11px] text-[var(--text-secondary)]",
|
|
10150
10202
|
"data-agent-diff-header": "true",
|
|
10151
|
-
children:
|
|
10203
|
+
children: /* @__PURE__ */ jsx25(
|
|
10204
|
+
AgentPathTailLabel,
|
|
10205
|
+
{
|
|
10206
|
+
path,
|
|
10207
|
+
fallback: "Patch",
|
|
10208
|
+
className: "font-[var(--tsh-font-mono)]"
|
|
10209
|
+
}
|
|
10210
|
+
)
|
|
10152
10211
|
}
|
|
10153
10212
|
) : null,
|
|
10154
|
-
/* @__PURE__ */
|
|
10213
|
+
/* @__PURE__ */ jsx25(AgentToolScrollArea, { viewportClassName: "agent-tool-diff__viewport px-4 py-3 text-[11px] leading-5", children: visibleLines.map(({ key, line }) => /* @__PURE__ */ jsx25("div", { className: lineClassName(line), children: line || " " }, key)) }),
|
|
10155
10214
|
disclosureButton
|
|
10156
10215
|
] })
|
|
10157
10216
|
}
|
|
@@ -10213,7 +10272,7 @@ import {
|
|
|
10213
10272
|
import { ChevronDown as ChevronDown5, ChevronRight as ChevronRight5 } from "lucide-react";
|
|
10214
10273
|
|
|
10215
10274
|
// shared/agentConversation/components/tool-renderers/AgentReadContent.tsx
|
|
10216
|
-
import { jsx as
|
|
10275
|
+
import { jsx as jsx26, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
10217
10276
|
function AgentReadContent({
|
|
10218
10277
|
call
|
|
10219
10278
|
}) {
|
|
@@ -10223,16 +10282,23 @@ function AgentReadContent({
|
|
|
10223
10282
|
const outputText = stringValue9(call.output?.text) ?? stringValue9(call.output?.output) ?? contentText2(call.output?.content) ?? stringValue9(call.output?.aggregated_output) ?? stringValue9(call.output?.formatted_output) ?? stringValue9(call.output?.stdout) ?? (!file ? call.summary.trim() || null : null);
|
|
10224
10283
|
const fileLineRange = fileRange(file);
|
|
10225
10284
|
const fileTotalLines = numericValue(file?.totalLines);
|
|
10226
|
-
return /* @__PURE__ */
|
|
10285
|
+
return /* @__PURE__ */ jsx26("div", { className: "workspace-agents-status-panel__detail-tool-body workspace-agents-status-panel__detail-tool-body--plain", children: outputText ? /* @__PURE__ */ jsx26(
|
|
10227
10286
|
AgentCodeBlock,
|
|
10228
10287
|
{
|
|
10229
10288
|
path,
|
|
10230
10289
|
content: outputText,
|
|
10231
10290
|
language: languageForPath3(path)
|
|
10232
10291
|
}
|
|
10233
|
-
) : path || fileLineRange || fileTotalLines !== null ? /* @__PURE__ */
|
|
10234
|
-
path ? /* @__PURE__ */
|
|
10235
|
-
|
|
10292
|
+
) : path || fileLineRange || fileTotalLines !== null ? /* @__PURE__ */ jsxs18("div", { className: "rounded-[8px] border border-[var(--line-2)] bg-[var(--background-panel)] px-3 py-2", children: [
|
|
10293
|
+
path ? /* @__PURE__ */ jsx26(
|
|
10294
|
+
AgentPathTailLabel,
|
|
10295
|
+
{
|
|
10296
|
+
path,
|
|
10297
|
+
fallback: "File",
|
|
10298
|
+
className: "font-[var(--tsh-font-mono)] text-[11px] text-[var(--text-secondary)]"
|
|
10299
|
+
}
|
|
10300
|
+
) : null,
|
|
10301
|
+
fileLineRange || fileTotalLines !== null ? /* @__PURE__ */ jsx26("div", { className: "mt-1 text-[11px] text-[var(--text-secondary)]", children: [
|
|
10236
10302
|
fileLineRange,
|
|
10237
10303
|
fileTotalLines !== null ? `${fileTotalLines} lines` : null
|
|
10238
10304
|
].filter((value) => Boolean(value)).join(" \xB7 ") }) : null
|
|
@@ -10296,14 +10362,14 @@ function languageForPath3(path) {
|
|
|
10296
10362
|
}
|
|
10297
10363
|
|
|
10298
10364
|
// shared/agentConversation/components/tool-renderers/agentToolContentShared.tsx
|
|
10299
|
-
import { jsx as
|
|
10365
|
+
import { jsx as jsx27, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
10300
10366
|
var AgentToolPreviewModeContext = createContext(false);
|
|
10301
10367
|
function AgentToolPreviewModeProvider({
|
|
10302
10368
|
children,
|
|
10303
10369
|
previewMode
|
|
10304
10370
|
}) {
|
|
10305
10371
|
"use memo";
|
|
10306
|
-
return /* @__PURE__ */
|
|
10372
|
+
return /* @__PURE__ */ jsx27(AgentToolPreviewModeContext.Provider, { value: previewMode, children });
|
|
10307
10373
|
}
|
|
10308
10374
|
function ToolSection({
|
|
10309
10375
|
title,
|
|
@@ -10313,8 +10379,8 @@ function ToolSection({
|
|
|
10313
10379
|
if (!children) {
|
|
10314
10380
|
return null;
|
|
10315
10381
|
}
|
|
10316
|
-
return /* @__PURE__ */
|
|
10317
|
-
/* @__PURE__ */
|
|
10382
|
+
return /* @__PURE__ */ jsxs19("section", { className: "workspace-agents-status-panel__detail-tool-section-block", children: [
|
|
10383
|
+
/* @__PURE__ */ jsx27("div", { className: "workspace-agents-status-panel__detail-tool-section-title", children: title }),
|
|
10318
10384
|
children
|
|
10319
10385
|
] });
|
|
10320
10386
|
}
|
|
@@ -10331,7 +10397,7 @@ function ToolMarkdownBlock({
|
|
|
10331
10397
|
if (!normalized) {
|
|
10332
10398
|
return null;
|
|
10333
10399
|
}
|
|
10334
|
-
return /* @__PURE__ */
|
|
10400
|
+
return /* @__PURE__ */ jsx27(
|
|
10335
10401
|
AgentMessageMarkdown,
|
|
10336
10402
|
{
|
|
10337
10403
|
content: normalized,
|
|
@@ -10394,8 +10460,8 @@ function AgentDefaultToolContent({
|
|
|
10394
10460
|
if (sections.length === 0 && !rawPayload) {
|
|
10395
10461
|
return null;
|
|
10396
10462
|
}
|
|
10397
|
-
return /* @__PURE__ */
|
|
10398
|
-
sections.map((section) => /* @__PURE__ */
|
|
10463
|
+
return /* @__PURE__ */ jsxs19("div", { className: "workspace-agents-status-panel__detail-tool-body", children: [
|
|
10464
|
+
sections.map((section) => /* @__PURE__ */ jsx27(ToolSection, { title: section.title, children: /* @__PURE__ */ jsx27(
|
|
10399
10465
|
ToolMarkdownBlock,
|
|
10400
10466
|
{
|
|
10401
10467
|
content: section.content,
|
|
@@ -10403,7 +10469,7 @@ function AgentDefaultToolContent({
|
|
|
10403
10469
|
collapsible: section.collapsible
|
|
10404
10470
|
}
|
|
10405
10471
|
) }, section.key)),
|
|
10406
|
-
/* @__PURE__ */
|
|
10472
|
+
/* @__PURE__ */ jsx27(RawPayloadSection, { payload: rawPayload })
|
|
10407
10473
|
] });
|
|
10408
10474
|
}
|
|
10409
10475
|
function hasAgentToolContent(call) {
|
|
@@ -10530,8 +10596,8 @@ function RawPayloadSection({
|
|
|
10530
10596
|
if (!rawJson) {
|
|
10531
10597
|
return null;
|
|
10532
10598
|
}
|
|
10533
|
-
return /* @__PURE__ */
|
|
10534
|
-
/* @__PURE__ */
|
|
10599
|
+
return /* @__PURE__ */ jsxs19("div", { className: "workspace-agents-status-panel__detail-tool-raw", children: [
|
|
10600
|
+
/* @__PURE__ */ jsxs19(
|
|
10535
10601
|
"button",
|
|
10536
10602
|
{
|
|
10537
10603
|
type: "button",
|
|
@@ -10539,8 +10605,8 @@ function RawPayloadSection({
|
|
|
10539
10605
|
"aria-expanded": expanded,
|
|
10540
10606
|
onClick: () => setExpanded((value) => !value),
|
|
10541
10607
|
children: [
|
|
10542
|
-
/* @__PURE__ */
|
|
10543
|
-
expanded ? /* @__PURE__ */
|
|
10608
|
+
/* @__PURE__ */ jsx27("span", { children: translate("agentHost.agentTool.details.rawPayload") }),
|
|
10609
|
+
expanded ? /* @__PURE__ */ jsx27(
|
|
10544
10610
|
ChevronDown5,
|
|
10545
10611
|
{
|
|
10546
10612
|
size: 12,
|
|
@@ -10548,7 +10614,7 @@ function RawPayloadSection({
|
|
|
10548
10614
|
"aria-hidden": "true",
|
|
10549
10615
|
className: "shrink-0 opacity-0 transition-opacity duration-150 group-hover/raw-payload:opacity-100 group-focus-visible/raw-payload:opacity-100"
|
|
10550
10616
|
}
|
|
10551
|
-
) : /* @__PURE__ */
|
|
10617
|
+
) : /* @__PURE__ */ jsx27(
|
|
10552
10618
|
ChevronRight5,
|
|
10553
10619
|
{
|
|
10554
10620
|
size: 12,
|
|
@@ -10560,7 +10626,7 @@ function RawPayloadSection({
|
|
|
10560
10626
|
]
|
|
10561
10627
|
}
|
|
10562
10628
|
),
|
|
10563
|
-
/* @__PURE__ */
|
|
10629
|
+
/* @__PURE__ */ jsx27(CollapsibleReveal, { expanded, preMountOnIdle: true, children: /* @__PURE__ */ jsx27("pre", { className: "workspace-agents-status-panel__detail-scroll-region mt-2 max-h-[320px] overflow-auto rounded-[8px] border border-[var(--line-2)] bg-[var(--transparency-block)] px-3 py-2 text-[11px] leading-[1.45] text-[var(--text-secondary)]", children: /* @__PURE__ */ jsx27("code", { children: rawJson }) }) })
|
|
10564
10630
|
] });
|
|
10565
10631
|
}
|
|
10566
10632
|
function rawPayloadFromCall(call) {
|
|
@@ -10608,7 +10674,7 @@ function normalizeToolSectionContent(value) {
|
|
|
10608
10674
|
}
|
|
10609
10675
|
|
|
10610
10676
|
// shared/agentConversation/components/tool-renderers/AgentEditContent.tsx
|
|
10611
|
-
import { jsx as
|
|
10677
|
+
import { jsx as jsx28, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
10612
10678
|
function AgentEditContent({
|
|
10613
10679
|
call,
|
|
10614
10680
|
onLinkClick
|
|
@@ -10628,9 +10694,9 @@ function AgentEditContent({
|
|
|
10628
10694
|
if (!hasRenderableContent) {
|
|
10629
10695
|
return null;
|
|
10630
10696
|
}
|
|
10631
|
-
return /* @__PURE__ */
|
|
10632
|
-
path && files.length === 0 ? /* @__PURE__ */
|
|
10633
|
-
patchFiles.map((candidate) => /* @__PURE__ */
|
|
10697
|
+
return /* @__PURE__ */ jsxs20("div", { className: "workspace-agents-status-panel__detail-tool-body workspace-agents-status-panel__detail-tool-body--flat", children: [
|
|
10698
|
+
path && files.length === 0 ? /* @__PURE__ */ jsx28(ToolMarkdownBlock, { content: path, onLinkClick }) : null,
|
|
10699
|
+
patchFiles.map((candidate) => /* @__PURE__ */ jsx28(
|
|
10634
10700
|
AgentUnifiedPatchViewer,
|
|
10635
10701
|
{
|
|
10636
10702
|
path: candidate.path,
|
|
@@ -10640,7 +10706,7 @@ function AgentEditContent({
|
|
|
10640
10706
|
},
|
|
10641
10707
|
`patch:${candidate.path}`
|
|
10642
10708
|
)),
|
|
10643
|
-
diffFiles.map((candidate) => /* @__PURE__ */
|
|
10709
|
+
diffFiles.map((candidate) => /* @__PURE__ */ jsx28(
|
|
10644
10710
|
AgentMonacoDiffViewer,
|
|
10645
10711
|
{
|
|
10646
10712
|
path: candidate.path,
|
|
@@ -10650,7 +10716,7 @@ function AgentEditContent({
|
|
|
10650
10716
|
},
|
|
10651
10717
|
`diff:${candidate.path}`
|
|
10652
10718
|
)),
|
|
10653
|
-
contentFiles.map((candidate) => /* @__PURE__ */
|
|
10719
|
+
contentFiles.map((candidate) => /* @__PURE__ */ jsx28(
|
|
10654
10720
|
AgentCodeBlock,
|
|
10655
10721
|
{
|
|
10656
10722
|
path: candidate.path,
|
|
@@ -10665,7 +10731,7 @@ function AgentEditContent({
|
|
|
10665
10731
|
}
|
|
10666
10732
|
|
|
10667
10733
|
// shared/agentConversation/components/tool-renderers/AgentApprovalContent.tsx
|
|
10668
|
-
import { jsx as
|
|
10734
|
+
import { jsx as jsx29 } from "react/jsx-runtime";
|
|
10669
10735
|
function AgentApprovalContent({
|
|
10670
10736
|
call,
|
|
10671
10737
|
onLinkClick
|
|
@@ -10676,9 +10742,9 @@ function AgentApprovalContent({
|
|
|
10676
10742
|
return null;
|
|
10677
10743
|
}
|
|
10678
10744
|
if (previewCall) {
|
|
10679
|
-
return /* @__PURE__ */
|
|
10745
|
+
return /* @__PURE__ */ jsx29(AgentEditContent, { call: previewCall, onLinkClick });
|
|
10680
10746
|
}
|
|
10681
|
-
return /* @__PURE__ */
|
|
10747
|
+
return /* @__PURE__ */ jsx29("div", { className: "workspace-agents-status-panel__detail-tool-body", children: /* @__PURE__ */ jsx29(ToolMarkdownBlock, { content: call.summary }) });
|
|
10682
10748
|
}
|
|
10683
10749
|
function approvalPreviewCall(call) {
|
|
10684
10750
|
const toolCall = objectValue6(call.input?.toolCall);
|
|
@@ -10730,7 +10796,7 @@ function normalizeToolKind(value) {
|
|
|
10730
10796
|
}
|
|
10731
10797
|
|
|
10732
10798
|
// shared/agentConversation/components/tool-renderers/AgentAskUserQuestionContent.tsx
|
|
10733
|
-
import { jsx as
|
|
10799
|
+
import { jsx as jsx30, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
10734
10800
|
function AgentAskUserQuestionContent({
|
|
10735
10801
|
call
|
|
10736
10802
|
}) {
|
|
@@ -10739,31 +10805,31 @@ function AgentAskUserQuestionContent({
|
|
|
10739
10805
|
if (questions.length === 0) {
|
|
10740
10806
|
return null;
|
|
10741
10807
|
}
|
|
10742
|
-
return /* @__PURE__ */
|
|
10808
|
+
return /* @__PURE__ */ jsx30("div", { className: "workspace-agents-status-panel__detail-tool-body", children: /* @__PURE__ */ jsx30(ToolSection, { title: translate("agentHost.agentTool.details.questions"), children: /* @__PURE__ */ jsx30("div", { className: "workspace-agents-status-panel__detail-tool-stack", children: questions.map((question) => {
|
|
10743
10809
|
const body = question.question || question.header || translate("agentHost.agentTool.details.questionFallback");
|
|
10744
10810
|
const answer = formatAnswer(question.answer);
|
|
10745
10811
|
const questionKey = question.id.trim() || `${question.header}:${question.question}:${question.options.map((option) => option.label).join("|")}`;
|
|
10746
|
-
return /* @__PURE__ */
|
|
10812
|
+
return /* @__PURE__ */ jsxs21(
|
|
10747
10813
|
"div",
|
|
10748
10814
|
{
|
|
10749
10815
|
className: "workspace-agents-status-panel__detail-tool-stack-item",
|
|
10750
10816
|
children: [
|
|
10751
|
-
/* @__PURE__ */
|
|
10752
|
-
question.options.length > 0 ? /* @__PURE__ */
|
|
10817
|
+
/* @__PURE__ */ jsx30("div", { className: "workspace-agents-status-panel__detail-tool-question", children: body }),
|
|
10818
|
+
question.options.length > 0 ? /* @__PURE__ */ jsx30("div", { className: "workspace-agents-status-panel__detail-tool-stack", children: question.options.map((option) => /* @__PURE__ */ jsxs21(
|
|
10753
10819
|
"div",
|
|
10754
10820
|
{
|
|
10755
10821
|
className: "workspace-agents-status-panel__detail-tool-stack-item",
|
|
10756
10822
|
children: [
|
|
10757
|
-
/* @__PURE__ */
|
|
10758
|
-
option.description ? /* @__PURE__ */
|
|
10823
|
+
/* @__PURE__ */ jsx30("div", { className: "workspace-agents-status-panel__detail-tool-summary", children: option.label }),
|
|
10824
|
+
option.description ? /* @__PURE__ */ jsx30("div", { className: "workspace-agents-status-panel__detail-tool-answer workspace-agents-status-panel__detail-tool-answer--muted", children: option.description }) : null
|
|
10759
10825
|
]
|
|
10760
10826
|
},
|
|
10761
10827
|
`${questionKey}-option-${option.label}:${option.description}`
|
|
10762
10828
|
)) }) : null,
|
|
10763
|
-
answer ? /* @__PURE__ */
|
|
10829
|
+
answer ? /* @__PURE__ */ jsx30("div", { className: "workspace-agents-status-panel__detail-tool-answer", children: translate("agentHost.agentTool.details.answerPrefix", {
|
|
10764
10830
|
answer
|
|
10765
|
-
}) }) : /* @__PURE__ */
|
|
10766
|
-
/* @__PURE__ */
|
|
10831
|
+
}) }) : /* @__PURE__ */ jsxs21("div", { className: "workspace-agents-status-panel__detail-tool-answer workspace-agents-status-panel__detail-tool-answer--muted inline-flex items-center gap-1.5", children: [
|
|
10832
|
+
/* @__PURE__ */ jsx30(
|
|
10767
10833
|
MessageSquareMoreIcon,
|
|
10768
10834
|
{
|
|
10769
10835
|
size: 14,
|
|
@@ -10789,7 +10855,7 @@ function formatAnswer(answer) {
|
|
|
10789
10855
|
|
|
10790
10856
|
// shared/agentConversation/components/tool-renderers/terminal/AgentTerminalBlock.tsx
|
|
10791
10857
|
import { useMemo as useMemo4, useState as useState9 } from "react";
|
|
10792
|
-
import { jsx as
|
|
10858
|
+
import { jsx as jsx31, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
10793
10859
|
var MAX_OUTPUT_LINES = 200;
|
|
10794
10860
|
function AgentTerminalBlock({
|
|
10795
10861
|
command,
|
|
@@ -10811,7 +10877,7 @@ function AgentTerminalBlock({
|
|
|
10811
10877
|
const visibleOutput = truncated ? outputLines.slice(0, MAX_OUTPUT_LINES).join("\n") : outputText;
|
|
10812
10878
|
const failed = status === "failed";
|
|
10813
10879
|
const hasOutput = Boolean(visibleOutput);
|
|
10814
|
-
const disclosureButton = outputLines.length > MAX_OUTPUT_LINES ? /* @__PURE__ */
|
|
10880
|
+
const disclosureButton = outputLines.length > MAX_OUTPUT_LINES ? /* @__PURE__ */ jsx31(
|
|
10815
10881
|
"button",
|
|
10816
10882
|
{
|
|
10817
10883
|
type: "button",
|
|
@@ -10820,15 +10886,15 @@ function AgentTerminalBlock({
|
|
|
10820
10886
|
children: expanded ? "Collapse output" : `Show full output (${outputLines.length} lines)`
|
|
10821
10887
|
}
|
|
10822
10888
|
) : null;
|
|
10823
|
-
return /* @__PURE__ */
|
|
10824
|
-
command ? /* @__PURE__ */
|
|
10889
|
+
return /* @__PURE__ */ jsxs22("div", { className: "workspace-agents-status-panel__detail-tool-terminal overflow-hidden rounded-[8px] border border-[var(--line-2)] bg-[var(--background-panel)]", children: [
|
|
10890
|
+
command ? /* @__PURE__ */ jsxs22(
|
|
10825
10891
|
"div",
|
|
10826
10892
|
{
|
|
10827
10893
|
className: `flex min-w-0 items-center gap-3 px-3 text-[11px] text-[var(--text-secondary)] ${hasOutput ? "border-b border-[var(--line-2)] bg-[var(--transparency-block)] py-1.5" : "bg-[var(--transparency-block)] py-2"}`,
|
|
10828
10894
|
"data-agent-terminal-command-row": "true",
|
|
10829
10895
|
children: [
|
|
10830
|
-
/* @__PURE__ */
|
|
10831
|
-
/* @__PURE__ */
|
|
10896
|
+
/* @__PURE__ */ jsx31("span", { className: "shrink-0 font-semibold text-[var(--tutti-purple)]", children: "$" }),
|
|
10897
|
+
/* @__PURE__ */ jsx31(
|
|
10832
10898
|
"span",
|
|
10833
10899
|
{
|
|
10834
10900
|
className: "min-w-0 flex-1 whitespace-pre-wrap [overflow-wrap:anywhere]",
|
|
@@ -10839,13 +10905,13 @@ function AgentTerminalBlock({
|
|
|
10839
10905
|
]
|
|
10840
10906
|
}
|
|
10841
10907
|
) : null,
|
|
10842
|
-
hasOutput ? /* @__PURE__ */
|
|
10908
|
+
hasOutput ? /* @__PURE__ */ jsxs22(
|
|
10843
10909
|
AgentToolScrollArea,
|
|
10844
10910
|
{
|
|
10845
10911
|
maxHeightClassName: "max-h-[160px]",
|
|
10846
10912
|
viewportClassName: `px-3 py-2 text-[11px] leading-5 ${failed ? "text-[var(--state-danger)]" : "text-[var(--text-primary)]"}`,
|
|
10847
10913
|
children: [
|
|
10848
|
-
/* @__PURE__ */
|
|
10914
|
+
/* @__PURE__ */ jsx31("pre", { className: "m-0 min-w-0 max-w-full whitespace-pre-wrap [overflow-wrap:anywhere]", children: /* @__PURE__ */ jsx31("code", { children: visibleOutput }) }),
|
|
10849
10915
|
disclosureButton
|
|
10850
10916
|
]
|
|
10851
10917
|
}
|
|
@@ -10854,14 +10920,14 @@ function AgentTerminalBlock({
|
|
|
10854
10920
|
}
|
|
10855
10921
|
|
|
10856
10922
|
// shared/agentConversation/components/tool-renderers/AgentBashContent.tsx
|
|
10857
|
-
import { jsx as
|
|
10923
|
+
import { jsx as jsx32 } from "react/jsx-runtime";
|
|
10858
10924
|
function AgentBashContent({
|
|
10859
10925
|
call
|
|
10860
10926
|
}) {
|
|
10861
10927
|
"use memo";
|
|
10862
10928
|
const commandData = getCommandRenderData(call);
|
|
10863
10929
|
const fallbackErrorText = commandData.status === "failed" && !commandData.stdout && !commandData.stderr ? stringValue9(call.error?.message) : null;
|
|
10864
|
-
return /* @__PURE__ */
|
|
10930
|
+
return /* @__PURE__ */ jsx32("div", { className: "workspace-agents-status-panel__detail-tool-body workspace-agents-status-panel__detail-tool-body--plain", children: /* @__PURE__ */ jsx32(
|
|
10865
10931
|
AgentTerminalBlock,
|
|
10866
10932
|
{
|
|
10867
10933
|
command: commandData.command,
|
|
@@ -10877,7 +10943,7 @@ function AgentBashContent({
|
|
|
10877
10943
|
// shared/agentConversation/components/tool-renderers/AgentImageGenerationContent.tsx
|
|
10878
10944
|
import { useEffect as useEffect9, useState as useState10 } from "react";
|
|
10879
10945
|
import { resolveWorkspaceImageMimeType } from "@tutti-os/workspace-file-manager/services";
|
|
10880
|
-
import { jsx as
|
|
10946
|
+
import { jsx as jsx33, jsxs as jsxs23 } from "react/jsx-runtime";
|
|
10881
10947
|
function AgentImageGenerationContent({
|
|
10882
10948
|
call,
|
|
10883
10949
|
onLinkClick
|
|
@@ -10887,8 +10953,8 @@ function AgentImageGenerationContent({
|
|
|
10887
10953
|
if (!image.prompt && !image.imageUri) {
|
|
10888
10954
|
return null;
|
|
10889
10955
|
}
|
|
10890
|
-
return /* @__PURE__ */
|
|
10891
|
-
image.prompt ? /* @__PURE__ */
|
|
10956
|
+
return /* @__PURE__ */ jsxs23("div", { className: "workspace-agents-status-panel__detail-tool-body", children: [
|
|
10957
|
+
image.prompt ? /* @__PURE__ */ jsx33(ToolSection, { title: translate("agentHost.agentTool.details.input"), children: /* @__PURE__ */ jsx33(
|
|
10892
10958
|
ToolMarkdownBlock,
|
|
10893
10959
|
{
|
|
10894
10960
|
content: image.prompt,
|
|
@@ -10896,7 +10962,7 @@ function AgentImageGenerationContent({
|
|
|
10896
10962
|
collapsible: true
|
|
10897
10963
|
}
|
|
10898
10964
|
) }) : null,
|
|
10899
|
-
image.imageUri ? /* @__PURE__ */
|
|
10965
|
+
image.imageUri ? /* @__PURE__ */ jsx33(
|
|
10900
10966
|
ImageGenerationPreview,
|
|
10901
10967
|
{
|
|
10902
10968
|
uri: image.imageUri,
|
|
@@ -10961,7 +11027,7 @@ function ImageGenerationPreview({
|
|
|
10961
11027
|
if (!src) {
|
|
10962
11028
|
return null;
|
|
10963
11029
|
}
|
|
10964
|
-
return /* @__PURE__ */
|
|
11030
|
+
return /* @__PURE__ */ jsx33(ToolSection, { title: translate("agentHost.agentTool.details.output"), children: /* @__PURE__ */ jsx33(
|
|
10965
11031
|
ZoomableImage,
|
|
10966
11032
|
{
|
|
10967
11033
|
alt: translate("agentHost.agentTool.details.imagePreviewAlt"),
|
|
@@ -11114,43 +11180,43 @@ function firstString5(...values) {
|
|
|
11114
11180
|
}
|
|
11115
11181
|
|
|
11116
11182
|
// shared/agentConversation/components/tool-renderers/mcp-renderers/agentAtlassianRenderers.tsx
|
|
11117
|
-
import { jsx as
|
|
11183
|
+
import { jsx as jsx34, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
11118
11184
|
function renderAtlassianMcp(payload) {
|
|
11119
11185
|
const items = parsedItems(payload.structured);
|
|
11120
11186
|
if (items.length > 0) {
|
|
11121
|
-
return /* @__PURE__ */
|
|
11187
|
+
return /* @__PURE__ */ jsx34("div", { className: "workspace-agents-status-panel__detail-tool-result-list overflow-hidden rounded-[8px] border border-[var(--line-2)] bg-[var(--transparency-block)]", children: items.map((item, index) => /* @__PURE__ */ jsxs24(
|
|
11122
11188
|
"div",
|
|
11123
11189
|
{
|
|
11124
11190
|
className: `px-3 py-2 ${index > 0 ? "border-t border-[var(--line-2)]" : ""}`,
|
|
11125
11191
|
children: [
|
|
11126
|
-
/* @__PURE__ */
|
|
11127
|
-
itemSecondaryText(item) ? /* @__PURE__ */
|
|
11192
|
+
/* @__PURE__ */ jsx34("div", { className: "text-[11px] font-semibold text-[var(--text-primary)]", children: itemPrimaryText(item) ?? `Item ${index + 1}` }),
|
|
11193
|
+
itemSecondaryText(item) ? /* @__PURE__ */ jsx34("div", { className: "text-[11px] text-[var(--text-tertiary)]", children: itemSecondaryText(item) }) : null
|
|
11128
11194
|
]
|
|
11129
11195
|
},
|
|
11130
11196
|
`${itemPrimaryText(item) ?? "item"}::${itemSecondaryText(item) ?? ""}`
|
|
11131
11197
|
)) });
|
|
11132
11198
|
}
|
|
11133
|
-
return payload.text ? /* @__PURE__ */
|
|
11199
|
+
return payload.text ? /* @__PURE__ */ jsx34(ToolMarkdownBlock, { content: payload.text, collapsible: true }) : null;
|
|
11134
11200
|
}
|
|
11135
11201
|
|
|
11136
11202
|
// shared/agentConversation/components/tool-renderers/mcp-renderers/agentContext7Renderers.tsx
|
|
11137
|
-
import { jsx as
|
|
11203
|
+
import { jsx as jsx35, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
11138
11204
|
function renderContext7Mcp(payload) {
|
|
11139
11205
|
const items = parsedItems(payload.structured);
|
|
11140
11206
|
if (items.length > 0) {
|
|
11141
|
-
return /* @__PURE__ */
|
|
11207
|
+
return /* @__PURE__ */ jsx35("div", { className: "workspace-agents-status-panel__detail-tool-result-list overflow-hidden rounded-[8px] border border-[var(--line-2)] bg-[var(--transparency-block)]", children: items.map((item, index) => /* @__PURE__ */ jsxs25(
|
|
11142
11208
|
"div",
|
|
11143
11209
|
{
|
|
11144
11210
|
className: `px-3 py-2 ${index > 0 ? "border-t border-[var(--line-2)]" : ""}`,
|
|
11145
11211
|
children: [
|
|
11146
|
-
/* @__PURE__ */
|
|
11147
|
-
itemSecondaryText(item) ? /* @__PURE__ */
|
|
11212
|
+
/* @__PURE__ */ jsx35("div", { className: "text-[11px] font-semibold text-[var(--text-primary)]", children: itemPrimaryText(item) ?? `Doc ${index + 1}` }),
|
|
11213
|
+
itemSecondaryText(item) ? /* @__PURE__ */ jsx35("div", { className: "text-[11px] text-[var(--text-tertiary)]", children: itemSecondaryText(item) }) : null
|
|
11148
11214
|
]
|
|
11149
11215
|
},
|
|
11150
11216
|
`${itemPrimaryText(item) ?? "doc"}::${itemSecondaryText(item) ?? ""}`
|
|
11151
11217
|
)) });
|
|
11152
11218
|
}
|
|
11153
|
-
return payload.text ? /* @__PURE__ */
|
|
11219
|
+
return payload.text ? /* @__PURE__ */ jsx35(ToolMarkdownBlock, { content: payload.text, collapsible: true }) : null;
|
|
11154
11220
|
}
|
|
11155
11221
|
|
|
11156
11222
|
// shared/agentConversation/components/tool-renderers/mcp-renderers/agentMcpRendererRegistry.tsx
|
|
@@ -11166,7 +11232,7 @@ function renderRegisteredMcp(payload) {
|
|
|
11166
11232
|
}
|
|
11167
11233
|
|
|
11168
11234
|
// shared/agentConversation/components/tool-renderers/AgentMcpToolContent.tsx
|
|
11169
|
-
import { jsx as
|
|
11235
|
+
import { jsx as jsx36, jsxs as jsxs26 } from "react/jsx-runtime";
|
|
11170
11236
|
function AgentMcpToolContent({
|
|
11171
11237
|
call,
|
|
11172
11238
|
onLinkClick
|
|
@@ -11178,8 +11244,8 @@ function AgentMcpToolContent({
|
|
|
11178
11244
|
payload.text,
|
|
11179
11245
|
payload.inputSummary
|
|
11180
11246
|
);
|
|
11181
|
-
return /* @__PURE__ */
|
|
11182
|
-
payload.server || payload.tool ? /* @__PURE__ */
|
|
11247
|
+
return /* @__PURE__ */ jsxs26("div", { className: "workspace-agents-status-panel__detail-tool-body", children: [
|
|
11248
|
+
payload.server || payload.tool ? /* @__PURE__ */ jsx36(ToolSection, { title: translate("agentHost.agentTool.details.mcp"), children: /* @__PURE__ */ jsx36(
|
|
11183
11249
|
ToolMarkdownBlock,
|
|
11184
11250
|
{
|
|
11185
11251
|
content: [
|
|
@@ -11189,14 +11255,14 @@ function AgentMcpToolContent({
|
|
|
11189
11255
|
onLinkClick
|
|
11190
11256
|
}
|
|
11191
11257
|
) }) : null,
|
|
11192
|
-
payload.inputSummary ? /* @__PURE__ */
|
|
11258
|
+
payload.inputSummary ? /* @__PURE__ */ jsx36(ToolSection, { title: translate("agentHost.agentTool.details.input"), children: /* @__PURE__ */ jsx36(
|
|
11193
11259
|
ToolMarkdownBlock,
|
|
11194
11260
|
{
|
|
11195
11261
|
content: payload.inputSummary,
|
|
11196
11262
|
onLinkClick
|
|
11197
11263
|
}
|
|
11198
11264
|
) }) : null,
|
|
11199
|
-
specialized ? /* @__PURE__ */
|
|
11265
|
+
specialized ? /* @__PURE__ */ jsx36(ToolSection, { title: translate("agentHost.agentTool.details.output"), children: specialized }) : visibleText ? /* @__PURE__ */ jsx36(ToolSection, { title: translate("agentHost.agentTool.details.output"), children: /* @__PURE__ */ jsx36(
|
|
11200
11266
|
ToolMarkdownBlock,
|
|
11201
11267
|
{
|
|
11202
11268
|
content: visibleText,
|
|
@@ -11204,12 +11270,12 @@ function AgentMcpToolContent({
|
|
|
11204
11270
|
collapsible: true
|
|
11205
11271
|
}
|
|
11206
11272
|
) }) : null,
|
|
11207
|
-
/* @__PURE__ */
|
|
11273
|
+
/* @__PURE__ */ jsx36(RawPayloadSection, { payload: call.payload ?? payload.structured })
|
|
11208
11274
|
] });
|
|
11209
11275
|
}
|
|
11210
11276
|
|
|
11211
11277
|
// shared/agentConversation/components/tool-renderers/AgentPlanModeContent.tsx
|
|
11212
|
-
import { jsx as
|
|
11278
|
+
import { jsx as jsx37 } from "react/jsx-runtime";
|
|
11213
11279
|
function AgentPlanModeContent({
|
|
11214
11280
|
call,
|
|
11215
11281
|
onLinkClick
|
|
@@ -11220,7 +11286,7 @@ function AgentPlanModeContent({
|
|
|
11220
11286
|
if (!planMode.enterText) {
|
|
11221
11287
|
return null;
|
|
11222
11288
|
}
|
|
11223
|
-
return /* @__PURE__ */
|
|
11289
|
+
return /* @__PURE__ */ jsx37("div", { className: "rounded-[8px] bg-[var(--transparency-block)] px-3 py-2 text-[11px] text-[var(--text-secondary)]", children: /* @__PURE__ */ jsx37(
|
|
11224
11290
|
ToolMarkdownBlock,
|
|
11225
11291
|
{
|
|
11226
11292
|
content: planMode.enterText,
|
|
@@ -11231,18 +11297,18 @@ function AgentPlanModeContent({
|
|
|
11231
11297
|
if (!planMode.plan) {
|
|
11232
11298
|
return null;
|
|
11233
11299
|
}
|
|
11234
|
-
return /* @__PURE__ */
|
|
11300
|
+
return /* @__PURE__ */ jsx37(
|
|
11235
11301
|
AgentPlanCard,
|
|
11236
11302
|
{
|
|
11237
11303
|
title: planMode.fileName ?? void 0,
|
|
11238
11304
|
copyText: planMode.plan,
|
|
11239
|
-
children: /* @__PURE__ */
|
|
11305
|
+
children: /* @__PURE__ */ jsx37(ToolMarkdownBlock, { content: planMode.plan, onLinkClick })
|
|
11240
11306
|
}
|
|
11241
11307
|
);
|
|
11242
11308
|
}
|
|
11243
11309
|
|
|
11244
11310
|
// shared/agentConversation/components/tool-renderers/AgentSearchContent.tsx
|
|
11245
|
-
import { jsx as
|
|
11311
|
+
import { jsx as jsx38, jsxs as jsxs27 } from "react/jsx-runtime";
|
|
11246
11312
|
function AgentSearchContent({
|
|
11247
11313
|
call,
|
|
11248
11314
|
onLinkClick
|
|
@@ -11258,9 +11324,9 @@ ${translate("agentHost.agentTool.details.scope")}: ${search.scope}`.trim() : sea
|
|
|
11258
11324
|
visibleOutput.split("\n").filter(Boolean),
|
|
11259
11325
|
"line"
|
|
11260
11326
|
);
|
|
11261
|
-
return /* @__PURE__ */
|
|
11262
|
-
queryText ? /* @__PURE__ */
|
|
11263
|
-
(search.mode === "files_with_matches" || search.mode === "list_files") && search.files.length > 0 ? /* @__PURE__ */
|
|
11327
|
+
return /* @__PURE__ */ jsxs27("div", { className: "workspace-agents-status-panel__detail-tool-body", children: [
|
|
11328
|
+
queryText ? /* @__PURE__ */ jsx38(ToolSection, { title: translate("agentHost.agentTool.details.query"), children: /* @__PURE__ */ jsx38(ToolMarkdownBlock, { content: queryText, onLinkClick }) }) : null,
|
|
11329
|
+
(search.mode === "files_with_matches" || search.mode === "list_files") && search.files.length > 0 ? /* @__PURE__ */ jsx38(ToolSection, { title: translate("agentHost.agentTool.details.results"), children: /* @__PURE__ */ jsx38("div", { className: "workspace-agents-status-panel__detail-tool-result-list overflow-hidden rounded-[8px] border border-[var(--line-2)] bg-[var(--transparency-block)]", children: resultFiles.map(({ key, value: file, isFirst }) => /* @__PURE__ */ jsx38(
|
|
11264
11330
|
"div",
|
|
11265
11331
|
{
|
|
11266
11332
|
className: `px-3 py-2 font-[var(--tsh-font-mono)] text-[11px] text-[var(--text-primary)] ${isFirst ? "" : "border-t border-[var(--line-2)]"}`,
|
|
@@ -11268,7 +11334,7 @@ ${translate("agentHost.agentTool.details.scope")}: ${search.scope}`.trim() : sea
|
|
|
11268
11334
|
},
|
|
11269
11335
|
key
|
|
11270
11336
|
)) }) }) : null,
|
|
11271
|
-
search.mode === "content" && visibleOutput ? /* @__PURE__ */
|
|
11337
|
+
search.mode === "content" && visibleOutput ? /* @__PURE__ */ jsx38(ToolSection, { title: translate("agentHost.agentTool.details.output"), children: /* @__PURE__ */ jsx38("pre", { className: "max-h-[320px] overflow-auto rounded-[8px] border border-[var(--line-2)] bg-[var(--transparency-block)] px-3 py-2 text-[11px] leading-5 text-[var(--text-primary)]", children: outputLines.map(({ key, value: line }) => /* @__PURE__ */ jsx38(
|
|
11272
11338
|
"div",
|
|
11273
11339
|
{
|
|
11274
11340
|
className: line.includes(":") ? "text-[var(--text-primary)]" : "text-[var(--text-tertiary)]",
|
|
@@ -11276,9 +11342,9 @@ ${translate("agentHost.agentTool.details.scope")}: ${search.scope}`.trim() : sea
|
|
|
11276
11342
|
},
|
|
11277
11343
|
key
|
|
11278
11344
|
)) }) }) : null,
|
|
11279
|
-
search.mode === "count" ? /* @__PURE__ */
|
|
11280
|
-
(search.mode === "files_with_matches" || search.mode === "list_files" || search.mode === "count") && search.files.length === 0 && !visibleOutput && !search.error ? /* @__PURE__ */
|
|
11281
|
-
search.mode === "unknown" && visibleOutput ? /* @__PURE__ */
|
|
11345
|
+
search.mode === "count" ? /* @__PURE__ */ jsx38(ToolSection, { title: translate("agentHost.agentTool.details.results"), children: /* @__PURE__ */ jsx38("div", { className: "inline-flex rounded-full border border-[var(--line-2)] bg-[var(--transparency-block)] px-2.5 py-1 text-[11px] text-[var(--text-tertiary)]", children: search.output || "0" }) }) : null,
|
|
11346
|
+
(search.mode === "files_with_matches" || search.mode === "list_files" || search.mode === "count") && search.files.length === 0 && !visibleOutput && !search.error ? /* @__PURE__ */ jsx38(ToolSection, { title: translate("agentHost.agentTool.details.results"), children: /* @__PURE__ */ jsx38("div", { className: "text-[11px] italic text-[var(--text-tertiary)]", children: translate("agentHost.agentTool.details.noMatches") }) }) : null,
|
|
11347
|
+
search.mode === "unknown" && visibleOutput ? /* @__PURE__ */ jsx38(ToolSection, { title: translate("agentHost.agentTool.details.output"), children: /* @__PURE__ */ jsx38(
|
|
11282
11348
|
ToolMarkdownBlock,
|
|
11283
11349
|
{
|
|
11284
11350
|
content: visibleOutput,
|
|
@@ -11286,7 +11352,7 @@ ${translate("agentHost.agentTool.details.scope")}: ${search.scope}`.trim() : sea
|
|
|
11286
11352
|
collapsible: true
|
|
11287
11353
|
}
|
|
11288
11354
|
) }) : null,
|
|
11289
|
-
search.error ? /* @__PURE__ */
|
|
11355
|
+
search.error ? /* @__PURE__ */ jsx38(ToolSection, { title: translate("agentHost.agentTool.details.error"), children: /* @__PURE__ */ jsx38(
|
|
11290
11356
|
ToolMarkdownBlock,
|
|
11291
11357
|
{
|
|
11292
11358
|
content: search.error,
|
|
@@ -11314,7 +11380,7 @@ function withStableOccurrenceKeys(values, prefix) {
|
|
|
11314
11380
|
}
|
|
11315
11381
|
|
|
11316
11382
|
// shared/agentConversation/components/tool-renderers/AgentSkillContent.tsx
|
|
11317
|
-
import { jsx as
|
|
11383
|
+
import { jsx as jsx39, jsxs as jsxs28 } from "react/jsx-runtime";
|
|
11318
11384
|
function AgentSkillContent({
|
|
11319
11385
|
call,
|
|
11320
11386
|
onLinkClick
|
|
@@ -11324,8 +11390,8 @@ function AgentSkillContent({
|
|
|
11324
11390
|
if (!skill.skill && !skill.statusText) {
|
|
11325
11391
|
return null;
|
|
11326
11392
|
}
|
|
11327
|
-
return /* @__PURE__ */
|
|
11328
|
-
skill.skill ? /* @__PURE__ */
|
|
11393
|
+
return /* @__PURE__ */ jsxs28("div", { className: "workspace-agents-status-panel__detail-tool-body", children: [
|
|
11394
|
+
skill.skill ? /* @__PURE__ */ jsx39(ToolSection, { title: translate("agentHost.agentTool.details.skill"), children: /* @__PURE__ */ jsx39(
|
|
11329
11395
|
ToolMarkdownBlock,
|
|
11330
11396
|
{
|
|
11331
11397
|
content: skill.args ? `${skill.skill}
|
|
@@ -11334,19 +11400,19 @@ ${skill.args}` : skill.skill,
|
|
|
11334
11400
|
onLinkClick
|
|
11335
11401
|
}
|
|
11336
11402
|
) }) : null,
|
|
11337
|
-
skill.statusText ? /* @__PURE__ */
|
|
11403
|
+
skill.statusText ? /* @__PURE__ */ jsx39("div", { className: "text-[10px] text-[var(--text-tertiary)]", children: skill.statusText }) : null
|
|
11338
11404
|
] });
|
|
11339
11405
|
}
|
|
11340
11406
|
|
|
11341
11407
|
// shared/agentConversation/components/AgentTaskStepList.tsx
|
|
11342
11408
|
import { useState as useState11 } from "react";
|
|
11343
|
-
import { jsx as
|
|
11409
|
+
import { jsx as jsx40, jsxs as jsxs29 } from "react/jsx-runtime";
|
|
11344
11410
|
function AgentTaskStepList({
|
|
11345
11411
|
steps,
|
|
11346
11412
|
onLinkClick
|
|
11347
11413
|
}) {
|
|
11348
11414
|
"use memo";
|
|
11349
|
-
return /* @__PURE__ */
|
|
11415
|
+
return /* @__PURE__ */ jsx40("div", { className: "workspace-agents-status-panel__detail-tool-stack", children: steps.map((step) => /* @__PURE__ */ jsx40(AgentTaskStepRow, { step, onLinkClick }, step.id)) });
|
|
11350
11416
|
}
|
|
11351
11417
|
function AgentTaskStepRow({
|
|
11352
11418
|
step,
|
|
@@ -11357,8 +11423,8 @@ function AgentTaskStepRow({
|
|
|
11357
11423
|
const call = step.tool ?? projectTaskStepCall(step);
|
|
11358
11424
|
const hasDetail = hasAgentToolContent(call);
|
|
11359
11425
|
const ariaLabel = taskStepAriaLabel(call);
|
|
11360
|
-
return /* @__PURE__ */
|
|
11361
|
-
hasDetail ? /* @__PURE__ */
|
|
11426
|
+
return /* @__PURE__ */ jsxs29("div", { className: "workspace-agents-status-panel__detail-tool-row", children: [
|
|
11427
|
+
hasDetail ? /* @__PURE__ */ jsx40(
|
|
11362
11428
|
"button",
|
|
11363
11429
|
{
|
|
11364
11430
|
type: "button",
|
|
@@ -11366,11 +11432,11 @@ function AgentTaskStepRow({
|
|
|
11366
11432
|
"aria-expanded": expanded,
|
|
11367
11433
|
"aria-label": ariaLabel,
|
|
11368
11434
|
onClick: () => setExpanded((value) => !value),
|
|
11369
|
-
children: /* @__PURE__ */
|
|
11435
|
+
children: /* @__PURE__ */ jsx40(AgentToolCallHeader, { call, expanded, hasDetail: true })
|
|
11370
11436
|
}
|
|
11371
|
-
) : /* @__PURE__ */
|
|
11372
|
-
!hasDetail && step.summary ? /* @__PURE__ */
|
|
11373
|
-
hasDetail && expanded ? /* @__PURE__ */
|
|
11437
|
+
) : /* @__PURE__ */ jsx40("div", { className: "workspace-agents-status-panel__detail-tool-row-head", children: /* @__PURE__ */ jsx40(AgentToolCallHeader, { call, expanded: false, hasDetail: false }) }),
|
|
11438
|
+
!hasDetail && step.summary ? /* @__PURE__ */ jsx40("div", { className: "workspace-agents-status-panel__detail-tool-summary", children: step.summary }) : null,
|
|
11439
|
+
hasDetail && expanded ? /* @__PURE__ */ jsx40(AgentExpandedToolContent, { call, onLinkClick }) : null
|
|
11374
11440
|
] });
|
|
11375
11441
|
}
|
|
11376
11442
|
function taskStepAriaLabel(call) {
|
|
@@ -11401,36 +11467,36 @@ function projectTaskStepCall(step) {
|
|
|
11401
11467
|
}
|
|
11402
11468
|
|
|
11403
11469
|
// shared/agentConversation/components/tool-renderers/AgentTaskContent.tsx
|
|
11404
|
-
import { jsx as
|
|
11470
|
+
import { jsx as jsx41, jsxs as jsxs30 } from "react/jsx-runtime";
|
|
11405
11471
|
function AgentTaskContent({
|
|
11406
11472
|
call,
|
|
11407
11473
|
onLinkClick
|
|
11408
11474
|
}) {
|
|
11409
11475
|
"use memo";
|
|
11410
11476
|
const task = getTaskRenderData(call);
|
|
11411
|
-
return /* @__PURE__ */
|
|
11412
|
-
/* @__PURE__ */
|
|
11413
|
-
/* @__PURE__ */
|
|
11414
|
-
task.status ? /* @__PURE__ */
|
|
11477
|
+
return /* @__PURE__ */ jsxs30("div", { className: "workspace-agents-status-panel__detail-tool-body", children: [
|
|
11478
|
+
/* @__PURE__ */ jsxs30("div", { className: "workspace-agents-status-panel__detail-tool-answer", children: [
|
|
11479
|
+
/* @__PURE__ */ jsx41("strong", { children: task.title }),
|
|
11480
|
+
task.status ? /* @__PURE__ */ jsxs30("span", { className: "workspace-agents-status-panel__detail-tool-answer--muted", children: [
|
|
11415
11481
|
" \xB7 ",
|
|
11416
11482
|
task.status
|
|
11417
11483
|
] }) : null,
|
|
11418
|
-
task.durationText ? /* @__PURE__ */
|
|
11484
|
+
task.durationText ? /* @__PURE__ */ jsxs30("span", { className: "workspace-agents-status-panel__detail-tool-answer--muted", children: [
|
|
11419
11485
|
" \xB7 ",
|
|
11420
11486
|
task.durationText
|
|
11421
11487
|
] }) : null
|
|
11422
11488
|
] }),
|
|
11423
|
-
task.status === "running" && task.latestStepSummary ? /* @__PURE__ */
|
|
11424
|
-
task.prompt ? /* @__PURE__ */
|
|
11425
|
-
task.childSessionId ? /* @__PURE__ */
|
|
11489
|
+
task.status === "running" && task.latestStepSummary ? /* @__PURE__ */ jsx41(ToolSection, { title: translate("agentHost.agentTool.details.summary"), children: /* @__PURE__ */ jsx41("div", { className: "workspace-agents-status-panel__detail-tool-answer workspace-agents-status-panel__detail-tool-answer--muted", children: task.latestStepSummary }) }) : null,
|
|
11490
|
+
task.prompt ? /* @__PURE__ */ jsx41(ToolSection, { title: translate("agentHost.agentTool.details.prompt"), children: /* @__PURE__ */ jsx41(ToolMarkdownBlock, { content: task.prompt, onLinkClick }) }) : null,
|
|
11491
|
+
task.childSessionId ? /* @__PURE__ */ jsx41(
|
|
11426
11492
|
ToolSection,
|
|
11427
11493
|
{
|
|
11428
11494
|
title: translate("agentHost.agentTool.details.delegateSession"),
|
|
11429
|
-
children: /* @__PURE__ */
|
|
11495
|
+
children: /* @__PURE__ */ jsx41("div", { className: "workspace-agents-status-panel__detail-tool-answer", children: task.childSessionId })
|
|
11430
11496
|
}
|
|
11431
11497
|
) : null,
|
|
11432
|
-
task.steps.length > 0 ? /* @__PURE__ */
|
|
11433
|
-
task.resultMarkdown ? /* @__PURE__ */
|
|
11498
|
+
task.steps.length > 0 ? /* @__PURE__ */ jsx41(ToolSection, { title: translate("agentHost.agentTool.details.steps"), children: /* @__PURE__ */ jsx41(AgentTaskStepList, { steps: task.steps, onLinkClick }) }) : null,
|
|
11499
|
+
task.resultMarkdown ? /* @__PURE__ */ jsx41(ToolSection, { title: translate("agentHost.agentTool.details.output"), children: /* @__PURE__ */ jsx41(
|
|
11434
11500
|
ToolMarkdownBlock,
|
|
11435
11501
|
{
|
|
11436
11502
|
content: task.resultMarkdown,
|
|
@@ -11443,7 +11509,7 @@ function AgentTaskContent({
|
|
|
11443
11509
|
|
|
11444
11510
|
// shared/agentConversation/components/tool-renderers/AgentTodoWriteContent.tsx
|
|
11445
11511
|
import { CheckCircle2, Circle } from "lucide-react";
|
|
11446
|
-
import { jsx as
|
|
11512
|
+
import { jsx as jsx42, jsxs as jsxs31 } from "react/jsx-runtime";
|
|
11447
11513
|
function AgentTodoWriteContent({
|
|
11448
11514
|
call
|
|
11449
11515
|
}) {
|
|
@@ -11452,13 +11518,13 @@ function AgentTodoWriteContent({
|
|
|
11452
11518
|
if (todos.length === 0) {
|
|
11453
11519
|
return null;
|
|
11454
11520
|
}
|
|
11455
|
-
return /* @__PURE__ */
|
|
11521
|
+
return /* @__PURE__ */ jsx42("div", { className: "workspace-agents-status-panel__detail-tool-body", children: /* @__PURE__ */ jsx42(ToolSection, { title: translate("agentHost.agentTool.details.todos"), children: /* @__PURE__ */ jsx42("div", { className: "space-y-1", children: todos.map((todo) => /* @__PURE__ */ jsxs31(
|
|
11456
11522
|
"div",
|
|
11457
11523
|
{
|
|
11458
11524
|
className: "flex items-start gap-2 rounded-[8px] px-1 py-0.5 text-[11px]",
|
|
11459
11525
|
children: [
|
|
11460
|
-
/* @__PURE__ */
|
|
11461
|
-
/* @__PURE__ */
|
|
11526
|
+
/* @__PURE__ */ jsx42("div", { className: "mt-[1px] shrink-0", children: iconForStatus(todo.status) }),
|
|
11527
|
+
/* @__PURE__ */ jsx42("span", { className: contentClassName(todo.status), children: todo.content })
|
|
11462
11528
|
]
|
|
11463
11529
|
},
|
|
11464
11530
|
`${todo.content}:${todo.status ?? "pending"}`
|
|
@@ -11467,7 +11533,7 @@ function AgentTodoWriteContent({
|
|
|
11467
11533
|
function iconForStatus(status) {
|
|
11468
11534
|
switch (status) {
|
|
11469
11535
|
case "completed":
|
|
11470
|
-
return /* @__PURE__ */
|
|
11536
|
+
return /* @__PURE__ */ jsx42(
|
|
11471
11537
|
CheckCircle2,
|
|
11472
11538
|
{
|
|
11473
11539
|
size: 14,
|
|
@@ -11476,7 +11542,7 @@ function iconForStatus(status) {
|
|
|
11476
11542
|
}
|
|
11477
11543
|
);
|
|
11478
11544
|
case "in_progress":
|
|
11479
|
-
return /* @__PURE__ */
|
|
11545
|
+
return /* @__PURE__ */ jsx42(
|
|
11480
11546
|
AtomIcon,
|
|
11481
11547
|
{
|
|
11482
11548
|
size: 14,
|
|
@@ -11486,7 +11552,7 @@ function iconForStatus(status) {
|
|
|
11486
11552
|
}
|
|
11487
11553
|
);
|
|
11488
11554
|
default:
|
|
11489
|
-
return /* @__PURE__ */
|
|
11555
|
+
return /* @__PURE__ */ jsx42(
|
|
11490
11556
|
Circle,
|
|
11491
11557
|
{
|
|
11492
11558
|
size: 14,
|
|
@@ -11508,7 +11574,7 @@ function contentClassName(status) {
|
|
|
11508
11574
|
}
|
|
11509
11575
|
|
|
11510
11576
|
// shared/agentConversation/components/tool-renderers/AgentToolSearchContent.tsx
|
|
11511
|
-
import { jsx as
|
|
11577
|
+
import { jsx as jsx43, jsxs as jsxs32 } from "react/jsx-runtime";
|
|
11512
11578
|
function AgentToolSearchContent({
|
|
11513
11579
|
call
|
|
11514
11580
|
}) {
|
|
@@ -11517,8 +11583,8 @@ function AgentToolSearchContent({
|
|
|
11517
11583
|
if (!toolSearch.query && toolSearch.matches.length === 0) {
|
|
11518
11584
|
return null;
|
|
11519
11585
|
}
|
|
11520
|
-
return /* @__PURE__ */
|
|
11521
|
-
toolSearch.displayQuery ? /* @__PURE__ */
|
|
11586
|
+
return /* @__PURE__ */ jsxs32("div", { className: "workspace-agents-status-panel__detail-tool-body", children: [
|
|
11587
|
+
toolSearch.displayQuery ? /* @__PURE__ */ jsx43(ToolSection, { title: translate("agentHost.agentTool.details.query"), children: /* @__PURE__ */ jsx43(
|
|
11522
11588
|
ToolMarkdownBlock,
|
|
11523
11589
|
{
|
|
11524
11590
|
content: `${toolSearch.displayQuery}
|
|
@@ -11526,7 +11592,7 @@ function AgentToolSearchContent({
|
|
|
11526
11592
|
${toolSearch.mode}`
|
|
11527
11593
|
}
|
|
11528
11594
|
) }) : null,
|
|
11529
|
-
toolSearch.matches.length > 0 ? /* @__PURE__ */
|
|
11595
|
+
toolSearch.matches.length > 0 ? /* @__PURE__ */ jsx43(ToolSection, { title: translate("agentHost.agentTool.details.results"), children: /* @__PURE__ */ jsx43("div", { className: "workspace-agents-status-panel__detail-tool-result-list overflow-hidden rounded-[8px] border border-[var(--line-2)] bg-[var(--transparency-block)]", children: toolSearch.matches.map((match, index) => /* @__PURE__ */ jsx43(
|
|
11530
11596
|
"div",
|
|
11531
11597
|
{
|
|
11532
11598
|
className: `px-3 py-2 font-[var(--tsh-font-mono)] text-[11px] text-[var(--text-primary)] ${index > 0 ? "border-t border-[var(--line-2)]" : ""}`,
|
|
@@ -11534,8 +11600,8 @@ ${toolSearch.mode}`
|
|
|
11534
11600
|
},
|
|
11535
11601
|
match
|
|
11536
11602
|
)) }) }) : null,
|
|
11537
|
-
toolSearch.matches.length === 0 ? /* @__PURE__ */
|
|
11538
|
-
typeof toolSearch.totalDeferredTools === "number" ? /* @__PURE__ */
|
|
11603
|
+
toolSearch.matches.length === 0 ? /* @__PURE__ */ jsx43("div", { className: "text-[11px] italic text-[var(--text-tertiary)]", children: translate("agentHost.agentTool.details.noMatchingTools") }) : null,
|
|
11604
|
+
typeof toolSearch.totalDeferredTools === "number" ? /* @__PURE__ */ jsx43("div", { className: "text-[10px] text-[var(--text-tertiary)]", children: translate("agentHost.agentTool.details.loadedAvailable", {
|
|
11539
11605
|
loaded: toolSearch.matches.length,
|
|
11540
11606
|
available: toolSearch.totalDeferredTools
|
|
11541
11607
|
}) }) : null
|
|
@@ -11543,7 +11609,7 @@ ${toolSearch.mode}`
|
|
|
11543
11609
|
}
|
|
11544
11610
|
|
|
11545
11611
|
// shared/agentConversation/components/tool-renderers/AgentWebFetchContent.tsx
|
|
11546
|
-
import { jsx as
|
|
11612
|
+
import { jsx as jsx44, jsxs as jsxs33 } from "react/jsx-runtime";
|
|
11547
11613
|
function AgentWebFetchContent({
|
|
11548
11614
|
call,
|
|
11549
11615
|
onLinkClick
|
|
@@ -11568,15 +11634,15 @@ ${web.url}` : web.url;
|
|
|
11568
11634
|
if (!web.url && !visibleContent && !errorText) {
|
|
11569
11635
|
return null;
|
|
11570
11636
|
}
|
|
11571
|
-
return /* @__PURE__ */
|
|
11572
|
-
web.url ? /* @__PURE__ */
|
|
11637
|
+
return /* @__PURE__ */ jsxs33("div", { className: "workspace-agents-status-panel__detail-tool-body", children: [
|
|
11638
|
+
web.url ? /* @__PURE__ */ jsx44(ToolSection, { title: translate("agentHost.agentTool.details.url"), children: /* @__PURE__ */ jsx44(
|
|
11573
11639
|
ToolMarkdownBlock,
|
|
11574
11640
|
{
|
|
11575
11641
|
content: urlText ?? "",
|
|
11576
11642
|
onLinkClick
|
|
11577
11643
|
}
|
|
11578
11644
|
) }) : null,
|
|
11579
|
-
visibleContent ? /* @__PURE__ */
|
|
11645
|
+
visibleContent ? /* @__PURE__ */ jsx44(ToolSection, { title: translate("agentHost.agentTool.details.content"), children: /* @__PURE__ */ jsx44(
|
|
11580
11646
|
ToolMarkdownBlock,
|
|
11581
11647
|
{
|
|
11582
11648
|
content: visibleContent,
|
|
@@ -11584,8 +11650,8 @@ ${web.url}` : web.url;
|
|
|
11584
11650
|
collapsible: true
|
|
11585
11651
|
}
|
|
11586
11652
|
) }) : null,
|
|
11587
|
-
web.isTruncated ? /* @__PURE__ */
|
|
11588
|
-
errorText ? /* @__PURE__ */
|
|
11653
|
+
web.isTruncated ? /* @__PURE__ */ jsx44("div", { className: "text-[10px] italic text-[var(--text-tertiary)]", children: translate("agentHost.agentTool.details.contentTruncated") }) : null,
|
|
11654
|
+
errorText ? /* @__PURE__ */ jsx44(ToolSection, { title: translate("agentHost.agentTool.details.error"), children: /* @__PURE__ */ jsx44(
|
|
11589
11655
|
ToolMarkdownBlock,
|
|
11590
11656
|
{
|
|
11591
11657
|
content: errorText,
|
|
@@ -11597,7 +11663,7 @@ ${web.url}` : web.url;
|
|
|
11597
11663
|
}
|
|
11598
11664
|
|
|
11599
11665
|
// shared/agentConversation/components/tool-renderers/AgentWebSearchContent.tsx
|
|
11600
|
-
import { jsx as
|
|
11666
|
+
import { jsx as jsx45, jsxs as jsxs34 } from "react/jsx-runtime";
|
|
11601
11667
|
var MAX_SUMMARY_LENGTH = 3e3;
|
|
11602
11668
|
function AgentWebSearchContent({
|
|
11603
11669
|
call,
|
|
@@ -11621,9 +11687,9 @@ function AgentWebSearchContent({
|
|
|
11621
11687
|
if (!hasRenderableContent) {
|
|
11622
11688
|
return null;
|
|
11623
11689
|
}
|
|
11624
|
-
return /* @__PURE__ */
|
|
11625
|
-
queryText ? /* @__PURE__ */
|
|
11626
|
-
links.length > 0 ? /* @__PURE__ */
|
|
11690
|
+
return /* @__PURE__ */ jsxs34("div", { className: "workspace-agents-status-panel__detail-tool-body", children: [
|
|
11691
|
+
queryText ? /* @__PURE__ */ jsx45(ToolSection, { title: translate("agentHost.agentTool.details.query"), children: /* @__PURE__ */ jsx45(ToolMarkdownBlock, { content: queryText, onLinkClick }) }) : null,
|
|
11692
|
+
links.length > 0 ? /* @__PURE__ */ jsx45(ToolSection, { title: translate("agentHost.agentTool.details.results"), children: /* @__PURE__ */ jsx45("div", { className: "workspace-agents-status-panel__detail-tool-result-list overflow-hidden rounded-[8px] border border-[var(--line-2)] bg-[var(--transparency-block)]", children: links.map((link, index) => /* @__PURE__ */ jsxs34(
|
|
11627
11693
|
"a",
|
|
11628
11694
|
{
|
|
11629
11695
|
href: link.url,
|
|
@@ -11631,13 +11697,13 @@ function AgentWebSearchContent({
|
|
|
11631
11697
|
rel: "noreferrer",
|
|
11632
11698
|
className: `flex items-center gap-3 px-3 py-2 text-[11px] ${index > 0 ? "border-t border-[var(--line-2)]" : ""}`,
|
|
11633
11699
|
children: [
|
|
11634
|
-
/* @__PURE__ */
|
|
11635
|
-
/* @__PURE__ */
|
|
11700
|
+
/* @__PURE__ */ jsx45("span", { className: "w-[120px] shrink-0 truncate text-[11px] text-[var(--text-tertiary)]", children: link.domain }),
|
|
11701
|
+
/* @__PURE__ */ jsx45("span", { className: "truncate text-[var(--text-primary)]", children: link.title })
|
|
11636
11702
|
]
|
|
11637
11703
|
},
|
|
11638
11704
|
`${link.url}:${link.title}`
|
|
11639
11705
|
)) }) }) : null,
|
|
11640
|
-
visibleSummary ? /* @__PURE__ */
|
|
11706
|
+
visibleSummary ? /* @__PURE__ */ jsx45(ToolSection, { title: translate("agentHost.agentTool.details.output"), children: /* @__PURE__ */ jsx45(
|
|
11641
11707
|
ToolMarkdownBlock,
|
|
11642
11708
|
{
|
|
11643
11709
|
content: visibleSummary,
|
|
@@ -11645,8 +11711,8 @@ function AgentWebSearchContent({
|
|
|
11645
11711
|
collapsible: true
|
|
11646
11712
|
}
|
|
11647
11713
|
) }) : null,
|
|
11648
|
-
summary && summary.length > MAX_SUMMARY_LENGTH ? /* @__PURE__ */
|
|
11649
|
-
web.error ? /* @__PURE__ */
|
|
11714
|
+
summary && summary.length > MAX_SUMMARY_LENGTH ? /* @__PURE__ */ jsx45("div", { className: "text-[10px] italic text-[var(--text-tertiary)]", children: translate("agentHost.agentTool.details.summaryTruncated") }) : null,
|
|
11715
|
+
web.error ? /* @__PURE__ */ jsx45(ToolSection, { title: translate("agentHost.agentTool.details.error"), children: /* @__PURE__ */ jsx45(
|
|
11650
11716
|
ToolMarkdownBlock,
|
|
11651
11717
|
{
|
|
11652
11718
|
content: web.error,
|
|
@@ -11739,7 +11805,7 @@ function domainForUrl2(url) {
|
|
|
11739
11805
|
}
|
|
11740
11806
|
|
|
11741
11807
|
// shared/agentConversation/components/tool-renderers/AgentWriteContent.tsx
|
|
11742
|
-
import { jsx as
|
|
11808
|
+
import { jsx as jsx46, jsxs as jsxs35 } from "react/jsx-runtime";
|
|
11743
11809
|
function AgentWriteContent({
|
|
11744
11810
|
call,
|
|
11745
11811
|
onLinkClick
|
|
@@ -11759,9 +11825,9 @@ function AgentWriteContent({
|
|
|
11759
11825
|
if (!hasRenderableContent) {
|
|
11760
11826
|
return null;
|
|
11761
11827
|
}
|
|
11762
|
-
return /* @__PURE__ */
|
|
11763
|
-
path && files.length === 0 ? /* @__PURE__ */
|
|
11764
|
-
patchFiles.map((candidate) => /* @__PURE__ */
|
|
11828
|
+
return /* @__PURE__ */ jsxs35("div", { className: "workspace-agents-status-panel__detail-tool-body workspace-agents-status-panel__detail-tool-body--flat", children: [
|
|
11829
|
+
path && files.length === 0 ? /* @__PURE__ */ jsx46(ToolMarkdownBlock, { content: path, onLinkClick }) : null,
|
|
11830
|
+
patchFiles.map((candidate) => /* @__PURE__ */ jsx46(
|
|
11765
11831
|
AgentUnifiedPatchViewer,
|
|
11766
11832
|
{
|
|
11767
11833
|
path: candidate.path,
|
|
@@ -11772,7 +11838,7 @@ function AgentWriteContent({
|
|
|
11772
11838
|
},
|
|
11773
11839
|
`patch:${candidate.path}`
|
|
11774
11840
|
)),
|
|
11775
|
-
contentFiles.map((candidate) => /* @__PURE__ */
|
|
11841
|
+
contentFiles.map((candidate) => /* @__PURE__ */ jsx46(
|
|
11776
11842
|
AgentCodeBlock,
|
|
11777
11843
|
{
|
|
11778
11844
|
path: candidate.path,
|
|
@@ -11783,7 +11849,7 @@ function AgentWriteContent({
|
|
|
11783
11849
|
},
|
|
11784
11850
|
`content:${candidate.path}`
|
|
11785
11851
|
)),
|
|
11786
|
-
fallbackContent ? /* @__PURE__ */
|
|
11852
|
+
fallbackContent ? /* @__PURE__ */ jsx46(
|
|
11787
11853
|
AgentCodeBlock,
|
|
11788
11854
|
{
|
|
11789
11855
|
path,
|
|
@@ -11797,7 +11863,7 @@ function AgentWriteContent({
|
|
|
11797
11863
|
}
|
|
11798
11864
|
|
|
11799
11865
|
// shared/agentConversation/components/tool-renderers/AgentExpandedToolContent.tsx
|
|
11800
|
-
import { jsx as
|
|
11866
|
+
import { jsx as jsx47 } from "react/jsx-runtime";
|
|
11801
11867
|
function AgentExpandedToolContent({
|
|
11802
11868
|
call,
|
|
11803
11869
|
onLinkClick,
|
|
@@ -11808,65 +11874,65 @@ function AgentExpandedToolContent({
|
|
|
11808
11874
|
let content;
|
|
11809
11875
|
switch (call.rendererKind) {
|
|
11810
11876
|
case "approval":
|
|
11811
|
-
content = /* @__PURE__ */
|
|
11877
|
+
content = /* @__PURE__ */ jsx47(AgentApprovalContent, { ...props });
|
|
11812
11878
|
break;
|
|
11813
11879
|
case "plan-enter":
|
|
11814
11880
|
case "plan-exit":
|
|
11815
|
-
content = /* @__PURE__ */
|
|
11881
|
+
content = /* @__PURE__ */ jsx47(AgentPlanModeContent, { ...props });
|
|
11816
11882
|
break;
|
|
11817
11883
|
case "ask-user":
|
|
11818
|
-
content = /* @__PURE__ */
|
|
11884
|
+
content = /* @__PURE__ */ jsx47(AgentAskUserQuestionContent, { ...props });
|
|
11819
11885
|
break;
|
|
11820
11886
|
case "task":
|
|
11821
|
-
content = /* @__PURE__ */
|
|
11887
|
+
content = /* @__PURE__ */ jsx47(AgentTaskContent, { ...props });
|
|
11822
11888
|
break;
|
|
11823
11889
|
case "read":
|
|
11824
|
-
content = /* @__PURE__ */
|
|
11890
|
+
content = /* @__PURE__ */ jsx47(AgentReadContent, { ...props });
|
|
11825
11891
|
break;
|
|
11826
11892
|
case "write":
|
|
11827
|
-
content = /* @__PURE__ */
|
|
11893
|
+
content = /* @__PURE__ */ jsx47(AgentWriteContent, { ...props });
|
|
11828
11894
|
break;
|
|
11829
11895
|
case "edit":
|
|
11830
|
-
content = /* @__PURE__ */
|
|
11896
|
+
content = /* @__PURE__ */ jsx47(AgentEditContent, { ...props });
|
|
11831
11897
|
break;
|
|
11832
11898
|
case "bash":
|
|
11833
|
-
content = /* @__PURE__ */
|
|
11899
|
+
content = /* @__PURE__ */ jsx47(AgentBashContent, { ...props });
|
|
11834
11900
|
break;
|
|
11835
11901
|
case "search":
|
|
11836
|
-
content = /* @__PURE__ */
|
|
11902
|
+
content = /* @__PURE__ */ jsx47(AgentSearchContent, { ...props });
|
|
11837
11903
|
break;
|
|
11838
11904
|
case "web-search":
|
|
11839
|
-
content = /* @__PURE__ */
|
|
11905
|
+
content = /* @__PURE__ */ jsx47(AgentWebSearchContent, { ...props });
|
|
11840
11906
|
break;
|
|
11841
11907
|
case "web-fetch":
|
|
11842
|
-
content = /* @__PURE__ */
|
|
11908
|
+
content = /* @__PURE__ */ jsx47(AgentWebFetchContent, { ...props });
|
|
11843
11909
|
break;
|
|
11844
11910
|
case "image-generation":
|
|
11845
|
-
content = /* @__PURE__ */
|
|
11911
|
+
content = /* @__PURE__ */ jsx47(AgentImageGenerationContent, { ...props });
|
|
11846
11912
|
break;
|
|
11847
11913
|
case "todo-write":
|
|
11848
|
-
content = /* @__PURE__ */
|
|
11914
|
+
content = /* @__PURE__ */ jsx47(AgentTodoWriteContent, { ...props });
|
|
11849
11915
|
break;
|
|
11850
11916
|
case "tool-search":
|
|
11851
|
-
content = /* @__PURE__ */
|
|
11917
|
+
content = /* @__PURE__ */ jsx47(AgentToolSearchContent, { ...props });
|
|
11852
11918
|
break;
|
|
11853
11919
|
case "skill":
|
|
11854
|
-
content = /* @__PURE__ */
|
|
11920
|
+
content = /* @__PURE__ */ jsx47(AgentSkillContent, { ...props });
|
|
11855
11921
|
break;
|
|
11856
11922
|
case "mcp":
|
|
11857
|
-
content = /* @__PURE__ */
|
|
11923
|
+
content = /* @__PURE__ */ jsx47(AgentMcpToolContent, { ...props });
|
|
11858
11924
|
break;
|
|
11859
11925
|
default:
|
|
11860
|
-
content = /* @__PURE__ */
|
|
11926
|
+
content = /* @__PURE__ */ jsx47(AgentDefaultToolContent, { ...props });
|
|
11861
11927
|
}
|
|
11862
11928
|
if (!content) {
|
|
11863
11929
|
return null;
|
|
11864
11930
|
}
|
|
11865
|
-
return /* @__PURE__ */
|
|
11931
|
+
return /* @__PURE__ */ jsx47(AgentToolPreviewModeProvider, { previewMode, children: content });
|
|
11866
11932
|
}
|
|
11867
11933
|
|
|
11868
11934
|
// shared/agentConversation/components/AgentAskUserQuestionCard.tsx
|
|
11869
|
-
import { jsx as
|
|
11935
|
+
import { jsx as jsx48, jsxs as jsxs36 } from "react/jsx-runtime";
|
|
11870
11936
|
function AgentAskUserQuestionCard({
|
|
11871
11937
|
call,
|
|
11872
11938
|
onLinkClick,
|
|
@@ -11879,19 +11945,19 @@ function AgentAskUserQuestionCard({
|
|
|
11879
11945
|
const hasDetail = hasAgentToolContent(call);
|
|
11880
11946
|
const pinned = nonCollapsible ?? waitingInput;
|
|
11881
11947
|
const [expanded, setExpanded] = useState12(defaultExpanded ?? waitingInput);
|
|
11882
|
-
return /* @__PURE__ */
|
|
11883
|
-
hasDetail && !pinned ? /* @__PURE__ */
|
|
11948
|
+
return /* @__PURE__ */ jsxs36("div", { className: "workspace-agents-status-panel__detail-tool-row workspace-agents-status-panel__detail-tool-row--ask-user", children: [
|
|
11949
|
+
hasDetail && !pinned ? /* @__PURE__ */ jsx48(
|
|
11884
11950
|
"button",
|
|
11885
11951
|
{
|
|
11886
11952
|
type: "button",
|
|
11887
11953
|
className: "workspace-agents-status-panel__detail-tool-row-head workspace-agents-status-panel__detail-tool-row-head--button",
|
|
11888
11954
|
"aria-expanded": expanded,
|
|
11889
11955
|
onClick: () => setExpanded((value) => !value),
|
|
11890
|
-
children: /* @__PURE__ */
|
|
11956
|
+
children: /* @__PURE__ */ jsx48(AgentToolCallHeader, { call, expanded, hasDetail: true })
|
|
11891
11957
|
}
|
|
11892
|
-
) : /* @__PURE__ */
|
|
11893
|
-
!hasDetail && call.summary ? /* @__PURE__ */
|
|
11894
|
-
hasDetail && pinned ? /* @__PURE__ */
|
|
11958
|
+
) : /* @__PURE__ */ jsx48("div", { className: "workspace-agents-status-panel__detail-tool-row-head", children: /* @__PURE__ */ jsx48(AgentToolCallHeader, { call, expanded: false, hasDetail: false }) }),
|
|
11959
|
+
!hasDetail && call.summary ? /* @__PURE__ */ jsx48("div", { className: "workspace-agents-status-panel__detail-tool-summary", children: call.summary }) : null,
|
|
11960
|
+
hasDetail && pinned ? /* @__PURE__ */ jsx48(
|
|
11895
11961
|
AgentExpandedToolContent,
|
|
11896
11962
|
{
|
|
11897
11963
|
call,
|
|
@@ -11899,7 +11965,7 @@ function AgentAskUserQuestionCard({
|
|
|
11899
11965
|
previewMode
|
|
11900
11966
|
}
|
|
11901
11967
|
) : null,
|
|
11902
|
-
hasDetail && !pinned ? /* @__PURE__ */
|
|
11968
|
+
hasDetail && !pinned ? /* @__PURE__ */ jsx48(CollapsibleReveal, { expanded, children: /* @__PURE__ */ jsx48(
|
|
11903
11969
|
AgentExpandedToolContent,
|
|
11904
11970
|
{
|
|
11905
11971
|
call,
|
|
@@ -11911,7 +11977,7 @@ function AgentAskUserQuestionCard({
|
|
|
11911
11977
|
}
|
|
11912
11978
|
|
|
11913
11979
|
// shared/agentConversation/components/AgentEnterPlanModeCard.tsx
|
|
11914
|
-
import { jsx as
|
|
11980
|
+
import { jsx as jsx49, jsxs as jsxs37 } from "react/jsx-runtime";
|
|
11915
11981
|
function AgentEnterPlanModeCard({
|
|
11916
11982
|
call,
|
|
11917
11983
|
onLinkClick,
|
|
@@ -11919,10 +11985,10 @@ function AgentEnterPlanModeCard({
|
|
|
11919
11985
|
}) {
|
|
11920
11986
|
"use memo";
|
|
11921
11987
|
const hasDetail = hasAgentToolContent(call);
|
|
11922
|
-
return /* @__PURE__ */
|
|
11923
|
-
/* @__PURE__ */
|
|
11924
|
-
!hasDetail && call.summary ? /* @__PURE__ */
|
|
11925
|
-
hasDetail ? /* @__PURE__ */
|
|
11988
|
+
return /* @__PURE__ */ jsxs37("div", { className: "workspace-agents-status-panel__detail-tool-row workspace-agents-status-panel__detail-tool-row--plan-enter", children: [
|
|
11989
|
+
/* @__PURE__ */ jsx49("div", { className: "workspace-agents-status-panel__detail-tool-row-head", children: /* @__PURE__ */ jsx49(AgentToolCallHeader, { call, expanded: false, hasDetail: false }) }),
|
|
11990
|
+
!hasDetail && call.summary ? /* @__PURE__ */ jsx49("div", { className: "workspace-agents-status-panel__detail-tool-summary", children: call.summary }) : null,
|
|
11991
|
+
hasDetail ? /* @__PURE__ */ jsx49(
|
|
11926
11992
|
AgentExpandedToolContent,
|
|
11927
11993
|
{
|
|
11928
11994
|
call,
|
|
@@ -11934,7 +12000,7 @@ function AgentEnterPlanModeCard({
|
|
|
11934
12000
|
}
|
|
11935
12001
|
|
|
11936
12002
|
// shared/agentConversation/components/AgentExitPlanModeCard.tsx
|
|
11937
|
-
import { jsx as
|
|
12003
|
+
import { jsx as jsx50, jsxs as jsxs38 } from "react/jsx-runtime";
|
|
11938
12004
|
function AgentExitPlanModeCard({
|
|
11939
12005
|
call,
|
|
11940
12006
|
onLinkClick,
|
|
@@ -11942,10 +12008,10 @@ function AgentExitPlanModeCard({
|
|
|
11942
12008
|
}) {
|
|
11943
12009
|
"use memo";
|
|
11944
12010
|
const hasDetail = hasAgentToolContent(call);
|
|
11945
|
-
return /* @__PURE__ */
|
|
11946
|
-
/* @__PURE__ */
|
|
11947
|
-
!hasDetail && call.summary ? /* @__PURE__ */
|
|
11948
|
-
hasDetail ? /* @__PURE__ */
|
|
12011
|
+
return /* @__PURE__ */ jsxs38("div", { className: "workspace-agents-status-panel__detail-tool-row workspace-agents-status-panel__detail-tool-row--plan-exit", children: [
|
|
12012
|
+
/* @__PURE__ */ jsx50("div", { className: "workspace-agents-status-panel__detail-tool-row-head", children: /* @__PURE__ */ jsx50(AgentToolCallHeader, { call, expanded: false, hasDetail: false }) }),
|
|
12013
|
+
!hasDetail && call.summary ? /* @__PURE__ */ jsx50("div", { className: "workspace-agents-status-panel__detail-tool-summary", children: call.summary }) : null,
|
|
12014
|
+
hasDetail ? /* @__PURE__ */ jsx50(
|
|
11949
12015
|
AgentExpandedToolContent,
|
|
11950
12016
|
{
|
|
11951
12017
|
call,
|
|
@@ -11958,7 +12024,7 @@ function AgentExitPlanModeCard({
|
|
|
11958
12024
|
|
|
11959
12025
|
// shared/agentConversation/components/AgentTaskCallCard.tsx
|
|
11960
12026
|
import { useState as useState13 } from "react";
|
|
11961
|
-
import { jsx as
|
|
12027
|
+
import { jsx as jsx51, jsxs as jsxs39 } from "react/jsx-runtime";
|
|
11962
12028
|
function AgentTaskCallCard({
|
|
11963
12029
|
call,
|
|
11964
12030
|
onLinkClick,
|
|
@@ -11972,8 +12038,8 @@ function AgentTaskCallCard({
|
|
|
11972
12038
|
const pinned = nonCollapsible ?? running;
|
|
11973
12039
|
const [expanded, setExpanded] = useState13(defaultExpanded ?? running);
|
|
11974
12040
|
const ariaLabel = taskCallAriaLabel(call);
|
|
11975
|
-
return /* @__PURE__ */
|
|
11976
|
-
hasDetail && !pinned ? /* @__PURE__ */
|
|
12041
|
+
return /* @__PURE__ */ jsxs39("div", { className: "workspace-agents-status-panel__detail-tool-row workspace-agents-status-panel__detail-tool-row--task", children: [
|
|
12042
|
+
hasDetail && !pinned ? /* @__PURE__ */ jsx51(
|
|
11977
12043
|
"button",
|
|
11978
12044
|
{
|
|
11979
12045
|
type: "button",
|
|
@@ -11981,11 +12047,11 @@ function AgentTaskCallCard({
|
|
|
11981
12047
|
"aria-expanded": expanded,
|
|
11982
12048
|
"aria-label": ariaLabel,
|
|
11983
12049
|
onClick: () => setExpanded((value) => !value),
|
|
11984
|
-
children: /* @__PURE__ */
|
|
12050
|
+
children: /* @__PURE__ */ jsx51(AgentToolCallHeader, { call, expanded, hasDetail: true })
|
|
11985
12051
|
}
|
|
11986
|
-
) : /* @__PURE__ */
|
|
11987
|
-
!hasDetail && call.summary ? /* @__PURE__ */
|
|
11988
|
-
hasDetail && pinned ? /* @__PURE__ */
|
|
12052
|
+
) : /* @__PURE__ */ jsx51("div", { className: "workspace-agents-status-panel__detail-tool-row-head", children: /* @__PURE__ */ jsx51(AgentToolCallHeader, { call, expanded: false, hasDetail: false }) }),
|
|
12053
|
+
!hasDetail && call.summary ? /* @__PURE__ */ jsx51("div", { className: "workspace-agents-status-panel__detail-tool-summary", children: call.summary }) : null,
|
|
12054
|
+
hasDetail && pinned ? /* @__PURE__ */ jsx51(
|
|
11989
12055
|
AgentExpandedToolContent,
|
|
11990
12056
|
{
|
|
11991
12057
|
call,
|
|
@@ -11993,7 +12059,7 @@ function AgentTaskCallCard({
|
|
|
11993
12059
|
previewMode
|
|
11994
12060
|
}
|
|
11995
12061
|
) : null,
|
|
11996
|
-
hasDetail && !pinned ? /* @__PURE__ */
|
|
12062
|
+
hasDetail && !pinned ? /* @__PURE__ */ jsx51(CollapsibleReveal, { expanded, children: /* @__PURE__ */ jsx51(
|
|
11997
12063
|
AgentExpandedToolContent,
|
|
11998
12064
|
{
|
|
11999
12065
|
call,
|
|
@@ -12013,7 +12079,7 @@ function taskCallAriaLabel(call) {
|
|
|
12013
12079
|
|
|
12014
12080
|
// shared/agentConversation/components/AgentToolCallCard.tsx
|
|
12015
12081
|
import { useState as useState14 } from "react";
|
|
12016
|
-
import { jsx as
|
|
12082
|
+
import { jsx as jsx52, jsxs as jsxs40 } from "react/jsx-runtime";
|
|
12017
12083
|
function AgentToolCallCard({
|
|
12018
12084
|
call,
|
|
12019
12085
|
onLinkClick,
|
|
@@ -12027,7 +12093,7 @@ function AgentToolCallCard({
|
|
|
12027
12093
|
const hasDetail = hasAgentToolContent(call);
|
|
12028
12094
|
const canCollapse = hasDetail && !nonCollapsible;
|
|
12029
12095
|
const ariaLabel = toolCallAriaLabel(call);
|
|
12030
|
-
return /* @__PURE__ */
|
|
12096
|
+
return /* @__PURE__ */ jsxs40(
|
|
12031
12097
|
"div",
|
|
12032
12098
|
{
|
|
12033
12099
|
className: [
|
|
@@ -12035,7 +12101,7 @@ function AgentToolCallCard({
|
|
|
12035
12101
|
variantClassName ?? ""
|
|
12036
12102
|
].filter(Boolean).join(" "),
|
|
12037
12103
|
children: [
|
|
12038
|
-
canCollapse ? /* @__PURE__ */
|
|
12104
|
+
canCollapse ? /* @__PURE__ */ jsx52(
|
|
12039
12105
|
"button",
|
|
12040
12106
|
{
|
|
12041
12107
|
type: "button",
|
|
@@ -12043,10 +12109,10 @@ function AgentToolCallCard({
|
|
|
12043
12109
|
"aria-expanded": expanded,
|
|
12044
12110
|
"aria-label": ariaLabel,
|
|
12045
12111
|
onClick: () => setExpanded((value) => !value),
|
|
12046
|
-
children: /* @__PURE__ */
|
|
12112
|
+
children: /* @__PURE__ */ jsx52(AgentToolCallHeader, { call, expanded, hasDetail: true })
|
|
12047
12113
|
}
|
|
12048
|
-
) : /* @__PURE__ */
|
|
12049
|
-
hasDetail && nonCollapsible ? /* @__PURE__ */
|
|
12114
|
+
) : /* @__PURE__ */ jsx52("div", { className: "workspace-agents-status-panel__detail-tool-row-head", children: /* @__PURE__ */ jsx52(AgentToolCallHeader, { call, expanded: false, hasDetail: false }) }),
|
|
12115
|
+
hasDetail && nonCollapsible ? /* @__PURE__ */ jsx52(
|
|
12050
12116
|
AgentExpandedToolContent,
|
|
12051
12117
|
{
|
|
12052
12118
|
call,
|
|
@@ -12054,7 +12120,7 @@ function AgentToolCallCard({
|
|
|
12054
12120
|
previewMode
|
|
12055
12121
|
}
|
|
12056
12122
|
) : null,
|
|
12057
|
-
hasDetail && !nonCollapsible ? /* @__PURE__ */
|
|
12123
|
+
hasDetail && !nonCollapsible ? /* @__PURE__ */ jsx52(CollapsibleReveal, { expanded, children: /* @__PURE__ */ jsx52(
|
|
12058
12124
|
AgentExpandedToolContent,
|
|
12059
12125
|
{
|
|
12060
12126
|
call,
|
|
@@ -12075,7 +12141,7 @@ function toolCallAriaLabel(call) {
|
|
|
12075
12141
|
}
|
|
12076
12142
|
|
|
12077
12143
|
// shared/agentConversation/components/AgentToolGroupRow.tsx
|
|
12078
|
-
import { Fragment as Fragment5, jsx as
|
|
12144
|
+
import { Fragment as Fragment5, jsx as jsx53, jsxs as jsxs41 } from "react/jsx-runtime";
|
|
12079
12145
|
var AgentToolGroupRow = memo(function AgentToolGroupRow2({
|
|
12080
12146
|
row,
|
|
12081
12147
|
label,
|
|
@@ -12111,13 +12177,13 @@ var AgentToolGroupRow = memo(function AgentToolGroupRow2({
|
|
|
12111
12177
|
rawTimelineJsonLabel
|
|
12112
12178
|
);
|
|
12113
12179
|
}
|
|
12114
|
-
return /* @__PURE__ */
|
|
12180
|
+
return /* @__PURE__ */ jsxs41(
|
|
12115
12181
|
"div",
|
|
12116
12182
|
{
|
|
12117
12183
|
className: "workspace-agents-status-panel__detail-tool-section",
|
|
12118
12184
|
"data-tool-group-expanded": isExpanded ? "true" : void 0,
|
|
12119
12185
|
children: [
|
|
12120
|
-
hasDetail ? /* @__PURE__ */
|
|
12186
|
+
hasDetail ? /* @__PURE__ */ jsxs41(
|
|
12121
12187
|
"button",
|
|
12122
12188
|
{
|
|
12123
12189
|
type: "button",
|
|
@@ -12126,8 +12192,8 @@ var AgentToolGroupRow = memo(function AgentToolGroupRow2({
|
|
|
12126
12192
|
"aria-label": groupLabel,
|
|
12127
12193
|
onClick: () => setNextExpanded(!isExpanded),
|
|
12128
12194
|
children: [
|
|
12129
|
-
/* @__PURE__ */
|
|
12130
|
-
isExpanded ? /* @__PURE__ */
|
|
12195
|
+
/* @__PURE__ */ jsx53(ToolGroupLabel, { label: groupLabel }),
|
|
12196
|
+
isExpanded ? /* @__PURE__ */ jsx53(
|
|
12131
12197
|
ChevronDown6,
|
|
12132
12198
|
{
|
|
12133
12199
|
size: 12,
|
|
@@ -12135,7 +12201,7 @@ var AgentToolGroupRow = memo(function AgentToolGroupRow2({
|
|
|
12135
12201
|
"aria-hidden": "true",
|
|
12136
12202
|
className: "workspace-agents-status-panel__detail-tool-count-chevron"
|
|
12137
12203
|
}
|
|
12138
|
-
) : /* @__PURE__ */
|
|
12204
|
+
) : /* @__PURE__ */ jsx53(
|
|
12139
12205
|
ChevronRight6,
|
|
12140
12206
|
{
|
|
12141
12207
|
size: 12,
|
|
@@ -12146,13 +12212,13 @@ var AgentToolGroupRow = memo(function AgentToolGroupRow2({
|
|
|
12146
12212
|
)
|
|
12147
12213
|
]
|
|
12148
12214
|
}
|
|
12149
|
-
) : /* @__PURE__ */
|
|
12150
|
-
hasDetail ? /* @__PURE__ */
|
|
12151
|
-
(entry) => entry.kind === "thinking" ? /* @__PURE__ */
|
|
12215
|
+
) : /* @__PURE__ */ jsx53("div", { className: "workspace-agents-status-panel__detail-tool-count", children: /* @__PURE__ */ jsx53(ToolGroupLabel, { label: groupLabel }) }),
|
|
12216
|
+
hasDetail ? /* @__PURE__ */ jsx53(CollapsibleReveal, { expanded: isExpanded, children: /* @__PURE__ */ jsx53("div", { className: "workspace-agents-status-panel__detail-tool-list", children: row.entries.map(
|
|
12217
|
+
(entry) => entry.kind === "thinking" ? /* @__PURE__ */ jsx53(
|
|
12152
12218
|
"div",
|
|
12153
12219
|
{
|
|
12154
12220
|
className: "workspace-agents-status-panel__detail-tool-list-item workspace-agents-status-panel__detail-tool-row",
|
|
12155
|
-
children: /* @__PURE__ */
|
|
12221
|
+
children: /* @__PURE__ */ jsx53(
|
|
12156
12222
|
AgentThinkingDisclosure,
|
|
12157
12223
|
{
|
|
12158
12224
|
thinking: entry.thinking,
|
|
@@ -12165,7 +12231,7 @@ var AgentToolGroupRow = memo(function AgentToolGroupRow2({
|
|
|
12165
12231
|
)
|
|
12166
12232
|
},
|
|
12167
12233
|
entry.thinking.id
|
|
12168
|
-
) : /* @__PURE__ */
|
|
12234
|
+
) : /* @__PURE__ */ jsx53(
|
|
12169
12235
|
"div",
|
|
12170
12236
|
{
|
|
12171
12237
|
className: "workspace-agents-status-panel__detail-tool-list-item",
|
|
@@ -12186,8 +12252,8 @@ var AgentToolGroupRow = memo(function AgentToolGroupRow2({
|
|
|
12186
12252
|
});
|
|
12187
12253
|
function ToolGroupLabel({ label }) {
|
|
12188
12254
|
"use memo";
|
|
12189
|
-
return /* @__PURE__ */
|
|
12190
|
-
/* @__PURE__ */
|
|
12255
|
+
return /* @__PURE__ */ jsxs41(Fragment5, { children: [
|
|
12256
|
+
/* @__PURE__ */ jsx53(
|
|
12191
12257
|
ToolActivityKindIcon,
|
|
12192
12258
|
{
|
|
12193
12259
|
kind: "update_todos",
|
|
@@ -12196,7 +12262,7 @@ function ToolGroupLabel({ label }) {
|
|
|
12196
12262
|
className: "workspace-agents-status-panel__detail-tool-count-icon"
|
|
12197
12263
|
}
|
|
12198
12264
|
),
|
|
12199
|
-
/* @__PURE__ */
|
|
12265
|
+
/* @__PURE__ */ jsx53("span", { className: "workspace-agents-status-panel__detail-tool-count-label", children: renderToolCountLabel(label) })
|
|
12200
12266
|
] });
|
|
12201
12267
|
}
|
|
12202
12268
|
function hasGroupDetail(row) {
|
|
@@ -12209,11 +12275,11 @@ function renderToolCountLabel(label) {
|
|
|
12209
12275
|
const primary = statusMatch?.[1];
|
|
12210
12276
|
const status = statusMatch?.[2];
|
|
12211
12277
|
if (!primary || !status) {
|
|
12212
|
-
return /* @__PURE__ */
|
|
12278
|
+
return /* @__PURE__ */ jsx53("span", { className: "workspace-agents-status-panel__detail-tool-count-primary", children: label });
|
|
12213
12279
|
}
|
|
12214
|
-
return /* @__PURE__ */
|
|
12215
|
-
/* @__PURE__ */
|
|
12216
|
-
/* @__PURE__ */
|
|
12280
|
+
return /* @__PURE__ */ jsxs41(Fragment5, { children: [
|
|
12281
|
+
/* @__PURE__ */ jsx53("span", { className: "workspace-agents-status-panel__detail-tool-count-primary", children: primary }),
|
|
12282
|
+
/* @__PURE__ */ jsx53("span", { className: "workspace-agents-status-panel__detail-tool-count-status", children: formatInlineStatusLabel3(status) })
|
|
12217
12283
|
] });
|
|
12218
12284
|
}
|
|
12219
12285
|
function formatInlineStatusLabel3(label) {
|
|
@@ -12224,23 +12290,23 @@ function renderToolCard(call, onLinkClick, previewMode = false, showRawTimelineJ
|
|
|
12224
12290
|
let card;
|
|
12225
12291
|
switch (call.rendererKind) {
|
|
12226
12292
|
case "plan-enter":
|
|
12227
|
-
card = /* @__PURE__ */
|
|
12293
|
+
card = /* @__PURE__ */ jsx53(AgentEnterPlanModeCard, { ...props });
|
|
12228
12294
|
break;
|
|
12229
12295
|
case "plan-exit":
|
|
12230
|
-
card = /* @__PURE__ */
|
|
12296
|
+
card = /* @__PURE__ */ jsx53(AgentExitPlanModeCard, { ...props });
|
|
12231
12297
|
break;
|
|
12232
12298
|
case "ask-user":
|
|
12233
|
-
card = /* @__PURE__ */
|
|
12299
|
+
card = /* @__PURE__ */ jsx53(AgentAskUserQuestionCard, { ...props });
|
|
12234
12300
|
break;
|
|
12235
12301
|
case "task":
|
|
12236
|
-
card = /* @__PURE__ */
|
|
12302
|
+
card = /* @__PURE__ */ jsx53(AgentTaskCallCard, { ...props });
|
|
12237
12303
|
break;
|
|
12238
12304
|
default:
|
|
12239
|
-
card = /* @__PURE__ */
|
|
12305
|
+
card = /* @__PURE__ */ jsx53(AgentToolCallCard, { ...props });
|
|
12240
12306
|
}
|
|
12241
|
-
return /* @__PURE__ */
|
|
12307
|
+
return /* @__PURE__ */ jsxs41(Fragment5, { children: [
|
|
12242
12308
|
card,
|
|
12243
|
-
showRawTimelineJson && rawTimelineJsonLabel ? /* @__PURE__ */
|
|
12309
|
+
showRawTimelineJson && rawTimelineJsonLabel ? /* @__PURE__ */ jsx53(
|
|
12244
12310
|
RawTimelineJsonDisclosure,
|
|
12245
12311
|
{
|
|
12246
12312
|
items: call.sourceTimelineItems,
|
|
@@ -12268,10 +12334,10 @@ import {
|
|
|
12268
12334
|
} from "@tutti-os/ui-system";
|
|
12269
12335
|
|
|
12270
12336
|
// app/renderer/components/icons/DirectLinedIcon.tsx
|
|
12271
|
-
import { jsx as
|
|
12337
|
+
import { jsx as jsx54 } from "react/jsx-runtime";
|
|
12272
12338
|
function DirectLinedIcon(props) {
|
|
12273
12339
|
"use memo";
|
|
12274
|
-
return /* @__PURE__ */
|
|
12340
|
+
return /* @__PURE__ */ jsx54(
|
|
12275
12341
|
"svg",
|
|
12276
12342
|
{
|
|
12277
12343
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -12281,7 +12347,7 @@ function DirectLinedIcon(props) {
|
|
|
12281
12347
|
"data-nexight-chrome-glyph": "fill",
|
|
12282
12348
|
"data-tutti-chrome-glyph": "fill",
|
|
12283
12349
|
...props,
|
|
12284
|
-
children: /* @__PURE__ */
|
|
12350
|
+
children: /* @__PURE__ */ jsx54(
|
|
12285
12351
|
"path",
|
|
12286
12352
|
{
|
|
12287
12353
|
fill: "currentColor",
|
|
@@ -12482,7 +12548,7 @@ function isInsideOrEqualPatchPath(path, root) {
|
|
|
12482
12548
|
}
|
|
12483
12549
|
|
|
12484
12550
|
// shared/agentConversation/components/AgentTurnSummaryRow.tsx
|
|
12485
|
-
import { jsx as
|
|
12551
|
+
import { jsx as jsx55, jsxs as jsxs42 } from "react/jsx-runtime";
|
|
12486
12552
|
function AgentTurnSummaryRow({
|
|
12487
12553
|
row,
|
|
12488
12554
|
workspaceRoot,
|
|
@@ -12624,29 +12690,29 @@ function AgentTurnSummaryRow({
|
|
|
12624
12690
|
}
|
|
12625
12691
|
}
|
|
12626
12692
|
};
|
|
12627
|
-
return /* @__PURE__ */
|
|
12628
|
-
/* @__PURE__ */
|
|
12629
|
-
/* @__PURE__ */
|
|
12630
|
-
/* @__PURE__ */
|
|
12693
|
+
return /* @__PURE__ */ jsx55("section", { className: "workspace-agents-status-panel__detail-turn-summary", children: /* @__PURE__ */ jsxs42("div", { className: "agent-turn-summary-card w-full overflow-hidden rounded-[8px] text-[var(--text-primary)]", children: [
|
|
12694
|
+
/* @__PURE__ */ jsxs42("div", { className: "flex items-start gap-3 px-4 py-3", children: [
|
|
12695
|
+
/* @__PURE__ */ jsx55("div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ jsxs42("div", { className: "flex min-w-0 items-center gap-3", children: [
|
|
12696
|
+
/* @__PURE__ */ jsx55("div", { className: "min-w-0 text-[15px] font-semibold leading-5 tracking-[0] text-[var(--text-primary)]", children: translate("agentHost.agentGui.turnSummaryFilesChanged", {
|
|
12631
12697
|
count: row.fileCount
|
|
12632
12698
|
}) }),
|
|
12633
|
-
/* @__PURE__ */
|
|
12634
|
-
aggregateStats.added > 0 ? /* @__PURE__ */
|
|
12699
|
+
/* @__PURE__ */ jsxs42("div", { className: "inline-flex shrink-0 items-center gap-2.5 text-[11px] font-semibold", children: [
|
|
12700
|
+
aggregateStats.added > 0 ? /* @__PURE__ */ jsxs42("span", { className: "workspace-agents-status-panel__detail-tool-diff-added", children: [
|
|
12635
12701
|
"+",
|
|
12636
12702
|
aggregateStats.added
|
|
12637
12703
|
] }) : null,
|
|
12638
|
-
aggregateStats.removed > 0 ? /* @__PURE__ */
|
|
12704
|
+
aggregateStats.removed > 0 ? /* @__PURE__ */ jsxs42("span", { className: "workspace-agents-status-panel__detail-tool-diff-removed", children: [
|
|
12639
12705
|
"-",
|
|
12640
12706
|
aggregateStats.removed
|
|
12641
12707
|
] }) : null
|
|
12642
12708
|
] })
|
|
12643
12709
|
] }) }),
|
|
12644
|
-
canRenderPatchButton ? /* @__PURE__ */
|
|
12645
|
-
/* @__PURE__ */
|
|
12710
|
+
canRenderPatchButton ? /* @__PURE__ */ jsx55(TooltipProvider, { delayDuration: 200, children: /* @__PURE__ */ jsxs42(Tooltip, { children: [
|
|
12711
|
+
/* @__PURE__ */ jsx55(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ jsx55(
|
|
12646
12712
|
"span",
|
|
12647
12713
|
{
|
|
12648
12714
|
className: `inline-flex shrink-0 ${isPatchActionDisabled ? "cursor-not-allowed" : ""}`,
|
|
12649
|
-
children: /* @__PURE__ */
|
|
12715
|
+
children: /* @__PURE__ */ jsxs42(
|
|
12650
12716
|
CanvasNodeGhostIconButton,
|
|
12651
12717
|
{
|
|
12652
12718
|
"aria-label": patchActionLabel,
|
|
@@ -12654,7 +12720,7 @@ function AgentTurnSummaryRow({
|
|
|
12654
12720
|
disabled: isPatchActionDisabled,
|
|
12655
12721
|
onClick: handlePatchAction,
|
|
12656
12722
|
children: [
|
|
12657
|
-
patchPending || isPatchSupportChecking ? /* @__PURE__ */
|
|
12723
|
+
patchPending || isPatchSupportChecking ? /* @__PURE__ */ jsx55(
|
|
12658
12724
|
LoaderCircle2,
|
|
12659
12725
|
{
|
|
12660
12726
|
width: 14,
|
|
@@ -12662,7 +12728,7 @@ function AgentTurnSummaryRow({
|
|
|
12662
12728
|
"aria-hidden": "true",
|
|
12663
12729
|
className: "animate-spin text-[var(--text-secondary)]"
|
|
12664
12730
|
}
|
|
12665
|
-
) : patchAction === "undo" ? /* @__PURE__ */
|
|
12731
|
+
) : patchAction === "undo" ? /* @__PURE__ */ jsx55(
|
|
12666
12732
|
Undo2,
|
|
12667
12733
|
{
|
|
12668
12734
|
width: 14,
|
|
@@ -12670,7 +12736,7 @@ function AgentTurnSummaryRow({
|
|
|
12670
12736
|
"aria-hidden": "true",
|
|
12671
12737
|
className: "text-[var(--text-secondary)]"
|
|
12672
12738
|
}
|
|
12673
|
-
) : /* @__PURE__ */
|
|
12739
|
+
) : /* @__PURE__ */ jsx55(
|
|
12674
12740
|
Redo2,
|
|
12675
12741
|
{
|
|
12676
12742
|
width: 14,
|
|
@@ -12679,19 +12745,19 @@ function AgentTurnSummaryRow({
|
|
|
12679
12745
|
className: "text-[var(--text-secondary)]"
|
|
12680
12746
|
}
|
|
12681
12747
|
),
|
|
12682
|
-
/* @__PURE__ */
|
|
12748
|
+
/* @__PURE__ */ jsx55("span", { children: patchActionLabel })
|
|
12683
12749
|
]
|
|
12684
12750
|
}
|
|
12685
12751
|
)
|
|
12686
12752
|
}
|
|
12687
12753
|
) }),
|
|
12688
|
-
patchDisabledReason ? /* @__PURE__ */
|
|
12754
|
+
patchDisabledReason ? /* @__PURE__ */ jsx55(TooltipContent, { className: "max-w-[260px] whitespace-normal text-left", children: patchDisabledReason }) : null
|
|
12689
12755
|
] }) }) : null
|
|
12690
12756
|
] }),
|
|
12691
|
-
/* @__PURE__ */
|
|
12757
|
+
/* @__PURE__ */ jsxs42("div", { className: "agent-turn-summary-card__list", children: [
|
|
12692
12758
|
visibleFiles.map((file) => {
|
|
12693
12759
|
const key = `${file.path}:${file.messageId}`;
|
|
12694
|
-
return /* @__PURE__ */
|
|
12760
|
+
return /* @__PURE__ */ jsx55(
|
|
12695
12761
|
TurnSummaryFileCard,
|
|
12696
12762
|
{
|
|
12697
12763
|
file,
|
|
@@ -12706,9 +12772,9 @@ function AgentTurnSummaryRow({
|
|
|
12706
12772
|
key
|
|
12707
12773
|
);
|
|
12708
12774
|
}),
|
|
12709
|
-
hiddenFileCount > 0 ? /* @__PURE__ */
|
|
12775
|
+
hiddenFileCount > 0 ? /* @__PURE__ */ jsx55(CollapsibleReveal, { expanded: showAllFiles, preMountOnIdle: true, children: /* @__PURE__ */ jsx55("div", { className: "agent-turn-summary-card__overflow-list", children: hiddenFiles.map((file) => {
|
|
12710
12776
|
const key = `${file.path}:${file.messageId}`;
|
|
12711
|
-
return /* @__PURE__ */
|
|
12777
|
+
return /* @__PURE__ */ jsx55(
|
|
12712
12778
|
TurnSummaryFileCard,
|
|
12713
12779
|
{
|
|
12714
12780
|
file,
|
|
@@ -12723,28 +12789,28 @@ function AgentTurnSummaryRow({
|
|
|
12723
12789
|
key
|
|
12724
12790
|
);
|
|
12725
12791
|
}) }) }) : null,
|
|
12726
|
-
hiddenFileCount > 0 && !showAllFiles ? /* @__PURE__ */
|
|
12792
|
+
hiddenFileCount > 0 && !showAllFiles ? /* @__PURE__ */ jsxs42(
|
|
12727
12793
|
"button",
|
|
12728
12794
|
{
|
|
12729
12795
|
type: "button",
|
|
12730
12796
|
className: "agent-turn-summary-card__toggle-more flex w-full items-center gap-2 px-4 py-2.5 text-left text-[11px] font-semibold transition-colors",
|
|
12731
12797
|
onClick: () => setShowAllFiles(true),
|
|
12732
12798
|
children: [
|
|
12733
|
-
/* @__PURE__ */
|
|
12799
|
+
/* @__PURE__ */ jsx55("span", { children: translate("agentHost.agentGui.turnSummaryShowMoreFiles", {
|
|
12734
12800
|
count: hiddenFileCount
|
|
12735
12801
|
}) }),
|
|
12736
|
-
/* @__PURE__ */
|
|
12802
|
+
/* @__PURE__ */ jsx55(ChevronDown7, { size: 16, strokeWidth: 2.2, "aria-hidden": "true" })
|
|
12737
12803
|
]
|
|
12738
12804
|
}
|
|
12739
|
-
) : hiddenFileCount > 0 ? /* @__PURE__ */
|
|
12805
|
+
) : hiddenFileCount > 0 ? /* @__PURE__ */ jsxs42(
|
|
12740
12806
|
"button",
|
|
12741
12807
|
{
|
|
12742
12808
|
type: "button",
|
|
12743
12809
|
className: "agent-turn-summary-card__toggle-more flex w-full items-center gap-2 px-4 py-2.5 text-left text-[11px] font-semibold transition-colors",
|
|
12744
12810
|
onClick: () => setShowAllFiles(false),
|
|
12745
12811
|
children: [
|
|
12746
|
-
/* @__PURE__ */
|
|
12747
|
-
/* @__PURE__ */
|
|
12812
|
+
/* @__PURE__ */ jsx55("span", { children: translate("agentHost.agentGui.turnSummaryShowFewerFiles") }),
|
|
12813
|
+
/* @__PURE__ */ jsx55(
|
|
12748
12814
|
ChevronRight7,
|
|
12749
12815
|
{
|
|
12750
12816
|
size: 16,
|
|
@@ -12775,10 +12841,10 @@ function TurnSummaryFileCard({
|
|
|
12775
12841
|
const canOpen = Boolean(action && onLinkAction);
|
|
12776
12842
|
const stats = summarizeFileDiff(file);
|
|
12777
12843
|
const preview = filePreview(file);
|
|
12778
|
-
return /* @__PURE__ */
|
|
12779
|
-
/* @__PURE__ */
|
|
12780
|
-
/* @__PURE__ */
|
|
12781
|
-
/* @__PURE__ */
|
|
12844
|
+
return /* @__PURE__ */ jsxs42("div", { className: "agent-turn-summary-card__file", children: [
|
|
12845
|
+
/* @__PURE__ */ jsxs42("div", { className: "agent-turn-summary-card__file-row flex min-w-0 items-center gap-2.5 overflow-hidden px-4 py-2.5", children: [
|
|
12846
|
+
/* @__PURE__ */ jsxs42("div", { className: "flex min-w-0 flex-1 items-center gap-2.5", children: [
|
|
12847
|
+
/* @__PURE__ */ jsxs42(
|
|
12782
12848
|
"button",
|
|
12783
12849
|
{
|
|
12784
12850
|
type: "button",
|
|
@@ -12786,15 +12852,21 @@ function TurnSummaryFileCard({
|
|
|
12786
12852
|
"aria-expanded": expanded,
|
|
12787
12853
|
onClick: onToggle,
|
|
12788
12854
|
children: [
|
|
12789
|
-
/* @__PURE__ */
|
|
12855
|
+
/* @__PURE__ */ jsx55("div", { className: "min-w-0 flex-1 overflow-hidden", children: /* @__PURE__ */ jsxs42(
|
|
12790
12856
|
"span",
|
|
12791
12857
|
{
|
|
12792
|
-
className: `agent-turn-summary-card__path
|
|
12858
|
+
className: `agent-turn-summary-card__path flex min-w-0 max-w-full overflow-hidden whitespace-nowrap text-[13px] font-medium leading-5 text-[var(--text-secondary)] ${file.changeType === "deleted" ? "line-through" : ""}`,
|
|
12793
12859
|
title: file.path,
|
|
12794
|
-
children:
|
|
12860
|
+
children: [
|
|
12861
|
+
file.directory ? /* @__PURE__ */ jsxs42("span", { className: "agent-turn-summary-card__path-directory", children: [
|
|
12862
|
+
file.directory,
|
|
12863
|
+
"/"
|
|
12864
|
+
] }) : null,
|
|
12865
|
+
/* @__PURE__ */ jsx55("span", { className: "agent-turn-summary-card__path-file", children: file.fileName })
|
|
12866
|
+
]
|
|
12795
12867
|
}
|
|
12796
12868
|
) }),
|
|
12797
|
-
/* @__PURE__ */
|
|
12869
|
+
/* @__PURE__ */ jsx55("span", { className: "shrink-0 text-[var(--text-tertiary)] opacity-0 transition-opacity group-hover/file-toggle:opacity-100 group-focus-visible/file-toggle:opacity-100", children: /* @__PURE__ */ jsx55(
|
|
12798
12870
|
ChevronRight7,
|
|
12799
12871
|
{
|
|
12800
12872
|
size: 14,
|
|
@@ -12806,18 +12878,18 @@ function TurnSummaryFileCard({
|
|
|
12806
12878
|
]
|
|
12807
12879
|
}
|
|
12808
12880
|
),
|
|
12809
|
-
/* @__PURE__ */
|
|
12810
|
-
stats.added > 0 ? /* @__PURE__ */
|
|
12881
|
+
/* @__PURE__ */ jsxs42("span", { className: "ml-auto inline-flex shrink-0 items-center gap-2 text-[11px] font-semibold", children: [
|
|
12882
|
+
stats.added > 0 ? /* @__PURE__ */ jsxs42("span", { className: "workspace-agents-status-panel__detail-tool-diff-added", children: [
|
|
12811
12883
|
"+",
|
|
12812
12884
|
stats.added
|
|
12813
12885
|
] }) : null,
|
|
12814
|
-
stats.removed > 0 ? /* @__PURE__ */
|
|
12886
|
+
stats.removed > 0 ? /* @__PURE__ */ jsxs42("span", { className: "workspace-agents-status-panel__detail-tool-diff-removed", children: [
|
|
12815
12887
|
"-",
|
|
12816
12888
|
stats.removed
|
|
12817
12889
|
] }) : null
|
|
12818
12890
|
] })
|
|
12819
12891
|
] }),
|
|
12820
|
-
canOpen ? /* @__PURE__ */
|
|
12892
|
+
canOpen ? /* @__PURE__ */ jsx55(
|
|
12821
12893
|
CanvasNodeGhostIconButton,
|
|
12822
12894
|
{
|
|
12823
12895
|
"aria-label": translate(
|
|
@@ -12829,7 +12901,7 @@ function TurnSummaryFileCard({
|
|
|
12829
12901
|
onClick: () => {
|
|
12830
12902
|
onLinkAction?.(action);
|
|
12831
12903
|
},
|
|
12832
|
-
children: /* @__PURE__ */
|
|
12904
|
+
children: /* @__PURE__ */ jsx55(
|
|
12833
12905
|
DirectLinedIcon,
|
|
12834
12906
|
{
|
|
12835
12907
|
width: 14,
|
|
@@ -12841,12 +12913,12 @@ function TurnSummaryFileCard({
|
|
|
12841
12913
|
}
|
|
12842
12914
|
) : null
|
|
12843
12915
|
] }),
|
|
12844
|
-
preview ? /* @__PURE__ */
|
|
12916
|
+
preview ? /* @__PURE__ */ jsx55(CollapsibleReveal, { expanded, preMountOnIdle: true, children: /* @__PURE__ */ jsx55("div", { className: "agent-turn-summary-card__preview rounded-none px-4 pb-3 pt-2", children: preview }) }) : null
|
|
12845
12917
|
] });
|
|
12846
12918
|
}
|
|
12847
12919
|
function filePreview(file) {
|
|
12848
12920
|
if (file.changeType === "created" && file.content?.trim()) {
|
|
12849
|
-
return /* @__PURE__ */
|
|
12921
|
+
return /* @__PURE__ */ jsx55(
|
|
12850
12922
|
AgentCodeBlock,
|
|
12851
12923
|
{
|
|
12852
12924
|
path: file.path,
|
|
@@ -12858,7 +12930,7 @@ function filePreview(file) {
|
|
|
12858
12930
|
);
|
|
12859
12931
|
}
|
|
12860
12932
|
if (file.unifiedDiff?.trim()) {
|
|
12861
|
-
return /* @__PURE__ */
|
|
12933
|
+
return /* @__PURE__ */ jsx55(
|
|
12862
12934
|
AgentUnifiedPatchViewer,
|
|
12863
12935
|
{
|
|
12864
12936
|
path: file.path,
|
|
@@ -12869,7 +12941,7 @@ function filePreview(file) {
|
|
|
12869
12941
|
);
|
|
12870
12942
|
}
|
|
12871
12943
|
if (file.changeType === "created" && file.newString?.trim()) {
|
|
12872
|
-
return /* @__PURE__ */
|
|
12944
|
+
return /* @__PURE__ */ jsx55(
|
|
12873
12945
|
AgentCodeBlock,
|
|
12874
12946
|
{
|
|
12875
12947
|
path: file.path,
|
|
@@ -12881,7 +12953,7 @@ function filePreview(file) {
|
|
|
12881
12953
|
);
|
|
12882
12954
|
}
|
|
12883
12955
|
if (file.oldString?.trim() || file.newString?.trim()) {
|
|
12884
|
-
return /* @__PURE__ */
|
|
12956
|
+
return /* @__PURE__ */ jsx55(
|
|
12885
12957
|
AgentMonacoDiffViewer,
|
|
12886
12958
|
{
|
|
12887
12959
|
path: file.path,
|
|
@@ -12893,7 +12965,7 @@ function filePreview(file) {
|
|
|
12893
12965
|
);
|
|
12894
12966
|
}
|
|
12895
12967
|
if (file.content?.trim()) {
|
|
12896
|
-
return /* @__PURE__ */
|
|
12968
|
+
return /* @__PURE__ */ jsx55(
|
|
12897
12969
|
AgentCodeBlock,
|
|
12898
12970
|
{
|
|
12899
12971
|
path: file.path,
|
|
@@ -12985,7 +13057,7 @@ function summarizeFileDiff(file) {
|
|
|
12985
13057
|
}
|
|
12986
13058
|
|
|
12987
13059
|
// shared/agentConversation/components/AgentTranscriptItemView.tsx
|
|
12988
|
-
import { jsx as
|
|
13060
|
+
import { jsx as jsx56 } from "react/jsx-runtime";
|
|
12989
13061
|
var AgentTranscriptItemView = memo2(function AgentTranscriptItemView2({
|
|
12990
13062
|
workspaceRoot,
|
|
12991
13063
|
basePath,
|
|
@@ -13019,7 +13091,7 @@ var AgentTranscriptItemView = memo2(function AgentTranscriptItemView2({
|
|
|
13019
13091
|
);
|
|
13020
13092
|
switch (row.kind) {
|
|
13021
13093
|
case "message":
|
|
13022
|
-
return /* @__PURE__ */
|
|
13094
|
+
return /* @__PURE__ */ jsx56(
|
|
13023
13095
|
AgentMessageBlock,
|
|
13024
13096
|
{
|
|
13025
13097
|
workspaceRoot,
|
|
@@ -13037,7 +13109,7 @@ var AgentTranscriptItemView = memo2(function AgentTranscriptItemView2({
|
|
|
13037
13109
|
}
|
|
13038
13110
|
);
|
|
13039
13111
|
case "tool-group":
|
|
13040
|
-
return /* @__PURE__ */
|
|
13112
|
+
return /* @__PURE__ */ jsx56(
|
|
13041
13113
|
AgentToolGroupRow,
|
|
13042
13114
|
{
|
|
13043
13115
|
row,
|
|
@@ -13053,7 +13125,7 @@ var AgentTranscriptItemView = memo2(function AgentTranscriptItemView2({
|
|
|
13053
13125
|
}
|
|
13054
13126
|
);
|
|
13055
13127
|
case "turn-summary":
|
|
13056
|
-
return /* @__PURE__ */
|
|
13128
|
+
return /* @__PURE__ */ jsx56(
|
|
13057
13129
|
AgentTurnSummaryRow,
|
|
13058
13130
|
{
|
|
13059
13131
|
row,
|
|
@@ -13064,7 +13136,7 @@ var AgentTranscriptItemView = memo2(function AgentTranscriptItemView2({
|
|
|
13064
13136
|
}
|
|
13065
13137
|
);
|
|
13066
13138
|
case "processing":
|
|
13067
|
-
return /* @__PURE__ */
|
|
13139
|
+
return /* @__PURE__ */ jsx56(AgentProcessingRow, { row, label: labels.processing });
|
|
13068
13140
|
}
|
|
13069
13141
|
});
|
|
13070
13142
|
|
|
@@ -13185,7 +13257,7 @@ function looksLikeTableSeparator(line) {
|
|
|
13185
13257
|
}
|
|
13186
13258
|
|
|
13187
13259
|
// shared/agentConversation/components/AgentTranscriptView.tsx
|
|
13188
|
-
import { Fragment as Fragment7, jsx as
|
|
13260
|
+
import { Fragment as Fragment7, jsx as jsx57, jsxs as jsxs43 } from "react/jsx-runtime";
|
|
13189
13261
|
var AGENT_TRANSCRIPT_VIRTUALIZATION_OVERSCAN = 6;
|
|
13190
13262
|
var AGENT_TRANSCRIPT_ESTIMATED_TURN_HEIGHT_PX = 280;
|
|
13191
13263
|
var AGENT_TRANSCRIPT_TURN_GAP_PX = 12;
|
|
@@ -13280,8 +13352,8 @@ var AgentTranscriptView = memo3(function AgentTranscriptView2({
|
|
|
13280
13352
|
const rowKey = rowKeys[rowIndex] ?? transcriptRowKey(row);
|
|
13281
13353
|
const showTurnDivider = dividerRowIndexes.has(rowIndex);
|
|
13282
13354
|
const shouldAnimateEnter = row.kind !== "processing" && enteringRowKeys.has(rowKey);
|
|
13283
|
-
return /* @__PURE__ */
|
|
13284
|
-
showTurnDivider ? /* @__PURE__ */
|
|
13355
|
+
return /* @__PURE__ */ jsxs43(Fragment6, { children: [
|
|
13356
|
+
showTurnDivider ? /* @__PURE__ */ jsx57(
|
|
13285
13357
|
"div",
|
|
13286
13358
|
{
|
|
13287
13359
|
className: "h-px w-full flex-none bg-[var(--line-2,var(--tutti-line-2))]",
|
|
@@ -13289,14 +13361,14 @@ var AgentTranscriptView = memo3(function AgentTranscriptView2({
|
|
|
13289
13361
|
"aria-hidden": "true"
|
|
13290
13362
|
}
|
|
13291
13363
|
) : null,
|
|
13292
|
-
/* @__PURE__ */
|
|
13364
|
+
/* @__PURE__ */ jsx57(
|
|
13293
13365
|
"div",
|
|
13294
13366
|
{
|
|
13295
13367
|
className: "agent-gui-transcript-row",
|
|
13296
13368
|
"data-agent-transcript-row": rowKey,
|
|
13297
13369
|
"data-agent-transcript-row-kind": row.kind,
|
|
13298
13370
|
"data-agent-transcript-row-enter": shouldAnimateEnter ? "true" : void 0,
|
|
13299
|
-
children: /* @__PURE__ */
|
|
13371
|
+
children: /* @__PURE__ */ jsx57(
|
|
13300
13372
|
AgentTranscriptItemView,
|
|
13301
13373
|
{
|
|
13302
13374
|
workspaceRoot,
|
|
@@ -13331,7 +13403,7 @@ var AgentTranscriptView = memo3(function AgentTranscriptView2({
|
|
|
13331
13403
|
AGENT_TRANSCRIPT_FALLBACK_TURN_COUNT
|
|
13332
13404
|
) + fallbackIndex) * AGENT_TRANSCRIPT_ESTIMATED_TURN_HEIGHT_PX
|
|
13333
13405
|
})) : rowVirtualizer.getVirtualItems();
|
|
13334
|
-
return /* @__PURE__ */
|
|
13406
|
+
return /* @__PURE__ */ jsx57(
|
|
13335
13407
|
"div",
|
|
13336
13408
|
{
|
|
13337
13409
|
ref: virtualizerHostRef,
|
|
@@ -13343,7 +13415,7 @@ var AgentTranscriptView = memo3(function AgentTranscriptView2({
|
|
|
13343
13415
|
if (!group) {
|
|
13344
13416
|
return null;
|
|
13345
13417
|
}
|
|
13346
|
-
return /* @__PURE__ */
|
|
13418
|
+
return /* @__PURE__ */ jsx57(
|
|
13347
13419
|
"div",
|
|
13348
13420
|
{
|
|
13349
13421
|
ref: rowVirtualizer.measureElement,
|
|
@@ -13362,7 +13434,7 @@ var AgentTranscriptView = memo3(function AgentTranscriptView2({
|
|
|
13362
13434
|
}
|
|
13363
13435
|
);
|
|
13364
13436
|
}
|
|
13365
|
-
return /* @__PURE__ */
|
|
13437
|
+
return /* @__PURE__ */ jsx57(Fragment7, { children: conversation.rows.map(renderRow) });
|
|
13366
13438
|
}, areAgentTranscriptViewPropsEqual);
|
|
13367
13439
|
function useEnteringTranscriptRows(rowKeys) {
|
|
13368
13440
|
const previousKeysRef = useRef8(null);
|
|
@@ -13423,7 +13495,7 @@ function findTurnDividerRowIndexes(turnIndexById, rows) {
|
|
|
13423
13495
|
|
|
13424
13496
|
// shared/agentConversation/components/AgentConversationFlow.tsx
|
|
13425
13497
|
import { memo as memo4 } from "react";
|
|
13426
|
-
import { Fragment as Fragment8, jsx as
|
|
13498
|
+
import { Fragment as Fragment8, jsx as jsx58 } from "react/jsx-runtime";
|
|
13427
13499
|
var AgentConversationFlow = memo4(function AgentConversationFlow2({
|
|
13428
13500
|
conversation,
|
|
13429
13501
|
isLoading,
|
|
@@ -13440,12 +13512,12 @@ var AgentConversationFlow = memo4(function AgentConversationFlow2({
|
|
|
13440
13512
|
}) {
|
|
13441
13513
|
"use memo";
|
|
13442
13514
|
if (isLoading) {
|
|
13443
|
-
return /* @__PURE__ */
|
|
13515
|
+
return /* @__PURE__ */ jsx58(AgentTranscriptSkeleton, { label: loadingLabel, testId: loadingTestId });
|
|
13444
13516
|
}
|
|
13445
13517
|
if (!conversation || conversation.rows.length === 0) {
|
|
13446
|
-
return /* @__PURE__ */
|
|
13518
|
+
return /* @__PURE__ */ jsx58(Fragment8, { children: empty });
|
|
13447
13519
|
}
|
|
13448
|
-
return /* @__PURE__ */
|
|
13520
|
+
return /* @__PURE__ */ jsx58(
|
|
13449
13521
|
AgentTranscriptView,
|
|
13450
13522
|
{
|
|
13451
13523
|
conversation,
|
|
@@ -13510,4 +13582,4 @@ export {
|
|
|
13510
13582
|
AgentConversationFlow,
|
|
13511
13583
|
useProjectedAgentConversation
|
|
13512
13584
|
};
|
|
13513
|
-
//# sourceMappingURL=chunk-
|
|
13585
|
+
//# sourceMappingURL=chunk-LWMC2YA3.js.map
|