import { query } from '@/shared/api/query'; import { QePrompt } from './types'; export const fetchQePrompts = async (): Promise => { const response = await query({ url: '/qe_prompt/', method: 'get', }); if ('error' in response) { throw new Error(`Ошибка получения промптов: ${response.error.status}`); } return response.data; }; export const fetchQePromptById = async (id: number): Promise => { const response = await query({ url: `/qe_prompt/${id}`, method: 'get', }); if ('error' in response) { throw new Error(`Ошибка получения промпта: ${response.error.status}`); } return response.data; }; export const createQePrompt = async (config: Omit): Promise => { const response = await query({ url: '/qe_prompt/', method: 'post', data: config, }); if ('error' in response) { throw new Error(`Ошибка создания промпта: ${response.error.status}`); } return response.data; }; export const updateQePrompt = async (config: QePrompt): Promise => { const response = await query({ url: `/qe_prompt/${config.id}`, method: 'put', data: config, }); if ('error' in response) { throw new Error(`Ошибка обновления промпта: ${response.error.status}`); } }; export const setDefaultQePrompt = async (id: number): Promise => { const response = await query({ url: `/qe_prompt/default/${id}`, method: 'put', }); if ('error' in response) { throw new Error(`Ошибка установки промпта по умолчанию: ${response.error.status}`); } }; export const deleteQePrompt = async (id: number): Promise => { const response = await query({ url: `/qe_prompt/${id}`, method: 'delete', }); if ('error' in response) { throw new Error(`Ошибка удаления промпта: ${response.error.status}`); } }; export const fetchDefaultQePrompt = async (): Promise => { const response = await query({ url: '/qe_prompt/default', method: 'get', }); if ('error' in response) { if (response.error.status === 404) return null; // Если дефолтной записи нет throw new Error(`Ошибка получения дефолтной промпта: ${response.error.status}`); } return response.data; };