@assistant-ui/react
Version:
TypeScript/React library for AI Chat
17 lines (14 loc) • 683 B
text/typescript
import { resource, tapState } from "@assistant-ui/tap";
import { tapApi } from "../utils/tap-store";
import { CompositeContextProvider } from "../utils/CompositeContextProvider";
import type { ModelContextState, ModelContextApi } from "./types/ModelContext";
export const ModelContext = resource(() => {
const [state] = tapState<ModelContextState>(() => ({}));
const composite = new CompositeContextProvider();
return tapApi<ModelContextApi>({
getState: () => state,
getModelContext: () => composite.getModelContext(),
subscribe: (callback) => composite.subscribe(callback),
register: (provider) => composite.registerModelContextProvider(provider),
});
});