Files
artcraft/app/components/UploadAudioButtonDialogue/utilities.tsx
T
wilandwil b8f5cf4eaa Audio Sidepanel v2.6 (#279)
- waveform now has a loading state
- audio library now has loading new items state
- fix so that the "New" state works on both inference created audio
items and uploaded audio items
- fix so that uploaded audio items takes the file name as its title

Co-authored-by: wil <wil@storyteller.ai>
2024-04-30 14:04:20 -04:00

44 lines
956 B
TypeScript

import { uploadMedia } from "~/api";
export interface UploadMediaRequest {
uuid_idempotency_token: string;
file: File;
source: string;
title: string;
}
export interface UploadMediaResponse {
media_file_token: string,
success: boolean
}
export const UploadMedia = (request: UploadMediaRequest, sessionToken:string) => {
const formData = new FormData();
formData.append('uuid_idempotency_token', request.uuid_idempotency_token);
formData.append('file', request.file);
formData.append('source', request.source);
formData.append('title', request.title);
return fetch(uploadMedia, {
method: 'POST',
headers: {
Accept: 'application/json',
session: sessionToken,
},
body: formData,
})
.then(res => res.json())
.then(res => {
if (res && res.success) {
return res;
} else {
return { success : false };
}
})
.catch(e => {
return { success : false };
});
}