update error handler
This commit is contained in:
@@ -2,6 +2,8 @@
|
||||
|
||||
import { API_BASE_URL } from '@/app/actions/definitions';
|
||||
import { getSessionData } from '@/app/actions/session';
|
||||
import { FormState } from '@/app/actions/auth';
|
||||
import { unknown } from 'zod';
|
||||
|
||||
interface initMessageBody {
|
||||
file_name: string,
|
||||
@@ -101,7 +103,12 @@ export async function cancelUpload(udloadId: string) {
|
||||
}
|
||||
}
|
||||
|
||||
export async function chunkUpload(formData: FormData) {
|
||||
export type ChunkResponse = {
|
||||
errorMesage: string | null
|
||||
fileId?: string
|
||||
};
|
||||
|
||||
export async function chunkUpload(formData: FormData): Promise<ChunkResponse> {
|
||||
try {
|
||||
const response = await fetch(`${API_BASE_URL}/api/v1/files/chunk`, {
|
||||
method: 'POST',
|
||||
@@ -111,17 +118,35 @@ export async function chunkUpload(formData: FormData) {
|
||||
if (response.ok) {
|
||||
let parsed = await response.json();
|
||||
|
||||
if (parsed.message_desc === 'Upload cancelled successfully') {
|
||||
return parsed.message_body;
|
||||
if (parsed.message_code === 0) {
|
||||
console.log('code 0');
|
||||
return {
|
||||
errorMesage: null,
|
||||
fileId: parsed.message_body.file_id
|
||||
}
|
||||
} else if (parsed.message_desc === 'Duplicate file upload') {
|
||||
throw 'duplicate-file'
|
||||
} else if (parsed.message_desc === 'Failed to upload chunk: Failed to upload chunk: User not have tokens for protect') {
|
||||
throw 'user-not-have-tokens-for-protect'
|
||||
} else {
|
||||
throw parsed;
|
||||
throw 'error'
|
||||
}
|
||||
} else {
|
||||
throw (`${response.status}`);
|
||||
throw 'error'
|
||||
}
|
||||
} catch (error: unknown) {
|
||||
if (error) {
|
||||
const typedError = error as any;
|
||||
|
||||
return {
|
||||
errorMesage: typedError
|
||||
};
|
||||
} else {
|
||||
return {
|
||||
errorMesage: 'error'
|
||||
};
|
||||
}
|
||||
|
||||
} catch (error) {
|
||||
return error
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user