contentful-management
Version:
Client for Contentful's Content Management API
40 lines (37 loc) • 1.35 kB
JavaScript
import { getUploadHttpClient } from '../../../upload-http-client.js';
import { post, del as del$1, get as get$1 } from './raw.js';
const getBaseUploadUrl = (params) => {
const spacePath = `/spaces/${params.spaceId}/uploads`;
const environmentPath = `/spaces/${params.spaceId}/environments/${params.environmentId}/uploads`;
const path = params.environmentId ? environmentPath : spacePath;
return path;
};
const getEntityUploadUrl = (params) => {
const path = getBaseUploadUrl(params);
return path + `/${params.uploadId}`;
};
const create = (http, params, data) => {
const httpUpload = getUploadHttpClient(http);
const { file } = data;
if (!file) {
return Promise.reject(new Error('Unable to locate a file to upload.'));
}
const path = getBaseUploadUrl(params);
return post(httpUpload, path, file, {
headers: {
'Content-Type': 'application/octet-stream',
},
});
};
const del = (http, params) => {
const httpUpload = getUploadHttpClient(http);
const path = getEntityUploadUrl(params);
return del$1(httpUpload, path);
};
const get = (http, params) => {
const httpUpload = getUploadHttpClient(http);
const path = getEntityUploadUrl(params);
return get$1(httpUpload, path);
};
export { create, del, get };
//# sourceMappingURL=upload.js.map