@ai-matrx/chat 0.6.6 → 0.7.1
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/CHANGELOG.md +42 -0
- package/README.md +1 -1
- package/dist/agents/components/agent-widgets/AgentChatHistorySidebar.js +16 -55
- package/dist/agents/components/chat/chat-door.d.ts +67 -0
- package/dist/agents/components/chat/chat-door.js +100 -0
- package/dist/agents/components/conversation-history/AgentConversationList.d.ts +83 -0
- package/dist/agents/components/conversation-history/AgentConversationList.js +252 -0
- package/dist/agents/components/conversation-history/ConversationArchiveSection.d.ts +5 -1
- package/dist/agents/components/conversation-history/ConversationArchiveSection.js +22 -4
- package/dist/agents/components/conversation-history/ConversationHistorySidebar.js +20 -65
- package/dist/agents/components/inputs/input-components/TextareaInput.js +2 -0
- package/dist/agents/components/inputs/input-components/VariableInputComponent.js +7 -6
- package/dist/agents/components/inputs/smart-input/ConversationCompanionPills.d.ts +3 -0
- package/dist/agents/components/inputs/smart-input/ConversationCompanionPills.js +40 -0
- package/dist/agents/components/inputs/smart-input/ConversationContextRail.js +6 -29
- package/dist/agents/components/inputs/smart-input/DeviceToolsModeRow.d.ts +3 -0
- package/dist/agents/components/inputs/smart-input/DeviceToolsModeRow.js +35 -0
- package/dist/agents/components/inputs/smart-input/InboxQueueStrip.js +0 -8
- package/dist/agents/components/inputs/smart-input/RunToolPicker.js +15 -11
- package/dist/agents/components/inputs/smart-input/composer/ComposerPlusMenu.js +22 -0
- package/dist/agents/components/inputs/smart-input/rail-pill.d.ts +35 -0
- package/dist/agents/components/inputs/smart-input/rail-pill.js +30 -0
- package/dist/agents/components/inputs/variable-input-variations/AgentVariableForm.js +52 -48
- package/dist/agents/components/run-controls/panels/shared.d.ts +1 -1
- package/dist/agents/components/shared/AgentModeController.js +3 -2
- package/dist/agents/components/shell/AgentRunSidebarMenu.js +15 -54
- package/dist/agents/components/working-document/documents-workspace/DocumentsListRail.js +1 -2
- package/dist/agents/engine.d.ts +15 -0
- package/dist/agents/engine.js +17 -0
- package/dist/agents/hooks/useModelControls.js +3 -175
- package/dist/agents/redux/agent-definition/selectors.d.ts +237 -237
- package/dist/agents/redux/agent-shortcut-categories/selectors.d.ts +50 -50
- package/dist/agents/redux/agent-shortcuts/selectors.d.ts +147 -147
- package/dist/agents/redux/conversation-history/thunks.js +6 -18
- package/dist/agents/redux/conversation-list/conversation-list.selectors.d.ts +1 -73
- package/dist/agents/redux/conversation-list/conversation-list.selectors.js +2 -36
- package/dist/agents/redux/conversation-list/conversation-list.slice.d.ts +7 -22
- package/dist/agents/redux/conversation-list/conversation-list.slice.js +7 -62
- package/dist/agents/redux/conversation-list/conversation-list.thunks.d.ts +0 -25
- package/dist/agents/redux/conversation-list/conversation-list.thunks.js +2 -58
- package/dist/agents/redux/conversation-list/conversation-list.types.d.ts +0 -5
- package/dist/agents/redux/conversation-list/conversation-rows.d.ts +16 -0
- package/dist/agents/redux/conversation-list/conversation-rows.js +24 -0
- package/dist/agents/redux/conversation-list/conversation-trash.thunks.d.ts +1 -0
- package/dist/agents/redux/conversation-list/conversation-trash.thunks.js +13 -18
- package/dist/agents/redux/execution-system/active-requests/active-requests.selectors.d.ts +54 -54
- package/dist/agents/redux/execution-system/context-state/context-state.selectors.d.ts +14 -14
- package/dist/agents/redux/execution-system/conversations/conversations.selectors.d.ts +5 -5
- package/dist/agents/redux/execution-system/instance-context/instance-context.selectors.d.ts +3 -3
- package/dist/agents/redux/execution-system/instance-resources/instance-resources.selectors.d.ts +8 -8
- package/dist/agents/redux/execution-system/instance-ui-state/instance-ui-state.selectors.d.ts +5 -5
- package/dist/agents/redux/execution-system/instance-variable-values/instance-variable-values.selectors.d.ts +7 -7
- package/dist/agents/redux/execution-system/messages/messages.selectors.d.ts +1 -1
- package/dist/agents/redux/execution-system/observability/observability.selectors.d.ts +7 -7
- package/dist/agents/redux/execution-system/observational-memory/observational-memory.selectors.d.ts +1 -1
- package/dist/agents/redux/execution-system/selectors/aggregate.selectors.d.ts +14 -14
- package/dist/agents/redux/execution-system/thunks/create-instance.thunk.d.ts +10 -1
- package/dist/agents/redux/execution-system/thunks/create-instance.thunk.js +114 -265
- package/dist/agents/redux/execution-system/thunks/dispatch-matrx-extend-tool.thunk.js +18 -2
- package/dist/agents/redux/execution-system/thunks/dispatch-surface-client-tool.thunk.js +10 -28
- package/dist/agents/redux/execution-system/thunks/dispatch-surface-write.thunk.js +10 -25
- package/dist/agents/redux/execution-system/thunks/execute-instance.thunk.js +20 -0
- package/dist/agents/redux/execution-system/thunks/execute-manual-instance.thunk.js +6 -1
- package/dist/agents/redux/execution-system/thunks/notify-and-play-dispatcher.d.ts +58 -0
- package/dist/agents/redux/execution-system/thunks/notify-and-play-dispatcher.js +62 -0
- package/dist/agents/redux/execution-system/thunks/post-delegated-tool-outcome.d.ts +23 -0
- package/dist/agents/redux/execution-system/thunks/post-delegated-tool-outcome.js +37 -0
- package/dist/agents/redux/execution-system/thunks/resume-instance.thunk.js +10 -2
- package/dist/agents/redux/execution-system/utils/build-tool-injection.d.ts +7 -0
- package/dist/agents/redux/execution-system/utils/build-tool-injection.js +18 -6
- package/dist/agents/redux/execution-system/utils/host-turn.d.ts +45 -0
- package/dist/agents/redux/execution-system/utils/host-turn.js +119 -0
- package/dist/agents/redux/proposed-directives/proposedDirectivesSlice.d.ts +1 -1
- package/dist/agents/scribe-tools/dispatcher/dispatch-scribe-tool.thunk.d.ts +50 -20
- package/dist/agents/scribe-tools/dispatcher/dispatch-scribe-tool.thunk.js +9 -101
- package/dist/agents/types/tool-injection.types.d.ts +18 -2
- package/dist/agents/ui-first-tools/redux/agent-lists.selectors.d.ts +2 -2
- package/dist/agents/ui-first-tools/redux/pending-asks.slice.d.ts +2 -1
- package/dist/agents/ui-first-tools/redux/resolve-asks-with-input.thunk.js +1 -1
- package/dist/agents/ui-first-tools/tools/ask-response.d.ts +29 -0
- package/dist/agents/ui-first-tools/tools/ask-response.js +15 -0
- package/dist/agents/ui-first-tools/tools/schemas.d.ts +3 -25
- package/dist/agents/ui-first-tools/tools/schemas.js +1 -12
- package/dist/agents/ui-first-tools/ui/ApprovalCard.js +1 -1
- package/dist/agents/ui-first-tools/ui/AskWizard.d.ts +1 -1
- package/dist/agents/ui-first-tools/ui/AskWizard.js +1 -1
- package/dist/cx-chat/_legacy-stubs.d.ts +5 -5
- package/dist/cx-chat/components/SsrSidebarChats.js +13 -15
- package/dist/cx-chat/components/messages/UserMessage.d.ts +2 -2
- package/dist/cx-chat/types/conversation.d.ts +6 -6
- package/dist/cx-chat/utils/buildContentBlocksForSave.d.ts +1 -1
- package/dist/cx-chat/utils/cx-content-converter.d.ts +1 -1
- package/dist/host/bare-host-chrome.js +9 -3
- package/dist/host/composer-extensions.d.ts +75 -0
- package/dist/host/composer-extensions.js +92 -0
- package/dist/host/configure.js +1 -0
- package/dist/host/contract.d.ts +105 -13
- package/dist/host/defaults/confirm.d.ts +15 -0
- package/dist/host/defaults/confirm.js +25 -0
- package/dist/host/defaults/files-ui.d.ts +85 -0
- package/dist/host/defaults/files-ui.js +158 -0
- package/dist/host/defaults/gates.d.ts +27 -0
- package/dist/host/defaults/gates.js +72 -0
- package/dist/host/defaults/media-client.d.ts +15 -0
- package/dist/host/defaults/media-client.js +40 -0
- package/dist/host/defaults/voice.d.ts +81 -0
- package/dist/host/defaults/voice.js +239 -0
- package/dist/host/device-tool-handoff.d.ts +26 -0
- package/dist/host/device-tool-handoff.js +45 -0
- package/dist/host/index.d.ts +1 -0
- package/dist/host/index.js +4 -1
- package/dist/host/microphone.d.ts +11 -0
- package/dist/host/microphone.js +17 -0
- package/dist/host/ui-slots.d.ts +29 -74
- package/dist/host/ui-slots.js +40 -42
- package/dist/store/create-chat-store.d.ts +2 -2
- package/dist/store/middlewares.d.ts +5 -5
- package/dist/store/slices.d.ts +1 -1
- package/dist/surfaces/redux/selectors.d.ts +2 -2
- package/dist/tool-call-visualization/components/ToolCallVisualization.js +3 -2
- package/dist/tool-call-visualization/configured-rows/ConfiguredRowRenderer.d.ts +15 -0
- package/dist/tool-call-visualization/configured-rows/ConfiguredRowRenderer.js +36 -0
- package/dist/tool-call-visualization/configured-rows/ConfiguredToolRow.d.ts +40 -0
- package/dist/tool-call-visualization/configured-rows/ConfiguredToolRow.js +296 -0
- package/dist/tool-call-visualization/configured-rows/CopyToolButton.d.ts +23 -0
- package/dist/tool-call-visualization/configured-rows/CopyToolButton.js +62 -0
- package/dist/tool-call-visualization/configured-rows/ToolProgressView.d.ts +23 -0
- package/dist/tool-call-visualization/configured-rows/ToolProgressView.js +147 -0
- package/dist/tool-call-visualization/configured-rows/field-components.d.ts +15 -0
- package/dist/tool-call-visualization/configured-rows/field-components.js +244 -0
- package/dist/tool-call-visualization/configured-rows/helpers.d.ts +39 -0
- package/dist/tool-call-visualization/configured-rows/helpers.js +110 -0
- package/dist/tool-call-visualization/configured-rows/register.d.ts +25 -0
- package/dist/tool-call-visualization/configured-rows/register.js +51 -0
- package/dist/tool-call-visualization/configured-rows/registries.d.ts +27 -0
- package/dist/tool-call-visualization/configured-rows/registries.js +14 -0
- package/dist/tool-call-visualization/configured-rows/to-row-entry.d.ts +8 -0
- package/dist/tool-call-visualization/configured-rows/to-row-entry.js +38 -0
- package/dist/tool-call-visualization/configured-rows/transforms.d.ts +14 -0
- package/dist/tool-call-visualization/configured-rows/transforms.js +30 -0
- package/dist/tool-call-visualization/configured-rows/types.d.ts +140 -0
- package/dist/tool-call-visualization/redux/selectors.d.ts +1 -1
- package/dist/tool-call-visualization/registry/registry.d.ts +1 -1
- package/dist/tool-call-visualization/registry/registry.js +8 -1
- package/dist/tool-call-visualization/types.d.ts +1 -1
- package/dist/ui/chat-protocol-types.d.ts +0 -1
- package/dist/ui/ownership.d.ts +25 -0
- package/dist/ui/ownership.js +18 -0
- package/dist/voice-agent/audio/audioCapture.js +11 -6
- package/dist/window-panels/windows/agents/AgentRunHistoryWindow.d.ts +1 -2
- package/dist/window-panels/windows/agents/AgentRunHistoryWindow.js +21 -181
- package/dist/window-panels/windows/agents/AgentRunWindow.js +26 -13
- package/package.json +4627 -125
- package/dist/agents/components/agent-widgets/chat-assistant/AssistantMessageCard.d.ts +0 -7
- package/dist/agents/components/agent-widgets/chat-assistant/AssistantMessageCard.js +0 -33
- package/dist/agents/components/agent-widgets/chat-assistant/StatusCard.d.ts +0 -6
- package/dist/agents/components/agent-widgets/chat-assistant/StatusCard.js +0 -21
- package/dist/agents/components/agent-widgets/chat-assistant/UserMessageCard.d.ts +0 -6
- package/dist/agents/components/agent-widgets/chat-assistant/UserMessageCard.js +0 -11
- package/dist/agents/components/agent-widgets/chat-assistant/VariableInputCard.d.ts +0 -12
- package/dist/agents/components/agent-widgets/chat-assistant/VariableInputCard.js +0 -7
- package/dist/agents/components/agent-widgets/execution-gates/PreExecutionCard.d.ts +0 -4
- package/dist/agents/components/agent-widgets/execution-gates/PreExecutionCard.js +0 -81
- package/dist/agents/components/run/run-sidebar/SidebarHeader.d.ts +0 -21
- package/dist/agents/components/run/run-sidebar/SidebarHeader.js +0 -50
- package/dist/agents/components/run-controls/AdvancedRunSettings/index.d.ts +0 -6
- package/dist/agents/components/run-controls/AdvancedRunSettings/index.js +0 -32
- package/dist/agents/components/run-controls/RunSettingsModal.d.ts +0 -5
- package/dist/agents/components/run-controls/RunSettingsModal.js +0 -22
- package/dist/agents/components/shell/AgentBuildSidebarExtras.d.ts +0 -6
- package/dist/agents/components/shell/AgentBuildSidebarExtras.js +0 -30
- package/dist/agents/constants/agent-system-competitors.d.ts +0 -9
- package/dist/agents/constants/agent-system-competitors.js +0 -125
- package/dist/agents/hooks/message-crud/useMessageActions.d.ts +0 -29
- package/dist/agents/hooks/message-crud/useMessageActions.js +0 -119
- package/dist/agents/hooks/useConversationPendingCalls.d.ts +0 -30
- package/dist/agents/hooks/useConversationPendingCalls.js +0 -42
- package/dist/agents/model-registry/model-classes.d.ts +0 -1
- package/dist/agents/model-registry/model-classes.js +0 -1
- package/dist/agents/redux/conversation-history/index.d.ts +0 -18
- package/dist/agents/redux/conversation-history/index.js +0 -4
- package/dist/agents/redux/execution-system/instance-variable-values/instance-variable-values.thunks.d.ts +0 -38
- package/dist/agents/redux/execution-system/instance-variable-values/instance-variable-values.thunks.js +0 -42
- package/dist/agents/redux/execution-system/message-crud/server/compact-turns.thunk.d.ts +0 -58
- package/dist/agents/redux/execution-system/message-crud/server/compact-turns.thunk.js +0 -50
- package/dist/agents/redux/execution-system/message-crud/server/fork-and-run-server.thunk.d.ts +0 -76
- package/dist/agents/redux/execution-system/message-crud/server/fork-and-run-server.thunk.js +0 -101
- package/dist/agents/redux/execution-system/thunks/attach-workflow-run.d.ts +0 -38
- package/dist/agents/redux/execution-system/thunks/attach-workflow-run.js +0 -25
- package/dist/agents/redux/execution-system/utils/source-slice-helpers.d.ts +0 -45
- package/dist/agents/redux/execution-system/utils/source-slice-helpers.js +0 -50
- package/dist/agents/runtime/realtime/launchRealtimeSession.thunk.d.ts +0 -25
- package/dist/agents/runtime/realtime/launchRealtimeSession.thunk.js +0 -15
- package/dist/agents/services/agentService.d.ts +0 -12
- package/dist/agents/services/agentService.js +0 -92
- package/dist/agents/utils/escape-code-fences.d.ts +0 -15
- package/dist/agents/utils/escape-code-fences.js +0 -9
- package/dist/agents/utils/normalize-managed-options.d.ts +0 -30
- package/dist/agents/utils/normalize-managed-options.js +0 -29
- package/dist/agents/utils/processedDocumentContext.d.ts +0 -51
- package/dist/agents/utils/processedDocumentContext.js +0 -51
- package/dist/agents/utils/variable-validation.d.ts +0 -28
- package/dist/agents/utils/variable-validation.js +0 -54
- package/dist/cx-chat/components/ChatConversationSkeleton.d.ts +0 -9
- package/dist/cx-chat/components/ChatConversationSkeleton.js +0 -45
- package/dist/cx-chat/components/ChatPanelBackButton.d.ts +0 -1
- package/dist/cx-chat/components/ChatPanelBackButton.js +0 -26
- package/dist/cx-chat/components/messages/MessageErrorBoundary.d.ts +0 -20
- package/dist/cx-chat/components/messages/MessageErrorBoundary.js +0 -40
- package/dist/cx-chat/components/variable-inputs/CheckboxGroupInput.d.ts +0 -14
- package/dist/cx-chat/components/variable-inputs/CheckboxGroupInput.js +0 -160
- package/dist/cx-chat/components/variable-inputs/NumberInput.d.ts +0 -15
- package/dist/cx-chat/components/variable-inputs/NumberInput.js +0 -79
- package/dist/cx-chat/components/variable-inputs/RadioGroupInput.d.ts +0 -14
- package/dist/cx-chat/components/variable-inputs/RadioGroupInput.js +0 -125
- package/dist/cx-chat/components/variable-inputs/SelectInput.d.ts +0 -14
- package/dist/cx-chat/components/variable-inputs/SelectInput.js +0 -92
- package/dist/cx-chat/components/variable-inputs/TextareaInput.d.ts +0 -14
- package/dist/cx-chat/components/variable-inputs/TextareaInput.js +0 -46
- package/dist/cx-chat/components/variable-inputs/ToggleInput.d.ts +0 -14
- package/dist/cx-chat/components/variable-inputs/ToggleInput.js +0 -46
- package/dist/cx-chat/hooks/useChatPersistence.d.ts +0 -28
- package/dist/cx-chat/hooks/useChatPersistence.js +0 -180
- package/dist/cx-chat/hooks/useInstanceBootstrap.d.ts +0 -1
- package/dist/cx-chat/hooks/useInstanceBootstrap.js +0 -115
- package/dist/cx-chat/types/content.d.ts +0 -184
- package/dist/cx-chat/types/content.js +0 -91
- package/dist/cx-chat/types/cx-tables.d.ts +0 -176
- package/dist/cx-chat/utils/settings-diff.d.ts +0 -13
- package/dist/cx-chat/utils/settings-diff.js +0 -25
- package/dist/public-chat/components/AgentSelector.d.ts +0 -22
- package/dist/public-chat/components/AgentSelector.js +0 -80
- package/dist/public-chat/components/GuidedVariableInputs.d.ts +0 -25
- package/dist/public-chat/components/GuidedVariableInputs.js +0 -623
- package/dist/public-chat/components/PublicVariableInputs.d.ts +0 -29
- package/dist/public-chat/components/PublicVariableInputs.js +0 -172
- package/dist/public-chat/types/content.d.ts +0 -184
- package/dist/public-chat/types/content.js +0 -91
- package/dist/tool-call-visualization/renderers/_shared-entity/EntityOpenActions.d.ts +0 -15
- package/dist/tool-call-visualization/renderers/_shared-entity/EntityOpenActions.js +0 -31
- package/dist/tool-call-visualization/utils/toolCallBlockToLifecycleEntry.d.ts +0 -24
- package/dist/tool-call-visualization/utils/toolCallBlockToLifecycleEntry.js +0 -26
- package/dist/ui/AudioOutputBlockSkeleton.d.ts +0 -17
- package/dist/ui/AudioOutputBlockSkeleton.js +0 -78
- package/dist/ui/lazy/PublicChatVariableInputs.d.ts +0 -2
- package/dist/ui/lazy/PublicChatVariableInputs.js +0 -16
- package/dist/utils/xml/readXmlTag.d.ts +0 -12
- package/dist/utils/xml/readXmlTag.js +0 -66
- /package/dist/{cx-chat/types/cx-tables.js → tool-call-visualization/configured-rows/types.js} +0 -0
|
@@ -1,172 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
-
import { useState, useCallback } from "react";
|
|
4
|
-
import { ChevronRight, ChevronUp } from "lucide-react";
|
|
5
|
-
import { Label } from "@ai-matrx/design-system";
|
|
6
|
-
import {
|
|
7
|
-
Popover,
|
|
8
|
-
PopoverContent,
|
|
9
|
-
PopoverTrigger
|
|
10
|
-
} from "@ai-matrx/design-system";
|
|
11
|
-
import { variableRunLabel } from "@ai-matrx/agents";
|
|
12
|
-
import { VariableInputComponent } from "../../agents/components/inputs/input-components/VariableInputComponent.js";
|
|
13
|
-
import { enterSendsHere } from "@ai-matrx/kit/composer-keys";
|
|
14
|
-
import { Button } from "@ai-matrx/design-system/controls";
|
|
15
|
-
function PublicVariableInputs({
|
|
16
|
-
variableDefaults,
|
|
17
|
-
values,
|
|
18
|
-
onChange,
|
|
19
|
-
disabled = false,
|
|
20
|
-
compact = false,
|
|
21
|
-
minimal = false,
|
|
22
|
-
onSubmit,
|
|
23
|
-
submitOnEnter = false,
|
|
24
|
-
textInputRef
|
|
25
|
-
}) {
|
|
26
|
-
const [expandedVariable, setExpandedVariable] = useState(null);
|
|
27
|
-
const handleVariableChange = useCallback(
|
|
28
|
-
(variableName, value) => {
|
|
29
|
-
onChange(variableName, value);
|
|
30
|
-
},
|
|
31
|
-
[onChange]
|
|
32
|
-
);
|
|
33
|
-
const handleExpandedVariableChange = useCallback(
|
|
34
|
-
(variable) => {
|
|
35
|
-
setExpandedVariable(variable);
|
|
36
|
-
},
|
|
37
|
-
[]
|
|
38
|
-
);
|
|
39
|
-
const handleVariableKeyDown = useCallback(
|
|
40
|
-
(e, index) => {
|
|
41
|
-
if (e.key === "Enter" && !e.shiftKey) {
|
|
42
|
-
e.preventDefault();
|
|
43
|
-
const isLast = index === variableDefaults.length - 1;
|
|
44
|
-
if (!isLast) {
|
|
45
|
-
const container = e.currentTarget.closest(
|
|
46
|
-
"[data-variable-inputs]"
|
|
47
|
-
);
|
|
48
|
-
const nextInput = container?.querySelector(
|
|
49
|
-
`[data-variable-index="${index + 1}"]`
|
|
50
|
-
);
|
|
51
|
-
if (nextInput) {
|
|
52
|
-
nextInput.focus();
|
|
53
|
-
return;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
if (enterSendsHere(submitOnEnter) && onSubmit) {
|
|
57
|
-
onSubmit("", void 0);
|
|
58
|
-
} else if (textInputRef?.current) {
|
|
59
|
-
textInputRef.current.focus();
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
},
|
|
63
|
-
[variableDefaults.length, submitOnEnter, onSubmit, textInputRef]
|
|
64
|
-
);
|
|
65
|
-
if (variableDefaults.length === 0) {
|
|
66
|
-
return null;
|
|
67
|
-
}
|
|
68
|
-
const variableInputs = /* @__PURE__ */ jsx(Fragment, { children: variableDefaults.map((variable, index) => {
|
|
69
|
-
const isExpanded = expandedVariable === variable.name;
|
|
70
|
-
const rawValue = values[variable.name] ?? variable.defaultValue ?? "";
|
|
71
|
-
const value = typeof rawValue === "string" ? rawValue : String(rawValue);
|
|
72
|
-
return /* @__PURE__ */ jsx("div", { children: isExpanded ? /* @__PURE__ */ jsxs(
|
|
73
|
-
Popover,
|
|
74
|
-
{
|
|
75
|
-
open: expandedVariable === variable.name,
|
|
76
|
-
onOpenChange: (open) => {
|
|
77
|
-
if (!open) {
|
|
78
|
-
handleExpandedVariableChange(null);
|
|
79
|
-
}
|
|
80
|
-
},
|
|
81
|
-
children: [
|
|
82
|
-
/* @__PURE__ */ jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs(
|
|
83
|
-
"div",
|
|
84
|
-
{
|
|
85
|
-
className: "w-full flex items-center gap-2 pl-3 pr-3 h-10 bg-background border-b border-border cursor-pointer hover:bg-accent transition-colors group",
|
|
86
|
-
onClick: () => handleExpandedVariableChange(variable.name),
|
|
87
|
-
children: [
|
|
88
|
-
/* @__PURE__ */ jsxs(Label, { className: "text-xs font-medium text-muted-foreground whitespace-nowrap flex-shrink-0 cursor-pointer", children: [
|
|
89
|
-
variableRunLabel(variable),
|
|
90
|
-
":"
|
|
91
|
-
] }),
|
|
92
|
-
/* @__PURE__ */ jsx("div", { className: "flex-1 text-xs text-foreground min-w-0", children: value ? /* @__PURE__ */ jsx("span", { className: "whitespace-nowrap overflow-hidden text-ellipsis block", children: value.replace(/\n/g, " \u21B5 ") }) : /* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: variable.helpText || "Enter value..." }) }),
|
|
93
|
-
/* @__PURE__ */ jsx(ChevronUp, { className: "w-3.5 h-3.5 text-primary flex-shrink-0 transition-colors" })
|
|
94
|
-
]
|
|
95
|
-
}
|
|
96
|
-
) }),
|
|
97
|
-
/* @__PURE__ */ jsx(
|
|
98
|
-
PopoverContent,
|
|
99
|
-
{
|
|
100
|
-
className: "w-[500px] max-h-[500px] p-3 border-border overflow-y-auto scrollbar-thin",
|
|
101
|
-
align: "center",
|
|
102
|
-
side: "top",
|
|
103
|
-
sideOffset: 8,
|
|
104
|
-
children: /* @__PURE__ */ jsx(
|
|
105
|
-
VariableInputComponent,
|
|
106
|
-
{
|
|
107
|
-
value,
|
|
108
|
-
onChange: (newValue) => handleVariableChange(variable.name, newValue),
|
|
109
|
-
variableName: variable.name,
|
|
110
|
-
label: variableRunLabel(variable),
|
|
111
|
-
customComponent: variable.customComponent,
|
|
112
|
-
onRequestClose: () => handleExpandedVariableChange(null),
|
|
113
|
-
helpText: variable.helpText,
|
|
114
|
-
compact
|
|
115
|
-
}
|
|
116
|
-
)
|
|
117
|
-
}
|
|
118
|
-
)
|
|
119
|
-
]
|
|
120
|
-
}
|
|
121
|
-
) : /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 pl-3 pr-3 h-10 bg-background border-b border-border hover:bg-accent transition-colors focus-within:border-primary focus-within:ring-2 focus-within:ring-primary/20 group", children: [
|
|
122
|
-
/* @__PURE__ */ jsxs(
|
|
123
|
-
Label,
|
|
124
|
-
{
|
|
125
|
-
className: "text-xs font-medium text-muted-foreground whitespace-nowrap flex-shrink-0 cursor-pointer",
|
|
126
|
-
onClick: () => handleExpandedVariableChange(variable.name),
|
|
127
|
-
children: [
|
|
128
|
-
variableRunLabel(variable),
|
|
129
|
-
":"
|
|
130
|
-
]
|
|
131
|
-
}
|
|
132
|
-
),
|
|
133
|
-
/* @__PURE__ */ jsx(
|
|
134
|
-
"input",
|
|
135
|
-
{
|
|
136
|
-
type: "text",
|
|
137
|
-
value: value.includes("\n") ? value.replace(/\n/g, " \u21B5 ") : value,
|
|
138
|
-
onChange: (e) => handleVariableChange(variable.name, e.target.value),
|
|
139
|
-
onKeyDown: (e) => handleVariableKeyDown(e, index),
|
|
140
|
-
placeholder: variable.helpText || "Enter value...",
|
|
141
|
-
className: "flex-1 text-base md:text-xs bg-transparent border-none outline-none focus:outline-none text-foreground placeholder:text-muted-foreground min-w-0",
|
|
142
|
-
"data-variable-index": index,
|
|
143
|
-
disabled
|
|
144
|
-
}
|
|
145
|
-
),
|
|
146
|
-
/* @__PURE__ */ jsx(Button, { variant: "quiet", icon: /* @__PURE__ */ jsx(ChevronRight, {}), onClick: () => handleExpandedVariableChange(variable.name), disabled, title: "Expand to full editor", "aria-label": "Expand to full editor" })
|
|
147
|
-
] }) }, variable.name);
|
|
148
|
-
}) });
|
|
149
|
-
if (minimal) {
|
|
150
|
-
return /* @__PURE__ */ jsx(
|
|
151
|
-
"div",
|
|
152
|
-
{
|
|
153
|
-
className: "bg-card rounded-xl border border-border overflow-hidden",
|
|
154
|
-
"data-variable-inputs": true,
|
|
155
|
-
children: variableInputs
|
|
156
|
-
}
|
|
157
|
-
);
|
|
158
|
-
}
|
|
159
|
-
return /* @__PURE__ */ jsx(
|
|
160
|
-
"div",
|
|
161
|
-
{
|
|
162
|
-
className: "bg-card rounded-xl border border-border overflow-hidden",
|
|
163
|
-
"data-variable-inputs": true,
|
|
164
|
-
children: variableInputs
|
|
165
|
-
}
|
|
166
|
-
);
|
|
167
|
-
}
|
|
168
|
-
var PublicVariableInputs_default = PublicVariableInputs;
|
|
169
|
-
export {
|
|
170
|
-
PublicVariableInputs,
|
|
171
|
-
PublicVariableInputs_default as default
|
|
172
|
-
};
|
|
@@ -1,184 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* BACKEND SUPPORTED TYPES (from types/agent-api.ts):
|
|
3
|
-
* - input_text: { type, text }
|
|
4
|
-
* - input_image: { type, url }
|
|
5
|
-
* - input_audio: { type, url }
|
|
6
|
-
* - input_file: { type, url }
|
|
7
|
-
*
|
|
8
|
-
* All file/media types use a consistent 'url' field for the resource location.
|
|
9
|
-
* Backend accepts [key: string]: unknown, so additional fields won't break.
|
|
10
|
-
*/
|
|
11
|
-
/**
|
|
12
|
-
* Base content item - all content items have a type
|
|
13
|
-
*/
|
|
14
|
-
interface BaseContentItem {
|
|
15
|
-
type: string;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Text input content
|
|
19
|
-
* Backend field: text
|
|
20
|
-
*/
|
|
21
|
-
export interface TextContentItem extends BaseContentItem {
|
|
22
|
-
type: 'input_text';
|
|
23
|
-
text: string;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Image input content
|
|
27
|
-
* Backend field: url
|
|
28
|
-
*/
|
|
29
|
-
export interface ImageContentItem extends BaseContentItem {
|
|
30
|
-
type: 'input_image';
|
|
31
|
-
url: string;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Audio input content
|
|
35
|
-
* Backend field: url
|
|
36
|
-
*/
|
|
37
|
-
export interface AudioContentItem extends BaseContentItem {
|
|
38
|
-
type: 'input_audio';
|
|
39
|
-
url: string;
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Generic file input (server will determine type)
|
|
43
|
-
* Backend field: url
|
|
44
|
-
*/
|
|
45
|
-
export interface FileContentItem extends BaseContentItem {
|
|
46
|
-
type: 'input_file';
|
|
47
|
-
url: string;
|
|
48
|
-
}
|
|
49
|
-
export type VideoContentItem = FileContentItem;
|
|
50
|
-
export type DocumentContentItem = FileContentItem;
|
|
51
|
-
/**
|
|
52
|
-
* YouTube video content
|
|
53
|
-
* Note: Backend may not support this - sending as-is for future support
|
|
54
|
-
*/
|
|
55
|
-
export interface YouTubeContentItem extends BaseContentItem {
|
|
56
|
-
type: 'youtube_video';
|
|
57
|
-
url: string;
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* Webpage content (scraped text)
|
|
61
|
-
* Note: Backend may not support this - sending as-is for future support
|
|
62
|
-
*/
|
|
63
|
-
export interface WebpageContentItem extends BaseContentItem {
|
|
64
|
-
type: 'input_webpage';
|
|
65
|
-
url: string;
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* Note content (from Matrx notes)
|
|
69
|
-
* Note: Backend may not support this - sending as-is for future support
|
|
70
|
-
*/
|
|
71
|
-
export interface NoteContentItem extends BaseContentItem {
|
|
72
|
-
type: 'input_note';
|
|
73
|
-
note_id: string;
|
|
74
|
-
title: string;
|
|
75
|
-
content: string;
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Task content (from Matrx tasks)
|
|
79
|
-
* Note: Backend may not support this - sending as-is for future support
|
|
80
|
-
*/
|
|
81
|
-
export interface TaskContentItem extends BaseContentItem {
|
|
82
|
-
type: 'input_task';
|
|
83
|
-
task_id: string;
|
|
84
|
-
title: string;
|
|
85
|
-
description?: string;
|
|
86
|
-
status?: string;
|
|
87
|
-
}
|
|
88
|
-
/**
|
|
89
|
-
* Table content (from Matrx tables)
|
|
90
|
-
* Note: Backend may not support this - sending as-is for future support
|
|
91
|
-
*/
|
|
92
|
-
export interface TableContentItem extends BaseContentItem {
|
|
93
|
-
type: 'input_table';
|
|
94
|
-
table_id: string;
|
|
95
|
-
table_name: string;
|
|
96
|
-
data?: string;
|
|
97
|
-
}
|
|
98
|
-
/**
|
|
99
|
-
* Union type for all content items
|
|
100
|
-
*/
|
|
101
|
-
export type ContentItem = TextContentItem | ImageContentItem | AudioContentItem | VideoContentItem | DocumentContentItem | YouTubeContentItem | FileContentItem | WebpageContentItem | NoteContentItem | TaskContentItem | TableContentItem;
|
|
102
|
-
/**
|
|
103
|
-
* Resource types that can be attached to messages.
|
|
104
|
-
* Aligned with features/prompts/types/resources.ts for full cross-route parity.
|
|
105
|
-
*
|
|
106
|
-
* - 'file' — Uploaded canonical file
|
|
107
|
-
* - 'image_link' — Direct image URL (alias for image_url, kept for backward compat)
|
|
108
|
-
* - 'image_url' — Direct image URL (canonical name, matches prompts system)
|
|
109
|
-
* - 'file_link' — Direct file URL (alias for file_url, kept for backward compat)
|
|
110
|
-
* - 'file_url' — Direct file URL (canonical name, matches prompts system)
|
|
111
|
-
* - 'audio' — Audio file
|
|
112
|
-
* - 'youtube' — YouTube video
|
|
113
|
-
* - 'webpage' — Scraped webpage content
|
|
114
|
-
* - 'note' — Matrx note (requires auth)
|
|
115
|
-
* - 'task' — Matrx task (requires auth)
|
|
116
|
-
* - 'project' — Matrx project (requires auth)
|
|
117
|
-
* - 'table' — Matrx table / data reference (requires auth)
|
|
118
|
-
* - 'storage' — File from Matrx storage browser (requires auth)
|
|
119
|
-
*/
|
|
120
|
-
export type PublicResourceType = 'file' | 'image_link' | 'image_url' | 'file_link' | 'file_url' | 'audio' | 'youtube' | 'webpage' | 'note' | 'task' | 'project' | 'table' | 'storage';
|
|
121
|
-
/**
|
|
122
|
-
* Public resource structure.
|
|
123
|
-
* The `data` bag is intentionally flexible so that both the public chat
|
|
124
|
-
* and the authenticated prompts system can share the same type without
|
|
125
|
-
* requiring separate conversion layers.
|
|
126
|
-
*/
|
|
127
|
-
export interface PublicResource {
|
|
128
|
-
type: PublicResourceType;
|
|
129
|
-
data: {
|
|
130
|
-
url?: string;
|
|
131
|
-
filename?: string;
|
|
132
|
-
mime_type?: string;
|
|
133
|
-
type?: string;
|
|
134
|
-
size?: number;
|
|
135
|
-
id?: string;
|
|
136
|
-
title?: string;
|
|
137
|
-
content?: string;
|
|
138
|
-
description?: string;
|
|
139
|
-
label?: string;
|
|
140
|
-
folder_name?: string;
|
|
141
|
-
tags?: string[];
|
|
142
|
-
status?: string;
|
|
143
|
-
priority?: string;
|
|
144
|
-
project_id?: string;
|
|
145
|
-
project_name?: string;
|
|
146
|
-
name?: string;
|
|
147
|
-
table_name?: string;
|
|
148
|
-
table_id?: string;
|
|
149
|
-
table_type?: 'full_table' | 'table_row' | 'table_column' | 'table_cell';
|
|
150
|
-
row_id?: string;
|
|
151
|
-
column_name?: string;
|
|
152
|
-
text_content?: string;
|
|
153
|
-
video_id?: string;
|
|
154
|
-
videoId?: string;
|
|
155
|
-
transcript?: string;
|
|
156
|
-
filepath?: string;
|
|
157
|
-
duration?: number;
|
|
158
|
-
[key: string]: unknown;
|
|
159
|
-
};
|
|
160
|
-
}
|
|
161
|
-
/**
|
|
162
|
-
* Convert a PublicResource to a ContentItem for the API.
|
|
163
|
-
*
|
|
164
|
-
* Backend natively supports: input_text, input_image, input_audio, input_file.
|
|
165
|
-
* All other types are sent with their type name for future backend support.
|
|
166
|
-
*/
|
|
167
|
-
export declare function resourceToContentItem(resource: PublicResource): ContentItem | null;
|
|
168
|
-
/**
|
|
169
|
-
* Build content array from text and resources
|
|
170
|
-
*/
|
|
171
|
-
export declare function buildContentArray(text: string, resources: PublicResource[]): ContentItem[];
|
|
172
|
-
/**
|
|
173
|
-
* Adapter: convert a prompts `Resource` (from features/prompts/types/resources.ts)
|
|
174
|
-
* to a `PublicResource` so that the prompts picker components can be reused in any route
|
|
175
|
-
* without requiring callers to depend on the prompts type system directly.
|
|
176
|
-
*
|
|
177
|
-
* The prompts Resource discriminated union uses canonical names that already match
|
|
178
|
-
* the extended PublicResourceType, so this is a safe cast with data normalisation.
|
|
179
|
-
*/
|
|
180
|
-
export declare function promptsResourceToPublicResource(resource: {
|
|
181
|
-
type: string;
|
|
182
|
-
data: Record<string, unknown>;
|
|
183
|
-
}): PublicResource;
|
|
184
|
-
export {};
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
function resourceToContentItem(resource) {
|
|
2
|
-
const { type, data } = resource;
|
|
3
|
-
switch (type) {
|
|
4
|
-
// ── Media / file types ────────────────────────────────────────────
|
|
5
|
-
case "image_link":
|
|
6
|
-
case "image_url":
|
|
7
|
-
if (!data.url) return null;
|
|
8
|
-
return { type: "input_image", url: data.url };
|
|
9
|
-
case "file_link":
|
|
10
|
-
case "file_url":
|
|
11
|
-
if (!data.url) return null;
|
|
12
|
-
return { type: "input_file", url: data.url };
|
|
13
|
-
case "audio":
|
|
14
|
-
if (!data.url) return null;
|
|
15
|
-
return { type: "input_audio", url: data.url };
|
|
16
|
-
case "file":
|
|
17
|
-
case "storage": {
|
|
18
|
-
if (!data.url) return null;
|
|
19
|
-
const mimeType = data.mime_type ?? data.type ?? "";
|
|
20
|
-
if (mimeType.startsWith("image/")) return { type: "input_image", url: data.url };
|
|
21
|
-
if (mimeType.startsWith("audio/")) return { type: "input_audio", url: data.url };
|
|
22
|
-
return { type: "input_file", url: data.url };
|
|
23
|
-
}
|
|
24
|
-
case "youtube":
|
|
25
|
-
if (!data.url) return null;
|
|
26
|
-
return { type: "youtube_video", url: data.url };
|
|
27
|
-
case "webpage":
|
|
28
|
-
if (!data.url) return null;
|
|
29
|
-
return { type: "input_webpage", url: data.url };
|
|
30
|
-
// ── Matrx data types (backend receives structured objects) ────────
|
|
31
|
-
case "note":
|
|
32
|
-
return {
|
|
33
|
-
type: "input_note",
|
|
34
|
-
note_id: data.id ?? "",
|
|
35
|
-
title: data.label ?? data.title ?? data.filename ?? "Note",
|
|
36
|
-
content: data.content ?? ""
|
|
37
|
-
};
|
|
38
|
-
case "task":
|
|
39
|
-
return {
|
|
40
|
-
type: "input_task",
|
|
41
|
-
task_id: data.id ?? "",
|
|
42
|
-
title: data.title ?? "Task",
|
|
43
|
-
description: data.description,
|
|
44
|
-
status: data.status
|
|
45
|
-
};
|
|
46
|
-
case "project":
|
|
47
|
-
return {
|
|
48
|
-
type: "input_task",
|
|
49
|
-
task_id: data.id ?? "",
|
|
50
|
-
title: data.name ?? data.title ?? "Project",
|
|
51
|
-
description: data.description
|
|
52
|
-
};
|
|
53
|
-
case "table":
|
|
54
|
-
return {
|
|
55
|
-
type: "input_table",
|
|
56
|
-
table_id: data.table_id ?? data.id ?? "",
|
|
57
|
-
table_name: data.table_name ?? data.title ?? "Table",
|
|
58
|
-
data: typeof data.content === "string" ? data.content : JSON.stringify(data.content ?? {})
|
|
59
|
-
};
|
|
60
|
-
default:
|
|
61
|
-
console.warn("Unknown resource type:", type);
|
|
62
|
-
return null;
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
function buildContentArray(text, resources) {
|
|
66
|
-
const content = [];
|
|
67
|
-
if (text.trim()) {
|
|
68
|
-
content.push({
|
|
69
|
-
type: "input_text",
|
|
70
|
-
text
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
for (const resource of resources) {
|
|
74
|
-
const item = resourceToContentItem(resource);
|
|
75
|
-
if (item) {
|
|
76
|
-
content.push(item);
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
return content;
|
|
80
|
-
}
|
|
81
|
-
function promptsResourceToPublicResource(resource) {
|
|
82
|
-
return {
|
|
83
|
-
type: resource.type,
|
|
84
|
-
data: resource.data
|
|
85
|
-
};
|
|
86
|
-
}
|
|
87
|
-
export {
|
|
88
|
-
buildContentArray,
|
|
89
|
-
promptsResourceToPublicResource,
|
|
90
|
-
resourceToContentItem
|
|
91
|
-
};
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The shared "take it further" action pair for entity tool renderers:
|
|
3
|
-
* **Open in window** + **Open in new tab**. Keeps every entity renderer
|
|
4
|
-
* (document / dataset / workbook / …) consistent with the picklist/task bar.
|
|
5
|
-
*
|
|
6
|
-
* `onOpenWindow` is usually the shell's `onOpenWindowPanel` (opens the tool's
|
|
7
|
-
* overlay component in a draggable window) or a feature-specific window opener.
|
|
8
|
-
*/
|
|
9
|
-
export declare function EntityOpenActions({ onOpenWindow, href, windowLabel, newTabLabel, className, }: {
|
|
10
|
-
onOpenWindow?: () => void;
|
|
11
|
-
href?: string;
|
|
12
|
-
windowLabel?: string;
|
|
13
|
-
newTabLabel?: string;
|
|
14
|
-
className?: string;
|
|
15
|
-
}): import("react").JSX.Element;
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
-
import { PanelRight, ExternalLink } from "lucide-react";
|
|
4
|
-
import { Button } from "@ai-matrx/design-system/controls";
|
|
5
|
-
import { cn } from "@ai-matrx/design-system";
|
|
6
|
-
function EntityOpenActions({
|
|
7
|
-
onOpenWindow,
|
|
8
|
-
href,
|
|
9
|
-
windowLabel = "Open in window",
|
|
10
|
-
newTabLabel = "New tab",
|
|
11
|
-
className
|
|
12
|
-
}) {
|
|
13
|
-
return /* @__PURE__ */ jsxs("div", { className: cn("flex shrink-0 items-center gap-1.5", className), children: [
|
|
14
|
-
onOpenWindow ? /* @__PURE__ */ jsx(
|
|
15
|
-
Button,
|
|
16
|
-
{
|
|
17
|
-
icon: /* @__PURE__ */ jsx(PanelRight, {}),
|
|
18
|
-
variant: "outline",
|
|
19
|
-
onClick: onOpenWindow,
|
|
20
|
-
children: windowLabel
|
|
21
|
-
}
|
|
22
|
-
) : null,
|
|
23
|
-
href ? /* @__PURE__ */ jsx(Button, { asChild: true, variant: "outline", children: /* @__PURE__ */ jsxs("a", { href, target: "_blank", rel: "noopener noreferrer", children: [
|
|
24
|
-
/* @__PURE__ */ jsx(ExternalLink, { className: "h-3.5 w-3.5" }),
|
|
25
|
-
newTabLabel
|
|
26
|
-
] }) }) : null
|
|
27
|
-
] });
|
|
28
|
-
}
|
|
29
|
-
export {
|
|
30
|
-
EntityOpenActions
|
|
31
|
-
};
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import type { ToolCallBlock } from "../../ui/chat-protocol-types.js";
|
|
2
|
-
import type { ToolLifecycleEntry } from "../../agents/types/request.types.js";
|
|
3
|
-
/**
|
|
4
|
-
* Map a canonical chat-protocol `ToolCallBlock` into the `ToolLifecycleEntry`
|
|
5
|
-
* shape consumed by `ToolCallVisualization`.
|
|
6
|
-
*
|
|
7
|
-
* Used only by non-agent-runner surfaces — places where tool data arrives as
|
|
8
|
-
* chat-protocol blocks (persisted messages, public chat replay, stream-aware
|
|
9
|
-
* markdown) rather than through the live execution pipeline that populates
|
|
10
|
-
* `features/agents/redux/activeRequests`. The live pipeline already produces
|
|
11
|
-
* full `ToolLifecycleEntry` values with accurate timestamps, progress events,
|
|
12
|
-
* and error metadata; this mapping is a best-effort synthesis from the
|
|
13
|
-
* flattened block shape, so fields like `startedAt`, `latestMessage`,
|
|
14
|
-
* `latestData`, and `events` are placeholders.
|
|
15
|
-
*
|
|
16
|
-
* @param block - A canonical tool-call block (`phase`, `callId`, `toolName`,
|
|
17
|
-
* optional `input`, `output`, `error`).
|
|
18
|
-
* @returns A `ToolLifecycleEntry` whose `status` is derived from `block.phase`
|
|
19
|
-
* (`complete` → `completed`, `error` → `error`, `running` → `progress`,
|
|
20
|
-
* otherwise `started`), with `arguments` unwrapped from either
|
|
21
|
-
* `input.arguments` or `input` itself, and `result` unwrapped from
|
|
22
|
-
* `output.result` when present, falling back to `output`.
|
|
23
|
-
*/
|
|
24
|
-
export declare function toolCallBlockToLifecycleEntry(block: ToolCallBlock): ToolLifecycleEntry;
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
function toolCallBlockToLifecycleEntry(block) {
|
|
2
|
-
const now = (/* @__PURE__ */ new Date()).toISOString();
|
|
3
|
-
const status = block.phase === "complete" ? "completed" : block.phase === "error" ? "error" : block.phase === "running" ? "progress" : "started";
|
|
4
|
-
const rawArgs = block.input?.arguments ?? block.input ?? {};
|
|
5
|
-
const args = rawArgs && typeof rawArgs === "object" && !Array.isArray(rawArgs) ? rawArgs : {};
|
|
6
|
-
return {
|
|
7
|
-
callId: block.callId,
|
|
8
|
-
toolName: block.toolName,
|
|
9
|
-
displayName: block.toolName,
|
|
10
|
-
status,
|
|
11
|
-
arguments: args,
|
|
12
|
-
startedAt: now,
|
|
13
|
-
completedAt: block.phase === "complete" || block.phase === "error" ? now : null,
|
|
14
|
-
latestMessage: null,
|
|
15
|
-
latestData: null,
|
|
16
|
-
result: block.output !== void 0 ? block.output.result ?? block.output : null,
|
|
17
|
-
resultPreview: null,
|
|
18
|
-
errorType: null,
|
|
19
|
-
errorMessage: block.error ? String(block.error) : null,
|
|
20
|
-
isDelegated: false,
|
|
21
|
-
events: []
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
export {
|
|
25
|
-
toolCallBlockToLifecycleEntry
|
|
26
|
-
};
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* components/mardown-display/blocks/audio/AudioOutputBlockSkeleton.tsx
|
|
3
|
-
*
|
|
4
|
-
* The loading twin of `<AudioOutputBlock>` (landscape layout). Same outer
|
|
5
|
-
* card, same dimensions, same internal grid — so when generation finishes and
|
|
6
|
-
* the real player mounts, NOTHING shifts. Use this anywhere an audio response
|
|
7
|
-
* is being generated/resolved instead of a bare "Generating audio…" line.
|
|
8
|
-
*
|
|
9
|
-
* Purely presentational; no audio engine, no file actions.
|
|
10
|
-
*/
|
|
11
|
-
import React from "react";
|
|
12
|
-
export interface AudioOutputBlockSkeletonProps {
|
|
13
|
-
/** Status line shown next to the shimmer. Default "Generating audio…". */
|
|
14
|
-
label?: string;
|
|
15
|
-
}
|
|
16
|
-
declare const AudioOutputBlockSkeleton: React.FC<AudioOutputBlockSkeletonProps>;
|
|
17
|
-
export default AudioOutputBlockSkeleton;
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
-
import { Music } from "lucide-react";
|
|
4
|
-
function Bar({ className = "" }) {
|
|
5
|
-
return /* @__PURE__ */ jsx("div", { className: `rounded-full bg-muted/70 animate-pulse ${className}` });
|
|
6
|
-
}
|
|
7
|
-
const AudioOutputBlockSkeleton = ({
|
|
8
|
-
label = "Generating audio\u2026"
|
|
9
|
-
}) => {
|
|
10
|
-
return /* @__PURE__ */ jsxs(
|
|
11
|
-
"div",
|
|
12
|
-
{
|
|
13
|
-
className: "relative rounded-xl border border-border bg-card p-4 my-2 shadow-sm overflow-hidden",
|
|
14
|
-
role: "status",
|
|
15
|
-
"aria-label": label,
|
|
16
|
-
children: [
|
|
17
|
-
/* @__PURE__ */ jsx("div", { className: "pointer-events-none absolute inset-0 animate-[audio-shimmer_1.6s_ease-in-out_infinite] bg-gradient-to-r from-transparent via-primary/10 to-transparent" }),
|
|
18
|
-
/* @__PURE__ */ jsxs("div", { className: "relative flex gap-4 items-start", children: [
|
|
19
|
-
/* @__PURE__ */ jsx("div", { className: "w-16 h-16 rounded-xl flex-shrink-0 bg-gradient-to-br from-[hsl(var(--primary)/0.15)] to-[hsl(var(--secondary)/0.15)] border border-border flex items-center justify-center", children: /* @__PURE__ */ jsx(
|
|
20
|
-
Music,
|
|
21
|
-
{
|
|
22
|
-
size: 24,
|
|
23
|
-
className: "text-primary/60 animate-pulse",
|
|
24
|
-
strokeWidth: 1.5
|
|
25
|
-
}
|
|
26
|
-
) }),
|
|
27
|
-
/* @__PURE__ */ jsxs("div", { className: "flex-1 min-w-0", children: [
|
|
28
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between mb-2", children: [
|
|
29
|
-
/* @__PURE__ */ jsxs("div", { className: "min-w-0 flex-1 space-y-1.5", children: [
|
|
30
|
-
/* @__PURE__ */ jsx(Bar, { className: "h-3 w-2/3" }),
|
|
31
|
-
/* @__PURE__ */ jsx(Bar, { className: "h-2.5 w-1/3" })
|
|
32
|
-
] }),
|
|
33
|
-
/* @__PURE__ */ jsx("div", { className: "flex items-end gap-[2px] h-5 w-8", "aria-hidden": true, children: [60, 90, 45, 75].map((h, i) => /* @__PURE__ */ jsx(
|
|
34
|
-
"span",
|
|
35
|
-
{
|
|
36
|
-
className: "w-[3px] rounded-full bg-primary/50 animate-pulse",
|
|
37
|
-
style: { height: `${h}%` }
|
|
38
|
-
},
|
|
39
|
-
i
|
|
40
|
-
)) })
|
|
41
|
-
] }),
|
|
42
|
-
/* @__PURE__ */ jsxs("div", { className: "mb-2", children: [
|
|
43
|
-
/* @__PURE__ */ jsx(Bar, { className: "h-1.5 w-full" }),
|
|
44
|
-
/* @__PURE__ */ jsxs("div", { className: "flex justify-between mt-1", children: [
|
|
45
|
-
/* @__PURE__ */ jsx(Bar, { className: "h-2 w-8" }),
|
|
46
|
-
/* @__PURE__ */ jsx(Bar, { className: "h-2 w-8" })
|
|
47
|
-
] })
|
|
48
|
-
] }),
|
|
49
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-between", children: [
|
|
50
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1", children: [
|
|
51
|
-
/* @__PURE__ */ jsx(Bar, { className: "h-7 w-7 !rounded-full" }),
|
|
52
|
-
/* @__PURE__ */ jsx(Bar, { className: "h-9 w-9 !rounded-full bg-primary/30" }),
|
|
53
|
-
/* @__PURE__ */ jsx(Bar, { className: "h-7 w-7 !rounded-full" }),
|
|
54
|
-
/* @__PURE__ */ jsx(Bar, { className: "h-7 w-7 !rounded-full" })
|
|
55
|
-
] }),
|
|
56
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-1.5 w-28", children: [
|
|
57
|
-
/* @__PURE__ */ jsx(Bar, { className: "h-4 w-4 !rounded-full" }),
|
|
58
|
-
/* @__PURE__ */ jsx(Bar, { className: "h-1.5 flex-1" })
|
|
59
|
-
] })
|
|
60
|
-
] }),
|
|
61
|
-
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2 mt-2 pt-2 border-t border-border", children: [
|
|
62
|
-
/* @__PURE__ */ jsx(Bar, { className: "h-4 w-20" }),
|
|
63
|
-
/* @__PURE__ */ jsx(Bar, { className: "h-4 w-16" }),
|
|
64
|
-
/* @__PURE__ */ jsxs("span", { className: "ml-auto inline-flex items-center gap-1.5 text-[11px] text-muted-foreground", children: [
|
|
65
|
-
/* @__PURE__ */ jsx(Music, { size: 11, className: "text-primary/60" }),
|
|
66
|
-
label
|
|
67
|
-
] })
|
|
68
|
-
] })
|
|
69
|
-
] })
|
|
70
|
-
] })
|
|
71
|
-
]
|
|
72
|
-
}
|
|
73
|
-
);
|
|
74
|
-
};
|
|
75
|
-
var AudioOutputBlockSkeleton_default = AudioOutputBlockSkeleton;
|
|
76
|
-
export {
|
|
77
|
-
AudioOutputBlockSkeleton_default as default
|
|
78
|
-
};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export declare const GuidedVariableInputs: import("react").ComponentType<import("../../public-chat/components/GuidedVariableInputs.js").GuidedVariableInputsProps>;
|
|
2
|
-
export declare const PublicVariableInputs: import("react").ComponentType<import("../../public-chat/components/PublicVariableInputs.js").PublicVariableInputsProps>;
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { clientLazy } from "../../utils/client-lazy.js";
|
|
3
|
-
const GuidedVariableInputs = clientLazy(
|
|
4
|
-
() => import("../../public-chat/components/GuidedVariableInputs.js").then(
|
|
5
|
-
(m) => ({ default: m.GuidedVariableInputs })
|
|
6
|
-
)
|
|
7
|
-
);
|
|
8
|
-
const PublicVariableInputs = clientLazy(
|
|
9
|
-
() => import("../../public-chat/components/PublicVariableInputs.js").then(
|
|
10
|
-
(m) => ({ default: m.PublicVariableInputs })
|
|
11
|
-
)
|
|
12
|
-
);
|
|
13
|
-
export {
|
|
14
|
-
GuidedVariableInputs,
|
|
15
|
-
PublicVariableInputs
|
|
16
|
-
};
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/** Dependency-free XML tag reader shared by XML chrome and stream boundaries. */
|
|
2
|
-
export interface ReadXmlTag {
|
|
3
|
-
tagName: string;
|
|
4
|
-
raw: string;
|
|
5
|
-
isClosing: boolean;
|
|
6
|
-
isSelfClosing: boolean;
|
|
7
|
-
attributes: Array<{
|
|
8
|
-
name: string;
|
|
9
|
-
value: string;
|
|
10
|
-
}>;
|
|
11
|
-
}
|
|
12
|
-
export declare function readXmlTag(content: string, start: number): ReadXmlTag | null;
|