Оптимизация

- Оптимизация JS файлов
- FIX: Исправил Crash, если не было папки logs
- Удалил скомпилированный EXE файл с репозитория исходников.
This commit is contained in:
2025-11-15 23:33:57 +07:00
parent 7c77afabed
commit c1a781a0f5
20 changed files with 411 additions and 736 deletions

View File

@@ -3,123 +3,94 @@
Работа с конфигурацией
============================================ */
import { isWailsAvailable, log } from '../utils/helpers.js';
import { isWailsAvailable } from '../utils/helpers.js';
/**
* Класс для работы с конфигурацией
*/
// Класс для работы с конфигурацией
class ConfigAPI {
constructor() {
this.available = isWailsAvailable();
}
/**
* Получить конфигурацию
*/
// Получить конфигурацию
async getConfig() {
if (!this.available) return null;
try {
return await window.go.admin.App.GetConfig();
} catch (error) {
log(`Ошибка получения конфигурации: ${error.message}`, 'error');
return null;
}
}
/**
* Сохранить конфигурацию
*/
// Сохранить конфигурацию
async saveConfig(configJSON) {
if (!this.available) return 'Error: API недоступен';
try {
return await window.go.admin.App.SaveConfig(configJSON);
} catch (error) {
log(`Ошибка сохранения конфигурации: ${error.message}`, 'error');
return `Error: ${error.message}`;
}
}
/**
* Включить Proxy Service
*/
// Включить Proxy Service
async enableProxyService() {
if (!this.available) return;
try {
await window.go.admin.App.EnableProxyService();
} catch (error) {
log(`Ошибка включения Proxy: ${error.message}`, 'error');
}
}
/**
* Отключить Proxy Service
*/
// Отключить Proxy Service
async disableProxyService() {
if (!this.available) return;
try {
await window.go.admin.App.DisableProxyService();
} catch (error) {
log(`Ошибка отключения Proxy: ${error.message}`, 'error');
}
}
/**
* Перезапустить все сервисы
*/
// Перезапустить все сервисы
async restartAllServices() {
if (!this.available) return;
try {
await window.go.admin.App.RestartAllServices();
} catch (error) {
log(`Ошибка перезапуска сервисов: ${error.message}`, 'error');
}
}
/**
* Запустить HTTP Service
*/
// Запустить HTTP Service
async startHTTPService() {
if (!this.available) return;
try {
await window.go.admin.App.StartHTTPService();
} catch (error) {
log(`Ошибка запуска HTTP: ${error.message}`, 'error');
}
}
/**
* Остановить HTTP Service
*/
// Остановить HTTP Service
async stopHTTPService() {
if (!this.available) return;
try {
await window.go.admin.App.StopHTTPService();
} catch (error) {
log(`Ошибка остановки HTTP: ${error.message}`, 'error');
}
}
/**
* Запустить HTTPS Service
*/
// Запустить HTTPS Service
async startHTTPSService() {
if (!this.available) return;
try {
await window.go.admin.App.StartHTTPSService();
} catch (error) {
log(`Ошибка запуска HTTPS: ${error.message}`, 'error');
}
}
/**
* Остановить HTTPS Service
*/
// Остановить HTTPS Service
async stopHTTPSService() {
if (!this.available) return;
try {
await window.go.admin.App.StopHTTPSService();
} catch (error) {
log(`Ошибка остановки HTTPS: ${error.message}`, 'error');
}
}
}

View File

@@ -3,119 +3,91 @@
Обёртка над Wails API
============================================ */
import { isWailsAvailable, log } from '../utils/helpers.js';
import { isWailsAvailable } from '../utils/helpers.js';
/**
* Базовый класс для работы с Wails API
*/
// Базовый класс для работы с Wails API
class WailsAPI {
constructor() {
this.available = isWailsAvailable();
}
/**
* Проверка доступности API
*/
// Проверка доступности API
checkAvailability() {
if (!this.available) {
log('Wails API недоступен', 'warn');
return false;
}
return true;
}
/**
* Получить статус всех сервисов
*/
// Получить статус всех сервисов
async getAllServicesStatus() {
if (!this.checkAvailability()) return null;
try {
return await window.go.admin.App.GetAllServicesStatus();
} catch (error) {
log(`Ошибка получения статуса сервисов: ${error.message}`, 'error');
return null;
}
}
/**
* Получить список сайтов
*/
// Получить список сайтов
async getSitesList() {
if (!this.checkAvailability()) return [];
try {
return await window.go.admin.App.GetSitesList();
} catch (error) {
log(`Ошибка получения списка сайтов: ${error.message}`, 'error');
return [];
}
}
/**
* Получить список прокси
*/
// Получить список прокси
async getProxyList() {
if (!this.checkAvailability()) return [];
try {
return await window.go.admin.App.GetProxyList();
} catch (error) {
log(`Ошибка получения списка прокси: ${error.message}`, 'error');
return [];
}
}
/**
* Получить правила vAccess
*/
// Получить правила vAccess
async getVAccessRules(host, isProxy) {
if (!this.checkAvailability()) return { rules: [] };
try {
return await window.go.admin.App.GetVAccessRules(host, isProxy);
} catch (error) {
log(`Ошибка получения правил vAccess: ${error.message}`, 'error');
return { rules: [] };
}
}
/**
* Сохранить правила vAccess
*/
// Сохранить правила vAccess
async saveVAccessRules(host, isProxy, configJSON) {
if (!this.checkAvailability()) return 'Error: API недоступен';
try {
return await window.go.admin.App.SaveVAccessRules(host, isProxy, configJSON);
} catch (error) {
log(`Ошибка сохранения правил vAccess: ${error.message}`, 'error');
return `Error: ${error.message}`;
}
}
/**
* Запустить сервер
*/
// Запустить сервер
async startServer() {
if (!this.checkAvailability()) return;
try {
await window.go.admin.App.StartServer();
} catch (error) {
log(`Ошибка запуска сервера: ${error.message}`, 'error');
}
}
/**
* Остановить сервер
*/
// Остановить сервер
async stopServer() {
if (!this.checkAvailability()) return;
try {
await window.go.admin.App.StopServer();
} catch (error) {
log(`Ошибка остановки сервера: ${error.message}`, 'error');
}
}
/**
* Проверить готовность сервисов
*/
// Проверить готовность сервисов
async checkServicesReady() {
if (!this.checkAvailability()) return false;
try {
@@ -125,66 +97,51 @@ class WailsAPI {
}
}
/**
* Открыть папку сайта
*/
// Открыть папку сайта
async openSiteFolder(host) {
if (!this.checkAvailability()) return;
try {
await window.go.admin.App.OpenSiteFolder(host);
} catch (error) {
log(`Ошибка открытия папки: ${error.message}`, 'error');
}
}
/**
* Создать новый сайт
*/
// Создать новый сайт
async createNewSite(siteJSON) {
if (!this.checkAvailability()) return 'Error: API недоступен';
try {
return await window.go.admin.App.CreateNewSite(siteJSON);
} catch (error) {
log(`Ошибка создания сайта: ${error.message}`, 'error');
return `Error: ${error.message}`;
}
}
/**
* Загрузить сертификат для сайта
*/
// Загрузить сертификат для сайта
async uploadCertificate(host, certType, certDataBase64) {
if (!this.checkAvailability()) return 'Error: API недоступен';
try {
return await window.go.admin.App.UploadCertificate(host, certType, certDataBase64);
} catch (error) {
log(`Ошибка загрузки сертификата: ${error.message}`, 'error');
return `Error: ${error.message}`;
}
}
/**
* Перезагрузить SSL сертификаты
*/
// Перезагрузить SSL сертификаты
async reloadSSLCertificates() {
if (!this.checkAvailability()) return 'Error: API недоступен';
try {
return await window.go.admin.App.ReloadSSLCertificates();
} catch (error) {
log(`Ошибка перезагрузки сертификатов: ${error.message}`, 'error');
return `Error: ${error.message}`;
}
}
/**
* Удалить сайт
*/
// Удалить сайт
async deleteSite(host) {
if (!this.checkAvailability()) return 'Error: API недоступен';
try {
return await window.go.admin.App.DeleteSite(host);
} catch (error) {
log(`Ошибка удаления сайта: ${error.message}`, 'error');
return `Error: ${error.message}`;
}
}