const require_runtime = require('../_virtual/_rolldown/runtime.cjs'); const require_CopilotChatConfigurationProvider = require('../providers/CopilotChatConfigurationProvider.cjs'); const require_CopilotKitProvider = require('../providers/CopilotKitProvider.cjs'); let react = require("react"); let _copilotkitnext_shared = require("@copilotkitnext/shared"); //#region src/hooks/use-suggestions.tsx function useSuggestions({ agentId } = {}) { const { copilotkit } = require_CopilotKitProvider.useCopilotKit(); const config = require_CopilotChatConfigurationProvider.useCopilotChatConfiguration(); const resolvedAgentId = (0, react.useMemo)(() => agentId ?? config?.agentId ?? _copilotkitnext_shared.DEFAULT_AGENT_ID, [agentId, config?.agentId]); const [suggestions, setSuggestions] = (0, react.useState)(() => { return copilotkit.getSuggestions(resolvedAgentId).suggestions; }); const [isLoading, setIsLoading] = (0, react.useState)(() => { return copilotkit.getSuggestions(resolvedAgentId).isLoading; }); (0, react.useEffect)(() => { const result = copilotkit.getSuggestions(resolvedAgentId); setSuggestions(result.suggestions); setIsLoading(result.isLoading); }, [copilotkit, resolvedAgentId]); (0, react.useEffect)(() => { const subscription = copilotkit.subscribe({ onSuggestionsChanged: ({ agentId: changedAgentId, suggestions }) => { if (changedAgentId !== resolvedAgentId) return; setSuggestions(suggestions); }, onSuggestionsStartedLoading: ({ agentId: changedAgentId }) => { if (changedAgentId !== resolvedAgentId) return; setIsLoading(true); }, onSuggestionsFinishedLoading: ({ agentId: changedAgentId }) => { if (changedAgentId !== resolvedAgentId) return; setIsLoading(false); }, onSuggestionsConfigChanged: () => { const result = copilotkit.getSuggestions(resolvedAgentId); setSuggestions(result.suggestions); setIsLoading(result.isLoading); } }); return () => { subscription.unsubscribe(); }; }, [copilotkit, resolvedAgentId]); return { suggestions, reloadSuggestions: (0, react.useCallback)(() => { copilotkit.reloadSuggestions(resolvedAgentId); }, [copilotkit, resolvedAgentId]), clearSuggestions: (0, react.useCallback)(() => { copilotkit.clearSuggestions(resolvedAgentId); }, [copilotkit, resolvedAgentId]), isLoading }; } //#endregion exports.useSuggestions = useSuggestions; //# sourceMappingURL=use-suggestions.cjs.map