30 lines
791 B
TypeScript
30 lines
791 B
TypeScript
import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
|
|
|
|
import {
|
|
loadPromptPrefixSettings,
|
|
updatePromptPrefixSettings,
|
|
type PromptPrefixUpdate,
|
|
} from "./api";
|
|
|
|
const PROMPT_PREFIX_KEY = ["systemSettings", "promptPrefix"] as const;
|
|
|
|
export function usePromptPrefixSettings() {
|
|
return useQuery({
|
|
queryKey: PROMPT_PREFIX_KEY,
|
|
queryFn: () => loadPromptPrefixSettings(),
|
|
staleTime: 60_000,
|
|
refetchOnWindowFocus: false,
|
|
refetchOnMount: false,
|
|
});
|
|
}
|
|
|
|
export function useUpdatePromptPrefixSettings() {
|
|
const queryClient = useQueryClient();
|
|
return useMutation({
|
|
mutationFn: (body: PromptPrefixUpdate) => updatePromptPrefixSettings(body),
|
|
onSuccess: (data) => {
|
|
queryClient.setQueryData(PROMPT_PREFIX_KEY, data);
|
|
},
|
|
});
|
|
}
|