@tutti-os/agent-gui 0.0.197 → 0.0.198
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/{AgentRichTextReadonly-BFMOFCCG.js → AgentRichTextReadonly-2BWVTYD3.js} +5 -5
- package/dist/agent-conversation/index.d.ts +3 -3
- package/dist/agent-conversation/index.js +7 -7
- package/dist/agent-gui.d.ts +18 -4
- package/dist/agent-gui.js +14 -14
- package/dist/agent-message-center/index.d.ts +1 -1
- package/dist/agent-message-center/index.js +6 -6
- package/dist/{agentGuiNodeTypes-C9Hneq2y.d.ts → agentGuiNodeTypes-DTeerTzS.d.ts} +1 -1
- package/dist/{chunk-VBQ4XTRZ.js → chunk-AEMVCADI.js} +2 -2
- package/dist/{chunk-ECQQSLB2.js → chunk-CTZPHYKU.js} +3 -3
- package/dist/{chunk-5FFQZTFI.js → chunk-D5HAVQME.js} +2 -2
- package/dist/{chunk-PN6JQWUI.js → chunk-D7WWGXPJ.js} +4 -4
- package/dist/{chunk-3MKFVFK7.js → chunk-FFLXJ5RU.js} +27 -5
- package/dist/chunk-FFLXJ5RU.js.map +1 -0
- package/dist/{chunk-BCTPYE64.js → chunk-GIF2V624.js} +4 -4
- package/dist/{chunk-2S2I7XDC.js → chunk-GKKXAO7O.js} +3 -3
- package/dist/chunk-GKKXAO7O.js.map +1 -0
- package/dist/{chunk-S7H4HT7X.js → chunk-HU3Q2FQK.js} +2 -2
- package/dist/{chunk-RKRKG6GI.js → chunk-JH6OERDW.js} +2 -2
- package/dist/{chunk-YGSGFI7V.js → chunk-NTY3JIYS.js} +1054 -838
- package/dist/chunk-NTY3JIYS.js.map +1 -0
- package/dist/{chunk-Y7F6RY5A.js → chunk-P4LUYDRL.js} +2 -2
- package/dist/{chunk-CC63DEWR.js → chunk-QCNCNAZT.js} +4 -4
- package/dist/{chunk-6PKQ3WUK.js → chunk-T3RMAGAE.js} +2 -2
- package/dist/{chunk-P5326NW3.js → chunk-YC33LHRB.js} +6 -6
- package/dist/context-mention-palette/index.js +7 -7
- package/dist/i18n/index.d.ts +26 -4
- package/dist/i18n/index.js +2 -2
- package/dist/index.d.ts +43 -7
- package/dist/index.js +14 -14
- package/dist/mention-search.js +5 -5
- package/dist/workbench/contribution.js +3 -3
- package/dist/workbench/index.js +3 -3
- package/dist/workbench/sessionTitle.js +2 -2
- package/dist/{workspaceLinkActions-BmVLZszV.d.ts → workspaceLinkActions-COfr61YO.d.ts} +1 -1
- package/package.json +16 -16
- package/dist/chunk-2S2I7XDC.js.map +0 -1
- package/dist/chunk-3MKFVFK7.js.map +0 -1
- package/dist/chunk-YGSGFI7V.js.map +0 -1
- /package/dist/{AgentRichTextReadonly-BFMOFCCG.js.map → AgentRichTextReadonly-2BWVTYD3.js.map} +0 -0
- /package/dist/{chunk-VBQ4XTRZ.js.map → chunk-AEMVCADI.js.map} +0 -0
- /package/dist/{chunk-ECQQSLB2.js.map → chunk-CTZPHYKU.js.map} +0 -0
- /package/dist/{chunk-5FFQZTFI.js.map → chunk-D5HAVQME.js.map} +0 -0
- /package/dist/{chunk-PN6JQWUI.js.map → chunk-D7WWGXPJ.js.map} +0 -0
- /package/dist/{chunk-BCTPYE64.js.map → chunk-GIF2V624.js.map} +0 -0
- /package/dist/{chunk-S7H4HT7X.js.map → chunk-HU3Q2FQK.js.map} +0 -0
- /package/dist/{chunk-RKRKG6GI.js.map → chunk-JH6OERDW.js.map} +0 -0
- /package/dist/{chunk-Y7F6RY5A.js.map → chunk-P4LUYDRL.js.map} +0 -0
- /package/dist/{chunk-CC63DEWR.js.map → chunk-QCNCNAZT.js.map} +0 -0
- /package/dist/{chunk-6PKQ3WUK.js.map → chunk-T3RMAGAE.js.map} +0 -0
- /package/dist/{chunk-P5326NW3.js.map → chunk-YC33LHRB.js.map} +0 -0
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
resolveAgentGuiSessionProviderFlatIconUrl,
|
|
16
16
|
resolveNextAgentGUIConversationRailWidthPx,
|
|
17
17
|
shouldAutoCollapseAgentGUIConversationRail
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-CTZPHYKU.js";
|
|
19
19
|
import {
|
|
20
20
|
resolveAgentGuiWorkbenchProviderLabel
|
|
21
21
|
} from "./chunk-MGSRWYRN.js";
|
|
@@ -34,7 +34,7 @@ import {
|
|
|
34
34
|
resolveAgentGUIFirstUserMessageDisplayPrompt,
|
|
35
35
|
resolveAgentGUIProviderDisplayLabel,
|
|
36
36
|
resolveAgentGUIProviderIdentity
|
|
37
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-AEMVCADI.js";
|
|
38
38
|
import {
|
|
39
39
|
AgentConversationFlow,
|
|
40
40
|
Button,
|
|
@@ -69,7 +69,7 @@ import {
|
|
|
69
69
|
toLocalShortDateTime,
|
|
70
70
|
updateAgentComposerDraft,
|
|
71
71
|
useProjectedAgentConversation
|
|
72
|
-
} from "./chunk-
|
|
72
|
+
} from "./chunk-YC33LHRB.js";
|
|
73
73
|
import {
|
|
74
74
|
agentRichTextContentToPromptText,
|
|
75
75
|
createAgentRichTextInputExtensions,
|
|
@@ -79,7 +79,7 @@ import {
|
|
|
79
79
|
plainTextToAgentRichTextInlineContent,
|
|
80
80
|
skillDescriptionForDisplay,
|
|
81
81
|
skillTriggerForPrefix
|
|
82
|
-
} from "./chunk-
|
|
82
|
+
} from "./chunk-T3RMAGAE.js";
|
|
83
83
|
import {
|
|
84
84
|
AgentEnvPanelActionProvider
|
|
85
85
|
} from "./chunk-CXC3ROXQ.js";
|
|
@@ -94,7 +94,7 @@ import {
|
|
|
94
94
|
AgentFileMentionPalette,
|
|
95
95
|
agentMentionItemKey,
|
|
96
96
|
isAgentMentionItemDisabled
|
|
97
|
-
} from "./chunk-
|
|
97
|
+
} from "./chunk-D7WWGXPJ.js";
|
|
98
98
|
import {
|
|
99
99
|
normalizeAgentGUIAgents,
|
|
100
100
|
projectAgentGUIAgentsToTargets
|
|
@@ -105,7 +105,7 @@ import {
|
|
|
105
105
|
DEFAULT_AGENT_MENTION_FILTER,
|
|
106
106
|
agentGuiScheduler,
|
|
107
107
|
buildWorkspaceAgentActivityListViewModel
|
|
108
|
-
} from "./chunk-
|
|
108
|
+
} from "./chunk-QCNCNAZT.js";
|
|
109
109
|
import {
|
|
110
110
|
AGENT_RICH_TEXT_CARET_ANCHOR,
|
|
111
111
|
agentComposerFileMentionReferences,
|
|
@@ -122,7 +122,7 @@ import {
|
|
|
122
122
|
parseMentionItemFromHref,
|
|
123
123
|
remainingAgentComposerPromptAssetSlots,
|
|
124
124
|
updateAgentComposerFileMentions
|
|
125
|
-
} from "./chunk-
|
|
125
|
+
} from "./chunk-D5HAVQME.js";
|
|
126
126
|
import {
|
|
127
127
|
AgentInteractivePromptSurface,
|
|
128
128
|
PLAN_IMPLEMENTATION_ACTION_FEEDBACK,
|
|
@@ -134,7 +134,7 @@ import {
|
|
|
134
134
|
normalizePlanIssueBudgetPreset,
|
|
135
135
|
planImplementationPromptFromPlanTurn,
|
|
136
136
|
planIssueBudgetPresetsEqual
|
|
137
|
-
} from "./chunk-
|
|
137
|
+
} from "./chunk-GIF2V624.js";
|
|
138
138
|
import {
|
|
139
139
|
useEngineSelector
|
|
140
140
|
} from "./chunk-EVQ4JY3N.js";
|
|
@@ -144,7 +144,7 @@ import {
|
|
|
144
144
|
blobToBase64,
|
|
145
145
|
normalizeAgentApprovalPurpose,
|
|
146
146
|
resolveWorkspaceLinkAction
|
|
147
|
-
} from "./chunk-
|
|
147
|
+
} from "./chunk-GKKXAO7O.js";
|
|
148
148
|
import {
|
|
149
149
|
AgentTargetPresentationProvider,
|
|
150
150
|
cn,
|
|
@@ -162,7 +162,7 @@ import {
|
|
|
162
162
|
useAgentHostApi,
|
|
163
163
|
useOptionalAgentActivityRuntime,
|
|
164
164
|
useOptionalAgentHostApi
|
|
165
|
-
} from "./chunk-
|
|
165
|
+
} from "./chunk-JH6OERDW.js";
|
|
166
166
|
import {
|
|
167
167
|
MANAGED_AGENT_ICON_FALLBACK_URL,
|
|
168
168
|
MANAGED_AGENT_ICON_URLS,
|
|
@@ -172,7 +172,7 @@ import {
|
|
|
172
172
|
AgentGuiI18nProvider,
|
|
173
173
|
translate,
|
|
174
174
|
useTranslation
|
|
175
|
-
} from "./chunk-
|
|
175
|
+
} from "./chunk-P4LUYDRL.js";
|
|
176
176
|
import {
|
|
177
177
|
isBetaAgentProvider,
|
|
178
178
|
normalizeManagedAgentProvider
|
|
@@ -15874,7 +15874,7 @@ import {
|
|
|
15874
15874
|
useCallback as useCallback50,
|
|
15875
15875
|
useMemo as useMemo37,
|
|
15876
15876
|
useRef as useRef44,
|
|
15877
|
-
useState as
|
|
15877
|
+
useState as useState33
|
|
15878
15878
|
} from "react";
|
|
15879
15879
|
import { Tooltip as Tooltip9, TooltipContent as TooltipContent9, TooltipTrigger as TooltipTrigger9 } from "@tutti-os/ui-system";
|
|
15880
15880
|
|
|
@@ -17801,7 +17801,7 @@ function AgentSessionChrome({
|
|
|
17801
17801
|
}
|
|
17802
17802
|
|
|
17803
17803
|
// agent-gui/agentGuiNode/AgentComposer.tsx
|
|
17804
|
-
import { useCallback as useCallback47, useEffect as useEffect28, useRef as useRef41, useState as
|
|
17804
|
+
import { useCallback as useCallback47, useEffect as useEffect28, useRef as useRef41, useState as useState29 } from "react";
|
|
17805
17805
|
import { repairMentionPaletteHighlight } from "@tutti-os/ui-rich-text/at-panel";
|
|
17806
17806
|
|
|
17807
17807
|
// agent-gui/agentGuiNode/AgentSlashStatusPanel.tsx
|
|
@@ -21373,7 +21373,7 @@ function useComposerPresentation(input) {
|
|
|
21373
21373
|
// agent-gui/agentGuiNode/composer/AgentComposerView.tsx
|
|
21374
21374
|
import { createPortal as createPortal4 } from "react-dom";
|
|
21375
21375
|
import {
|
|
21376
|
-
Popover as
|
|
21376
|
+
Popover as Popover5,
|
|
21377
21377
|
PopoverAnchor as PopoverAnchor2,
|
|
21378
21378
|
Tooltip as Tooltip8,
|
|
21379
21379
|
TooltipContent as TooltipContent8,
|
|
@@ -26097,8 +26097,209 @@ function AgentHandoffMenu({
|
|
|
26097
26097
|
);
|
|
26098
26098
|
}
|
|
26099
26099
|
|
|
26100
|
+
// agent-gui/agentGuiNode/composer/TuttiBudgetPopover.tsx
|
|
26101
|
+
import { useState as useState23 } from "react";
|
|
26102
|
+
import {
|
|
26103
|
+
Badge,
|
|
26104
|
+
Button as Button4,
|
|
26105
|
+
Popover as Popover3,
|
|
26106
|
+
PopoverContent as PopoverContent3,
|
|
26107
|
+
PopoverTrigger as PopoverTrigger2,
|
|
26108
|
+
Slider
|
|
26109
|
+
} from "@tutti-os/ui-system";
|
|
26110
|
+
|
|
26111
|
+
// agent-gui/agentGuiNode/composer/tuttiIntensityPreview.ts
|
|
26112
|
+
function projectTuttiIntensityPreview(intensity) {
|
|
26113
|
+
const normalized = Number.isFinite(intensity) ? Math.min(100, Math.max(0, Math.round(intensity))) : 50;
|
|
26114
|
+
const tier = normalized <= 33 ? "cost" : normalized <= 66 ? "balance" : "powerful";
|
|
26115
|
+
return {
|
|
26116
|
+
intensity: normalized,
|
|
26117
|
+
tier,
|
|
26118
|
+
modelStrength: tier === "cost" ? "economical" : tier === "balance" ? "balanced" : "mostCapable",
|
|
26119
|
+
agentCount: tier === "cost" ? "single" : tier === "balance" ? "smallGroup" : "maxParallel"
|
|
26120
|
+
};
|
|
26121
|
+
}
|
|
26122
|
+
|
|
26123
|
+
// agent-gui/agentGuiNode/composer/TuttiBudgetPopover.tsx
|
|
26124
|
+
import { jsx as jsx38, jsxs as jsxs28 } from "react/jsx-runtime";
|
|
26125
|
+
var tierTone = {
|
|
26126
|
+
cost: {
|
|
26127
|
+
badgeVariant: "success",
|
|
26128
|
+
sliderClassName: "[&_[data-slot=slider-thumb]]:border-[var(--state-success)]"
|
|
26129
|
+
},
|
|
26130
|
+
balance: {
|
|
26131
|
+
badgeVariant: "warning",
|
|
26132
|
+
sliderClassName: "[&_[data-slot=slider-thumb]]:border-[var(--state-warning)]"
|
|
26133
|
+
},
|
|
26134
|
+
powerful: {
|
|
26135
|
+
badgeVariant: "pending",
|
|
26136
|
+
sliderClassName: "[&_[data-slot=slider-thumb]]:border-[var(--tutti-purple)]"
|
|
26137
|
+
}
|
|
26138
|
+
};
|
|
26139
|
+
function TuttiBudgetPopover({
|
|
26140
|
+
children,
|
|
26141
|
+
intensity,
|
|
26142
|
+
labels,
|
|
26143
|
+
onConfirm
|
|
26144
|
+
}) {
|
|
26145
|
+
const [open, setOpen] = useState23(false);
|
|
26146
|
+
const [draftIntensity, setDraftIntensity] = useState23(intensity);
|
|
26147
|
+
const preview = projectTuttiIntensityPreview(draftIntensity);
|
|
26148
|
+
const previewTone = tierTone[preview.tier];
|
|
26149
|
+
const previewLabel = {
|
|
26150
|
+
cost: labels.previewCost,
|
|
26151
|
+
balance: labels.previewBalance,
|
|
26152
|
+
powerful: labels.previewPowerful
|
|
26153
|
+
}[preview.tier];
|
|
26154
|
+
const modelStrength = {
|
|
26155
|
+
economical: labels.modelStrengthCost,
|
|
26156
|
+
balanced: labels.modelStrengthBalance,
|
|
26157
|
+
mostCapable: labels.modelStrengthPowerful
|
|
26158
|
+
}[preview.modelStrength];
|
|
26159
|
+
const agentCount = {
|
|
26160
|
+
single: labels.agentCountCost,
|
|
26161
|
+
smallGroup: labels.agentCountBalance,
|
|
26162
|
+
maxParallel: labels.agentCountPowerful
|
|
26163
|
+
}[preview.agentCount];
|
|
26164
|
+
return /* @__PURE__ */ jsxs28(
|
|
26165
|
+
Popover3,
|
|
26166
|
+
{
|
|
26167
|
+
open,
|
|
26168
|
+
onOpenChange: (nextOpen) => {
|
|
26169
|
+
if (nextOpen) {
|
|
26170
|
+
setDraftIntensity(intensity);
|
|
26171
|
+
}
|
|
26172
|
+
setOpen(nextOpen);
|
|
26173
|
+
},
|
|
26174
|
+
children: [
|
|
26175
|
+
/* @__PURE__ */ jsx38(PopoverTrigger2, { asChild: true, children }),
|
|
26176
|
+
/* @__PURE__ */ jsxs28(
|
|
26177
|
+
PopoverContent3,
|
|
26178
|
+
{
|
|
26179
|
+
align: "start",
|
|
26180
|
+
className: "nodrag",
|
|
26181
|
+
"data-agent-tutti-budget-popover": "true",
|
|
26182
|
+
onEscapeKeyDown: (event) => {
|
|
26183
|
+
event.preventDefault();
|
|
26184
|
+
setOpen(false);
|
|
26185
|
+
},
|
|
26186
|
+
onInteractOutside: (event) => event.preventDefault(),
|
|
26187
|
+
onPointerDownOutside: (event) => event.preventDefault(),
|
|
26188
|
+
children: [
|
|
26189
|
+
/* @__PURE__ */ jsx38("div", { className: "text-[13px] font-semibold text-[var(--text-primary)]", children: labels.title }),
|
|
26190
|
+
/* @__PURE__ */ jsxs28(
|
|
26191
|
+
"div",
|
|
26192
|
+
{
|
|
26193
|
+
className: "rounded-[8px] border border-[var(--line-2)] bg-[var(--transparency-block)] p-2.5",
|
|
26194
|
+
"data-agent-tutti-budget-preview": preview.tier,
|
|
26195
|
+
children: [
|
|
26196
|
+
/* @__PURE__ */ jsxs28("div", { className: "flex items-center justify-between gap-2 text-[12px] text-[var(--text-secondary)]", children: [
|
|
26197
|
+
/* @__PURE__ */ jsx38("span", { children: labels.intensityLabel }),
|
|
26198
|
+
/* @__PURE__ */ jsx38(
|
|
26199
|
+
"span",
|
|
26200
|
+
{
|
|
26201
|
+
className: "text-[var(--text-primary)] tabular-nums",
|
|
26202
|
+
"data-agent-tutti-budget-intensity-value": "true",
|
|
26203
|
+
children: draftIntensity
|
|
26204
|
+
}
|
|
26205
|
+
)
|
|
26206
|
+
] }),
|
|
26207
|
+
/* @__PURE__ */ jsxs28("div", { className: "mt-2", children: [
|
|
26208
|
+
/* @__PURE__ */ jsx38(
|
|
26209
|
+
Slider,
|
|
26210
|
+
{
|
|
26211
|
+
"aria-label": labels.intensityLabel,
|
|
26212
|
+
className: `[&_[data-slot=slider-range]]:bg-transparent [&_[data-slot=slider-track]]:bg-[linear-gradient(90deg,var(--state-success)_0%,var(--state-warning)_50%,var(--tutti-purple)_100%)] ${previewTone.sliderClassName}`,
|
|
26213
|
+
"data-agent-tutti-budget-intensity-slider": "true",
|
|
26214
|
+
"data-agent-tutti-budget-slider-tone": preview.tier,
|
|
26215
|
+
max: 100,
|
|
26216
|
+
min: 0,
|
|
26217
|
+
step: 1,
|
|
26218
|
+
value: [draftIntensity],
|
|
26219
|
+
onValueChange: (values) => setDraftIntensity(values[0] ?? draftIntensity)
|
|
26220
|
+
}
|
|
26221
|
+
),
|
|
26222
|
+
/* @__PURE__ */ jsxs28("div", { className: "mt-1 flex items-center justify-between gap-2 text-[10px] font-medium", children: [
|
|
26223
|
+
/* @__PURE__ */ jsx38("span", { className: "text-[var(--state-success)]", children: labels.previewCost }),
|
|
26224
|
+
/* @__PURE__ */ jsx38("span", { className: "text-[var(--state-warning)]", children: labels.previewBalance }),
|
|
26225
|
+
/* @__PURE__ */ jsx38("span", { className: "text-[var(--tutti-purple)]", children: labels.previewPowerful })
|
|
26226
|
+
] })
|
|
26227
|
+
] }),
|
|
26228
|
+
/* @__PURE__ */ jsxs28(
|
|
26229
|
+
"div",
|
|
26230
|
+
{
|
|
26231
|
+
"aria-live": "polite",
|
|
26232
|
+
className: "mt-2 flex items-center justify-between gap-2 border-t border-[var(--line-2)] pt-2",
|
|
26233
|
+
children: [
|
|
26234
|
+
/* @__PURE__ */ jsx38("span", { className: "text-[11px] font-medium text-[var(--text-secondary)]", children: labels.previewTitle }),
|
|
26235
|
+
/* @__PURE__ */ jsx38(Badge, { size: "sm", variant: previewTone.badgeVariant, children: previewLabel })
|
|
26236
|
+
]
|
|
26237
|
+
}
|
|
26238
|
+
),
|
|
26239
|
+
/* @__PURE__ */ jsxs28("div", { className: "mt-2 grid grid-cols-2 gap-2 text-[10px]", children: [
|
|
26240
|
+
/* @__PURE__ */ jsxs28("div", { className: "min-w-0", children: [
|
|
26241
|
+
/* @__PURE__ */ jsx38("div", { className: "text-[var(--text-tertiary)]", children: labels.modelStrengthLabel }),
|
|
26242
|
+
/* @__PURE__ */ jsx38(
|
|
26243
|
+
"div",
|
|
26244
|
+
{
|
|
26245
|
+
className: "truncate font-medium text-[var(--text-primary)]",
|
|
26246
|
+
"data-agent-tutti-budget-model-strength": "true",
|
|
26247
|
+
children: modelStrength
|
|
26248
|
+
}
|
|
26249
|
+
)
|
|
26250
|
+
] }),
|
|
26251
|
+
/* @__PURE__ */ jsxs28("div", { className: "min-w-0", children: [
|
|
26252
|
+
/* @__PURE__ */ jsx38("div", { className: "text-[var(--text-tertiary)]", children: labels.agentCountLabel }),
|
|
26253
|
+
/* @__PURE__ */ jsx38(
|
|
26254
|
+
"div",
|
|
26255
|
+
{
|
|
26256
|
+
className: "truncate font-medium text-[var(--text-primary)]",
|
|
26257
|
+
"data-agent-tutti-budget-agent-count": "true",
|
|
26258
|
+
children: agentCount
|
|
26259
|
+
}
|
|
26260
|
+
)
|
|
26261
|
+
] })
|
|
26262
|
+
] }),
|
|
26263
|
+
/* @__PURE__ */ jsx38("p", { className: "mt-2 mb-0 text-[10px] leading-[1.35] text-[var(--text-tertiary)]", children: labels.previewHint })
|
|
26264
|
+
]
|
|
26265
|
+
}
|
|
26266
|
+
),
|
|
26267
|
+
/* @__PURE__ */ jsxs28("div", { className: "flex items-center justify-end gap-2", children: [
|
|
26268
|
+
/* @__PURE__ */ jsx38(
|
|
26269
|
+
Button4,
|
|
26270
|
+
{
|
|
26271
|
+
"data-agent-tutti-budget-cancel": "true",
|
|
26272
|
+
size: "sm",
|
|
26273
|
+
type: "button",
|
|
26274
|
+
variant: "secondary",
|
|
26275
|
+
onClick: () => setOpen(false),
|
|
26276
|
+
children: labels.cancel
|
|
26277
|
+
}
|
|
26278
|
+
),
|
|
26279
|
+
/* @__PURE__ */ jsx38(
|
|
26280
|
+
Button4,
|
|
26281
|
+
{
|
|
26282
|
+
"data-agent-tutti-budget-confirm": "true",
|
|
26283
|
+
size: "sm",
|
|
26284
|
+
type: "button",
|
|
26285
|
+
onClick: () => {
|
|
26286
|
+
onConfirm(draftIntensity);
|
|
26287
|
+
setOpen(false);
|
|
26288
|
+
},
|
|
26289
|
+
children: labels.confirm
|
|
26290
|
+
}
|
|
26291
|
+
)
|
|
26292
|
+
] })
|
|
26293
|
+
]
|
|
26294
|
+
}
|
|
26295
|
+
)
|
|
26296
|
+
]
|
|
26297
|
+
}
|
|
26298
|
+
);
|
|
26299
|
+
}
|
|
26300
|
+
|
|
26100
26301
|
// agent-gui/agentGuiNode/composer/ComposerFooter.tsx
|
|
26101
|
-
import { Fragment as Fragment12, jsx as
|
|
26302
|
+
import { Fragment as Fragment12, jsx as jsx39, jsxs as jsxs29 } from "react/jsx-runtime";
|
|
26102
26303
|
function ComposerFooter({
|
|
26103
26304
|
workspaceId: _workspaceId,
|
|
26104
26305
|
labels,
|
|
@@ -26118,6 +26319,7 @@ function ComposerFooter({
|
|
|
26118
26319
|
isPlanModeActive,
|
|
26119
26320
|
isTuttiModeActive,
|
|
26120
26321
|
isTuttiModeUpdating,
|
|
26322
|
+
tuttiModeOrchestrationIntensity,
|
|
26121
26323
|
composerActionButton,
|
|
26122
26324
|
quickPromptControl,
|
|
26123
26325
|
showHandoffSelect,
|
|
@@ -26142,14 +26344,15 @@ function ComposerFooter({
|
|
|
26142
26344
|
onClearGoalMode: clearGoalModeBadge,
|
|
26143
26345
|
draftPrompt: _draftPrompt,
|
|
26144
26346
|
onClearPlanMode,
|
|
26145
|
-
onClearTuttiMode
|
|
26347
|
+
onClearTuttiMode,
|
|
26348
|
+
onTuttiModeOrchestrationIntensityChange
|
|
26146
26349
|
}) {
|
|
26147
26350
|
const showSettingsLoadingPlaceholders = composerSettings.isSettingsLoading;
|
|
26148
|
-
return /* @__PURE__ */
|
|
26149
|
-
/* @__PURE__ */
|
|
26150
|
-
/* @__PURE__ */
|
|
26151
|
-
previewMode ? /* @__PURE__ */
|
|
26152
|
-
/* @__PURE__ */
|
|
26351
|
+
return /* @__PURE__ */ jsx39(Fragment12, { children: /* @__PURE__ */ jsxs29("div", { className: AgentGUINode_styles_default.composerFooter, children: [
|
|
26352
|
+
/* @__PURE__ */ jsxs29("div", { className: composerStyles.footerGroup, children: [
|
|
26353
|
+
/* @__PURE__ */ jsxs29("div", { className: "inline-flex shrink-0 items-center gap-1", children: [
|
|
26354
|
+
previewMode ? /* @__PURE__ */ jsx39(TooltipProvider4, { delayDuration: 120, children: /* @__PURE__ */ jsxs29(Tooltip5, { children: [
|
|
26355
|
+
/* @__PURE__ */ jsx39(TooltipTrigger5, { asChild: true, children: /* @__PURE__ */ jsx39(
|
|
26153
26356
|
"button",
|
|
26154
26357
|
{
|
|
26155
26358
|
type: "button",
|
|
@@ -26159,7 +26362,7 @@ function ComposerFooter({
|
|
|
26159
26362
|
AgentGUINode_styles_default.composerReferenceTrigger,
|
|
26160
26363
|
"group w-auto justify-center text-[var(--agent-gui-text-secondary)]"
|
|
26161
26364
|
),
|
|
26162
|
-
children: /* @__PURE__ */
|
|
26365
|
+
children: /* @__PURE__ */ jsx39(
|
|
26163
26366
|
AgentComposerMaskIcon,
|
|
26164
26367
|
{
|
|
26165
26368
|
iconUrl: add_lined_default,
|
|
@@ -26168,8 +26371,8 @@ function ComposerFooter({
|
|
|
26168
26371
|
)
|
|
26169
26372
|
}
|
|
26170
26373
|
) }),
|
|
26171
|
-
/* @__PURE__ */
|
|
26172
|
-
] }) }) : /* @__PURE__ */
|
|
26374
|
+
/* @__PURE__ */ jsx39(TooltipContent5, { side: "top", children: labels.addContent })
|
|
26375
|
+
] }) }) : /* @__PURE__ */ jsx39(
|
|
26173
26376
|
Select3,
|
|
26174
26377
|
{
|
|
26175
26378
|
open: false,
|
|
@@ -26185,8 +26388,8 @@ function ComposerFooter({
|
|
|
26185
26388
|
void handleWorkspaceReferencePicker();
|
|
26186
26389
|
}
|
|
26187
26390
|
},
|
|
26188
|
-
children: /* @__PURE__ */
|
|
26189
|
-
/* @__PURE__ */
|
|
26391
|
+
children: /* @__PURE__ */ jsx39(TooltipProvider4, { delayDuration: 120, children: /* @__PURE__ */ jsxs29(Tooltip5, { children: [
|
|
26392
|
+
/* @__PURE__ */ jsx39(TooltipTrigger5, { asChild: true, children: /* @__PURE__ */ jsx39("span", { className: "inline-flex", children: /* @__PURE__ */ jsx39(
|
|
26190
26393
|
SelectTrigger3,
|
|
26191
26394
|
{
|
|
26192
26395
|
size: "sm",
|
|
@@ -26196,7 +26399,7 @@ function ComposerFooter({
|
|
|
26196
26399
|
AgentGUINode_styles_default.composerReferenceTrigger,
|
|
26197
26400
|
"group w-auto justify-center text-[var(--agent-gui-text-secondary)] [&>svg:last-child]:hidden"
|
|
26198
26401
|
),
|
|
26199
|
-
children: /* @__PURE__ */
|
|
26402
|
+
children: /* @__PURE__ */ jsx39(
|
|
26200
26403
|
AgentComposerMaskIcon,
|
|
26201
26404
|
{
|
|
26202
26405
|
iconUrl: add_lined_default,
|
|
@@ -26205,12 +26408,12 @@ function ComposerFooter({
|
|
|
26205
26408
|
)
|
|
26206
26409
|
}
|
|
26207
26410
|
) }) }),
|
|
26208
|
-
/* @__PURE__ */
|
|
26411
|
+
/* @__PURE__ */ jsx39(TooltipContent5, { side: "top", children: labels.addContent })
|
|
26209
26412
|
] }) })
|
|
26210
26413
|
}
|
|
26211
26414
|
),
|
|
26212
|
-
/* @__PURE__ */
|
|
26213
|
-
/* @__PURE__ */
|
|
26415
|
+
/* @__PURE__ */ jsx39(TooltipProvider4, { delayDuration: 120, children: /* @__PURE__ */ jsxs29(Tooltip5, { children: [
|
|
26416
|
+
/* @__PURE__ */ jsx39(TooltipTrigger5, { asChild: true, children: /* @__PURE__ */ jsx39(
|
|
26214
26417
|
"button",
|
|
26215
26418
|
{
|
|
26216
26419
|
type: "button",
|
|
@@ -26224,7 +26427,7 @@ function ComposerFooter({
|
|
|
26224
26427
|
"data-testid": "agent-gui-composer-mention-trigger",
|
|
26225
26428
|
onMouseDown: (event) => event.preventDefault(),
|
|
26226
26429
|
onClick: handleMentionPaletteButton,
|
|
26227
|
-
children: /* @__PURE__ */
|
|
26430
|
+
children: /* @__PURE__ */ jsx39(
|
|
26228
26431
|
"span",
|
|
26229
26432
|
{
|
|
26230
26433
|
"aria-hidden": true,
|
|
@@ -26243,10 +26446,10 @@ function ComposerFooter({
|
|
|
26243
26446
|
)
|
|
26244
26447
|
}
|
|
26245
26448
|
) }),
|
|
26246
|
-
/* @__PURE__ */
|
|
26449
|
+
/* @__PURE__ */ jsx39(TooltipContent5, { side: "top", children: labels.mentionPalette })
|
|
26247
26450
|
] }) })
|
|
26248
26451
|
] }),
|
|
26249
|
-
showHandoffSelect ? /* @__PURE__ */
|
|
26452
|
+
showHandoffSelect ? /* @__PURE__ */ jsx39(
|
|
26250
26453
|
AgentHandoffMenu,
|
|
26251
26454
|
{
|
|
26252
26455
|
disabled: handoffDisabled,
|
|
@@ -26264,7 +26467,7 @@ function ComposerFooter({
|
|
|
26264
26467
|
onHandoffConversation?.(target);
|
|
26265
26468
|
}
|
|
26266
26469
|
}
|
|
26267
|
-
) : showProviderSelect && selectedProviderSwitchTarget ? /* @__PURE__ */
|
|
26470
|
+
) : showProviderSelect && selectedProviderSwitchTarget ? /* @__PURE__ */ jsxs29(
|
|
26268
26471
|
Select3,
|
|
26269
26472
|
{
|
|
26270
26473
|
value: selectedProviderSwitchTarget.targetId,
|
|
@@ -26282,7 +26485,7 @@ function ComposerFooter({
|
|
|
26282
26485
|
});
|
|
26283
26486
|
},
|
|
26284
26487
|
children: [
|
|
26285
|
-
/* @__PURE__ */
|
|
26488
|
+
/* @__PURE__ */ jsx39(
|
|
26286
26489
|
SelectTrigger3,
|
|
26287
26490
|
{
|
|
26288
26491
|
size: "sm",
|
|
@@ -26293,8 +26496,8 @@ function ComposerFooter({
|
|
|
26293
26496
|
AgentGUINode_styles_default.composerProviderSelect,
|
|
26294
26497
|
"w-auto max-w-[180px]"
|
|
26295
26498
|
),
|
|
26296
|
-
children: /* @__PURE__ */
|
|
26297
|
-
/* @__PURE__ */
|
|
26499
|
+
children: /* @__PURE__ */ jsxs29("span", { className: "flex min-w-0 items-center gap-1.5", children: [
|
|
26500
|
+
/* @__PURE__ */ jsx39(
|
|
26298
26501
|
"img",
|
|
26299
26502
|
{
|
|
26300
26503
|
alt: "",
|
|
@@ -26305,22 +26508,22 @@ function ComposerFooter({
|
|
|
26305
26508
|
)
|
|
26306
26509
|
}
|
|
26307
26510
|
),
|
|
26308
|
-
/* @__PURE__ */
|
|
26511
|
+
/* @__PURE__ */ jsx39("span", { className: "min-w-0 truncate", children: selectedProviderLabel })
|
|
26309
26512
|
] })
|
|
26310
26513
|
}
|
|
26311
26514
|
),
|
|
26312
|
-
/* @__PURE__ */
|
|
26515
|
+
/* @__PURE__ */ jsx39(
|
|
26313
26516
|
SelectContent3,
|
|
26314
26517
|
{
|
|
26315
26518
|
align: "start",
|
|
26316
26519
|
className: cn(AgentGUINode_styles_default.composerMenuContent, "min-w-[190px]"),
|
|
26317
|
-
children: providerMenuTargets.map((target) => /* @__PURE__ */
|
|
26520
|
+
children: providerMenuTargets.map((target) => /* @__PURE__ */ jsx39(
|
|
26318
26521
|
SelectItem3,
|
|
26319
26522
|
{
|
|
26320
26523
|
value: target.targetId,
|
|
26321
26524
|
className: cn(AgentGUINode_styles_default.composerMenuItem, "gap-2"),
|
|
26322
|
-
children: /* @__PURE__ */
|
|
26323
|
-
/* @__PURE__ */
|
|
26525
|
+
children: /* @__PURE__ */ jsxs29("span", { className: "flex min-w-0 items-center gap-1.5", children: [
|
|
26526
|
+
/* @__PURE__ */ jsx39(
|
|
26324
26527
|
"img",
|
|
26325
26528
|
{
|
|
26326
26529
|
alt: "",
|
|
@@ -26329,7 +26532,7 @@ function ComposerFooter({
|
|
|
26329
26532
|
src: resolveComposerProviderTargetIconUrl(target)
|
|
26330
26533
|
}
|
|
26331
26534
|
),
|
|
26332
|
-
/* @__PURE__ */
|
|
26535
|
+
/* @__PURE__ */ jsx39("span", { className: "min-w-0 truncate", children: target.label })
|
|
26333
26536
|
] })
|
|
26334
26537
|
},
|
|
26335
26538
|
`${target.provider}:${target.targetId}`
|
|
@@ -26340,7 +26543,7 @@ function ComposerFooter({
|
|
|
26340
26543
|
}
|
|
26341
26544
|
) : null,
|
|
26342
26545
|
quickPromptControl,
|
|
26343
|
-
composerSettings.supportsPlanMode && isPlanModeActive ? /* @__PURE__ */
|
|
26546
|
+
composerSettings.supportsPlanMode && isPlanModeActive ? /* @__PURE__ */ jsx39(
|
|
26344
26547
|
"button",
|
|
26345
26548
|
{
|
|
26346
26549
|
type: "button",
|
|
@@ -26354,38 +26557,82 @@ function ComposerFooter({
|
|
|
26354
26557
|
"disabled:cursor-not-allowed disabled:opacity-60"
|
|
26355
26558
|
),
|
|
26356
26559
|
onClick: onClearPlanMode,
|
|
26357
|
-
children: /* @__PURE__ */
|
|
26358
|
-
/* @__PURE__ */
|
|
26560
|
+
children: /* @__PURE__ */ jsxs29("span", { className: "flex min-w-0 items-center gap-1.5 overflow-hidden", children: [
|
|
26561
|
+
/* @__PURE__ */ jsx39(
|
|
26359
26562
|
RemovableBadgeIcon,
|
|
26360
26563
|
{
|
|
26361
|
-
icon: /* @__PURE__ */
|
|
26564
|
+
icon: /* @__PURE__ */ jsx39(ListChecks2, { className: "size-3.5" })
|
|
26362
26565
|
}
|
|
26363
26566
|
),
|
|
26364
|
-
/* @__PURE__ */
|
|
26365
|
-
] })
|
|
26366
|
-
}
|
|
26367
|
-
) : null,
|
|
26368
|
-
isTuttiModeActive ? /* @__PURE__ */ jsx38(
|
|
26369
|
-
"button",
|
|
26370
|
-
{
|
|
26371
|
-
type: "button",
|
|
26372
|
-
disabled: isTuttiModeUpdating,
|
|
26373
|
-
"aria-label": labels.tuttiModeLabel,
|
|
26374
|
-
title: labels.tuttiModeDescription,
|
|
26375
|
-
"data-agent-tutti-mode-badge": "true",
|
|
26376
|
-
className: cn(
|
|
26377
|
-
AgentGUINode_styles_default.composerMenuTrigger,
|
|
26378
|
-
"group w-auto",
|
|
26379
|
-
"disabled:cursor-not-allowed disabled:opacity-60"
|
|
26380
|
-
),
|
|
26381
|
-
onClick: onClearTuttiMode,
|
|
26382
|
-
children: /* @__PURE__ */ jsxs28("span", { className: "flex min-w-0 items-center gap-1.5 overflow-hidden", children: [
|
|
26383
|
-
/* @__PURE__ */ jsx38(RemovableBadgeIcon, { icon: /* @__PURE__ */ jsx38(Sparkles, { className: "size-3.5" }) }),
|
|
26384
|
-
/* @__PURE__ */ jsx38("span", { className: "min-w-0 truncate", children: labels.tuttiModeLabel })
|
|
26567
|
+
/* @__PURE__ */ jsx39("span", { className: "min-w-0 truncate", children: labels.planModeLabel })
|
|
26385
26568
|
] })
|
|
26386
26569
|
}
|
|
26387
26570
|
) : null,
|
|
26388
|
-
|
|
26571
|
+
isTuttiModeActive ? /* @__PURE__ */ jsxs29("span", { className: "inline-flex shrink-0 items-center gap-0.5", children: [
|
|
26572
|
+
/* @__PURE__ */ jsx39(
|
|
26573
|
+
TuttiBudgetPopover,
|
|
26574
|
+
{
|
|
26575
|
+
intensity: tuttiModeOrchestrationIntensity,
|
|
26576
|
+
labels: {
|
|
26577
|
+
title: labels.tuttiBudgetTitle,
|
|
26578
|
+
intensityLabel: labels.tuttiBudgetIntensityLabel,
|
|
26579
|
+
previewTitle: labels.tuttiBudgetPreviewTitle,
|
|
26580
|
+
previewHint: labels.tuttiBudgetPreviewHint,
|
|
26581
|
+
previewCost: labels.tuttiBudgetPreviewCost,
|
|
26582
|
+
previewBalance: labels.tuttiBudgetPreviewBalance,
|
|
26583
|
+
previewPowerful: labels.tuttiBudgetPreviewPowerful,
|
|
26584
|
+
modelStrengthLabel: labels.tuttiBudgetModelStrengthLabel,
|
|
26585
|
+
modelStrengthCost: labels.tuttiBudgetModelStrengthCost,
|
|
26586
|
+
modelStrengthBalance: labels.tuttiBudgetModelStrengthBalance,
|
|
26587
|
+
modelStrengthPowerful: labels.tuttiBudgetModelStrengthPowerful,
|
|
26588
|
+
agentCountLabel: labels.tuttiBudgetAgentCountLabel,
|
|
26589
|
+
agentCountCost: labels.tuttiBudgetAgentCountCost,
|
|
26590
|
+
agentCountBalance: labels.tuttiBudgetAgentCountBalance,
|
|
26591
|
+
agentCountPowerful: labels.tuttiBudgetAgentCountPowerful,
|
|
26592
|
+
confirm: labels.tuttiBudgetConfirm,
|
|
26593
|
+
cancel: labels.tuttiBudgetCancel
|
|
26594
|
+
},
|
|
26595
|
+
onConfirm: onTuttiModeOrchestrationIntensityChange,
|
|
26596
|
+
children: /* @__PURE__ */ jsx39(
|
|
26597
|
+
"button",
|
|
26598
|
+
{
|
|
26599
|
+
type: "button",
|
|
26600
|
+
disabled: isTuttiModeUpdating,
|
|
26601
|
+
"aria-label": labels.tuttiModeLabel,
|
|
26602
|
+
title: labels.tuttiModeDescription,
|
|
26603
|
+
"data-agent-tutti-mode-badge": "true",
|
|
26604
|
+
className: cn(
|
|
26605
|
+
AgentGUINode_styles_default.composerMenuTrigger,
|
|
26606
|
+
"group w-auto",
|
|
26607
|
+
"disabled:cursor-not-allowed disabled:opacity-60"
|
|
26608
|
+
),
|
|
26609
|
+
children: /* @__PURE__ */ jsxs29("span", { className: "flex min-w-0 items-center gap-1.5 overflow-hidden", children: [
|
|
26610
|
+
/* @__PURE__ */ jsx39(Sparkles, { "aria-hidden": true, className: "size-3.5 shrink-0" }),
|
|
26611
|
+
/* @__PURE__ */ jsx39("span", { className: "min-w-0 truncate", children: labels.tuttiModeLabel })
|
|
26612
|
+
] })
|
|
26613
|
+
}
|
|
26614
|
+
)
|
|
26615
|
+
}
|
|
26616
|
+
),
|
|
26617
|
+
/* @__PURE__ */ jsx39(
|
|
26618
|
+
"button",
|
|
26619
|
+
{
|
|
26620
|
+
type: "button",
|
|
26621
|
+
disabled: isTuttiModeUpdating,
|
|
26622
|
+
"aria-label": labels.tuttiModeRemove,
|
|
26623
|
+
title: labels.tuttiModeRemove,
|
|
26624
|
+
"data-agent-tutti-mode-remove": "true",
|
|
26625
|
+
className: cn(
|
|
26626
|
+
AgentGUINode_styles_default.composerMenuTrigger,
|
|
26627
|
+
"group w-auto justify-center",
|
|
26628
|
+
"disabled:cursor-not-allowed disabled:opacity-60"
|
|
26629
|
+
),
|
|
26630
|
+
onClick: onClearTuttiMode,
|
|
26631
|
+
children: /* @__PURE__ */ jsx39(X5, { "aria-hidden": true, className: "size-3", strokeWidth: 3 })
|
|
26632
|
+
}
|
|
26633
|
+
)
|
|
26634
|
+
] }) : null,
|
|
26635
|
+
isGoalModeActive ? /* @__PURE__ */ jsx39(
|
|
26389
26636
|
"button",
|
|
26390
26637
|
{
|
|
26391
26638
|
type: "button",
|
|
@@ -26399,21 +26646,21 @@ function ComposerFooter({
|
|
|
26399
26646
|
"disabled:cursor-not-allowed disabled:opacity-60"
|
|
26400
26647
|
),
|
|
26401
26648
|
onClick: clearGoalModeBadge,
|
|
26402
|
-
children: /* @__PURE__ */
|
|
26403
|
-
/* @__PURE__ */
|
|
26404
|
-
/* @__PURE__ */
|
|
26649
|
+
children: /* @__PURE__ */ jsxs29("span", { className: "flex min-w-0 items-center gap-1.5 overflow-hidden", children: [
|
|
26650
|
+
/* @__PURE__ */ jsxs29("span", { className: "relative flex size-3.5 shrink-0 items-center justify-center", children: [
|
|
26651
|
+
/* @__PURE__ */ jsx39(
|
|
26405
26652
|
Target2,
|
|
26406
26653
|
{
|
|
26407
26654
|
"aria-hidden": true,
|
|
26408
26655
|
className: "size-3.5 transition-opacity duration-150 group-hover:opacity-0 group-focus-visible:opacity-0"
|
|
26409
26656
|
}
|
|
26410
26657
|
),
|
|
26411
|
-
/* @__PURE__ */
|
|
26658
|
+
/* @__PURE__ */ jsx39(
|
|
26412
26659
|
"span",
|
|
26413
26660
|
{
|
|
26414
26661
|
"aria-hidden": true,
|
|
26415
26662
|
className: "absolute inset-0 flex items-center justify-center rounded-full bg-[var(--text-secondary)] opacity-0 transition-opacity duration-150 group-hover:opacity-100 group-focus-visible:opacity-100 group-disabled:opacity-0",
|
|
26416
|
-
children: /* @__PURE__ */
|
|
26663
|
+
children: /* @__PURE__ */ jsx39(
|
|
26417
26664
|
X5,
|
|
26418
26665
|
{
|
|
26419
26666
|
className: "size-2.5 text-[var(--background-fronted)]",
|
|
@@ -26423,13 +26670,13 @@ function ComposerFooter({
|
|
|
26423
26670
|
}
|
|
26424
26671
|
)
|
|
26425
26672
|
] }),
|
|
26426
|
-
/* @__PURE__ */
|
|
26673
|
+
/* @__PURE__ */ jsx39("span", { className: "min-w-0 truncate", children: labels.goalLabel })
|
|
26427
26674
|
] })
|
|
26428
26675
|
}
|
|
26429
26676
|
) : null
|
|
26430
26677
|
] }),
|
|
26431
|
-
/* @__PURE__ */
|
|
26432
|
-
usage && usage.percentUsed !== null ? /* @__PURE__ */
|
|
26678
|
+
/* @__PURE__ */ jsxs29("div", { className: composerStyles.footerGroupRight, children: [
|
|
26679
|
+
usage && usage.percentUsed !== null ? /* @__PURE__ */ jsx39(
|
|
26433
26680
|
AgentUsageChip,
|
|
26434
26681
|
{
|
|
26435
26682
|
percentUsed: usage.percentUsed,
|
|
@@ -26448,7 +26695,7 @@ function ComposerFooter({
|
|
|
26448
26695
|
}
|
|
26449
26696
|
}
|
|
26450
26697
|
) : null,
|
|
26451
|
-
showSettingsLoadingPlaceholders || composerSettings.supportsPermissionMode ? /* @__PURE__ */
|
|
26698
|
+
showSettingsLoadingPlaceholders || composerSettings.supportsPermissionMode ? /* @__PURE__ */ jsx39(
|
|
26452
26699
|
AgentPermissionModeDropdown,
|
|
26453
26700
|
{
|
|
26454
26701
|
composerSettings,
|
|
@@ -26464,7 +26711,7 @@ function ComposerFooter({
|
|
|
26464
26711
|
onSettingsChange: (patch) => onSettingsChange(patch)
|
|
26465
26712
|
}
|
|
26466
26713
|
) : null,
|
|
26467
|
-
showSettingsLoadingPlaceholders || composerSettings.supportsModel || composerSettings.supportsReasoningEffort ? /* @__PURE__ */
|
|
26714
|
+
showSettingsLoadingPlaceholders || composerSettings.supportsModel || composerSettings.supportsReasoningEffort ? /* @__PURE__ */ jsx39(
|
|
26468
26715
|
AgentModelReasoningDropdown,
|
|
26469
26716
|
{
|
|
26470
26717
|
composerSettings,
|
|
@@ -26506,8 +26753,8 @@ function ComposerFooter({
|
|
|
26506
26753
|
] }) });
|
|
26507
26754
|
}
|
|
26508
26755
|
function RemovableBadgeIcon({ icon }) {
|
|
26509
|
-
return /* @__PURE__ */
|
|
26510
|
-
/* @__PURE__ */
|
|
26756
|
+
return /* @__PURE__ */ jsxs29("span", { className: "relative flex size-3.5 shrink-0 items-center justify-center", children: [
|
|
26757
|
+
/* @__PURE__ */ jsx39(
|
|
26511
26758
|
"span",
|
|
26512
26759
|
{
|
|
26513
26760
|
"aria-hidden": true,
|
|
@@ -26515,12 +26762,12 @@ function RemovableBadgeIcon({ icon }) {
|
|
|
26515
26762
|
children: icon
|
|
26516
26763
|
}
|
|
26517
26764
|
),
|
|
26518
|
-
/* @__PURE__ */
|
|
26765
|
+
/* @__PURE__ */ jsx39(
|
|
26519
26766
|
"span",
|
|
26520
26767
|
{
|
|
26521
26768
|
"aria-hidden": true,
|
|
26522
26769
|
className: "absolute inset-0 flex items-center justify-center rounded-full bg-[var(--text-secondary)] opacity-0 transition-opacity duration-150 group-hover:opacity-100 group-focus-visible:opacity-100 group-disabled:opacity-0",
|
|
26523
|
-
children: /* @__PURE__ */
|
|
26770
|
+
children: /* @__PURE__ */ jsx39(
|
|
26524
26771
|
X5,
|
|
26525
26772
|
{
|
|
26526
26773
|
className: "size-2.5 text-[var(--background-fronted)]",
|
|
@@ -26533,15 +26780,15 @@ function RemovableBadgeIcon({ icon }) {
|
|
|
26533
26780
|
}
|
|
26534
26781
|
|
|
26535
26782
|
// agent-gui/agentGuiNode/composer/quickPrompts/AgentQuickPromptPopover.tsx
|
|
26536
|
-
import { useId, useRef as useRef37, useState as
|
|
26783
|
+
import { useId, useRef as useRef37, useState as useState25 } from "react";
|
|
26537
26784
|
import {
|
|
26538
|
-
Button as
|
|
26785
|
+
Button as Button7,
|
|
26539
26786
|
ConfirmationDialog as ConfirmationDialog2,
|
|
26540
26787
|
DialogFooter as DialogFooter2,
|
|
26541
26788
|
Input as Input2,
|
|
26542
|
-
Popover as
|
|
26543
|
-
PopoverContent as
|
|
26544
|
-
PopoverTrigger as
|
|
26789
|
+
Popover as Popover4,
|
|
26790
|
+
PopoverContent as PopoverContent4,
|
|
26791
|
+
PopoverTrigger as PopoverTrigger3,
|
|
26545
26792
|
ScrollArea,
|
|
26546
26793
|
Spinner as Spinner6,
|
|
26547
26794
|
Tooltip as Tooltip7,
|
|
@@ -26560,9 +26807,9 @@ import {
|
|
|
26560
26807
|
} from "@tutti-os/ui-system/icons";
|
|
26561
26808
|
|
|
26562
26809
|
// agent-gui/agentGuiNode/composer/quickPrompts/AgentQuickPromptEditorDialog.tsx
|
|
26563
|
-
import { useRef as useRef34, useState as
|
|
26810
|
+
import { useRef as useRef34, useState as useState24 } from "react";
|
|
26564
26811
|
import {
|
|
26565
|
-
Button as
|
|
26812
|
+
Button as Button5,
|
|
26566
26813
|
Dialog,
|
|
26567
26814
|
DialogContent,
|
|
26568
26815
|
DialogDescription,
|
|
@@ -26573,7 +26820,7 @@ import {
|
|
|
26573
26820
|
Spinner as Spinner5,
|
|
26574
26821
|
Textarea
|
|
26575
26822
|
} from "@tutti-os/ui-system";
|
|
26576
|
-
import { jsx as
|
|
26823
|
+
import { jsx as jsx40, jsxs as jsxs30 } from "react/jsx-runtime";
|
|
26577
26824
|
var MAX_TITLE_CODE_POINTS = 80;
|
|
26578
26825
|
var MAX_CONTENT_BYTES = 32 * 1024;
|
|
26579
26826
|
function AgentQuickPromptEditorDialog({
|
|
@@ -26581,10 +26828,10 @@ function AgentQuickPromptEditorDialog({
|
|
|
26581
26828
|
}) {
|
|
26582
26829
|
const { labels } = controller;
|
|
26583
26830
|
const source = controller.mode === "edit" ? controller.selectedPrompt : null;
|
|
26584
|
-
const [draft, setDraft] =
|
|
26831
|
+
const [draft, setDraft] = useState24(
|
|
26585
26832
|
() => controller.initialDraft ?? promptDraft(source)
|
|
26586
26833
|
);
|
|
26587
|
-
const [validationError, setValidationError] =
|
|
26834
|
+
const [validationError, setValidationError] = useState24(null);
|
|
26588
26835
|
const cancelRequestedOnPointerDownRef = useRef34(false);
|
|
26589
26836
|
const submit = async () => {
|
|
26590
26837
|
const error = validateDraft(draft, labels);
|
|
@@ -26599,7 +26846,7 @@ function AgentQuickPromptEditorDialog({
|
|
|
26599
26846
|
});
|
|
26600
26847
|
};
|
|
26601
26848
|
const mutationError = controller.mutationError === "conflict" ? labels.conflict : controller.mutationError === "generic" ? labels.mutationError : null;
|
|
26602
|
-
return /* @__PURE__ */
|
|
26849
|
+
return /* @__PURE__ */ jsx40(
|
|
26603
26850
|
Dialog,
|
|
26604
26851
|
{
|
|
26605
26852
|
open: controller.isEditorOpen,
|
|
@@ -26608,7 +26855,7 @@ function AgentQuickPromptEditorDialog({
|
|
|
26608
26855
|
controller.closeDialog();
|
|
26609
26856
|
}
|
|
26610
26857
|
},
|
|
26611
|
-
children: /* @__PURE__ */
|
|
26858
|
+
children: /* @__PURE__ */ jsxs30(
|
|
26612
26859
|
DialogContent,
|
|
26613
26860
|
{
|
|
26614
26861
|
className: "sm:max-w-[560px]",
|
|
@@ -26623,11 +26870,11 @@ function AgentQuickPromptEditorDialog({
|
|
|
26623
26870
|
if (controller.isSaving) event.preventDefault();
|
|
26624
26871
|
},
|
|
26625
26872
|
children: [
|
|
26626
|
-
/* @__PURE__ */
|
|
26627
|
-
/* @__PURE__ */
|
|
26628
|
-
/* @__PURE__ */
|
|
26873
|
+
/* @__PURE__ */ jsxs30(DialogHeader, { children: [
|
|
26874
|
+
/* @__PURE__ */ jsx40(DialogTitle, { children: source ? labels.editTitle : labels.createTitle }),
|
|
26875
|
+
/* @__PURE__ */ jsx40(DialogDescription, { className: "sr-only", children: labels.contentPlaceholder })
|
|
26629
26876
|
] }),
|
|
26630
|
-
/* @__PURE__ */
|
|
26877
|
+
/* @__PURE__ */ jsxs30(
|
|
26631
26878
|
"form",
|
|
26632
26879
|
{
|
|
26633
26880
|
className: "flex min-h-0 flex-col gap-3",
|
|
@@ -26636,9 +26883,9 @@ function AgentQuickPromptEditorDialog({
|
|
|
26636
26883
|
void submit();
|
|
26637
26884
|
},
|
|
26638
26885
|
children: [
|
|
26639
|
-
/* @__PURE__ */
|
|
26640
|
-
/* @__PURE__ */
|
|
26641
|
-
/* @__PURE__ */
|
|
26886
|
+
/* @__PURE__ */ jsxs30("label", { className: "flex flex-col gap-1.5 text-[13px] text-[var(--text-secondary)]", children: [
|
|
26887
|
+
/* @__PURE__ */ jsx40("span", { children: labels.titleLabel }),
|
|
26888
|
+
/* @__PURE__ */ jsx40(
|
|
26642
26889
|
Input,
|
|
26643
26890
|
{
|
|
26644
26891
|
autoFocus: true,
|
|
@@ -26654,9 +26901,9 @@ function AgentQuickPromptEditorDialog({
|
|
|
26654
26901
|
}
|
|
26655
26902
|
)
|
|
26656
26903
|
] }),
|
|
26657
|
-
/* @__PURE__ */
|
|
26658
|
-
/* @__PURE__ */
|
|
26659
|
-
/* @__PURE__ */
|
|
26904
|
+
/* @__PURE__ */ jsxs30("label", { className: "flex min-h-0 flex-col gap-1.5 text-[13px] text-[var(--text-secondary)]", children: [
|
|
26905
|
+
/* @__PURE__ */ jsx40("span", { children: labels.contentLabel }),
|
|
26906
|
+
/* @__PURE__ */ jsx40(
|
|
26660
26907
|
Textarea,
|
|
26661
26908
|
{
|
|
26662
26909
|
"aria-invalid": Boolean(validationError),
|
|
@@ -26671,10 +26918,10 @@ function AgentQuickPromptEditorDialog({
|
|
|
26671
26918
|
}
|
|
26672
26919
|
)
|
|
26673
26920
|
] }),
|
|
26674
|
-
validationError || mutationError ? /* @__PURE__ */
|
|
26675
|
-
/* @__PURE__ */
|
|
26676
|
-
/* @__PURE__ */
|
|
26677
|
-
|
|
26921
|
+
validationError || mutationError ? /* @__PURE__ */ jsx40("p", { className: "text-[12px] text-[var(--state-danger)]", role: "alert", children: validationError ?? mutationError }) : null,
|
|
26922
|
+
/* @__PURE__ */ jsxs30(DialogFooter, { children: [
|
|
26923
|
+
/* @__PURE__ */ jsx40(
|
|
26924
|
+
Button5,
|
|
26678
26925
|
{
|
|
26679
26926
|
disabled: controller.isSaving,
|
|
26680
26927
|
size: "dialog",
|
|
@@ -26696,8 +26943,8 @@ function AgentQuickPromptEditorDialog({
|
|
|
26696
26943
|
children: labels.cancel
|
|
26697
26944
|
}
|
|
26698
26945
|
),
|
|
26699
|
-
/* @__PURE__ */
|
|
26700
|
-
controller.isSaving ? /* @__PURE__ */
|
|
26946
|
+
/* @__PURE__ */ jsxs30(Button5, { disabled: controller.isSaving, size: "dialog", type: "submit", children: [
|
|
26947
|
+
controller.isSaving ? /* @__PURE__ */ jsx40(Spinner5, { size: 14 }) : null,
|
|
26701
26948
|
controller.isSaving ? labels.saving : labels.save
|
|
26702
26949
|
] })
|
|
26703
26950
|
] })
|
|
@@ -26734,7 +26981,7 @@ import { Sortable, SortableContent, SortableItem } from "@tutti-os/ui-system";
|
|
|
26734
26981
|
import { useRef as useRef35 } from "react";
|
|
26735
26982
|
import {
|
|
26736
26983
|
BareIconButton,
|
|
26737
|
-
Button as
|
|
26984
|
+
Button as Button6,
|
|
26738
26985
|
SortableItemHandle,
|
|
26739
26986
|
Tooltip as Tooltip6,
|
|
26740
26987
|
TooltipContent as TooltipContent6,
|
|
@@ -26745,7 +26992,7 @@ import {
|
|
|
26745
26992
|
EditIcon,
|
|
26746
26993
|
GripVerticalIcon
|
|
26747
26994
|
} from "@tutti-os/ui-system/icons";
|
|
26748
|
-
import { Fragment as Fragment13, jsx as
|
|
26995
|
+
import { Fragment as Fragment13, jsx as jsx41, jsxs as jsxs31 } from "react/jsx-runtime";
|
|
26749
26996
|
function AgentQuickPromptRow({
|
|
26750
26997
|
handleRef,
|
|
26751
26998
|
isSorting,
|
|
@@ -26764,17 +27011,17 @@ function AgentQuickPromptRow({
|
|
|
26764
27011
|
const editAction = usePrimaryPointerAction(onEdit);
|
|
26765
27012
|
const deleteAction = usePrimaryPointerAction(onDelete);
|
|
26766
27013
|
const actionRevealClass = "opacity-100 transition-opacity [@media(hover:hover)]:opacity-0 [@media(hover:hover)]:group-hover/quick-prompt-row:opacity-100 group-has-[:focus-visible]/quick-prompt-row:opacity-100 focus-visible:opacity-100";
|
|
26767
|
-
const promptContent = /* @__PURE__ */
|
|
26768
|
-
/* @__PURE__ */
|
|
26769
|
-
/* @__PURE__ */
|
|
27014
|
+
const promptContent = /* @__PURE__ */ jsxs31("span", { className: "flex min-w-0 flex-col items-start gap-0.5", children: [
|
|
27015
|
+
/* @__PURE__ */ jsx41("span", { className: "w-full truncate font-medium text-[var(--text-primary)]", children: prompt.title }),
|
|
27016
|
+
/* @__PURE__ */ jsx41("span", { className: "line-clamp-2 w-full text-[12px] leading-[1.35] text-[var(--text-secondary)]", children: prompt.content })
|
|
26770
27017
|
] });
|
|
26771
|
-
return /* @__PURE__ */
|
|
26772
|
-
showReorderHandle ? /* @__PURE__ */
|
|
27018
|
+
return /* @__PURE__ */ jsxs31("div", { className: "group/quick-prompt-row flex min-w-0 items-start gap-1 rounded-md hover:bg-[var(--transparency-hover)]", children: [
|
|
27019
|
+
showReorderHandle ? /* @__PURE__ */ jsx41(
|
|
26773
27020
|
"div",
|
|
26774
27021
|
{
|
|
26775
27022
|
className: `mt-1.5 flex size-6 shrink-0 items-center justify-center ${reorderDisabled ? "cursor-not-allowed" : ""}`,
|
|
26776
|
-
children: /* @__PURE__ */
|
|
26777
|
-
/* @__PURE__ */
|
|
27023
|
+
children: /* @__PURE__ */ jsxs31(Tooltip6, { children: [
|
|
27024
|
+
/* @__PURE__ */ jsx41(TooltipTrigger6, { asChild: true, children: /* @__PURE__ */ jsx41(SortableItemHandle, { asChild: true, disabled: reorderDisabled, children: /* @__PURE__ */ jsx41(
|
|
26778
27025
|
BareIconButton,
|
|
26779
27026
|
{
|
|
26780
27027
|
ref: handleRef,
|
|
@@ -26782,15 +27029,15 @@ function AgentQuickPromptRow({
|
|
|
26782
27029
|
className: "cursor-grab text-[var(--text-tertiary)] hover:text-[var(--text-primary)] focus-visible:text-[var(--text-primary)] disabled:cursor-not-allowed disabled:text-[var(--text-disabled)] disabled:opacity-100",
|
|
26783
27030
|
size: "md",
|
|
26784
27031
|
title: "",
|
|
26785
|
-
children: /* @__PURE__ */
|
|
27032
|
+
children: /* @__PURE__ */ jsx41(GripVerticalIcon, {})
|
|
26786
27033
|
}
|
|
26787
27034
|
) }) }),
|
|
26788
|
-
/* @__PURE__ */
|
|
27035
|
+
/* @__PURE__ */ jsx41(TooltipContent6, { side: "top", children: labels.dragHandle(prompt.title) })
|
|
26789
27036
|
] })
|
|
26790
27037
|
}
|
|
26791
27038
|
) : null,
|
|
26792
|
-
isSorting ? /* @__PURE__ */
|
|
26793
|
-
|
|
27039
|
+
isSorting ? /* @__PURE__ */ jsx41("div", { className: "h-auto min-w-0 flex-1 px-1 py-2 text-left whitespace-normal", children: promptContent }) : /* @__PURE__ */ jsx41(
|
|
27040
|
+
Button6,
|
|
26794
27041
|
{
|
|
26795
27042
|
...selectionAction,
|
|
26796
27043
|
ref: selectionRef,
|
|
@@ -26807,9 +27054,9 @@ function AgentQuickPromptRow({
|
|
|
26807
27054
|
children: promptContent
|
|
26808
27055
|
}
|
|
26809
27056
|
),
|
|
26810
|
-
!isSorting ? /* @__PURE__ */
|
|
26811
|
-
/* @__PURE__ */
|
|
26812
|
-
/* @__PURE__ */
|
|
27057
|
+
!isSorting ? /* @__PURE__ */ jsxs31(Fragment13, { children: [
|
|
27058
|
+
/* @__PURE__ */ jsxs31(Tooltip6, { children: [
|
|
27059
|
+
/* @__PURE__ */ jsx41(TooltipTrigger6, { asChild: true, children: /* @__PURE__ */ jsx41(
|
|
26813
27060
|
BareIconButton,
|
|
26814
27061
|
{
|
|
26815
27062
|
...editAction,
|
|
@@ -26818,13 +27065,13 @@ function AgentQuickPromptRow({
|
|
|
26818
27065
|
disabled: pending,
|
|
26819
27066
|
size: "md",
|
|
26820
27067
|
title: "",
|
|
26821
|
-
children: /* @__PURE__ */
|
|
27068
|
+
children: /* @__PURE__ */ jsx41(EditIcon, {})
|
|
26822
27069
|
}
|
|
26823
27070
|
) }),
|
|
26824
|
-
/* @__PURE__ */
|
|
27071
|
+
/* @__PURE__ */ jsx41(TooltipContent6, { side: "top", children: labels.edit })
|
|
26825
27072
|
] }),
|
|
26826
|
-
/* @__PURE__ */
|
|
26827
|
-
/* @__PURE__ */
|
|
27073
|
+
/* @__PURE__ */ jsxs31(Tooltip6, { children: [
|
|
27074
|
+
/* @__PURE__ */ jsx41(TooltipTrigger6, { asChild: true, children: /* @__PURE__ */ jsx41(
|
|
26828
27075
|
BareIconButton,
|
|
26829
27076
|
{
|
|
26830
27077
|
...deleteAction,
|
|
@@ -26833,10 +27080,10 @@ function AgentQuickPromptRow({
|
|
|
26833
27080
|
disabled: pending,
|
|
26834
27081
|
size: "md",
|
|
26835
27082
|
title: "",
|
|
26836
|
-
children: /* @__PURE__ */
|
|
27083
|
+
children: /* @__PURE__ */ jsx41(DeleteIcon, {})
|
|
26837
27084
|
}
|
|
26838
27085
|
) }),
|
|
26839
|
-
/* @__PURE__ */
|
|
27086
|
+
/* @__PURE__ */ jsx41(TooltipContent6, { side: "top", children: labels.delete })
|
|
26840
27087
|
] })
|
|
26841
27088
|
] }) : null
|
|
26842
27089
|
] });
|
|
@@ -26860,7 +27107,7 @@ function usePrimaryPointerAction(action) {
|
|
|
26860
27107
|
}
|
|
26861
27108
|
|
|
26862
27109
|
// agent-gui/agentGuiNode/composer/quickPrompts/AgentQuickPromptList.tsx
|
|
26863
|
-
import { jsx as
|
|
27110
|
+
import { jsx as jsx42 } from "react/jsx-runtime";
|
|
26864
27111
|
function AgentQuickPromptList({
|
|
26865
27112
|
controller,
|
|
26866
27113
|
isSorting,
|
|
@@ -26937,7 +27184,7 @@ function AgentQuickPromptList({
|
|
|
26937
27184
|
}),
|
|
26938
27185
|
[filteredPrompts, labels, promptsById]
|
|
26939
27186
|
);
|
|
26940
|
-
return /* @__PURE__ */
|
|
27187
|
+
return /* @__PURE__ */ jsx42(
|
|
26941
27188
|
Sortable,
|
|
26942
27189
|
{
|
|
26943
27190
|
accessibility,
|
|
@@ -26955,7 +27202,7 @@ function AgentQuickPromptList({
|
|
|
26955
27202
|
);
|
|
26956
27203
|
});
|
|
26957
27204
|
},
|
|
26958
|
-
children: /* @__PURE__ */
|
|
27205
|
+
children: /* @__PURE__ */ jsx42(SortableContent, { className: "flex flex-col gap-0.5", children: filteredPrompts.map((prompt, index) => /* @__PURE__ */ jsx42(SortableItem, { value: prompt.id, children: /* @__PURE__ */ jsx42(
|
|
26959
27206
|
AgentQuickPromptRow,
|
|
26960
27207
|
{
|
|
26961
27208
|
handleRef: (node) => {
|
|
@@ -26985,7 +27232,7 @@ function AgentQuickPromptList({
|
|
|
26985
27232
|
}
|
|
26986
27233
|
|
|
26987
27234
|
// agent-gui/agentGuiNode/composer/quickPrompts/AgentQuickPromptPopover.tsx
|
|
26988
|
-
import { Fragment as Fragment14, jsx as
|
|
27235
|
+
import { Fragment as Fragment14, jsx as jsx43, jsxs as jsxs32 } from "react/jsx-runtime";
|
|
26989
27236
|
function AgentQuickPromptPopover({
|
|
26990
27237
|
controller,
|
|
26991
27238
|
disabled
|
|
@@ -26996,8 +27243,8 @@ function AgentQuickPromptPopover({
|
|
|
26996
27243
|
const preserveExternalFocusRef = useRef37(false);
|
|
26997
27244
|
const createRequestedOnPointerDownRef = useRef37(false);
|
|
26998
27245
|
const templateRequestedOnPointerDownRef = useRef37(false);
|
|
26999
|
-
const [view, setView] =
|
|
27000
|
-
const [sortingState, setSortingState] =
|
|
27246
|
+
const [view, setView] = useState25("prompts");
|
|
27247
|
+
const [sortingState, setSortingState] = useState25({
|
|
27001
27248
|
isPopoverOpen: controller.isPopoverOpen,
|
|
27002
27249
|
isSorting: false
|
|
27003
27250
|
});
|
|
@@ -27044,9 +27291,9 @@ function AgentQuickPromptPopover({
|
|
|
27044
27291
|
controller.openCreate({ title: template.title, content: template.content });
|
|
27045
27292
|
};
|
|
27046
27293
|
const isTemplateView = view === "templates";
|
|
27047
|
-
return /* @__PURE__ */
|
|
27048
|
-
/* @__PURE__ */
|
|
27049
|
-
|
|
27294
|
+
return /* @__PURE__ */ jsxs32(Fragment14, { children: [
|
|
27295
|
+
/* @__PURE__ */ jsxs32(
|
|
27296
|
+
Popover4,
|
|
27050
27297
|
{
|
|
27051
27298
|
modal: false,
|
|
27052
27299
|
open: controller.isPopoverOpen,
|
|
@@ -27058,9 +27305,9 @@ function AgentQuickPromptPopover({
|
|
|
27058
27305
|
controller.setPopoverOpen(open);
|
|
27059
27306
|
},
|
|
27060
27307
|
children: [
|
|
27061
|
-
/* @__PURE__ */
|
|
27062
|
-
/* @__PURE__ */
|
|
27063
|
-
|
|
27308
|
+
/* @__PURE__ */ jsx43(TooltipProvider5, { delayDuration: 120, children: /* @__PURE__ */ jsxs32(Tooltip7, { children: [
|
|
27309
|
+
/* @__PURE__ */ jsx43(TooltipTrigger7, { asChild: true, children: /* @__PURE__ */ jsx43("span", { className: "inline-flex shrink-0", children: /* @__PURE__ */ jsx43(PopoverTrigger3, { asChild: true, children: /* @__PURE__ */ jsxs32(
|
|
27310
|
+
Button7,
|
|
27064
27311
|
{
|
|
27065
27312
|
"aria-label": labels.triggerTooltip,
|
|
27066
27313
|
disabled,
|
|
@@ -27068,15 +27315,15 @@ function AgentQuickPromptPopover({
|
|
|
27068
27315
|
type: "button",
|
|
27069
27316
|
variant: "chrome",
|
|
27070
27317
|
children: [
|
|
27071
|
-
/* @__PURE__ */
|
|
27072
|
-
/* @__PURE__ */
|
|
27318
|
+
/* @__PURE__ */ jsx43(MessageSquareTextIcon, { "data-icon": "inline-start" }),
|
|
27319
|
+
/* @__PURE__ */ jsx43("span", { className: "hidden min-[900px]:inline", children: labels.trigger })
|
|
27073
27320
|
]
|
|
27074
27321
|
}
|
|
27075
27322
|
) }) }) }),
|
|
27076
|
-
/* @__PURE__ */
|
|
27323
|
+
/* @__PURE__ */ jsx43(TooltipContent7, { side: "top", children: labels.triggerTooltip })
|
|
27077
27324
|
] }) }),
|
|
27078
|
-
/* @__PURE__ */
|
|
27079
|
-
|
|
27325
|
+
/* @__PURE__ */ jsxs32(
|
|
27326
|
+
PopoverContent4,
|
|
27080
27327
|
{
|
|
27081
27328
|
"aria-labelledby": titleId,
|
|
27082
27329
|
align: "start",
|
|
@@ -27100,8 +27347,8 @@ function AgentQuickPromptPopover({
|
|
|
27100
27347
|
preserveExternalFocusRef.current = false;
|
|
27101
27348
|
},
|
|
27102
27349
|
children: [
|
|
27103
|
-
/* @__PURE__ */
|
|
27104
|
-
/* @__PURE__ */
|
|
27350
|
+
/* @__PURE__ */ jsxs32("div", { className: "flex shrink-0 items-center justify-between gap-2 border-b border-[var(--border-1)] px-3 py-2.5", children: [
|
|
27351
|
+
/* @__PURE__ */ jsx43(
|
|
27105
27352
|
"h2",
|
|
27106
27353
|
{
|
|
27107
27354
|
id: titleId,
|
|
@@ -27109,20 +27356,20 @@ function AgentQuickPromptPopover({
|
|
|
27109
27356
|
children: isTemplateView ? labels.recommendedTemplatesTitle : labels.title
|
|
27110
27357
|
}
|
|
27111
27358
|
),
|
|
27112
|
-
isTemplateView ? /* @__PURE__ */
|
|
27113
|
-
|
|
27359
|
+
isTemplateView ? /* @__PURE__ */ jsxs32(
|
|
27360
|
+
Button7,
|
|
27114
27361
|
{
|
|
27115
27362
|
size: "sm",
|
|
27116
27363
|
type: "button",
|
|
27117
27364
|
variant: "ghost",
|
|
27118
27365
|
...returnToPromptsAction,
|
|
27119
27366
|
children: [
|
|
27120
|
-
/* @__PURE__ */
|
|
27367
|
+
/* @__PURE__ */ jsx43(ArrowLeftIcon, { "data-icon": "inline-start" }),
|
|
27121
27368
|
labels.returnToPrompts
|
|
27122
27369
|
]
|
|
27123
27370
|
}
|
|
27124
|
-
) : /* @__PURE__ */
|
|
27125
|
-
|
|
27371
|
+
) : /* @__PURE__ */ jsx43("div", { className: "flex items-center gap-1", children: isSorting ? /* @__PURE__ */ jsxs32(
|
|
27372
|
+
Button7,
|
|
27126
27373
|
{
|
|
27127
27374
|
disabled: controller.isInteractionLocked,
|
|
27128
27375
|
size: "sm",
|
|
@@ -27130,13 +27377,13 @@ function AgentQuickPromptPopover({
|
|
|
27130
27377
|
variant: "ghost",
|
|
27131
27378
|
onClick: () => setIsSorting(false),
|
|
27132
27379
|
children: [
|
|
27133
|
-
/* @__PURE__ */
|
|
27380
|
+
/* @__PURE__ */ jsx43(CheckIcon2, { "data-icon": "inline-start" }),
|
|
27134
27381
|
labels.finishSorting
|
|
27135
27382
|
]
|
|
27136
27383
|
}
|
|
27137
|
-
) : /* @__PURE__ */
|
|
27138
|
-
/* @__PURE__ */
|
|
27139
|
-
|
|
27384
|
+
) : /* @__PURE__ */ jsxs32(Fragment14, { children: [
|
|
27385
|
+
/* @__PURE__ */ jsxs32(
|
|
27386
|
+
Button7,
|
|
27140
27387
|
{
|
|
27141
27388
|
disabled: controller.isInteractionLocked || !controller.showReorderHandles,
|
|
27142
27389
|
size: "sm",
|
|
@@ -27144,13 +27391,13 @@ function AgentQuickPromptPopover({
|
|
|
27144
27391
|
variant: "ghost",
|
|
27145
27392
|
onClick: () => setIsSorting(true),
|
|
27146
27393
|
children: [
|
|
27147
|
-
/* @__PURE__ */
|
|
27394
|
+
/* @__PURE__ */ jsx43(GripVerticalIcon2, { "data-icon": "inline-start" }),
|
|
27148
27395
|
labels.startSorting
|
|
27149
27396
|
]
|
|
27150
27397
|
}
|
|
27151
27398
|
),
|
|
27152
|
-
/* @__PURE__ */
|
|
27153
|
-
|
|
27399
|
+
/* @__PURE__ */ jsxs32(
|
|
27400
|
+
Button7,
|
|
27154
27401
|
{
|
|
27155
27402
|
disabled: controller.isInteractionLocked,
|
|
27156
27403
|
size: "sm",
|
|
@@ -27169,22 +27416,22 @@ function AgentQuickPromptPopover({
|
|
|
27169
27416
|
requestCreate();
|
|
27170
27417
|
},
|
|
27171
27418
|
children: [
|
|
27172
|
-
/* @__PURE__ */
|
|
27419
|
+
/* @__PURE__ */ jsx43(AddIcon, { "data-icon": "inline-start" }),
|
|
27173
27420
|
labels.add
|
|
27174
27421
|
]
|
|
27175
27422
|
}
|
|
27176
27423
|
)
|
|
27177
27424
|
] }) })
|
|
27178
27425
|
] }),
|
|
27179
|
-
!isTemplateView ? /* @__PURE__ */
|
|
27180
|
-
/* @__PURE__ */
|
|
27426
|
+
!isTemplateView ? /* @__PURE__ */ jsxs32("div", { className: "relative shrink-0 px-3 py-2.5", children: [
|
|
27427
|
+
/* @__PURE__ */ jsx43(
|
|
27181
27428
|
SearchIcon,
|
|
27182
27429
|
{
|
|
27183
27430
|
"aria-hidden": true,
|
|
27184
27431
|
className: "pointer-events-none absolute top-1/2 left-5 size-3.5 -translate-y-1/2 text-[var(--text-tertiary)]"
|
|
27185
27432
|
}
|
|
27186
27433
|
),
|
|
27187
|
-
/* @__PURE__ */
|
|
27434
|
+
/* @__PURE__ */ jsx43(
|
|
27188
27435
|
Input2,
|
|
27189
27436
|
{
|
|
27190
27437
|
ref: searchRef,
|
|
@@ -27203,15 +27450,15 @@ function AgentQuickPromptPopover({
|
|
|
27203
27450
|
}
|
|
27204
27451
|
)
|
|
27205
27452
|
] }) : null,
|
|
27206
|
-
!isTemplateView && snapshot.status === "error" && snapshot.prompts.length > 0 ? /* @__PURE__ */
|
|
27453
|
+
!isTemplateView && snapshot.status === "error" && snapshot.prompts.length > 0 ? /* @__PURE__ */ jsxs32(
|
|
27207
27454
|
"div",
|
|
27208
27455
|
{
|
|
27209
27456
|
className: "flex shrink-0 items-center justify-between gap-2 px-3 pb-2 text-[12px] text-[var(--state-danger)]",
|
|
27210
27457
|
role: "alert",
|
|
27211
27458
|
children: [
|
|
27212
|
-
/* @__PURE__ */
|
|
27213
|
-
/* @__PURE__ */
|
|
27214
|
-
|
|
27459
|
+
/* @__PURE__ */ jsx43("span", { children: labels.loadError }),
|
|
27460
|
+
/* @__PURE__ */ jsx43(
|
|
27461
|
+
Button7,
|
|
27215
27462
|
{
|
|
27216
27463
|
size: "xs",
|
|
27217
27464
|
type: "button",
|
|
@@ -27223,15 +27470,15 @@ function AgentQuickPromptPopover({
|
|
|
27223
27470
|
]
|
|
27224
27471
|
}
|
|
27225
27472
|
) : null,
|
|
27226
|
-
!isTemplateView && controller.reorderError ? /* @__PURE__ */
|
|
27473
|
+
!isTemplateView && controller.reorderError ? /* @__PURE__ */ jsxs32(
|
|
27227
27474
|
"div",
|
|
27228
27475
|
{
|
|
27229
27476
|
className: "flex shrink-0 items-center justify-between gap-2 px-3 pb-2 text-[12px] text-[var(--state-danger)]",
|
|
27230
27477
|
role: "alert",
|
|
27231
27478
|
children: [
|
|
27232
|
-
/* @__PURE__ */
|
|
27233
|
-
/* @__PURE__ */
|
|
27234
|
-
|
|
27479
|
+
/* @__PURE__ */ jsx43("span", { children: controller.reorderError === "conflict" ? labels.reorderConflict : labels.reorderError }),
|
|
27480
|
+
/* @__PURE__ */ jsx43(
|
|
27481
|
+
Button7,
|
|
27235
27482
|
{
|
|
27236
27483
|
size: "xs",
|
|
27237
27484
|
type: "button",
|
|
@@ -27243,13 +27490,13 @@ function AgentQuickPromptPopover({
|
|
|
27243
27490
|
]
|
|
27244
27491
|
}
|
|
27245
27492
|
) : null,
|
|
27246
|
-
/* @__PURE__ */
|
|
27493
|
+
/* @__PURE__ */ jsx43(
|
|
27247
27494
|
ScrollArea,
|
|
27248
27495
|
{
|
|
27249
27496
|
className: "min-h-0 flex-1",
|
|
27250
27497
|
viewportClassName: "px-2 pb-2",
|
|
27251
27498
|
viewportTestId: "agent-quick-prompt-scroll-viewport",
|
|
27252
|
-
children: isTemplateView ? /* @__PURE__ */
|
|
27499
|
+
children: isTemplateView ? /* @__PURE__ */ jsx43(
|
|
27253
27500
|
RecommendedTemplateList,
|
|
27254
27501
|
{
|
|
27255
27502
|
disabled: controller.isInteractionLocked,
|
|
@@ -27258,18 +27505,18 @@ function AgentQuickPromptPopover({
|
|
|
27258
27505
|
onSelect: requestTemplate,
|
|
27259
27506
|
selectionRequestedOnPointerDownRef: templateRequestedOnPointerDownRef
|
|
27260
27507
|
}
|
|
27261
|
-
) : snapshot.status === "loading" && snapshot.prompts.length === 0 ? /* @__PURE__ */
|
|
27508
|
+
) : snapshot.status === "loading" && snapshot.prompts.length === 0 ? /* @__PURE__ */ jsx43(
|
|
27262
27509
|
PromptState,
|
|
27263
27510
|
{
|
|
27264
|
-
icon: /* @__PURE__ */
|
|
27511
|
+
icon: /* @__PURE__ */ jsx43(Spinner6, { size: 16 }),
|
|
27265
27512
|
label: labels.loading
|
|
27266
27513
|
}
|
|
27267
|
-
) : snapshot.status === "error" && snapshot.prompts.length === 0 ? /* @__PURE__ */
|
|
27514
|
+
) : snapshot.status === "error" && snapshot.prompts.length === 0 ? /* @__PURE__ */ jsx43(
|
|
27268
27515
|
PromptState,
|
|
27269
27516
|
{
|
|
27270
27517
|
label: labels.loadError,
|
|
27271
|
-
action: /* @__PURE__ */
|
|
27272
|
-
|
|
27518
|
+
action: /* @__PURE__ */ jsx43(
|
|
27519
|
+
Button7,
|
|
27273
27520
|
{
|
|
27274
27521
|
disabled: controller.isInteractionLocked,
|
|
27275
27522
|
size: "sm",
|
|
@@ -27280,7 +27527,7 @@ function AgentQuickPromptPopover({
|
|
|
27280
27527
|
}
|
|
27281
27528
|
)
|
|
27282
27529
|
}
|
|
27283
|
-
) : snapshot.prompts.length === 0 && !controller.searchQuery.trim() ? /* @__PURE__ */
|
|
27530
|
+
) : snapshot.prompts.length === 0 && !controller.searchQuery.trim() ? /* @__PURE__ */ jsx43(
|
|
27284
27531
|
RecommendedTemplateList,
|
|
27285
27532
|
{
|
|
27286
27533
|
disabled: controller.isInteractionLocked,
|
|
@@ -27289,8 +27536,8 @@ function AgentQuickPromptPopover({
|
|
|
27289
27536
|
onSelect: requestTemplate,
|
|
27290
27537
|
selectionRequestedOnPointerDownRef: templateRequestedOnPointerDownRef
|
|
27291
27538
|
}
|
|
27292
|
-
) : controller.filteredPrompts.length === 0 ? /* @__PURE__ */
|
|
27293
|
-
/* @__PURE__ */
|
|
27539
|
+
) : controller.filteredPrompts.length === 0 ? /* @__PURE__ */ jsx43(PromptState, { label: labels.noResults }) : /* @__PURE__ */ jsxs32("div", { className: "flex flex-col gap-0.5", children: [
|
|
27540
|
+
/* @__PURE__ */ jsx43(
|
|
27294
27541
|
AgentQuickPromptList,
|
|
27295
27542
|
{
|
|
27296
27543
|
controller,
|
|
@@ -27312,7 +27559,7 @@ function AgentQuickPromptPopover({
|
|
|
27312
27559
|
}
|
|
27313
27560
|
}
|
|
27314
27561
|
),
|
|
27315
|
-
!isSorting ? /* @__PURE__ */
|
|
27562
|
+
!isSorting ? /* @__PURE__ */ jsx43(
|
|
27316
27563
|
TemplateEntry,
|
|
27317
27564
|
{
|
|
27318
27565
|
label: labels.createFromTemplate,
|
|
@@ -27329,17 +27576,17 @@ function AgentQuickPromptPopover({
|
|
|
27329
27576
|
]
|
|
27330
27577
|
}
|
|
27331
27578
|
),
|
|
27332
|
-
controller.isEditorOpen ? /* @__PURE__ */
|
|
27333
|
-
/* @__PURE__ */
|
|
27579
|
+
controller.isEditorOpen ? /* @__PURE__ */ jsx43(AgentQuickPromptEditorDialog, { controller }) : null,
|
|
27580
|
+
/* @__PURE__ */ jsx43(
|
|
27334
27581
|
ConfirmationDialog2,
|
|
27335
27582
|
{
|
|
27336
27583
|
cancelLabel: labels.cancel,
|
|
27337
27584
|
confirmBusy: controller.isDeleting,
|
|
27338
27585
|
confirmLabel: controller.isDeleting ? labels.deleting : labels.deleteConfirm,
|
|
27339
27586
|
description: controller.promptToDelete ? labels.deleteDescription(controller.promptToDelete.title) : void 0,
|
|
27340
|
-
footer: /* @__PURE__ */
|
|
27341
|
-
/* @__PURE__ */
|
|
27342
|
-
|
|
27587
|
+
footer: /* @__PURE__ */ jsxs32(DialogFooter2, { children: [
|
|
27588
|
+
/* @__PURE__ */ jsx43(
|
|
27589
|
+
Button7,
|
|
27343
27590
|
{
|
|
27344
27591
|
...deleteCancelAction,
|
|
27345
27592
|
disabled: controller.isDeleting,
|
|
@@ -27349,8 +27596,8 @@ function AgentQuickPromptPopover({
|
|
|
27349
27596
|
children: labels.cancel
|
|
27350
27597
|
}
|
|
27351
27598
|
),
|
|
27352
|
-
/* @__PURE__ */
|
|
27353
|
-
|
|
27599
|
+
/* @__PURE__ */ jsx43(
|
|
27600
|
+
Button7,
|
|
27354
27601
|
{
|
|
27355
27602
|
...deleteConfirmAction,
|
|
27356
27603
|
disabled: controller.isDeleting,
|
|
@@ -27367,7 +27614,7 @@ function AgentQuickPromptPopover({
|
|
|
27367
27614
|
open: controller.mode === "delete",
|
|
27368
27615
|
title: labels.deleteTitle,
|
|
27369
27616
|
tone: "destructive",
|
|
27370
|
-
children: errorLabel ? /* @__PURE__ */
|
|
27617
|
+
children: errorLabel ? /* @__PURE__ */ jsx43("p", { className: "text-[12px] text-[var(--state-danger)]", role: "alert", children: errorLabel }) : null
|
|
27371
27618
|
}
|
|
27372
27619
|
)
|
|
27373
27620
|
] });
|
|
@@ -27379,13 +27626,13 @@ function RecommendedTemplateList({
|
|
|
27379
27626
|
onSelect,
|
|
27380
27627
|
selectionRequestedOnPointerDownRef
|
|
27381
27628
|
}) {
|
|
27382
|
-
return /* @__PURE__ */
|
|
27383
|
-
/* @__PURE__ */
|
|
27384
|
-
/* @__PURE__ */
|
|
27385
|
-
/* @__PURE__ */
|
|
27629
|
+
return /* @__PURE__ */ jsxs32("section", { className: "flex flex-col gap-1 px-1 pt-2", children: [
|
|
27630
|
+
/* @__PURE__ */ jsxs32("div", { className: "px-2 pb-1", children: [
|
|
27631
|
+
/* @__PURE__ */ jsx43("h3", { className: "text-[13px] font-medium text-[var(--text-primary)]", children: labels.recommendedTemplatesTitle }),
|
|
27632
|
+
/* @__PURE__ */ jsx43("p", { className: "pt-0.5 text-[12px] leading-[1.35] text-[var(--text-secondary)]", children: labels.recommendedTemplatesDescription })
|
|
27386
27633
|
] }),
|
|
27387
|
-
labels.recommendedTemplates.map((template, index) => /* @__PURE__ */
|
|
27388
|
-
|
|
27634
|
+
labels.recommendedTemplates.map((template, index) => /* @__PURE__ */ jsxs32(
|
|
27635
|
+
Button7,
|
|
27389
27636
|
{
|
|
27390
27637
|
ref: index === 0 ? firstTemplateRef : void 0,
|
|
27391
27638
|
className: "h-auto w-full justify-between px-2 py-2 text-left whitespace-normal",
|
|
@@ -27406,13 +27653,13 @@ function RecommendedTemplateList({
|
|
|
27406
27653
|
onSelect(template);
|
|
27407
27654
|
},
|
|
27408
27655
|
children: [
|
|
27409
|
-
/* @__PURE__ */
|
|
27410
|
-
/* @__PURE__ */
|
|
27411
|
-
/* @__PURE__ */
|
|
27656
|
+
/* @__PURE__ */ jsxs32("span", { className: "flex min-w-0 flex-col items-start gap-0.5", children: [
|
|
27657
|
+
/* @__PURE__ */ jsx43("span", { className: "w-full truncate font-medium text-[var(--text-primary)]", children: template.title }),
|
|
27658
|
+
/* @__PURE__ */ jsx43("span", { className: "line-clamp-2 w-full text-[12px] leading-[1.35] text-[var(--text-secondary)]", children: template.description })
|
|
27412
27659
|
] }),
|
|
27413
|
-
/* @__PURE__ */
|
|
27660
|
+
/* @__PURE__ */ jsxs32("span", { className: "flex shrink-0 items-center gap-1 text-[12px] text-[var(--text-secondary)]", children: [
|
|
27414
27661
|
labels.useTemplate,
|
|
27415
|
-
/* @__PURE__ */
|
|
27662
|
+
/* @__PURE__ */ jsx43(ArrowRightIcon, { "data-icon": "inline-end" })
|
|
27416
27663
|
] })
|
|
27417
27664
|
]
|
|
27418
27665
|
},
|
|
@@ -27425,8 +27672,8 @@ function TemplateEntry({
|
|
|
27425
27672
|
disabled,
|
|
27426
27673
|
label
|
|
27427
27674
|
}) {
|
|
27428
|
-
return /* @__PURE__ */
|
|
27429
|
-
|
|
27675
|
+
return /* @__PURE__ */ jsxs32(
|
|
27676
|
+
Button7,
|
|
27430
27677
|
{
|
|
27431
27678
|
...action,
|
|
27432
27679
|
className: "mt-1 h-auto w-full justify-between px-2 py-2 text-left whitespace-normal",
|
|
@@ -27434,8 +27681,8 @@ function TemplateEntry({
|
|
|
27434
27681
|
type: "button",
|
|
27435
27682
|
variant: "ghost",
|
|
27436
27683
|
children: [
|
|
27437
|
-
/* @__PURE__ */
|
|
27438
|
-
/* @__PURE__ */
|
|
27684
|
+
/* @__PURE__ */ jsx43("span", { className: "font-medium", children: label }),
|
|
27685
|
+
/* @__PURE__ */ jsx43(ArrowRightIcon, { "data-icon": "inline-end" })
|
|
27439
27686
|
]
|
|
27440
27687
|
}
|
|
27441
27688
|
);
|
|
@@ -27463,15 +27710,15 @@ function PromptState({
|
|
|
27463
27710
|
icon,
|
|
27464
27711
|
label
|
|
27465
27712
|
}) {
|
|
27466
|
-
return /* @__PURE__ */
|
|
27713
|
+
return /* @__PURE__ */ jsxs32("div", { className: "flex min-h-[180px] flex-col items-center justify-center gap-2 px-4 text-center text-[13px] text-[var(--text-secondary)]", children: [
|
|
27467
27714
|
icon,
|
|
27468
|
-
/* @__PURE__ */
|
|
27715
|
+
/* @__PURE__ */ jsx43("span", { children: label }),
|
|
27469
27716
|
action
|
|
27470
27717
|
] });
|
|
27471
27718
|
}
|
|
27472
27719
|
|
|
27473
27720
|
// agent-gui/agentGuiNode/composer/AgentComposerView.tsx
|
|
27474
|
-
import { jsx as
|
|
27721
|
+
import { jsx as jsx44, jsxs as jsxs33 } from "react/jsx-runtime";
|
|
27475
27722
|
function AgentComposerView(input) {
|
|
27476
27723
|
const {
|
|
27477
27724
|
provider,
|
|
@@ -27591,7 +27838,7 @@ function AgentComposerView(input) {
|
|
|
27591
27838
|
visibleActivePrompt,
|
|
27592
27839
|
visibleDraftLargeTexts
|
|
27593
27840
|
} = input.presentation;
|
|
27594
|
-
return /* @__PURE__ */
|
|
27841
|
+
return /* @__PURE__ */ jsxs33(
|
|
27595
27842
|
"form",
|
|
27596
27843
|
{
|
|
27597
27844
|
ref: input.composerRef,
|
|
@@ -27601,12 +27848,12 @@ function AgentComposerView(input) {
|
|
|
27601
27848
|
onSubmit: submit,
|
|
27602
27849
|
children: [
|
|
27603
27850
|
fileDropOverlay,
|
|
27604
|
-
visibleActivePrompt ? /* @__PURE__ */
|
|
27851
|
+
visibleActivePrompt ? /* @__PURE__ */ jsx44(
|
|
27605
27852
|
"div",
|
|
27606
27853
|
{
|
|
27607
27854
|
className: AgentGUINode_styles_default.composerFloatingPrompt,
|
|
27608
27855
|
"data-testid": "agent-gui-composer-floating-prompt",
|
|
27609
|
-
children: /* @__PURE__ */
|
|
27856
|
+
children: /* @__PURE__ */ jsx44(
|
|
27610
27857
|
AgentInteractivePromptSurface,
|
|
27611
27858
|
{
|
|
27612
27859
|
prompt: visibleActivePrompt,
|
|
@@ -27639,7 +27886,7 @@ function AgentComposerView(input) {
|
|
|
27639
27886
|
)
|
|
27640
27887
|
}
|
|
27641
27888
|
) : null,
|
|
27642
|
-
queuedPrompts.length > 0 ? /* @__PURE__ */
|
|
27889
|
+
queuedPrompts.length > 0 ? /* @__PURE__ */ jsx44(
|
|
27643
27890
|
"div",
|
|
27644
27891
|
{
|
|
27645
27892
|
className: cn(
|
|
@@ -27647,7 +27894,7 @@ function AgentComposerView(input) {
|
|
|
27647
27894
|
AgentGUINode_styles_default.composerQueuedPromptFloating
|
|
27648
27895
|
),
|
|
27649
27896
|
"data-testid": "agent-gui-composer-queued-prompts",
|
|
27650
|
-
children: /* @__PURE__ */
|
|
27897
|
+
children: /* @__PURE__ */ jsx44(
|
|
27651
27898
|
AgentQueuedPromptPanel,
|
|
27652
27899
|
{
|
|
27653
27900
|
queueStatus,
|
|
@@ -27672,14 +27919,14 @@ function AgentComposerView(input) {
|
|
|
27672
27919
|
)
|
|
27673
27920
|
}
|
|
27674
27921
|
) : null,
|
|
27675
|
-
showProjectMissingProbe ? /* @__PURE__ */
|
|
27922
|
+
showProjectMissingProbe ? /* @__PURE__ */ jsx44(
|
|
27676
27923
|
AgentProjectMissingStatusProbe,
|
|
27677
27924
|
{
|
|
27678
27925
|
composerSettings,
|
|
27679
27926
|
onProjectMissingChange: input.setIsSelectedProjectMissing
|
|
27680
27927
|
}
|
|
27681
27928
|
) : null,
|
|
27682
|
-
/* @__PURE__ */
|
|
27929
|
+
/* @__PURE__ */ jsx44(
|
|
27683
27930
|
AgentFullAccessRestoredWarning,
|
|
27684
27931
|
{
|
|
27685
27932
|
isSettingsLoading: composerSettings.isSettingsLoading,
|
|
@@ -27689,7 +27936,7 @@ function AgentComposerView(input) {
|
|
|
27689
27936
|
visibleOnHome: isHeroLayout
|
|
27690
27937
|
}
|
|
27691
27938
|
),
|
|
27692
|
-
/* @__PURE__ */
|
|
27939
|
+
/* @__PURE__ */ jsxs33(
|
|
27693
27940
|
"div",
|
|
27694
27941
|
{
|
|
27695
27942
|
className: cn(
|
|
@@ -27698,7 +27945,7 @@ function AgentComposerView(input) {
|
|
|
27698
27945
|
),
|
|
27699
27946
|
"data-edge-glow": showEdgeGlow ? "true" : void 0,
|
|
27700
27947
|
children: [
|
|
27701
|
-
input.isSelectedProjectMissing ? /* @__PURE__ */
|
|
27948
|
+
input.isSelectedProjectMissing ? /* @__PURE__ */ jsx44(
|
|
27702
27949
|
AgentChromeNotice,
|
|
27703
27950
|
{
|
|
27704
27951
|
tone: "danger",
|
|
@@ -27710,7 +27957,7 @@ function AgentComposerView(input) {
|
|
|
27710
27957
|
description: labels.projectMissingDescription
|
|
27711
27958
|
}
|
|
27712
27959
|
) : null,
|
|
27713
|
-
/* @__PURE__ */
|
|
27960
|
+
/* @__PURE__ */ jsxs33(
|
|
27714
27961
|
"div",
|
|
27715
27962
|
{
|
|
27716
27963
|
ref: input.inputShellRef,
|
|
@@ -27720,14 +27967,14 @@ function AgentComposerView(input) {
|
|
|
27720
27967
|
title: inputDisabled && disabledReasonText ? disabledReasonText : void 0,
|
|
27721
27968
|
style: inputShellStyle,
|
|
27722
27969
|
children: [
|
|
27723
|
-
/* @__PURE__ */
|
|
27724
|
-
|
|
27970
|
+
/* @__PURE__ */ jsxs33(
|
|
27971
|
+
Popover5,
|
|
27725
27972
|
{
|
|
27726
27973
|
open: input.showFileMentionPalette,
|
|
27727
27974
|
onOpenChange: input.setIsPaletteOpen,
|
|
27728
27975
|
modal: false,
|
|
27729
27976
|
children: [
|
|
27730
|
-
/* @__PURE__ */
|
|
27977
|
+
/* @__PURE__ */ jsx44(PopoverAnchor2, { asChild: true, children: /* @__PURE__ */ jsxs33(
|
|
27731
27978
|
"div",
|
|
27732
27979
|
{
|
|
27733
27980
|
ref: input.promptInputAreaRef,
|
|
@@ -27739,7 +27986,7 @@ function AgentComposerView(input) {
|
|
|
27739
27986
|
"data-has-draft-images": draftImages.length > 0 ? "true" : void 0,
|
|
27740
27987
|
style: promptInputAreaStyle,
|
|
27741
27988
|
children: [
|
|
27742
|
-
/* @__PURE__ */
|
|
27989
|
+
/* @__PURE__ */ jsx44(
|
|
27743
27990
|
ComposerDraftAttachments,
|
|
27744
27991
|
{
|
|
27745
27992
|
draftImages,
|
|
@@ -27750,7 +27997,7 @@ function AgentComposerView(input) {
|
|
|
27750
27997
|
onExpandLargeText: expandDraftLargeTextToPrompt
|
|
27751
27998
|
}
|
|
27752
27999
|
),
|
|
27753
|
-
/* @__PURE__ */
|
|
28000
|
+
/* @__PURE__ */ jsxs33(
|
|
27754
28001
|
"div",
|
|
27755
28002
|
{
|
|
27756
28003
|
className: cn(
|
|
@@ -27758,7 +28005,7 @@ function AgentComposerView(input) {
|
|
|
27758
28005
|
!isHeroLayout && "agent-gui-node__composer-prompt-input-line"
|
|
27759
28006
|
),
|
|
27760
28007
|
children: [
|
|
27761
|
-
/* @__PURE__ */
|
|
28008
|
+
/* @__PURE__ */ jsx44(
|
|
27762
28009
|
AgentRichTextEditor,
|
|
27763
28010
|
{
|
|
27764
28011
|
ref: input.editorHandleRef,
|
|
@@ -27805,7 +28052,7 @@ function AgentComposerView(input) {
|
|
|
27805
28052
|
}
|
|
27806
28053
|
) }),
|
|
27807
28054
|
input.showFileMentionPalette && mentionPaletteFrame ? createPortal4(
|
|
27808
|
-
/* @__PURE__ */
|
|
28055
|
+
/* @__PURE__ */ jsx44(
|
|
27809
28056
|
"div",
|
|
27810
28057
|
{
|
|
27811
28058
|
"data-testid": "agent-gui-mention-palette-surface",
|
|
@@ -27815,7 +28062,7 @@ function AgentComposerView(input) {
|
|
|
27815
28062
|
"max-h-[320px] overflow-hidden border-[var(--line-1)] p-0"
|
|
27816
28063
|
),
|
|
27817
28064
|
style: mentionPaletteStyle,
|
|
27818
|
-
children: /* @__PURE__ */
|
|
28065
|
+
children: /* @__PURE__ */ jsx44(
|
|
27819
28066
|
AgentFileMentionPalette,
|
|
27820
28067
|
{
|
|
27821
28068
|
state: input.mentionSearchState,
|
|
@@ -27835,7 +28082,7 @@ function AgentComposerView(input) {
|
|
|
27835
28082
|
onNavigateHierarchy: navigateFileMentionHierarchy,
|
|
27836
28083
|
onNavigateIntoItem: navigateIntoFileMentionItem,
|
|
27837
28084
|
onOpenReferences: onRequestWorkspaceReferences ? handleOpenReferencesForEntity : void 0,
|
|
27838
|
-
provenanceFilterControl: referenceProvenanceFilter ? /* @__PURE__ */
|
|
28085
|
+
provenanceFilterControl: referenceProvenanceFilter ? /* @__PURE__ */ jsx44(
|
|
27839
28086
|
AgentReferenceProvenanceFilterControl,
|
|
27840
28087
|
{
|
|
27841
28088
|
filter: referenceProvenanceFilter
|
|
@@ -27847,7 +28094,7 @@ function AgentComposerView(input) {
|
|
|
27847
28094
|
),
|
|
27848
28095
|
mentionPaletteFrame.portalTarget
|
|
27849
28096
|
) : null,
|
|
27850
|
-
/* @__PURE__ */
|
|
28097
|
+
/* @__PURE__ */ jsx44(
|
|
27851
28098
|
ComposerFloatingMenuSurface,
|
|
27852
28099
|
{
|
|
27853
28100
|
anchorRef: input.inputShellRef,
|
|
@@ -27863,7 +28110,7 @@ function AgentComposerView(input) {
|
|
|
27863
28110
|
placement: "fixed-height",
|
|
27864
28111
|
surfaceRef: input.paletteContentRef,
|
|
27865
28112
|
testId: "agent-gui-slash-palette-surface",
|
|
27866
|
-
children: /* @__PURE__ */
|
|
28113
|
+
children: /* @__PURE__ */ jsx44(
|
|
27867
28114
|
AgentSlashCommandPalette,
|
|
27868
28115
|
{
|
|
27869
28116
|
entries: slashPaletteEntries,
|
|
@@ -27886,7 +28133,7 @@ function AgentComposerView(input) {
|
|
|
27886
28133
|
)
|
|
27887
28134
|
}
|
|
27888
28135
|
),
|
|
27889
|
-
/* @__PURE__ */
|
|
28136
|
+
/* @__PURE__ */ jsx44(
|
|
27890
28137
|
ComposerFloatingMenuSurface,
|
|
27891
28138
|
{
|
|
27892
28139
|
anchorRef: input.inputShellRef,
|
|
@@ -27898,7 +28145,7 @@ function AgentComposerView(input) {
|
|
|
27898
28145
|
placement: "dynamic-above",
|
|
27899
28146
|
surfaceRef: input.paletteContentRef,
|
|
27900
28147
|
testId: "agent-gui-command-menu-surface",
|
|
27901
|
-
children: /* @__PURE__ */
|
|
28148
|
+
children: /* @__PURE__ */ jsx44(
|
|
27902
28149
|
AgentSlashStatusPanel,
|
|
27903
28150
|
{
|
|
27904
28151
|
status: slashStatus,
|
|
@@ -27926,7 +28173,7 @@ function AgentComposerView(input) {
|
|
|
27926
28173
|
)
|
|
27927
28174
|
}
|
|
27928
28175
|
),
|
|
27929
|
-
/* @__PURE__ */
|
|
28176
|
+
/* @__PURE__ */ jsx44(
|
|
27930
28177
|
ComposerFloatingMenuSurface,
|
|
27931
28178
|
{
|
|
27932
28179
|
anchorRef: input.inputShellRef,
|
|
@@ -27938,7 +28185,7 @@ function AgentComposerView(input) {
|
|
|
27938
28185
|
placement: "dynamic-above",
|
|
27939
28186
|
surfaceRef: input.paletteContentRef,
|
|
27940
28187
|
testId: "agent-gui-command-menu-surface",
|
|
27941
|
-
children: /* @__PURE__ */
|
|
28188
|
+
children: /* @__PURE__ */ jsx44(
|
|
27942
28189
|
AgentReviewPickerPanel,
|
|
27943
28190
|
{
|
|
27944
28191
|
labels: labels.reviewPicker,
|
|
@@ -27952,7 +28199,7 @@ function AgentComposerView(input) {
|
|
|
27952
28199
|
]
|
|
27953
28200
|
}
|
|
27954
28201
|
),
|
|
27955
|
-
/* @__PURE__ */
|
|
28202
|
+
/* @__PURE__ */ jsx44(
|
|
27956
28203
|
ComposerFooter,
|
|
27957
28204
|
{
|
|
27958
28205
|
workspaceId,
|
|
@@ -27973,10 +28220,12 @@ function AgentComposerView(input) {
|
|
|
27973
28220
|
isPlanModeActive: input.isPlanModeActive,
|
|
27974
28221
|
isTuttiModeActive: input.isTuttiModeActive,
|
|
27975
28222
|
isTuttiModeUpdating: input.isTuttiModeUpdating,
|
|
28223
|
+
tuttiModeOrchestrationIntensity: input.tuttiModeOrchestrationIntensity,
|
|
27976
28224
|
onClearPlanMode: input.onClearPlanMode,
|
|
27977
28225
|
onClearTuttiMode: input.onClearTuttiMode,
|
|
28226
|
+
onTuttiModeOrchestrationIntensityChange: input.onTuttiModeOrchestrationIntensityChange,
|
|
27978
28227
|
composerActionButton,
|
|
27979
|
-
quickPromptControl: /* @__PURE__ */
|
|
28228
|
+
quickPromptControl: /* @__PURE__ */ jsx44(
|
|
27980
28229
|
AgentQuickPromptPopover,
|
|
27981
28230
|
{
|
|
27982
28231
|
controller: input.quickPromptLibrary,
|
|
@@ -28009,13 +28258,13 @@ function AgentComposerView(input) {
|
|
|
28009
28258
|
]
|
|
28010
28259
|
}
|
|
28011
28260
|
),
|
|
28012
|
-
showProjectRow ? /* @__PURE__ */
|
|
28261
|
+
showProjectRow ? /* @__PURE__ */ jsxs33(
|
|
28013
28262
|
"div",
|
|
28014
28263
|
{
|
|
28015
28264
|
className: AgentGUINode_styles_default.composerProjectRow,
|
|
28016
28265
|
"data-project-missing": input.isSelectedProjectMissing ? "true" : void 0,
|
|
28017
28266
|
children: [
|
|
28018
|
-
showHeroProjectSelector ? /* @__PURE__ */
|
|
28267
|
+
showHeroProjectSelector ? /* @__PURE__ */ jsx44(
|
|
28019
28268
|
AgentProjectDropdown,
|
|
28020
28269
|
{
|
|
28021
28270
|
composerSettings,
|
|
@@ -28031,14 +28280,14 @@ function AgentComposerView(input) {
|
|
|
28031
28280
|
onProjectPathChange
|
|
28032
28281
|
}
|
|
28033
28282
|
) : null,
|
|
28034
|
-
activePromptTip ? /* @__PURE__ */
|
|
28283
|
+
activePromptTip ? /* @__PURE__ */ jsx44(
|
|
28035
28284
|
"div",
|
|
28036
28285
|
{
|
|
28037
28286
|
className: AgentGUINode_styles_default.composerPromptTips,
|
|
28038
28287
|
"data-testid": "agent-gui-prompt-tips",
|
|
28039
|
-
children: !previewMode && input.isPromptTipOverflowing && promptTipNode ? /* @__PURE__ */
|
|
28040
|
-
/* @__PURE__ */
|
|
28041
|
-
/* @__PURE__ */
|
|
28288
|
+
children: !previewMode && input.isPromptTipOverflowing && promptTipNode ? /* @__PURE__ */ jsx44(TooltipProvider6, { delayDuration: 0, children: /* @__PURE__ */ jsxs33(Tooltip8, { children: [
|
|
28289
|
+
/* @__PURE__ */ jsx44(TooltipTrigger8, { asChild: true, children: promptTipNode }),
|
|
28290
|
+
/* @__PURE__ */ jsx44(
|
|
28042
28291
|
TooltipContent8,
|
|
28043
28292
|
{
|
|
28044
28293
|
align: "end",
|
|
@@ -28062,7 +28311,7 @@ function AgentComposerView(input) {
|
|
|
28062
28311
|
}
|
|
28063
28312
|
|
|
28064
28313
|
// agent-gui/agentGuiNode/composer/useAgentMentionSearchController.ts
|
|
28065
|
-
import { useEffect as useEffect27, useMemo as useMemo33, useRef as useRef38, useState as
|
|
28314
|
+
import { useEffect as useEffect27, useMemo as useMemo33, useRef as useRef38, useState as useState26 } from "react";
|
|
28066
28315
|
import { useRichTextMentionService } from "@tutti-os/ui-rich-text/editor";
|
|
28067
28316
|
var EMPTY_AGENT_CONTEXT_MENTION_PROVIDERS = [];
|
|
28068
28317
|
function useAgentMentionSearchController(referenceProvenanceFilter) {
|
|
@@ -28071,7 +28320,7 @@ function useAgentMentionSearchController(referenceProvenanceFilter) {
|
|
|
28071
28320
|
() => mentionService?.listProviders().filter(isAgentContextMentionProvider) ?? EMPTY_AGENT_CONTEXT_MENTION_PROVIDERS,
|
|
28072
28321
|
[mentionService]
|
|
28073
28322
|
);
|
|
28074
|
-
const [mentionSearchState, setMentionSearchState] =
|
|
28323
|
+
const [mentionSearchState, setMentionSearchState] = useState26(INITIAL_AGENT_MENTION_SEARCH_STATE);
|
|
28075
28324
|
const mentionControllerRef = useRef38(
|
|
28076
28325
|
null
|
|
28077
28326
|
);
|
|
@@ -28120,7 +28369,7 @@ var INITIAL_AGENT_MENTION_SEARCH_STATE = {
|
|
|
28120
28369
|
};
|
|
28121
28370
|
|
|
28122
28371
|
// agent-gui/agentGuiNode/composer/quickPrompts/useAgentQuickPromptLibrary.ts
|
|
28123
|
-
import { useCallback as useCallback45, useMemo as useMemo34, useRef as useRef39, useState as
|
|
28372
|
+
import { useCallback as useCallback45, useMemo as useMemo34, useRef as useRef39, useState as useState27 } from "react";
|
|
28124
28373
|
var unavailableSnapshot = {
|
|
28125
28374
|
enabled: false,
|
|
28126
28375
|
status: "idle",
|
|
@@ -28142,21 +28391,21 @@ function useAgentQuickPromptLibrary(input) {
|
|
|
28142
28391
|
quickPrompts ?? unavailableQuickPromptStore,
|
|
28143
28392
|
selectQuickPromptSnapshot
|
|
28144
28393
|
);
|
|
28145
|
-
const [mode, setMode] =
|
|
28394
|
+
const [mode, setMode] = useState27("closed");
|
|
28146
28395
|
const modeRef = useRef39(mode);
|
|
28147
28396
|
modeRef.current = mode;
|
|
28148
|
-
const [searchQuery, setSearchQuery] =
|
|
28149
|
-
const [selectedPrompt, setSelectedPrompt] =
|
|
28150
|
-
const [initialDraft, setInitialDraft] =
|
|
28151
|
-
const [promptToDelete, setPromptToDelete] =
|
|
28152
|
-
const [mutationError, setMutationError] =
|
|
28153
|
-
const [isSaving, setIsSaving] =
|
|
28154
|
-
const [isDeleting, setIsDeleting] =
|
|
28155
|
-
const [isReordering, setIsReordering] =
|
|
28156
|
-
const [reorderError, setReorderError] =
|
|
28397
|
+
const [searchQuery, setSearchQuery] = useState27("");
|
|
28398
|
+
const [selectedPrompt, setSelectedPrompt] = useState27(null);
|
|
28399
|
+
const [initialDraft, setInitialDraft] = useState27(null);
|
|
28400
|
+
const [promptToDelete, setPromptToDelete] = useState27(null);
|
|
28401
|
+
const [mutationError, setMutationError] = useState27(null);
|
|
28402
|
+
const [isSaving, setIsSaving] = useState27(false);
|
|
28403
|
+
const [isDeleting, setIsDeleting] = useState27(false);
|
|
28404
|
+
const [isReordering, setIsReordering] = useState27(false);
|
|
28405
|
+
const [reorderError, setReorderError] = useState27(null);
|
|
28157
28406
|
const capabilityAvailable = Boolean(quickPrompts && snapshot.enabled);
|
|
28158
28407
|
const disclosureAvailable = capabilityAvailable && !disabled;
|
|
28159
|
-
const [previousDisclosureAvailable, setPreviousDisclosureAvailable] =
|
|
28408
|
+
const [previousDisclosureAvailable, setPreviousDisclosureAvailable] = useState27(disclosureAvailable);
|
|
28160
28409
|
const disclosureAvailableRef = useRef39(disclosureAvailable);
|
|
28161
28410
|
disclosureAvailableRef.current = disclosureAvailable;
|
|
28162
28411
|
if (previousDisclosureAvailable !== disclosureAvailable) {
|
|
@@ -28437,7 +28686,7 @@ function isVersionConflict(error) {
|
|
|
28437
28686
|
}
|
|
28438
28687
|
|
|
28439
28688
|
// agent-gui/agentGuiNode/composer/useScopedProjectMissingState.ts
|
|
28440
|
-
import { useCallback as useCallback46, useRef as useRef40, useState as
|
|
28689
|
+
import { useCallback as useCallback46, useRef as useRef40, useState as useState28 } from "react";
|
|
28441
28690
|
function useScopedProjectMissingState(scopeKey) {
|
|
28442
28691
|
const identityRef = useRef40({
|
|
28443
28692
|
key: scopeKey,
|
|
@@ -28450,7 +28699,7 @@ function useScopedProjectMissingState(scopeKey) {
|
|
|
28450
28699
|
};
|
|
28451
28700
|
}
|
|
28452
28701
|
const identity = identityRef.current;
|
|
28453
|
-
const [result, setResult] =
|
|
28702
|
+
const [result, setResult] = useState28({
|
|
28454
28703
|
identity,
|
|
28455
28704
|
isMissing: false
|
|
28456
28705
|
});
|
|
@@ -28538,7 +28787,7 @@ function preparedEntry(file, sourceIndex) {
|
|
|
28538
28787
|
}
|
|
28539
28788
|
|
|
28540
28789
|
// agent-gui/agentGuiNode/AgentComposer.tsx
|
|
28541
|
-
import { jsx as
|
|
28790
|
+
import { jsx as jsx45 } from "react/jsx-runtime";
|
|
28542
28791
|
var DOCK_COMPOSER_INPUT_MIN_HEIGHT2 = 56;
|
|
28543
28792
|
var DOCK_COMPOSER_TEXT_LINE_HEIGHT2 = 24;
|
|
28544
28793
|
var DOCK_COMPOSER_MAX_VISIBLE_TEXT_LINES2 = 3.5;
|
|
@@ -28598,6 +28847,8 @@ function AgentComposer(props) {
|
|
|
28598
28847
|
onSettingsChange,
|
|
28599
28848
|
onTuttiModeChange = () => {
|
|
28600
28849
|
},
|
|
28850
|
+
onTuttiModeOrchestrationIntensityChange = () => {
|
|
28851
|
+
},
|
|
28601
28852
|
capabilityMenuState,
|
|
28602
28853
|
capabilityControlsReadOnly = false,
|
|
28603
28854
|
onSubmit,
|
|
@@ -28641,8 +28892,8 @@ function AgentComposer(props) {
|
|
|
28641
28892
|
hadPrefill: agentComposerDraftHasContent(draftContent)
|
|
28642
28893
|
});
|
|
28643
28894
|
};
|
|
28644
|
-
const [isPaletteOpen, setIsPaletteOpen] =
|
|
28645
|
-
const [isReviewPickerOpen, setIsReviewPickerOpen] =
|
|
28895
|
+
const [isPaletteOpen, setIsPaletteOpen] = useState29(true);
|
|
28896
|
+
const [isReviewPickerOpen, setIsReviewPickerOpen] = useState29(false);
|
|
28646
28897
|
const submitWithComposerModifiers = (content, displayPrompt, options) => {
|
|
28647
28898
|
onSubmit(
|
|
28648
28899
|
content,
|
|
@@ -28663,19 +28914,19 @@ function AgentComposer(props) {
|
|
|
28663
28914
|
} : void 0
|
|
28664
28915
|
);
|
|
28665
28916
|
};
|
|
28666
|
-
const [highlightedIndex, setHighlightedIndex] =
|
|
28667
|
-
const [mentionHighlightedKey, setMentionHighlightedKey] =
|
|
28668
|
-
const [shouldCenterMentionHighlight, setShouldCenterMentionHighlight] =
|
|
28917
|
+
const [highlightedIndex, setHighlightedIndex] = useState29(0);
|
|
28918
|
+
const [mentionHighlightedKey, setMentionHighlightedKey] = useState29(null);
|
|
28919
|
+
const [shouldCenterMentionHighlight, setShouldCenterMentionHighlight] = useState29(false);
|
|
28669
28920
|
const [
|
|
28670
28921
|
shouldResetMentionHighlightToFilter,
|
|
28671
28922
|
setShouldResetMentionHighlightToFilter
|
|
28672
|
-
] =
|
|
28673
|
-
const [paletteDraftPrompt, setPaletteDraftPrompt] =
|
|
28923
|
+
] = useState29(false);
|
|
28924
|
+
const [paletteDraftPrompt, setPaletteDraftPrompt] = useState29(
|
|
28674
28925
|
goalDraftObjective ?? draftPrompt
|
|
28675
28926
|
);
|
|
28676
|
-
const [fileMentionSuggestion, setFileMentionSuggestion] =
|
|
28927
|
+
const [fileMentionSuggestion, setFileMentionSuggestion] = useState29(null);
|
|
28677
28928
|
const [isSelectedProjectMissing, setIsSelectedProjectMissing] = useScopedProjectMissingState(draftScopeKey);
|
|
28678
|
-
const [isSlashStatusPanelOpen, setIsSlashStatusPanelOpen] =
|
|
28929
|
+
const [isSlashStatusPanelOpen, setIsSlashStatusPanelOpen] = useState29(false);
|
|
28679
28930
|
const slashStatusAgentSessionId = slashStatus?.agentSessionId ?? null;
|
|
28680
28931
|
const previousSlashStatusAgentSessionIdRef = useRef41(
|
|
28681
28932
|
slashStatusAgentSessionId
|
|
@@ -28701,15 +28952,15 @@ function AgentComposer(props) {
|
|
|
28701
28952
|
const wasActiveRef = useRef41(isActive);
|
|
28702
28953
|
const lastComposerFocusRequestRef = useRef41(null);
|
|
28703
28954
|
const autoMentionHighlightedKeyRef = useRef41(null);
|
|
28704
|
-
const [isPromptTipOverflowing, setIsPromptTipOverflowing] =
|
|
28705
|
-
const [dockComposerInputHeight, setDockComposerInputHeight] =
|
|
28955
|
+
const [isPromptTipOverflowing, setIsPromptTipOverflowing] = useState29(false);
|
|
28956
|
+
const [dockComposerInputHeight, setDockComposerInputHeight] = useState29(
|
|
28706
28957
|
DOCK_COMPOSER_INPUT_MIN_HEIGHT2
|
|
28707
28958
|
);
|
|
28708
|
-
const [dockComposerInputMaxHeight, setDockComposerInputMaxHeight] =
|
|
28959
|
+
const [dockComposerInputMaxHeight, setDockComposerInputMaxHeight] = useState29(
|
|
28709
28960
|
DOCK_COMPOSER_INPUT_MAX_HEIGHT2
|
|
28710
28961
|
);
|
|
28711
|
-
const [dockComposerAttachmentHeight, setDockComposerAttachmentHeight] =
|
|
28712
|
-
const [dockComposerTextHeight, setDockComposerTextHeight] =
|
|
28962
|
+
const [dockComposerAttachmentHeight, setDockComposerAttachmentHeight] = useState29(0);
|
|
28963
|
+
const [dockComposerTextHeight, setDockComposerTextHeight] = useState29(
|
|
28713
28964
|
DOCK_COMPOSER_INPUT_MIN_HEIGHT2
|
|
28714
28965
|
);
|
|
28715
28966
|
const paletteCatalog = useComposerPaletteCatalog({
|
|
@@ -29061,7 +29312,7 @@ function AgentComposer(props) {
|
|
|
29061
29312
|
canUploadAttachment,
|
|
29062
29313
|
promptImagesSupported
|
|
29063
29314
|
});
|
|
29064
|
-
return /* @__PURE__ */
|
|
29315
|
+
return /* @__PURE__ */ jsx45(
|
|
29065
29316
|
AgentComposerView,
|
|
29066
29317
|
{
|
|
29067
29318
|
props,
|
|
@@ -29102,19 +29353,21 @@ function AgentComposer(props) {
|
|
|
29102
29353
|
isPlanModeActive: composerSettings.draftSettings.planMode,
|
|
29103
29354
|
isTuttiModeActive: tuttiModeActive,
|
|
29104
29355
|
isTuttiModeUpdating: tuttiModeUpdating,
|
|
29356
|
+
tuttiModeOrchestrationIntensity,
|
|
29105
29357
|
onClearPlanMode: () => onSettingsChange({ planMode: false }),
|
|
29106
29358
|
onClearTuttiMode: () => onTuttiModeChange(false),
|
|
29359
|
+
onTuttiModeOrchestrationIntensityChange,
|
|
29107
29360
|
isPromptTipOverflowing
|
|
29108
29361
|
}
|
|
29109
29362
|
);
|
|
29110
29363
|
}
|
|
29111
29364
|
|
|
29112
29365
|
// agent-gui/agentGuiNode/AgentHomeSuggestions.tsx
|
|
29113
|
-
import { memo as memo2, useState as
|
|
29366
|
+
import { memo as memo2, useState as useState30 } from "react";
|
|
29114
29367
|
import { ArrowLeftRight, Code, Compass, Import, Pencil, X as X6 } from "lucide-react";
|
|
29115
|
-
import { jsx as
|
|
29368
|
+
import { jsx as jsx46, jsxs as jsxs34 } from "react/jsx-runtime";
|
|
29116
29369
|
function TuttiIcon(props) {
|
|
29117
|
-
return /* @__PURE__ */
|
|
29370
|
+
return /* @__PURE__ */ jsx46(
|
|
29118
29371
|
"svg",
|
|
29119
29372
|
{
|
|
29120
29373
|
width: "24",
|
|
@@ -29123,7 +29376,7 @@ function TuttiIcon(props) {
|
|
|
29123
29376
|
fill: "none",
|
|
29124
29377
|
xmlns: "http://www.w3.org/2000/svg",
|
|
29125
29378
|
...props,
|
|
29126
|
-
children: /* @__PURE__ */
|
|
29379
|
+
children: /* @__PURE__ */ jsx46(
|
|
29127
29380
|
"path",
|
|
29128
29381
|
{
|
|
29129
29382
|
d: "M11.9239 0.561676C15.4275 0.704643 18.0594 1.93856 19.9297 3.83316L20.0235 3.92984C23.0545 7.07999 23.0228 10.8742 22.9942 11.9015C22.8949 15.4888 21.1541 19.3943 18.0293 21.4328C15.586 23.0271 12.2829 23.8614 9.04007 23.215C5.73644 22.5564 2.62421 20.3849 0.626007 16.2238L3.20804 14.9836C4.83809 18.3782 7.22804 19.9325 9.60062 20.4054C12.0339 20.8904 14.5821 20.262 16.4649 19.0334C16.5072 19.0058 16.5482 18.9761 16.5899 18.9474C16.1093 18.8715 15.6404 18.7558 15.2119 18.5773C14.5812 18.3145 13.9737 17.8946 13.5371 17.2316C13.3482 16.9446 13.2091 16.6341 13.1094 16.3068V19.089C11.9062 19.089 10.438 19.0648 9.26761 18.5773C8.63673 18.3144 8.0285 17.8949 7.59183 17.2316C7.19348 16.6265 7.00806 15.9216 6.97952 15.1593C5.38231 15.2733 4.05048 14.8926 3.01273 14.0617C1.45415 12.8137 0.967716 10.8679 0.965851 9.3605C0.960457 5.06718 4.93349 0.556422 11.211 0.548004L11.9239 0.561676ZM12.3096 13.4562C11.6218 13.7868 10.8654 14.1393 9.99808 14.4611C9.94487 14.4808 9.89073 14.4979 9.83792 14.5168V14.9503C9.83792 15.3764 9.92819 15.571 9.98441 15.6564C10.0384 15.7384 10.1371 15.8371 10.3692 15.9337C10.921 16.1636 11.797 16.223 13.084 16.2238C12.9714 15.8224 12.918 15.3955 12.918 14.9503V13.1632C12.7221 13.2577 12.5204 13.3549 12.3096 13.4562ZM11.2149 3.41226C6.37997 3.4188 3.86603 6.76409 3.83011 9.29703V9.3566C3.83137 10.3769 4.17272 11.3206 4.80276 11.8253C5.17526 12.1236 5.83321 12.4102 6.97366 12.2882V6.38785H9.83792V11.4386C10.2583 11.2583 10.6625 11.0703 11.0684 10.8752C11.6533 10.594 12.2733 10.2876 12.918 10.008V6.38785H15.7823V9.08414C16.6423 8.90981 17.6005 8.80628 18.708 8.80484L18.7119 11.6691C17.5478 11.6706 16.6096 11.8073 15.7823 12.0255V14.9503C15.7823 15.3762 15.8725 15.5709 15.9287 15.6564C15.9827 15.7384 16.0816 15.8371 16.3135 15.9337C16.8534 16.1586 17.7037 16.2204 18.9453 16.2238C19.6618 14.896 20.0887 13.3489 20.1309 11.8214C20.1545 10.9724 20.155 8.19654 17.96 5.91519C16.5592 4.45958 14.4443 3.40841 11.2149 3.41226Z",
|
|
@@ -29134,7 +29387,7 @@ function TuttiIcon(props) {
|
|
|
29134
29387
|
);
|
|
29135
29388
|
}
|
|
29136
29389
|
function TaskBreakdownIcon(props) {
|
|
29137
|
-
return /* @__PURE__ */
|
|
29390
|
+
return /* @__PURE__ */ jsx46(
|
|
29138
29391
|
"svg",
|
|
29139
29392
|
{
|
|
29140
29393
|
width: "24",
|
|
@@ -29143,7 +29396,7 @@ function TaskBreakdownIcon(props) {
|
|
|
29143
29396
|
fill: "none",
|
|
29144
29397
|
xmlns: "http://www.w3.org/2000/svg",
|
|
29145
29398
|
...props,
|
|
29146
|
-
children: /* @__PURE__ */
|
|
29399
|
+
children: /* @__PURE__ */ jsx46(
|
|
29147
29400
|
"path",
|
|
29148
29401
|
{
|
|
29149
29402
|
d: "M8.29297 14.793C8.68349 14.4025 9.31651 14.4025 9.70703 14.793C10.0976 15.1835 10.0976 15.8166 9.70703 16.2071L5.70703 20.2071C5.31651 20.5976 4.68349 20.5976 4.29297 20.2071L2.29297 18.2071C1.90244 17.8166 1.90244 17.1836 2.29297 16.793C2.68349 16.4025 3.31651 16.4025 3.70703 16.793L5 18.086L8.29297 14.793ZM21 18.0001C21.5523 18.0001 22 18.4478 22 19.0001C22 19.5524 21.5523 20.0001 21 20.0001H13C12.4477 20.0001 12 19.5524 12 19.0001C12 18.4478 12.4477 18.0001 13 18.0001H21ZM21 11C21.5523 11 22 11.4478 22 12C22 12.5523 21.5523 13 21 13H13C12.4477 13 12 12.5523 12 12C12 11.4478 12.4477 11 13 11H21ZM8 3.5C9.10457 3.5 10 4.39543 10 5.50001V9.50003C10 10.6046 9.10457 11.5 8 11.5H4C2.89543 11.5 2 10.6046 2 9.50003V5.50001C2 4.39543 2.89543 3.5 4 3.5H8ZM4 9.50003H8V5.50001H4V9.50003ZM21 4C21.5523 4 22 4.44772 22 5.00001C22 5.55229 21.5523 6.00001 21 6.00001H13C12.4477 6.00001 12 5.55229 12 5.00001C12 4.44772 12.4477 4 13 4H21Z",
|
|
@@ -29154,7 +29407,7 @@ function TaskBreakdownIcon(props) {
|
|
|
29154
29407
|
);
|
|
29155
29408
|
}
|
|
29156
29409
|
function BattleIcon(props) {
|
|
29157
|
-
return /* @__PURE__ */
|
|
29410
|
+
return /* @__PURE__ */ jsx46(
|
|
29158
29411
|
"svg",
|
|
29159
29412
|
{
|
|
29160
29413
|
width: "24",
|
|
@@ -29163,7 +29416,7 @@ function BattleIcon(props) {
|
|
|
29163
29416
|
fill: "none",
|
|
29164
29417
|
xmlns: "http://www.w3.org/2000/svg",
|
|
29165
29418
|
...props,
|
|
29166
|
-
children: /* @__PURE__ */
|
|
29419
|
+
children: /* @__PURE__ */ jsx46(
|
|
29167
29420
|
"path",
|
|
29168
29421
|
{
|
|
29169
29422
|
d: "M4.29297 13.293C4.68349 12.9024 5.31651 12.9024 5.70703 13.293L9.70703 17.293C10.0976 17.6835 10.0976 18.3165 9.70703 18.707C9.31651 19.0976 8.68349 19.0976 8.29297 18.707L7.5 17.9141L5.41406 20L5.70703 20.293C6.09756 20.6835 6.09756 21.3165 5.70703 21.707C5.31651 22.0976 4.68349 22.0976 4.29297 21.707L2.29297 19.707C1.90244 19.3165 1.90244 18.6835 2.29297 18.293C2.68349 17.9024 3.31651 17.9024 3.70703 18.293L4 18.5859L6.08594 16.5L4.29297 14.707C3.90244 14.3165 3.90244 13.6835 4.29297 13.293ZM6 2C6.26522 2 6.51949 2.10543 6.70703 2.29297L17.5 13.0859L18.293 12.293C18.6835 11.9024 19.3165 11.9024 19.707 12.293C20.0976 12.6835 20.0976 13.3165 19.707 13.707L17.4141 16L20 18.5859L20.293 18.293C20.6835 17.9024 21.3165 17.9024 21.707 18.293C22.0976 18.6835 22.0976 19.3165 21.707 19.707L19.707 21.707C19.3165 22.0976 18.6835 22.0976 18.293 21.707C17.9024 21.3165 17.9024 20.6835 18.293 20.293L18.5859 20L16 17.4141L13.707 19.707C13.3165 20.0976 12.6835 20.0976 12.293 19.707C11.9024 19.3165 11.9024 18.6835 12.293 18.293L13.0859 17.5L2.29297 6.70703C2.10543 6.51949 2 6.26522 2 6V3C2 2.44772 2.44772 2 3 2H6ZM4 5.58594L14.5 16.0859L16.0859 14.5L5.58594 4H4V5.58594ZM21 2C21.5523 2 22 2.44772 22 3V6C22 6.26522 21.8946 6.51949 21.707 6.70703L18.207 10.207C17.8165 10.5976 17.1835 10.5976 16.793 10.207C16.4024 9.81651 16.4024 9.18349 16.793 8.79297L20 5.58594V4H18.4141L15.207 7.20703C14.8165 7.59756 14.1835 7.59756 13.793 7.20703C13.4024 6.81651 13.4024 6.18349 13.793 5.79297L17.293 2.29297L17.3662 2.22656C17.5442 2.08073 17.7679 2 18 2H21Z",
|
|
@@ -29174,7 +29427,7 @@ function BattleIcon(props) {
|
|
|
29174
29427
|
);
|
|
29175
29428
|
}
|
|
29176
29429
|
function QualityReviewIcon(props) {
|
|
29177
|
-
return /* @__PURE__ */
|
|
29430
|
+
return /* @__PURE__ */ jsx46(
|
|
29178
29431
|
"svg",
|
|
29179
29432
|
{
|
|
29180
29433
|
width: "24",
|
|
@@ -29183,7 +29436,7 @@ function QualityReviewIcon(props) {
|
|
|
29183
29436
|
fill: "none",
|
|
29184
29437
|
xmlns: "http://www.w3.org/2000/svg",
|
|
29185
29438
|
...props,
|
|
29186
|
-
children: /* @__PURE__ */
|
|
29439
|
+
children: /* @__PURE__ */ jsx46(
|
|
29187
29440
|
"path",
|
|
29188
29441
|
{
|
|
29189
29442
|
d: "M20 2C20.7957 2 21.5585 2.3163 22.1211 2.87891C22.6837 3.44152 23 4.20435 23 5V17C23 17.7957 22.6837 18.5585 22.1211 19.1211C21.5585 19.6837 20.7957 20 20 20H6.82812C6.56296 20.0001 6.30857 20.1054 6.12109 20.293L3.91895 22.4951C3.6799 22.7341 3.37545 22.8969 3.04395 22.9629C2.71233 23.0288 2.36805 22.9956 2.05566 22.8662C1.74327 22.7368 1.47598 22.5174 1.28809 22.2363C1.10019 21.9552 1.00004 21.6243 1 21.2861V5C1 4.20435 1.3163 3.44152 1.87891 2.87891C2.44152 2.3163 3.20435 2 4 2H20ZM4 4C3.73478 4 3.4805 4.10543 3.29297 4.29297C3.10543 4.4805 3 4.73478 3 5V20.5859L4.70703 18.8789L4.92676 18.6797C5.46048 18.2422 6.13198 18.0001 6.82812 18H20C20.2652 18 20.5195 17.8946 20.707 17.707C20.8946 17.5195 21 17.2652 21 17V5C21 4.73478 20.8946 4.48051 20.707 4.29297C20.5195 4.10543 20.2652 4 20 4H4ZM9.29297 7.29297C9.68349 6.90244 10.3165 6.90244 10.707 7.29297C11.0976 7.68349 11.0976 8.31651 10.707 8.70703L8.41406 11L10.707 13.293C11.0976 13.6835 11.0976 14.3165 10.707 14.707C10.3165 15.0976 9.68349 15.0976 9.29297 14.707L6.29297 11.707C5.90244 11.3165 5.90244 10.6835 6.29297 10.293L9.29297 7.29297ZM13.293 7.29297C13.6835 6.90244 14.3165 6.90244 14.707 7.29297L17.707 10.293C18.0976 10.6835 18.0976 11.3165 17.707 11.707L14.707 14.707C14.3165 15.0976 13.6835 15.0976 13.293 14.707C12.9024 14.3165 12.9024 13.6835 13.293 13.293L15.5859 11L13.293 8.70703C12.9024 8.31651 12.9024 7.68349 13.293 7.29297Z",
|
|
@@ -29221,7 +29474,7 @@ var AgentHomeSuggestions = memo2(function AgentHomeSuggestions2({
|
|
|
29221
29474
|
closeLabel
|
|
29222
29475
|
}) {
|
|
29223
29476
|
"use memo";
|
|
29224
|
-
const [activeCategoryId, setActiveCategoryId] =
|
|
29477
|
+
const [activeCategoryId, setActiveCategoryId] = useState30(null);
|
|
29225
29478
|
if (categories.length === 0) {
|
|
29226
29479
|
return null;
|
|
29227
29480
|
}
|
|
@@ -29229,12 +29482,12 @@ var AgentHomeSuggestions = memo2(function AgentHomeSuggestions2({
|
|
|
29229
29482
|
(category) => category.id === activeCategoryId && !isDirectCategory(category)
|
|
29230
29483
|
) ?? null;
|
|
29231
29484
|
const ActiveCategoryIcon = activeCategory?.icon ? CATEGORY_ICON[activeCategory.icon] : null;
|
|
29232
|
-
return /* @__PURE__ */
|
|
29233
|
-
/* @__PURE__ */
|
|
29485
|
+
return /* @__PURE__ */ jsxs34("div", { className: AgentGUINode_styles_default.emptyHeroSuggestions, children: [
|
|
29486
|
+
/* @__PURE__ */ jsx46("div", { className: AgentGUINode_styles_default.emptyHeroSuggestionsChips, children: categories.map((category) => {
|
|
29234
29487
|
const Icon = category.icon ? CATEGORY_ICON[category.icon] : null;
|
|
29235
29488
|
const direct = isDirectCategory(category);
|
|
29236
29489
|
const isActive = !direct && category.id === activeCategory?.id;
|
|
29237
|
-
return /* @__PURE__ */
|
|
29490
|
+
return /* @__PURE__ */ jsxs34(
|
|
29238
29491
|
"button",
|
|
29239
29492
|
{
|
|
29240
29493
|
type: "button",
|
|
@@ -29255,23 +29508,23 @@ var AgentHomeSuggestions = memo2(function AgentHomeSuggestions2({
|
|
|
29255
29508
|
);
|
|
29256
29509
|
},
|
|
29257
29510
|
children: [
|
|
29258
|
-
Icon ? /* @__PURE__ */
|
|
29511
|
+
Icon ? /* @__PURE__ */ jsx46(
|
|
29259
29512
|
Icon,
|
|
29260
29513
|
{
|
|
29261
29514
|
className: AgentGUINode_styles_default.emptyHeroSuggestionsChipIcon,
|
|
29262
29515
|
"aria-hidden": true
|
|
29263
29516
|
}
|
|
29264
29517
|
) : null,
|
|
29265
|
-
/* @__PURE__ */
|
|
29518
|
+
/* @__PURE__ */ jsx46("span", { children: category.label })
|
|
29266
29519
|
]
|
|
29267
29520
|
},
|
|
29268
29521
|
category.id
|
|
29269
29522
|
);
|
|
29270
29523
|
}) }),
|
|
29271
|
-
activeCategory ? /* @__PURE__ */
|
|
29272
|
-
/* @__PURE__ */
|
|
29273
|
-
/* @__PURE__ */
|
|
29274
|
-
ActiveCategoryIcon ? /* @__PURE__ */
|
|
29524
|
+
activeCategory ? /* @__PURE__ */ jsxs34("div", { className: AgentGUINode_styles_default.emptyHeroSuggestionsCard, children: [
|
|
29525
|
+
/* @__PURE__ */ jsxs34("div", { className: AgentGUINode_styles_default.emptyHeroSuggestionsCardHeader, children: [
|
|
29526
|
+
/* @__PURE__ */ jsxs34("span", { className: AgentGUINode_styles_default.emptyHeroSuggestionsCardTitle, children: [
|
|
29527
|
+
ActiveCategoryIcon ? /* @__PURE__ */ jsx46(
|
|
29275
29528
|
ActiveCategoryIcon,
|
|
29276
29529
|
{
|
|
29277
29530
|
className: AgentGUINode_styles_default.emptyHeroSuggestionsChipIcon,
|
|
@@ -29280,7 +29533,7 @@ var AgentHomeSuggestions = memo2(function AgentHomeSuggestions2({
|
|
|
29280
29533
|
) : null,
|
|
29281
29534
|
activeCategory.label
|
|
29282
29535
|
] }),
|
|
29283
|
-
/* @__PURE__ */
|
|
29536
|
+
/* @__PURE__ */ jsx46(
|
|
29284
29537
|
"button",
|
|
29285
29538
|
{
|
|
29286
29539
|
type: "button",
|
|
@@ -29288,11 +29541,11 @@ var AgentHomeSuggestions = memo2(function AgentHomeSuggestions2({
|
|
|
29288
29541
|
"aria-label": closeLabel,
|
|
29289
29542
|
title: closeLabel,
|
|
29290
29543
|
onClick: () => setActiveCategoryId(null),
|
|
29291
|
-
children: /* @__PURE__ */
|
|
29544
|
+
children: /* @__PURE__ */ jsx46(X6, { "aria-hidden": true })
|
|
29292
29545
|
}
|
|
29293
29546
|
)
|
|
29294
29547
|
] }),
|
|
29295
|
-
activeCategory.items?.map((item) => /* @__PURE__ */
|
|
29548
|
+
activeCategory.items?.map((item) => /* @__PURE__ */ jsx46(
|
|
29296
29549
|
"button",
|
|
29297
29550
|
{
|
|
29298
29551
|
type: "button",
|
|
@@ -29340,7 +29593,7 @@ function createFallbackAgentGUIAgentAvatar(input) {
|
|
|
29340
29593
|
|
|
29341
29594
|
// agent-gui/agentGuiNode/view/AgentGUIEmptyHeroCarouselStage.tsx
|
|
29342
29595
|
import { Component as Component3 } from "react";
|
|
29343
|
-
import { jsx as
|
|
29596
|
+
import { jsx as jsx47, jsxs as jsxs35 } from "react/jsx-runtime";
|
|
29344
29597
|
var AgentGUIEmptyHeroCarouselStage = class extends Component3 {
|
|
29345
29598
|
alignmentActive = false;
|
|
29346
29599
|
animationFrame = null;
|
|
@@ -29374,8 +29627,8 @@ var AgentGUIEmptyHeroCarouselStage = class extends Component3 {
|
|
|
29374
29627
|
providerSelectLabel
|
|
29375
29628
|
} = this.props;
|
|
29376
29629
|
const hasCarousel = items.length > 1;
|
|
29377
|
-
return /* @__PURE__ */
|
|
29378
|
-
hasCarousel ? /* @__PURE__ */
|
|
29630
|
+
return /* @__PURE__ */ jsxs35("div", { ref: this.setStage, className: AgentGUINode_styles_default.emptyHeroCarouselStage, children: [
|
|
29631
|
+
hasCarousel ? /* @__PURE__ */ jsx47("div", { ref: this.setLayer, className: AgentGUINode_styles_default.emptyHeroCarouselLayer, children: /* @__PURE__ */ jsx47(
|
|
29379
29632
|
AgentGUIHeroAgentCarousel,
|
|
29380
29633
|
{
|
|
29381
29634
|
activeAgentTargetId,
|
|
@@ -29483,7 +29736,7 @@ var AgentGUIEmptyHeroCarouselStage = class extends Component3 {
|
|
|
29483
29736
|
// agent-gui/agentGuiNode/view/AgentTargetSetupGate.tsx
|
|
29484
29737
|
import { useExternalStoreSnapshot } from "@tutti-os/ui-react-hooks";
|
|
29485
29738
|
import {
|
|
29486
|
-
Button as
|
|
29739
|
+
Button as Button8,
|
|
29487
29740
|
RefreshIcon,
|
|
29488
29741
|
Select as Select4,
|
|
29489
29742
|
SelectContent as SelectContent4,
|
|
@@ -29531,7 +29784,7 @@ function isFailed(status) {
|
|
|
29531
29784
|
}
|
|
29532
29785
|
|
|
29533
29786
|
// shared/agentEnv/agentTargetSetupController.tsx
|
|
29534
|
-
import { jsx as
|
|
29787
|
+
import { jsx as jsx48 } from "react/jsx-runtime";
|
|
29535
29788
|
var DISABLED_SETUP_STATE = {
|
|
29536
29789
|
snapshot: null,
|
|
29537
29790
|
loading: false,
|
|
@@ -29542,7 +29795,7 @@ function AgentTargetSetupControllerProvider({
|
|
|
29542
29795
|
children,
|
|
29543
29796
|
controller
|
|
29544
29797
|
}) {
|
|
29545
|
-
return /* @__PURE__ */
|
|
29798
|
+
return /* @__PURE__ */ jsx48(AgentTargetSetupControllerContext.Provider, { value: controller, children });
|
|
29546
29799
|
}
|
|
29547
29800
|
function useAgentTargetSetupController() {
|
|
29548
29801
|
const controller = useContext(AgentTargetSetupControllerContext);
|
|
@@ -29707,7 +29960,7 @@ function createClientActionId() {
|
|
|
29707
29960
|
}
|
|
29708
29961
|
|
|
29709
29962
|
// agent-gui/agentGuiNode/view/AgentTargetSetupGate.tsx
|
|
29710
|
-
import { Fragment as Fragment15, jsx as
|
|
29963
|
+
import { Fragment as Fragment15, jsx as jsx49, jsxs as jsxs36 } from "react/jsx-runtime";
|
|
29711
29964
|
function AgentTargetSetupGate({
|
|
29712
29965
|
children,
|
|
29713
29966
|
carouselMountedExternally,
|
|
@@ -29734,7 +29987,7 @@ function AgentTargetSetupGate({
|
|
|
29734
29987
|
(method) => method.id === selectedAuthMethodId
|
|
29735
29988
|
) ? selectedAuthMethodId ?? "" : authMethods.some((method) => method.id === account?.authMethodId) ? account?.authMethodId ?? "" : authMethods[0]?.id ?? "";
|
|
29736
29989
|
if (!enabled) {
|
|
29737
|
-
return /* @__PURE__ */
|
|
29990
|
+
return /* @__PURE__ */ jsx49(Fragment15, { children });
|
|
29738
29991
|
}
|
|
29739
29992
|
const setupChecking = !snapshot && !failed;
|
|
29740
29993
|
const setupBlocked = failed || !snapshot || snapshot.status !== "ready";
|
|
@@ -29758,27 +30011,27 @@ function AgentTargetSetupGate({
|
|
|
29758
30011
|
const accountDetail = account ? [account.displayName, account.organization].filter(Boolean).join(" \xB7 ") : void 0;
|
|
29759
30012
|
const setupDescription = setupChecking ? t("agentHost.agentGui.targetSetupChecking") : snapshot?.status === "auth_required" ? t("agentHost.agentGui.targetSetupAuthRequired") : snapshot?.status === "ready" ? t("agentHost.agentGui.targetSetupReady") : t("agentHost.agentGui.targetSetupDescription");
|
|
29760
30013
|
const authenticationAvailable = snapshot?.status === "auth_required" || snapshot?.status === "ready";
|
|
29761
|
-
return /* @__PURE__ */
|
|
29762
|
-
gateVisible && setupBlocked ? /* @__PURE__ */
|
|
30014
|
+
return /* @__PURE__ */ jsxs36(Fragment15, { children: [
|
|
30015
|
+
gateVisible && setupBlocked ? /* @__PURE__ */ jsx49("div", { className: AgentGUINode_styles_default.emptyHero, children: /* @__PURE__ */ jsxs36(
|
|
29763
30016
|
"div",
|
|
29764
30017
|
{
|
|
29765
30018
|
className: cn5(AgentGUINode_styles_default.emptyHeroBody, AgentGUINode_styles_default.emptyProviderGate),
|
|
29766
30019
|
"data-testid": "agent-target-setup-gate",
|
|
29767
30020
|
role: "status",
|
|
29768
30021
|
children: [
|
|
29769
|
-
carouselMountedExternally ? /* @__PURE__ */
|
|
30022
|
+
carouselMountedExternally ? /* @__PURE__ */ jsx49(
|
|
29770
30023
|
"div",
|
|
29771
30024
|
{
|
|
29772
30025
|
"aria-hidden": "true",
|
|
29773
30026
|
className: AgentGUINode_styles_default.emptyHeroCarouselPlaceholder
|
|
29774
30027
|
}
|
|
29775
30028
|
) : null,
|
|
29776
|
-
/* @__PURE__ */
|
|
30029
|
+
/* @__PURE__ */ jsx49("h2", { className: AgentGUINode_styles_default.emptyHeroTitle, children: t("agentHost.agentGui.targetSetupTitle", {
|
|
29777
30030
|
provider: providerLabel
|
|
29778
30031
|
}) }),
|
|
29779
|
-
/* @__PURE__ */
|
|
29780
|
-
!setupChecking ? /* @__PURE__ */
|
|
29781
|
-
|
|
30032
|
+
/* @__PURE__ */ jsx49("p", { className: AgentGUINode_styles_default.emptyProviderGateDescription, children: setupDescription }),
|
|
30033
|
+
!setupChecking ? /* @__PURE__ */ jsx49(
|
|
30034
|
+
Button8,
|
|
29782
30035
|
{
|
|
29783
30036
|
type: "button",
|
|
29784
30037
|
className: AgentGUINode_styles_default.emptyProviderGateAction,
|
|
@@ -29789,7 +30042,7 @@ function AgentTargetSetupGate({
|
|
|
29789
30042
|
]
|
|
29790
30043
|
}
|
|
29791
30044
|
) }) : children,
|
|
29792
|
-
dialogOwner ? /* @__PURE__ */
|
|
30045
|
+
dialogOwner ? /* @__PURE__ */ jsx49(
|
|
29793
30046
|
AgentSetupDialog,
|
|
29794
30047
|
{
|
|
29795
30048
|
open: dialogOpen,
|
|
@@ -29798,27 +30051,27 @@ function AgentTargetSetupGate({
|
|
|
29798
30051
|
provider: providerLabel
|
|
29799
30052
|
}),
|
|
29800
30053
|
description: setupDescription,
|
|
29801
|
-
footer: /* @__PURE__ */
|
|
29802
|
-
|
|
30054
|
+
footer: /* @__PURE__ */ jsxs36(
|
|
30055
|
+
Button8,
|
|
29803
30056
|
{
|
|
29804
30057
|
size: "dialog",
|
|
29805
30058
|
type: "button",
|
|
29806
30059
|
disabled: loading,
|
|
29807
30060
|
onClick: () => void controller.refresh(),
|
|
29808
30061
|
children: [
|
|
29809
|
-
/* @__PURE__ */
|
|
30062
|
+
/* @__PURE__ */ jsx49(RefreshIcon, { className: "size-4" }),
|
|
29810
30063
|
t("agentHost.agentGui.targetSetupRetry")
|
|
29811
30064
|
]
|
|
29812
30065
|
}
|
|
29813
30066
|
),
|
|
29814
|
-
children: /* @__PURE__ */
|
|
29815
|
-
/* @__PURE__ */
|
|
30067
|
+
children: /* @__PURE__ */ jsxs36("div", { className: "flex flex-col gap-4", children: [
|
|
30068
|
+
/* @__PURE__ */ jsx49("p", { className: "m-0 text-[13px] text-[var(--text-secondary)]", children: statusLabel2 ?? (snapshot?.status === "ready" ? t("agentHost.agentGui.targetSetupComplete", {
|
|
29816
30069
|
provider: providerLabel
|
|
29817
30070
|
}) : t("agentHost.agentGui.targetSetupRemaining", {
|
|
29818
30071
|
provider: providerLabel
|
|
29819
30072
|
})) }),
|
|
29820
|
-
/* @__PURE__ */
|
|
29821
|
-
/* @__PURE__ */
|
|
30073
|
+
/* @__PURE__ */ jsxs36("ol", { className: "m-0 flex list-none flex-col divide-y divide-[var(--border-1)] p-0", children: [
|
|
30074
|
+
/* @__PURE__ */ jsx49(
|
|
29822
30075
|
SetupTrackRow,
|
|
29823
30076
|
{
|
|
29824
30077
|
label: t("agentHost.agentGui.targetSetupStage.detect"),
|
|
@@ -29826,15 +30079,15 @@ function AgentTargetSetupGate({
|
|
|
29826
30079
|
detail: snapshot?.runtimeVersion ? `${snapshot.runtimeVersion} \xB7 ${snapshot.runtimeSource ?? ""}` : void 0
|
|
29827
30080
|
}
|
|
29828
30081
|
),
|
|
29829
|
-
/* @__PURE__ */
|
|
30082
|
+
/* @__PURE__ */ jsx49(
|
|
29830
30083
|
SetupTrackRow,
|
|
29831
30084
|
{
|
|
29832
30085
|
label: t("agentHost.agentGui.targetSetupStage.install"),
|
|
29833
30086
|
status: installStatus,
|
|
29834
30087
|
warning: snapshot?.status === "not_installed",
|
|
29835
30088
|
detail: snapshot?.plan ? `${snapshot.plan.packageName}@${snapshot.plan.packageVersion}` : void 0,
|
|
29836
|
-
action: (snapshot?.status === "not_installed" || installRetryAvailable) && snapshot.plan ? /* @__PURE__ */
|
|
29837
|
-
|
|
30089
|
+
action: (snapshot?.status === "not_installed" || installRetryAvailable) && snapshot.plan ? /* @__PURE__ */ jsx49(
|
|
30090
|
+
Button8,
|
|
29838
30091
|
{
|
|
29839
30092
|
type: "button",
|
|
29840
30093
|
size: "sm",
|
|
@@ -29845,10 +30098,10 @@ function AgentTargetSetupGate({
|
|
|
29845
30098
|
)
|
|
29846
30099
|
}
|
|
29847
30100
|
) : void 0,
|
|
29848
|
-
children: snapshot?.plan ? /* @__PURE__ */
|
|
30101
|
+
children: snapshot?.plan ? /* @__PURE__ */ jsx49("span", { className: "mt-2 block break-all text-[12px] text-[var(--text-secondary)]", children: snapshot.plan.installRoot }) : null
|
|
29849
30102
|
}
|
|
29850
30103
|
),
|
|
29851
|
-
/* @__PURE__ */
|
|
30104
|
+
/* @__PURE__ */ jsx49(
|
|
29852
30105
|
SetupTrackRow,
|
|
29853
30106
|
{
|
|
29854
30107
|
label: t(
|
|
@@ -29857,8 +30110,8 @@ function AgentTargetSetupGate({
|
|
|
29857
30110
|
status: loginStatus,
|
|
29858
30111
|
warning: snapshot?.status === "auth_required",
|
|
29859
30112
|
detail: snapshot?.status === "ready" ? accountDetail : void 0,
|
|
29860
|
-
action: authenticationAvailable && authMethods.length > 0 ? /* @__PURE__ */
|
|
29861
|
-
|
|
30113
|
+
action: authenticationAvailable && authMethods.length > 0 ? /* @__PURE__ */ jsx49(
|
|
30114
|
+
Button8,
|
|
29862
30115
|
{
|
|
29863
30116
|
type: "button",
|
|
29864
30117
|
size: "sm",
|
|
@@ -29867,40 +30120,40 @@ function AgentTargetSetupGate({
|
|
|
29867
30120
|
children: authenticatePending ? t("agentHost.agentGui.targetSetupAuthStarting") : snapshot?.status === "ready" ? t("agentHost.agentGui.targetSetupReauthenticate") : t("agentHost.agentGui.targetSetupAuthenticate")
|
|
29868
30121
|
}
|
|
29869
30122
|
) : void 0,
|
|
29870
|
-
children: snapshot?.status === "auth_required" && authMethods.length > 0 ? /* @__PURE__ */
|
|
30123
|
+
children: snapshot?.status === "auth_required" && authMethods.length > 0 ? /* @__PURE__ */ jsxs36("label", { className: "mt-2 flex flex-col gap-1 text-[12px] text-[var(--text-secondary)]", children: [
|
|
29871
30124
|
t("agentHost.agentGui.targetSetupAuthMethod"),
|
|
29872
|
-
/* @__PURE__ */
|
|
30125
|
+
/* @__PURE__ */ jsxs36(
|
|
29873
30126
|
Select4,
|
|
29874
30127
|
{
|
|
29875
30128
|
value: effectiveAuthMethodId,
|
|
29876
30129
|
onValueChange: controller.selectAuthMethod,
|
|
29877
30130
|
children: [
|
|
29878
|
-
/* @__PURE__ */
|
|
30131
|
+
/* @__PURE__ */ jsx49(
|
|
29879
30132
|
SelectTrigger4,
|
|
29880
30133
|
{
|
|
29881
30134
|
"aria-label": t(
|
|
29882
30135
|
"agentHost.agentGui.targetSetupAuthMethod"
|
|
29883
30136
|
),
|
|
29884
|
-
children: /* @__PURE__ */
|
|
30137
|
+
children: /* @__PURE__ */ jsx49(SelectValue, {})
|
|
29885
30138
|
}
|
|
29886
30139
|
),
|
|
29887
|
-
/* @__PURE__ */
|
|
30140
|
+
/* @__PURE__ */ jsx49(
|
|
29888
30141
|
SelectContent4,
|
|
29889
30142
|
{
|
|
29890
30143
|
style: { zIndex: "var(--z-dialog-popover)" },
|
|
29891
|
-
children: authMethods.map((method) => /* @__PURE__ */
|
|
30144
|
+
children: authMethods.map((method) => /* @__PURE__ */ jsx49(SelectItem4, { value: method.id, children: method.name }, method.id))
|
|
29892
30145
|
}
|
|
29893
30146
|
)
|
|
29894
30147
|
]
|
|
29895
30148
|
}
|
|
29896
30149
|
)
|
|
29897
|
-
] }) : snapshot?.status === "auth_required" ? /* @__PURE__ */
|
|
30150
|
+
] }) : snapshot?.status === "auth_required" ? /* @__PURE__ */ jsx49("p", { className: "mt-2 mb-0 text-[12px] text-[var(--text-secondary)]", children: t("agentHost.agentGui.targetSetupNoAuthMethods") }) : null
|
|
29898
30151
|
}
|
|
29899
30152
|
)
|
|
29900
30153
|
] }),
|
|
29901
|
-
failed || snapshot?.status === "failed" || actionFailed ? /* @__PURE__ */
|
|
29902
|
-
/* @__PURE__ */
|
|
29903
|
-
snapshot?.action?.errorMessage?.trim() ? /* @__PURE__ */
|
|
30154
|
+
failed || snapshot?.status === "failed" || actionFailed ? /* @__PURE__ */ jsxs36("p", { className: "m-0 text-[12px] text-[var(--state-danger)]", children: [
|
|
30155
|
+
/* @__PURE__ */ jsx49("span", { className: "block", children: snapshot?.action?.kind === "authenticate" ? t("agentHost.agentGui.targetSetupAuthFailed") : t("agentHost.agentGui.targetSetupFailed") }),
|
|
30156
|
+
snapshot?.action?.errorMessage?.trim() ? /* @__PURE__ */ jsx49("span", { className: "mt-1 block break-words text-[var(--text-secondary)]", children: snapshot.action.errorMessage.trim() }) : null
|
|
29904
30157
|
] }) : null
|
|
29905
30158
|
] })
|
|
29906
30159
|
}
|
|
@@ -29921,23 +30174,23 @@ function SetupTrackRow({
|
|
|
29921
30174
|
status,
|
|
29922
30175
|
warning = false
|
|
29923
30176
|
}) {
|
|
29924
|
-
return /* @__PURE__ */
|
|
30177
|
+
return /* @__PURE__ */ jsxs36(
|
|
29925
30178
|
"li",
|
|
29926
30179
|
{
|
|
29927
30180
|
"data-status": status,
|
|
29928
30181
|
className: `flex items-start gap-2.5 py-3 ${status === "pending" ? "opacity-50" : ""}`,
|
|
29929
30182
|
children: [
|
|
29930
|
-
/* @__PURE__ */
|
|
29931
|
-
/* @__PURE__ */
|
|
29932
|
-
/* @__PURE__ */
|
|
29933
|
-
/* @__PURE__ */
|
|
30183
|
+
/* @__PURE__ */ jsx49("span", { className: "mt-0.5 shrink-0", children: /* @__PURE__ */ jsx49(AgentSetupStepIcon, { status, warning }) }),
|
|
30184
|
+
/* @__PURE__ */ jsxs36("span", { className: "min-w-0 flex-1", children: [
|
|
30185
|
+
/* @__PURE__ */ jsxs36("span", { className: "flex min-w-0 items-baseline gap-2", children: [
|
|
30186
|
+
/* @__PURE__ */ jsx49(
|
|
29934
30187
|
"span",
|
|
29935
30188
|
{
|
|
29936
30189
|
className: `shrink-0 text-[13px] font-medium ${status === "error" ? warning ? "text-[var(--state-warning)]" : "text-[var(--state-danger)]" : "text-[var(--text-primary)]"}`,
|
|
29937
30190
|
children: label
|
|
29938
30191
|
}
|
|
29939
30192
|
),
|
|
29940
|
-
detail ? /* @__PURE__ */
|
|
30193
|
+
detail ? /* @__PURE__ */ jsx49("span", { className: "min-w-0 truncate text-[12px] text-[var(--text-secondary)]", children: detail }) : null
|
|
29941
30194
|
] }),
|
|
29942
30195
|
children
|
|
29943
30196
|
] }),
|
|
@@ -29986,7 +30239,7 @@ function targetSetupPhaseLabel(t, phase) {
|
|
|
29986
30239
|
|
|
29987
30240
|
// agent-gui/agentGuiNode/view/AgentGUIAgentTargetName.tsx
|
|
29988
30241
|
import { cn as cn6 } from "@tutti-os/ui-system";
|
|
29989
|
-
import { Fragment as Fragment16, jsx as
|
|
30242
|
+
import { Fragment as Fragment16, jsx as jsx50, jsxs as jsxs37 } from "react/jsx-runtime";
|
|
29990
30243
|
function projectAgentGUIAgentTargetName(input) {
|
|
29991
30244
|
const agentLabel = input.target.label.trim();
|
|
29992
30245
|
const ownerLabel = input.target.ownership === "shared" ? input.target.ownerLabel?.trim() || null : null;
|
|
@@ -30007,13 +30260,13 @@ function AgentGUIAgentTargetName({
|
|
|
30007
30260
|
ownerSeparator,
|
|
30008
30261
|
target
|
|
30009
30262
|
});
|
|
30010
|
-
return /* @__PURE__ */
|
|
30263
|
+
return /* @__PURE__ */ jsx50(
|
|
30011
30264
|
"span",
|
|
30012
30265
|
{
|
|
30013
30266
|
className: cn6("flex min-w-0 max-w-full items-baseline", className),
|
|
30014
30267
|
title: presentation.fullLabel,
|
|
30015
|
-
children: presentation.ownerLabel ? /* @__PURE__ */
|
|
30016
|
-
/* @__PURE__ */
|
|
30268
|
+
children: presentation.ownerLabel ? /* @__PURE__ */ jsxs37(Fragment16, { children: [
|
|
30269
|
+
/* @__PURE__ */ jsx50(
|
|
30017
30270
|
"span",
|
|
30018
30271
|
{
|
|
30019
30272
|
className: "min-w-0 flex-1 truncate",
|
|
@@ -30021,7 +30274,7 @@ function AgentGUIAgentTargetName({
|
|
|
30021
30274
|
children: presentation.ownerLabel
|
|
30022
30275
|
}
|
|
30023
30276
|
),
|
|
30024
|
-
/* @__PURE__ */
|
|
30277
|
+
/* @__PURE__ */ jsxs37(
|
|
30025
30278
|
"span",
|
|
30026
30279
|
{
|
|
30027
30280
|
className: "shrink-0 whitespace-pre",
|
|
@@ -30032,13 +30285,13 @@ function AgentGUIAgentTargetName({
|
|
|
30032
30285
|
]
|
|
30033
30286
|
}
|
|
30034
30287
|
)
|
|
30035
|
-
] }) : /* @__PURE__ */
|
|
30288
|
+
] }) : /* @__PURE__ */ jsx50("span", { className: "min-w-0 truncate", "data-testid": "agent-target-name", children: presentation.agentLabel })
|
|
30036
30289
|
}
|
|
30037
30290
|
);
|
|
30038
30291
|
}
|
|
30039
30292
|
|
|
30040
30293
|
// agent-gui/agentGuiNode/view/AgentGUIEmptyState.tsx
|
|
30041
|
-
import { Fragment as Fragment17, jsx as
|
|
30294
|
+
import { Fragment as Fragment17, jsx as jsx51, jsxs as jsxs38 } from "react/jsx-runtime";
|
|
30042
30295
|
function resolveAgentGUIHeroIconUrl2(provider) {
|
|
30043
30296
|
const normalizedProvider = normalizeManagedAgentProvider(provider);
|
|
30044
30297
|
return MANAGED_AGENT_ICON_URLS[normalizedProvider] ?? MANAGED_AGENT_ICON_FALLBACK_URL;
|
|
@@ -30084,7 +30337,7 @@ var AgentGUIEmptyHomePane = memo3(function AgentGUIEmptyHomePane2({
|
|
|
30084
30337
|
[agentTargets, provider, providerLabel, selectedAgentTarget]
|
|
30085
30338
|
);
|
|
30086
30339
|
const carouselMountedExternally = avatarPresentations.length > 1;
|
|
30087
|
-
return /* @__PURE__ */
|
|
30340
|
+
return /* @__PURE__ */ jsx51(
|
|
30088
30341
|
AgentGUIEmptyHeroCarouselStage,
|
|
30089
30342
|
{
|
|
30090
30343
|
activeAgentTargetId: selectedAgentTarget?.agentTargetId ?? selectedAgentTarget?.targetId,
|
|
@@ -30092,11 +30345,11 @@ var AgentGUIEmptyHomePane = memo3(function AgentGUIEmptyHomePane2({
|
|
|
30092
30345
|
onProviderSelect,
|
|
30093
30346
|
previewMode,
|
|
30094
30347
|
providerSelectLabel: labels.providerSwitchLabel,
|
|
30095
|
-
children: /* @__PURE__ */
|
|
30348
|
+
children: /* @__PURE__ */ jsx51(
|
|
30096
30349
|
AgentTargetSetupGate,
|
|
30097
30350
|
{
|
|
30098
30351
|
carouselMountedExternally,
|
|
30099
|
-
children: providerReadinessGate ? /* @__PURE__ */
|
|
30352
|
+
children: providerReadinessGate ? /* @__PURE__ */ jsx51(
|
|
30100
30353
|
AgentGUIProviderReadinessGatePane,
|
|
30101
30354
|
{
|
|
30102
30355
|
provider,
|
|
@@ -30112,7 +30365,7 @@ var AgentGUIEmptyHomePane = memo3(function AgentGUIEmptyHomePane2({
|
|
|
30112
30365
|
selectedAgentTarget,
|
|
30113
30366
|
labels
|
|
30114
30367
|
}
|
|
30115
|
-
) : /* @__PURE__ */
|
|
30368
|
+
) : /* @__PURE__ */ jsx51(
|
|
30116
30369
|
AgentGUIEmptyHeroPane,
|
|
30117
30370
|
{
|
|
30118
30371
|
...heroProps,
|
|
@@ -30167,13 +30420,13 @@ var AgentGUIEmptyHeroPane = memo3(function AgentGUIEmptyHeroPane2({
|
|
|
30167
30420
|
const heroIconAnimationKey = heroAvatarPresentations.map(
|
|
30168
30421
|
(avatar) => `${avatar.agentTargetId}:${avatar.iconUrl}:${avatar.badge?.iconUrl ?? ""}`
|
|
30169
30422
|
).join("|");
|
|
30170
|
-
return /* @__PURE__ */
|
|
30171
|
-
/* @__PURE__ */
|
|
30423
|
+
return /* @__PURE__ */ jsx51("div", { className: AgentGUINode_styles_default.emptyHero, children: /* @__PURE__ */ jsxs38("div", { className: AgentGUINode_styles_default.emptyHeroBody, children: [
|
|
30424
|
+
/* @__PURE__ */ jsx51(
|
|
30172
30425
|
"div",
|
|
30173
30426
|
{
|
|
30174
30427
|
className: AgentGUINode_styles_default.emptyHeroIconSlot,
|
|
30175
30428
|
"data-carousel-placeholder": carouselMountedExternally || void 0,
|
|
30176
|
-
children: carouselMountedExternally ? null : heroAvatarPresentations.length > 1 ? /* @__PURE__ */
|
|
30429
|
+
children: carouselMountedExternally ? null : heroAvatarPresentations.length > 1 ? /* @__PURE__ */ jsx51(
|
|
30177
30430
|
AgentGUIHeroAgentCarousel,
|
|
30178
30431
|
{
|
|
30179
30432
|
activeAgentTargetId: selectedAgentTarget?.agentTargetId ?? selectedAgentTarget?.targetId,
|
|
@@ -30181,7 +30434,7 @@ var AgentGUIEmptyHeroPane = memo3(function AgentGUIEmptyHeroPane2({
|
|
|
30181
30434
|
onProviderSelect,
|
|
30182
30435
|
providerSelectLabel
|
|
30183
30436
|
}
|
|
30184
|
-
) : /* @__PURE__ */
|
|
30437
|
+
) : /* @__PURE__ */ jsx51(
|
|
30185
30438
|
AgentGUIAgentAvatarVisual,
|
|
30186
30439
|
{
|
|
30187
30440
|
className: AgentGUINode_styles_default.emptyHeroIconEffect,
|
|
@@ -30191,7 +30444,7 @@ var AgentGUIEmptyHeroPane = memo3(function AgentGUIEmptyHeroPane2({
|
|
|
30191
30444
|
)
|
|
30192
30445
|
}
|
|
30193
30446
|
),
|
|
30194
|
-
/* @__PURE__ */
|
|
30447
|
+
/* @__PURE__ */ jsx51("h2", { className: AgentGUINode_styles_default.emptyHeroTitle, children: /* @__PURE__ */ jsx51(
|
|
30195
30448
|
EmptyHeroTitle,
|
|
30196
30449
|
{
|
|
30197
30450
|
label: emptyLabel,
|
|
@@ -30203,7 +30456,7 @@ var AgentGUIEmptyHeroPane = memo3(function AgentGUIEmptyHeroPane2({
|
|
|
30203
30456
|
sharedAgentOwnerSeparator
|
|
30204
30457
|
}
|
|
30205
30458
|
) }),
|
|
30206
|
-
noticeChrome ? /* @__PURE__ */
|
|
30459
|
+
noticeChrome ? /* @__PURE__ */ jsx51(
|
|
30207
30460
|
AgentSessionChrome,
|
|
30208
30461
|
{
|
|
30209
30462
|
chrome: noticeChrome,
|
|
@@ -30215,9 +30468,9 @@ var AgentGUIEmptyHeroPane = memo3(function AgentGUIEmptyHeroPane2({
|
|
|
30215
30468
|
labels: chromeLabels
|
|
30216
30469
|
}
|
|
30217
30470
|
) : null,
|
|
30218
|
-
/* @__PURE__ */
|
|
30219
|
-
/* @__PURE__ */
|
|
30220
|
-
/* @__PURE__ */
|
|
30471
|
+
/* @__PURE__ */ jsx51(AgentComposer, { ...composerProps }),
|
|
30472
|
+
/* @__PURE__ */ jsx51(AgentGUIEmptyHeroTuttiToggle, { composerProps }),
|
|
30473
|
+
/* @__PURE__ */ jsx51(
|
|
30221
30474
|
AgentHomeSuggestions,
|
|
30222
30475
|
{
|
|
30223
30476
|
categories: suggestions,
|
|
@@ -30240,7 +30493,7 @@ function AgentGUIEmptyHeroTuttiToggle({
|
|
|
30240
30493
|
const updating = composerProps.tuttiModeUpdating === true;
|
|
30241
30494
|
const label = composerProps.labels.tuttiModeLabel;
|
|
30242
30495
|
const description = composerProps.labels.tuttiModeDescription;
|
|
30243
|
-
return /* @__PURE__ */
|
|
30496
|
+
return /* @__PURE__ */ jsxs38(
|
|
30244
30497
|
"label",
|
|
30245
30498
|
{
|
|
30246
30499
|
className: cn7(
|
|
@@ -30252,7 +30505,7 @@ function AgentGUIEmptyHeroTuttiToggle({
|
|
|
30252
30505
|
title: description,
|
|
30253
30506
|
"data-testid": "agent-gui-hero-tutti-toggle",
|
|
30254
30507
|
children: [
|
|
30255
|
-
/* @__PURE__ */
|
|
30508
|
+
/* @__PURE__ */ jsx51(
|
|
30256
30509
|
Sparkles2,
|
|
30257
30510
|
{
|
|
30258
30511
|
"aria-hidden": true,
|
|
@@ -30262,11 +30515,11 @@ function AgentGUIEmptyHeroTuttiToggle({
|
|
|
30262
30515
|
)
|
|
30263
30516
|
}
|
|
30264
30517
|
),
|
|
30265
|
-
/* @__PURE__ */
|
|
30266
|
-
/* @__PURE__ */
|
|
30267
|
-
description ? /* @__PURE__ */
|
|
30518
|
+
/* @__PURE__ */ jsxs38("span", { className: "flex min-w-0 flex-1 flex-col text-left", children: [
|
|
30519
|
+
/* @__PURE__ */ jsx51("span", { className: "text-[13px] font-medium text-[var(--text-primary)]", children: label }),
|
|
30520
|
+
description ? /* @__PURE__ */ jsx51("span", { className: "truncate text-[11px] text-[var(--agent-gui-text-tertiary)]", children: description }) : null
|
|
30268
30521
|
] }),
|
|
30269
|
-
/* @__PURE__ */
|
|
30522
|
+
/* @__PURE__ */ jsx51(
|
|
30270
30523
|
Switch,
|
|
30271
30524
|
{
|
|
30272
30525
|
id: switchId,
|
|
@@ -30317,20 +30570,20 @@ var AgentGUIProviderReadinessGatePane = memo3(
|
|
|
30317
30570
|
const titleLabel = gate.status === "not_installed" || gate.status === "auth_required" ? emptyLabel : content.title;
|
|
30318
30571
|
const action = resolveAgentGUIProviderReadinessAction(gate.status);
|
|
30319
30572
|
const pendingLabel = pendingAction === "install" ? labels.providerGatePendingInstall : pendingAction === "login" ? labels.providerGatePendingLogin : pendingAction === "refresh" ? labels.providerGatePendingRefresh : null;
|
|
30320
|
-
return /* @__PURE__ */
|
|
30573
|
+
return /* @__PURE__ */ jsx51("div", { className: AgentGUINode_styles_default.emptyHero, children: /* @__PURE__ */ jsxs38(
|
|
30321
30574
|
"div",
|
|
30322
30575
|
{
|
|
30323
30576
|
className: cn7(AgentGUINode_styles_default.emptyHeroBody, AgentGUINode_styles_default.emptyProviderGate),
|
|
30324
30577
|
"data-testid": "agent-gui-provider-readiness-gate",
|
|
30325
30578
|
role: "status",
|
|
30326
30579
|
children: [
|
|
30327
|
-
carouselMountedExternally ? /* @__PURE__ */
|
|
30580
|
+
carouselMountedExternally ? /* @__PURE__ */ jsx51(
|
|
30328
30581
|
"div",
|
|
30329
30582
|
{
|
|
30330
30583
|
"aria-hidden": "true",
|
|
30331
30584
|
className: AgentGUINode_styles_default.emptyHeroCarouselPlaceholder
|
|
30332
30585
|
}
|
|
30333
|
-
) : heroAvatarPresentations.length > 1 ? /* @__PURE__ */
|
|
30586
|
+
) : heroAvatarPresentations.length > 1 ? /* @__PURE__ */ jsx51(
|
|
30334
30587
|
AgentGUIHeroAgentCarousel,
|
|
30335
30588
|
{
|
|
30336
30589
|
activeAgentTargetId: selectedAgentTarget?.agentTargetId ?? selectedAgentTarget?.targetId,
|
|
@@ -30338,14 +30591,14 @@ var AgentGUIProviderReadinessGatePane = memo3(
|
|
|
30338
30591
|
onProviderSelect,
|
|
30339
30592
|
providerSelectLabel
|
|
30340
30593
|
}
|
|
30341
|
-
) : /* @__PURE__ */
|
|
30594
|
+
) : /* @__PURE__ */ jsx51(
|
|
30342
30595
|
AgentGUIAgentAvatarVisual,
|
|
30343
30596
|
{
|
|
30344
30597
|
className: AgentGUINode_styles_default.emptyHeroIconEffect,
|
|
30345
30598
|
presentation: heroAvatarPresentations[0]
|
|
30346
30599
|
}
|
|
30347
30600
|
),
|
|
30348
|
-
/* @__PURE__ */
|
|
30601
|
+
/* @__PURE__ */ jsx51("h2", { className: AgentGUINode_styles_default.emptyHeroTitle, children: /* @__PURE__ */ jsx51(
|
|
30349
30602
|
EmptyHeroTitle,
|
|
30350
30603
|
{
|
|
30351
30604
|
label: titleLabel,
|
|
@@ -30357,8 +30610,8 @@ var AgentGUIProviderReadinessGatePane = memo3(
|
|
|
30357
30610
|
sharedAgentOwnerSeparator: labels.sharedAgentOwnerSeparator
|
|
30358
30611
|
}
|
|
30359
30612
|
) }),
|
|
30360
|
-
/* @__PURE__ */
|
|
30361
|
-
pendingLabel && !action ? /* @__PURE__ */
|
|
30613
|
+
/* @__PURE__ */ jsx51("p", { className: AgentGUINode_styles_default.emptyProviderGateDescription, children: content.description }),
|
|
30614
|
+
pendingLabel && !action ? /* @__PURE__ */ jsx51(
|
|
30362
30615
|
"div",
|
|
30363
30616
|
{
|
|
30364
30617
|
className: AgentGUINode_styles_default.emptyProviderGateStatus,
|
|
@@ -30366,7 +30619,7 @@ var AgentGUIProviderReadinessGatePane = memo3(
|
|
|
30366
30619
|
children: pendingLabel
|
|
30367
30620
|
}
|
|
30368
30621
|
) : null,
|
|
30369
|
-
action ? /* @__PURE__ */
|
|
30622
|
+
action ? /* @__PURE__ */ jsx51(
|
|
30370
30623
|
Button,
|
|
30371
30624
|
{
|
|
30372
30625
|
type: "button",
|
|
@@ -30385,7 +30638,7 @@ var AgentGUIProviderReadinessGatePane = memo3(
|
|
|
30385
30638
|
},
|
|
30386
30639
|
children: isPending && pendingLabel ? pendingLabel : content.actionLabel
|
|
30387
30640
|
}
|
|
30388
|
-
) : content.actionLabel ? /* @__PURE__ */
|
|
30641
|
+
) : content.actionLabel ? /* @__PURE__ */ jsx51(
|
|
30389
30642
|
Button,
|
|
30390
30643
|
{
|
|
30391
30644
|
type: "button",
|
|
@@ -30408,7 +30661,7 @@ function AgentGUIUnifiedProviderIcon({
|
|
|
30408
30661
|
presentation
|
|
30409
30662
|
}) {
|
|
30410
30663
|
const iconUrl = presentation?.iconUrl?.trim() || agentColorfulUrl;
|
|
30411
|
-
return /* @__PURE__ */
|
|
30664
|
+
return /* @__PURE__ */ jsx51("span", { "aria-hidden": "true", className: AgentGUINode_styles_default.providerRailAvatar, children: /* @__PURE__ */ jsx51(
|
|
30412
30665
|
"img",
|
|
30413
30666
|
{
|
|
30414
30667
|
alt: "",
|
|
@@ -30423,7 +30676,7 @@ function AgentGUIProviderIconVisual({
|
|
|
30423
30676
|
icon,
|
|
30424
30677
|
imageClassName
|
|
30425
30678
|
}) {
|
|
30426
|
-
return /* @__PURE__ */
|
|
30679
|
+
return /* @__PURE__ */ jsx51(
|
|
30427
30680
|
"img",
|
|
30428
30681
|
{
|
|
30429
30682
|
alt: "",
|
|
@@ -30439,14 +30692,14 @@ function AgentGUIAgentAvatarVisual({
|
|
|
30439
30692
|
imageClassName,
|
|
30440
30693
|
presentation
|
|
30441
30694
|
}) {
|
|
30442
|
-
return /* @__PURE__ */
|
|
30695
|
+
return /* @__PURE__ */ jsxs38(
|
|
30443
30696
|
"span",
|
|
30444
30697
|
{
|
|
30445
30698
|
"aria-hidden": "true",
|
|
30446
30699
|
className: cn7(AgentGUINode_styles_default.agentAvatar, className),
|
|
30447
30700
|
"data-agent-target-id": presentation.agentTargetId,
|
|
30448
30701
|
children: [
|
|
30449
|
-
/* @__PURE__ */
|
|
30702
|
+
/* @__PURE__ */ jsx51(
|
|
30450
30703
|
"img",
|
|
30451
30704
|
{
|
|
30452
30705
|
alt: "",
|
|
@@ -30455,7 +30708,7 @@ function AgentGUIAgentAvatarVisual({
|
|
|
30455
30708
|
src: presentation.iconUrl
|
|
30456
30709
|
}
|
|
30457
30710
|
),
|
|
30458
|
-
presentation.badge?.iconUrl ? /* @__PURE__ */
|
|
30711
|
+
presentation.badge?.iconUrl ? /* @__PURE__ */ jsx51("span", { className: AgentGUINode_styles_default.agentAvatarBadge, children: /* @__PURE__ */ jsx51(
|
|
30459
30712
|
"img",
|
|
30460
30713
|
{
|
|
30461
30714
|
alt: "",
|
|
@@ -30479,15 +30732,15 @@ function EmptyHeroTitle({
|
|
|
30479
30732
|
}) {
|
|
30480
30733
|
const providerStart = providerLabel ? label.indexOf(providerLabel) : -1;
|
|
30481
30734
|
if (!shouldEmphasizeEmptyHeroProvider(label) || providerStart < 0) {
|
|
30482
|
-
return /* @__PURE__ */
|
|
30735
|
+
return /* @__PURE__ */ jsx51(Fragment17, { children: label });
|
|
30483
30736
|
}
|
|
30484
30737
|
const providerEnd = providerStart + providerLabel.length;
|
|
30485
30738
|
const selectedAgentTargetId = selectedAgentTarget?.targetId ?? `local:${selectedAgentTarget?.provider ?? ""}`;
|
|
30486
30739
|
const canSwitchProvider = agentTargets.length > 1 && selectedAgentTarget && onProviderSelect;
|
|
30487
30740
|
const providerName = label.slice(providerStart, providerEnd);
|
|
30488
|
-
return /* @__PURE__ */
|
|
30741
|
+
return /* @__PURE__ */ jsxs38(Fragment17, { children: [
|
|
30489
30742
|
label.slice(0, providerStart),
|
|
30490
|
-
canSwitchProvider ? /* @__PURE__ */
|
|
30743
|
+
canSwitchProvider ? /* @__PURE__ */ jsxs38(
|
|
30491
30744
|
Select5,
|
|
30492
30745
|
{
|
|
30493
30746
|
value: selectedAgentTargetId,
|
|
@@ -30504,14 +30757,14 @@ function EmptyHeroTitle({
|
|
|
30504
30757
|
});
|
|
30505
30758
|
},
|
|
30506
30759
|
children: [
|
|
30507
|
-
/* @__PURE__ */
|
|
30760
|
+
/* @__PURE__ */ jsx51(
|
|
30508
30761
|
SelectTrigger5,
|
|
30509
30762
|
{
|
|
30510
30763
|
size: "sm",
|
|
30511
30764
|
"aria-label": providerSelectLabel,
|
|
30512
30765
|
title: providerSelectLabel,
|
|
30513
30766
|
className: AgentGUINode_styles_default.emptyHeroProviderSelect,
|
|
30514
|
-
children: /* @__PURE__ */
|
|
30767
|
+
children: /* @__PURE__ */ jsx51(
|
|
30515
30768
|
AgentGUIAgentTargetName,
|
|
30516
30769
|
{
|
|
30517
30770
|
className: cn7(AgentGUINode_styles_default.emptyHeroProvider, "max-w-[240px]"),
|
|
@@ -30521,7 +30774,7 @@ function EmptyHeroTitle({
|
|
|
30521
30774
|
)
|
|
30522
30775
|
}
|
|
30523
30776
|
),
|
|
30524
|
-
/* @__PURE__ */
|
|
30777
|
+
/* @__PURE__ */ jsx51(
|
|
30525
30778
|
SelectContent5,
|
|
30526
30779
|
{
|
|
30527
30780
|
align: "center",
|
|
@@ -30529,13 +30782,13 @@ function EmptyHeroTitle({
|
|
|
30529
30782
|
AgentGUINode_styles_default.composerMenuContent,
|
|
30530
30783
|
"min-w-[190px] max-w-[min(420px,calc(100vw-32px))]"
|
|
30531
30784
|
),
|
|
30532
|
-
children: agentTargets.map((target) => /* @__PURE__ */
|
|
30785
|
+
children: agentTargets.map((target) => /* @__PURE__ */ jsx51(
|
|
30533
30786
|
SelectItem5,
|
|
30534
30787
|
{
|
|
30535
30788
|
value: target.targetId,
|
|
30536
30789
|
className: cn7(AgentGUINode_styles_default.composerMenuItem, "gap-2"),
|
|
30537
|
-
children: /* @__PURE__ */
|
|
30538
|
-
/* @__PURE__ */
|
|
30790
|
+
children: /* @__PURE__ */ jsxs38("span", { className: "flex min-w-0 items-center gap-1.5", children: [
|
|
30791
|
+
/* @__PURE__ */ jsx51(
|
|
30539
30792
|
"img",
|
|
30540
30793
|
{
|
|
30541
30794
|
alt: "",
|
|
@@ -30547,7 +30800,7 @@ function EmptyHeroTitle({
|
|
|
30547
30800
|
).iconUrl
|
|
30548
30801
|
}
|
|
30549
30802
|
),
|
|
30550
|
-
/* @__PURE__ */
|
|
30803
|
+
/* @__PURE__ */ jsx51(
|
|
30551
30804
|
AgentGUIAgentTargetName,
|
|
30552
30805
|
{
|
|
30553
30806
|
ownerSeparator: sharedAgentOwnerSeparator,
|
|
@@ -30562,14 +30815,14 @@ function EmptyHeroTitle({
|
|
|
30562
30815
|
)
|
|
30563
30816
|
]
|
|
30564
30817
|
}
|
|
30565
|
-
) : selectedAgentTarget ? /* @__PURE__ */
|
|
30818
|
+
) : selectedAgentTarget ? /* @__PURE__ */ jsx51(
|
|
30566
30819
|
AgentGUIAgentTargetName,
|
|
30567
30820
|
{
|
|
30568
30821
|
className: cn7(AgentGUINode_styles_default.emptyHeroProvider, "max-w-[240px]"),
|
|
30569
30822
|
ownerSeparator: sharedAgentOwnerSeparator,
|
|
30570
30823
|
target: selectedAgentTarget
|
|
30571
30824
|
}
|
|
30572
|
-
) : /* @__PURE__ */
|
|
30825
|
+
) : /* @__PURE__ */ jsx51("span", { className: AgentGUINode_styles_default.emptyHeroProvider, children: providerName }),
|
|
30573
30826
|
label.slice(providerEnd)
|
|
30574
30827
|
] });
|
|
30575
30828
|
}
|
|
@@ -30577,11 +30830,11 @@ function EmptyHeroTitle({
|
|
|
30577
30830
|
// agent-gui/agentGuiNode/view/AgentGUIProviderManagerDialog.tsx
|
|
30578
30831
|
import {
|
|
30579
30832
|
useRef as useRef43,
|
|
30580
|
-
useState as
|
|
30833
|
+
useState as useState31
|
|
30581
30834
|
} from "react";
|
|
30582
30835
|
import { CircleMinus, CirclePlus } from "lucide-react";
|
|
30583
30836
|
import {
|
|
30584
|
-
Button as
|
|
30837
|
+
Button as Button9,
|
|
30585
30838
|
Dialog as Dialog2,
|
|
30586
30839
|
DialogContent as DialogContent2,
|
|
30587
30840
|
DialogDescription as DialogDescription2,
|
|
@@ -30589,7 +30842,7 @@ import {
|
|
|
30589
30842
|
DialogTitle as DialogTitle2,
|
|
30590
30843
|
toast as toast3
|
|
30591
30844
|
} from "@tutti-os/ui-system";
|
|
30592
|
-
import { jsx as
|
|
30845
|
+
import { jsx as jsx52, jsxs as jsxs39 } from "react/jsx-runtime";
|
|
30593
30846
|
var AGENT_MANAGER_LONG_PRESS_MOVE_TOLERANCE_PX = 8;
|
|
30594
30847
|
var AGENT_MANAGER_DROP_HYSTERESIS_PX = 8;
|
|
30595
30848
|
function AgentGUIProviderManagerDialog({
|
|
@@ -30610,17 +30863,17 @@ function AgentGUIProviderManagerDialog({
|
|
|
30610
30863
|
const disabledTargets = targets.filter(
|
|
30611
30864
|
(target) => hidden.has(target.targetId)
|
|
30612
30865
|
);
|
|
30613
|
-
const [editing, setEditing] =
|
|
30614
|
-
const [dragState, setDragState] =
|
|
30866
|
+
const [editing, setEditing] = useState31(false);
|
|
30867
|
+
const [dragState, setDragState] = useState31(
|
|
30615
30868
|
null
|
|
30616
30869
|
);
|
|
30617
|
-
const [dragOverZone, setDragOverZone] =
|
|
30870
|
+
const [dragOverZone, setDragOverZone] = useState31(
|
|
30618
30871
|
null
|
|
30619
30872
|
);
|
|
30620
|
-
const [dragPreview, setDragPreview] =
|
|
30873
|
+
const [dragPreview, setDragPreview] = useState31(null);
|
|
30621
30874
|
const dragStateRef = useRef43(null);
|
|
30622
30875
|
const dragPreviewRef = useRef43(null);
|
|
30623
|
-
const [longPressTargetId, setLongPressTargetId] =
|
|
30876
|
+
const [longPressTargetId, setLongPressTargetId] = useState31(
|
|
30624
30877
|
null
|
|
30625
30878
|
);
|
|
30626
30879
|
const longPressOriginRef = useRef43(null);
|
|
@@ -30812,7 +31065,7 @@ function AgentGUIProviderManagerDialog({
|
|
|
30812
31065
|
};
|
|
30813
31066
|
const disabledDropBlocked = dragState?.source === "available" && (finalAvailableAgent || running.has(dragState.targetId));
|
|
30814
31067
|
const disabledDropBlockedByRunning = dragState?.source === "available" && running.has(dragState.targetId);
|
|
30815
|
-
return /* @__PURE__ */
|
|
31068
|
+
return /* @__PURE__ */ jsx52(Dialog2, { open, onOpenChange: handleOpenChange, children: /* @__PURE__ */ jsxs39(
|
|
30816
31069
|
DialogContent2,
|
|
30817
31070
|
{
|
|
30818
31071
|
className: "nodrag tsh-desktop-no-drag flex max-h-[min(680px,calc(100vh-32px))] flex-col gap-0 overflow-hidden p-0 [-webkit-app-region:no-drag] sm:max-w-[520px]",
|
|
@@ -30827,17 +31080,17 @@ function AgentGUIProviderManagerDialog({
|
|
|
30827
31080
|
setEditing(false);
|
|
30828
31081
|
},
|
|
30829
31082
|
children: [
|
|
30830
|
-
/* @__PURE__ */
|
|
30831
|
-
/* @__PURE__ */
|
|
30832
|
-
/* @__PURE__ */
|
|
31083
|
+
/* @__PURE__ */ jsxs39(DialogHeader2, { className: "shrink-0 border-b border-[var(--border-1)] px-5 py-4", children: [
|
|
31084
|
+
/* @__PURE__ */ jsx52(DialogTitle2, { children: labels.manageAgentsTitle }),
|
|
31085
|
+
/* @__PURE__ */ jsx52(DialogDescription2, { children: labels.manageAgentsDescription })
|
|
30833
31086
|
] }),
|
|
30834
|
-
/* @__PURE__ */
|
|
31087
|
+
/* @__PURE__ */ jsxs39(
|
|
30835
31088
|
"div",
|
|
30836
31089
|
{
|
|
30837
31090
|
className: "min-h-0 flex-1 overflow-y-auto px-5 py-4",
|
|
30838
31091
|
onClick: exitEditingFromBlankSpace,
|
|
30839
31092
|
children: [
|
|
30840
|
-
/* @__PURE__ */
|
|
31093
|
+
/* @__PURE__ */ jsxs39(
|
|
30841
31094
|
"section",
|
|
30842
31095
|
{
|
|
30843
31096
|
"aria-labelledby": "agent-manager-available-heading",
|
|
@@ -30847,7 +31100,7 @@ function AgentGUIProviderManagerDialog({
|
|
|
30847
31100
|
onDragOver: (event) => dragOverDropZone(event, "available"),
|
|
30848
31101
|
onDrop: (event) => dropIntoZone(event, "available"),
|
|
30849
31102
|
children: [
|
|
30850
|
-
/* @__PURE__ */
|
|
31103
|
+
/* @__PURE__ */ jsx52(
|
|
30851
31104
|
"h3",
|
|
30852
31105
|
{
|
|
30853
31106
|
className: "mb-3 text-[12px] font-medium text-[var(--text-secondary)]",
|
|
@@ -30855,7 +31108,7 @@ function AgentGUIProviderManagerDialog({
|
|
|
30855
31108
|
children: labels.manageAgentsAvailable
|
|
30856
31109
|
}
|
|
30857
31110
|
),
|
|
30858
|
-
availableTargets.length > 0 ? /* @__PURE__ */
|
|
31111
|
+
availableTargets.length > 0 ? /* @__PURE__ */ jsx52(
|
|
30859
31112
|
"div",
|
|
30860
31113
|
{
|
|
30861
31114
|
"aria-label": labels.manageAgentsAvailable,
|
|
@@ -30866,7 +31119,7 @@ function AgentGUIProviderManagerDialog({
|
|
|
30866
31119
|
children: availableTargets.map((target) => {
|
|
30867
31120
|
const label = target.label.trim() || target.provider;
|
|
30868
31121
|
const targetRunning = running.has(target.targetId);
|
|
30869
|
-
return /* @__PURE__ */
|
|
31122
|
+
return /* @__PURE__ */ jsxs39(
|
|
30870
31123
|
"div",
|
|
30871
31124
|
{
|
|
30872
31125
|
"aria-label": labels.dragAgentToReorder(label),
|
|
@@ -30903,7 +31156,7 @@ function AgentGUIProviderManagerDialog({
|
|
|
30903
31156
|
role: "listitem",
|
|
30904
31157
|
tabIndex: 0,
|
|
30905
31158
|
children: [
|
|
30906
|
-
dragPreview?.overTargetId === target.targetId ? /* @__PURE__ */
|
|
31159
|
+
dragPreview?.overTargetId === target.targetId ? /* @__PURE__ */ jsx52(
|
|
30907
31160
|
"span",
|
|
30908
31161
|
{
|
|
30909
31162
|
"aria-hidden": "true",
|
|
@@ -30912,8 +31165,8 @@ function AgentGUIProviderManagerDialog({
|
|
|
30912
31165
|
"data-testid": "agent-gui-provider-manager-drop-indicator"
|
|
30913
31166
|
}
|
|
30914
31167
|
) : null,
|
|
30915
|
-
editing ? /* @__PURE__ */
|
|
30916
|
-
|
|
31168
|
+
editing ? /* @__PURE__ */ jsx52(
|
|
31169
|
+
Button9,
|
|
30917
31170
|
{
|
|
30918
31171
|
"aria-label": labels.removeAgentFromSidebar(label),
|
|
30919
31172
|
className: "absolute right-0.5 top-0 z-10 size-5 rounded-full bg-[var(--background-panel)] p-0 text-[var(--state-danger)] shadow-sm hover:bg-[var(--transparency-hover)] hover:text-[var(--state-danger-hover)]",
|
|
@@ -30930,10 +31183,10 @@ function AgentGUIProviderManagerDialog({
|
|
|
30930
31183
|
title: targetRunning ? labels.manageAgentsRunningBlocked(label) : finalAvailableAgent ? labels.manageAgentsKeepOneAvailable : void 0,
|
|
30931
31184
|
type: "button",
|
|
30932
31185
|
variant: "ghost",
|
|
30933
|
-
children: /* @__PURE__ */
|
|
31186
|
+
children: /* @__PURE__ */ jsx52(CircleMinus, { "aria-hidden": "true", className: "size-4" })
|
|
30934
31187
|
}
|
|
30935
31188
|
) : null,
|
|
30936
|
-
/* @__PURE__ */
|
|
31189
|
+
/* @__PURE__ */ jsx52(
|
|
30937
31190
|
AgentGUIProviderIconVisual,
|
|
30938
31191
|
{
|
|
30939
31192
|
ariaHidden: true,
|
|
@@ -30944,18 +31197,18 @@ function AgentGUIProviderManagerDialog({
|
|
|
30944
31197
|
imageClassName: "size-9 shrink-0 rounded-[9px] object-cover"
|
|
30945
31198
|
}
|
|
30946
31199
|
),
|
|
30947
|
-
/* @__PURE__ */
|
|
31200
|
+
/* @__PURE__ */ jsx52("span", { className: "mt-2 block w-full truncate text-center text-[12px] font-medium text-[var(--text-primary)]", children: label })
|
|
30948
31201
|
]
|
|
30949
31202
|
},
|
|
30950
31203
|
target.targetId
|
|
30951
31204
|
);
|
|
30952
31205
|
})
|
|
30953
31206
|
}
|
|
30954
|
-
) : /* @__PURE__ */
|
|
31207
|
+
) : /* @__PURE__ */ jsx52("p", { className: "rounded-[8px] bg-[var(--transparency-block)] px-3 py-4 text-center text-[12px] text-[var(--text-tertiary)]", children: labels.manageAgentsNoAvailable })
|
|
30955
31208
|
]
|
|
30956
31209
|
}
|
|
30957
31210
|
),
|
|
30958
|
-
/* @__PURE__ */
|
|
31211
|
+
/* @__PURE__ */ jsxs39(
|
|
30959
31212
|
"section",
|
|
30960
31213
|
{
|
|
30961
31214
|
"aria-labelledby": "agent-manager-disabled-heading",
|
|
@@ -30971,7 +31224,7 @@ function AgentGUIProviderManagerDialog({
|
|
|
30971
31224
|
)?.label ?? ""
|
|
30972
31225
|
) : labels.manageAgentsKeepOneAvailable : void 0,
|
|
30973
31226
|
children: [
|
|
30974
|
-
/* @__PURE__ */
|
|
31227
|
+
/* @__PURE__ */ jsx52(
|
|
30975
31228
|
"h3",
|
|
30976
31229
|
{
|
|
30977
31230
|
className: "mb-3 text-[12px] font-medium text-[var(--text-secondary)]",
|
|
@@ -30979,7 +31232,7 @@ function AgentGUIProviderManagerDialog({
|
|
|
30979
31232
|
children: labels.manageAgentsDisabled
|
|
30980
31233
|
}
|
|
30981
31234
|
),
|
|
30982
|
-
disabledTargets.length > 0 ? /* @__PURE__ */
|
|
31235
|
+
disabledTargets.length > 0 ? /* @__PURE__ */ jsx52(
|
|
30983
31236
|
"div",
|
|
30984
31237
|
{
|
|
30985
31238
|
"aria-label": labels.manageAgentsDisabled,
|
|
@@ -30989,7 +31242,7 @@ function AgentGUIProviderManagerDialog({
|
|
|
30989
31242
|
role: "list",
|
|
30990
31243
|
children: disabledTargets.map((target) => {
|
|
30991
31244
|
const label = target.label.trim() || target.provider;
|
|
30992
|
-
return /* @__PURE__ */
|
|
31245
|
+
return /* @__PURE__ */ jsxs39(
|
|
30993
31246
|
"div",
|
|
30994
31247
|
{
|
|
30995
31248
|
"aria-label": labels.dragAgentToReorder(label),
|
|
@@ -31025,7 +31278,7 @@ function AgentGUIProviderManagerDialog({
|
|
|
31025
31278
|
role: "listitem",
|
|
31026
31279
|
tabIndex: 0,
|
|
31027
31280
|
children: [
|
|
31028
|
-
dragPreview?.overTargetId === target.targetId ? /* @__PURE__ */
|
|
31281
|
+
dragPreview?.overTargetId === target.targetId ? /* @__PURE__ */ jsx52(
|
|
31029
31282
|
"span",
|
|
31030
31283
|
{
|
|
31031
31284
|
"aria-hidden": "true",
|
|
@@ -31034,8 +31287,8 @@ function AgentGUIProviderManagerDialog({
|
|
|
31034
31287
|
"data-testid": "agent-gui-provider-manager-drop-indicator"
|
|
31035
31288
|
}
|
|
31036
31289
|
) : null,
|
|
31037
|
-
editing ? /* @__PURE__ */
|
|
31038
|
-
|
|
31290
|
+
editing ? /* @__PURE__ */ jsx52(
|
|
31291
|
+
Button9,
|
|
31039
31292
|
{
|
|
31040
31293
|
"aria-label": labels.addAgentToSidebar(label),
|
|
31041
31294
|
className: "absolute right-0.5 top-0 z-10 size-5 rounded-full bg-[var(--background-panel)] p-0 text-[var(--state-success)] shadow-sm hover:bg-[var(--transparency-hover)] hover:text-[var(--state-success)]",
|
|
@@ -31046,10 +31299,10 @@ function AgentGUIProviderManagerDialog({
|
|
|
31046
31299
|
size: "icon-xs",
|
|
31047
31300
|
type: "button",
|
|
31048
31301
|
variant: "ghost",
|
|
31049
|
-
children: /* @__PURE__ */
|
|
31302
|
+
children: /* @__PURE__ */ jsx52(CirclePlus, { "aria-hidden": "true", className: "size-4" })
|
|
31050
31303
|
}
|
|
31051
31304
|
) : null,
|
|
31052
|
-
/* @__PURE__ */
|
|
31305
|
+
/* @__PURE__ */ jsx52(
|
|
31053
31306
|
AgentGUIProviderIconVisual,
|
|
31054
31307
|
{
|
|
31055
31308
|
ariaHidden: true,
|
|
@@ -31060,14 +31313,14 @@ function AgentGUIProviderManagerDialog({
|
|
|
31060
31313
|
imageClassName: "size-9 shrink-0 rounded-[9px] object-cover opacity-70 grayscale-[0.25]"
|
|
31061
31314
|
}
|
|
31062
31315
|
),
|
|
31063
|
-
/* @__PURE__ */
|
|
31316
|
+
/* @__PURE__ */ jsx52("span", { className: "mt-2 block w-full truncate text-center text-[12px] font-medium text-[var(--text-secondary)]", children: label })
|
|
31064
31317
|
]
|
|
31065
31318
|
},
|
|
31066
31319
|
target.targetId
|
|
31067
31320
|
);
|
|
31068
31321
|
})
|
|
31069
31322
|
}
|
|
31070
|
-
) : /* @__PURE__ */
|
|
31323
|
+
) : /* @__PURE__ */ jsx52("p", { className: "flex min-h-[72px] items-center justify-center rounded-[8px] border border-dashed border-[var(--border-1)] px-3 py-4 text-center text-[12px] text-[var(--text-tertiary)]", children: labels.manageAgentsNoDisabled })
|
|
31071
31324
|
]
|
|
31072
31325
|
}
|
|
31073
31326
|
)
|
|
@@ -31080,7 +31333,7 @@ function AgentGUIProviderManagerDialog({
|
|
|
31080
31333
|
}
|
|
31081
31334
|
|
|
31082
31335
|
// agent-gui/agentGuiNode/view/useAgentGUIProviderRailPreferences.ts
|
|
31083
|
-
import { useCallback as useCallback49, useEffect as useEffect29, useState as
|
|
31336
|
+
import { useCallback as useCallback49, useEffect as useEffect29, useState as useState32 } from "react";
|
|
31084
31337
|
function readAgentGUIProviderRailPreferences(storageKey) {
|
|
31085
31338
|
return parseAgentGUIProviderRailPreferences(
|
|
31086
31339
|
globalThis.localStorage?.getItem(storageKey)
|
|
@@ -31088,7 +31341,7 @@ function readAgentGUIProviderRailPreferences(storageKey) {
|
|
|
31088
31341
|
}
|
|
31089
31342
|
function useAgentGUIProviderRailPreferences() {
|
|
31090
31343
|
const storageKey = agentGUIProviderRailOrderStorageKey();
|
|
31091
|
-
const [preferences, setPreferences] =
|
|
31344
|
+
const [preferences, setPreferences] = useState32(
|
|
31092
31345
|
() => readAgentGUIProviderRailPreferences(storageKey)
|
|
31093
31346
|
);
|
|
31094
31347
|
useEffect29(() => {
|
|
@@ -31130,7 +31383,7 @@ function useAgentGUIProviderRailPreferences() {
|
|
|
31130
31383
|
}
|
|
31131
31384
|
|
|
31132
31385
|
// agent-gui/agentGuiNode/view/AgentGUIProviderRail.tsx
|
|
31133
|
-
import { jsx as
|
|
31386
|
+
import { jsx as jsx53, jsxs as jsxs40 } from "react/jsx-runtime";
|
|
31134
31387
|
var agentGUIProviderRailCatalog = [
|
|
31135
31388
|
...migratedAgentGUIProviderIdentityCatalog
|
|
31136
31389
|
].sort((left, right) => left.target.sortOrder - right.target.sortOrder);
|
|
@@ -31221,7 +31474,7 @@ var AgentGUIProviderRail = memo4(function AgentGUIProviderRail2({
|
|
|
31221
31474
|
persistPreferences: persistProviderRailPreferences,
|
|
31222
31475
|
preferences: providerRailPreferences
|
|
31223
31476
|
} = useAgentGUIProviderRailPreferences();
|
|
31224
|
-
const [dragState, setDragState] =
|
|
31477
|
+
const [dragState, setDragState] = useState33(null);
|
|
31225
31478
|
const dragStateRef = useRef44(null);
|
|
31226
31479
|
const setProviderRailDragState = useCallback50(
|
|
31227
31480
|
(nextDragState) => {
|
|
@@ -31529,7 +31782,7 @@ var AgentGUIProviderRail = memo4(function AgentGUIProviderRail2({
|
|
|
31529
31782
|
},
|
|
31530
31783
|
[dragState, previewMode, agentTargetsLoading, setProviderRailDragState]
|
|
31531
31784
|
);
|
|
31532
|
-
const providerManagerDialog = /* @__PURE__ */
|
|
31785
|
+
const providerManagerDialog = /* @__PURE__ */ jsx53(
|
|
31533
31786
|
AgentGUIProviderManagerDialog,
|
|
31534
31787
|
{
|
|
31535
31788
|
hiddenTargetIds: effectiveHiddenTargetIds,
|
|
@@ -31543,7 +31796,7 @@ var AgentGUIProviderRail = memo4(function AgentGUIProviderRail2({
|
|
|
31543
31796
|
}
|
|
31544
31797
|
);
|
|
31545
31798
|
if (providerRailMode === "exact" && !agentTargetsLoading && visibleProviderTiles.length === 0 && renderProviderRailEmpty) {
|
|
31546
|
-
return /* @__PURE__ */
|
|
31799
|
+
return /* @__PURE__ */ jsxs40(
|
|
31547
31800
|
"div",
|
|
31548
31801
|
{
|
|
31549
31802
|
className: AgentGUINode_styles_default.providerRail,
|
|
@@ -31558,8 +31811,8 @@ var AgentGUIProviderRail = memo4(function AgentGUIProviderRail2({
|
|
|
31558
31811
|
}
|
|
31559
31812
|
);
|
|
31560
31813
|
}
|
|
31561
|
-
return /* @__PURE__ */
|
|
31562
|
-
/* @__PURE__ */
|
|
31814
|
+
return /* @__PURE__ */ jsxs40("div", { className: AgentGUINode_styles_default.providerRail, children: [
|
|
31815
|
+
/* @__PURE__ */ jsxs40(
|
|
31563
31816
|
"div",
|
|
31564
31817
|
{
|
|
31565
31818
|
className: "flex min-h-0 w-full flex-col items-center",
|
|
@@ -31569,7 +31822,7 @@ var AgentGUIProviderRail = memo4(function AgentGUIProviderRail2({
|
|
|
31569
31822
|
onDragOver: handleProviderRailContainerDragOver,
|
|
31570
31823
|
onDrop: commitProviderRailDragDrop,
|
|
31571
31824
|
children: [
|
|
31572
|
-
/* @__PURE__ */
|
|
31825
|
+
/* @__PURE__ */ jsxs40(
|
|
31573
31826
|
"button",
|
|
31574
31827
|
{
|
|
31575
31828
|
type: "button",
|
|
@@ -31581,18 +31834,18 @@ var AgentGUIProviderRail = memo4(function AgentGUIProviderRail2({
|
|
|
31581
31834
|
disabled: previewMode,
|
|
31582
31835
|
onClick: selectAllProviders,
|
|
31583
31836
|
children: [
|
|
31584
|
-
/* @__PURE__ */
|
|
31837
|
+
/* @__PURE__ */ jsx53(
|
|
31585
31838
|
AgentGUIUnifiedProviderIcon,
|
|
31586
31839
|
{
|
|
31587
31840
|
presentation: providerRailAllPresentation
|
|
31588
31841
|
}
|
|
31589
31842
|
),
|
|
31590
|
-
/* @__PURE__ */
|
|
31843
|
+
/* @__PURE__ */ jsx53("span", { className: AgentGUINode_styles_default.providerRailTileLabel, children: labels.conversationFilterAll })
|
|
31591
31844
|
]
|
|
31592
31845
|
}
|
|
31593
31846
|
),
|
|
31594
|
-
/* @__PURE__ */
|
|
31595
|
-
agentTargetsLoading ? [0, 1, 2].map((index) => /* @__PURE__ */
|
|
31847
|
+
/* @__PURE__ */ jsx53("span", { "aria-hidden": "true", className: AgentGUINode_styles_default.providerRailSeparator }),
|
|
31848
|
+
agentTargetsLoading ? [0, 1, 2].map((index) => /* @__PURE__ */ jsx53(
|
|
31596
31849
|
"button",
|
|
31597
31850
|
{
|
|
31598
31851
|
type: "button",
|
|
@@ -31602,7 +31855,7 @@ var AgentGUIProviderRail = memo4(function AgentGUIProviderRail2({
|
|
|
31602
31855
|
"data-loading": "true",
|
|
31603
31856
|
"data-selected": "false",
|
|
31604
31857
|
disabled: true,
|
|
31605
|
-
children: /* @__PURE__ */
|
|
31858
|
+
children: /* @__PURE__ */ jsx53(
|
|
31606
31859
|
"span",
|
|
31607
31860
|
{
|
|
31608
31861
|
"aria-hidden": "true",
|
|
@@ -31625,7 +31878,7 @@ var AgentGUIProviderRail = memo4(function AgentGUIProviderRail2({
|
|
|
31625
31878
|
label,
|
|
31626
31879
|
target.badge?.label
|
|
31627
31880
|
);
|
|
31628
|
-
const tile = /* @__PURE__ */
|
|
31881
|
+
const tile = /* @__PURE__ */ jsx53(
|
|
31629
31882
|
"button",
|
|
31630
31883
|
{
|
|
31631
31884
|
type: "button",
|
|
@@ -31645,8 +31898,8 @@ var AgentGUIProviderRail = memo4(function AgentGUIProviderRail2({
|
|
|
31645
31898
|
onDragEnd: clearProviderRailDragState,
|
|
31646
31899
|
onDragOver: (event) => handleProviderRailDragOver(event, target),
|
|
31647
31900
|
onDragStart: (event) => handleProviderRailDragStart(event, target),
|
|
31648
|
-
children: /* @__PURE__ */
|
|
31649
|
-
/* @__PURE__ */
|
|
31901
|
+
children: /* @__PURE__ */ jsxs40("span", { className: AgentGUINode_styles_default.providerRailAvatar, children: [
|
|
31902
|
+
/* @__PURE__ */ jsx53(
|
|
31650
31903
|
AgentGUIProviderIconVisual,
|
|
31651
31904
|
{
|
|
31652
31905
|
ariaHidden: true,
|
|
@@ -31657,7 +31910,7 @@ var AgentGUIProviderRail = memo4(function AgentGUIProviderRail2({
|
|
|
31657
31910
|
)
|
|
31658
31911
|
}
|
|
31659
31912
|
),
|
|
31660
|
-
target.badge?.iconUrl ? /* @__PURE__ */
|
|
31913
|
+
target.badge?.iconUrl ? /* @__PURE__ */ jsx53("span", { "aria-hidden": "true", className: AgentGUINode_styles_default.agentAvatarBadge, children: /* @__PURE__ */ jsx53(
|
|
31661
31914
|
"img",
|
|
31662
31915
|
{
|
|
31663
31916
|
alt: "",
|
|
@@ -31666,7 +31919,7 @@ var AgentGUIProviderRail = memo4(function AgentGUIProviderRail2({
|
|
|
31666
31919
|
src: target.badge.iconUrl
|
|
31667
31920
|
}
|
|
31668
31921
|
) }) : null,
|
|
31669
|
-
providerSelected && isBetaAgentProvider(target.provider) ? /* @__PURE__ */
|
|
31922
|
+
providerSelected && isBetaAgentProvider(target.provider) ? /* @__PURE__ */ jsx53(
|
|
31670
31923
|
"img",
|
|
31671
31924
|
{
|
|
31672
31925
|
"aria-hidden": "true",
|
|
@@ -31682,9 +31935,9 @@ var AgentGUIProviderRail = memo4(function AgentGUIProviderRail2({
|
|
|
31682
31935
|
if (previewMode) {
|
|
31683
31936
|
return tile;
|
|
31684
31937
|
}
|
|
31685
|
-
return /* @__PURE__ */
|
|
31686
|
-
/* @__PURE__ */
|
|
31687
|
-
/* @__PURE__ */
|
|
31938
|
+
return /* @__PURE__ */ jsxs40(Tooltip9, { children: [
|
|
31939
|
+
/* @__PURE__ */ jsx53(TooltipTrigger9, { asChild: true, children: tile }),
|
|
31940
|
+
/* @__PURE__ */ jsx53(TooltipContent9, { side: "right", sideOffset: -4, children: label })
|
|
31688
31941
|
] }, `${target.provider}:${target.targetId}:tooltip`);
|
|
31689
31942
|
})
|
|
31690
31943
|
]
|
|
@@ -31695,10 +31948,10 @@ var AgentGUIProviderRail = memo4(function AgentGUIProviderRail2({
|
|
|
31695
31948
|
});
|
|
31696
31949
|
|
|
31697
31950
|
// agent-gui/agentGuiNode/controller/AgentGUIConversationRailController.tsx
|
|
31698
|
-
import { memo as memo9, useState as
|
|
31951
|
+
import { memo as memo9, useState as useState39 } from "react";
|
|
31699
31952
|
|
|
31700
31953
|
// agent-gui/agentGuiNode/view/AgentGUIConversationRailPane.tsx
|
|
31701
|
-
import { Fragment as Fragment21, memo as memo8, useEffect as useEffect30, useMemo as useMemo40, useRef as useRef47, useState as
|
|
31954
|
+
import { Fragment as Fragment21, memo as memo8, useEffect as useEffect30, useMemo as useMemo40, useRef as useRef47, useState as useState38 } from "react";
|
|
31702
31955
|
import { Button as SystemButton } from "@tutti-os/ui-system";
|
|
31703
31956
|
import { ScrollArea as ScrollArea2 } from "@tutti-os/ui-system/components";
|
|
31704
31957
|
import { CreateChatIcon as CreateChatIcon2 } from "@tutti-os/ui-system/icons";
|
|
@@ -31716,7 +31969,7 @@ var styles3 = {
|
|
|
31716
31969
|
var RoomIssueNode_styles_default = styles3;
|
|
31717
31970
|
|
|
31718
31971
|
// agent-gui/RoomIssueNode/TaskSearchField.tsx
|
|
31719
|
-
import { jsx as
|
|
31972
|
+
import { jsx as jsx54, jsxs as jsxs41 } from "react/jsx-runtime";
|
|
31720
31973
|
function TaskSearchField({
|
|
31721
31974
|
ariaLabel,
|
|
31722
31975
|
className,
|
|
@@ -31730,13 +31983,13 @@ function TaskSearchField({
|
|
|
31730
31983
|
"use memo";
|
|
31731
31984
|
const { t } = useTranslation();
|
|
31732
31985
|
const searchInput = useComposedInputValue({ onCommit: onChange, value });
|
|
31733
|
-
return /* @__PURE__ */
|
|
31986
|
+
return /* @__PURE__ */ jsxs41(
|
|
31734
31987
|
"div",
|
|
31735
31988
|
{
|
|
31736
31989
|
className: `${RoomIssueNode_styles_default.searchField} ${className ?? ""}`.trim(),
|
|
31737
31990
|
"data-has-value": searchInput.value ? "true" : "false",
|
|
31738
31991
|
children: [
|
|
31739
|
-
/* @__PURE__ */
|
|
31992
|
+
/* @__PURE__ */ jsx54(
|
|
31740
31993
|
Input3,
|
|
31741
31994
|
{
|
|
31742
31995
|
type: "search",
|
|
@@ -31759,7 +32012,7 @@ function TaskSearchField({
|
|
|
31759
32012
|
"data-testid": dataTestId
|
|
31760
32013
|
}
|
|
31761
32014
|
),
|
|
31762
|
-
searchInput.value ? /* @__PURE__ */
|
|
32015
|
+
searchInput.value ? /* @__PURE__ */ jsx54(
|
|
31763
32016
|
"button",
|
|
31764
32017
|
{
|
|
31765
32018
|
type: "button",
|
|
@@ -31767,7 +32020,7 @@ function TaskSearchField({
|
|
|
31767
32020
|
"aria-label": clearAriaLabel ?? t("common.clear"),
|
|
31768
32021
|
onMouseDown: (event) => event.preventDefault(),
|
|
31769
32022
|
onClick: searchInput.clearValue,
|
|
31770
|
-
children: /* @__PURE__ */
|
|
32023
|
+
children: /* @__PURE__ */ jsx54(CloseLinedIcon, { "aria-hidden": "true" })
|
|
31771
32024
|
}
|
|
31772
32025
|
) : null
|
|
31773
32026
|
]
|
|
@@ -31785,7 +32038,7 @@ function isTaskSearchImeComposing(event) {
|
|
|
31785
32038
|
}
|
|
31786
32039
|
|
|
31787
32040
|
// agent-gui/agentGuiNode/AgentConversationListSkeleton.tsx
|
|
31788
|
-
import { jsx as
|
|
32041
|
+
import { jsx as jsx55, jsxs as jsxs42 } from "react/jsx-runtime";
|
|
31789
32042
|
var SKELETON_ROWS = [
|
|
31790
32043
|
{ id: "first", size: "long" },
|
|
31791
32044
|
{ id: "second", size: "medium" },
|
|
@@ -31797,23 +32050,23 @@ function AgentConversationListSkeleton({
|
|
|
31797
32050
|
label
|
|
31798
32051
|
}) {
|
|
31799
32052
|
"use memo";
|
|
31800
|
-
return /* @__PURE__ */
|
|
32053
|
+
return /* @__PURE__ */ jsx55(
|
|
31801
32054
|
"div",
|
|
31802
32055
|
{
|
|
31803
32056
|
className: "agent-gui-node__conversation-list-skeleton",
|
|
31804
32057
|
role: "status",
|
|
31805
32058
|
"aria-label": label,
|
|
31806
32059
|
"data-testid": "agent-gui-conversation-list-loading-skeleton",
|
|
31807
|
-
children: SKELETON_ROWS.map((row) => /* @__PURE__ */
|
|
32060
|
+
children: SKELETON_ROWS.map((row) => /* @__PURE__ */ jsxs42(
|
|
31808
32061
|
"div",
|
|
31809
32062
|
{
|
|
31810
32063
|
className: "agent-gui-node__conversation-list-skeleton-row",
|
|
31811
32064
|
"data-size": row.size,
|
|
31812
32065
|
"aria-hidden": "true",
|
|
31813
32066
|
children: [
|
|
31814
|
-
/* @__PURE__ */
|
|
31815
|
-
/* @__PURE__ */
|
|
31816
|
-
/* @__PURE__ */
|
|
32067
|
+
/* @__PURE__ */ jsx55("span", { className: "agent-gui-node__conversation-list-skeleton-spine" }),
|
|
32068
|
+
/* @__PURE__ */ jsx55("span", { className: "agent-gui-node__conversation-list-skeleton-rib agent-gui-node__conversation-list-skeleton-rib-primary" }),
|
|
32069
|
+
/* @__PURE__ */ jsx55("span", { className: "agent-gui-node__conversation-list-skeleton-rib agent-gui-node__conversation-list-skeleton-rib-secondary" })
|
|
31817
32070
|
]
|
|
31818
32071
|
},
|
|
31819
32072
|
row.id
|
|
@@ -32441,7 +32694,7 @@ function reduceAgentGUIConversationRailViewState(state, action) {
|
|
|
32441
32694
|
}
|
|
32442
32695
|
|
|
32443
32696
|
// agent-gui/agentGuiNode/controller/useAgentGUIProjectDrag.ts
|
|
32444
|
-
import { useCallback as useCallback51, useState as
|
|
32697
|
+
import { useCallback as useCallback51, useState as useState34 } from "react";
|
|
32445
32698
|
var PROJECT_DRAG_SCROLL_EDGE_PX = 40;
|
|
32446
32699
|
function projectDragAutoScrollDelta(clientY, bounds) {
|
|
32447
32700
|
if (clientY < bounds.top + PROJECT_DRAG_SCROLL_EDGE_PX) {
|
|
@@ -32459,9 +32712,9 @@ function projectDragAutoScrollDelta(clientY, bounds) {
|
|
|
32459
32712
|
return 0;
|
|
32460
32713
|
}
|
|
32461
32714
|
function useAgentGUIProjectDrag(input) {
|
|
32462
|
-
const [dragState, setDragState] =
|
|
32463
|
-
const [isMovePending, setIsMovePending] =
|
|
32464
|
-
const [runtime] =
|
|
32715
|
+
const [dragState, setDragState] = useState34(null);
|
|
32716
|
+
const [isMovePending, setIsMovePending] = useState34(false);
|
|
32717
|
+
const [runtime] = useState34(() => ({
|
|
32465
32718
|
active: false,
|
|
32466
32719
|
clientY: null,
|
|
32467
32720
|
dragState: null,
|
|
@@ -32651,10 +32904,10 @@ import { WorkspaceUserProjectSelect as WorkspaceUserProjectSelect2 } from "@tutt
|
|
|
32651
32904
|
import { BareIconButton as BareIconButton3 } from "@tutti-os/ui-system/components";
|
|
32652
32905
|
|
|
32653
32906
|
// app/renderer/components/icons/PinFilledIcon.tsx
|
|
32654
|
-
import { jsx as
|
|
32907
|
+
import { jsx as jsx56 } from "react/jsx-runtime";
|
|
32655
32908
|
function PinFilledIcon(props) {
|
|
32656
32909
|
"use memo";
|
|
32657
|
-
return /* @__PURE__ */
|
|
32910
|
+
return /* @__PURE__ */ jsx56(
|
|
32658
32911
|
"svg",
|
|
32659
32912
|
{
|
|
32660
32913
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -32662,16 +32915,16 @@ function PinFilledIcon(props) {
|
|
|
32662
32915
|
fill: "currentColor",
|
|
32663
32916
|
"aria-hidden": true,
|
|
32664
32917
|
...props,
|
|
32665
|
-
children: /* @__PURE__ */
|
|
32918
|
+
children: /* @__PURE__ */ jsx56("path", { d: "M21.6066 8.05025C22.1692 8.61286 22.4849 9.37592 22.4849 10.1716C22.4849 10.9672 22.1692 11.7303 21.6066 12.2929C21.044 12.8555 20.2809 13.1713 19.4853 13.1713C18.6896 13.1713 17.9266 12.8555 17.3639 12.2929L14.7054 14.9514L14.6142 15.0564C14.531 15.1669 14.4714 15.2943 14.4395 15.43C14.3972 15.6109 14.406 15.8 14.4651 15.9762L14.4678 15.9831L15.0873 17.8717L15.1466 18.072C15.2691 18.5425 15.2761 19.037 15.1646 19.5124C15.0372 20.0557 14.7607 20.5526 14.3663 20.9474L13.8284 21.4853C13.4533 21.8604 12.9446 22.0709 12.4142 22.0709C11.8838 22.0709 11.3751 21.8604 11 21.4853L7.46445 17.9497L4.63603 20.7782C4.2455 21.1687 3.61234 21.1687 3.22181 20.7782C2.83129 20.3877 2.83129 19.7545 3.22181 19.364L6.05024 16.5355L2.51471 13C2.13963 12.6249 1.92913 12.1162 1.92913 11.5858C1.92913 11.0554 2.13963 10.5466 2.51471 10.1716L3.05263 9.63365L3.20524 9.49209C3.57235 9.17309 4.01205 8.94693 4.48756 8.83539C5.03093 8.70798 5.59924 8.73494 6.12827 8.91273L8.01688 9.53214L8.02379 9.5349C8.19995 9.59404 8.38907 9.60282 8.57 9.56045C8.7057 9.52863 8.83304 9.46898 8.94358 9.38575L9.04854 9.2946L11.7071 6.63604C11.1445 6.07343 10.8287 5.31037 10.8287 4.51472C10.8287 3.71907 11.1445 2.95601 11.7071 2.3934C12.2697 1.83079 13.0328 1.51504 13.8284 1.51504C14.6241 1.51504 15.3871 1.83079 15.9497 2.3934L21.6066 8.05025Z" })
|
|
32666
32919
|
}
|
|
32667
32920
|
);
|
|
32668
32921
|
}
|
|
32669
32922
|
|
|
32670
32923
|
// app/renderer/components/icons/PinLinedIcon.tsx
|
|
32671
|
-
import { jsx as
|
|
32924
|
+
import { jsx as jsx57 } from "react/jsx-runtime";
|
|
32672
32925
|
function PinLinedIcon(props) {
|
|
32673
32926
|
"use memo";
|
|
32674
|
-
return /* @__PURE__ */
|
|
32927
|
+
return /* @__PURE__ */ jsx57(
|
|
32675
32928
|
"svg",
|
|
32676
32929
|
{
|
|
32677
32930
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -32679,7 +32932,7 @@ function PinLinedIcon(props) {
|
|
|
32679
32932
|
fill: "currentColor",
|
|
32680
32933
|
"aria-hidden": true,
|
|
32681
32934
|
...props,
|
|
32682
|
-
children: /* @__PURE__ */
|
|
32935
|
+
children: /* @__PURE__ */ jsx57("path", { d: "M21.6066 8.05025C22.1692 8.61286 22.4849 9.37592 22.4849 10.1716C22.4849 10.9672 22.1692 11.7303 21.6066 12.2929C21.044 12.8555 20.2809 13.1713 19.4853 13.1713C18.6896 13.1713 17.9266 12.8555 17.3639 12.2929L14.7054 14.9514L14.6142 15.0564C14.531 15.1669 14.4714 15.2943 14.4395 15.43C14.3972 15.6109 14.406 15.8 14.4651 15.9762L14.4678 15.9831L15.0873 17.8717L15.1466 18.072C15.2691 18.5425 15.2761 19.037 15.1646 19.5124C15.0372 20.0557 14.7607 20.5526 14.3663 20.9474L13.8284 21.4853C13.4533 21.8604 12.9446 22.0709 12.4142 22.0709C11.8838 22.0709 11.3751 21.8604 11 21.4853L7.46445 17.9497L4.63603 20.7782C4.2455 21.1687 3.61234 21.1687 3.22181 20.7782C2.83129 20.3877 2.83129 19.7545 3.22181 19.364L6.05024 16.5355L2.51471 13C2.13963 12.6249 1.92913 12.1162 1.92913 11.5858C1.92913 11.0554 2.13963 10.5466 2.51471 10.1716L3.05263 9.63365L3.20524 9.49209C3.57235 9.17309 4.01205 8.94693 4.48756 8.83539C5.03093 8.70798 5.59924 8.73494 6.12827 8.91273L8.01688 9.53214L8.02379 9.5349C8.19995 9.59404 8.38907 9.60282 8.57 9.56045C8.7057 9.52863 8.83304 9.46898 8.94358 9.38575L9.04854 9.2946L11.7071 6.63604C11.1445 6.07343 10.8287 5.31037 10.8287 4.51472C10.8287 3.71907 11.1445 2.95601 11.7071 2.3934C12.2697 1.83079 13.0328 1.51504 13.8284 1.51504C14.6241 1.51504 15.3871 1.83079 15.9497 2.3934L21.6066 8.05025ZM14.5355 3.80761C14.348 3.62008 14.0936 3.51483 13.8284 3.51483C13.5632 3.51483 13.3088 3.62008 13.1213 3.80761C12.9338 3.99515 12.8285 4.2495 12.8285 4.51472C12.8285 4.74685 12.9091 4.97066 13.055 5.14863L13.2539 5.36822C13.5457 5.72416 13.7069 6.17177 13.7069 6.63604C13.7069 7.16647 13.4964 7.67518 13.1213 8.05025L10.4621 10.7095C10.0673 11.1038 9.57037 11.3803 9.02713 11.5078C8.48575 11.6347 7.92002 11.6071 7.39264 11.4311V11.4325L5.49781 10.811L5.49091 10.8082C5.31475 10.7491 5.12562 10.7403 4.94469 10.7827C4.76366 10.8251 4.59774 10.9172 4.46615 11.0486L3.92892 11.5858L12.4142 20.0711L12.9514 19.5338C13.0828 19.4022 13.1748 19.2363 13.2173 19.0553C13.2597 18.8744 13.2509 18.6852 13.1917 18.5091L13.189 18.5022L12.5675 16.6073L12.5682 16.6067C12.3924 16.0795 12.3654 15.514 12.4922 14.9729C12.6197 14.4296 12.8962 13.9327 13.2905 13.5379L15.9497 10.8787C16.3248 10.5036 16.8335 10.2931 17.3639 10.2931C17.8282 10.2931 18.2758 10.4543 18.6318 10.7461L18.8514 10.945C19.0293 11.0909 19.2531 11.1715 19.4853 11.1715C19.7505 11.1715 20.0048 11.0662 20.1924 10.8787C20.3799 10.6911 20.4852 10.4368 20.4852 10.1716C20.4852 9.90636 20.3799 9.652 20.1924 9.46447L14.5355 3.80761Z" })
|
|
32683
32936
|
}
|
|
32684
32937
|
);
|
|
32685
32938
|
}
|
|
@@ -32690,7 +32943,7 @@ import { useExternalStoreSnapshot as useExternalStoreSnapshot2 } from "@tutti-os
|
|
|
32690
32943
|
// agent-gui/agentGuiNode/agentGuiNodeViewConversation.tsx
|
|
32691
32944
|
import { Spinner as Spinner7 } from "@tutti-os/ui-system";
|
|
32692
32945
|
import { AskLinedIcon } from "@tutti-os/ui-system/icons";
|
|
32693
|
-
import { jsx as
|
|
32946
|
+
import { jsx as jsx58 } from "react/jsx-runtime";
|
|
32694
32947
|
function ConversationMeta({
|
|
32695
32948
|
item,
|
|
32696
32949
|
nowMs,
|
|
@@ -32699,24 +32952,24 @@ function ConversationMeta({
|
|
|
32699
32952
|
"use memo";
|
|
32700
32953
|
const kind = conversationMetaKind(item);
|
|
32701
32954
|
if (kind === "loading") {
|
|
32702
|
-
return /* @__PURE__ */
|
|
32955
|
+
return /* @__PURE__ */ jsx58(
|
|
32703
32956
|
"span",
|
|
32704
32957
|
{
|
|
32705
32958
|
className: AgentGUINode_styles_default.conversationMeta,
|
|
32706
32959
|
"data-kind": kind,
|
|
32707
32960
|
"data-testid": `agent-gui-conversation-meta-${item.id}`,
|
|
32708
|
-
children: /* @__PURE__ */
|
|
32961
|
+
children: /* @__PURE__ */ jsx58(LoadingGlyph, {})
|
|
32709
32962
|
}
|
|
32710
32963
|
);
|
|
32711
32964
|
}
|
|
32712
32965
|
if (kind === "waiting") {
|
|
32713
|
-
return /* @__PURE__ */
|
|
32966
|
+
return /* @__PURE__ */ jsx58(
|
|
32714
32967
|
"span",
|
|
32715
32968
|
{
|
|
32716
32969
|
className: AgentGUINode_styles_default.conversationMeta,
|
|
32717
32970
|
"data-kind": kind,
|
|
32718
32971
|
"data-testid": `agent-gui-conversation-meta-${item.id}`,
|
|
32719
|
-
children: /* @__PURE__ */
|
|
32972
|
+
children: /* @__PURE__ */ jsx58(
|
|
32720
32973
|
AskLinedIcon,
|
|
32721
32974
|
{
|
|
32722
32975
|
"aria-hidden": "true",
|
|
@@ -32727,34 +32980,34 @@ function ConversationMeta({
|
|
|
32727
32980
|
);
|
|
32728
32981
|
}
|
|
32729
32982
|
if (kind === "failed") {
|
|
32730
|
-
return /* @__PURE__ */
|
|
32983
|
+
return /* @__PURE__ */ jsx58(
|
|
32731
32984
|
"span",
|
|
32732
32985
|
{
|
|
32733
32986
|
className: AgentGUINode_styles_default.conversationMeta,
|
|
32734
32987
|
"data-kind": kind,
|
|
32735
32988
|
"data-testid": `agent-gui-conversation-meta-${item.id}`,
|
|
32736
|
-
children: /* @__PURE__ */
|
|
32989
|
+
children: /* @__PURE__ */ jsx58(AttentionGlyph, {})
|
|
32737
32990
|
}
|
|
32738
32991
|
);
|
|
32739
32992
|
}
|
|
32740
32993
|
if (kind === "unread-complete") {
|
|
32741
|
-
return /* @__PURE__ */
|
|
32994
|
+
return /* @__PURE__ */ jsx58(
|
|
32742
32995
|
"span",
|
|
32743
32996
|
{
|
|
32744
32997
|
className: AgentGUINode_styles_default.conversationMeta,
|
|
32745
32998
|
"data-kind": kind,
|
|
32746
32999
|
"data-testid": `agent-gui-conversation-meta-${item.id}`,
|
|
32747
|
-
children: /* @__PURE__ */
|
|
33000
|
+
children: /* @__PURE__ */ jsx58("span", { className: AgentGUINode_styles_default.conversationUnreadLamp, "aria-hidden": "true" })
|
|
32748
33001
|
}
|
|
32749
33002
|
);
|
|
32750
33003
|
}
|
|
32751
|
-
return /* @__PURE__ */
|
|
33004
|
+
return /* @__PURE__ */ jsx58(
|
|
32752
33005
|
"span",
|
|
32753
33006
|
{
|
|
32754
33007
|
className: AgentGUINode_styles_default.conversationMeta,
|
|
32755
33008
|
"data-kind": kind,
|
|
32756
33009
|
"data-testid": `agent-gui-conversation-meta-${item.id}`,
|
|
32757
|
-
children: /* @__PURE__ */
|
|
33010
|
+
children: /* @__PURE__ */ jsx58("span", { className: AgentGUINode_styles_default.conversationTime, children: formatConversationRelativeTime(
|
|
32758
33011
|
resolveAgentGUIConversationSortTimeUnixMs(item),
|
|
32759
33012
|
nowMs,
|
|
32760
33013
|
labels
|
|
@@ -32802,7 +33055,7 @@ function formatConversationRelativeTime(updatedAtUnixMs, nowMs, labels) {
|
|
|
32802
33055
|
}
|
|
32803
33056
|
function LoadingGlyph() {
|
|
32804
33057
|
"use memo";
|
|
32805
|
-
return /* @__PURE__ */
|
|
33058
|
+
return /* @__PURE__ */ jsx58(
|
|
32806
33059
|
Spinner7,
|
|
32807
33060
|
{
|
|
32808
33061
|
className: AgentGUINode_styles_default.conversationStatusGlyph,
|
|
@@ -32816,14 +33069,14 @@ function LoadingGlyph() {
|
|
|
32816
33069
|
}
|
|
32817
33070
|
function AttentionGlyph() {
|
|
32818
33071
|
"use memo";
|
|
32819
|
-
return /* @__PURE__ */
|
|
33072
|
+
return /* @__PURE__ */ jsx58(
|
|
32820
33073
|
"svg",
|
|
32821
33074
|
{
|
|
32822
33075
|
viewBox: "0 0 24 24",
|
|
32823
33076
|
fill: "none",
|
|
32824
33077
|
"aria-hidden": "true",
|
|
32825
33078
|
className: AgentGUINode_styles_default.conversationStatusGlyph,
|
|
32826
|
-
children: /* @__PURE__ */
|
|
33079
|
+
children: /* @__PURE__ */ jsx58(
|
|
32827
33080
|
"path",
|
|
32828
33081
|
{
|
|
32829
33082
|
d: "M12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2ZM12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20C16.4183 20 20 16.4183 20 12C20 7.58172 16.4183 4 12 4ZM12.5 15C12.7761 15 13 15.2239 13 15.5V16.5C13 16.7761 12.7761 17 12.5 17H11.5C11.2239 17 11 16.7761 11 16.5V15.5C11 15.2239 11.2239 15 11.5 15H12.5ZM12.5 7C12.7761 7 13 7.22386 13 7.5V13.5C13 13.7761 12.7761 14 12.5 14H11.5C11.2239 14 11 13.7761 11 13.5V7.5C11 7.22386 11.2239 7 11.5 7H12.5Z",
|
|
@@ -32835,7 +33088,7 @@ function AttentionGlyph() {
|
|
|
32835
33088
|
}
|
|
32836
33089
|
|
|
32837
33090
|
// agent-gui/agentGuiNode/view/AgentGUIConversationRailClock.tsx
|
|
32838
|
-
import { jsx as
|
|
33091
|
+
import { jsx as jsx59 } from "react/jsx-runtime";
|
|
32839
33092
|
var AgentGUIConversationRailClockStore = class {
|
|
32840
33093
|
currentTimeMs = Date.now();
|
|
32841
33094
|
listeners = /* @__PURE__ */ new Set();
|
|
@@ -32875,7 +33128,7 @@ function AgentGUIConversationRailRelativeTime({
|
|
|
32875
33128
|
labels
|
|
32876
33129
|
}) {
|
|
32877
33130
|
const currentTimeMs = useExternalStoreSnapshot2(agentGUIConversationRailClock);
|
|
32878
|
-
return /* @__PURE__ */
|
|
33131
|
+
return /* @__PURE__ */ jsx59(ConversationMeta, { item, nowMs: currentTimeMs, labels });
|
|
32879
33132
|
}
|
|
32880
33133
|
|
|
32881
33134
|
// agent-gui/agentGuiNode/view/AgentGUIConversationActionsMenu.tsx
|
|
@@ -32884,7 +33137,7 @@ import {
|
|
|
32884
33137
|
useCallback as useCallback52,
|
|
32885
33138
|
useMemo as useMemo38,
|
|
32886
33139
|
useRef as useRef45,
|
|
32887
|
-
useState as
|
|
33140
|
+
useState as useState35
|
|
32888
33141
|
} from "react";
|
|
32889
33142
|
import {
|
|
32890
33143
|
AtSign,
|
|
@@ -32932,7 +33185,7 @@ function renderAgentConversationCopyHtml(markdown) {
|
|
|
32932
33185
|
}
|
|
32933
33186
|
|
|
32934
33187
|
// agent-gui/agentGuiNode/view/AgentGUIConversationActionsMenu.tsx
|
|
32935
|
-
import { Fragment as Fragment19, jsx as
|
|
33188
|
+
import { Fragment as Fragment19, jsx as jsx60, jsxs as jsxs43 } from "react/jsx-runtime";
|
|
32936
33189
|
var menuContentClassName = "w-max min-w-44 nodrag [-webkit-app-region:no-drag]";
|
|
32937
33190
|
async function writeTextAndHtmlWithWebClipboard(text, html) {
|
|
32938
33191
|
if (typeof navigator === "undefined" || typeof navigator.clipboard?.write !== "function" || typeof ClipboardItem === "undefined") {
|
|
@@ -33094,7 +33347,7 @@ function useConversationActionGroups({
|
|
|
33094
33347
|
const agentHostApi = useOptionalAgentHostApi();
|
|
33095
33348
|
const agentActivityRuntime = useOptionalAgentActivityRuntime();
|
|
33096
33349
|
const copyConversationValue = useAgentGUIConversationCopyAction(labels);
|
|
33097
|
-
const [resetKey, setResetKey] =
|
|
33350
|
+
const [resetKey, setResetKey] = useState35(0);
|
|
33098
33351
|
const pendingActionRef = useRef45(false);
|
|
33099
33352
|
const run = useCallback52(
|
|
33100
33353
|
(action) => {
|
|
@@ -33133,26 +33386,26 @@ function useConversationActionGroups({
|
|
|
33133
33386
|
return [
|
|
33134
33387
|
[
|
|
33135
33388
|
{
|
|
33136
|
-
icon: /* @__PURE__ */
|
|
33389
|
+
icon: /* @__PURE__ */ jsx60(Pencil2, { "aria-hidden": "true" }),
|
|
33137
33390
|
id: "rename",
|
|
33138
33391
|
label: labels.renameSession,
|
|
33139
33392
|
onSelect: () => run(() => onRequestRenameConversation(conversation))
|
|
33140
33393
|
},
|
|
33141
33394
|
copyItem(
|
|
33142
33395
|
"copy-markdown",
|
|
33143
|
-
/* @__PURE__ */
|
|
33396
|
+
/* @__PURE__ */ jsx60(FileText2, { "aria-hidden": "true" }),
|
|
33144
33397
|
labels.copyAsMarkdown
|
|
33145
33398
|
),
|
|
33146
33399
|
copyItem(
|
|
33147
33400
|
"copy-reference",
|
|
33148
|
-
/* @__PURE__ */
|
|
33401
|
+
/* @__PURE__ */ jsx60(AtSign, { "aria-hidden": "true" }),
|
|
33149
33402
|
labels.copyAsReference
|
|
33150
33403
|
)
|
|
33151
33404
|
],
|
|
33152
33405
|
[
|
|
33153
33406
|
...onOpenConversationWindow ? [
|
|
33154
33407
|
{
|
|
33155
|
-
icon: /* @__PURE__ */
|
|
33408
|
+
icon: /* @__PURE__ */ jsx60(ExternalLink2, { "aria-hidden": "true" }),
|
|
33156
33409
|
id: "open-window",
|
|
33157
33410
|
label: labels.openConversationWindow,
|
|
33158
33411
|
onSelect: () => run(() => onOpenConversationWindow(conversation.id))
|
|
@@ -33160,7 +33413,7 @@ function useConversationActionGroups({
|
|
|
33160
33413
|
] : [],
|
|
33161
33414
|
{
|
|
33162
33415
|
disabled: !canMarkUnread,
|
|
33163
|
-
icon: /* @__PURE__ */
|
|
33416
|
+
icon: /* @__PURE__ */ jsx60(CircleDot, { "aria-hidden": "true" }),
|
|
33164
33417
|
id: "mark-unread",
|
|
33165
33418
|
label: labels.markSessionUnread,
|
|
33166
33419
|
onSelect: () => run(() => onMarkConversationUnread(conversation.id))
|
|
@@ -33188,9 +33441,9 @@ function AgentGUIConversationActionsDropdown({
|
|
|
33188
33441
|
menu,
|
|
33189
33442
|
moreSessionActionsLabel
|
|
33190
33443
|
}) {
|
|
33191
|
-
const [open, setOpen] =
|
|
33192
|
-
return /* @__PURE__ */
|
|
33193
|
-
/* @__PURE__ */
|
|
33444
|
+
const [open, setOpen] = useState35(false);
|
|
33445
|
+
return /* @__PURE__ */ jsxs43(DropdownMenu4, { onOpenChange: setOpen, children: [
|
|
33446
|
+
/* @__PURE__ */ jsx60(DropdownMenuTrigger4, { asChild: true, children: /* @__PURE__ */ jsx60(
|
|
33194
33447
|
BareIconButton2,
|
|
33195
33448
|
{
|
|
33196
33449
|
className: buttonClassName,
|
|
@@ -33200,16 +33453,16 @@ function AgentGUIConversationActionsDropdown({
|
|
|
33200
33453
|
onClick: (event) => event.stopPropagation(),
|
|
33201
33454
|
onMouseDown: (event) => event.stopPropagation(),
|
|
33202
33455
|
onPointerDown: (event) => event.stopPropagation(),
|
|
33203
|
-
children: /* @__PURE__ */
|
|
33456
|
+
children: /* @__PURE__ */ jsx60(MoreHorizontal, { "aria-hidden": "true" })
|
|
33204
33457
|
}
|
|
33205
33458
|
) }),
|
|
33206
|
-
open ? /* @__PURE__ */
|
|
33459
|
+
open ? /* @__PURE__ */ jsx60(
|
|
33207
33460
|
DropdownMenuContent4,
|
|
33208
33461
|
{
|
|
33209
33462
|
align: "end",
|
|
33210
33463
|
className: menuContentClassName,
|
|
33211
33464
|
sideOffset: 6,
|
|
33212
|
-
children: /* @__PURE__ */
|
|
33465
|
+
children: /* @__PURE__ */ jsx60(DropdownActionGroups, { groups: menu.groups })
|
|
33213
33466
|
}
|
|
33214
33467
|
) : null
|
|
33215
33468
|
] }, menu.resetKey);
|
|
@@ -33218,23 +33471,23 @@ function AgentGUIConversationActionsContextMenu({
|
|
|
33218
33471
|
children,
|
|
33219
33472
|
menu
|
|
33220
33473
|
}) {
|
|
33221
|
-
const [open, setOpen] =
|
|
33222
|
-
return /* @__PURE__ */
|
|
33223
|
-
/* @__PURE__ */
|
|
33224
|
-
open ? /* @__PURE__ */
|
|
33474
|
+
const [open, setOpen] = useState35(false);
|
|
33475
|
+
return /* @__PURE__ */ jsxs43(ContextMenu, { onOpenChange: setOpen, children: [
|
|
33476
|
+
/* @__PURE__ */ jsx60(ContextMenuTrigger, { asChild: true, children }),
|
|
33477
|
+
open ? /* @__PURE__ */ jsx60(ContextMenuContent, { className: menuContentClassName, children: /* @__PURE__ */ jsx60(ContextActionGroups, { groups: menu.groups }) }) : null
|
|
33225
33478
|
] }, menu.resetKey);
|
|
33226
33479
|
}
|
|
33227
33480
|
function DropdownActionGroups({
|
|
33228
33481
|
groups
|
|
33229
33482
|
}) {
|
|
33230
|
-
return /* @__PURE__ */
|
|
33231
|
-
groupIndex > 0 ? /* @__PURE__ */
|
|
33483
|
+
return /* @__PURE__ */ jsx60(Fragment19, { children: groups.map((group, groupIndex) => /* @__PURE__ */ jsxs43(Fragment18, { children: [
|
|
33484
|
+
groupIndex > 0 ? /* @__PURE__ */ jsx60(DropdownMenuSeparator2, {}) : null,
|
|
33232
33485
|
group.map((entry) => (
|
|
33233
33486
|
// onClick/onPointerUp mirror onSelect so the action survives
|
|
33234
33487
|
// workbench dead clicks (pointerup arrives but the click event
|
|
33235
33488
|
// is swallowed); the shared runner's pending ref dedups the
|
|
33236
33489
|
// overlapping events of one gesture.
|
|
33237
|
-
/* @__PURE__ */
|
|
33490
|
+
/* @__PURE__ */ jsxs43(
|
|
33238
33491
|
DropdownMenuItem3,
|
|
33239
33492
|
{
|
|
33240
33493
|
disabled: entry.disabled,
|
|
@@ -33251,7 +33504,7 @@ function DropdownActionGroups({
|
|
|
33251
33504
|
onSelect: entry.onSelect,
|
|
33252
33505
|
children: [
|
|
33253
33506
|
entry.icon,
|
|
33254
|
-
/* @__PURE__ */
|
|
33507
|
+
/* @__PURE__ */ jsx60("span", { children: entry.label })
|
|
33255
33508
|
]
|
|
33256
33509
|
},
|
|
33257
33510
|
entry.id
|
|
@@ -33262,11 +33515,11 @@ function DropdownActionGroups({
|
|
|
33262
33515
|
function ContextActionGroups({
|
|
33263
33516
|
groups
|
|
33264
33517
|
}) {
|
|
33265
|
-
return /* @__PURE__ */
|
|
33266
|
-
groupIndex > 0 ? /* @__PURE__ */
|
|
33518
|
+
return /* @__PURE__ */ jsx60(Fragment19, { children: groups.map((group, groupIndex) => /* @__PURE__ */ jsxs43(Fragment18, { children: [
|
|
33519
|
+
groupIndex > 0 ? /* @__PURE__ */ jsx60(ContextMenuSeparator, {}) : null,
|
|
33267
33520
|
group.map((entry) => (
|
|
33268
33521
|
// Same dead-click fallbacks as DropdownActionGroups.
|
|
33269
|
-
/* @__PURE__ */
|
|
33522
|
+
/* @__PURE__ */ jsxs43(
|
|
33270
33523
|
ContextMenuItem,
|
|
33271
33524
|
{
|
|
33272
33525
|
disabled: entry.disabled,
|
|
@@ -33283,7 +33536,7 @@ function ContextActionGroups({
|
|
|
33283
33536
|
onSelect: entry.onSelect,
|
|
33284
33537
|
children: [
|
|
33285
33538
|
entry.icon,
|
|
33286
|
-
/* @__PURE__ */
|
|
33539
|
+
/* @__PURE__ */ jsx60("span", { children: entry.label })
|
|
33287
33540
|
]
|
|
33288
33541
|
},
|
|
33289
33542
|
entry.id
|
|
@@ -33293,7 +33546,7 @@ function ContextActionGroups({
|
|
|
33293
33546
|
}
|
|
33294
33547
|
|
|
33295
33548
|
// agent-gui/agentGuiNode/view/AgentGUIConversationRailItem.tsx
|
|
33296
|
-
import { Fragment as Fragment20, jsx as
|
|
33549
|
+
import { Fragment as Fragment20, jsx as jsx61, jsxs as jsxs44 } from "react/jsx-runtime";
|
|
33297
33550
|
function agentGUIConversationIconPresentation(provider, agentTargetId, workspaceId, agentTargets) {
|
|
33298
33551
|
const targetPresentation = resolveAgentTargetPresentation({
|
|
33299
33552
|
agentTargetId: agentTargetId ?? "",
|
|
@@ -33399,7 +33652,7 @@ var AgentGUIConversationRailItem = memo5(
|
|
|
33399
33652
|
onOpenConversationWindow,
|
|
33400
33653
|
onRequestRenameConversation
|
|
33401
33654
|
});
|
|
33402
|
-
const row = /* @__PURE__ */
|
|
33655
|
+
const row = /* @__PURE__ */ jsxs44(
|
|
33403
33656
|
"div",
|
|
33404
33657
|
{
|
|
33405
33658
|
ref: setItemElement,
|
|
@@ -33416,7 +33669,7 @@ var AgentGUIConversationRailItem = memo5(
|
|
|
33416
33669
|
},
|
|
33417
33670
|
onMouseLeave: handleMouseLeave,
|
|
33418
33671
|
children: [
|
|
33419
|
-
/* @__PURE__ */
|
|
33672
|
+
/* @__PURE__ */ jsxs44(
|
|
33420
33673
|
"button",
|
|
33421
33674
|
{
|
|
33422
33675
|
type: "button",
|
|
@@ -33427,8 +33680,8 @@ var AgentGUIConversationRailItem = memo5(
|
|
|
33427
33680
|
handleRequestRename();
|
|
33428
33681
|
},
|
|
33429
33682
|
children: [
|
|
33430
|
-
/* @__PURE__ */
|
|
33431
|
-
conversationIcon?.kind === "mask" ? /* @__PURE__ */
|
|
33683
|
+
/* @__PURE__ */ jsxs44("span", { className: AgentGUINode_styles_default.conversationTitleRow, children: [
|
|
33684
|
+
conversationIcon?.kind === "mask" ? /* @__PURE__ */ jsx61(
|
|
33432
33685
|
"span",
|
|
33433
33686
|
{
|
|
33434
33687
|
"aria-hidden": "true",
|
|
@@ -33441,7 +33694,7 @@ var AgentGUIConversationRailItem = memo5(
|
|
|
33441
33694
|
maskImage: `url("${conversationIcon.url}")`
|
|
33442
33695
|
}
|
|
33443
33696
|
}
|
|
33444
|
-
) : conversationIcon ? /* @__PURE__ */
|
|
33697
|
+
) : conversationIcon ? /* @__PURE__ */ jsx61(
|
|
33445
33698
|
"img",
|
|
33446
33699
|
{
|
|
33447
33700
|
alt: "",
|
|
@@ -33454,22 +33707,22 @@ var AgentGUIConversationRailItem = memo5(
|
|
|
33454
33707
|
src: conversationIcon.url
|
|
33455
33708
|
}
|
|
33456
33709
|
) : null,
|
|
33457
|
-
item.titleLeadingMentionKind === "task" ? /* @__PURE__ */
|
|
33710
|
+
item.titleLeadingMentionKind === "task" ? /* @__PURE__ */ jsx61(
|
|
33458
33711
|
"span",
|
|
33459
33712
|
{
|
|
33460
33713
|
"aria-hidden": "true",
|
|
33461
33714
|
className: AgentGUINode_styles_default.conversationTitleMentionIcon,
|
|
33462
33715
|
"data-agent-gui-conversation-title-mention-icon": item.titleLeadingMentionKind,
|
|
33463
|
-
children: /* @__PURE__ */
|
|
33716
|
+
children: /* @__PURE__ */ jsx61(IssueIcon, {})
|
|
33464
33717
|
}
|
|
33465
33718
|
) : null,
|
|
33466
|
-
/* @__PURE__ */
|
|
33719
|
+
/* @__PURE__ */ jsx61("span", { className: AgentGUINode_styles_default.conversationTitle, children: agentGUIConversationRailTitle(item, labels, uiLanguage) })
|
|
33467
33720
|
] }),
|
|
33468
|
-
/* @__PURE__ */
|
|
33721
|
+
/* @__PURE__ */ jsx61(AgentGUIConversationRailRelativeTime, { item, labels })
|
|
33469
33722
|
]
|
|
33470
33723
|
}
|
|
33471
33724
|
),
|
|
33472
|
-
previewMode ? null : /* @__PURE__ */
|
|
33725
|
+
previewMode ? null : /* @__PURE__ */ jsx61("div", { className: AgentGUINode_styles_default.conversationActions, children: isPendingDeleteConversation ? /* @__PURE__ */ jsx61(
|
|
33473
33726
|
"button",
|
|
33474
33727
|
{
|
|
33475
33728
|
type: "button",
|
|
@@ -33483,10 +33736,10 @@ var AgentGUIConversationRailItem = memo5(
|
|
|
33483
33736
|
onConfirmDeleteConversation();
|
|
33484
33737
|
}
|
|
33485
33738
|
},
|
|
33486
|
-
children: /* @__PURE__ */
|
|
33739
|
+
children: /* @__PURE__ */ jsx61("span", { className: AgentGUINode_styles_default.conversationDeleteConfirmText, children: labels.deleteSessionConfirm })
|
|
33487
33740
|
}
|
|
33488
|
-
) : /* @__PURE__ */
|
|
33489
|
-
onOpenConversationWindow ? /* @__PURE__ */
|
|
33741
|
+
) : /* @__PURE__ */ jsxs44(Fragment20, { children: [
|
|
33742
|
+
onOpenConversationWindow ? /* @__PURE__ */ jsx61(
|
|
33490
33743
|
BareIconButton3,
|
|
33491
33744
|
{
|
|
33492
33745
|
className: AgentGUINode_styles_default.conversationOpenWindowButton,
|
|
@@ -33503,10 +33756,10 @@ var AgentGUIConversationRailItem = memo5(
|
|
|
33503
33756
|
event.stopPropagation();
|
|
33504
33757
|
handleOpenConversationWindow();
|
|
33505
33758
|
},
|
|
33506
|
-
children: /* @__PURE__ */
|
|
33759
|
+
children: /* @__PURE__ */ jsx61(ExternalLink3, { "aria-hidden": "true" })
|
|
33507
33760
|
}
|
|
33508
33761
|
) : null,
|
|
33509
|
-
/* @__PURE__ */
|
|
33762
|
+
/* @__PURE__ */ jsx61(
|
|
33510
33763
|
BareIconButton3,
|
|
33511
33764
|
{
|
|
33512
33765
|
className: AgentGUINode_styles_default.conversationPinButton,
|
|
@@ -33523,10 +33776,10 @@ var AgentGUIConversationRailItem = memo5(
|
|
|
33523
33776
|
event.stopPropagation();
|
|
33524
33777
|
handleTogglePinned();
|
|
33525
33778
|
},
|
|
33526
|
-
children: pinned ? /* @__PURE__ */
|
|
33779
|
+
children: pinned ? /* @__PURE__ */ jsx61(PinFilledIcon, { "aria-hidden": "true" }) : /* @__PURE__ */ jsx61(PinLinedIcon, { "aria-hidden": "true" })
|
|
33527
33780
|
}
|
|
33528
33781
|
),
|
|
33529
|
-
/* @__PURE__ */
|
|
33782
|
+
/* @__PURE__ */ jsx61(
|
|
33530
33783
|
BareIconButton3,
|
|
33531
33784
|
{
|
|
33532
33785
|
className: AgentGUINode_styles_default.conversationDeleteButton,
|
|
@@ -33543,10 +33796,10 @@ var AgentGUIConversationRailItem = memo5(
|
|
|
33543
33796
|
event.stopPropagation();
|
|
33544
33797
|
handleRequestDelete();
|
|
33545
33798
|
},
|
|
33546
|
-
children: /* @__PURE__ */
|
|
33799
|
+
children: /* @__PURE__ */ jsx61(CanvasNodeTrashLinedIcon, { "aria-hidden": "true" })
|
|
33547
33800
|
}
|
|
33548
33801
|
),
|
|
33549
|
-
/* @__PURE__ */
|
|
33802
|
+
/* @__PURE__ */ jsx61(
|
|
33550
33803
|
AgentGUIConversationActionsDropdown,
|
|
33551
33804
|
{
|
|
33552
33805
|
buttonClassName: AgentGUINode_styles_default.conversationMoreButton,
|
|
@@ -33561,7 +33814,7 @@ var AgentGUIConversationRailItem = memo5(
|
|
|
33561
33814
|
if (previewMode) {
|
|
33562
33815
|
return row;
|
|
33563
33816
|
}
|
|
33564
|
-
return /* @__PURE__ */
|
|
33817
|
+
return /* @__PURE__ */ jsx61(AgentGUIConversationActionsContextMenu, { menu, children: row });
|
|
33565
33818
|
}
|
|
33566
33819
|
);
|
|
33567
33820
|
function AgentGUIProjectRailHeader({
|
|
@@ -33579,10 +33832,10 @@ function AgentGUIProjectRailHeader({
|
|
|
33579
33832
|
}),
|
|
33580
33833
|
[agentHostApi.userProjects, selectProjectDirectory]
|
|
33581
33834
|
);
|
|
33582
|
-
return /* @__PURE__ */
|
|
33583
|
-
/* @__PURE__ */
|
|
33584
|
-
/* @__PURE__ */
|
|
33585
|
-
/* @__PURE__ */
|
|
33835
|
+
return /* @__PURE__ */ jsxs44("div", { className: AgentGUINode_styles_default.projectRailHeader, children: [
|
|
33836
|
+
/* @__PURE__ */ jsx61("div", { className: AgentGUINode_styles_default.projectRailTitle, children: /* @__PURE__ */ jsx61("span", { children: workspaceUserProjectI18n.tFirst(["projectSelect.projectLabel"]) }) }),
|
|
33837
|
+
/* @__PURE__ */ jsxs44("div", { className: AgentGUINode_styles_default.projectRailAddProject, children: [
|
|
33838
|
+
/* @__PURE__ */ jsx61(
|
|
33586
33839
|
WorkspaceUserProjectSelect2,
|
|
33587
33840
|
{
|
|
33588
33841
|
api: userProjectApi,
|
|
@@ -33613,7 +33866,7 @@ function AgentGUIProjectRailHeader({
|
|
|
33613
33866
|
"projectSelect.addProject"
|
|
33614
33867
|
])
|
|
33615
33868
|
},
|
|
33616
|
-
renderAddProjectIcon: () => /* @__PURE__ */
|
|
33869
|
+
renderAddProjectIcon: () => /* @__PURE__ */ jsx61(
|
|
33617
33870
|
NewWorkspaceLinedIcon2,
|
|
33618
33871
|
{
|
|
33619
33872
|
"aria-hidden": true,
|
|
@@ -33631,7 +33884,7 @@ function AgentGUIProjectRailHeader({
|
|
|
33631
33884
|
}
|
|
33632
33885
|
}
|
|
33633
33886
|
),
|
|
33634
|
-
/* @__PURE__ */
|
|
33887
|
+
/* @__PURE__ */ jsx61(
|
|
33635
33888
|
NewWorkspaceLinedIcon2,
|
|
33636
33889
|
{
|
|
33637
33890
|
"aria-hidden": true,
|
|
@@ -33643,7 +33896,7 @@ function AgentGUIProjectRailHeader({
|
|
|
33643
33896
|
}
|
|
33644
33897
|
|
|
33645
33898
|
// agent-gui/agentGuiNode/view/AgentGUIConversationRailSectionHeader.tsx
|
|
33646
|
-
import { forwardRef as forwardRef5, memo as memo6, useCallback as useCallback54, useState as
|
|
33899
|
+
import { forwardRef as forwardRef5, memo as memo6, useCallback as useCallback54, useState as useState36 } from "react";
|
|
33647
33900
|
import { ChevronRight as ChevronRight2 } from "lucide-react";
|
|
33648
33901
|
import {
|
|
33649
33902
|
DropdownMenu as DropdownMenu5,
|
|
@@ -33666,7 +33919,7 @@ import {
|
|
|
33666
33919
|
|
|
33667
33920
|
// agent-gui/agentGuiNode/view/agentGUIConversationRailSectionPresentationContext.tsx
|
|
33668
33921
|
import { createContext as createContext2, useContext as useContext2 } from "react";
|
|
33669
|
-
import { jsx as
|
|
33922
|
+
import { jsx as jsx62 } from "react/jsx-runtime";
|
|
33670
33923
|
var AgentGUIConversationRailSectionBatchDeletionDisabledContext = createContext2(null);
|
|
33671
33924
|
var AgentGUIConversationRailSectionProjectActionLockedContext = createContext2(null);
|
|
33672
33925
|
var AgentGUIConversationRailSectionProjectDragDisabledContext = createContext2(null);
|
|
@@ -33676,15 +33929,15 @@ function AgentGUIConversationRailSectionPresentationProvider({
|
|
|
33676
33929
|
projectActionLocked,
|
|
33677
33930
|
projectDragDisabled
|
|
33678
33931
|
}) {
|
|
33679
|
-
return /* @__PURE__ */
|
|
33932
|
+
return /* @__PURE__ */ jsx62(
|
|
33680
33933
|
AgentGUIConversationRailSectionBatchDeletionDisabledContext.Provider,
|
|
33681
33934
|
{
|
|
33682
33935
|
value: batchDeletionDisabled,
|
|
33683
|
-
children: /* @__PURE__ */
|
|
33936
|
+
children: /* @__PURE__ */ jsx62(
|
|
33684
33937
|
AgentGUIConversationRailSectionProjectActionLockedContext.Provider,
|
|
33685
33938
|
{
|
|
33686
33939
|
value: projectActionLocked,
|
|
33687
|
-
children: /* @__PURE__ */
|
|
33940
|
+
children: /* @__PURE__ */ jsx62(
|
|
33688
33941
|
AgentGUIConversationRailSectionProjectDragDisabledContext.Provider,
|
|
33689
33942
|
{
|
|
33690
33943
|
value: projectDragDisabled,
|
|
@@ -33722,7 +33975,7 @@ function readSectionPresentationValue(value, name) {
|
|
|
33722
33975
|
}
|
|
33723
33976
|
|
|
33724
33977
|
// agent-gui/agentGuiNode/view/AgentGUIConversationRailSectionHeader.tsx
|
|
33725
|
-
import { jsx as
|
|
33978
|
+
import { jsx as jsx63, jsxs as jsxs45 } from "react/jsx-runtime";
|
|
33726
33979
|
function HeaderFrame({
|
|
33727
33980
|
children,
|
|
33728
33981
|
isProjectSection,
|
|
@@ -33730,7 +33983,7 @@ function HeaderFrame({
|
|
|
33730
33983
|
onProjectDragStart
|
|
33731
33984
|
}) {
|
|
33732
33985
|
const projectDragDisabled = useAgentGUIConversationRailSectionProjectDragDisabled();
|
|
33733
|
-
return /* @__PURE__ */
|
|
33986
|
+
return /* @__PURE__ */ jsx63(
|
|
33734
33987
|
"div",
|
|
33735
33988
|
{
|
|
33736
33989
|
className: AgentGUINode_styles_default.conversationSectionHeader,
|
|
@@ -33751,9 +34004,9 @@ var HeaderIdentity = memo6(function HeaderIdentity2({
|
|
|
33751
34004
|
}) {
|
|
33752
34005
|
"use memo";
|
|
33753
34006
|
if (!isProjectSection) {
|
|
33754
|
-
return /* @__PURE__ */
|
|
34007
|
+
return /* @__PURE__ */ jsx63("div", { className: AgentGUINode_styles_default.conversationSectionToggle, children: /* @__PURE__ */ jsx63("span", { className: AgentGUINode_styles_default.conversationSectionLabel, children: /* @__PURE__ */ jsx63("span", { children: sectionLabel }) }) });
|
|
33755
34008
|
}
|
|
33756
|
-
return /* @__PURE__ */
|
|
34009
|
+
return /* @__PURE__ */ jsxs45(
|
|
33757
34010
|
"button",
|
|
33758
34011
|
{
|
|
33759
34012
|
type: "button",
|
|
@@ -33762,22 +34015,22 @@ var HeaderIdentity = memo6(function HeaderIdentity2({
|
|
|
33762
34015
|
"aria-label": projectPinned ? labels.pinnedProjectAccessibleName(sectionLabel) : sectionLabel,
|
|
33763
34016
|
onClick: onToggleCollapsed,
|
|
33764
34017
|
children: [
|
|
33765
|
-
/* @__PURE__ */
|
|
34018
|
+
/* @__PURE__ */ jsx63(
|
|
33766
34019
|
ChevronRight2,
|
|
33767
34020
|
{
|
|
33768
34021
|
"aria-hidden": "true",
|
|
33769
34022
|
className: AgentGUINode_styles_default.conversationSectionChevron
|
|
33770
34023
|
}
|
|
33771
34024
|
),
|
|
33772
|
-
/* @__PURE__ */
|
|
33773
|
-
isSectionCollapsed ? /* @__PURE__ */
|
|
34025
|
+
/* @__PURE__ */ jsxs45("span", { className: AgentGUINode_styles_default.conversationSectionLabel, children: [
|
|
34026
|
+
isSectionCollapsed ? /* @__PURE__ */ jsx63(
|
|
33774
34027
|
FolderIcon2,
|
|
33775
34028
|
{
|
|
33776
34029
|
"aria-hidden": "true",
|
|
33777
34030
|
className: AgentGUINode_styles_default.conversationSectionLabelIcon,
|
|
33778
34031
|
"data-project-drag-icon": "true"
|
|
33779
34032
|
}
|
|
33780
|
-
) : /* @__PURE__ */
|
|
34033
|
+
) : /* @__PURE__ */ jsx63(
|
|
33781
34034
|
FolderOpenLinedIcon,
|
|
33782
34035
|
{
|
|
33783
34036
|
"aria-hidden": "true",
|
|
@@ -33785,7 +34038,7 @@ var HeaderIdentity = memo6(function HeaderIdentity2({
|
|
|
33785
34038
|
"data-project-drag-icon": "true"
|
|
33786
34039
|
}
|
|
33787
34040
|
),
|
|
33788
|
-
/* @__PURE__ */
|
|
34041
|
+
/* @__PURE__ */ jsx63("span", { children: sectionLabel })
|
|
33789
34042
|
] })
|
|
33790
34043
|
]
|
|
33791
34044
|
}
|
|
@@ -33798,7 +34051,7 @@ var CreateAction = memo6(function CreateAction2({
|
|
|
33798
34051
|
previewMode
|
|
33799
34052
|
}) {
|
|
33800
34053
|
"use memo";
|
|
33801
|
-
const button = /* @__PURE__ */
|
|
34054
|
+
const button = /* @__PURE__ */ jsx63(
|
|
33802
34055
|
BareIconButton4,
|
|
33803
34056
|
{
|
|
33804
34057
|
className: AgentGUINode_styles_default.conversationSectionMoreButton,
|
|
@@ -33807,15 +34060,15 @@ var CreateAction = memo6(function CreateAction2({
|
|
|
33807
34060
|
title: "",
|
|
33808
34061
|
disabled: createConversationDisabled,
|
|
33809
34062
|
onClick: onCreateConversation,
|
|
33810
|
-
children: /* @__PURE__ */
|
|
34063
|
+
children: /* @__PURE__ */ jsx63(CreateChatIcon, { "aria-hidden": "true" })
|
|
33811
34064
|
}
|
|
33812
34065
|
);
|
|
33813
34066
|
if (previewMode) {
|
|
33814
|
-
return /* @__PURE__ */
|
|
34067
|
+
return /* @__PURE__ */ jsx63("span", { className: AgentGUINode_styles_default.conversationSectionActionTooltipWrap, children: button });
|
|
33815
34068
|
}
|
|
33816
|
-
return /* @__PURE__ */
|
|
33817
|
-
/* @__PURE__ */
|
|
33818
|
-
/* @__PURE__ */
|
|
34069
|
+
return /* @__PURE__ */ jsxs45(Tooltip10, { children: [
|
|
34070
|
+
/* @__PURE__ */ jsx63(TooltipTrigger10, { asChild: true, children: /* @__PURE__ */ jsx63("span", { className: AgentGUINode_styles_default.conversationSectionActionTooltipWrap, children: button }) }),
|
|
34071
|
+
/* @__PURE__ */ jsx63(
|
|
33819
34072
|
TooltipContent10,
|
|
33820
34073
|
{
|
|
33821
34074
|
side: "top",
|
|
@@ -33829,7 +34082,7 @@ var CreateAction = memo6(function CreateAction2({
|
|
|
33829
34082
|
var ProjectMenuButton = forwardRef5(
|
|
33830
34083
|
function ProjectMenuButton2({ accessibleName, disabled, ...props }, ref) {
|
|
33831
34084
|
const projectActionLocked = useAgentGUIConversationRailSectionProjectActionLocked();
|
|
33832
|
-
return /* @__PURE__ */
|
|
34085
|
+
return /* @__PURE__ */ jsx63(
|
|
33833
34086
|
BareIconButton4,
|
|
33834
34087
|
{
|
|
33835
34088
|
...props,
|
|
@@ -33839,7 +34092,7 @@ var ProjectMenuButton = forwardRef5(
|
|
|
33839
34092
|
size: "sm",
|
|
33840
34093
|
title: "",
|
|
33841
34094
|
disabled: projectActionLocked || disabled,
|
|
33842
|
-
children: /* @__PURE__ */
|
|
34095
|
+
children: /* @__PURE__ */ jsx63(MoreHorizontalIcon, { "aria-hidden": "true" })
|
|
33843
34096
|
}
|
|
33844
34097
|
);
|
|
33845
34098
|
}
|
|
@@ -33851,11 +34104,11 @@ function ProjectMenuTrigger({
|
|
|
33851
34104
|
}) {
|
|
33852
34105
|
const accessibleName = labels.projectSectionMoreActions;
|
|
33853
34106
|
if (previewMode) {
|
|
33854
|
-
return /* @__PURE__ */
|
|
34107
|
+
return /* @__PURE__ */ jsx63(DropdownMenuTrigger5, { asChild: true, children: /* @__PURE__ */ jsx63("span", { className: AgentGUINode_styles_default.conversationSectionActionTooltipWrap, children: /* @__PURE__ */ jsx63(ProjectMenuButton, { accessibleName }) }) });
|
|
33855
34108
|
}
|
|
33856
|
-
return /* @__PURE__ */
|
|
33857
|
-
/* @__PURE__ */
|
|
33858
|
-
/* @__PURE__ */
|
|
34109
|
+
return /* @__PURE__ */ jsxs45(Tooltip10, { children: [
|
|
34110
|
+
/* @__PURE__ */ jsx63(TooltipTrigger10, { asChild: true, children: /* @__PURE__ */ jsx63("span", { className: AgentGUINode_styles_default.conversationSectionActionTooltipWrap, children: /* @__PURE__ */ jsx63(DropdownMenuTrigger5, { asChild: true, children: /* @__PURE__ */ jsx63(ProjectMenuButton, { accessibleName }) }) }) }),
|
|
34111
|
+
/* @__PURE__ */ jsx63(
|
|
33859
34112
|
TooltipContent10,
|
|
33860
34113
|
{
|
|
33861
34114
|
side: "right",
|
|
@@ -33877,47 +34130,47 @@ function ProjectMenuContent({
|
|
|
33877
34130
|
}) {
|
|
33878
34131
|
const batchDeletionDisabled = useAgentGUIConversationRailSectionBatchDeletionDisabled();
|
|
33879
34132
|
const projectActionLocked = useAgentGUIConversationRailSectionProjectActionLocked();
|
|
33880
|
-
return /* @__PURE__ */
|
|
34133
|
+
return /* @__PURE__ */ jsxs45(
|
|
33881
34134
|
DropdownMenuContent5,
|
|
33882
34135
|
{
|
|
33883
34136
|
align: "end",
|
|
33884
34137
|
className: `${AgentGUINode_styles_default.composerMenuContent} nodrag [-webkit-app-region:no-drag]`,
|
|
33885
34138
|
sideOffset: 6,
|
|
33886
34139
|
children: [
|
|
33887
|
-
/* @__PURE__ */
|
|
34140
|
+
/* @__PURE__ */ jsx63(
|
|
33888
34141
|
DropdownMenuItem4,
|
|
33889
34142
|
{
|
|
33890
34143
|
className: `${AgentGUINode_styles_default.composerMenuItem} nodrag [-webkit-app-region:no-drag]`,
|
|
33891
34144
|
disabled: !onOpenProjectFiles,
|
|
33892
34145
|
onSelect: onOpenProjectFiles ?? void 0,
|
|
33893
|
-
children: /* @__PURE__ */
|
|
34146
|
+
children: /* @__PURE__ */ jsx63("span", { children: labels.projectSectionViewFiles })
|
|
33894
34147
|
}
|
|
33895
34148
|
),
|
|
33896
|
-
/* @__PURE__ */
|
|
34149
|
+
/* @__PURE__ */ jsx63(
|
|
33897
34150
|
DropdownMenuItem4,
|
|
33898
34151
|
{
|
|
33899
34152
|
className: `${AgentGUINode_styles_default.composerMenuItem} nodrag [-webkit-app-region:no-drag]`,
|
|
33900
34153
|
disabled: !hasProjectId || projectActionLocked,
|
|
33901
34154
|
onSelect: onToggleProjectPinned,
|
|
33902
|
-
children: /* @__PURE__ */
|
|
34155
|
+
children: /* @__PURE__ */ jsx63("span", { children: projectPinned ? labels.unpinProject : labels.pinProject })
|
|
33903
34156
|
}
|
|
33904
34157
|
),
|
|
33905
|
-
/* @__PURE__ */
|
|
34158
|
+
/* @__PURE__ */ jsx63(
|
|
33906
34159
|
DropdownMenuItem4,
|
|
33907
34160
|
{
|
|
33908
34161
|
className: `${AgentGUINode_styles_default.composerMenuItem} nodrag [-webkit-app-region:no-drag]`,
|
|
33909
34162
|
disabled: batchDeletionDisabled,
|
|
33910
34163
|
onSelect: onRequestBatchDeletion,
|
|
33911
|
-
children: /* @__PURE__ */
|
|
34164
|
+
children: /* @__PURE__ */ jsx63("span", { children: labels.batchDeleteProjectSessions })
|
|
33912
34165
|
}
|
|
33913
34166
|
),
|
|
33914
|
-
/* @__PURE__ */
|
|
34167
|
+
/* @__PURE__ */ jsx63(
|
|
33915
34168
|
DropdownMenuItem4,
|
|
33916
34169
|
{
|
|
33917
34170
|
className: `${AgentGUINode_styles_default.composerMenuItem} nodrag [-webkit-app-region:no-drag]`,
|
|
33918
34171
|
disabled: projectActionLocked,
|
|
33919
34172
|
onSelect: onRemoveProject,
|
|
33920
|
-
children: /* @__PURE__ */
|
|
34173
|
+
children: /* @__PURE__ */ jsx63("span", { children: labels.removeProject })
|
|
33921
34174
|
}
|
|
33922
34175
|
)
|
|
33923
34176
|
]
|
|
@@ -33937,9 +34190,9 @@ var ProjectMenu = memo6(function ProjectMenu2({
|
|
|
33937
34190
|
projectPinned
|
|
33938
34191
|
}) {
|
|
33939
34192
|
"use memo";
|
|
33940
|
-
return /* @__PURE__ */
|
|
33941
|
-
/* @__PURE__ */
|
|
33942
|
-
open ? /* @__PURE__ */
|
|
34193
|
+
return /* @__PURE__ */ jsxs45(DropdownMenu5, { onOpenChange, children: [
|
|
34194
|
+
/* @__PURE__ */ jsx63(ProjectMenuTrigger, { labels, previewMode }),
|
|
34195
|
+
open ? /* @__PURE__ */ jsx63(
|
|
33943
34196
|
ProjectMenuContent,
|
|
33944
34197
|
{
|
|
33945
34198
|
hasProjectId,
|
|
@@ -33959,29 +34212,29 @@ function ConversationMenuTrigger({
|
|
|
33959
34212
|
}) {
|
|
33960
34213
|
const accessibleName = labels.conversationsSectionMoreActions;
|
|
33961
34214
|
if (previewMode) {
|
|
33962
|
-
return /* @__PURE__ */
|
|
34215
|
+
return /* @__PURE__ */ jsx63(DropdownMenuTrigger5, { asChild: true, children: /* @__PURE__ */ jsx63("span", { className: AgentGUINode_styles_default.conversationSectionActionTooltipWrap, children: /* @__PURE__ */ jsx63(
|
|
33963
34216
|
BareIconButton4,
|
|
33964
34217
|
{
|
|
33965
34218
|
className: AgentGUINode_styles_default.conversationSectionMoreButton,
|
|
33966
34219
|
"aria-label": accessibleName,
|
|
33967
34220
|
size: "sm",
|
|
33968
34221
|
title: "",
|
|
33969
|
-
children: /* @__PURE__ */
|
|
34222
|
+
children: /* @__PURE__ */ jsx63(MoreHorizontalIcon, { "aria-hidden": "true" })
|
|
33970
34223
|
}
|
|
33971
34224
|
) }) });
|
|
33972
34225
|
}
|
|
33973
|
-
return /* @__PURE__ */
|
|
33974
|
-
/* @__PURE__ */
|
|
34226
|
+
return /* @__PURE__ */ jsxs45(Tooltip10, { children: [
|
|
34227
|
+
/* @__PURE__ */ jsx63(TooltipTrigger10, { asChild: true, children: /* @__PURE__ */ jsx63("span", { className: AgentGUINode_styles_default.conversationSectionActionTooltipWrap, children: /* @__PURE__ */ jsx63(DropdownMenuTrigger5, { asChild: true, children: /* @__PURE__ */ jsx63(
|
|
33975
34228
|
BareIconButton4,
|
|
33976
34229
|
{
|
|
33977
34230
|
className: AgentGUINode_styles_default.conversationSectionMoreButton,
|
|
33978
34231
|
"aria-label": accessibleName,
|
|
33979
34232
|
size: "sm",
|
|
33980
34233
|
title: "",
|
|
33981
|
-
children: /* @__PURE__ */
|
|
34234
|
+
children: /* @__PURE__ */ jsx63(MoreHorizontalIcon, { "aria-hidden": "true" })
|
|
33982
34235
|
}
|
|
33983
34236
|
) }) }) }),
|
|
33984
|
-
/* @__PURE__ */
|
|
34237
|
+
/* @__PURE__ */ jsx63(
|
|
33985
34238
|
TooltipContent10,
|
|
33986
34239
|
{
|
|
33987
34240
|
side: "right",
|
|
@@ -33997,19 +34250,19 @@ function ConversationMenuContent({
|
|
|
33997
34250
|
onRequestBatchDeletion
|
|
33998
34251
|
}) {
|
|
33999
34252
|
const batchDeletionDisabled = useAgentGUIConversationRailSectionBatchDeletionDisabled();
|
|
34000
|
-
return /* @__PURE__ */
|
|
34253
|
+
return /* @__PURE__ */ jsx63(
|
|
34001
34254
|
DropdownMenuContent5,
|
|
34002
34255
|
{
|
|
34003
34256
|
align: "end",
|
|
34004
34257
|
className: `${AgentGUINode_styles_default.composerMenuContent} nodrag [-webkit-app-region:no-drag]`,
|
|
34005
34258
|
sideOffset: 6,
|
|
34006
|
-
children: /* @__PURE__ */
|
|
34259
|
+
children: /* @__PURE__ */ jsx63(
|
|
34007
34260
|
DropdownMenuItem4,
|
|
34008
34261
|
{
|
|
34009
34262
|
className: `${AgentGUINode_styles_default.composerMenuItem} nodrag [-webkit-app-region:no-drag]`,
|
|
34010
34263
|
disabled: batchDeletionDisabled,
|
|
34011
34264
|
onSelect: onRequestBatchDeletion,
|
|
34012
|
-
children: /* @__PURE__ */
|
|
34265
|
+
children: /* @__PURE__ */ jsx63("span", { children: labels.batchDeleteConversations })
|
|
34013
34266
|
}
|
|
34014
34267
|
)
|
|
34015
34268
|
}
|
|
@@ -34022,9 +34275,9 @@ function ConversationMenu({
|
|
|
34022
34275
|
open,
|
|
34023
34276
|
previewMode
|
|
34024
34277
|
}) {
|
|
34025
|
-
return /* @__PURE__ */
|
|
34026
|
-
/* @__PURE__ */
|
|
34027
|
-
open ? /* @__PURE__ */
|
|
34278
|
+
return /* @__PURE__ */ jsxs45(DropdownMenu5, { onOpenChange, children: [
|
|
34279
|
+
/* @__PURE__ */ jsx63(ConversationMenuTrigger, { labels, previewMode }),
|
|
34280
|
+
open ? /* @__PURE__ */ jsx63(
|
|
34028
34281
|
ConversationMenuContent,
|
|
34029
34282
|
{
|
|
34030
34283
|
labels,
|
|
@@ -34057,8 +34310,8 @@ var AgentGUIConversationRailSectionHeader = memo6(
|
|
|
34057
34310
|
sectionLabel
|
|
34058
34311
|
}) {
|
|
34059
34312
|
"use memo";
|
|
34060
|
-
const [projectMenuOpen, setProjectMenuOpen] =
|
|
34061
|
-
const [conversationMenuOpen, setConversationMenuOpen] =
|
|
34313
|
+
const [projectMenuOpen, setProjectMenuOpen] = useState36(false);
|
|
34314
|
+
const [conversationMenuOpen, setConversationMenuOpen] = useState36(false);
|
|
34062
34315
|
const handleProjectMenuOpenChange = useCallback54(
|
|
34063
34316
|
(open) => {
|
|
34064
34317
|
setProjectMenuOpen(open);
|
|
@@ -34067,14 +34320,14 @@ var AgentGUIConversationRailSectionHeader = memo6(
|
|
|
34067
34320
|
[onProjectMenuOpenChange]
|
|
34068
34321
|
);
|
|
34069
34322
|
const isProjectSection = kind === "project";
|
|
34070
|
-
return /* @__PURE__ */
|
|
34323
|
+
return /* @__PURE__ */ jsxs45(
|
|
34071
34324
|
HeaderFrame,
|
|
34072
34325
|
{
|
|
34073
34326
|
isProjectSection,
|
|
34074
34327
|
onProjectDragEnd,
|
|
34075
34328
|
onProjectDragStart,
|
|
34076
34329
|
children: [
|
|
34077
|
-
/* @__PURE__ */
|
|
34330
|
+
/* @__PURE__ */ jsx63(
|
|
34078
34331
|
HeaderIdentity,
|
|
34079
34332
|
{
|
|
34080
34333
|
isProjectSection,
|
|
@@ -34085,13 +34338,13 @@ var AgentGUIConversationRailSectionHeader = memo6(
|
|
|
34085
34338
|
sectionLabel
|
|
34086
34339
|
}
|
|
34087
34340
|
),
|
|
34088
|
-
canCreateConversation ? /* @__PURE__ */
|
|
34341
|
+
canCreateConversation ? /* @__PURE__ */ jsxs45(
|
|
34089
34342
|
"div",
|
|
34090
34343
|
{
|
|
34091
34344
|
className: AgentGUINode_styles_default.conversationSectionActions,
|
|
34092
34345
|
"data-project-drag-block": "true",
|
|
34093
34346
|
children: [
|
|
34094
|
-
/* @__PURE__ */
|
|
34347
|
+
/* @__PURE__ */ jsx63(
|
|
34095
34348
|
CreateAction,
|
|
34096
34349
|
{
|
|
34097
34350
|
createConversationDisabled,
|
|
@@ -34100,7 +34353,7 @@ var AgentGUIConversationRailSectionHeader = memo6(
|
|
|
34100
34353
|
previewMode
|
|
34101
34354
|
}
|
|
34102
34355
|
),
|
|
34103
|
-
hasProjectPath ? /* @__PURE__ */
|
|
34356
|
+
hasProjectPath ? /* @__PURE__ */ jsx63(
|
|
34104
34357
|
ProjectMenu,
|
|
34105
34358
|
{
|
|
34106
34359
|
hasProjectId,
|
|
@@ -34115,7 +34368,7 @@ var AgentGUIConversationRailSectionHeader = memo6(
|
|
|
34115
34368
|
projectPinned
|
|
34116
34369
|
}
|
|
34117
34370
|
) : null,
|
|
34118
|
-
!hasProjectPath && kind === "conversations" ? /* @__PURE__ */
|
|
34371
|
+
!hasProjectPath && kind === "conversations" ? /* @__PURE__ */ jsx63(
|
|
34119
34372
|
ConversationMenu,
|
|
34120
34373
|
{
|
|
34121
34374
|
labels,
|
|
@@ -34135,7 +34388,7 @@ var AgentGUIConversationRailSectionHeader = memo6(
|
|
|
34135
34388
|
);
|
|
34136
34389
|
|
|
34137
34390
|
// agent-gui/agentGuiNode/view/AgentGUIConversationRailSection.tsx
|
|
34138
|
-
import { jsx as
|
|
34391
|
+
import { jsx as jsx64, jsxs as jsxs46 } from "react/jsx-runtime";
|
|
34139
34392
|
var AgentGUIConversationRailSection = memo7(
|
|
34140
34393
|
function AgentGUIConversationRailSection2({
|
|
34141
34394
|
section,
|
|
@@ -34288,7 +34541,7 @@ var AgentGUIConversationRailSection = memo7(
|
|
|
34288
34541
|
if (isRailInteractionLocked()) return;
|
|
34289
34542
|
onOpenProjectFiles({
|
|
34290
34543
|
directoryPath: projectPath,
|
|
34291
|
-
mode: "open
|
|
34544
|
+
mode: "open",
|
|
34292
34545
|
path: projectPath,
|
|
34293
34546
|
source: "agent-project-menu",
|
|
34294
34547
|
type: "open-workspace-file",
|
|
@@ -34313,7 +34566,7 @@ var AgentGUIConversationRailSection = memo7(
|
|
|
34313
34566
|
path: projectPath
|
|
34314
34567
|
});
|
|
34315
34568
|
});
|
|
34316
|
-
return /* @__PURE__ */
|
|
34569
|
+
return /* @__PURE__ */ jsxs46(
|
|
34317
34570
|
"section",
|
|
34318
34571
|
{
|
|
34319
34572
|
className: AgentGUINode_styles_default.conversationSection,
|
|
@@ -34323,7 +34576,7 @@ var AgentGUIConversationRailSection = memo7(
|
|
|
34323
34576
|
"data-project-drop-indicator": projectDropIndicator ?? void 0,
|
|
34324
34577
|
onDragOver: section.kind === "project" ? handleProjectDragOver : void 0,
|
|
34325
34578
|
children: [
|
|
34326
|
-
/* @__PURE__ */
|
|
34579
|
+
/* @__PURE__ */ jsx64(
|
|
34327
34580
|
AgentGUIConversationRailSectionHeader,
|
|
34328
34581
|
{
|
|
34329
34582
|
canCreateConversation: canCreateConversationFromSection,
|
|
@@ -34348,14 +34601,14 @@ var AgentGUIConversationRailSection = memo7(
|
|
|
34348
34601
|
sectionLabel: section.label
|
|
34349
34602
|
}
|
|
34350
34603
|
),
|
|
34351
|
-
/* @__PURE__ */
|
|
34604
|
+
/* @__PURE__ */ jsx64(
|
|
34352
34605
|
"div",
|
|
34353
34606
|
{
|
|
34354
34607
|
className: AgentGUINode_styles_default.conversationSectionItems,
|
|
34355
34608
|
"aria-hidden": isSectionCollapsed ? "true" : void 0,
|
|
34356
|
-
children: /* @__PURE__ */
|
|
34357
|
-
!isSectionCollapsed && visibleItems.length === 0 ? /* @__PURE__ */
|
|
34358
|
-
visibleItems.map((item) => /* @__PURE__ */
|
|
34609
|
+
children: /* @__PURE__ */ jsxs46("div", { className: AgentGUINode_styles_default.conversationSectionItemsInner, children: [
|
|
34610
|
+
!isSectionCollapsed && visibleItems.length === 0 ? /* @__PURE__ */ jsx64("div", { className: AgentGUINode_styles_default.conversationSectionEmpty, children: labels.emptyProjectConversations }) : null,
|
|
34611
|
+
visibleItems.map((item) => /* @__PURE__ */ jsx64(
|
|
34359
34612
|
AgentGUIConversationRailItem,
|
|
34360
34613
|
{
|
|
34361
34614
|
active: item.id === activeConversationId,
|
|
@@ -34379,8 +34632,8 @@ var AgentGUIConversationRailSection = memo7(
|
|
|
34379
34632
|
},
|
|
34380
34633
|
item.id
|
|
34381
34634
|
)),
|
|
34382
|
-
canShowMore || canShowLess ? /* @__PURE__ */
|
|
34383
|
-
canShowMore ? /* @__PURE__ */
|
|
34635
|
+
canShowMore || canShowLess ? /* @__PURE__ */ jsxs46("div", { className: AgentGUINode_styles_default.conversationSectionPagination, children: [
|
|
34636
|
+
canShowMore ? /* @__PURE__ */ jsx64(
|
|
34384
34637
|
"button",
|
|
34385
34638
|
{
|
|
34386
34639
|
type: "button",
|
|
@@ -34390,7 +34643,7 @@ var AgentGUIConversationRailSection = memo7(
|
|
|
34390
34643
|
children: labels.showMoreConversations
|
|
34391
34644
|
}
|
|
34392
34645
|
) : null,
|
|
34393
|
-
canShowLess ? /* @__PURE__ */
|
|
34646
|
+
canShowLess ? /* @__PURE__ */ jsx64(
|
|
34394
34647
|
"button",
|
|
34395
34648
|
{
|
|
34396
34649
|
type: "button",
|
|
@@ -34411,11 +34664,11 @@ var AgentGUIConversationRailSection = memo7(
|
|
|
34411
34664
|
|
|
34412
34665
|
// agent-gui/agentGuiNode/view/AgentGUIProjectActionConfirmationDialog.tsx
|
|
34413
34666
|
import { ConfirmationDialog as ConfirmationDialog3 } from "@tutti-os/ui-system";
|
|
34414
|
-
import { jsx as
|
|
34667
|
+
import { jsx as jsx65 } from "react/jsx-runtime";
|
|
34415
34668
|
var DIALOG_CLASS_NAME = "nodrag tsh-desktop-no-drag [-webkit-app-region:no-drag]";
|
|
34416
34669
|
function AgentGUIProjectActionConfirmationDialog(props) {
|
|
34417
34670
|
const { action, labels } = props;
|
|
34418
|
-
return /* @__PURE__ */
|
|
34671
|
+
return /* @__PURE__ */ jsx65(
|
|
34419
34672
|
ConfirmationDialog3,
|
|
34420
34673
|
{
|
|
34421
34674
|
cancelLabel: labels.cancel,
|
|
@@ -34589,9 +34842,9 @@ function useAgentGUIConversationRailViewState(input) {
|
|
|
34589
34842
|
}
|
|
34590
34843
|
|
|
34591
34844
|
// agent-gui/agentGuiNode/view/useAgentGUIProjectMenuState.ts
|
|
34592
|
-
import { useCallback as useCallback57, useState as
|
|
34845
|
+
import { useCallback as useCallback57, useState as useState37 } from "react";
|
|
34593
34846
|
function useAgentGUIProjectMenuState(isRailInteractionLocked, isUserProjectMutationPending) {
|
|
34594
|
-
const [openSectionId, setOpenSectionId] =
|
|
34847
|
+
const [openSectionId, setOpenSectionId] = useState37(null);
|
|
34595
34848
|
const isProjectActionLocked = useCallback57(
|
|
34596
34849
|
() => isRailInteractionLocked() || isUserProjectMutationPending,
|
|
34597
34850
|
[isRailInteractionLocked, isUserProjectMutationPending]
|
|
@@ -34612,9 +34865,9 @@ function useAgentGUIProjectMenuState(isRailInteractionLocked, isUserProjectMutat
|
|
|
34612
34865
|
}
|
|
34613
34866
|
|
|
34614
34867
|
// agent-gui/agentGuiNode/view/AgentGUIConversationRailPane.tsx
|
|
34615
|
-
import { jsx as
|
|
34868
|
+
import { jsx as jsx66, jsxs as jsxs47 } from "react/jsx-runtime";
|
|
34616
34869
|
function useDelayedBoolean(value, delayMs) {
|
|
34617
|
-
const [delayedValue, setDelayedValue] =
|
|
34870
|
+
const [delayedValue, setDelayedValue] = useState38(false);
|
|
34618
34871
|
useEffect30(() => {
|
|
34619
34872
|
if (!value) {
|
|
34620
34873
|
setDelayedValue(false);
|
|
@@ -34668,8 +34921,8 @@ var AgentGUIConversationRailPane = memo8(
|
|
|
34668
34921
|
onConversationQueryChange
|
|
34669
34922
|
}) {
|
|
34670
34923
|
"use memo";
|
|
34671
|
-
const [pendingProjectAction, setPendingProjectAction] =
|
|
34672
|
-
const [isRequestingBatchDeletion, setIsRequestingBatchDeletion] =
|
|
34924
|
+
const [pendingProjectAction, setPendingProjectAction] = useState38(null);
|
|
34925
|
+
const [isRequestingBatchDeletion, setIsRequestingBatchDeletion] = useState38(false);
|
|
34673
34926
|
const { railSearch } = railQuery;
|
|
34674
34927
|
const railElementRef = useRef47(null);
|
|
34675
34928
|
const railActiveConversationRef = useRef47([]);
|
|
@@ -34902,15 +35155,15 @@ var AgentGUIConversationRailPane = memo8(
|
|
|
34902
35155
|
useEffect30(() => {
|
|
34903
35156
|
return installProjectDragGlobalListeners();
|
|
34904
35157
|
}, [installProjectDragGlobalListeners]);
|
|
34905
|
-
return /* @__PURE__ */
|
|
35158
|
+
return /* @__PURE__ */ jsxs47(
|
|
34906
35159
|
"aside",
|
|
34907
35160
|
{
|
|
34908
35161
|
ref: railElementRef,
|
|
34909
35162
|
className: AgentGUINode_styles_default.rail,
|
|
34910
35163
|
"aria-hidden": isCollapsed ? "true" : void 0,
|
|
34911
35164
|
children: [
|
|
34912
|
-
/* @__PURE__ */
|
|
34913
|
-
/* @__PURE__ */
|
|
35165
|
+
/* @__PURE__ */ jsxs47("div", { className: AgentGUINode_styles_default.railToolbar, children: [
|
|
35166
|
+
/* @__PURE__ */ jsx66(
|
|
34914
35167
|
TaskSearchField,
|
|
34915
35168
|
{
|
|
34916
35169
|
value: conversationQuery,
|
|
@@ -34918,7 +35171,7 @@ var AgentGUIConversationRailPane = memo8(
|
|
|
34918
35171
|
onChange: onConversationQueryChange
|
|
34919
35172
|
}
|
|
34920
35173
|
),
|
|
34921
|
-
/* @__PURE__ */
|
|
35174
|
+
/* @__PURE__ */ jsxs47(
|
|
34922
35175
|
Button,
|
|
34923
35176
|
{
|
|
34924
35177
|
type: "button",
|
|
@@ -34929,13 +35182,13 @@ var AgentGUIConversationRailPane = memo8(
|
|
|
34929
35182
|
disabled: createConversationDisabled,
|
|
34930
35183
|
onClick: () => onCreateConversation(),
|
|
34931
35184
|
children: [
|
|
34932
|
-
/* @__PURE__ */
|
|
34933
|
-
/* @__PURE__ */
|
|
35185
|
+
/* @__PURE__ */ jsx66(CreateChatIcon2, { "aria-hidden": "true" }),
|
|
35186
|
+
/* @__PURE__ */ jsx66("span", { children: labels.newConversation })
|
|
34934
35187
|
]
|
|
34935
35188
|
}
|
|
34936
35189
|
)
|
|
34937
35190
|
] }),
|
|
34938
|
-
/* @__PURE__ */
|
|
35191
|
+
/* @__PURE__ */ jsx66(
|
|
34939
35192
|
ScrollArea2,
|
|
34940
35193
|
{
|
|
34941
35194
|
scrollbarMode: "native",
|
|
@@ -34946,14 +35199,14 @@ var AgentGUIConversationRailPane = memo8(
|
|
|
34946
35199
|
onDragOver: keepValidProjectDropTarget,
|
|
34947
35200
|
onDrop: dropProject
|
|
34948
35201
|
},
|
|
34949
|
-
children: shouldShowConversationSkeleton ? /* @__PURE__ */
|
|
35202
|
+
children: shouldShowConversationSkeleton ? /* @__PURE__ */ jsx66(
|
|
34950
35203
|
AgentConversationListSkeleton,
|
|
34951
35204
|
{
|
|
34952
35205
|
label: labels.loadingConversations
|
|
34953
35206
|
}
|
|
34954
|
-
) : shouldShowConversationSearchError ? /* @__PURE__ */
|
|
34955
|
-
/* @__PURE__ */
|
|
34956
|
-
/* @__PURE__ */
|
|
35207
|
+
) : shouldShowConversationSearchError ? /* @__PURE__ */ jsxs47("div", { className: AgentGUINode_styles_default.emptyState, children: [
|
|
35208
|
+
/* @__PURE__ */ jsx66("span", { children: labels.searchFailed }),
|
|
35209
|
+
/* @__PURE__ */ jsx66(
|
|
34957
35210
|
SystemButton,
|
|
34958
35211
|
{
|
|
34959
35212
|
type: "button",
|
|
@@ -34963,7 +35216,7 @@ var AgentGUIConversationRailPane = memo8(
|
|
|
34963
35216
|
children: labels.retrySearch
|
|
34964
35217
|
}
|
|
34965
35218
|
)
|
|
34966
|
-
] }) : shouldShowConversationEmptyState ? /* @__PURE__ */
|
|
35219
|
+
] }) : shouldShowConversationEmptyState ? /* @__PURE__ */ jsx66("div", { className: AgentGUINode_styles_default.emptyState, children: /* @__PURE__ */ jsx66("span", { children: conversationQuery.trim() ? labels.searchNoConversations : conversations.length === 0 ? labels.noConversations : labels.conversationUnavailable }) }) : /* @__PURE__ */ jsxs47("fieldset", { className: "contents", disabled: railInteractionsLocked, children: [
|
|
34967
35220
|
groupedConversations.map((section, sectionIndex) => {
|
|
34968
35221
|
const projectPath = section.kind === "project" ? section.project?.path ?? "" : "";
|
|
34969
35222
|
const projectLabel = section.kind === "project" ? section.label : "";
|
|
@@ -34997,9 +35250,9 @@ var AgentGUIConversationRailPane = memo8(
|
|
|
34997
35250
|
).length + (activeOverlayCountsTowardTotal && !activeOverlayIsCanonical ? 1 : 0);
|
|
34998
35251
|
const sectionHasMore = searchSectionHasMore || !conversationQuery.trim() && sectionPageState?.hasMore === true;
|
|
34999
35252
|
const batchDeletionDisabled = !batchDeletionAvailable || hasConversationQuery || section.items.length === 0 && !sectionHasMore || isDeletingProjectConversations || isRequestingBatchDeletion;
|
|
35000
|
-
return /* @__PURE__ */
|
|
35001
|
-
showPinnedProjectHeader ? /* @__PURE__ */
|
|
35002
|
-
showProjectRailHeader ? /* @__PURE__ */
|
|
35253
|
+
return /* @__PURE__ */ jsxs47(Fragment21, { children: [
|
|
35254
|
+
showPinnedProjectHeader ? /* @__PURE__ */ jsx66("div", { className: AgentGUINode_styles_default.pinnedProjectRailHeader, children: labels.sectionPinned }) : null,
|
|
35255
|
+
showProjectRailHeader ? /* @__PURE__ */ jsx66(
|
|
35003
35256
|
AgentGUIProjectRailHeader,
|
|
35004
35257
|
{
|
|
35005
35258
|
disabled: railInteractionsLocked || isUserProjectMutationPending,
|
|
@@ -35008,13 +35261,13 @@ var AgentGUIConversationRailPane = memo8(
|
|
|
35008
35261
|
workspaceUserProjectI18n
|
|
35009
35262
|
}
|
|
35010
35263
|
) : null,
|
|
35011
|
-
/* @__PURE__ */
|
|
35264
|
+
/* @__PURE__ */ jsx66(
|
|
35012
35265
|
AgentGUIConversationRailSectionPresentationProvider,
|
|
35013
35266
|
{
|
|
35014
35267
|
batchDeletionDisabled,
|
|
35015
35268
|
projectActionLocked,
|
|
35016
35269
|
projectDragDisabled: projectDragLocked,
|
|
35017
|
-
children: /* @__PURE__ */
|
|
35270
|
+
children: /* @__PURE__ */ jsx66(
|
|
35018
35271
|
AgentGUIConversationRailSection,
|
|
35019
35272
|
{
|
|
35020
35273
|
activeConversation: activeOverlayConversation,
|
|
@@ -35074,7 +35327,7 @@ var AgentGUIConversationRailPane = memo8(
|
|
|
35074
35327
|
)
|
|
35075
35328
|
] }, section.id);
|
|
35076
35329
|
}),
|
|
35077
|
-
appendProjectRailHeader ? /* @__PURE__ */
|
|
35330
|
+
appendProjectRailHeader ? /* @__PURE__ */ jsx66(
|
|
35078
35331
|
AgentGUIProjectRailHeader,
|
|
35079
35332
|
{
|
|
35080
35333
|
disabled: railInteractionsLocked || isUserProjectMutationPending,
|
|
@@ -35086,8 +35339,8 @@ var AgentGUIConversationRailPane = memo8(
|
|
|
35086
35339
|
] })
|
|
35087
35340
|
}
|
|
35088
35341
|
),
|
|
35089
|
-
footer ? /* @__PURE__ */
|
|
35090
|
-
/* @__PURE__ */
|
|
35342
|
+
footer ? /* @__PURE__ */ jsx66("div", { className: "shrink-0 pb-2", children: footer }) : null,
|
|
35343
|
+
/* @__PURE__ */ jsx66(
|
|
35091
35344
|
AgentGUIProjectActionConfirmationDialog,
|
|
35092
35345
|
{
|
|
35093
35346
|
action: pendingProjectAction,
|
|
@@ -35529,7 +35782,6 @@ function replaceConversationRailFirstPages(input) {
|
|
|
35529
35782
|
}
|
|
35530
35783
|
return {
|
|
35531
35784
|
...input.queryState,
|
|
35532
|
-
pending: false,
|
|
35533
35785
|
reconcilingSessionIds: [],
|
|
35534
35786
|
sectionPageStates,
|
|
35535
35787
|
sections
|
|
@@ -36043,7 +36295,7 @@ var AgentGUIConversationRailQueryController = class {
|
|
|
36043
36295
|
this.previousMembershipRecords = next;
|
|
36044
36296
|
return;
|
|
36045
36297
|
}
|
|
36046
|
-
if (!this.runtimeSectionsEnabled() || state.engineRuntime.workspaceReconcile.status === "loading") {
|
|
36298
|
+
if (!this.runtimeSectionsEnabled() || state.engineRuntime.workspaceReconcile.status === "loading" || this.queryState.pending || this.queryState.resolvedScopeKey !== this.railSectionQueryKey) {
|
|
36047
36299
|
this.previousMembershipRecords = next;
|
|
36048
36300
|
this.publishIfReady(state);
|
|
36049
36301
|
return;
|
|
@@ -36489,10 +36741,10 @@ function identitySnapshot(snapshot) {
|
|
|
36489
36741
|
}
|
|
36490
36742
|
|
|
36491
36743
|
// agent-gui/agentGuiNode/controller/AgentGUIConversationRailController.tsx
|
|
36492
|
-
import { jsx as
|
|
36744
|
+
import { jsx as jsx67 } from "react/jsx-runtime";
|
|
36493
36745
|
var AgentGUIConversationRailController = memo9(
|
|
36494
36746
|
function AgentGUIConversationRailController2(props) {
|
|
36495
|
-
const [conversationQuery, setConversationQuery] =
|
|
36747
|
+
const [conversationQuery, setConversationQuery] = useState39("");
|
|
36496
36748
|
const railQuery = useAgentGUIConversationRailQuery({
|
|
36497
36749
|
activeConversationId: props.activeConversationId,
|
|
36498
36750
|
conversationFilter: props.conversationFilter,
|
|
@@ -36504,7 +36756,7 @@ var AgentGUIConversationRailController = memo9(
|
|
|
36504
36756
|
userProjects: props.userProjects,
|
|
36505
36757
|
workspaceId: props.workspaceId
|
|
36506
36758
|
});
|
|
36507
|
-
return /* @__PURE__ */
|
|
36759
|
+
return /* @__PURE__ */ jsx67(
|
|
36508
36760
|
AgentGUIConversationRailPane,
|
|
36509
36761
|
{
|
|
36510
36762
|
...props,
|
|
@@ -36737,9 +36989,9 @@ import { ChevronsDown } from "lucide-react";
|
|
|
36737
36989
|
import { cn as cn9 } from "@tutti-os/ui-system";
|
|
36738
36990
|
|
|
36739
36991
|
// agent-gui/agentGuiNode/AgentGoalBanner.tsx
|
|
36740
|
-
import { useEffect as useEffect32, useState as
|
|
36992
|
+
import { useEffect as useEffect32, useState as useState40 } from "react";
|
|
36741
36993
|
import { CirclePause, CirclePlay, Pencil as Pencil3, Target as Target3, Trash2 } from "lucide-react";
|
|
36742
|
-
import { jsx as
|
|
36994
|
+
import { jsx as jsx68, jsxs as jsxs48 } from "react/jsx-runtime";
|
|
36743
36995
|
var RESUMABLE_GOAL_STATUSES = /* @__PURE__ */ new Set([
|
|
36744
36996
|
"paused",
|
|
36745
36997
|
"blocked",
|
|
@@ -36813,11 +37065,11 @@ function AgentGoalBanner({
|
|
|
36813
37065
|
onClearGoal
|
|
36814
37066
|
}) {
|
|
36815
37067
|
"use memo";
|
|
36816
|
-
const [editDraft, setEditDraft] =
|
|
37068
|
+
const [editDraft, setEditDraft] = useState40(null);
|
|
36817
37069
|
const normalizedStatus = normalizeGoalStatus(status);
|
|
36818
37070
|
const isActive = normalizedStatus === "" || normalizedStatus === "active";
|
|
36819
37071
|
const serverSeconds = optimistic ? null : typeof durationMs === "number" && durationMs >= 0 ? Math.floor(durationMs / 1e3) : isActive ? 0 : null;
|
|
36820
|
-
const [localElapsed, setLocalElapsed] =
|
|
37072
|
+
const [localElapsed, setLocalElapsed] = useState40(0);
|
|
36821
37073
|
useEffect32(() => {
|
|
36822
37074
|
setLocalElapsed(0);
|
|
36823
37075
|
if (!isActive || serverSeconds === null) {
|
|
@@ -36849,16 +37101,16 @@ function AgentGoalBanner({
|
|
|
36849
37101
|
onEditObjective?.(next);
|
|
36850
37102
|
}
|
|
36851
37103
|
};
|
|
36852
|
-
return /* @__PURE__ */
|
|
37104
|
+
return /* @__PURE__ */ jsx68("div", { className: AgentGUIChrome_styles_default.sessionChrome, children: /* @__PURE__ */ jsx68(
|
|
36853
37105
|
"section",
|
|
36854
37106
|
{
|
|
36855
37107
|
className: cn(AgentGUIChrome_styles_default.chromeCard, AgentGUIChrome_styles_default.chromeCardMuted),
|
|
36856
37108
|
role: "status",
|
|
36857
37109
|
"data-testid": "agent-gui-goal-banner",
|
|
36858
|
-
children: /* @__PURE__ */
|
|
36859
|
-
/* @__PURE__ */
|
|
36860
|
-
/* @__PURE__ */
|
|
36861
|
-
editDraft !== null ? /* @__PURE__ */
|
|
37110
|
+
children: /* @__PURE__ */ jsxs48("div", { className: AgentGUIChrome_styles_default.chromeMetaRow, children: [
|
|
37111
|
+
/* @__PURE__ */ jsxs48("div", { className: AgentGUIChrome_styles_default.chromeMessageSlot, children: [
|
|
37112
|
+
/* @__PURE__ */ jsx68("span", { className: AgentGUIChrome_styles_default.chromeIcon, children: /* @__PURE__ */ jsx68(Target3, { "aria-hidden": true, className: "size-3.5" }) }),
|
|
37113
|
+
editDraft !== null ? /* @__PURE__ */ jsx68(
|
|
36862
37114
|
"input",
|
|
36863
37115
|
{
|
|
36864
37116
|
className: AgentGUIChrome_styles_default.chromeGoalEditInput,
|
|
@@ -36878,14 +37130,14 @@ function AgentGoalBanner({
|
|
|
36878
37130
|
},
|
|
36879
37131
|
onBlur: () => setEditDraft(null)
|
|
36880
37132
|
}
|
|
36881
|
-
) : /* @__PURE__ */
|
|
37133
|
+
) : /* @__PURE__ */ jsxs48(
|
|
36882
37134
|
"p",
|
|
36883
37135
|
{
|
|
36884
37136
|
className: cn(AgentGUIChrome_styles_default.chromeMessage, AgentGUIChrome_styles_default.chromeNoticeMessage),
|
|
36885
37137
|
title: fullMessage,
|
|
36886
37138
|
children: [
|
|
36887
|
-
/* @__PURE__ */
|
|
36888
|
-
/* @__PURE__ */
|
|
37139
|
+
/* @__PURE__ */ jsx68("span", { className: AgentGUIChrome_styles_default.chromeNoticeTitle, children: title }),
|
|
37140
|
+
/* @__PURE__ */ jsx68(
|
|
36889
37141
|
"span",
|
|
36890
37142
|
{
|
|
36891
37143
|
className: AgentGUIChrome_styles_default.chromeNoticeDescription,
|
|
@@ -36897,8 +37149,8 @@ function AgentGoalBanner({
|
|
|
36897
37149
|
}
|
|
36898
37150
|
)
|
|
36899
37151
|
] }),
|
|
36900
|
-
hasActions ? /* @__PURE__ */
|
|
36901
|
-
onEditObjective !== void 0 && editDraft === null ? /* @__PURE__ */
|
|
37152
|
+
hasActions ? /* @__PURE__ */ jsxs48("div", { className: AgentGUIChrome_styles_default.chromeGoalActions, children: [
|
|
37153
|
+
onEditObjective !== void 0 && editDraft === null ? /* @__PURE__ */ jsx68(
|
|
36902
37154
|
"button",
|
|
36903
37155
|
{
|
|
36904
37156
|
type: "button",
|
|
@@ -36906,10 +37158,10 @@ function AgentGoalBanner({
|
|
|
36906
37158
|
title: labels.editAction,
|
|
36907
37159
|
"aria-label": labels.editAction,
|
|
36908
37160
|
"data-testid": "agent-gui-goal-banner-edit",
|
|
36909
|
-
children: /* @__PURE__ */
|
|
37161
|
+
children: /* @__PURE__ */ jsx68(Pencil3, { "aria-hidden": true, className: "size-3.5" })
|
|
36910
37162
|
}
|
|
36911
37163
|
) : null,
|
|
36912
|
-
showPause ? /* @__PURE__ */
|
|
37164
|
+
showPause ? /* @__PURE__ */ jsx68(
|
|
36913
37165
|
"button",
|
|
36914
37166
|
{
|
|
36915
37167
|
type: "button",
|
|
@@ -36917,10 +37169,10 @@ function AgentGoalBanner({
|
|
|
36917
37169
|
title: labels.pauseAction,
|
|
36918
37170
|
"aria-label": labels.pauseAction,
|
|
36919
37171
|
"data-testid": "agent-gui-goal-banner-pause",
|
|
36920
|
-
children: /* @__PURE__ */
|
|
37172
|
+
children: /* @__PURE__ */ jsx68(CirclePause, { "aria-hidden": true, className: "size-3.5" })
|
|
36921
37173
|
}
|
|
36922
37174
|
) : null,
|
|
36923
|
-
showResume ? /* @__PURE__ */
|
|
37175
|
+
showResume ? /* @__PURE__ */ jsx68(
|
|
36924
37176
|
"button",
|
|
36925
37177
|
{
|
|
36926
37178
|
type: "button",
|
|
@@ -36928,10 +37180,10 @@ function AgentGoalBanner({
|
|
|
36928
37180
|
title: labels.resumeAction,
|
|
36929
37181
|
"aria-label": labels.resumeAction,
|
|
36930
37182
|
"data-testid": "agent-gui-goal-banner-resume",
|
|
36931
|
-
children: /* @__PURE__ */
|
|
37183
|
+
children: /* @__PURE__ */ jsx68(CirclePlay, { "aria-hidden": true, className: "size-3.5" })
|
|
36932
37184
|
}
|
|
36933
37185
|
) : null,
|
|
36934
|
-
onClearGoal !== void 0 ? /* @__PURE__ */
|
|
37186
|
+
onClearGoal !== void 0 ? /* @__PURE__ */ jsx68(
|
|
36935
37187
|
"button",
|
|
36936
37188
|
{
|
|
36937
37189
|
type: "button",
|
|
@@ -36939,10 +37191,10 @@ function AgentGoalBanner({
|
|
|
36939
37191
|
title: labels.clearAction,
|
|
36940
37192
|
"aria-label": labels.clearAction,
|
|
36941
37193
|
"data-testid": "agent-gui-goal-banner-clear",
|
|
36942
|
-
children: /* @__PURE__ */
|
|
37194
|
+
children: /* @__PURE__ */ jsx68(Trash2, { "aria-hidden": true, className: "size-3.5" })
|
|
36943
37195
|
}
|
|
36944
37196
|
) : null
|
|
36945
|
-
] }) : /* @__PURE__ */
|
|
37197
|
+
] }) : /* @__PURE__ */ jsx68(
|
|
36946
37198
|
"span",
|
|
36947
37199
|
{
|
|
36948
37200
|
className: AgentGUIChrome_styles_default.chromeGoalHint,
|
|
@@ -36957,114 +37209,6 @@ function AgentGoalBanner({
|
|
|
36957
37209
|
|
|
36958
37210
|
// agent-gui/agentGuiNode/TuttiPlanReviewBanner.tsx
|
|
36959
37211
|
import { Gauge as Gauge2, Sparkles as Sparkles3, X as X7 } from "lucide-react";
|
|
36960
|
-
|
|
36961
|
-
// agent-gui/agentGuiNode/composer/TuttiBudgetPopover.tsx
|
|
36962
|
-
import { useState as useState40 } from "react";
|
|
36963
|
-
import {
|
|
36964
|
-
Button as Button9,
|
|
36965
|
-
Popover as Popover5,
|
|
36966
|
-
PopoverContent as PopoverContent4,
|
|
36967
|
-
PopoverTrigger as PopoverTrigger3,
|
|
36968
|
-
Slider
|
|
36969
|
-
} from "@tutti-os/ui-system";
|
|
36970
|
-
import { jsx as jsx68, jsxs as jsxs48 } from "react/jsx-runtime";
|
|
36971
|
-
function TuttiBudgetPopover({
|
|
36972
|
-
children,
|
|
36973
|
-
intensity,
|
|
36974
|
-
labels,
|
|
36975
|
-
onConfirm
|
|
36976
|
-
}) {
|
|
36977
|
-
const [open, setOpen] = useState40(false);
|
|
36978
|
-
const [draftIntensity, setDraftIntensity] = useState40(intensity);
|
|
36979
|
-
return /* @__PURE__ */ jsxs48(
|
|
36980
|
-
Popover5,
|
|
36981
|
-
{
|
|
36982
|
-
open,
|
|
36983
|
-
onOpenChange: (nextOpen) => {
|
|
36984
|
-
if (nextOpen) {
|
|
36985
|
-
setDraftIntensity(intensity);
|
|
36986
|
-
}
|
|
36987
|
-
setOpen(nextOpen);
|
|
36988
|
-
},
|
|
36989
|
-
children: [
|
|
36990
|
-
/* @__PURE__ */ jsx68(PopoverTrigger3, { asChild: true, children }),
|
|
36991
|
-
/* @__PURE__ */ jsxs48(
|
|
36992
|
-
PopoverContent4,
|
|
36993
|
-
{
|
|
36994
|
-
align: "start",
|
|
36995
|
-
className: "nodrag",
|
|
36996
|
-
"data-agent-tutti-budget-popover": "true",
|
|
36997
|
-
onEscapeKeyDown: (event) => {
|
|
36998
|
-
event.preventDefault();
|
|
36999
|
-
setOpen(false);
|
|
37000
|
-
},
|
|
37001
|
-
onInteractOutside: (event) => event.preventDefault(),
|
|
37002
|
-
onPointerDownOutside: (event) => event.preventDefault(),
|
|
37003
|
-
children: [
|
|
37004
|
-
/* @__PURE__ */ jsx68("div", { className: "text-[13px] font-semibold text-[var(--text-primary)]", children: labels.title }),
|
|
37005
|
-
/* @__PURE__ */ jsxs48("div", { className: "grid gap-1.5 text-[12px] text-[var(--text-secondary)]", children: [
|
|
37006
|
-
/* @__PURE__ */ jsxs48("div", { className: "flex items-center justify-between gap-2", children: [
|
|
37007
|
-
/* @__PURE__ */ jsx68("span", { children: labels.intensityLabel }),
|
|
37008
|
-
/* @__PURE__ */ jsx68(
|
|
37009
|
-
"span",
|
|
37010
|
-
{
|
|
37011
|
-
className: "text-[var(--text-primary)] tabular-nums",
|
|
37012
|
-
"data-agent-tutti-budget-intensity-value": "true",
|
|
37013
|
-
children: draftIntensity
|
|
37014
|
-
}
|
|
37015
|
-
)
|
|
37016
|
-
] }),
|
|
37017
|
-
/* @__PURE__ */ jsx68(
|
|
37018
|
-
Slider,
|
|
37019
|
-
{
|
|
37020
|
-
"aria-label": labels.intensityLabel,
|
|
37021
|
-
max: 100,
|
|
37022
|
-
min: 0,
|
|
37023
|
-
step: 1,
|
|
37024
|
-
value: [draftIntensity],
|
|
37025
|
-
onValueChange: (values) => setDraftIntensity(values[0] ?? draftIntensity)
|
|
37026
|
-
}
|
|
37027
|
-
),
|
|
37028
|
-
/* @__PURE__ */ jsxs48("div", { className: "flex items-center justify-between gap-2 text-[11px]", children: [
|
|
37029
|
-
/* @__PURE__ */ jsx68("span", { children: labels.intensityMin }),
|
|
37030
|
-
/* @__PURE__ */ jsx68("span", { children: labels.intensityMax })
|
|
37031
|
-
] })
|
|
37032
|
-
] }),
|
|
37033
|
-
/* @__PURE__ */ jsxs48("div", { className: "flex items-center justify-end gap-2", children: [
|
|
37034
|
-
/* @__PURE__ */ jsx68(
|
|
37035
|
-
Button9,
|
|
37036
|
-
{
|
|
37037
|
-
"data-agent-tutti-budget-cancel": "true",
|
|
37038
|
-
size: "sm",
|
|
37039
|
-
type: "button",
|
|
37040
|
-
variant: "secondary",
|
|
37041
|
-
onClick: () => setOpen(false),
|
|
37042
|
-
children: labels.cancel
|
|
37043
|
-
}
|
|
37044
|
-
),
|
|
37045
|
-
/* @__PURE__ */ jsx68(
|
|
37046
|
-
Button9,
|
|
37047
|
-
{
|
|
37048
|
-
"data-agent-tutti-budget-confirm": "true",
|
|
37049
|
-
size: "sm",
|
|
37050
|
-
type: "button",
|
|
37051
|
-
onClick: () => {
|
|
37052
|
-
onConfirm(draftIntensity);
|
|
37053
|
-
setOpen(false);
|
|
37054
|
-
},
|
|
37055
|
-
children: labels.confirm
|
|
37056
|
-
}
|
|
37057
|
-
)
|
|
37058
|
-
] })
|
|
37059
|
-
]
|
|
37060
|
-
}
|
|
37061
|
-
)
|
|
37062
|
-
]
|
|
37063
|
-
}
|
|
37064
|
-
);
|
|
37065
|
-
}
|
|
37066
|
-
|
|
37067
|
-
// agent-gui/agentGuiNode/TuttiPlanReviewBanner.tsx
|
|
37068
37212
|
import { jsx as jsx69, jsxs as jsxs49 } from "react/jsx-runtime";
|
|
37069
37213
|
function TuttiPlanReviewBanner({
|
|
37070
37214
|
labels,
|
|
@@ -37352,8 +37496,19 @@ var AgentGUIBottomDockPane = memo10(function AgentGUIBottomDockPane2({
|
|
|
37352
37496
|
intensityPopoverLabels: {
|
|
37353
37497
|
title: composerProps.labels.tuttiBudgetTitle,
|
|
37354
37498
|
intensityLabel: composerProps.labels.tuttiBudgetIntensityLabel,
|
|
37355
|
-
|
|
37356
|
-
|
|
37499
|
+
previewTitle: composerProps.labels.tuttiBudgetPreviewTitle,
|
|
37500
|
+
previewHint: composerProps.labels.tuttiBudgetPreviewHint,
|
|
37501
|
+
previewCost: composerProps.labels.tuttiBudgetPreviewCost,
|
|
37502
|
+
previewBalance: composerProps.labels.tuttiBudgetPreviewBalance,
|
|
37503
|
+
previewPowerful: composerProps.labels.tuttiBudgetPreviewPowerful,
|
|
37504
|
+
modelStrengthLabel: composerProps.labels.tuttiBudgetModelStrengthLabel,
|
|
37505
|
+
modelStrengthCost: composerProps.labels.tuttiBudgetModelStrengthCost,
|
|
37506
|
+
modelStrengthBalance: composerProps.labels.tuttiBudgetModelStrengthBalance,
|
|
37507
|
+
modelStrengthPowerful: composerProps.labels.tuttiBudgetModelStrengthPowerful,
|
|
37508
|
+
agentCountLabel: composerProps.labels.tuttiBudgetAgentCountLabel,
|
|
37509
|
+
agentCountCost: composerProps.labels.tuttiBudgetAgentCountCost,
|
|
37510
|
+
agentCountBalance: composerProps.labels.tuttiBudgetAgentCountBalance,
|
|
37511
|
+
agentCountPowerful: composerProps.labels.tuttiBudgetAgentCountPowerful,
|
|
37357
37512
|
confirm: composerProps.labels.tuttiBudgetConfirm,
|
|
37358
37513
|
cancel: composerProps.labels.tuttiBudgetCancel
|
|
37359
37514
|
},
|
|
@@ -37511,6 +37666,15 @@ import {
|
|
|
37511
37666
|
var AGENT_GUI_STICK_TO_BOTTOM_THRESHOLD_PX = 24;
|
|
37512
37667
|
var AGENT_GUI_TOP_HISTORY_PREFETCH_THRESHOLD_PX = 240;
|
|
37513
37668
|
var AGENT_GUI_TOP_MASK_SCROLL_EPSILON_PX = 1;
|
|
37669
|
+
function readTimelineGeometry(timeline) {
|
|
37670
|
+
const scrollHeight = timeline.scrollHeight;
|
|
37671
|
+
const clientHeight = timeline.clientHeight;
|
|
37672
|
+
return {
|
|
37673
|
+
clientHeight,
|
|
37674
|
+
maxScrollTop: Math.max(0, scrollHeight - clientHeight),
|
|
37675
|
+
scrollHeight
|
|
37676
|
+
};
|
|
37677
|
+
}
|
|
37514
37678
|
function useAgentGUIDetailScroll(input) {
|
|
37515
37679
|
const {
|
|
37516
37680
|
actions,
|
|
@@ -37557,10 +37721,8 @@ function useAgentGUIDetailScroll(input) {
|
|
|
37557
37721
|
if (!conversationChanged && !shouldScrollSubmittedPromptToBottom && !shouldRestorePrependAnchor && !timelineSkeletonChanged) {
|
|
37558
37722
|
return;
|
|
37559
37723
|
}
|
|
37560
|
-
const
|
|
37561
|
-
|
|
37562
|
-
timeline.scrollHeight - timeline.clientHeight
|
|
37563
|
-
);
|
|
37724
|
+
const geometry = readTimelineGeometry(timeline);
|
|
37725
|
+
const maxScrollTop = geometry.maxScrollTop;
|
|
37564
37726
|
let nextScrollTop;
|
|
37565
37727
|
if (conversationChanged || shouldScrollSubmittedPromptToBottom) {
|
|
37566
37728
|
bottomLockOwnerRef.current = activeConversationId;
|
|
@@ -37575,7 +37737,7 @@ function useAgentGUIDetailScroll(input) {
|
|
|
37575
37737
|
pendingPrependScrollAnchorRef.current = null;
|
|
37576
37738
|
}
|
|
37577
37739
|
} else if (shouldRestorePrependAnchor && prependAnchor) {
|
|
37578
|
-
const nextScrollHeight =
|
|
37740
|
+
const nextScrollHeight = geometry.scrollHeight;
|
|
37579
37741
|
const delta = nextScrollHeight - prependAnchor.scrollHeight;
|
|
37580
37742
|
nextScrollTop = Math.max(0, prependAnchor.scrollTop + delta);
|
|
37581
37743
|
timeline.scrollTop = nextScrollTop;
|
|
@@ -37600,9 +37762,9 @@ function useAgentGUIDetailScroll(input) {
|
|
|
37600
37762
|
}
|
|
37601
37763
|
timelineScrollAnchorRef.current = {
|
|
37602
37764
|
conversationId: activeConversationId,
|
|
37603
|
-
scrollHeight:
|
|
37765
|
+
scrollHeight: geometry.scrollHeight,
|
|
37604
37766
|
scrollTop: nextScrollTop,
|
|
37605
|
-
clientHeight:
|
|
37767
|
+
clientHeight: geometry.clientHeight
|
|
37606
37768
|
};
|
|
37607
37769
|
setIsTimelineScrolledToTop(
|
|
37608
37770
|
nextScrollTop <= AGENT_GUI_TOP_MASK_SCROLL_EPSILON_PX
|
|
@@ -37690,16 +37852,14 @@ function useAgentGUIDetailScroll(input) {
|
|
|
37690
37852
|
if (!latestBottomLocked && latestDistanceFromBottom > AGENT_GUI_STICK_TO_BOTTOM_THRESHOLD_PX) {
|
|
37691
37853
|
return;
|
|
37692
37854
|
}
|
|
37693
|
-
const
|
|
37694
|
-
|
|
37695
|
-
timeline.scrollHeight - timeline.clientHeight
|
|
37696
|
-
);
|
|
37855
|
+
const geometry = readTimelineGeometry(timeline);
|
|
37856
|
+
const maxScrollTop = geometry.maxScrollTop;
|
|
37697
37857
|
timeline.scrollTop = maxScrollTop;
|
|
37698
37858
|
timelineScrollAnchorRef.current = {
|
|
37699
37859
|
conversationId: activeConversationId,
|
|
37700
|
-
scrollHeight:
|
|
37860
|
+
scrollHeight: geometry.scrollHeight,
|
|
37701
37861
|
scrollTop: maxScrollTop,
|
|
37702
|
-
clientHeight:
|
|
37862
|
+
clientHeight: geometry.clientHeight
|
|
37703
37863
|
};
|
|
37704
37864
|
setIsTimelineScrolledToTop(
|
|
37705
37865
|
maxScrollTop <= AGENT_GUI_TOP_MASK_SCROLL_EPSILON_PX
|
|
@@ -37749,6 +37909,16 @@ function useAgentGUIDetailScroll(input) {
|
|
|
37749
37909
|
if (!timeline || !activeConversationId) {
|
|
37750
37910
|
return;
|
|
37751
37911
|
}
|
|
37912
|
+
const loadOlderMessagesNearTop = (scrollTop, scrollHeight) => {
|
|
37913
|
+
if (activeConversationId === viewModel.rail.activeConversationId && viewModel.detail.hasOlderMessages && !viewModel.detail.isLoadingOlderMessages && scrollTop <= AGENT_GUI_TOP_HISTORY_PREFETCH_THRESHOLD_PX) {
|
|
37914
|
+
pendingPrependScrollAnchorRef.current = {
|
|
37915
|
+
conversationId: activeConversationId,
|
|
37916
|
+
scrollHeight,
|
|
37917
|
+
scrollTop
|
|
37918
|
+
};
|
|
37919
|
+
actions.loadOlderConversationMessages();
|
|
37920
|
+
}
|
|
37921
|
+
};
|
|
37752
37922
|
const captureScrollAnchor = () => {
|
|
37753
37923
|
const previousAnchor = timelineScrollAnchorRef.current;
|
|
37754
37924
|
if (!previousAnchor || previousAnchor.conversationId !== activeConversationId) {
|
|
@@ -37776,23 +37946,15 @@ function useAgentGUIDetailScroll(input) {
|
|
|
37776
37946
|
scrollTop <= AGENT_GUI_TOP_MASK_SCROLL_EPSILON_PX
|
|
37777
37947
|
);
|
|
37778
37948
|
setIsTimelineScrolledToBottom(effectiveAtBottom);
|
|
37779
|
-
|
|
37780
|
-
pendingPrependScrollAnchorRef.current = {
|
|
37781
|
-
conversationId: activeConversationId,
|
|
37782
|
-
scrollHeight: previousAnchor.scrollHeight,
|
|
37783
|
-
scrollTop
|
|
37784
|
-
};
|
|
37785
|
-
actions.loadOlderConversationMessages();
|
|
37786
|
-
}
|
|
37949
|
+
loadOlderMessagesNearTop(scrollTop, previousAnchor.scrollHeight);
|
|
37787
37950
|
};
|
|
37788
37951
|
const syncObservedTimelineGeometry = () => {
|
|
37789
37952
|
const anchor = timelineScrollAnchorRef.current;
|
|
37790
37953
|
if (!anchor || anchor.conversationId !== activeConversationId) {
|
|
37791
37954
|
return;
|
|
37792
37955
|
}
|
|
37793
|
-
const
|
|
37794
|
-
const clientHeight =
|
|
37795
|
-
const maxScrollTop = Math.max(0, scrollHeight - clientHeight);
|
|
37956
|
+
const geometry = readTimelineGeometry(timeline);
|
|
37957
|
+
const { clientHeight, maxScrollTop, scrollHeight } = geometry;
|
|
37796
37958
|
const bottomLocked = bottomLockOwnerRef.current === activeConversationId;
|
|
37797
37959
|
let scrollTop = Math.min(maxScrollTop, timeline.scrollTop);
|
|
37798
37960
|
if (bottomLocked) {
|
|
@@ -37824,7 +37986,13 @@ function useAgentGUIDetailScroll(input) {
|
|
|
37824
37986
|
userScrollAwayIntentConversationRef.current = activeConversationId;
|
|
37825
37987
|
}
|
|
37826
37988
|
};
|
|
37827
|
-
|
|
37989
|
+
const initialAnchor = timelineScrollAnchorRef.current;
|
|
37990
|
+
if (initialAnchor?.conversationId === activeConversationId) {
|
|
37991
|
+
loadOlderMessagesNearTop(
|
|
37992
|
+
initialAnchor.scrollTop,
|
|
37993
|
+
initialAnchor.scrollHeight
|
|
37994
|
+
);
|
|
37995
|
+
}
|
|
37828
37996
|
timeline.addEventListener("scroll", captureScrollAnchor, { passive: true });
|
|
37829
37997
|
timeline.addEventListener("wheel", captureWheelIntent, { passive: true });
|
|
37830
37998
|
timeline.addEventListener("keydown", captureKeyboardIntent);
|
|
@@ -37855,18 +38023,16 @@ function useAgentGUIDetailScroll(input) {
|
|
|
37855
38023
|
if (activeConversationId !== viewModel.rail.activeConversationId) {
|
|
37856
38024
|
return;
|
|
37857
38025
|
}
|
|
37858
|
-
const
|
|
37859
|
-
|
|
37860
|
-
timeline.scrollHeight - timeline.clientHeight
|
|
37861
|
-
);
|
|
38026
|
+
const geometry = readTimelineGeometry(timeline);
|
|
38027
|
+
const maxScrollTop = geometry.maxScrollTop;
|
|
37862
38028
|
bottomLockOwnerRef.current = activeConversationId;
|
|
37863
38029
|
userScrollAwayIntentConversationRef.current = null;
|
|
37864
38030
|
setTimelineScrollTopWithUserTransition(timeline, maxScrollTop);
|
|
37865
38031
|
timelineScrollAnchorRef.current = {
|
|
37866
38032
|
conversationId: activeConversationId,
|
|
37867
|
-
scrollHeight:
|
|
38033
|
+
scrollHeight: geometry.scrollHeight,
|
|
37868
38034
|
scrollTop: maxScrollTop,
|
|
37869
|
-
clientHeight:
|
|
38035
|
+
clientHeight: geometry.clientHeight
|
|
37870
38036
|
};
|
|
37871
38037
|
setIsTimelineScrolledToTop(
|
|
37872
38038
|
maxScrollTop <= AGENT_GUI_TOP_MASK_SCROLL_EPSILON_PX
|
|
@@ -38273,10 +38439,22 @@ function useAgentGUIDetailModel(input) {
|
|
|
38273
38439
|
normalModeDescription: labels.normalModeDescription,
|
|
38274
38440
|
tuttiModeLabel: labels.tuttiModeLabel,
|
|
38275
38441
|
tuttiModeDescription: labels.tuttiModeDescription,
|
|
38442
|
+
tuttiModeRemove: labels.tuttiModeRemove,
|
|
38276
38443
|
tuttiBudgetTitle: labels.tuttiBudgetTitle,
|
|
38277
38444
|
tuttiBudgetIntensityLabel: labels.tuttiBudgetIntensityLabel,
|
|
38278
|
-
|
|
38279
|
-
|
|
38445
|
+
tuttiBudgetPreviewTitle: labels.tuttiBudgetPreviewTitle,
|
|
38446
|
+
tuttiBudgetPreviewHint: labels.tuttiBudgetPreviewHint,
|
|
38447
|
+
tuttiBudgetPreviewCost: labels.tuttiBudgetPreviewCost,
|
|
38448
|
+
tuttiBudgetPreviewBalance: labels.tuttiBudgetPreviewBalance,
|
|
38449
|
+
tuttiBudgetPreviewPowerful: labels.tuttiBudgetPreviewPowerful,
|
|
38450
|
+
tuttiBudgetModelStrengthLabel: labels.tuttiBudgetModelStrengthLabel,
|
|
38451
|
+
tuttiBudgetModelStrengthCost: labels.tuttiBudgetModelStrengthCost,
|
|
38452
|
+
tuttiBudgetModelStrengthBalance: labels.tuttiBudgetModelStrengthBalance,
|
|
38453
|
+
tuttiBudgetModelStrengthPowerful: labels.tuttiBudgetModelStrengthPowerful,
|
|
38454
|
+
tuttiBudgetAgentCountLabel: labels.tuttiBudgetAgentCountLabel,
|
|
38455
|
+
tuttiBudgetAgentCountCost: labels.tuttiBudgetAgentCountCost,
|
|
38456
|
+
tuttiBudgetAgentCountBalance: labels.tuttiBudgetAgentCountBalance,
|
|
38457
|
+
tuttiBudgetAgentCountPowerful: labels.tuttiBudgetAgentCountPowerful,
|
|
38280
38458
|
tuttiBudgetConfirm: labels.tuttiBudgetConfirm,
|
|
38281
38459
|
tuttiBudgetCancel: labels.tuttiBudgetCancel,
|
|
38282
38460
|
planModeDescription: labels.planModeDescription,
|
|
@@ -38420,10 +38598,22 @@ function useAgentGUIDetailModel(input) {
|
|
|
38420
38598
|
labels.normalModeDescription,
|
|
38421
38599
|
labels.tuttiModeLabel,
|
|
38422
38600
|
labels.tuttiModeDescription,
|
|
38601
|
+
labels.tuttiModeRemove,
|
|
38423
38602
|
labels.tuttiBudgetTitle,
|
|
38424
38603
|
labels.tuttiBudgetIntensityLabel,
|
|
38425
|
-
labels.
|
|
38426
|
-
labels.
|
|
38604
|
+
labels.tuttiBudgetPreviewTitle,
|
|
38605
|
+
labels.tuttiBudgetPreviewHint,
|
|
38606
|
+
labels.tuttiBudgetPreviewCost,
|
|
38607
|
+
labels.tuttiBudgetPreviewBalance,
|
|
38608
|
+
labels.tuttiBudgetPreviewPowerful,
|
|
38609
|
+
labels.tuttiBudgetModelStrengthLabel,
|
|
38610
|
+
labels.tuttiBudgetModelStrengthCost,
|
|
38611
|
+
labels.tuttiBudgetModelStrengthBalance,
|
|
38612
|
+
labels.tuttiBudgetModelStrengthPowerful,
|
|
38613
|
+
labels.tuttiBudgetAgentCountLabel,
|
|
38614
|
+
labels.tuttiBudgetAgentCountCost,
|
|
38615
|
+
labels.tuttiBudgetAgentCountBalance,
|
|
38616
|
+
labels.tuttiBudgetAgentCountPowerful,
|
|
38427
38617
|
labels.tuttiBudgetConfirm,
|
|
38428
38618
|
labels.tuttiBudgetCancel,
|
|
38429
38619
|
labels.planModeDescription,
|
|
@@ -38754,7 +38944,7 @@ import ReactMarkdown2 from "react-markdown";
|
|
|
38754
38944
|
import rehypeSanitize from "rehype-sanitize";
|
|
38755
38945
|
import remarkGfm2 from "remark-gfm";
|
|
38756
38946
|
import {
|
|
38757
|
-
Badge,
|
|
38947
|
+
Badge as Badge2,
|
|
38758
38948
|
Card,
|
|
38759
38949
|
CardContent,
|
|
38760
38950
|
CardDescription,
|
|
@@ -39091,8 +39281,8 @@ function TuttiModePlanPanel({
|
|
|
39091
39281
|
children: [
|
|
39092
39282
|
/* @__PURE__ */ jsxs56(CardHeader, { children: [
|
|
39093
39283
|
/* @__PURE__ */ jsxs56("div", { className: "flex flex-wrap items-center gap-2", children: [
|
|
39094
|
-
/* @__PURE__ */ jsx78(
|
|
39095
|
-
/* @__PURE__ */ jsx78(
|
|
39284
|
+
/* @__PURE__ */ jsx78(Badge2, { variant: "accent", children: labels.mode }),
|
|
39285
|
+
/* @__PURE__ */ jsx78(Badge2, { variant: "pending", children: labels.pending }),
|
|
39096
39286
|
/* @__PURE__ */ jsx78("span", { className: "text-xs text-muted-foreground", children: labels.taskReview })
|
|
39097
39287
|
] }),
|
|
39098
39288
|
/* @__PURE__ */ jsx78(CardTitle, { children: panel.title }),
|
|
@@ -39120,7 +39310,7 @@ function TuttiModePlanPanel({
|
|
|
39120
39310
|
". ",
|
|
39121
39311
|
task.title
|
|
39122
39312
|
] }),
|
|
39123
|
-
/* @__PURE__ */ jsx78(
|
|
39313
|
+
/* @__PURE__ */ jsx78(Badge2, { variant: "secondary", children: priorityLabel(labels, task.priority) })
|
|
39124
39314
|
] }),
|
|
39125
39315
|
task.content ? /* @__PURE__ */ jsx78("p", { className: "mt-1 text-xs text-muted-foreground", children: task.content }) : null,
|
|
39126
39316
|
editable && assignmentCatalog ? /* @__PURE__ */ jsx78(
|
|
@@ -41956,7 +42146,7 @@ function AgentGUINodeView({
|
|
|
41956
42146
|
const requestComposerFocus = useCallback67(() => {
|
|
41957
42147
|
setLocalComposerFocusRequestSequence((current) => current + 1);
|
|
41958
42148
|
}, []);
|
|
41959
|
-
const requestCreateConversation =
|
|
42149
|
+
const requestCreateConversation = useStableEventCallback(
|
|
41960
42150
|
(options) => {
|
|
41961
42151
|
if (previewMode) {
|
|
41962
42152
|
return;
|
|
@@ -41973,13 +42163,7 @@ function AgentGUINodeView({
|
|
|
41973
42163
|
createConversationAction({ source: source ?? "rail_toolbar" });
|
|
41974
42164
|
}
|
|
41975
42165
|
requestComposerFocus();
|
|
41976
|
-
}
|
|
41977
|
-
[
|
|
41978
|
-
createConversationAction,
|
|
41979
|
-
previewMode,
|
|
41980
|
-
requestComposerFocus,
|
|
41981
|
-
viewModel.composer.composerSettings.selectedProjectPath
|
|
41982
|
-
]
|
|
42166
|
+
}
|
|
41983
42167
|
);
|
|
41984
42168
|
const effectiveWorkspaceAppIcons = useMemo48(
|
|
41985
42169
|
() => mergeWorkspaceAppIconsFromCommands({
|
|
@@ -43114,6 +43298,46 @@ function agentGUITuttiModeLabels(t) {
|
|
|
43114
43298
|
return {
|
|
43115
43299
|
tuttiModeLabel: t("agentHost.agentGui.tuttiModeLabel"),
|
|
43116
43300
|
tuttiModeDescription: t("agentHost.agentGui.tuttiModeDescription"),
|
|
43301
|
+
tuttiModeRemove: t("agentHost.agentGui.tuttiModeRemove"),
|
|
43302
|
+
tuttiBudgetTitle: t("agentHost.agentGui.tuttiBudgetTitle"),
|
|
43303
|
+
tuttiBudgetIntensityLabel: t(
|
|
43304
|
+
"agentHost.agentGui.tuttiBudgetIntensityLabel"
|
|
43305
|
+
),
|
|
43306
|
+
tuttiBudgetPreviewTitle: t("agentHost.agentGui.tuttiBudgetPreviewTitle"),
|
|
43307
|
+
tuttiBudgetPreviewHint: t("agentHost.agentGui.tuttiBudgetPreviewHint"),
|
|
43308
|
+
tuttiBudgetPreviewCost: t("agentHost.agentGui.tuttiBudgetPreviewCost"),
|
|
43309
|
+
tuttiBudgetPreviewBalance: t(
|
|
43310
|
+
"agentHost.agentGui.tuttiBudgetPreviewBalance"
|
|
43311
|
+
),
|
|
43312
|
+
tuttiBudgetPreviewPowerful: t(
|
|
43313
|
+
"agentHost.agentGui.tuttiBudgetPreviewPowerful"
|
|
43314
|
+
),
|
|
43315
|
+
tuttiBudgetModelStrengthLabel: t(
|
|
43316
|
+
"agentHost.agentGui.tuttiBudgetModelStrengthLabel"
|
|
43317
|
+
),
|
|
43318
|
+
tuttiBudgetModelStrengthCost: t(
|
|
43319
|
+
"agentHost.agentGui.tuttiBudgetModelStrengthCost"
|
|
43320
|
+
),
|
|
43321
|
+
tuttiBudgetModelStrengthBalance: t(
|
|
43322
|
+
"agentHost.agentGui.tuttiBudgetModelStrengthBalance"
|
|
43323
|
+
),
|
|
43324
|
+
tuttiBudgetModelStrengthPowerful: t(
|
|
43325
|
+
"agentHost.agentGui.tuttiBudgetModelStrengthPowerful"
|
|
43326
|
+
),
|
|
43327
|
+
tuttiBudgetAgentCountLabel: t(
|
|
43328
|
+
"agentHost.agentGui.tuttiBudgetAgentCountLabel"
|
|
43329
|
+
),
|
|
43330
|
+
tuttiBudgetAgentCountCost: t(
|
|
43331
|
+
"agentHost.agentGui.tuttiBudgetAgentCountCost"
|
|
43332
|
+
),
|
|
43333
|
+
tuttiBudgetAgentCountBalance: t(
|
|
43334
|
+
"agentHost.agentGui.tuttiBudgetAgentCountBalance"
|
|
43335
|
+
),
|
|
43336
|
+
tuttiBudgetAgentCountPowerful: t(
|
|
43337
|
+
"agentHost.agentGui.tuttiBudgetAgentCountPowerful"
|
|
43338
|
+
),
|
|
43339
|
+
tuttiBudgetConfirm: t("agentHost.agentGui.tuttiBudgetConfirm"),
|
|
43340
|
+
tuttiBudgetCancel: t("agentHost.agentGui.tuttiBudgetCancel"),
|
|
43117
43341
|
tuttiModeUpdateFailed: t("agentHost.agentGui.tuttiModeUpdateFailed"),
|
|
43118
43342
|
tuttiModeUpdateUncertain: t("agentHost.agentGui.tuttiModeUpdateUncertain"),
|
|
43119
43343
|
tuttiModePlanPanel: {
|
|
@@ -43390,14 +43614,6 @@ function useAgentGUIViewLabels(input) {
|
|
|
43390
43614
|
normalModeLabel: t("agentHost.agentGui.normalModeLabel"),
|
|
43391
43615
|
normalModeDescription: t("agentHost.agentGui.normalModeDescription"),
|
|
43392
43616
|
...agentGUITuttiModeLabels(t),
|
|
43393
|
-
tuttiBudgetTitle: t("agentHost.agentGui.tuttiBudgetTitle"),
|
|
43394
|
-
tuttiBudgetIntensityLabel: t(
|
|
43395
|
-
"agentHost.agentGui.tuttiBudgetIntensityLabel"
|
|
43396
|
-
),
|
|
43397
|
-
tuttiBudgetIntensityMin: t("agentHost.agentGui.tuttiBudgetIntensityMin"),
|
|
43398
|
-
tuttiBudgetIntensityMax: t("agentHost.agentGui.tuttiBudgetIntensityMax"),
|
|
43399
|
-
tuttiBudgetConfirm: t("agentHost.agentGui.tuttiBudgetConfirm"),
|
|
43400
|
-
tuttiBudgetCancel: t("agentHost.agentGui.tuttiBudgetCancel"),
|
|
43401
43617
|
planModeDescription: t("agentHost.agentGui.planModeDescription"),
|
|
43402
43618
|
planModeOnLabel: t("agentHost.agentGui.planModeOnLabel"),
|
|
43403
43619
|
planModeOffLabel: t("agentHost.agentGui.planModeOffLabel"),
|
|
@@ -44465,4 +44681,4 @@ export {
|
|
|
44465
44681
|
AgentHandoffMenu,
|
|
44466
44682
|
AgentGUI
|
|
44467
44683
|
};
|
|
44468
|
-
//# sourceMappingURL=chunk-
|
|
44684
|
+
//# sourceMappingURL=chunk-NTY3JIYS.js.map
|