@assistant-ui/react
Version:
React components for AI chat.
30 lines (29 loc) • 839 B
JavaScript
"use client";
// src/model-config/useAssistantTool.tsx
import { useEffect } from "react";
import {
useAssistantRuntime,
useToolUIsStore
} from "../context/react/AssistantContext.mjs";
var 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, ...rest } = tool;
const config = {
tools: {
[toolName]: rest
}
};
return assistantRuntime.registerModelConfigProvider({
getModelConfig: () => config
});
}, [assistantRuntime, tool]);
};
export {
useAssistantTool
};
//# sourceMappingURL=useAssistantTool.mjs.map