import { useApi } from "~/composables/useApi" import type { SupplierData, SupplierPayload } from "~/services/dto/supplier-data" export type SupplierListResponse = | SupplierData[] | { "hydra:member"?: SupplierData[] } export async function getSupplierList(): Promise { const api = useApi() const response = await api.get("suppliers", {}, { toastErrorKey: "errors.supplier.list" }) if (Array.isArray(response)) return response if (response && typeof response === "object" && Array.isArray(response["hydra:member"])) { return response["hydra:member"] } return [] } export async function getSupplier(id: number): Promise { const api = useApi() return api.get(`supplier/${id}`, {}, { toastErrorKey: "errors.supplier.fetch" }) } export async function updateSupplier(id: number, payload: SupplierPayload): Promise { const api = useApi() return api.patch(`supplier/${id}`, payload, { toastErrorKey: "errors.supplier.update", toastSuccessKey: "success.supplier.update" }) } export async function createSupplier(payload: SupplierPayload): Promise { const api = useApi() return api.post("supplier", payload, { toastErrorKey: "errors.supplier.create", toastSuccessKey: "success.supplier.create" }) }