UNPKG

@copilotkit/react-core

Version:

<img src="https://github.com/user-attachments/assets/0a6b64d9-e193-4940-a3f6-60334ac34084" alt="banner" style="border-radius: 12px; border: 2px solid #d6d4fa;" />

47 lines (46 loc) 1.55 kB
import { __spreadProps, __spreadValues } from "../chunk-SKC7AJIV.mjs"; // src/hooks/use-configure-chat-suggestions.tsx import { useConfigureSuggestions, useCopilotChatConfiguration, useCopilotKit, useSuggestions } from "@copilotkitnext/react"; import { useEffect } from "react"; function useConfigureChatSuggestions(config, dependencies = []) { var _a; const existingConfig = useCopilotChatConfiguration(); const resolvedAgentId = (_a = existingConfig == null ? void 0 : existingConfig.agentId) != null ? _a : "default"; const { copilotkit } = useCopilotKit(); const available = config.available === "enabled" ? "always" : config.available; const finalSuggestionConfig = __spreadProps(__spreadValues({}, config), { available, consumerAgentId: resolvedAgentId // Use chatConfig.agentId here }); useConfigureSuggestions(finalSuggestionConfig, dependencies); const result = useSuggestions({ agentId: resolvedAgentId }); useEffect(() => { if (finalSuggestionConfig.available === "disabled") return; const subscription = copilotkit.subscribe({ onAgentsChanged: () => { const agent = copilotkit.getAgent(resolvedAgentId); if (agent && !agent.isRunning && !result.suggestions.length) { copilotkit.reloadSuggestions(resolvedAgentId); } } }); return () => { subscription.unsubscribe(); }; }, [resolvedAgentId]); return result; } export { useConfigureChatSuggestions }; //# sourceMappingURL=use-configure-chat-suggestions.mjs.map