@tutti-os/agent-gui 0.0.227 → 0.0.229
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent-conversation/index.js +2 -2
- package/dist/agent-gui.js +4 -4
- package/dist/agent-message-center/index.js +2 -2
- package/dist/app/renderer/agentactivity.css +31 -85
- package/dist/{chunk-KZIW5CCW.js → chunk-CQFT3MI5.js} +35 -25
- package/dist/chunk-CQFT3MI5.js.map +1 -0
- package/dist/{chunk-Z35E22WS.js → chunk-WGCDSA7P.js} +24 -22
- package/dist/{chunk-Z35E22WS.js.map → chunk-WGCDSA7P.js.map} +1 -1
- package/dist/{chunk-C7XGPXRW.js → chunk-Y5OBJINU.js} +2 -2
- package/dist/{chunk-THBQIB3O.js → chunk-ZVSKNM6D.js} +265 -243
- package/dist/chunk-ZVSKNM6D.js.map +1 -0
- package/dist/index.js +4 -4
- package/package.json +16 -16
- package/dist/chunk-KZIW5CCW.js.map +0 -1
- package/dist/chunk-THBQIB3O.js.map +0 -1
- /package/dist/{chunk-C7XGPXRW.js.map → chunk-Y5OBJINU.js.map} +0 -0
|
@@ -38,7 +38,7 @@ import {
|
|
|
38
38
|
normalizePlanIssueBudgetPreset,
|
|
39
39
|
planImplementationPromptFromPlanTurn,
|
|
40
40
|
planIssueBudgetPresetsEqual
|
|
41
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-CQFT3MI5.js";
|
|
42
42
|
import {
|
|
43
43
|
useEngineSelector
|
|
44
44
|
} from "./chunk-EVQ4JY3N.js";
|
|
@@ -77,7 +77,7 @@ import {
|
|
|
77
77
|
toLocalShortDateTime,
|
|
78
78
|
updateAgentComposerDraft,
|
|
79
79
|
useProjectedAgentConversation
|
|
80
|
-
} from "./chunk-
|
|
80
|
+
} from "./chunk-Y5OBJINU.js";
|
|
81
81
|
import {
|
|
82
82
|
agentRichTextContentToPromptText,
|
|
83
83
|
createAgentRichTextInputExtensions,
|
|
@@ -94,7 +94,7 @@ import {
|
|
|
94
94
|
blobToBase64,
|
|
95
95
|
normalizeAgentApprovalPurpose,
|
|
96
96
|
resolveWorkspaceLinkAction
|
|
97
|
-
} from "./chunk-
|
|
97
|
+
} from "./chunk-WGCDSA7P.js";
|
|
98
98
|
import {
|
|
99
99
|
AgentTargetPresentationProvider,
|
|
100
100
|
cn,
|
|
@@ -196,7 +196,7 @@ import { memo as memo15, useMemo as useMemo52 } from "react";
|
|
|
196
196
|
import { TooltipProvider as TooltipProvider8 } from "@tutti-os/ui-system";
|
|
197
197
|
|
|
198
198
|
// agent-gui/agentGuiNode/AgentGUINode.tsx
|
|
199
|
-
import { memo as memo14, useCallback as useCallback68, useMemo as useMemo51, useRef as
|
|
199
|
+
import { memo as memo14, useCallback as useCallback68, useMemo as useMemo51, useRef as useRef62 } from "react";
|
|
200
200
|
import { createWorkspaceUserProjectI18nRuntime } from "@tutti-os/workspace-user-project/i18n";
|
|
201
201
|
import { createWorkspaceFileManagerI18nRuntime } from "@tutti-os/workspace-file-manager";
|
|
202
202
|
|
|
@@ -2040,7 +2040,7 @@ import {
|
|
|
2040
2040
|
selectEngineSessionIsRespondingToInteraction as selectEngineSessionIsRespondingToInteraction2,
|
|
2041
2041
|
selectWorkspaceAgentConsumerSessions as selectWorkspaceAgentConsumerSessions2
|
|
2042
2042
|
} from "@tutti-os/agent-activity-core";
|
|
2043
|
-
import { useCallback as useCallback28, useEffect as useEffect13, useMemo as useMemo20, useRef as
|
|
2043
|
+
import { useCallback as useCallback28, useEffect as useEffect13, useMemo as useMemo20, useRef as useRef22 } from "react";
|
|
2044
2044
|
|
|
2045
2045
|
// host/agentHostAccountStore.ts
|
|
2046
2046
|
import { create as create2 } from "zustand";
|
|
@@ -7006,7 +7006,7 @@ import {
|
|
|
7006
7006
|
resolveAgentActivityCapability as resolveAgentActivityCapability2,
|
|
7007
7007
|
resolveAgentActivityUsage
|
|
7008
7008
|
} from "@tutti-os/agent-activity-core";
|
|
7009
|
-
import { useMemo as useMemo7 } from "react";
|
|
7009
|
+
import { useMemo as useMemo7, useRef as useRef9 } from "react";
|
|
7010
7010
|
|
|
7011
7011
|
// agent-gui/agentGuiNode/model/composerSettingsSupport.ts
|
|
7012
7012
|
import {
|
|
@@ -7204,6 +7204,9 @@ function resolveComposerSettingsPresentation(input) {
|
|
|
7204
7204
|
|
|
7205
7205
|
// agent-gui/agentGuiNode/controller/useAgentGUIComposerCapabilities.ts
|
|
7206
7206
|
function useAgentGUIComposerCapabilities(input) {
|
|
7207
|
+
const retainedUsageBySessionIdRef = useRef9(
|
|
7208
|
+
/* @__PURE__ */ new Map()
|
|
7209
|
+
);
|
|
7207
7210
|
const composerTargetData = composerTargetDataForConversation({
|
|
7208
7211
|
activeConversationId: input.activeConversationId,
|
|
7209
7212
|
data: input.data,
|
|
@@ -7260,10 +7263,20 @@ function useAgentGUIComposerCapabilities(input) {
|
|
|
7260
7263
|
};
|
|
7261
7264
|
}, [providerComposerOptions, sessionCapabilities]);
|
|
7262
7265
|
const usageSource = input.activeEngineSession?.usage ?? null;
|
|
7263
|
-
const usage = useMemo7(
|
|
7264
|
-
|
|
7265
|
-
|
|
7266
|
-
|
|
7266
|
+
const usage = useMemo7(() => {
|
|
7267
|
+
const agentSessionId = input.activeEngineSession?.agentSessionId.trim() ?? "";
|
|
7268
|
+
if (!agentSessionId) {
|
|
7269
|
+
return null;
|
|
7270
|
+
}
|
|
7271
|
+
const resolved = resolveAgentActivityUsage({
|
|
7272
|
+
sessionUsage: usageSource
|
|
7273
|
+
});
|
|
7274
|
+
if (resolved) {
|
|
7275
|
+
retainedUsageBySessionIdRef.current.set(agentSessionId, resolved);
|
|
7276
|
+
return resolved;
|
|
7277
|
+
}
|
|
7278
|
+
return retainedUsageBySessionIdRef.current.get(agentSessionId) ?? null;
|
|
7279
|
+
}, [input.activeEngineSession?.agentSessionId, usageSource]);
|
|
7267
7280
|
return {
|
|
7268
7281
|
compactSupported: sessionCapabilities?.compact ?? resolveAgentActivityCapability2("compact", {
|
|
7269
7282
|
composerOptions: providerComposerOptions,
|
|
@@ -7284,7 +7297,7 @@ function useAgentGUIComposerCapabilities(input) {
|
|
|
7284
7297
|
}
|
|
7285
7298
|
|
|
7286
7299
|
// agent-gui/agentGuiNode/controller/useAgentGUIComposerOptionsSync.ts
|
|
7287
|
-
import { useCallback as useCallback8, useEffect as useEffect5, useRef as
|
|
7300
|
+
import { useCallback as useCallback8, useEffect as useEffect5, useRef as useRef10 } from "react";
|
|
7288
7301
|
|
|
7289
7302
|
// host/agentHostEventBus.ts
|
|
7290
7303
|
var LOG_PREFIX = "[agent-host-event-bus]";
|
|
@@ -7446,7 +7459,7 @@ function subscribeCoalesced(type, options, callback) {
|
|
|
7446
7459
|
|
|
7447
7460
|
// agent-gui/agentGuiNode/controller/useAgentGUIComposerOptionsSync.ts
|
|
7448
7461
|
function useAgentGUIComposerOptionsSync(input) {
|
|
7449
|
-
const previousIsCreatingConversationRef =
|
|
7462
|
+
const previousIsCreatingConversationRef = useRef10(
|
|
7450
7463
|
input.isCreatingConversation
|
|
7451
7464
|
);
|
|
7452
7465
|
const loadComposerOptionsForTarget = useCallback8(
|
|
@@ -7627,37 +7640,37 @@ function useAgentGUIComposerOptionsSync(input) {
|
|
|
7627
7640
|
}
|
|
7628
7641
|
|
|
7629
7642
|
// agent-gui/agentGuiNode/controller/useAgentGUIControllerRefs.ts
|
|
7630
|
-
import { useRef as
|
|
7643
|
+
import { useRef as useRef11 } from "react";
|
|
7631
7644
|
function useAgentGUIControllerRefs(input) {
|
|
7632
|
-
const activeConversationIdRef =
|
|
7633
|
-
const selectedProjectPathRef =
|
|
7634
|
-
const userProjectsRef =
|
|
7635
|
-
const isNoProjectPathRef =
|
|
7636
|
-
const userProjectsLoadSeqRef =
|
|
7637
|
-
const conversationsRef =
|
|
7638
|
-
const isMountedRef =
|
|
7639
|
-
const agentActivitySnapshotRef =
|
|
7640
|
-
const dataRef =
|
|
7641
|
-
const selectedAgentTargetRef =
|
|
7642
|
-
const selectedAgentTargetIsExplicitRef =
|
|
7645
|
+
const activeConversationIdRef = useRef11(input.activeConversationId);
|
|
7646
|
+
const selectedProjectPathRef = useRef11(input.selectedProjectPath);
|
|
7647
|
+
const userProjectsRef = useRef11(input.userProjects);
|
|
7648
|
+
const isNoProjectPathRef = useRef11(input.isNoProjectPath);
|
|
7649
|
+
const userProjectsLoadSeqRef = useRef11(0);
|
|
7650
|
+
const conversationsRef = useRef11(input.conversations);
|
|
7651
|
+
const isMountedRef = useRef11(true);
|
|
7652
|
+
const agentActivitySnapshotRef = useRef11(input.agentActivitySnapshot);
|
|
7653
|
+
const dataRef = useRef11(input.data);
|
|
7654
|
+
const selectedAgentTargetRef = useRef11(input.effectiveSelectedProviderTarget);
|
|
7655
|
+
const selectedAgentTargetIsExplicitRef = useRef11(
|
|
7643
7656
|
input.homeComposerTargetOverride ? true : input.selectedAgentTargetIsExplicit
|
|
7644
7657
|
);
|
|
7645
|
-
const agentTargetsProvidedRef =
|
|
7646
|
-
const selectedComposerTargetDataRef =
|
|
7658
|
+
const agentTargetsProvidedRef = useRef11(input.agentTargetsProvided);
|
|
7659
|
+
const selectedComposerTargetDataRef = useRef11(
|
|
7647
7660
|
input.selectedComposerTargetData
|
|
7648
7661
|
);
|
|
7649
|
-
const draftByScopeKeyRef =
|
|
7650
|
-
const draftSettingsBySessionIdRef =
|
|
7651
|
-
const onDataChangeRef =
|
|
7652
|
-
const onRememberComposerDefaultsRef =
|
|
7662
|
+
const draftByScopeKeyRef = useRef11(input.draftByScopeKey);
|
|
7663
|
+
const draftSettingsBySessionIdRef = useRef11(input.draftSettingsBySessionId);
|
|
7664
|
+
const onDataChangeRef = useRef11(input.onDataChange);
|
|
7665
|
+
const onRememberComposerDefaultsRef = useRef11(
|
|
7653
7666
|
input.onRememberComposerDefaults
|
|
7654
7667
|
);
|
|
7655
|
-
const onShowMessageRef =
|
|
7656
|
-
const handledPrefillPromptSequenceRef =
|
|
7657
|
-
const handledComposerAppendSequenceRef =
|
|
7658
|
-
const loadDraftComposerOptionsRef =
|
|
7668
|
+
const onShowMessageRef = useRef11(input.onShowMessage);
|
|
7669
|
+
const handledPrefillPromptSequenceRef = useRef11(null);
|
|
7670
|
+
const handledComposerAppendSequenceRef = useRef11(null);
|
|
7671
|
+
const loadDraftComposerOptionsRef = useRef11(() => {
|
|
7659
7672
|
});
|
|
7660
|
-
const onComposerDefaultsAuthorityReloadedRef =
|
|
7673
|
+
const onComposerDefaultsAuthorityReloadedRef = useRef11({
|
|
7661
7674
|
prepareRead: (_target, settings) => ({
|
|
7662
7675
|
force: false,
|
|
7663
7676
|
receipt: null,
|
|
@@ -7668,22 +7681,22 @@ function useAgentGUIControllerRefs(input) {
|
|
|
7668
7681
|
reloaded: () => {
|
|
7669
7682
|
}
|
|
7670
7683
|
});
|
|
7671
|
-
const conversationIdsRef =
|
|
7684
|
+
const conversationIdsRef = useRef11(
|
|
7672
7685
|
new Set(input.conversations.map((conversation) => conversation.id))
|
|
7673
7686
|
);
|
|
7674
|
-
const lastRenderStateDiagnosticKeyRef =
|
|
7675
|
-
const handledOpenSessionSequenceRef =
|
|
7676
|
-
const pendingOpenSessionRequestRef =
|
|
7677
|
-
const executePromptRef =
|
|
7687
|
+
const lastRenderStateDiagnosticKeyRef = useRef11(null);
|
|
7688
|
+
const handledOpenSessionSequenceRef = useRef11(null);
|
|
7689
|
+
const pendingOpenSessionRequestRef = useRef11(null);
|
|
7690
|
+
const executePromptRef = useRef11(() => {
|
|
7678
7691
|
});
|
|
7679
|
-
const submitPromptRef =
|
|
7692
|
+
const submitPromptRef = useRef11(() => {
|
|
7680
7693
|
});
|
|
7681
|
-
const reloadSelectedConversationRef =
|
|
7694
|
+
const reloadSelectedConversationRef = useRef11(() => {
|
|
7682
7695
|
});
|
|
7683
|
-
const syncConversationListProjectionRef =
|
|
7696
|
+
const syncConversationListProjectionRef = useRef11(async () => {
|
|
7684
7697
|
});
|
|
7685
|
-
const isComposerHomeRef =
|
|
7686
|
-
const isCreatingConversationRef =
|
|
7698
|
+
const isComposerHomeRef = useRef11(input.isComposerHome);
|
|
7699
|
+
const isCreatingConversationRef = useRef11(input.isCreatingConversation);
|
|
7687
7700
|
activeConversationIdRef.current = input.activeConversationId;
|
|
7688
7701
|
selectedProjectPathRef.current = input.selectedProjectPath;
|
|
7689
7702
|
userProjectsRef.current = input.userProjects;
|
|
@@ -7797,7 +7810,7 @@ import {
|
|
|
7797
7810
|
selectEngineSession as selectEngineSession2,
|
|
7798
7811
|
selectEngineSessionSettingsUpdate
|
|
7799
7812
|
} from "@tutti-os/agent-activity-core";
|
|
7800
|
-
import { useCallback as useCallback9, useRef as
|
|
7813
|
+
import { useCallback as useCallback9, useRef as useRef12 } from "react";
|
|
7801
7814
|
|
|
7802
7815
|
// agent-gui/agentGuiNode/model/composerModeSelection.ts
|
|
7803
7816
|
function normalizePermissionModeSelection(permissionModeId) {
|
|
@@ -7936,7 +7949,7 @@ function useAgentGUIComposerSettingsActions(input) {
|
|
|
7936
7949
|
const composerSupport = {
|
|
7937
7950
|
permissionModeChangeDeferred: input.composerSupportPermissionModeChangeDeferred
|
|
7938
7951
|
};
|
|
7939
|
-
const composerDefaultsLedgerRef =
|
|
7952
|
+
const composerDefaultsLedgerRef = useRef12(
|
|
7940
7953
|
createAgentGUIComposerDefaultsLedger()
|
|
7941
7954
|
);
|
|
7942
7955
|
const retireAcknowledgedDefaultsForRead = useCallback9(
|
|
@@ -8282,12 +8295,12 @@ function reconcileRetiredDraftMap(current, draftKey, retired) {
|
|
|
8282
8295
|
}
|
|
8283
8296
|
|
|
8284
8297
|
// agent-gui/agentGuiNode/controller/useAgentGUIContinueConversation.ts
|
|
8285
|
-
import { useCallback as useCallback10, useRef as
|
|
8298
|
+
import { useCallback as useCallback10, useRef as useRef13 } from "react";
|
|
8286
8299
|
function buildContinueInNewConversationDraft(input) {
|
|
8287
8300
|
return updateAgentComposerDraft(input.sourceDraft, { prompt: input.prompt });
|
|
8288
8301
|
}
|
|
8289
8302
|
function useAgentGUIContinueConversation(input) {
|
|
8290
|
-
const inputRef =
|
|
8303
|
+
const inputRef = useRef13(input);
|
|
8291
8304
|
inputRef.current = input;
|
|
8292
8305
|
return useCallback10(() => {
|
|
8293
8306
|
const current = inputRef.current;
|
|
@@ -9851,7 +9864,7 @@ function resolveAgentGUIInteractionTarget(interactions, requestId) {
|
|
|
9851
9864
|
import {
|
|
9852
9865
|
selectEngineSession as selectEngineSession3
|
|
9853
9866
|
} from "@tutti-os/agent-activity-core";
|
|
9854
|
-
import { useCallback as useCallback18, useRef as
|
|
9867
|
+
import { useCallback as useCallback18, useRef as useRef14 } from "react";
|
|
9855
9868
|
|
|
9856
9869
|
// agent-gui/agentGuiNode/controller/agentGuiOptimisticGoal.ts
|
|
9857
9870
|
function projectOptimisticGoalControl(currentGoal, action, objective) {
|
|
@@ -9890,7 +9903,7 @@ function unresolvedOptimisticGoalControl(optimisticGoalControl, agentSessionId,
|
|
|
9890
9903
|
|
|
9891
9904
|
// agent-gui/agentGuiNode/controller/useAgentGUIGoalControlActions.ts
|
|
9892
9905
|
function useAgentGUIGoalControlActions(input) {
|
|
9893
|
-
const requestSequenceRef =
|
|
9906
|
+
const requestSequenceRef = useRef14(0);
|
|
9894
9907
|
const beginOptimisticGoalControl = useCallback18(
|
|
9895
9908
|
(agentSessionId, action, objective, requestId, reconcileOnObjectiveMatch = false) => {
|
|
9896
9909
|
const canonicalSession = selectEngineSession3(
|
|
@@ -11607,9 +11620,9 @@ import {
|
|
|
11607
11620
|
selectEngineAvailableCommands,
|
|
11608
11621
|
selectEngineTurnsForSession
|
|
11609
11622
|
} from "@tutti-os/agent-activity-core";
|
|
11610
|
-
import { useEffect as useEffect8, useMemo as useMemo11, useRef as
|
|
11623
|
+
import { useEffect as useEffect8, useMemo as useMemo11, useRef as useRef15 } from "react";
|
|
11611
11624
|
function useAgentGUIConversationDetail(input) {
|
|
11612
|
-
const projectionConversationRef =
|
|
11625
|
+
const projectionConversationRef = useRef15(null);
|
|
11613
11626
|
const activeCanonicalLiveTurn = Boolean(
|
|
11614
11627
|
input.activeTurn && input.activeTurn.phase !== "settled"
|
|
11615
11628
|
);
|
|
@@ -11700,7 +11713,7 @@ function useAgentGUIConversationDetail(input) {
|
|
|
11700
11713
|
}
|
|
11701
11714
|
return conversationModels.conversation;
|
|
11702
11715
|
}, [conversationDetail, conversationModels.conversation]);
|
|
11703
|
-
const diagnosticKeyRef =
|
|
11716
|
+
const diagnosticKeyRef = useRef15(null);
|
|
11704
11717
|
useEffect8(() => {
|
|
11705
11718
|
if (!input.activeConversationId || !conversation) {
|
|
11706
11719
|
diagnosticKeyRef.current = null;
|
|
@@ -11792,9 +11805,9 @@ function referenceArrayEqual(left, right) {
|
|
|
11792
11805
|
}
|
|
11793
11806
|
|
|
11794
11807
|
// agent-gui/agentGuiNode/controller/useAgentGUIConversationPresentation.ts
|
|
11795
|
-
import { useEffect as useEffect9, useMemo as useMemo12, useRef as
|
|
11808
|
+
import { useEffect as useEffect9, useMemo as useMemo12, useRef as useRef16 } from "react";
|
|
11796
11809
|
function useAgentGUIConversationPresentation(input) {
|
|
11797
|
-
const visibleConversationsRef =
|
|
11810
|
+
const visibleConversationsRef = useRef16(
|
|
11798
11811
|
null
|
|
11799
11812
|
);
|
|
11800
11813
|
const conversationProjection = useMemo12(() => {
|
|
@@ -11825,7 +11838,7 @@ function useAgentGUIConversationPresentation(input) {
|
|
|
11825
11838
|
input.userProjects
|
|
11826
11839
|
]);
|
|
11827
11840
|
const visibleConversations = conversationProjection.visibleConversations;
|
|
11828
|
-
const activeConversationRef =
|
|
11841
|
+
const activeConversationRef = useRef16(
|
|
11829
11842
|
null
|
|
11830
11843
|
);
|
|
11831
11844
|
const activeConversation = useMemo12(() => {
|
|
@@ -11975,14 +11988,14 @@ function useAgentGUIConversationPresentation(input) {
|
|
|
11975
11988
|
import {
|
|
11976
11989
|
useCallback as useCallback21,
|
|
11977
11990
|
useEffect as useEffect10,
|
|
11978
|
-
useRef as
|
|
11991
|
+
useRef as useRef17
|
|
11979
11992
|
} from "react";
|
|
11980
11993
|
import {
|
|
11981
11994
|
selectEngineSession as selectEngineSession5,
|
|
11982
11995
|
selectEngineSessionDeleted
|
|
11983
11996
|
} from "@tutti-os/agent-activity-core";
|
|
11984
11997
|
function useAgentGUIProviderHome(input) {
|
|
11985
|
-
const inputRef =
|
|
11998
|
+
const inputRef = useRef17(input);
|
|
11986
11999
|
inputRef.current = input;
|
|
11987
12000
|
const resolveDefaultHomeComposerTarget = useCallback21(() => {
|
|
11988
12001
|
const current = inputRef.current;
|
|
@@ -12120,6 +12133,13 @@ function useAgentGUIProviderHome(input) {
|
|
|
12120
12133
|
[]
|
|
12121
12134
|
);
|
|
12122
12135
|
useEffect10(() => {
|
|
12136
|
+
const effectiveAgentTargetId = input.effectiveSelectedProviderTarget.agentTargetId?.trim() ?? "";
|
|
12137
|
+
if (input.activeConversationId === null && input.conversationFilter.kind === "agentTarget" && effectiveAgentTargetId && effectiveAgentTargetId !== input.conversationFilter.agentTargetId.trim()) {
|
|
12138
|
+
input.setConversationFilter({
|
|
12139
|
+
kind: "agentTarget",
|
|
12140
|
+
agentTargetId: effectiveAgentTargetId
|
|
12141
|
+
});
|
|
12142
|
+
}
|
|
12123
12143
|
if (input.activeConversationId !== null || input.conversationFilter.kind !== "all" || input.homeComposerTargetOverride !== null || agentGUINodeDataHasComposerTarget(input.data) || !input.providerReadinessGates || !input.firstReadyHomeComposerProviderTarget) {
|
|
12124
12144
|
return;
|
|
12125
12145
|
}
|
|
@@ -12142,12 +12162,13 @@ function useAgentGUIProviderHome(input) {
|
|
|
12142
12162
|
});
|
|
12143
12163
|
}, [
|
|
12144
12164
|
input.activeConversationId,
|
|
12145
|
-
input.conversationFilter
|
|
12165
|
+
input.conversationFilter,
|
|
12146
12166
|
input.data,
|
|
12147
12167
|
input.effectiveSelectedProviderTarget,
|
|
12148
12168
|
input.firstReadyHomeComposerProviderTarget,
|
|
12149
12169
|
input.homeComposerTargetOverride,
|
|
12150
12170
|
input.providerReadinessGates,
|
|
12171
|
+
input.setConversationFilter,
|
|
12151
12172
|
selectHomeComposerAgentTarget
|
|
12152
12173
|
]);
|
|
12153
12174
|
const selectConversationFilterTarget = useCallback21(
|
|
@@ -13216,7 +13237,7 @@ import { useCallback as useCallback25, useMemo as useMemo18 } from "react";
|
|
|
13216
13237
|
import { useCallback as useCallback24 } from "react";
|
|
13217
13238
|
|
|
13218
13239
|
// contexts/workspace/presentation/renderer/agentSessions/useAgentSessionPagingState.ts
|
|
13219
|
-
import { useCallback as useCallback22, useRef as
|
|
13240
|
+
import { useCallback as useCallback22, useRef as useRef18, useState as useState5 } from "react";
|
|
13220
13241
|
var EMPTY_ENTRY = {
|
|
13221
13242
|
error: null,
|
|
13222
13243
|
isLoadingMessages: false,
|
|
@@ -13224,7 +13245,7 @@ var EMPTY_ENTRY = {
|
|
|
13224
13245
|
};
|
|
13225
13246
|
function useAgentSessionPagingState() {
|
|
13226
13247
|
const [entries, setEntries] = useState5({});
|
|
13227
|
-
const entriesRef =
|
|
13248
|
+
const entriesRef = useRef18(entries);
|
|
13228
13249
|
entriesRef.current = entries;
|
|
13229
13250
|
const update = useCallback22(
|
|
13230
13251
|
(ref, updater) => {
|
|
@@ -13270,7 +13291,7 @@ function sessionKey(ref) {
|
|
|
13270
13291
|
}
|
|
13271
13292
|
|
|
13272
13293
|
// contexts/workspace/presentation/renderer/agentSessions/useAgentSessionTransport.ts
|
|
13273
|
-
import { useCallback as useCallback23, useRef as
|
|
13294
|
+
import { useCallback as useCallback23, useRef as useRef19, useState as useState6 } from "react";
|
|
13274
13295
|
var EMPTY_ENTRY2 = {
|
|
13275
13296
|
olderMessages: [],
|
|
13276
13297
|
hasOlderMessages: false,
|
|
@@ -13278,7 +13299,7 @@ var EMPTY_ENTRY2 = {
|
|
|
13278
13299
|
};
|
|
13279
13300
|
function useAgentSessionTransport() {
|
|
13280
13301
|
const [entries, setEntries] = useState6({});
|
|
13281
|
-
const entriesRef =
|
|
13302
|
+
const entriesRef = useRef19(entries);
|
|
13282
13303
|
entriesRef.current = entries;
|
|
13283
13304
|
const update = useCallback23(
|
|
13284
13305
|
(ref, updater) => {
|
|
@@ -13559,7 +13580,7 @@ function useAgentGUISessionDetailTransport(input) {
|
|
|
13559
13580
|
// agent-gui/agentGuiNode/controller/useAgentGUILocalState.ts
|
|
13560
13581
|
import {
|
|
13561
13582
|
useCallback as useCallback26,
|
|
13562
|
-
useRef as
|
|
13583
|
+
useRef as useRef20,
|
|
13563
13584
|
useState as useState7
|
|
13564
13585
|
} from "react";
|
|
13565
13586
|
function useAgentGUILocalState({
|
|
@@ -13587,7 +13608,7 @@ function useAgentGUILocalState({
|
|
|
13587
13608
|
data.lastActiveAgentSessionId === null
|
|
13588
13609
|
);
|
|
13589
13610
|
const [draftByScopeKey, setDraftByScopeKey] = useState7({});
|
|
13590
|
-
const submittedDraftSnapshotsRef =
|
|
13611
|
+
const submittedDraftSnapshotsRef = useRef20({});
|
|
13591
13612
|
const [draftSettingsBySessionId, setDraftSettingsBySessionId] = useState7({});
|
|
13592
13613
|
const [isLoadingMessages, setIsLoadingMessages] = useState7(false);
|
|
13593
13614
|
const [isDeletingConversation, setIsDeletingConversation] = useState7(false);
|
|
@@ -13601,7 +13622,7 @@ function useAgentGUILocalState({
|
|
|
13601
13622
|
const [detailError, setDetailError] = useState7(null);
|
|
13602
13623
|
const [goalClearNoticeSequence, setGoalClearNoticeSequence] = useState7(0);
|
|
13603
13624
|
const [optimisticGoalControl, setOptimisticGoalControl] = useState7(null);
|
|
13604
|
-
const railRevealRevisionRef =
|
|
13625
|
+
const railRevealRevisionRef = useRef20(0);
|
|
13605
13626
|
const [railRevealRequest, setRailRevealRequest] = useState7(null);
|
|
13606
13627
|
const clearRailRevealRequest = useCallback26(() => {
|
|
13607
13628
|
setRailRevealRequest(null);
|
|
@@ -13666,7 +13687,7 @@ import {
|
|
|
13666
13687
|
selectTuttiModeActivationPresentation,
|
|
13667
13688
|
tuttiModeActivationPresentationsEqual
|
|
13668
13689
|
} from "@tutti-os/agent-activity-core";
|
|
13669
|
-
import { useCallback as useCallback27, useMemo as useMemo19, useRef as
|
|
13690
|
+
import { useCallback as useCallback27, useMemo as useMemo19, useRef as useRef21 } from "react";
|
|
13670
13691
|
function resolveAgentGUITuttiModeDraftKey(nodeId) {
|
|
13671
13692
|
return `agent-gui:${nodeId?.trim() || "default"}:tutti-mode:home`;
|
|
13672
13693
|
}
|
|
@@ -13676,7 +13697,7 @@ function useAgentGUITuttiModeActivation({
|
|
|
13676
13697
|
engine,
|
|
13677
13698
|
workspaceId
|
|
13678
13699
|
}) {
|
|
13679
|
-
const commandSequenceRef =
|
|
13700
|
+
const commandSequenceRef = useRef21(0);
|
|
13680
13701
|
const presentation = useEngineSelector(
|
|
13681
13702
|
engine,
|
|
13682
13703
|
useCallback27(
|
|
@@ -13919,9 +13940,9 @@ function useAgentGUINodeController({
|
|
|
13919
13940
|
)
|
|
13920
13941
|
)
|
|
13921
13942
|
);
|
|
13922
|
-
const updateComposerSettingsRef =
|
|
13943
|
+
const updateComposerSettingsRef = useRef22(() => {
|
|
13923
13944
|
});
|
|
13924
|
-
const planActionsRef =
|
|
13945
|
+
const planActionsRef = useRef22({ implement: () => {
|
|
13925
13946
|
}, feedback: () => {
|
|
13926
13947
|
}, skip: () => {
|
|
13927
13948
|
} });
|
|
@@ -13940,7 +13961,7 @@ function useAgentGUINodeController({
|
|
|
13940
13961
|
defaultReasoningEffort,
|
|
13941
13962
|
providerComposerOptions
|
|
13942
13963
|
} = composerCapabilities;
|
|
13943
|
-
const planImplementationTurnIdRef =
|
|
13964
|
+
const planImplementationTurnIdRef = useRef22(null);
|
|
13944
13965
|
const accountProfilesByUserId = useAccountStore(
|
|
13945
13966
|
(state) => state.profilesByUserId
|
|
13946
13967
|
);
|
|
@@ -15028,7 +15049,7 @@ import {
|
|
|
15028
15049
|
useCallback as useCallback66,
|
|
15029
15050
|
useEffect as useEffect38,
|
|
15030
15051
|
useMemo as useMemo47,
|
|
15031
|
-
useRef as
|
|
15052
|
+
useRef as useRef60,
|
|
15032
15053
|
useState as useState53
|
|
15033
15054
|
} from "react";
|
|
15034
15055
|
import { TooltipProvider as TooltipProvider7 } from "@tutti-os/ui-system";
|
|
@@ -15247,7 +15268,7 @@ var styles = {
|
|
|
15247
15268
|
var AgentGUINode_styles_default = styles;
|
|
15248
15269
|
|
|
15249
15270
|
// agent-gui/agentGuiNode/view/agentGUIViewUtils.ts
|
|
15250
|
-
import { useCallback as useCallback30, useLayoutEffect, useMemo as useMemo22, useRef as
|
|
15271
|
+
import { useCallback as useCallback30, useLayoutEffect, useMemo as useMemo22, useRef as useRef23 } from "react";
|
|
15251
15272
|
function objectRecord(value) {
|
|
15252
15273
|
return value && typeof value === "object" && !Array.isArray(value) ? value : null;
|
|
15253
15274
|
}
|
|
@@ -15265,14 +15286,14 @@ function stringValue3(value) {
|
|
|
15265
15286
|
return typeof value === "string" ? value : "";
|
|
15266
15287
|
}
|
|
15267
15288
|
function useStableEventCallback(callback) {
|
|
15268
|
-
const callbackRef =
|
|
15289
|
+
const callbackRef = useRef23(callback);
|
|
15269
15290
|
useLayoutEffect(() => {
|
|
15270
15291
|
callbackRef.current = callback;
|
|
15271
15292
|
}, [callback]);
|
|
15272
15293
|
return useCallback30((...args) => callbackRef.current(...args), []);
|
|
15273
15294
|
}
|
|
15274
15295
|
function useOptionalStableEventCallback(callback) {
|
|
15275
|
-
const callbackRef =
|
|
15296
|
+
const callbackRef = useRef23(callback);
|
|
15276
15297
|
useLayoutEffect(() => {
|
|
15277
15298
|
callbackRef.current = callback;
|
|
15278
15299
|
}, [callback]);
|
|
@@ -15641,7 +15662,7 @@ import {
|
|
|
15641
15662
|
memo as memo3,
|
|
15642
15663
|
useCallback as useCallback50,
|
|
15643
15664
|
useMemo as useMemo37,
|
|
15644
|
-
useRef as
|
|
15665
|
+
useRef as useRef46,
|
|
15645
15666
|
useState as useState33
|
|
15646
15667
|
} from "react";
|
|
15647
15668
|
import { Tooltip as Tooltip9, TooltipContent as TooltipContent9, TooltipTrigger as TooltipTrigger9 } from "@tutti-os/ui-system";
|
|
@@ -17216,7 +17237,7 @@ import {
|
|
|
17216
17237
|
useCallback as useCallback31,
|
|
17217
17238
|
useEffect as useEffect15,
|
|
17218
17239
|
useImperativeHandle,
|
|
17219
|
-
useRef as
|
|
17240
|
+
useRef as useRef24
|
|
17220
17241
|
} from "react";
|
|
17221
17242
|
import {
|
|
17222
17243
|
motion as motion2,
|
|
@@ -17247,7 +17268,7 @@ var CastIcon = forwardRef2(
|
|
|
17247
17268
|
}, ref) => {
|
|
17248
17269
|
const controls = useAnimation();
|
|
17249
17270
|
const reduceMotion = useReducedMotion();
|
|
17250
|
-
const isControlledRef =
|
|
17271
|
+
const isControlledRef = useRef24(false);
|
|
17251
17272
|
const startAnimation = useCallback31(() => {
|
|
17252
17273
|
if (reduceMotion) {
|
|
17253
17274
|
return;
|
|
@@ -17575,7 +17596,7 @@ function AgentSessionChrome({
|
|
|
17575
17596
|
}
|
|
17576
17597
|
|
|
17577
17598
|
// agent-gui/agentGuiNode/AgentComposer.tsx
|
|
17578
|
-
import { useCallback as useCallback47, useEffect as useEffect27, useRef as
|
|
17599
|
+
import { useCallback as useCallback47, useEffect as useEffect27, useRef as useRef43, useState as useState29 } from "react";
|
|
17579
17600
|
import { repairMentionPaletteHighlight } from "@tutti-os/ui-rich-text/at-panel";
|
|
17580
17601
|
|
|
17581
17602
|
// agent-gui/agentGuiNode/AgentSlashStatusPanel.tsx
|
|
@@ -17720,7 +17741,7 @@ import { flushSync as flushSync3 } from "react-dom";
|
|
|
17720
17741
|
import {
|
|
17721
17742
|
startTransition,
|
|
17722
17743
|
useCallback as useCallback32,
|
|
17723
|
-
useRef as
|
|
17744
|
+
useRef as useRef25
|
|
17724
17745
|
} from "react";
|
|
17725
17746
|
|
|
17726
17747
|
// agent-gui/agentGuiNode/model/agentComposerDraftFileReconciliation.ts
|
|
@@ -17800,7 +17821,7 @@ function agentComposerDevConsoleDiagnosticSinkEnabled(runtime) {
|
|
|
17800
17821
|
|
|
17801
17822
|
// agent-gui/agentGuiNode/composer/useComposerDraftAttachments.ts
|
|
17802
17823
|
function useStableEventCallback2(callback) {
|
|
17803
|
-
const callbackRef =
|
|
17824
|
+
const callbackRef = useRef25(callback);
|
|
17804
17825
|
callbackRef.current = callback;
|
|
17805
17826
|
return useCallback32((...args) => callbackRef.current(...args), []);
|
|
17806
17827
|
}
|
|
@@ -17832,7 +17853,7 @@ function useComposerDraftAttachments({
|
|
|
17832
17853
|
}) {
|
|
17833
17854
|
const agentHostApi = useOptionalAgentHostApi();
|
|
17834
17855
|
const agentActivityRuntime = useOptionalAgentActivityRuntime();
|
|
17835
|
-
const activeDraftScopeKeyRef =
|
|
17856
|
+
const activeDraftScopeKeyRef = useRef25(draftScopeKey);
|
|
17836
17857
|
activeDraftScopeKeyRef.current = draftScopeKey;
|
|
17837
17858
|
const reportContentEntered = useStableEventCallback2(
|
|
17838
17859
|
(contentType) => {
|
|
@@ -17865,7 +17886,7 @@ function useComposerDraftAttachments({
|
|
|
17865
17886
|
return next;
|
|
17866
17887
|
}
|
|
17867
17888
|
);
|
|
17868
|
-
const openReferencesForEntityRef =
|
|
17889
|
+
const openReferencesForEntityRef = useRef25(null);
|
|
17869
17890
|
const handleDraftChange = useStableEventCallback2(
|
|
17870
17891
|
(nextDraft) => {
|
|
17871
17892
|
if (isGoalModeActive) {
|
|
@@ -18431,7 +18452,7 @@ import {
|
|
|
18431
18452
|
useCallback as useCallback33,
|
|
18432
18453
|
useLayoutEffect as useLayoutEffect2,
|
|
18433
18454
|
useMemo as useMemo23,
|
|
18434
|
-
useRef as
|
|
18455
|
+
useRef as useRef26
|
|
18435
18456
|
} from "react";
|
|
18436
18457
|
var DOCK_COMPOSER_INPUT_MIN_HEIGHT = 56;
|
|
18437
18458
|
var DOCK_COMPOSER_TEXT_LINE_HEIGHT = 24;
|
|
@@ -18471,7 +18492,7 @@ function useComposerLayout({
|
|
|
18471
18492
|
draftImages,
|
|
18472
18493
|
draftLargeTexts
|
|
18473
18494
|
}) {
|
|
18474
|
-
const composerMeasurementFrameRef =
|
|
18495
|
+
const composerMeasurementFrameRef = useRef26(null);
|
|
18475
18496
|
const labels = { promptTipsPrefix };
|
|
18476
18497
|
const showEdgeGlow = isHeroLayout && !inputDisabled;
|
|
18477
18498
|
const showPromptTips = isHeroLayout && promptTips.length > 0;
|
|
@@ -18964,7 +18985,7 @@ import {
|
|
|
18964
18985
|
import {
|
|
18965
18986
|
useCallback as useCallback34,
|
|
18966
18987
|
useEffect as useEffect16,
|
|
18967
|
-
useRef as
|
|
18988
|
+
useRef as useRef27,
|
|
18968
18989
|
useState as useState10
|
|
18969
18990
|
} from "react";
|
|
18970
18991
|
import {
|
|
@@ -19013,14 +19034,14 @@ function AgentUsageChip({
|
|
|
19013
19034
|
}) {
|
|
19014
19035
|
"use memo";
|
|
19015
19036
|
const [usagePopoverOpen, setUsagePopoverOpen] = useState10(false);
|
|
19016
|
-
const usagePopoverHoverTimerRef =
|
|
19017
|
-
const usagePopoverContentRef =
|
|
19037
|
+
const usagePopoverHoverTimerRef = useRef27(null);
|
|
19038
|
+
const usagePopoverContentRef = useRef27(null);
|
|
19018
19039
|
const clampedPercent = Math.max(0, Math.min(100, percentUsed));
|
|
19019
19040
|
const chipLabel = labels.usageChipLabel({ percent: clampedPercent });
|
|
19020
19041
|
const showTokens = usedTokens !== null && totalTokens !== null;
|
|
19021
19042
|
const usageLevel = agentUsageChipLevel(clampedPercent);
|
|
19022
19043
|
const ringColor = agentUsageRingColor(usageLevel);
|
|
19023
|
-
const usagePopoverCloseTimerRef =
|
|
19044
|
+
const usagePopoverCloseTimerRef = useRef27(null);
|
|
19024
19045
|
const clearUsagePopoverHoverTimer = useCallback34(() => {
|
|
19025
19046
|
if (usagePopoverHoverTimerRef.current) {
|
|
19026
19047
|
clearTimeout(usagePopoverHoverTimerRef.current);
|
|
@@ -19402,10 +19423,10 @@ function useMentionPaletteFrame(inputShellRef, showFileMentionPalette) {
|
|
|
19402
19423
|
import {
|
|
19403
19424
|
useCallback as useCallback36,
|
|
19404
19425
|
useMemo as useMemo26,
|
|
19405
|
-
useRef as
|
|
19426
|
+
useRef as useRef28
|
|
19406
19427
|
} from "react";
|
|
19407
19428
|
function useStableEventCallback3(callback) {
|
|
19408
|
-
const callbackRef =
|
|
19429
|
+
const callbackRef = useRef28(callback);
|
|
19409
19430
|
callbackRef.current = callback;
|
|
19410
19431
|
return useCallback36((...args) => callbackRef.current(...args), []);
|
|
19411
19432
|
}
|
|
@@ -19906,7 +19927,7 @@ function useComposerSlashActions(input) {
|
|
|
19906
19927
|
import {
|
|
19907
19928
|
useCallback as useCallback37,
|
|
19908
19929
|
useEffect as useEffect17,
|
|
19909
|
-
useRef as
|
|
19930
|
+
useRef as useRef29
|
|
19910
19931
|
} from "react";
|
|
19911
19932
|
import {
|
|
19912
19933
|
createMentionPaletteStateAdapter,
|
|
@@ -19926,7 +19947,7 @@ function isAgentRichTextImeComposing(event) {
|
|
|
19926
19947
|
|
|
19927
19948
|
// agent-gui/agentGuiNode/composer/useComposerMentionActions.ts
|
|
19928
19949
|
function useStableEventCallback4(callback) {
|
|
19929
|
-
const callbackRef =
|
|
19950
|
+
const callbackRef = useRef29(callback);
|
|
19930
19951
|
callbackRef.current = callback;
|
|
19931
19952
|
return useCallback37((...args) => callbackRef.current(...args), []);
|
|
19932
19953
|
}
|
|
@@ -21184,7 +21205,7 @@ import {
|
|
|
21184
21205
|
import {
|
|
21185
21206
|
Component as Component2,
|
|
21186
21207
|
useLayoutEffect as useLayoutEffect4,
|
|
21187
|
-
useRef as
|
|
21208
|
+
useRef as useRef30,
|
|
21188
21209
|
useState as useState15
|
|
21189
21210
|
} from "react";
|
|
21190
21211
|
import { ChevronRight } from "lucide-react";
|
|
@@ -21380,9 +21401,9 @@ function AgentQueuedPromptPanel({
|
|
|
21380
21401
|
"use memo";
|
|
21381
21402
|
const runtime = useOptionalAgentActivityRuntime();
|
|
21382
21403
|
const [isExpanded, setIsExpanded] = useState15(false);
|
|
21383
|
-
const singlePromptTextRef =
|
|
21384
|
-
const queuedPromptListRef =
|
|
21385
|
-
const pointerHandledEditPromptIdRef =
|
|
21404
|
+
const singlePromptTextRef = useRef30(null);
|
|
21405
|
+
const queuedPromptListRef = useRef30(null);
|
|
21406
|
+
const pointerHandledEditPromptIdRef = useRef30(null);
|
|
21386
21407
|
const [isSinglePromptOverflowing, setIsSinglePromptOverflowing] = useState15(false);
|
|
21387
21408
|
const [expandedListMaxHeightPx, setExpandedListMaxHeightPx] = useState15(280);
|
|
21388
21409
|
const singlePromptHasImages = queuedPrompts.length === 1 && queuedPromptImages(queuedPrompts[0]).length > 0;
|
|
@@ -23271,7 +23292,7 @@ import {
|
|
|
23271
23292
|
useCallback as useCallback42,
|
|
23272
23293
|
useEffect as useEffect22,
|
|
23273
23294
|
useMemo as useMemo29,
|
|
23274
|
-
useRef as
|
|
23295
|
+
useRef as useRef32,
|
|
23275
23296
|
useState as useState19
|
|
23276
23297
|
} from "react";
|
|
23277
23298
|
import { useEditor } from "@tiptap/react";
|
|
@@ -23868,7 +23889,7 @@ function useAgentRichTextEditorHandle(input) {
|
|
|
23868
23889
|
// agent-gui/agentGuiNode/agentRichText/AgentRichTextEditorSurface.tsx
|
|
23869
23890
|
import {
|
|
23870
23891
|
useCallback as useCallback41,
|
|
23871
|
-
useRef as
|
|
23892
|
+
useRef as useRef31
|
|
23872
23893
|
} from "react";
|
|
23873
23894
|
import { createPortal as createPortal2 } from "react-dom";
|
|
23874
23895
|
import { EditorContent } from "@tiptap/react";
|
|
@@ -23956,7 +23977,7 @@ function AgentRichTextContextMenuButton({
|
|
|
23956
23977
|
label,
|
|
23957
23978
|
onSelect
|
|
23958
23979
|
}) {
|
|
23959
|
-
const selectionStartedRef =
|
|
23980
|
+
const selectionStartedRef = useRef31(false);
|
|
23960
23981
|
const select = useCallback41(() => {
|
|
23961
23982
|
if (disabled || selectionStartedRef.current) return;
|
|
23962
23983
|
selectionStartedRef.current = true;
|
|
@@ -24095,38 +24116,38 @@ var AgentRichTextEditor = forwardRef3(function AgentRichTextEditor2({
|
|
|
24095
24116
|
}, ref) {
|
|
24096
24117
|
"use memo";
|
|
24097
24118
|
const { t } = useTranslation();
|
|
24098
|
-
const lastEmittedPromptRef =
|
|
24099
|
-
const controlledValueTrackerRef =
|
|
24119
|
+
const lastEmittedPromptRef = useRef32(value);
|
|
24120
|
+
const controlledValueTrackerRef = useRef32(
|
|
24100
24121
|
createAgentRichTextControlledValueTracker(contentScopeKey)
|
|
24101
24122
|
);
|
|
24102
|
-
const editorRef =
|
|
24103
|
-
const onChangeRef =
|
|
24104
|
-
const onContentLayoutInvalidatedRef =
|
|
24105
|
-
const onFocusRef =
|
|
24106
|
-
const onUserContentChangeRef =
|
|
24107
|
-
const pendingFocusMethodRef =
|
|
24108
|
-
const onSubmitRef =
|
|
24109
|
-
const onSubmitGuidanceRef =
|
|
24110
|
-
const onKeyDownForPaletteRef =
|
|
24111
|
-
const onFileMentionSuggestionChangeRef =
|
|
24123
|
+
const editorRef = useRef32(null);
|
|
24124
|
+
const onChangeRef = useRef32(onChange);
|
|
24125
|
+
const onContentLayoutInvalidatedRef = useRef32(onContentLayoutInvalidated);
|
|
24126
|
+
const onFocusRef = useRef32(onFocus);
|
|
24127
|
+
const onUserContentChangeRef = useRef32(onUserContentChange);
|
|
24128
|
+
const pendingFocusMethodRef = useRef32(null);
|
|
24129
|
+
const onSubmitRef = useRef32(onSubmit);
|
|
24130
|
+
const onSubmitGuidanceRef = useRef32(onSubmitGuidance);
|
|
24131
|
+
const onKeyDownForPaletteRef = useRef32(onKeyDownForPalette);
|
|
24132
|
+
const onFileMentionSuggestionChangeRef = useRef32(
|
|
24112
24133
|
onFileMentionSuggestionChange
|
|
24113
24134
|
);
|
|
24114
|
-
const onFileMentionSuggestionKeyDownRef =
|
|
24135
|
+
const onFileMentionSuggestionKeyDownRef = useRef32(
|
|
24115
24136
|
onFileMentionSuggestionKeyDown
|
|
24116
24137
|
);
|
|
24117
|
-
const onLinkClickRef =
|
|
24118
|
-
const onPromptImagesUnsupportedRef =
|
|
24119
|
-
const onPasteImagesRef =
|
|
24120
|
-
const onPasteLargeTextRef =
|
|
24121
|
-
const onPasteFilesRef =
|
|
24122
|
-
const onDropFilesRef =
|
|
24123
|
-
const promptImagesSupportedRef =
|
|
24124
|
-
const placeholderRef =
|
|
24125
|
-
const removeMentionLabelRef =
|
|
24126
|
-
const availableSkillsRef =
|
|
24127
|
-
const availableCapabilitiesRef =
|
|
24128
|
-
const suppressPastedAtSuggestionRef =
|
|
24129
|
-
const scrollFrameRef =
|
|
24138
|
+
const onLinkClickRef = useRef32(onLinkClick);
|
|
24139
|
+
const onPromptImagesUnsupportedRef = useRef32(onPromptImagesUnsupported);
|
|
24140
|
+
const onPasteImagesRef = useRef32(onPasteImages);
|
|
24141
|
+
const onPasteLargeTextRef = useRef32(onPasteLargeText);
|
|
24142
|
+
const onPasteFilesRef = useRef32(onPasteFiles);
|
|
24143
|
+
const onDropFilesRef = useRef32(onDropFiles);
|
|
24144
|
+
const promptImagesSupportedRef = useRef32(promptImagesSupported);
|
|
24145
|
+
const placeholderRef = useRef32(placeholder);
|
|
24146
|
+
const removeMentionLabelRef = useRef32(removeMentionLabel);
|
|
24147
|
+
const availableSkillsRef = useRef32(availableSkills);
|
|
24148
|
+
const availableCapabilitiesRef = useRef32(availableCapabilities);
|
|
24149
|
+
const suppressPastedAtSuggestionRef = useRef32(false);
|
|
24150
|
+
const scrollFrameRef = useRef32(null);
|
|
24130
24151
|
const [contextMenu, setContextMenu] = useState19(null);
|
|
24131
24152
|
const closeContextMenu = useCallback42(() => {
|
|
24132
24153
|
setContextMenu(null);
|
|
@@ -24692,7 +24713,7 @@ function AgentReferenceProvenanceFilterControl({
|
|
|
24692
24713
|
}
|
|
24693
24714
|
|
|
24694
24715
|
// agent-gui/agentGuiNode/AgentSlashCommandPalette.tsx
|
|
24695
|
-
import { Fragment as Fragment10, useEffect as useEffect23, useRef as
|
|
24716
|
+
import { Fragment as Fragment10, useEffect as useEffect23, useRef as useRef33 } from "react";
|
|
24696
24717
|
import { Spinner as Spinner3 } from "@tutti-os/ui-system";
|
|
24697
24718
|
import {
|
|
24698
24719
|
Globe,
|
|
@@ -24739,7 +24760,7 @@ function AgentSlashCommandPalette({
|
|
|
24739
24760
|
onSelectSkill
|
|
24740
24761
|
}) {
|
|
24741
24762
|
"use memo";
|
|
24742
|
-
const highlightedOptionRef =
|
|
24763
|
+
const highlightedOptionRef = useRef33(null);
|
|
24743
24764
|
useEffect23(() => {
|
|
24744
24765
|
highlightedOptionRef.current?.scrollIntoView({ block: "nearest" });
|
|
24745
24766
|
}, [highlightedIndex]);
|
|
@@ -24947,7 +24968,7 @@ function slashPaletteEntryIcon(entry) {
|
|
|
24947
24968
|
}
|
|
24948
24969
|
|
|
24949
24970
|
// agent-gui/agentGuiNode/AgentReviewPickerPanel.tsx
|
|
24950
|
-
import { useCallback as useCallback43, useEffect as useEffect24, useMemo as useMemo30, useRef as
|
|
24971
|
+
import { useCallback as useCallback43, useEffect as useEffect24, useMemo as useMemo30, useRef as useRef34, useState as useState20 } from "react";
|
|
24951
24972
|
import { menuItemClassName } from "@tutti-os/ui-system";
|
|
24952
24973
|
|
|
24953
24974
|
// agent-gui/agentGuiNode/AgentReviewBranchController.ts
|
|
@@ -25065,9 +25086,9 @@ function AgentReviewPickerPanel({
|
|
|
25065
25086
|
const [stage, setStage] = useState20("root");
|
|
25066
25087
|
const [query, setQuery] = useState20("");
|
|
25067
25088
|
const [highlightedIndex, setHighlightedIndex] = useState20(0);
|
|
25068
|
-
const searchInputRef =
|
|
25069
|
-
const highlightedOptionRef =
|
|
25070
|
-
const reviewBranchControllerRef =
|
|
25089
|
+
const searchInputRef = useRef34(null);
|
|
25090
|
+
const highlightedOptionRef = useRef34(null);
|
|
25091
|
+
const reviewBranchControllerRef = useRef34(
|
|
25071
25092
|
null
|
|
25072
25093
|
);
|
|
25073
25094
|
const [branchState, setBranchState] = useState20({
|
|
@@ -25312,7 +25333,7 @@ import {
|
|
|
25312
25333
|
useEffect as useEffect25,
|
|
25313
25334
|
useLayoutEffect as useLayoutEffect5,
|
|
25314
25335
|
useMemo as useMemo31,
|
|
25315
|
-
useRef as
|
|
25336
|
+
useRef as useRef35,
|
|
25316
25337
|
useState as useState21
|
|
25317
25338
|
} from "react";
|
|
25318
25339
|
import { createPortal as createPortal3 } from "react-dom";
|
|
@@ -25459,7 +25480,7 @@ var ComposerFloatingMenuSurface = forwardRef4(function ComposerFloatingMenuSurfa
|
|
|
25459
25480
|
surfaceRef,
|
|
25460
25481
|
testId
|
|
25461
25482
|
}, forwardedRef) {
|
|
25462
|
-
const localSurfaceRef =
|
|
25483
|
+
const localSurfaceRef = useRef35(null);
|
|
25463
25484
|
const frame = useComposerAnchoredMenuFrame({
|
|
25464
25485
|
anchorRef,
|
|
25465
25486
|
maxHeight,
|
|
@@ -26402,7 +26423,7 @@ function RemovableBadgeIcon({ icon }) {
|
|
|
26402
26423
|
}
|
|
26403
26424
|
|
|
26404
26425
|
// agent-gui/agentGuiNode/composer/quickPrompts/AgentQuickPromptPopover.tsx
|
|
26405
|
-
import { useId as useId2, useRef as
|
|
26426
|
+
import { useId as useId2, useRef as useRef39, useState as useState25 } from "react";
|
|
26406
26427
|
import {
|
|
26407
26428
|
Button as Button6,
|
|
26408
26429
|
ConfirmationDialog as ConfirmationDialog2,
|
|
@@ -26429,7 +26450,7 @@ import {
|
|
|
26429
26450
|
} from "@tutti-os/ui-system/icons";
|
|
26430
26451
|
|
|
26431
26452
|
// agent-gui/agentGuiNode/composer/quickPrompts/AgentQuickPromptEditorDialog.tsx
|
|
26432
|
-
import { useRef as
|
|
26453
|
+
import { useRef as useRef36, useState as useState24 } from "react";
|
|
26433
26454
|
import {
|
|
26434
26455
|
Button as Button4,
|
|
26435
26456
|
Dialog,
|
|
@@ -26454,7 +26475,7 @@ function AgentQuickPromptEditorDialog({
|
|
|
26454
26475
|
() => controller.initialDraft ?? promptDraft(source)
|
|
26455
26476
|
);
|
|
26456
26477
|
const [validationError, setValidationError] = useState24(null);
|
|
26457
|
-
const cancelRequestedOnPointerDownRef =
|
|
26478
|
+
const cancelRequestedOnPointerDownRef = useRef36(false);
|
|
26458
26479
|
const submit = async () => {
|
|
26459
26480
|
const error = validateDraft(draft, labels);
|
|
26460
26481
|
if (error) {
|
|
@@ -26596,11 +26617,11 @@ function validateDraft(draft, labels) {
|
|
|
26596
26617
|
}
|
|
26597
26618
|
|
|
26598
26619
|
// agent-gui/agentGuiNode/composer/quickPrompts/AgentQuickPromptList.tsx
|
|
26599
|
-
import { useMemo as useMemo32, useRef as
|
|
26620
|
+
import { useMemo as useMemo32, useRef as useRef38 } from "react";
|
|
26600
26621
|
import { Sortable, SortableContent, SortableItem } from "@tutti-os/ui-system";
|
|
26601
26622
|
|
|
26602
26623
|
// agent-gui/agentGuiNode/composer/quickPrompts/AgentQuickPromptRow.tsx
|
|
26603
|
-
import { useRef as
|
|
26624
|
+
import { useRef as useRef37 } from "react";
|
|
26604
26625
|
import {
|
|
26605
26626
|
BareIconButton,
|
|
26606
26627
|
Button as Button5,
|
|
@@ -26711,7 +26732,7 @@ function AgentQuickPromptRow({
|
|
|
26711
26732
|
] });
|
|
26712
26733
|
}
|
|
26713
26734
|
function usePrimaryPointerAction(action) {
|
|
26714
|
-
const requestedOnPointerDownRef =
|
|
26735
|
+
const requestedOnPointerDownRef = useRef37(false);
|
|
26715
26736
|
return {
|
|
26716
26737
|
onPointerDown: (event) => {
|
|
26717
26738
|
if (event.button !== 0) return;
|
|
@@ -26739,7 +26760,7 @@ function AgentQuickPromptList({
|
|
|
26739
26760
|
onSelect,
|
|
26740
26761
|
rowRefs
|
|
26741
26762
|
}) {
|
|
26742
|
-
const handleRefs =
|
|
26763
|
+
const handleRefs = useRef38(/* @__PURE__ */ new Map());
|
|
26743
26764
|
const { filteredPrompts, labels, snapshot } = controller;
|
|
26744
26765
|
const promptsById = useMemo32(
|
|
26745
26766
|
() => new Map(filteredPrompts.map((prompt) => [prompt.id, prompt])),
|
|
@@ -26859,12 +26880,12 @@ function AgentQuickPromptPopover({
|
|
|
26859
26880
|
controller,
|
|
26860
26881
|
disabled
|
|
26861
26882
|
}) {
|
|
26862
|
-
const searchRef =
|
|
26863
|
-
const rowRefs =
|
|
26864
|
-
const firstTemplateRef =
|
|
26865
|
-
const preserveExternalFocusRef =
|
|
26866
|
-
const createRequestedOnPointerDownRef =
|
|
26867
|
-
const templateRequestedOnPointerDownRef =
|
|
26883
|
+
const searchRef = useRef39(null);
|
|
26884
|
+
const rowRefs = useRef39(/* @__PURE__ */ new Map());
|
|
26885
|
+
const firstTemplateRef = useRef39(null);
|
|
26886
|
+
const preserveExternalFocusRef = useRef39(false);
|
|
26887
|
+
const createRequestedOnPointerDownRef = useRef39(false);
|
|
26888
|
+
const templateRequestedOnPointerDownRef = useRef39(false);
|
|
26868
26889
|
const [view, setView] = useState25("prompts");
|
|
26869
26890
|
const [sortingState, setSortingState] = useState25({
|
|
26870
26891
|
isPopoverOpen: controller.isPopoverOpen,
|
|
@@ -27310,7 +27331,7 @@ function TemplateEntry({
|
|
|
27310
27331
|
);
|
|
27311
27332
|
}
|
|
27312
27333
|
function usePrimaryPointerAction2(action) {
|
|
27313
|
-
const actionRequestedOnPointerDownRef =
|
|
27334
|
+
const actionRequestedOnPointerDownRef = useRef39(false);
|
|
27314
27335
|
return {
|
|
27315
27336
|
onPointerDown: (event) => {
|
|
27316
27337
|
if (event.button !== 0) return;
|
|
@@ -27929,7 +27950,7 @@ function AgentComposerView(input) {
|
|
|
27929
27950
|
}
|
|
27930
27951
|
|
|
27931
27952
|
// agent-gui/agentGuiNode/composer/useAgentMentionSearchController.ts
|
|
27932
|
-
import { useEffect as useEffect26, useMemo as useMemo33, useRef as
|
|
27953
|
+
import { useEffect as useEffect26, useMemo as useMemo33, useRef as useRef40, useState as useState26 } from "react";
|
|
27933
27954
|
import { useRichTextMentionService } from "@tutti-os/ui-rich-text/editor";
|
|
27934
27955
|
var EMPTY_AGENT_CONTEXT_MENTION_PROVIDERS = [];
|
|
27935
27956
|
function useAgentMentionSearchController(referenceProvenanceFilters) {
|
|
@@ -27939,7 +27960,7 @@ function useAgentMentionSearchController(referenceProvenanceFilters) {
|
|
|
27939
27960
|
[mentionService]
|
|
27940
27961
|
);
|
|
27941
27962
|
const [mentionSearchState, setMentionSearchState] = useState26(INITIAL_AGENT_MENTION_SEARCH_STATE);
|
|
27942
|
-
const mentionControllerRef =
|
|
27963
|
+
const mentionControllerRef = useRef40(
|
|
27943
27964
|
null
|
|
27944
27965
|
);
|
|
27945
27966
|
const sessionProvenanceFilter = referenceProvenanceFilters?.byFilter.session.snapshot.value ?? null;
|
|
@@ -28001,7 +28022,7 @@ var INITIAL_AGENT_MENTION_SEARCH_STATE = {
|
|
|
28001
28022
|
};
|
|
28002
28023
|
|
|
28003
28024
|
// agent-gui/agentGuiNode/composer/quickPrompts/useAgentQuickPromptLibrary.ts
|
|
28004
|
-
import { useCallback as useCallback45, useMemo as useMemo34, useRef as
|
|
28025
|
+
import { useCallback as useCallback45, useMemo as useMemo34, useRef as useRef41, useState as useState27 } from "react";
|
|
28005
28026
|
var unavailableSnapshot = {
|
|
28006
28027
|
enabled: false,
|
|
28007
28028
|
status: "idle",
|
|
@@ -28024,7 +28045,7 @@ function useAgentQuickPromptLibrary(input) {
|
|
|
28024
28045
|
selectQuickPromptSnapshot
|
|
28025
28046
|
);
|
|
28026
28047
|
const [mode, setMode] = useState27("closed");
|
|
28027
|
-
const modeRef =
|
|
28048
|
+
const modeRef = useRef41(mode);
|
|
28028
28049
|
modeRef.current = mode;
|
|
28029
28050
|
const [searchQuery, setSearchQuery] = useState27("");
|
|
28030
28051
|
const [selectedPrompt, setSelectedPrompt] = useState27(null);
|
|
@@ -28038,7 +28059,7 @@ function useAgentQuickPromptLibrary(input) {
|
|
|
28038
28059
|
const capabilityAvailable = Boolean(quickPrompts && snapshot.enabled);
|
|
28039
28060
|
const disclosureAvailable = capabilityAvailable && !disabled;
|
|
28040
28061
|
const [previousDisclosureAvailable, setPreviousDisclosureAvailable] = useState27(disclosureAvailable);
|
|
28041
|
-
const disclosureAvailableRef =
|
|
28062
|
+
const disclosureAvailableRef = useRef41(disclosureAvailable);
|
|
28042
28063
|
disclosureAvailableRef.current = disclosureAvailable;
|
|
28043
28064
|
if (previousDisclosureAvailable !== disclosureAvailable) {
|
|
28044
28065
|
setPreviousDisclosureAvailable(disclosureAvailable);
|
|
@@ -28318,9 +28339,9 @@ function isVersionConflict(error) {
|
|
|
28318
28339
|
}
|
|
28319
28340
|
|
|
28320
28341
|
// agent-gui/agentGuiNode/composer/useScopedProjectMissingState.ts
|
|
28321
|
-
import { useCallback as useCallback46, useRef as
|
|
28342
|
+
import { useCallback as useCallback46, useRef as useRef42, useState as useState28 } from "react";
|
|
28322
28343
|
function useScopedProjectMissingState(scopeKey) {
|
|
28323
|
-
const identityRef =
|
|
28344
|
+
const identityRef = useRef42({
|
|
28324
28345
|
key: scopeKey,
|
|
28325
28346
|
revision: 0
|
|
28326
28347
|
});
|
|
@@ -28556,29 +28577,29 @@ function AgentComposer(props) {
|
|
|
28556
28577
|
const [isSelectedProjectMissing, setIsSelectedProjectMissing] = useScopedProjectMissingState(selectedProjectPath);
|
|
28557
28578
|
const [isSlashStatusPanelOpen, setIsSlashStatusPanelOpen] = useState29(false);
|
|
28558
28579
|
const slashStatusAgentSessionId = slashStatus?.agentSessionId ?? null;
|
|
28559
|
-
const previousSlashStatusAgentSessionIdRef =
|
|
28580
|
+
const previousSlashStatusAgentSessionIdRef = useRef43(
|
|
28560
28581
|
slashStatusAgentSessionId
|
|
28561
28582
|
);
|
|
28562
28583
|
const selectedProjectSectionKey = composerSettings.selectedProjectSectionKey?.trim() ?? "";
|
|
28563
|
-
const previousSelectedProjectPathRef =
|
|
28564
|
-
const composerRef =
|
|
28565
|
-
const inputShellRef =
|
|
28566
|
-
const promptInputAreaRef =
|
|
28567
|
-
const paletteContentRef =
|
|
28568
|
-
const draftPromptRef =
|
|
28569
|
-
const draftImagesRef =
|
|
28570
|
-
const draftFilesRef =
|
|
28571
|
-
const draftLargeTextsRef =
|
|
28572
|
-
const draftByScopeKeyRef =
|
|
28584
|
+
const previousSelectedProjectPathRef = useRef43(selectedProjectPath);
|
|
28585
|
+
const composerRef = useRef43(null);
|
|
28586
|
+
const inputShellRef = useRef43(null);
|
|
28587
|
+
const promptInputAreaRef = useRef43(null);
|
|
28588
|
+
const paletteContentRef = useRef43(null);
|
|
28589
|
+
const draftPromptRef = useRef43(draftPrompt);
|
|
28590
|
+
const draftImagesRef = useRef43(draftImages);
|
|
28591
|
+
const draftFilesRef = useRef43(draftFiles);
|
|
28592
|
+
const draftLargeTextsRef = useRef43(draftLargeTexts);
|
|
28593
|
+
const draftByScopeKeyRef = useRef43({
|
|
28573
28594
|
[draftScopeKey]: draftContent
|
|
28574
28595
|
});
|
|
28575
28596
|
draftByScopeKeyRef.current[draftScopeKey] = draftContent;
|
|
28576
|
-
const promptTipRef =
|
|
28597
|
+
const promptTipRef = useRef43(null);
|
|
28577
28598
|
const { mentionControllerRef, mentionSearchState } = useAgentMentionSearchController(referenceProvenanceFilters);
|
|
28578
|
-
const editorHandleRef =
|
|
28579
|
-
const wasActiveRef =
|
|
28580
|
-
const lastComposerFocusRequestRef =
|
|
28581
|
-
const autoMentionHighlightedKeyRef =
|
|
28599
|
+
const editorHandleRef = useRef43(null);
|
|
28600
|
+
const wasActiveRef = useRef43(isActive);
|
|
28601
|
+
const lastComposerFocusRequestRef = useRef43(null);
|
|
28602
|
+
const autoMentionHighlightedKeyRef = useRef43(null);
|
|
28582
28603
|
const [isPromptTipOverflowing, setIsPromptTipOverflowing] = useState29(false);
|
|
28583
28604
|
const [dockComposerMetrics, setDockComposerMetrics] = useState29(
|
|
28584
28605
|
INITIAL_DOCK_COMPOSER_METRICS
|
|
@@ -29365,7 +29386,7 @@ import {
|
|
|
29365
29386
|
useCallback as useCallback48,
|
|
29366
29387
|
useContext,
|
|
29367
29388
|
useMemo as useMemo35,
|
|
29368
|
-
useRef as
|
|
29389
|
+
useRef as useRef44
|
|
29369
29390
|
} from "react";
|
|
29370
29391
|
import { toast as toast2 } from "@tutti-os/ui-system";
|
|
29371
29392
|
|
|
@@ -29453,7 +29474,7 @@ function useCreateAgentTargetSetupController(agentTarget) {
|
|
|
29453
29474
|
},
|
|
29454
29475
|
[agentTargetId, hostApi?.debug]
|
|
29455
29476
|
);
|
|
29456
|
-
const controllerRef =
|
|
29477
|
+
const controllerRef = useRef44(null);
|
|
29457
29478
|
const targetKey = enabled ? agentTargetId : "";
|
|
29458
29479
|
const controllerEntry = useMemo35(() => {
|
|
29459
29480
|
const previousState = controllerRef.current?.targetKey === targetKey ? controllerRef.current.controller.getSnapshot() : null;
|
|
@@ -29932,27 +29953,28 @@ var AgentGUIEmptyHomePane = memo2(function AgentGUIEmptyHomePane2({
|
|
|
29932
29953
|
...heroProps
|
|
29933
29954
|
}) {
|
|
29934
29955
|
"use memo";
|
|
29956
|
+
const presentedSelectedAgentTarget = selectedAgentTarget?.ref.kind === "loading" ? null : selectedAgentTarget;
|
|
29935
29957
|
const runtimeProviderLabel = labels.emptyProviderForProvider?.(provider) ?? labels.emptyProvider ?? "";
|
|
29936
|
-
const providerLabel =
|
|
29958
|
+
const providerLabel = presentedSelectedAgentTarget ? projectAgentGUIAgentTargetName({
|
|
29937
29959
|
ownerSeparator: labels.sharedAgentOwnerSeparator,
|
|
29938
|
-
target:
|
|
29960
|
+
target: presentedSelectedAgentTarget
|
|
29939
29961
|
}).fullLabel : runtimeProviderLabel;
|
|
29940
29962
|
const baseLabel = labels.emptyForProvider?.(provider) ?? labels.empty;
|
|
29941
29963
|
const emptyLabel = runtimeProviderLabel ? baseLabel.replace(runtimeProviderLabel, providerLabel) : baseLabel;
|
|
29942
29964
|
const avatarPresentations = useMemo36(
|
|
29943
|
-
() => agentTargets.length ? agentTargets.map(projectAgentGUIAgentTargetAvatar) :
|
|
29965
|
+
() => agentTargets.length ? agentTargets.map(projectAgentGUIAgentTargetAvatar) : presentedSelectedAgentTarget ? [projectAgentGUIAgentTargetAvatar(presentedSelectedAgentTarget)] : [
|
|
29944
29966
|
createFallbackAgentGUIAgentAvatar({
|
|
29945
29967
|
provider,
|
|
29946
29968
|
label: providerLabel
|
|
29947
29969
|
})
|
|
29948
29970
|
],
|
|
29949
|
-
[agentTargets, provider, providerLabel
|
|
29971
|
+
[agentTargets, presentedSelectedAgentTarget, provider, providerLabel]
|
|
29950
29972
|
);
|
|
29951
29973
|
const carouselMountedExternally = avatarPresentations.length > 1;
|
|
29952
29974
|
return /* @__PURE__ */ jsx50(
|
|
29953
29975
|
AgentGUIEmptyHeroCarouselStage,
|
|
29954
29976
|
{
|
|
29955
|
-
activeAgentTargetId:
|
|
29977
|
+
activeAgentTargetId: presentedSelectedAgentTarget?.agentTargetId ?? presentedSelectedAgentTarget?.targetId,
|
|
29956
29978
|
items: avatarPresentations,
|
|
29957
29979
|
onProviderSelect,
|
|
29958
29980
|
providerSelectLabel: labels.providerSwitchLabel,
|
|
@@ -29973,7 +29995,7 @@ var AgentGUIEmptyHomePane = memo2(function AgentGUIEmptyHomePane2({
|
|
|
29973
29995
|
onProviderSelect,
|
|
29974
29996
|
providerLabel,
|
|
29975
29997
|
providerSelectLabel: labels.providerSwitchLabel,
|
|
29976
|
-
selectedAgentTarget,
|
|
29998
|
+
selectedAgentTarget: presentedSelectedAgentTarget,
|
|
29977
29999
|
labels
|
|
29978
30000
|
}
|
|
29979
30001
|
) : /* @__PURE__ */ jsx50(
|
|
@@ -29987,7 +30009,7 @@ var AgentGUIEmptyHomePane = memo2(function AgentGUIEmptyHomePane2({
|
|
|
29987
30009
|
carouselMountedExternally,
|
|
29988
30010
|
onProviderSelect,
|
|
29989
30011
|
agentTargets,
|
|
29990
|
-
selectedAgentTarget,
|
|
30012
|
+
selectedAgentTarget: presentedSelectedAgentTarget,
|
|
29991
30013
|
providerSelectLabel: labels.providerSwitchLabel,
|
|
29992
30014
|
sharedAgentOwnerSeparator: labels.sharedAgentOwnerSeparator
|
|
29993
30015
|
}
|
|
@@ -30385,7 +30407,7 @@ function EmptyHeroTitle({
|
|
|
30385
30407
|
|
|
30386
30408
|
// agent-gui/agentGuiNode/view/AgentGUIProviderManagerDialog.tsx
|
|
30387
30409
|
import {
|
|
30388
|
-
useRef as
|
|
30410
|
+
useRef as useRef45,
|
|
30389
30411
|
useState as useState31
|
|
30390
30412
|
} from "react";
|
|
30391
30413
|
import { CircleMinus, CirclePlus } from "lucide-react";
|
|
@@ -30427,12 +30449,12 @@ function AgentGUIProviderManagerDialog({
|
|
|
30427
30449
|
null
|
|
30428
30450
|
);
|
|
30429
30451
|
const [dragPreview, setDragPreview] = useState31(null);
|
|
30430
|
-
const dragStateRef =
|
|
30431
|
-
const dragPreviewRef =
|
|
30452
|
+
const dragStateRef = useRef45(null);
|
|
30453
|
+
const dragPreviewRef = useRef45(null);
|
|
30432
30454
|
const [longPressTargetId, setLongPressTargetId] = useState31(
|
|
30433
30455
|
null
|
|
30434
30456
|
);
|
|
30435
|
-
const longPressOriginRef =
|
|
30457
|
+
const longPressOriginRef = useRef45(null);
|
|
30436
30458
|
const finalAvailableAgent = availableTargets.length === 1;
|
|
30437
30459
|
const showRunningAgentBlocked = (targetId) => {
|
|
30438
30460
|
const target = targets.find((candidate) => candidate.targetId === targetId);
|
|
@@ -31030,7 +31052,7 @@ var AgentGUIProviderRail = memo3(function AgentGUIProviderRail2({
|
|
|
31030
31052
|
preferences: providerRailPreferences
|
|
31031
31053
|
} = useAgentGUIProviderRailPreferences();
|
|
31032
31054
|
const [dragState, setDragState] = useState33(null);
|
|
31033
|
-
const dragStateRef =
|
|
31055
|
+
const dragStateRef = useRef46(null);
|
|
31034
31056
|
const setProviderRailDragState = useCallback50(
|
|
31035
31057
|
(nextDragState) => {
|
|
31036
31058
|
dragStateRef.current = nextDragState;
|
|
@@ -31500,7 +31522,7 @@ var AgentGUIProviderRail = memo3(function AgentGUIProviderRail2({
|
|
|
31500
31522
|
import { memo as memo8, useState as useState40 } from "react";
|
|
31501
31523
|
|
|
31502
31524
|
// agent-gui/agentGuiNode/view/AgentGUIConversationRailPane.tsx
|
|
31503
|
-
import { Fragment as Fragment21, memo as memo7, useEffect as useEffect29, useMemo as useMemo40, useRef as
|
|
31525
|
+
import { Fragment as Fragment21, memo as memo7, useEffect as useEffect29, useMemo as useMemo40, useRef as useRef49, useState as useState39 } from "react";
|
|
31504
31526
|
import { Button as SystemButton } from "@tutti-os/ui-system";
|
|
31505
31527
|
import { ScrollArea as ScrollArea2 } from "@tutti-os/ui-system/components";
|
|
31506
31528
|
import { CreateChatIcon as CreateChatIcon2 } from "@tutti-os/ui-system/icons";
|
|
@@ -32685,7 +32707,7 @@ import {
|
|
|
32685
32707
|
Fragment as Fragment18,
|
|
32686
32708
|
useCallback as useCallback52,
|
|
32687
32709
|
useMemo as useMemo38,
|
|
32688
|
-
useRef as
|
|
32710
|
+
useRef as useRef47,
|
|
32689
32711
|
useState as useState35
|
|
32690
32712
|
} from "react";
|
|
32691
32713
|
import {
|
|
@@ -32897,7 +32919,7 @@ function useConversationActionGroups({
|
|
|
32897
32919
|
const agentActivityRuntime = useOptionalAgentActivityRuntime();
|
|
32898
32920
|
const copyConversationValue = useAgentGUIConversationCopyAction(labels);
|
|
32899
32921
|
const [resetKey, setResetKey] = useState35(0);
|
|
32900
|
-
const pendingActionRef =
|
|
32922
|
+
const pendingActionRef = useRef47(false);
|
|
32901
32923
|
const run = useCallback52(
|
|
32902
32924
|
(action) => {
|
|
32903
32925
|
if (pendingActionRef.current) {
|
|
@@ -34213,7 +34235,7 @@ function AgentGUIProjectActionConfirmationDialog(props) {
|
|
|
34213
34235
|
}
|
|
34214
34236
|
|
|
34215
34237
|
// agent-gui/agentGuiNode/view/useAgentGUIConversationRailViewState.ts
|
|
34216
|
-
import { useCallback as useCallback56, useLayoutEffect as useLayoutEffect6, useReducer, useRef as
|
|
34238
|
+
import { useCallback as useCallback56, useLayoutEffect as useLayoutEffect6, useReducer, useRef as useRef48 } from "react";
|
|
34217
34239
|
function applyRailScrollNavigation(input) {
|
|
34218
34240
|
const activeConversationId = input.activeConversationId?.trim() || null;
|
|
34219
34241
|
const current = input.current.navigationKey === input.navigationKey ? input.current : {
|
|
@@ -34259,10 +34281,10 @@ function useAgentGUIConversationRailViewState(input) {
|
|
|
34259
34281
|
reduceAgentGUIConversationRailViewState,
|
|
34260
34282
|
/* @__PURE__ */ new Map()
|
|
34261
34283
|
);
|
|
34262
|
-
const conversationListRef =
|
|
34263
|
-
const conversationItemElementsRef =
|
|
34264
|
-
const scrollTopByScopeRef =
|
|
34265
|
-
const navigationRef =
|
|
34284
|
+
const conversationListRef = useRef48(null);
|
|
34285
|
+
const conversationItemElementsRef = useRef48(/* @__PURE__ */ new Map());
|
|
34286
|
+
const scrollTopByScopeRef = useRef48(/* @__PURE__ */ new Map());
|
|
34287
|
+
const navigationRef = useRef48({
|
|
34266
34288
|
handledRevealRevision: 0,
|
|
34267
34289
|
navigationKey: null,
|
|
34268
34290
|
phase: "scope-pending"
|
|
@@ -34433,9 +34455,9 @@ var AgentGUIConversationRailPane = memo7(
|
|
|
34433
34455
|
const [pendingProjectAction, setPendingProjectAction] = useState39(null);
|
|
34434
34456
|
const [isRequestingBatchDeletion, setIsRequestingBatchDeletion] = useState39(false);
|
|
34435
34457
|
const { railSearch } = railQuery;
|
|
34436
|
-
const railElementRef =
|
|
34437
|
-
const railActiveConversationRef =
|
|
34438
|
-
const groupedConversationsRef =
|
|
34458
|
+
const railElementRef = useRef49(null);
|
|
34459
|
+
const railActiveConversationRef = useRef49([]);
|
|
34460
|
+
const groupedConversationsRef = useRef49(null);
|
|
34439
34461
|
const {
|
|
34440
34462
|
batchDeletionAvailable,
|
|
34441
34463
|
loadMoreSectionConversations,
|
|
@@ -34867,7 +34889,7 @@ var AgentGUIConversationRailPane = memo7(
|
|
|
34867
34889
|
);
|
|
34868
34890
|
|
|
34869
34891
|
// agent-gui/agentGuiNode/controller/useAgentGUIConversationRailQuery.ts
|
|
34870
|
-
import { useEffect as useEffect30, useMemo as useMemo41, useRef as
|
|
34892
|
+
import { useEffect as useEffect30, useMemo as useMemo41, useRef as useRef50 } from "react";
|
|
34871
34893
|
|
|
34872
34894
|
// agent-gui/agentGuiNode/controller/agentGuiConversationRailDiagnostics.ts
|
|
34873
34895
|
var CONVERSATION_RAIL_SLOW_DIAGNOSTIC_THRESHOLD_MS = 250;
|
|
@@ -36150,7 +36172,7 @@ function useAgentGUIConversationRailQuery({
|
|
|
36150
36172
|
() => runtime.getSessionEngine(workspaceId),
|
|
36151
36173
|
[runtime, workspaceId]
|
|
36152
36174
|
);
|
|
36153
|
-
const activeConversationIdRef =
|
|
36175
|
+
const activeConversationIdRef = useRef50(activeConversationId);
|
|
36154
36176
|
activeConversationIdRef.current = activeConversationId;
|
|
36155
36177
|
const controller = useMemo41(
|
|
36156
36178
|
() => new AgentGUIConversationRailQueryController({
|
|
@@ -36269,10 +36291,10 @@ var AgentGUIConversationRailController = memo8(
|
|
|
36269
36291
|
);
|
|
36270
36292
|
|
|
36271
36293
|
// agent-gui/agentGuiNode/view/AgentGUIDetailPane.tsx
|
|
36272
|
-
import { memo as memo12, useCallback as useCallback60, useEffect as useEffect34, useMemo as useMemo44, useRef as
|
|
36294
|
+
import { memo as memo12, useCallback as useCallback60, useEffect as useEffect34, useMemo as useMemo44, useRef as useRef54, useState as useState50 } from "react";
|
|
36273
36295
|
|
|
36274
36296
|
// agent-gui/agentGuiNode/view/agentGUIDetailModelHelpers.ts
|
|
36275
|
-
import { useRef as
|
|
36297
|
+
import { useRef as useRef51 } from "react";
|
|
36276
36298
|
function commandAppSource(command) {
|
|
36277
36299
|
if (!command || typeof command !== "object" || !("source" in command)) {
|
|
36278
36300
|
return null;
|
|
@@ -36352,7 +36374,7 @@ function slashStatusesEqual(left, right) {
|
|
|
36352
36374
|
return (left.agentSessionId ?? null) === (right.agentSessionId ?? null) && (left.baseUrl ?? null) === (right.baseUrl ?? null) && (left.contextWindow?.usedTokens ?? null) === (right.contextWindow?.usedTokens ?? null) && (left.contextWindow?.totalTokens ?? null) === (right.contextWindow?.totalTokens ?? null) && slashStatusLimitsEqual(left.limits, right.limits) && Boolean(left.limitsLoading) === Boolean(right.limitsLoading) && Boolean(left.limitsUnavailable) === Boolean(right.limitsUnavailable);
|
|
36353
36375
|
}
|
|
36354
36376
|
function useStableSlashStatus(status) {
|
|
36355
|
-
const statusRef =
|
|
36377
|
+
const statusRef = useRef51(null);
|
|
36356
36378
|
if (statusRef.current === null || !slashStatusesEqual(statusRef.current, status)) {
|
|
36357
36379
|
statusRef.current = status;
|
|
36358
36380
|
}
|
|
@@ -37821,7 +37843,7 @@ function TuttiPlanIssueList({
|
|
|
37821
37843
|
}
|
|
37822
37844
|
|
|
37823
37845
|
// workspaceWorkflow/tuttiModePlan/useTuttiModePlanPanels.ts
|
|
37824
|
-
import { useCallback as useCallback58, useEffect as useEffect32, useMemo as useMemo42, useRef as
|
|
37846
|
+
import { useCallback as useCallback58, useEffect as useEffect32, useMemo as useMemo42, useRef as useRef52, useState as useState43 } from "react";
|
|
37825
37847
|
function emptyState(scopeKey) {
|
|
37826
37848
|
return {
|
|
37827
37849
|
error: null,
|
|
@@ -37848,15 +37870,15 @@ function useTuttiModePlanPanels(input) {
|
|
|
37848
37870
|
result: null,
|
|
37849
37871
|
scopeKey: ""
|
|
37850
37872
|
});
|
|
37851
|
-
const requestSequenceRef =
|
|
37873
|
+
const requestSequenceRef = useRef52(0);
|
|
37852
37874
|
const [retrySequence, setRetrySequence] = useState43(0);
|
|
37853
37875
|
const enabled = input.enabled ?? true;
|
|
37854
37876
|
const workspaceId = input.workspaceId.trim();
|
|
37855
37877
|
const sourceSessionId = input.sourceSessionId?.trim() ?? "";
|
|
37856
37878
|
const scopeKey = enabled && runtime && workspaceId && sourceSessionId ? JSON.stringify([workspaceId, sourceSessionId]) : "";
|
|
37857
|
-
const activeScopeRef =
|
|
37858
|
-
const assignmentRequestsRef =
|
|
37859
|
-
const planIssueRefreshRef =
|
|
37879
|
+
const activeScopeRef = useRef52("");
|
|
37880
|
+
const assignmentRequestsRef = useRef52(/* @__PURE__ */ new Set());
|
|
37881
|
+
const planIssueRefreshRef = useRef52(null);
|
|
37860
37882
|
const assignmentSource = runtime?.assignmentOptions ?? null;
|
|
37861
37883
|
const loadAgentOptions = useCallback58(
|
|
37862
37884
|
(agentTargetId) => {
|
|
@@ -39096,7 +39118,7 @@ import {
|
|
|
39096
39118
|
useCallback as useCallback59,
|
|
39097
39119
|
useEffect as useEffect33,
|
|
39098
39120
|
useLayoutEffect as useLayoutEffect7,
|
|
39099
|
-
useRef as
|
|
39121
|
+
useRef as useRef53,
|
|
39100
39122
|
useState as useState47
|
|
39101
39123
|
} from "react";
|
|
39102
39124
|
var AGENT_GUI_STICK_TO_BOTTOM_THRESHOLD_PX = 24;
|
|
@@ -39174,11 +39196,11 @@ function useAgentGUIDetailScroll(input) {
|
|
|
39174
39196
|
} = input;
|
|
39175
39197
|
const [isTimelineScrolledToTop, setIsTimelineScrolledToTop] = useState47(true);
|
|
39176
39198
|
const [isTimelineScrolledToBottom, setIsTimelineScrolledToBottom] = useState47(true);
|
|
39177
|
-
const bottomLockOwnerRef =
|
|
39178
|
-
const pointerScrollConversationRef =
|
|
39179
|
-
const userScrollAwayIntentConversationRef =
|
|
39180
|
-
const lastShowTimelineSkeletonRef =
|
|
39181
|
-
const bottomDockSafeAreaRef =
|
|
39199
|
+
const bottomLockOwnerRef = useRef53(null);
|
|
39200
|
+
const pointerScrollConversationRef = useRef53(null);
|
|
39201
|
+
const userScrollAwayIntentConversationRef = useRef53(null);
|
|
39202
|
+
const lastShowTimelineSkeletonRef = useRef53(showTimelineSkeleton);
|
|
39203
|
+
const bottomDockSafeAreaRef = useRef53(null);
|
|
39182
39204
|
useLayoutEffect7(() => {
|
|
39183
39205
|
const timelineSkeletonChanged = lastShowTimelineSkeletonRef.current !== showTimelineSkeleton;
|
|
39184
39206
|
lastShowTimelineSkeletonRef.current = showTimelineSkeleton;
|
|
@@ -40553,12 +40575,12 @@ var AgentGUIDetailPane = memo12(function AgentGUIDetailPane2({
|
|
|
40553
40575
|
readiness,
|
|
40554
40576
|
operations
|
|
40555
40577
|
};
|
|
40556
|
-
const timelineRef =
|
|
40557
|
-
const timelineContentRef =
|
|
40558
|
-
const bottomDockRef =
|
|
40559
|
-
const timelineScrollAnchorRef =
|
|
40560
|
-
const submittedPromptScrollConversationRef =
|
|
40561
|
-
const pendingPrependScrollAnchorRef =
|
|
40578
|
+
const timelineRef = useRef54(null);
|
|
40579
|
+
const timelineContentRef = useRef54(null);
|
|
40580
|
+
const bottomDockRef = useRef54(null);
|
|
40581
|
+
const timelineScrollAnchorRef = useRef54(null);
|
|
40582
|
+
const submittedPromptScrollConversationRef = useRef54(null);
|
|
40583
|
+
const pendingPrependScrollAnchorRef = useRef54(null);
|
|
40562
40584
|
const [
|
|
40563
40585
|
bottomDockDismissedPromptRequestId,
|
|
40564
40586
|
setBottomDockDismissedPromptRequestId
|
|
@@ -41096,7 +41118,7 @@ var AgentGUIDetailPane = memo12(function AgentGUIDetailPane2({
|
|
|
41096
41118
|
});
|
|
41097
41119
|
|
|
41098
41120
|
// agent-gui/agentGuiNode/view/AgentGUIRenameConversationDialog.tsx
|
|
41099
|
-
import { memo as memo13, useCallback as useCallback61, useEffect as useEffect35, useRef as
|
|
41121
|
+
import { memo as memo13, useCallback as useCallback61, useEffect as useEffect35, useRef as useRef55, useState as useState51 } from "react";
|
|
41100
41122
|
import { ConfirmationDialog as ConfirmationDialog4, Input as Input4 } from "@tutti-os/ui-system";
|
|
41101
41123
|
import { jsx as jsx83, jsxs as jsxs59 } from "react/jsx-runtime";
|
|
41102
41124
|
var AgentGUIRenameConversationDialog = memo13(
|
|
@@ -41110,9 +41132,9 @@ var AgentGUIRenameConversationDialog = memo13(
|
|
|
41110
41132
|
"use memo";
|
|
41111
41133
|
const [title, setTitle] = useState51("");
|
|
41112
41134
|
const [isSaving, setIsSaving] = useState51(false);
|
|
41113
|
-
const isSavingRef =
|
|
41114
|
-
const armedPointerActionRef =
|
|
41115
|
-
const inputRef =
|
|
41135
|
+
const isSavingRef = useRef55(false);
|
|
41136
|
+
const armedPointerActionRef = useRef55(null);
|
|
41137
|
+
const inputRef = useRef55(null);
|
|
41116
41138
|
const trimmedTitle = title.trim();
|
|
41117
41139
|
useEffect35(() => {
|
|
41118
41140
|
if (!open || !conversation) {
|
|
@@ -41397,7 +41419,7 @@ function AgentTargetSetupRoot({
|
|
|
41397
41419
|
}
|
|
41398
41420
|
|
|
41399
41421
|
// agent-gui/agentGuiNode/view/useAgentGUIWorkspaceReferencePicker.ts
|
|
41400
|
-
import { useCallback as useCallback63, useMemo as useMemo46, useRef as
|
|
41422
|
+
import { useCallback as useCallback63, useMemo as useMemo46, useRef as useRef56, useState as useState52 } from "react";
|
|
41401
41423
|
import { createRichTextMentionHref } from "@tutti-os/ui-rich-text/core";
|
|
41402
41424
|
function useAgentGUIWorkspaceReferencePicker(input) {
|
|
41403
41425
|
const {
|
|
@@ -41413,8 +41435,8 @@ function useAgentGUIWorkspaceReferencePicker(input) {
|
|
|
41413
41435
|
const [workspaceReferencePickerOpen, setWorkspaceReferencePickerOpen] = useState52(false);
|
|
41414
41436
|
const [workspaceReferencePickerPurpose, setWorkspaceReferencePickerPurpose] = useState52("reference");
|
|
41415
41437
|
const [workspaceReferencePickerTarget, setWorkspaceReferencePickerTarget] = useState52(null);
|
|
41416
|
-
const workspaceReferencePickerResolverRef =
|
|
41417
|
-
const projectDirectoryPickerResolverRef =
|
|
41438
|
+
const workspaceReferencePickerResolverRef = useRef56(null);
|
|
41439
|
+
const projectDirectoryPickerResolverRef = useRef56(null);
|
|
41418
41440
|
const emptyReferencePickResult = useMemo46(
|
|
41419
41441
|
() => ({ files: [], mentionItems: [] }),
|
|
41420
41442
|
[]
|
|
@@ -41566,7 +41588,7 @@ function useAgentGUIWorkspaceReferencePicker(input) {
|
|
|
41566
41588
|
}
|
|
41567
41589
|
|
|
41568
41590
|
// agent-gui/agentGuiNode/engagement/useAgentGUINodeEngagement.ts
|
|
41569
|
-
import { useRef as
|
|
41591
|
+
import { useRef as useRef58 } from "react";
|
|
41570
41592
|
|
|
41571
41593
|
// agent-gui/agentGuiNode/engagement/projectAgentGUIEngagementContext.ts
|
|
41572
41594
|
function projectAgentGUIEngagementContext(viewModel, composerReady) {
|
|
@@ -41598,7 +41620,7 @@ function createAgentGUIEngagementContextKey(input) {
|
|
|
41598
41620
|
}
|
|
41599
41621
|
|
|
41600
41622
|
// agent-gui/agentGuiNode/engagement/useAgentGUIPanelEngagement.ts
|
|
41601
|
-
import { useEffect as useEffect36, useRef as
|
|
41623
|
+
import { useEffect as useEffect36, useRef as useRef57 } from "react";
|
|
41602
41624
|
|
|
41603
41625
|
// agent-gui/agentGuiNode/engagement/AgentGUIPanelEngagementController.ts
|
|
41604
41626
|
var AGENT_GUI_PANEL_EXPOSURE_DWELL_MS = 1e3;
|
|
@@ -41752,10 +41774,10 @@ function documentIsVisible() {
|
|
|
41752
41774
|
|
|
41753
41775
|
// agent-gui/agentGuiNode/engagement/useAgentGUIPanelEngagement.ts
|
|
41754
41776
|
function useAgentGUIPanelEngagement(input) {
|
|
41755
|
-
const inputRef =
|
|
41756
|
-
const controllerRef =
|
|
41757
|
-
const intersectionRatioRef =
|
|
41758
|
-
const engagementRef =
|
|
41777
|
+
const inputRef = useRef57(input);
|
|
41778
|
+
const controllerRef = useRef57(null);
|
|
41779
|
+
const intersectionRatioRef = useRef57(0);
|
|
41780
|
+
const engagementRef = useRef57(null);
|
|
41759
41781
|
inputRef.current = input;
|
|
41760
41782
|
if (!engagementRef.current) {
|
|
41761
41783
|
engagementRef.current = {
|
|
@@ -41795,7 +41817,7 @@ function useAgentGUIPanelEngagement(input) {
|
|
|
41795
41817
|
|
|
41796
41818
|
// agent-gui/agentGuiNode/engagement/useAgentGUINodeEngagement.ts
|
|
41797
41819
|
function useAgentGUINodeEngagement(input) {
|
|
41798
|
-
const layoutElementRef =
|
|
41820
|
+
const layoutElementRef = useRef58(null);
|
|
41799
41821
|
const projected = projectAgentGUIEngagementContext(
|
|
41800
41822
|
input.viewModel,
|
|
41801
41823
|
input.composerReady
|
|
@@ -41856,7 +41878,7 @@ function useAgentGUIConversationRailResizePointerMove({
|
|
|
41856
41878
|
}
|
|
41857
41879
|
|
|
41858
41880
|
// agent-gui/agentGuiNode/view/useAgentGUIExternalRequests.ts
|
|
41859
|
-
import { useCallback as useCallback65, useEffect as useEffect37, useRef as
|
|
41881
|
+
import { useCallback as useCallback65, useEffect as useEffect37, useRef as useRef59 } from "react";
|
|
41860
41882
|
function resolveSessionActionConversation(viewModel, agentSessionId) {
|
|
41861
41883
|
const active = viewModel.rail.activeConversation;
|
|
41862
41884
|
if (!agentSessionId) {
|
|
@@ -41881,17 +41903,17 @@ function useAgentGUIExternalRequests(input) {
|
|
|
41881
41903
|
viewModel
|
|
41882
41904
|
} = input;
|
|
41883
41905
|
const agentHostApi = useOptionalAgentHostApi();
|
|
41884
|
-
const railInteractionLockProbeRef =
|
|
41906
|
+
const railInteractionLockProbeRef = useRef59(null);
|
|
41885
41907
|
const registerRailInteractionLockProbe = useCallback65(
|
|
41886
41908
|
(probe) => {
|
|
41887
41909
|
railInteractionLockProbeRef.current = probe;
|
|
41888
41910
|
},
|
|
41889
41911
|
[]
|
|
41890
41912
|
);
|
|
41891
|
-
const handledNewConversationRequestSequenceRef =
|
|
41913
|
+
const handledNewConversationRequestSequenceRef = useRef59(
|
|
41892
41914
|
newConversationRequestSequence
|
|
41893
41915
|
);
|
|
41894
|
-
const handledSessionActionRequestSequenceRef =
|
|
41916
|
+
const handledSessionActionRequestSequenceRef = useRef59(
|
|
41895
41917
|
sessionActionRequest?.sequence ?? null
|
|
41896
41918
|
);
|
|
41897
41919
|
const copyConversationValue = useAgentGUIConversationCopyAction(labels);
|
|
@@ -42018,7 +42040,7 @@ function AgentGUINodeView({
|
|
|
42018
42040
|
viewModel
|
|
42019
42041
|
});
|
|
42020
42042
|
const [providerManagerOpen, setProviderManagerOpen] = useState53(false);
|
|
42021
|
-
const railResizeInteractionRef =
|
|
42043
|
+
const railResizeInteractionRef = useRef60(null);
|
|
42022
42044
|
const [isRailResizing, setIsRailResizing] = useState53(false);
|
|
42023
42045
|
const [railResizeWidthPx, setRailResizeWidthPx] = useState53(
|
|
42024
42046
|
null
|
|
@@ -42566,7 +42588,7 @@ import {
|
|
|
42566
42588
|
useCallback as useCallback67,
|
|
42567
42589
|
useEffect as useEffect39,
|
|
42568
42590
|
useLayoutEffect as useLayoutEffect9,
|
|
42569
|
-
useRef as
|
|
42591
|
+
useRef as useRef61,
|
|
42570
42592
|
useState as useState54
|
|
42571
42593
|
} from "react";
|
|
42572
42594
|
import { createPortal as createPortal5 } from "react-dom";
|
|
@@ -42605,8 +42627,8 @@ function AgentProbeInfoPopover({
|
|
|
42605
42627
|
onClose
|
|
42606
42628
|
}) {
|
|
42607
42629
|
"use memo";
|
|
42608
|
-
const anchorRef =
|
|
42609
|
-
const popoverRef =
|
|
42630
|
+
const anchorRef = useRef61(null);
|
|
42631
|
+
const popoverRef = useRef61(null);
|
|
42610
42632
|
const [isOpen, setIsOpen] = useState54(false);
|
|
42611
42633
|
const [popoverStyle, setPopoverStyle] = useState54(null);
|
|
42612
42634
|
const openPopover = useCallback67(() => {
|
|
@@ -44096,7 +44118,7 @@ var AgentGUINode = memo14(function AgentGUINode2({
|
|
|
44096
44118
|
isVisible = true,
|
|
44097
44119
|
embedded = false
|
|
44098
44120
|
} = frame;
|
|
44099
|
-
const widthRef =
|
|
44121
|
+
const widthRef = useRef62(width);
|
|
44100
44122
|
widthRef.current = width;
|
|
44101
44123
|
const {
|
|
44102
44124
|
composerAppend: composerAppendRequest = null,
|
|
@@ -44598,4 +44620,4 @@ export {
|
|
|
44598
44620
|
AgentHandoffMenu,
|
|
44599
44621
|
AgentGUI
|
|
44600
44622
|
};
|
|
44601
|
-
//# sourceMappingURL=chunk-
|
|
44623
|
+
//# sourceMappingURL=chunk-ZVSKNM6D.js.map
|