file upload develop

This commit is contained in:
smanylov
2025-12-24 15:41:06 +07:00
parent c38b7ee558
commit 8058be42c1
8 changed files with 235 additions and 84 deletions
+10 -8
View File
@@ -24,10 +24,10 @@ export const SignupFormSchema = z
.string()
.min(2, { error: 'register-error-name' })
.regex(/^[^0-9]*$/, { message: 'register-error-no-digits' })
/* .refine(
(value) => !/\p{Emoji}/u.test(value),
{ message: 'no-emoji-allowed' }
) */
/* .refine(
(value) => !/\p{Emoji}/u.test(value),
{ message: 'no-emoji-allowed' }
) */
.trim(),
email: z
.string()
@@ -48,10 +48,10 @@ export const SignupFormSchema = z
.min(8, { error: 'register-error-password-symbols' })
.regex(/[a-zA-Zа-яёА-ЯЁ]/, { error: 'register-error-password-one-letter' })
.regex(/[0-9]/, { error: 'register-error-password-one-digit' })
/* .refine(
(value) => !/\p{Emoji}/u.test(value),
{ message: 'no-emoji-allowed' }
) */
/* .refine(
(value) => !/\p{Emoji}/u.test(value),
{ message: 'no-emoji-allowed' }
) */
.trim(),
confirm_password: z
.string(),
@@ -78,6 +78,8 @@ export const loginFormSchema = z
export const localDevelopmentUrl = 'http://localhost';
export type FileExtension = 'jpg' | 'jpeg' | 'png' | 'gif' | 'bmp';
export const testUserData = {
fullName: 'test',
email: 'test@mail.com',
+75 -7
View File
@@ -2,7 +2,6 @@
import { localDevelopmentUrl } from '@/app/actions/definitions';
import { getSessionData, createSession } from '@/app/actions/session';
import { number } from 'zod';
const API_BASE_URL = process.env.NODE_ENV === 'development'
? localDevelopmentUrl
@@ -51,7 +50,6 @@ export async function fileUpload(messageBody: initMessageBody) {
},
message_code: string
};
console.log(parsed);
if (parsed.message_desc === 'Operation successful') {
return parsed.message_body;
@@ -69,6 +67,7 @@ export async function fileUpload(messageBody: initMessageBody) {
export async function cancelUpload(udloadId: string) {
console.log('cancelUpload');
console.log(udloadId);
try {
const response = await fetch(`${API_BASE_URL}/api/v1/data`, {
@@ -114,20 +113,52 @@ export async function cancelUpload(udloadId: string) {
}
export async function chunkUpload(formData: FormData) {
console.log('chunkUpload');
console.log(`${API_BASE_URL}/api/v1/files/chunk`);
try {
const response = await fetch(`${API_BASE_URL}/api/v1/files/chunk`, {
method: 'POST',
body: formData
});
console.log(response);
if (response.ok) {
let parsed = await response.json();
if (parsed.message_desc === 'Upload cancelled successfully') {
console.log('chunkUpload');
console.log(parsed.message_body);
return parsed.message_body;
} else {
console.log('error cancel chunkUpload');
throw parsed;
}
} else {
throw (`${response.status}`);
}
} catch (error) {
return error
}
}
export async function checkChunkStatus(upload_id: string) {
try {
const response = await fetch(`${API_BASE_URL}/api/v1/data`, {
method: 'POST',
body: JSON.stringify({
version: 1,
msg_id: 20004,
message_body: {
action: 'chunks',
upload_id
}
}),
headers: {
"Content-Type": "application/json",
"Accept": "application/json"
}
});
if (response.ok) {
let parsed = await response.json();
console.log('response.ok');
console.log(parsed);
if (parsed.message_desc === 'Upload cancelled successfully') {
@@ -140,6 +171,43 @@ export async function chunkUpload(formData: FormData) {
throw (`${response.status}`);
}
} catch (error) {
return error
}
}
export async function getAllowedFilesExtensions(type: string) {
try {
const response = await fetch(`${API_BASE_URL}/api/v1/data`, {
method: 'POST',
body: JSON.stringify({
version: 1,
msg_id: 20004,
message_body: {
action: 'file_extension',
file_type: type
}
}),
headers: {
"Content-Type": "application/json",
"Accept": "application/json"
}
});
if (response.ok) {
let parsed = await response.json();
console.log(parsed);
if (parsed.message_desc === 'Operation successful') {
return parsed.message_body.file_extension;
} else {
console.log('error cancel getAllowedFilesExtensions');
throw parsed;
}
} else {
throw (`${response.status}`);
}
} catch (error) {
return error
}