Files
no-copy-frontend/src/app/actions/fileEntity.ts
T

120 lines
2.3 KiB
TypeScript
Raw Normal View History

2025-12-26 14:03:57 +07:00
'use server'
import { getSessionData } from '@/app/actions/session';
2025-12-26 17:56:57 +07:00
import { API_BASE_URL } from '@/app/actions/definitions';
2025-12-26 14:03:57 +07:00
2026-01-09 12:35:48 +07:00
export async function getUserFilesData(page: number, pageSize: number) {
2025-12-26 14:03:57 +07:00
const token = await getSessionData('token');
try {
const response = await fetch(`${API_BASE_URL}/api/v1/data`, {
method: 'POST',
body: JSON.stringify({
version: 1,
msg_id: 20005,
message_body: {
action: 'user_files',
2026-01-09 12:35:48 +07:00
page: page,
page_size: pageSize,
2025-12-26 14:03:57 +07:00
token: token
}
}),
headers: {
2026-01-28 18:53:08 +07:00
'Content-Type': 'application/json',
'Accept': 'application/json'
2025-12-26 14:03:57 +07:00
}
});
if (response.ok) {
let parsed = await response.json();
if (parsed.message_code === 0) {
return parsed.message_body;
} else {
throw parsed;
}
} else {
throw (`${response.status}`);
}
} catch (error) {
return error
}
}
2026-01-27 19:52:01 +07:00
export async function removeUserFile(fileId: string, fullDelete: number) {
2025-12-26 14:03:57 +07:00
const token = await getSessionData('token');
try {
const response = await fetch(`${API_BASE_URL}/api/v1/data`, {
method: 'POST',
body: JSON.stringify({
version: 1,
msg_id: 20005,
message_body: {
action: 'delete_file',
file_id: fileId,
2026-01-27 19:52:01 +07:00
full_delete: fullDelete,
2025-12-26 14:03:57 +07:00
token: token
}
}),
headers: {
2026-01-28 18:53:08 +07:00
'Content-Type': 'application/json',
'Accept': 'application/json'
2025-12-26 14:03:57 +07:00
}
});
if (response.ok) {
let parsed = await response.json();
if (parsed.message_code === 0) {
return parsed.message_body.file_id;
} else {
throw parsed;
}
} else {
throw (`${response.status}`);
}
2026-01-27 19:52:01 +07:00
} catch (error) {
return error
}
}
2026-01-28 18:53:08 +07:00
export async function viewFileInfo(fileId: string) {
const token = await getSessionData('token');
try {
const response = await fetch(`${API_BASE_URL}/api/v1/data`, {
method: 'POST',
body: JSON.stringify({
version: 1,
msg_id: 20005,
message_body: {
action: 'file_info',
file_id: fileId,
token: token
}
}),
headers: {
'Content-Type': 'application/json',
'Accept': 'application/json'
2026-01-27 19:52:01 +07:00
}
});
if (response.ok) {
let parsed = await response.json();
if (parsed.message_code === 0) {
return parsed.message_body;
} else {
throw parsed;
}
} else {
throw (`${response.status}`);
}
2025-12-26 14:03:57 +07:00
} catch (error) {
return error
}
}