@tutti-os/agent-gui 0.0.60 → 0.0.62
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 +5 -5
- package/dist/agent-message-center/index.js +7 -7
- package/dist/app/renderer/agentactivity.css +13 -1
- package/dist/{chunk-K3UBSTJ5.js → chunk-3KS22CG2.js} +2 -2
- package/dist/{chunk-BB2SVMEV.js → chunk-4UTWOSHP.js} +4 -1
- package/dist/chunk-4UTWOSHP.js.map +1 -0
- package/dist/{chunk-YZ3POK7G.js → chunk-6MUKWI6Z.js} +9 -5
- package/dist/chunk-6MUKWI6Z.js.map +1 -0
- package/dist/{chunk-I5ZIKJVN.js → chunk-7P6CUYQT.js} +2 -2
- package/dist/{chunk-6VVBG4BF.js → chunk-CA25GD5Q.js} +5 -3
- package/dist/chunk-CA25GD5Q.js.map +1 -0
- package/dist/{chunk-4OPTXOOZ.js → chunk-CVSCZ3CK.js} +2 -2
- package/dist/{chunk-2LGUBUEJ.js → chunk-FQQDBBNI.js} +2 -2
- package/dist/{chunk-6TEPDMX6.js → chunk-G6UO6JVM.js} +2 -2
- package/dist/{chunk-MPZ3CW5C.js → chunk-IIVHPXAB.js} +1 -1
- package/dist/chunk-IIVHPXAB.js.map +1 -0
- package/dist/{chunk-AWIZJQXW.js → chunk-K4UUEG7X.js} +14 -8
- package/dist/chunk-K4UUEG7X.js.map +1 -0
- package/dist/{chunk-WNVIKTJK.js → chunk-NZN43XT5.js} +2 -2
- package/dist/{chunk-CZSMZRAV.js → chunk-QC642RAG.js} +4 -4
- package/dist/{chunk-24CUBQKJ.js → chunk-RO6KQD3J.js} +2 -2
- package/dist/{chunk-CUMZV32B.js → chunk-SGXYVGQT.js} +4 -4
- package/dist/{chunk-B6YDXIZW.js → chunk-SW6JCJCO.js} +2 -2
- package/dist/{chunk-74TIEA6X.js → chunk-ZUVEBW5T.js} +2 -2
- package/dist/context-mention-palette/index.js +6 -6
- package/dist/i18n/index.d.ts +4 -2
- package/dist/i18n/index.js +2 -2
- package/dist/index.d.ts +22 -7
- package/dist/index.js +320 -78
- package/dist/index.js.map +1 -1
- package/dist/workbench/contribution.js +5 -5
- package/dist/workbench/index.js +8 -8
- package/dist/workbench/launch.js +2 -2
- package/dist/workbench/sessionTitle.js +3 -3
- package/dist/workbench/state.js +2 -2
- package/dist/workbench/types.d.ts +1 -0
- package/dist/workbench/types.js +1 -1
- package/dist/workspace-agent-generated-files.js +3 -3
- package/package.json +12 -12
- package/dist/chunk-6VVBG4BF.js.map +0 -1
- package/dist/chunk-AWIZJQXW.js.map +0 -1
- package/dist/chunk-BB2SVMEV.js.map +0 -1
- package/dist/chunk-MPZ3CW5C.js.map +0 -1
- package/dist/chunk-YZ3POK7G.js.map +0 -1
- /package/dist/{chunk-K3UBSTJ5.js.map → chunk-3KS22CG2.js.map} +0 -0
- /package/dist/{chunk-I5ZIKJVN.js.map → chunk-7P6CUYQT.js.map} +0 -0
- /package/dist/{chunk-4OPTXOOZ.js.map → chunk-CVSCZ3CK.js.map} +0 -0
- /package/dist/{chunk-2LGUBUEJ.js.map → chunk-FQQDBBNI.js.map} +0 -0
- /package/dist/{chunk-6TEPDMX6.js.map → chunk-G6UO6JVM.js.map} +0 -0
- /package/dist/{chunk-WNVIKTJK.js.map → chunk-NZN43XT5.js.map} +0 -0
- /package/dist/{chunk-CZSMZRAV.js.map → chunk-QC642RAG.js.map} +0 -0
- /package/dist/{chunk-24CUBQKJ.js.map → chunk-RO6KQD3J.js.map} +0 -0
- /package/dist/{chunk-CUMZV32B.js.map → chunk-SGXYVGQT.js.map} +0 -0
- /package/dist/{chunk-B6YDXIZW.js.map → chunk-SW6JCJCO.js.map} +0 -0
- /package/dist/{chunk-74TIEA6X.js.map → chunk-ZUVEBW5T.js.map} +0 -0
|
@@ -6,20 +6,20 @@ import {
|
|
|
6
6
|
projectAgentConversationVM,
|
|
7
7
|
reconcileProjectedAgentConversationVM,
|
|
8
8
|
useProjectedAgentConversation
|
|
9
|
-
} from "../chunk-
|
|
10
|
-
import "../chunk-
|
|
9
|
+
} from "../chunk-6MUKWI6Z.js";
|
|
10
|
+
import "../chunk-SW6JCJCO.js";
|
|
11
11
|
import "../chunk-PSLAWU25.js";
|
|
12
|
-
import "../chunk-
|
|
12
|
+
import "../chunk-FQQDBBNI.js";
|
|
13
13
|
import "../chunk-Y35GDLP2.js";
|
|
14
14
|
import "../chunk-LUGELG5V.js";
|
|
15
15
|
import "../chunk-FRCIPTUD.js";
|
|
16
16
|
import "../chunk-TYGL25EL.js";
|
|
17
17
|
import {
|
|
18
18
|
translate
|
|
19
|
-
} from "../chunk-
|
|
19
|
+
} from "../chunk-RO6KQD3J.js";
|
|
20
20
|
import "../chunk-PJP5BUU6.js";
|
|
21
21
|
import "../chunk-V4JGVBUN.js";
|
|
22
|
-
import "../chunk-
|
|
22
|
+
import "../chunk-CA25GD5Q.js";
|
|
23
23
|
|
|
24
24
|
// shared/WorkspaceAgentSessionDetail.tsx
|
|
25
25
|
import { useMemo } from "react";
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
formatAgentGuiConversationPlainTitle
|
|
3
|
-
} from "../chunk-
|
|
3
|
+
} from "../chunk-G6UO6JVM.js";
|
|
4
4
|
import {
|
|
5
5
|
AgentInteractivePromptSurface,
|
|
6
6
|
approvalOptionDisplayLabel,
|
|
7
7
|
getPromptToolDetails,
|
|
8
8
|
isPromptRequestIdTitle
|
|
9
|
-
} from "../chunk-
|
|
9
|
+
} from "../chunk-QC642RAG.js";
|
|
10
10
|
import {
|
|
11
11
|
PLAN_IMPLEMENTATION_ACTION_IMPLEMENT,
|
|
12
12
|
PLAN_IMPLEMENTATION_PROMPT,
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
} from "../chunk-MKHDRIGN.js";
|
|
16
16
|
import {
|
|
17
17
|
formatAgentSessionMentionText
|
|
18
|
-
} from "../chunk-
|
|
18
|
+
} from "../chunk-CVSCZ3CK.js";
|
|
19
19
|
import {
|
|
20
20
|
AgentMessageMarkdown,
|
|
21
21
|
CustomScrollArea,
|
|
@@ -25,11 +25,11 @@ import {
|
|
|
25
25
|
extractExitPlanModeOptions,
|
|
26
26
|
isExitPlanSwitchModeInput,
|
|
27
27
|
normalizeAskUserQuestions
|
|
28
|
-
} from "../chunk-
|
|
28
|
+
} from "../chunk-SW6JCJCO.js";
|
|
29
29
|
import {
|
|
30
30
|
userAvatarPlaceholderUrl,
|
|
31
31
|
workspaceAgentActivityStatusLabel
|
|
32
|
-
} from "../chunk-
|
|
32
|
+
} from "../chunk-ZUVEBW5T.js";
|
|
33
33
|
import {
|
|
34
34
|
resolveWorkspaceAgentSessionSortTimeUnixMs
|
|
35
35
|
} from "../chunk-IBIMGLCD.js";
|
|
@@ -43,10 +43,10 @@ import {
|
|
|
43
43
|
AgentGuiI18nProvider,
|
|
44
44
|
getActiveUiLanguage,
|
|
45
45
|
useTranslation
|
|
46
|
-
} from "../chunk-
|
|
46
|
+
} from "../chunk-RO6KQD3J.js";
|
|
47
47
|
import "../chunk-PJP5BUU6.js";
|
|
48
48
|
import "../chunk-V4JGVBUN.js";
|
|
49
|
-
import "../chunk-
|
|
49
|
+
import "../chunk-CA25GD5Q.js";
|
|
50
50
|
import "../chunk-GCBDIQDX.js";
|
|
51
51
|
|
|
52
52
|
// agent-message-center/WorkspaceAgentMessageCenterPanel.tsx
|
|
@@ -4728,6 +4728,7 @@ aside.workspace-agents-status-panel
|
|
|
4728
4728
|
background: var(--agent-gui-session-sidepanel-background);
|
|
4729
4729
|
overflow: hidden;
|
|
4730
4730
|
transition: width 180ms cubic-bezier(0.22, 1, 0.36, 1);
|
|
4731
|
+
-webkit-app-region: no-drag;
|
|
4731
4732
|
}
|
|
4732
4733
|
|
|
4733
4734
|
.agent-gui-node__provider-rail-panel::after {
|
|
@@ -5721,7 +5722,7 @@ button.agent-gui-node__conversation-section-toggle:hover
|
|
|
5721
5722
|
flex: 0 0 14px;
|
|
5722
5723
|
width: 14px;
|
|
5723
5724
|
height: 14px;
|
|
5724
|
-
color: var(--text-
|
|
5725
|
+
color: var(--text-tertiary);
|
|
5725
5726
|
background-color: currentColor;
|
|
5726
5727
|
mask: var(--agent-gui-conversation-provider-icon-url) center / contain
|
|
5727
5728
|
no-repeat;
|
|
@@ -7860,6 +7861,10 @@ html[data-theme="light"] [data-message-center-item-id].agent-gui-edge-glow {
|
|
|
7860
7861
|
color: var(--text-primary);
|
|
7861
7862
|
}
|
|
7862
7863
|
|
|
7864
|
+
.agent-gui-node__composer-handoff-icon[data-disabled="true"] {
|
|
7865
|
+
color: var(--agent-gui-text-tertiary);
|
|
7866
|
+
}
|
|
7867
|
+
|
|
7863
7868
|
.agent-gui-node__composer-handoff-icon-static,
|
|
7864
7869
|
.agent-gui-node__composer-handoff-icon-animated {
|
|
7865
7870
|
width: 18px;
|
|
@@ -7889,6 +7894,11 @@ html[data-theme="light"] [data-message-center-item-id].agent-gui-edge-glow {
|
|
|
7889
7894
|
opacity: 1;
|
|
7890
7895
|
}
|
|
7891
7896
|
|
|
7897
|
+
.agent-gui-node__composer-handoff-icon[data-disabled="true"]
|
|
7898
|
+
.agent-gui-node__composer-handoff-icon-animated {
|
|
7899
|
+
opacity: 0;
|
|
7900
|
+
}
|
|
7901
|
+
|
|
7892
7902
|
:root[data-theme="dark"] .agent-gui-node__composer-handoff-icon-animated {
|
|
7893
7903
|
--agent-gui-handoff-lottie-filter: brightness(0) invert(1);
|
|
7894
7904
|
}
|
|
@@ -8324,6 +8334,7 @@ html[data-theme="light"] [data-message-center-item-id].agent-gui-edge-glow {
|
|
|
8324
8334
|
padding: 0 0 12px;
|
|
8325
8335
|
overflow-x: hidden;
|
|
8326
8336
|
overflow-y: auto;
|
|
8337
|
+
-webkit-app-region: no-drag;
|
|
8327
8338
|
}
|
|
8328
8339
|
|
|
8329
8340
|
.agent-gui-node__provider-rail-tile {
|
|
@@ -8341,6 +8352,7 @@ html[data-theme="light"] [data-message-center-item-id].agent-gui-edge-glow {
|
|
|
8341
8352
|
font-weight: 600;
|
|
8342
8353
|
line-height: 14px;
|
|
8343
8354
|
text-align: center;
|
|
8355
|
+
-webkit-app-region: no-drag;
|
|
8344
8356
|
}
|
|
8345
8357
|
|
|
8346
8358
|
.agent-gui-node__provider-rail-tile + .agent-gui-node__provider-rail-tile {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
agentGuiWorkbenchOpenSessionActivationType,
|
|
3
3
|
agentGuiWorkbenchPrefillPromptActivationType
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-IIVHPXAB.js";
|
|
5
5
|
import {
|
|
6
6
|
isAgentGuiWorkbenchProvider,
|
|
7
7
|
normalizeAgentGuiWorkbenchProvider
|
|
@@ -236,4 +236,4 @@ export {
|
|
|
236
236
|
resolveAgentGuiWorkbenchLaunchDockEntryId,
|
|
237
237
|
shouldReuseAgentGuiWorkbenchDockEntryNode
|
|
238
238
|
};
|
|
239
|
-
//# sourceMappingURL=chunk-
|
|
239
|
+
//# sourceMappingURL=chunk-3KS22CG2.js.map
|
|
@@ -65,6 +65,8 @@ function localAgentGUIAgentTargetId(provider) {
|
|
|
65
65
|
return "local:hermes";
|
|
66
66
|
case "nexight":
|
|
67
67
|
return "local:nexight";
|
|
68
|
+
case "openclaw":
|
|
69
|
+
return "local:openclaw";
|
|
68
70
|
default:
|
|
69
71
|
return null;
|
|
70
72
|
}
|
|
@@ -180,8 +182,9 @@ export {
|
|
|
180
182
|
createDisabledPlaceholderAgentGUIProviderTarget,
|
|
181
183
|
createLocalAgentGUIProviderTargets,
|
|
182
184
|
localAgentGUIProviderTargetId,
|
|
185
|
+
localAgentGUIAgentTargetId,
|
|
183
186
|
normalizeAgentGUIProviderTargets,
|
|
184
187
|
resolveAgentGUIProviderTarget,
|
|
185
188
|
agentGUIProviderTargetRefsEqual
|
|
186
189
|
};
|
|
187
|
-
//# sourceMappingURL=chunk-
|
|
190
|
+
//# sourceMappingURL=chunk-4UTWOSHP.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../providerTargets.ts"],"sourcesContent":["import type {\n AgentGUIProvider,\n AgentGUIProviderTarget,\n AgentGUIProviderTargetRef\n} from \"./types.ts\";\n\nconst agentGUIProviderTargetStaticLabels: Record<AgentGUIProvider, string> = {\n \"claude-code\": \"Claude Code\",\n codex: \"Codex\",\n gemini: \"Gemini\",\n hermes: \"Hermes\",\n nexight: \"Tutti Agent\",\n openclaw: \"OpenClaw\"\n};\n\nexport const agentGUIDefaultTargetProviders = [\n \"codex\",\n \"claude-code\",\n \"nexight\",\n \"hermes\",\n \"openclaw\"\n] as const satisfies readonly AgentGUIProvider[];\n\nconst agentGUIDisabledPlaceholderProviders = [\n \"nexight\",\n \"hermes\",\n \"openclaw\"\n] as const satisfies readonly AgentGUIProvider[];\n\nexport function createLocalAgentGUIProviderTarget(\n provider: AgentGUIProvider\n): AgentGUIProviderTarget {\n const targetId = localAgentGUIProviderTargetId(provider);\n const agentTargetId = localAgentGUIAgentTargetId(provider);\n return {\n targetId,\n ...(agentTargetId ? { agentTargetId } : {}),\n provider,\n ref: {\n kind: \"local\",\n provider\n },\n label: agentGUIProviderTargetStaticLabels[provider] ?? provider\n };\n}\n\nexport function createDisabledPlaceholderAgentGUIProviderTarget(\n provider: AgentGUIProvider\n): AgentGUIProviderTarget {\n return {\n ...createLocalAgentGUIProviderTarget(provider),\n disabled: true\n };\n}\n\nexport function createLocalAgentGUIProviderTargets(\n providers: readonly AgentGUIProvider[] = agentGUIDefaultTargetProviders\n): AgentGUIProviderTarget[] {\n return providers.map((provider) =>\n createLocalAgentGUIProviderTarget(provider)\n );\n}\n\nfunction createStaticAgentGUIProviderTargets(\n providers: readonly AgentGUIProvider[] = agentGUIDefaultTargetProviders,\n options?: { includeDisabledPlaceholders?: boolean }\n): AgentGUIProviderTarget[] {\n const disabledProviders = new Set<AgentGUIProvider>(\n options?.includeDisabledPlaceholders === true\n ? agentGUIDisabledPlaceholderProviders\n : []\n );\n return providers.map((provider) =>\n disabledProviders.has(provider)\n ? createDisabledPlaceholderAgentGUIProviderTarget(provider)\n : createLocalAgentGUIProviderTarget(provider)\n );\n}\n\nexport function localAgentGUIProviderTargetId(\n provider: AgentGUIProvider\n): string {\n return `local:${provider}`;\n}\n\nexport function localAgentGUIAgentTargetId(\n provider: AgentGUIProvider\n): string | null {\n switch (provider) {\n case \"codex\":\n return \"local:codex\";\n case \"claude-code\":\n return \"local:claude-code\";\n case \"hermes\":\n return \"local:hermes\";\n case \"nexight\":\n return \"local:nexight\";\n case \"openclaw\":\n return \"local:openclaw\";\n default:\n return null;\n }\n}\n\nexport function normalizeAgentGUIProviderTargets(\n targets: readonly AgentGUIProviderTarget[] | null | undefined,\n options?: {\n includeDisabledPlaceholders?: boolean;\n useStaticCatalog?: boolean;\n }\n): AgentGUIProviderTarget[] {\n const includeDisabledPlaceholders =\n options?.includeDisabledPlaceholders === true;\n const useStaticCatalog = options?.useStaticCatalog !== false;\n const source = targets && targets.length > 0 ? targets : [];\n const normalizedTargets: AgentGUIProviderTarget[] = [];\n const seenTargetKeys = new Set<string>();\n const seenProviders = new Set<AgentGUIProvider>();\n for (const target of source) {\n const normalized = normalizeAgentGUIProviderTarget(target);\n if (!normalized) {\n continue;\n }\n const dedupeKey = `${normalized.provider}\\u0000${normalized.targetId}`;\n if (seenTargetKeys.has(dedupeKey)) {\n continue;\n }\n seenTargetKeys.add(dedupeKey);\n seenProviders.add(normalized.provider);\n normalizedTargets.push(normalized);\n }\n if (includeDisabledPlaceholders && normalizedTargets.length > 0) {\n for (const provider of agentGUIDisabledPlaceholderProviders) {\n if (seenProviders.has(provider)) {\n continue;\n }\n normalizedTargets.push(\n createDisabledPlaceholderAgentGUIProviderTarget(provider)\n );\n }\n }\n return normalizedTargets.length > 0 || !useStaticCatalog\n ? normalizedTargets\n : createStaticAgentGUIProviderTargets(undefined, {\n includeDisabledPlaceholders\n });\n}\n\nexport function resolveAgentGUIProviderTarget(input: {\n agentTargetId?: string | null;\n defaultProviderTargetId?: string | null;\n provider: AgentGUIProvider;\n providerTargetId?: string | null;\n providerTargets: readonly AgentGUIProviderTarget[];\n useStaticCatalog?: boolean;\n}): AgentGUIProviderTarget | null {\n const targetByAgentTargetId = new Map(\n input.providerTargets.flatMap((target) =>\n target.agentTargetId ? [[target.agentTargetId, target] as const] : []\n )\n );\n const agentTarget = targetByAgentTargetId.get(\n input.agentTargetId?.trim() ?? \"\"\n );\n if (agentTarget) {\n return agentTarget;\n }\n const providerTargets = input.providerTargets.filter(\n (target) => target.provider === input.provider\n );\n const targetById = new Map(\n providerTargets.map((target) => [target.targetId, target])\n );\n return (\n targetById.get(input.providerTargetId?.trim() ?? \"\") ??\n targetById.get(input.defaultProviderTargetId?.trim() ?? \"\") ??\n targetById.get(localAgentGUIProviderTargetId(input.provider)) ??\n providerTargets.find((target) => target.disabled !== true) ??\n providerTargets[0] ??\n (input.useStaticCatalog === false\n ? null\n : createLocalAgentGUIProviderTarget(input.provider))\n );\n}\n\nexport function agentGUIProviderTargetRefsEqual(\n left: AgentGUIProviderTargetRef | null | undefined,\n right: AgentGUIProviderTargetRef | null | undefined\n): boolean {\n if (left === right) {\n return true;\n }\n if (!left && !right) {\n return true;\n }\n if (!left || !right) {\n return false;\n }\n return stableProviderTargetRefKey(left) === stableProviderTargetRefKey(right);\n}\n\nfunction normalizeAgentGUIProviderTarget(\n target: AgentGUIProviderTarget\n): AgentGUIProviderTarget | null {\n const targetId = target.targetId.trim();\n const agentTargetId = target.agentTargetId?.trim();\n const label = target.label.trim();\n const kind =\n typeof target.ref.kind === \"string\" ? target.ref.kind.trim() : \"\";\n if (!targetId || !label || !kind || target.ref.provider !== target.provider) {\n return null;\n }\n return {\n ...target,\n targetId,\n ...(agentTargetId ? { agentTargetId } : {}),\n provider: target.provider,\n ref: {\n ...target.ref,\n kind,\n provider: target.provider\n },\n label,\n ...(target.description?.trim()\n ? { description: target.description.trim() }\n : {}),\n ...(target.ownerLabel?.trim()\n ? { ownerLabel: target.ownerLabel.trim() }\n : {}),\n ...(target.unavailableReason?.trim()\n ? { unavailableReason: target.unavailableReason.trim() }\n : {})\n };\n}\n\nfunction stableProviderTargetRefKey(ref: AgentGUIProviderTargetRef): string {\n return JSON.stringify(sortProviderTargetRefValue(ref));\n}\n\nfunction sortProviderTargetRefValue(value: unknown): unknown {\n if (Array.isArray(value)) {\n return value.map(sortProviderTargetRefValue);\n }\n if (!value || typeof value !== \"object\") {\n return value;\n }\n return Object.fromEntries(\n Object.entries(value)\n .sort(([left], [right]) => left.localeCompare(right))\n .map(([key, entryValue]) => [key, sortProviderTargetRefValue(entryValue)])\n );\n}\n"],"mappings":"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","names":[]}
|
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
resolveWorkspaceFilePathCandidate,
|
|
16
16
|
resolveWorkspaceLinkAction,
|
|
17
17
|
useAgentTargetPresentations
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-SW6JCJCO.js";
|
|
19
19
|
import {
|
|
20
20
|
classifyFailedAgentMessage,
|
|
21
21
|
openAgentEnvPanel,
|
|
@@ -28,7 +28,7 @@ import {
|
|
|
28
28
|
formatAgentMentionMarkdown,
|
|
29
29
|
mentionItemToAttrs,
|
|
30
30
|
parseAgentMentionMarkdown
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-FQQDBBNI.js";
|
|
32
32
|
import {
|
|
33
33
|
fileChangeCountFromChanges,
|
|
34
34
|
fileChangeEntriesFromChanges,
|
|
@@ -45,7 +45,7 @@ import {
|
|
|
45
45
|
import {
|
|
46
46
|
getActiveUiLanguage,
|
|
47
47
|
translate
|
|
48
|
-
} from "./chunk-
|
|
48
|
+
} from "./chunk-RO6KQD3J.js";
|
|
49
49
|
|
|
50
50
|
// shared/workspaceAgentTimelineCanonical.ts
|
|
51
51
|
import { isLiveTurnLifecyclePhase } from "@tutti-os/agent-activity-core";
|
|
@@ -14115,6 +14115,7 @@ var AGENT_MESSAGE_LOCATOR_BOTTOM_SAFE_INSET_MAX_PX = 48;
|
|
|
14115
14115
|
var AGENT_MESSAGE_LOCATOR_NATIVE_SMOOTH_MAX_DISTANCE_PX = 720;
|
|
14116
14116
|
var AGENT_MESSAGE_LOCATOR_FAST_SCROLL_SPEED_PX_PER_MS = 8;
|
|
14117
14117
|
var AGENT_MESSAGE_LOCATOR_FAST_SCROLL_MIN_DURATION_MS = 120;
|
|
14118
|
+
var AGENT_MESSAGE_LOCATOR_FAST_SCROLL_MAX_DURATION_MS = 320;
|
|
14118
14119
|
var agentMessageLocatorScrollAnimations = /* @__PURE__ */ new WeakMap();
|
|
14119
14120
|
function transcriptLabelsEqual(previous, next) {
|
|
14120
14121
|
return previous === next || previous.thinkingLabel === next.thinkingLabel && previous.processing === next.processing && previous.turnSummary === next.turnSummary && previous.rawTimelineJson === next.rawTimelineJson && previous.userMessageLocator === next.userMessageLocator && previous.toolCallsLabel === next.toolCallsLabel;
|
|
@@ -14754,7 +14755,10 @@ function animateMessageLocatorScroll(scrollParent, targetScrollTop, distance) {
|
|
|
14754
14755
|
const delta = targetScrollTop - startScrollTop;
|
|
14755
14756
|
const durationMs = Math.max(
|
|
14756
14757
|
AGENT_MESSAGE_LOCATOR_FAST_SCROLL_MIN_DURATION_MS,
|
|
14757
|
-
|
|
14758
|
+
Math.min(
|
|
14759
|
+
AGENT_MESSAGE_LOCATOR_FAST_SCROLL_MAX_DURATION_MS,
|
|
14760
|
+
distance / AGENT_MESSAGE_LOCATOR_FAST_SCROLL_SPEED_PX_PER_MS
|
|
14761
|
+
)
|
|
14758
14762
|
);
|
|
14759
14763
|
const startedAt = performance.now();
|
|
14760
14764
|
const step = (now) => {
|
|
@@ -15049,4 +15053,4 @@ export {
|
|
|
15049
15053
|
AgentConversationFlow,
|
|
15050
15054
|
useProjectedAgentConversation
|
|
15051
15055
|
};
|
|
15052
|
-
//# sourceMappingURL=chunk-
|
|
15056
|
+
//# sourceMappingURL=chunk-6MUKWI6Z.js.map
|