@memori.ai/memori-api-client
Version:
React library to integrate a Memori in your app or website
46 lines • 1.98 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const apiFetcher_1 = require("../apiFetcher");
exports.default = (apiUrl) => ({
getUploadAssetURL: (authToken, memoriID, memoryID) => `${apiUrl}/Asset/${authToken}${memoriID ? `/${memoriID}` : ''}${memoryID ? `/${memoryID}` : ''}`,
uploadAsset: async (fileName, fileUrl, authToken, memoriID, memoryID) => {
const data = new FormData();
const file = await fetch(fileUrl);
const fileBlob = await file.blob();
data.append(fileName, fileBlob, fileName);
const upload = await fetch(`${apiUrl}/Asset/${authToken}${memoriID ? `/${memoriID}` : ''}${memoryID ? `/${memoryID}` : ''}`, {
method: 'POST',
body: data,
});
return (await upload.json());
},
uploadAssetUnlogged: async (fileName, fileUrl, memoriID, sessionID) => {
const data = new FormData();
const file = await fetch(fileUrl);
const fileBlob = await file.blob();
data.append(fileName, fileBlob, fileName);
const upload = await fetch(`${apiUrl}/Asset/unlogged/${memoriID}/${sessionID}`, {
method: 'POST',
body: data,
});
return (await upload.json());
},
getAsset: (fileName, sessionID) => (0, apiFetcher_1.apiFetcher)(`/Asset/${fileName}/${sessionID}`, {
apiUrl,
method: 'GET',
}),
getAssetList: (authToken) => (0, apiFetcher_1.apiFetcher)(`/Assets/${authToken}`, {
apiUrl,
method: 'GET',
}),
updateAsset: (authToken, assetURL, asset) => (0, apiFetcher_1.apiFetcher)(`/Asset/${authToken}/${assetURL.split('/').reverse()[0]}`, {
apiUrl,
method: 'PATCH',
body: asset,
}),
deleteAsset: (authToken, assetURL) => (0, apiFetcher_1.apiFetcher)(`/Asset/${authToken}/${assetURL.split('/').reverse()[0]}`, {
apiUrl,
method: 'DELETE',
}),
});
//# sourceMappingURL=asset.js.map