{"version":3,"file":"draftApi.mjs","sources":["../../lib/utils/draftApi.ts"],"sourcesContent":["import Axios from 'axios';\n\nconst createDraftApi = ({ baseURL, authToken }: { baseURL: string, authToken: string }) => {\n  const maybeTrailingSlash = baseURL.endsWith('/') ? '' : '/';\n  const api = Axios.create({\n    baseURL: `${baseURL}${maybeTrailingSlash}drafts`,\n    headers: {\n      'Content-Type': 'text/turtle',\n      Authorization: `Bearer ${authToken}`,\n    },\n  });\n\n  // Create a new draft\n  const createDatasetDraft = ({ id, catalogue, body }: { id: string, catalogue: string, body: unknown}) =>\n    api.put(`/datasets/${id}`, body, {\n    headers: { 'Content-Type': 'text/turtle' },\n    params: { catalogue },\n  });\n\n  // Get all drafts\n  const getAllDatasetDrafts = () => api.get('/datasets');\n\n  // Get a draft by id or all drafts associated to current authorized user\n  const getDatasetDrafts = ({ id = '', catalogue = '', filterByProvider = false }) => {\n    const maybeId = id ? `/${id}` : '';\n    return api.get(`/datasets${maybeId}`, { params: { catalogue, filterByProvider } });\n  };\n\n  // Delete a draft by id\n  const deleteDatasetDraft = ({ id, catalogue }: { id: string, catalogue: string }) =>\n    api.delete(`/datasets/${id}`, { params: { catalogue } });\n\n  // Publish a draft as dataset\n  const publishDatasetDraft = ({ id, catalogue, body }: { id: string, catalogue: string, body: unknown }) => {\n    const maybeId = id ? `/${id}` : '';\n    return api.put(`/datasets/publish${maybeId}`, body, { params: { catalogue } });\n  };\n\n  // Put a dataset back to draft\n  const putDatasetToDraft = ({ id, catalogue }: { id: string, catalogue: string }) => {\n    const maybeId = id ? `/${id}` : '';\n    return api.put(`/datasets/hide${maybeId}`, null, { params: { catalogue } });\n  };\n\n  return {\n    createDatasetDraft,\n    getAllDatasetDrafts,\n    getDatasetDrafts,\n    deleteDatasetDraft,\n    publishDatasetDraft,\n    putDatasetToDraft,\n  };\n};\n\nexport default createDraftApi;\n"],"names":["createDraftApi","baseURL","authToken","maybeTrailingSlash","api","Axios","id","catalogue","body","filterByProvider","maybeId"],"mappings":";AAEA,MAAMA,IAAiB,CAAC,EAAE,SAAAC,GAAS,WAAAC,QAAwD;AACzF,QAAMC,IAAqBF,EAAQ,SAAS,GAAG,IAAI,KAAK,KAClDG,IAAMC,EAAM,OAAO;AAAA,IACvB,SAAS,GAAGJ,CAAO,GAAGE,CAAkB;AAAA,IACxC,SAAS;AAAA,MACP,gBAAgB;AAAA,MAChB,eAAe,UAAUD,CAAS;AAAA,IACpC;AAAA,EAAA,CACD;AAkCM,SAAA;AAAA,IACL,oBAhCyB,CAAC,EAAE,IAAAI,GAAI,WAAAC,GAAW,MAAAC,EAC3C,MAAAJ,EAAI,IAAI,aAAaE,CAAE,IAAIE,GAAM;AAAA,MACjC,SAAS,EAAE,gBAAgB,cAAc;AAAA,MACzC,QAAQ,EAAE,WAAAD,EAAU;AAAA,IAAA,CACrB;AAAA,IA6BC,qBA1B0B,MAAMH,EAAI,IAAI,WAAW;AAAA,IA2BnD,kBAxBuB,CAAC,EAAE,IAAAE,IAAK,IAAI,WAAAC,IAAY,IAAI,kBAAAE,IAAmB,SAAY;AAClF,YAAMC,IAAUJ,IAAK,IAAIA,CAAE,KAAK;AACzB,aAAAF,EAAI,IAAI,YAAYM,CAAO,IAAI,EAAE,QAAQ,EAAE,WAAAH,GAAW,kBAAAE,EAAiB,EAAG,CAAA;AAAA,IAAA;AAAA,IAuBjF,oBAnByB,CAAC,EAAE,IAAAH,GAAI,WAAAC,QAChCH,EAAI,OAAO,aAAaE,CAAE,IAAI,EAAE,QAAQ,EAAE,WAAAC,KAAa;AAAA,IAmBvD,qBAhB0B,CAAC,EAAE,IAAAD,GAAI,WAAAC,GAAW,MAAAC,QAA6D;AACzG,YAAME,IAAUJ,IAAK,IAAIA,CAAE,KAAK;AACzB,aAAAF,EAAI,IAAI,oBAAoBM,CAAO,IAAIF,GAAM,EAAE,QAAQ,EAAE,WAAAD,EAAU,EAAG,CAAA;AAAA,IAAA;AAAA,IAe7E,mBAXwB,CAAC,EAAE,IAAAD,GAAI,WAAAC,QAAmD;AAClF,YAAMG,IAAUJ,IAAK,IAAIA,CAAE,KAAK;AACzB,aAAAF,EAAI,IAAI,iBAAiBM,CAAO,IAAI,MAAM,EAAE,QAAQ,EAAE,WAAAH,EAAU,EAAG,CAAA;AAAA,IAAA;AAAA,EAS1E;AAEJ;"}