@assistant-ui/react
Version:
Typescript/React library for AI Chat
29 lines • 834 B
JavaScript
"use client";
import { useEffect } from "react";
import {
useAssistantRuntime,
useToolUIsStore
} from "../context/react/AssistantContext";
const useAssistantTool = (tool) => {
const assistantRuntime = useAssistantRuntime();
const toolUIsStore = useToolUIsStore();
useEffect(() => {
return tool.render ? toolUIsStore.getState().setToolUI(tool.toolName, tool.render) : void 0;
}, [toolUIsStore, tool.toolName, tool.render]);
useEffect(() => {
const { toolName, render, disabled, ...rest } = tool;
if (disabled) return;
const context = {
tools: {
[toolName]: rest
}
};
return assistantRuntime.registerModelContextProvider({
getModelContext: () => context
});
}, [assistantRuntime, tool]);
};
export {
useAssistantTool
};
//# sourceMappingURL=useAssistantTool.js.map