import apiClient from '@/api/client'; import toast from 'react-hot-toast'; export type AccreditationType = 'ACCREDITATION' | 'CERTIFICATION'; export interface Accreditation { id?: number; title: string; type: AccreditationType; logo?: string; image?: string; description?: string; sortOrder: number; isActive: boolean; createdAt?: string; updatedAt?: string; } export const getAccreditationsApi = async (type?: AccreditationType) => { const query = type ? `?type=${type}` : ''; const res = await apiClient.get(`/accreditation/getAll${query}`); return res.data; }; export const getAccreditationApi = async (id: number) => { const res = await apiClient.get(`/accreditation/${id}`); return res.data; }; export const getActiveAccreditationsApi = async (type?: AccreditationType) => { const query = type ? `?type=${type}` : ''; const res = await apiClient.get(`/accreditation/active${query}`); return res.data; }; export const createAccreditationApi = async (data: Partial) => { try { const res = await apiClient.post('/accreditation', data); toast.success('Accreditation created successfully'); return res.data; } catch (error: any) { toast.error(error?.response?.data?.message || 'Failed to create accreditation'); throw error; } }; export const updateAccreditationApi = async (id: number, data: Partial) => { try { const res = await apiClient.put(`/accreditation/${id}`, data); toast.success('Accreditation updated successfully'); return res.data; } catch (error: any) { toast.error(error?.response?.data?.message || 'Failed to update accreditation'); throw error; } }; export const deleteAccreditationApi = async (id: number) => { try { const res = await apiClient.delete(`/accreditation/${id}`); toast.success('Accreditation deleted successfully'); return res.data; } catch (error: any) { toast.error(error?.response?.data?.message || 'Failed to delete accreditation'); throw error; } };