import { ConnectedDispatcher, Prisma } from "@repo/db"; import { serverApi } from "_helpers/axios"; import axios from "axios"; export const changeDispatcherAPI = async ( id: number, data: Prisma.ConnectedDispatcherUpdateInput, ) => { const res = await serverApi.patch(`/dispatcher/${id}`, data); if (res.status !== 200) { throw new Error("Failed to update Connected Dispatcher"); } return res.data; }; export const getConnectedDispatcherAPI = async (filter?: Prisma.ConnectedDispatcherWhereInput) => { const res = await axios.get("/api/dispatcher", { params: { filter: JSON.stringify(filter), }, }); if (res.status !== 200) { throw new Error("Failed to fetch Connected Dispatcher"); } return res.data; }; export const kickDispatcherAPI = async ({ id, bann, reason, until = null, }: { id: number; bann?: boolean; reason: string; until?: Date | null; }) => { const res = await serverApi.delete(`/dispatcher/${id}`, { data: { bann, reason, until }, }); if (res.status != 204) { throw new Error("Failed to kick aircraft"); } return res.data; };