25 lines
No EOL
664 B
TypeScript
25 lines
No EOL
664 B
TypeScript
import ky from 'ky';
|
|
import { StereoFile } from './types';
|
|
|
|
export const apiClient = ky.create({
|
|
prefixUrl: '/api',
|
|
hooks: {
|
|
beforeRequest: [
|
|
request => {
|
|
const token = localStorage.getItem('token');
|
|
if (token) {
|
|
request.headers.set('Authorization', `Bearer ${token}`);
|
|
}
|
|
}
|
|
]
|
|
}
|
|
});
|
|
// TODO: make wrapper for apiclient fr
|
|
export const api = {
|
|
list: async () => await apiClient.get('list').json<StereoFile[]>(),
|
|
upload: async (file: File) => {
|
|
const formData = new FormData();
|
|
formData.append('file', file);
|
|
return await apiClient.post('upload', { body: formData });
|
|
}
|
|
} |