restore custom actions API service and wire to ActionPicker

This commit is contained in:
CREDO23 2026-03-28 23:51:33 +02:00
parent 041401aefc
commit 11374248d8
3 changed files with 114 additions and 1 deletions

View file

@ -1,5 +1,44 @@
import { z } from "zod";
export type QuickAskActionMode = "transform" | "explore";
export const quickAskActionRead = z.object({
id: z.number(),
name: z.string(),
prompt: z.string(),
mode: z.enum(["transform", "explore"]),
icon: z.string().nullable(),
search_space_id: z.number().nullable(),
created_at: z.string(),
});
export type QuickAskActionRead = z.infer<typeof quickAskActionRead>;
export const quickAskActionsListResponse = z.array(quickAskActionRead);
export const quickAskActionCreateRequest = z.object({
name: z.string().min(1).max(200),
prompt: z.string().min(1),
mode: z.enum(["transform", "explore"]),
icon: z.string().max(50).nullable().optional(),
search_space_id: z.number().nullable().optional(),
});
export type QuickAskActionCreateRequest = z.infer<typeof quickAskActionCreateRequest>;
export const quickAskActionUpdateRequest = z.object({
name: z.string().min(1).max(200).optional(),
prompt: z.string().min(1).optional(),
mode: z.enum(["transform", "explore"]).optional(),
icon: z.string().max(50).nullable().optional(),
});
export type QuickAskActionUpdateRequest = z.infer<typeof quickAskActionUpdateRequest>;
export const quickAskActionDeleteResponse = z.object({
success: z.boolean(),
});
export interface QuickAskAction {
id: string;
name: string;