Publish Claude Code Binaries / Stage and publish binaries (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-arm64 (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build linux-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build windows-amd64 (push) Canceled after 0s
Sync Tutti Agent Skills / sync (push) Canceled after 0s
Windows Agent Adapters / Test Windows agent adapters (push) Canceled after 0s
Windows Daemon Adapters / Test Windows daemon adapters (push) Canceled after 0s
Publish Tutti App Runtime / Publish runtime catalog (push) Canceled after 0s
34 lines
1.2 KiB
TypeScript
34 lines
1.2 KiB
TypeScript
import { memo, useState } from "react";
|
|
import {
|
|
AgentGUIConversationRailPane,
|
|
type AgentGUIConversationRailControllerProps
|
|
} from "../view/AgentGUIConversationRailPane";
|
|
import { useAgentGUIConversationRailQuery } from "./useAgentGUIConversationRailQuery";
|
|
|
|
export const AgentGUIConversationRailController = memo(
|
|
function AgentGUIConversationRailController(
|
|
props: AgentGUIConversationRailControllerProps
|
|
): React.JSX.Element {
|
|
const [conversationQuery, setConversationQuery] = useState("");
|
|
const railQuery = useAgentGUIConversationRailQuery({
|
|
activeConversationId: props.activeConversationId,
|
|
activityContextKey: props.activityContextKey,
|
|
conversationFilter: props.conversationFilter,
|
|
conversationQuery,
|
|
currentUserId: props.currentUserId,
|
|
nodeId: props.nodeId,
|
|
registerInteractionLockProbe: props.registerInteractionLockProbe,
|
|
userProjects: props.userProjects,
|
|
workspaceId: props.workspaceId
|
|
});
|
|
return (
|
|
<AgentGUIConversationRailPane
|
|
{...props}
|
|
conversationQuery={conversationQuery}
|
|
railQuery={railQuery}
|
|
onConversationQueryChange={setConversationQuery}
|
|
/>
|
|
);
|
|
}
|
|
);
|