Improved prompt function add add ctx.* functions (#301)

This commit is contained in:
Gregory Schier
2025-11-15 08:19:58 -08:00
committed by GitHub
parent 7ced183b11
commit 84219571e8
29 changed files with 454 additions and 150 deletions

View File

@@ -1,17 +1,25 @@
import { useQuery } from '@tanstack/react-query';
import type { RenderPurpose } from '@yaakapp-internal/plugins';
import { useAtomValue } from 'jotai';
import { minPromiseMillis } from '../lib/minPromiseMillis';
import { invokeCmd } from '../lib/tauri';
import { useActiveEnvironment } from './useActiveEnvironment';
import { activeWorkspaceIdAtom } from './useActiveWorkspace';
export function useRenderTemplate(template: string) {
export function useRenderTemplate(
template: string,
enabled: boolean,
purpose: RenderPurpose,
refreshKey: string | null,
) {
const workspaceId = useAtomValue(activeWorkspaceIdAtom) ?? 'n/a';
const environmentId = useActiveEnvironment()?.id ?? null;
return useQuery<string>({
refetchOnWindowFocus: false,
queryKey: ['render_template', template, workspaceId, environmentId],
queryFn: () => minPromiseMillis(renderTemplate({ template, workspaceId, environmentId }), 200),
enabled,
queryKey: ['render_template', workspaceId, environmentId, refreshKey, purpose],
queryFn: () =>
minPromiseMillis(renderTemplate({ template, workspaceId, environmentId, purpose }), 300),
});
}
@@ -19,12 +27,14 @@ export async function renderTemplate({
template,
workspaceId,
environmentId,
purpose,
}: {
template: string;
workspaceId: string;
environmentId: string | null;
purpose: RenderPurpose;
}): Promise<string> {
return invokeCmd('cmd_render_template', { template, workspaceId, environmentId });
return invokeCmd('cmd_render_template', { template, workspaceId, environmentId, purpose });
}
export async function decryptTemplate({