'use server' import { getSessionData, deleteSession } from '@/app/actions/session'; import { testUserData, API_BASE_URL } from '@/app/actions/definitions'; export async function getUserData() { const userEmail = await getSessionData('email'); const token = await getSessionData('token'); /* для теста */ if (userEmail === 'test' && token === '1111') { return testUserData; } /* для теста */ try { const response = await fetch(`${API_BASE_URL}/v1/api/user?email=${userEmail}`, { method: 'GET', headers: { 'Content-Type': 'application/json', 'Accept': 'application/json', 'Authorization': `Bearer ${token}`, } }); if (response.ok) { return await response.json(); } else { return null } } catch (error) { return null } } export async function getUserFilesInfo() { 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_info', } }), headers: { 'Content-Type': 'application/json', 'Accept': 'application/json', 'Authorization': `Bearer ${token}` } }); if (response.ok) { const parsed = await response.json(); if (parsed.message_code === 0) { return parsed.message_body; } else if (parsed.message_code === 2) { await deleteSession(); } else { throw parsed.message_code; } } else { return null } } catch (error) { return null } } export async function fetchTariffs(tariffTerm: 'MONTHLY' | 'YEAR') { 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: 30001, message_body: { action: 'get', tariff_term: tariffTerm } }), headers: { 'Content-Type': 'application/json', 'Accept': 'application/json', 'Authorization': `Bearer ${token}` } }); if (response.ok) { const parsed = await response.json() if (parsed?.message_code === 0) { return parsed.message_body?.tariffs; } else { return [] } } else { return null } } catch (error) { return null } } export async function fetchTokensBundle() { 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: 30001, message_body: { action: 'tariffs_by_type', type: 'token' } }), headers: { 'Content-Type': 'application/json', 'Accept': 'application/json', 'Authorization': `Bearer ${token}` } }); if (response.ok) { const parsed = await response.json(); if (parsed?.message_code === 0) { return parsed.message_body?.token_tariffs; } else { return null } } else { return null } } catch (error) { return null } } export async function getBuildData() { const token = await getSessionData('token'); try { const response = await fetch(`${API_BASE_URL}/check/api/build`, { method: 'GET', headers: { 'Content-Type': 'application/json', 'Accept': 'application/json', 'Authorization': `Bearer ${token}` } }); if (response.ok) { return await response.json(); } else { return null } } catch (error) { return null; } } export async function fetchINN(inn: string) { try { const response = await fetch(`${API_BASE_URL}/api/auth`, { method: 'POST', body: JSON.stringify({ version: 1, msg_id: 30004, message_body: { inn: inn, } }), headers: { 'Content-Type': 'application/json', 'Accept': 'application/json' } }); if (response.ok) { const parsed = await response.json() if (parsed?.message_code === 0) { return parsed.message_body } else { return null } } else { return null } } catch (error) { return null } } export async function getHealt() { try { const response = await fetch(`${API_BASE_URL}/check/api/healt`, { method: 'GET', headers: { 'Content-Type': 'application/json', 'Accept': 'application/json' } }); if (response.ok) { return await response.json(); } else { return null } } catch (error) { return null } }