UNPKG

@memori.ai/memori-api-client

Version:

React library to integrate a Memori in your app or website

44 lines 1.82 kB
import { apiFetcher } from '../apiFetcher'; export 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) => apiFetcher(`/Asset/${fileName}/${sessionID}`, { apiUrl, method: 'GET', }), getAssetList: (authToken) => apiFetcher(`/Assets/${authToken}`, { apiUrl, method: 'GET', }), updateAsset: (authToken, assetURL, asset) => apiFetcher(`/Asset/${authToken}/${assetURL.split('/').reverse()[0]}`, { apiUrl, method: 'PATCH', body: asset, }), deleteAsset: (authToken, assetURL) => apiFetcher(`/Asset/${authToken}/${assetURL.split('/').reverse()[0]}`, { apiUrl, method: 'DELETE', }), }); //# sourceMappingURL=asset.js.map