import { errorHandler, getAuthHeaderOptions, fetchRespHandler, addQueryParams, } from "../utils/http"; const API_ENDPOINT = process.env.REACT_APP_UPLOAD_SERVICE_URL; const manifestsAPI = { deleteManifest: async (manifest_id, token) => fetch(`${API_ENDPOINT}/manifest?id=${manifest_id}`, { method: "DELETE", headers: Object.assign( { "Content-Type": "application/json" }, getAuthHeaderOptions(token) ), }) .then(fetchRespHandler) .catch(errorHandler), getManifest: async (id, token) => { const u = addQueryParams(`${API_ENDPOINT}/manifest`, { id }); return fetch(u, { method: "GET", headers: Object.assign( { "Content-Type": "application/json" }, getAuthHeaderOptions(token) ), }) .then(fetchRespHandler) .catch(errorHandler); }, getManifests: async (search, token) => { const u = addQueryParams(`${API_ENDPOINT}/manifests`, search); return fetch(u, { method: "GET", headers: Object.assign( { "Content-Type": "application/json" }, getAuthHeaderOptions(token) ), }) .then(fetchRespHandler) .catch(errorHandler); }, createManifest: async (data, token) => fetch(`${API_ENDPOINT}/manifest`, { method: "POST", headers: Object.assign( { "Content-Type": "application/json" }, getAuthHeaderOptions(token) ), body: JSON.stringify(data), }) .then(fetchRespHandler) .catch(errorHandler), createManifestECU: async (data, token) => fetch(`${API_ENDPOINT}/manifestecu`, { method: "POST", headers: Object.assign( { "Content-Type": "application/json" }, getAuthHeaderOptions(token) ), body: JSON.stringify(data), }) .then(fetchRespHandler) .catch(errorHandler), }; export default manifestsAPI;