refactor: add translations for system status

This commit is contained in:
Shishkevich D. 2025-04-04 08:12:21 +00:00
parent e75cec719b
commit e132b29485
15 changed files with 238 additions and 55 deletions

View file

@ -558,10 +558,6 @@ class CPUFormatter {
static cpuSpeedFormat(speed) { static cpuSpeedFormat(speed) {
return speed > 1000 ? (speed / 1000).toFixed(2) + " GHz" : speed.toFixed(2) + " MHz"; return speed > 1000 ? (speed / 1000).toFixed(2) + " GHz" : speed.toFixed(2) + " MHz";
} }
static cpuCoreFormat(cores) {
return cores === 1 ? "1 Core" : cores + " Cores";
}
} }
class TimeFormatter { class TimeFormatter {

View file

@ -95,7 +95,7 @@
<template> <template>
<a-row v-if="!status.isLoaded"> <a-row v-if="!status.isLoaded">
<a-card hoverable :style="{ textAlign: 'center', padding: '30px 0', marginTop: '10px', background: 'transparent' }"> <a-card hoverable :style="{ textAlign: 'center', padding: '30px 0', marginTop: '10px', background: 'transparent' }">
<a-spin tip="Loading..."></a-spin> <a-spin tip='{{ i18n "loading" }}'></a-spin>
</a-card> </a-card>
</a-row> </a-row>
<a-row v-else> <a-row v-else>
@ -108,20 +108,31 @@
<a-progress type="dashboard" status="normal" <a-progress type="dashboard" status="normal"
:stroke-color="status.cpu.color" :stroke-color="status.cpu.color"
:percent="status.cpu.percent"></a-progress> :percent="status.cpu.percent"></a-progress>
<div><b>CPU:</b> [[ CPUFormatter.cpuCoreFormat(status.cpuCores) ]] <a-tooltip> <div>
<a-icon type="area-chart"></a-icon> <span>{{ i18n "pages.index.cpu" }}</span>
<template slot="title"> <a-tooltip>
<div><b>Logical Processors:</b> [[ (status.logicalPro) ]]</div> <a-icon type="area-chart"></a-icon>
<div><b>Speed:</b> [[ CPUFormatter.cpuSpeedFormat(status.cpuSpeedMhz) ]]</div> <template slot="title">
</template> <div><b>{{ i18n "pages.index.cpuCores" }}:</b> [[ (status.cpuCores) ]]</div>
</a-tooltip></div> <div><b>{{ i18n "pages.index.logicalProcessors" }}:</b> [[ (status.logicalPro) ]]</div>
<div><b>{{ i18n "pages.index.frequency" }}:</b> [[ CPUFormatter.cpuSpeedFormat(status.cpuSpeedMhz) ]]</div>
</template>
</a-tooltip>
</div>
</a-col> </a-col>
<a-col :span="12" :style="{ textAlign: 'center' }"> <a-col :span="12" :style="{ textAlign: 'center' }">
<a-progress type="dashboard" status="normal" <a-progress type="dashboard" status="normal"
:stroke-color="status.mem.color" :stroke-color="status.mem.color"
:percent="status.mem.percent"></a-progress> :percent="status.mem.percent"></a-progress>
<div> <div>
<b>{{ i18n "pages.index.memory"}}:</b> [[ SizeFormatter.sizeFormat(status.mem.current) ]] / [[ SizeFormatter.sizeFormat(status.mem.total) ]] <span>{{ i18n "pages.index.memory" }}</span>
<a-tooltip>
<a-icon type="area-chart"></a-icon>
<template slot="title">
<div><b>{{ i18n "pages.index.storageUsed" }}:</b> [[ SizeFormatter.sizeFormat(status.mem.current) ]]</div>
<div><b>{{ i18n "pages.index.storageTotal" }}:</b> [[ SizeFormatter.sizeFormat(status.mem.total) ]]</div>
</template>
</a-tooltip>
</div> </div>
</a-col> </a-col>
</a-row> </a-row>
@ -133,7 +144,14 @@
:stroke-color="status.swap.color" :stroke-color="status.swap.color"
:percent="status.swap.percent"></a-progress> :percent="status.swap.percent"></a-progress>
<div> <div>
<b>Swap:</b> [[ SizeFormatter.sizeFormat(status.swap.current) ]] / [[ SizeFormatter.sizeFormat(status.swap.total) ]] <span>{{ i18n "pages.index.swap" }}</span>
<a-tooltip>
<a-icon type="area-chart"></a-icon>
<template slot="title">
<div><b>{{ i18n "pages.index.storageUsed" }}:</b> [[ SizeFormatter.sizeFormat(status.swap.current) ]]</div>
<div><b>{{ i18n "pages.index.storageTotal" }}:</b> [[ SizeFormatter.sizeFormat(status.swap.total) ]]</div>
</template>
</a-tooltip>
</div> </div>
</a-col> </a-col>
<a-col :span="12" :style="{ textAlign: 'center' }"> <a-col :span="12" :style="{ textAlign: 'center' }">
@ -141,7 +159,14 @@
:stroke-color="status.disk.color" :stroke-color="status.disk.color"
:percent="status.disk.percent"></a-progress> :percent="status.disk.percent"></a-progress>
<div> <div>
<b>{{ i18n "pages.index.hard"}}:</b> [[ SizeFormatter.sizeFormat(status.disk.current) ]] / [[ SizeFormatter.sizeFormat(status.disk.total) ]] <span>{{ i18n "pages.index.storage" }}</span>
<a-tooltip>
<a-icon type="area-chart"></a-icon>
<template slot="title">
<div><b>{{ i18n "pages.index.storageUsed" }}:</b> [[ SizeFormatter.sizeFormat(status.disk.current) ]]</div>
<div><b>{{ i18n "pages.index.storageTotal" }}:</b> [[ SizeFormatter.sizeFormat(status.disk.total) ]]</div>
</template>
</a-tooltip>
</div> </div>
</a-col> </a-col>
</a-row> </a-row>
@ -160,18 +185,25 @@
</a-space> </a-space>
</template> </template>
<template #extra> <template #extra>
<template v-if="status.xray.state != State.Error"> <template v-if="status.xray.state != 'error'">
<a-badge status="processing" class="running-animation" :text="status.xray.state" :color="status.xray.color" :style="{ textTransform: 'capitalize' }"/> <a-badge status="processing" class="running-animation" :text="status.xray.stateMsg" :color="status.xray.color"/>
</template> </template>
<template v-else> <template v-else>
<a-popover :overlay-class-name="themeSwitcher.currentTheme"> <a-popover :overlay-class-name="themeSwitcher.currentTheme">
<span slot="title" :style="{ fontSize: '12pt' }">An error occurred while running Xray <span slot="title">
<a-tag color="purple" :style="{ cursor: 'pointer', float: 'right' }" @click="openLogs()">{{ i18n "pages.index.logs" }}</a-tag> <a-row type="flex" align="middle" justify="space-between">
<a-col>
<span>{{ i18n "pages.index.xrayErrorPopoverTitle" }}</span>
</a-col>
<a-col>
<a-icon type="bars" :style="{ cursor: 'pointer', float: 'right' }" @click="openLogs()"></a-tag>
</a-col>
</a-row>
</span> </span>
<template slot="content"> <template slot="content">
<p :style="{ maxWidth: '400px' }" v-for="line in status.xray.errorMsg.split('\n')">[[ line ]]</p> <span :style="{ maxWidth: '400px' }" v-for="line in status.xray.errorMsg.split('\n')">[[ line ]]</span>
</template> </template>
<a-badge :text="status.xray.state" :color="status.xray.color" :style="{ textTransform: 'capitalize' }"/> <a-badge :text="status.xray.stateMsg" :color="status.xray.color"/>
</a-popover> </a-popover>
</template> </template>
</template> </template>
@ -237,8 +269,8 @@
</a-col> </a-col>
<a-col :sm="24" :lg="12"> <a-col :sm="24" :lg="12">
<a-card title='{{ i18n "usage"}}' hoverable> <a-card title='{{ i18n "usage"}}' hoverable>
<a-tag color="green"> RAM: [[ SizeFormatter.sizeFormat(status.appStats.mem) ]] </a-tag> <a-tag color="green"> {{ i18n "pages.index.memory" }}: [[ SizeFormatter.sizeFormat(status.appStats.mem) ]] </a-tag>
<a-tag color="green"> Threads: [[ status.appStats.threads ]] </a-tag> <a-tag color="green"> {{ i18n "pages.index.threads" }}: [[ status.appStats.threads ]] </a-tag>
</a-card> </a-card>
</a-col> </a-col>
<a-col :sm="24" :lg="12"> <a-col :sm="24" :lg="12">
@ -427,13 +459,6 @@
{{template "component/aCustomStatistic" .}} {{template "component/aCustomStatistic" .}}
{{template "modals/textModal"}} {{template "modals/textModal"}}
<script> <script>
const State = {
Running: "running",
Stop: "stop",
Error: "error",
}
Object.freeze(State);
class CurTotal { class CurTotal {
constructor(current, total) { constructor(current, total) {
@ -478,7 +503,8 @@
this.uptime = 0; this.uptime = 0;
this.appUptime = 0; this.appUptime = 0;
this.appStats = {threads: 0, mem: 0, uptime: 0}; this.appStats = {threads: 0, mem: 0, uptime: 0};
this.xray = { state: State.Stop, errorMsg: "", version: "", color: "" };
this.xray = { state: 'stop', stateMsg: "", errorMsg: "", version: "", color: "" };
if (data == null) { if (data == null) {
return; return;
@ -503,17 +529,22 @@
this.appStats = data.appStats; this.appStats = data.appStats;
this.xray = data.xray; this.xray = data.xray;
switch (this.xray.state) { switch (this.xray.state) {
case State.Running: case 'running':
this.xray.color = "green"; this.xray.color = "green";
this.xray.stateMsg = '{{ i18n "pages.index.xrayStatusRunning" }}';
break; break;
case State.Stop: case 'stop':
this.xray.color = "orange"; this.xray.color = "orange";
this.xray.stateMsg = '{{ i18n "pages.index.xrayStatusStop" }}';
break; break;
case State.Error: case 'error':
this.xray.color = "red"; this.xray.color = "red";
this.xray.stateMsg ='{{ i18n "pages.index.xrayStatusError" }}';
break; break;
default: default:
this.xray.color = "gray"; this.xray.color = "gray";
this.xray.stateMsg = '{{ i18n "pages.index.xrayStatusUnknown" }}';
break;
} }
} }
} }

View file

@ -66,9 +66,9 @@
<a-button type="danger" :disabled="!saveBtnDisable" @click="restartXray">{{ i18n "pages.xray.restart" }}</a-button> <a-button type="danger" :disabled="!saveBtnDisable" @click="restartXray">{{ i18n "pages.xray.restart" }}</a-button>
<a-popover v-if="restartResult" <a-popover v-if="restartResult"
:overlay-class-name="themeSwitcher.currentTheme"> :overlay-class-name="themeSwitcher.currentTheme">
<span slot="title" :style="{ fontSize: '12pt' }">Error in running xray-core</span> <span slot="title">{{ i18n "pages.index.xrayErrorPopoverTitle" }}</span>
<template slot="content"> <template slot="content">
<p :style="{ maxWidth: '400px' }" v-for="line in restartResult.split('\n')">[[ line ]]</p> <span :style="{ maxWidth: '400px' }" v-for="line in restartResult.split('\n')">[[ line ]]</span>
</template> </template>
<a-icon type="question-circle"></a-icon> <a-icon type="question-circle"></a-icon>
</a-popover> </a-popover>

View file

@ -91,14 +91,27 @@
[pages.index] [pages.index]
"title" = "Overview" "title" = "Overview"
"cpu" = "CPU"
"cpuCores" = "Cores"
"logicalProcessors" = "Logical Processors"
"frequency" = "Frequency"
"swap" = "Swap"
"storage" = "Storage"
"storageUsed" = "Used"
"storageTotal" = "Total"
"memory" = "RAM" "memory" = "RAM"
"hard" = "Disk" "threads" = "Threads"
"xrayStatus" = "Xray" "xrayStatus" = "Xray"
"stopXray" = "Stop" "stopXray" = "Stop"
"restartXray" = "Restart" "restartXray" = "Restart"
"xraySwitch" = "Version" "xraySwitch" = "Version"
"xraySwitchClick" = "Choose the version you want to switch to." "xraySwitchClick" = "Choose the version you want to switch to."
"xraySwitchClickDesk" = "Choose carefully, as older versions may not be compatible with current configurations." "xraySwitchClickDesk" = "Choose carefully, as older versions may not be compatible with current configurations."
"xrayStatusUnknown" = "Unknown"
"xrayStatusRunning" = "Running"
"xrayStatusStop" = "Stop"
"xrayStatusError" = "Error"
"xrayErrorPopoverTitle" = "An error occurred while running Xray"
"operationHours" = "Uptime" "operationHours" = "Uptime"
"systemLoad" = "System Load" "systemLoad" = "System Load"
"systemLoadDesc" = "System load average for the past 1, 5, and 15 minutes" "systemLoadDesc" = "System load average for the past 1, 5, and 15 minutes"

View file

@ -91,14 +91,27 @@
[pages.index] [pages.index]
"title" = "Estado del Sistema" "title" = "Estado del Sistema"
"memory" = "Memoria" "cpu" = "CPU"
"hard" = "Disco Duro" "cpuCores" = "Núcleos"
"logicalProcessors" = "Procesadores lógicos"
"frequency" = "Frecuencia"
"swap" = "Intercambio"
"storage" = "Almacenamiento"
"storageUsed" = "Usado"
"storageTotal" = "Total"
"memory" = "RAM"
"threads" = "Hilos"
"xrayStatus" = "Xray" "xrayStatus" = "Xray"
"stopXray" = "Detener" "stopXray" = "Detener"
"restartXray" = "Reiniciar" "restartXray" = "Reiniciar"
"xraySwitch" = "Versión" "xraySwitch" = "Versión"
"xraySwitchClick" = "Elige la versión a la que deseas cambiar." "xraySwitchClick" = "Elige la versión a la que deseas cambiar."
"xraySwitchClickDesk" = "Elige sabiamente, ya que las versiones anteriores pueden no ser compatibles con las configuraciones actuales." "xraySwitchClickDesk" = "Elige sabiamente, ya que las versiones anteriores pueden no ser compatibles con las configuraciones actuales."
"xrayStatusUnknown" = "Desconocido"
"xrayStatusRunning" = "En ejecución"
"xrayStatusStop" = "Detenido"
"xrayStatusError" = "Error"
"xrayErrorPopoverTitle" = "Se produjo un error al ejecutar Xray"
"operationHours" = "Tiempo de Funcionamiento" "operationHours" = "Tiempo de Funcionamiento"
"systemLoad" = "Carga del Sistema" "systemLoad" = "Carga del Sistema"
"systemLoadDesc" = "promedio de carga del sistema en los últimos 1, 5 y 15 minutos" "systemLoadDesc" = "promedio de carga del sistema en los últimos 1, 5 y 15 minutos"

View file

@ -91,14 +91,27 @@
[pages.index] [pages.index]
"title" = "نمای کلی" "title" = "نمای کلی"
"memory" = "RAM" "cpu" = "پردازنده"
"hard" = "Disk" "cpuCores" = "هسته‌ها"
"logicalProcessors" = "پردازنده‌های منطقی"
"frequency" = "فرکانس"
"swap" = "سواپ"
"storage" = "ذخیره‌سازی"
"storageUsed" = "استفاده شده"
"storageTotal" = "کل"
"memory" = "حافظه رم"
"threads" = "رشته‌ها"
"xrayStatus" = "ایکس‌ری" "xrayStatus" = "ایکس‌ری"
"stopXray" = "توقف" "stopXray" = "توقف"
"restartXray" = "شروع‌مجدد" "restartXray" = "شروع‌مجدد"
"xraySwitch" = "‌نسخه" "xraySwitch" = "‌نسخه"
"xraySwitchClick" = "نسخه مورد نظر را انتخاب کنید" "xraySwitchClick" = "نسخه مورد نظر را انتخاب کنید"
"xraySwitchClickDesk" = "لطفا بادقت انتخاب کنید. درصورت انتخاب نسخه قدیمی‌تر، امکان ناهماهنگی با پیکربندی فعلی وجود دارد" "xraySwitchClickDesk" = "لطفا بادقت انتخاب کنید. درصورت انتخاب نسخه قدیمی‌تر، امکان ناهماهنگی با پیکربندی فعلی وجود دارد"
"xrayStatusUnknown" = "ناشناخته"
"xrayStatusRunning" = "در حال اجرا"
"xrayStatusStop" = "متوقف"
"xrayStatusError" = "خطا"
"xrayErrorPopoverTitle" = "خطا در هنگام اجرای Xray رخ داد"
"operationHours" = "مدت‌کارکرد" "operationHours" = "مدت‌کارکرد"
"systemLoad" = "بارسیستم" "systemLoad" = "بارسیستم"
"systemLoadDesc" = "میانگین بار سیستم برای 1، 5 و 15 دقیقه گذشته" "systemLoadDesc" = "میانگین بار سیستم برای 1، 5 و 15 دقیقه گذشته"

View file

@ -91,14 +91,27 @@
[pages.index] [pages.index]
"title" = "Ikhtisar" "title" = "Ikhtisar"
"cpu" = "CPU"
"cpuCores" = "Inti"
"logicalProcessors" = "Prosesor logis"
"frequency" = "Frekuensi"
"swap" = "Swap"
"storage" = "Penyimpanan"
"storageUsed" = "Digunakan"
"storageTotal" = "Total"
"memory" = "RAM" "memory" = "RAM"
"hard" = "Disk" "threads" = "Thread"
"xrayStatus" = "Xray" "xrayStatus" = "Xray"
"stopXray" = "Stop" "stopXray" = "Stop"
"restartXray" = "Restart" "restartXray" = "Restart"
"xraySwitch" = "Versi" "xraySwitch" = "Versi"
"xraySwitchClick" = "Pilih versi yang ingin Anda pindah." "xraySwitchClick" = "Pilih versi yang ingin Anda pindah."
"xraySwitchClickDesk" = "Pilih dengan hati-hati, karena versi yang lebih lama mungkin tidak kompatibel dengan konfigurasi saat ini." "xraySwitchClickDesk" = "Pilih dengan hati-hati, karena versi yang lebih lama mungkin tidak kompatibel dengan konfigurasi saat ini."
"xrayStatusUnknown" = "Tidak diketahui"
"xrayStatusRunning" = "Berjalan"
"xrayStatusStop" = "Berhenti"
"xrayStatusError" = "Kesalahan"
"xrayErrorPopoverTitle" = "Terjadi kesalahan saat menjalankan Xray"
"operationHours" = "Waktu Aktif" "operationHours" = "Waktu Aktif"
"systemLoad" = "Beban Sistem" "systemLoad" = "Beban Sistem"
"systemLoadDesc" = "Rata-rata beban sistem selama 1, 5, dan 15 menit terakhir" "systemLoadDesc" = "Rata-rata beban sistem selama 1, 5, dan 15 menit terakhir"

View file

@ -91,14 +91,27 @@
[pages.index] [pages.index]
"title" = "システムステータス" "title" = "システムステータス"
"memory" = "メモリ" "cpu" = "CPU"
"hard" = "ハードディスク" "cpuCores" = "コア"
"logicalProcessors" = "論理プロセッサ"
"frequency" = "周波数"
"swap" = "スワップ"
"storage" = "ストレージ"
"storageUsed" = "使用済み"
"storageTotal" = "合計"
"memory" = "RAM"
"threads" = "スレッド"
"xrayStatus" = "Xray" "xrayStatus" = "Xray"
"stopXray" = "停止" "stopXray" = "停止"
"restartXray" = "再起動" "restartXray" = "再起動"
"xraySwitch" = "バージョン" "xraySwitch" = "バージョン"
"xraySwitchClick" = "切り替えるバージョンを選択してください" "xraySwitchClick" = "切り替えるバージョンを選択してください"
"xraySwitchClickDesk" = "慎重に選択してください。古いバージョンは現在の設定と互換性がない可能性があります。" "xraySwitchClickDesk" = "慎重に選択してください。古いバージョンは現在の設定と互換性がない可能性があります。"
"xrayStatusUnknown" = "不明"
"xrayStatusRunning" = "実行中"
"xrayStatusStop" = "停止"
"xrayStatusError" = "エラー"
"xrayErrorPopoverTitle" = "Xrayの実行中にエラーが発生しました"
"operationHours" = "システム稼働時間" "operationHours" = "システム稼働時間"
"systemLoad" = "システム負荷" "systemLoad" = "システム負荷"
"systemLoadDesc" = "過去1、5、15分間のシステム平均負荷" "systemLoadDesc" = "過去1、5、15分間のシステム平均負荷"

View file

@ -91,14 +91,27 @@
[pages.index] [pages.index]
"title" = "Visão Geral" "title" = "Visão Geral"
"memory" = "Memória RAM" "cpu" = "CPU"
"hard" = "Disco" "cpuCores" = "Núcleos"
"logicalProcessors" = "Processadores lógicos"
"frequency" = "Frequência"
"swap" = "Swap"
"storage" = "Armazenamento"
"storageUsed" = "Usado"
"storageTotal" = "Total"
"memory" = "RAM"
"threads" = "Threads"
"xrayStatus" = "Xray" "xrayStatus" = "Xray"
"stopXray" = "Parar" "stopXray" = "Parar"
"restartXray" = "Reiniciar" "restartXray" = "Reiniciar"
"xraySwitch" = "Versão" "xraySwitch" = "Versão"
"xraySwitchClick" = "Escolha a versão para a qual deseja alternar." "xraySwitchClick" = "Escolha a versão para a qual deseja alternar."
"xraySwitchClickDesk" = "Escolha com cuidado, pois versões mais antigas podem não ser compatíveis com as configurações atuais." "xraySwitchClickDesk" = "Escolha com cuidado, pois versões mais antigas podem não ser compatíveis com as configurações atuais."
"xrayStatusUnknown" = "Desconhecido"
"xrayStatusRunning" = "Em execução"
"xrayStatusStop" = "Parado"
"xrayStatusError" = "Erro"
"xrayErrorPopoverTitle" = "Ocorreu um erro ao executar o Xray"
"operationHours" = "Tempo de Atividade" "operationHours" = "Tempo de Atividade"
"systemLoad" = "Carga do Sistema" "systemLoad" = "Carga do Sistema"
"systemLoadDesc" = "Média de carga do sistema nos últimos 1, 5 e 15 minutos" "systemLoadDesc" = "Média de carga do sistema nos últimos 1, 5 e 15 minutos"

View file

@ -91,14 +91,27 @@
[pages.index] [pages.index]
"title" = "Статус системы" "title" = "Статус системы"
"memory" = "Память" "cpu" = "ЦП"
"hard" = "Жесткий диск" "cpuCores" = "Ядра"
"logicalProcessors" = "Логические процессоры"
"frequency" = "Частота"
"swap" = "Файл подкачки"
"storage" = "Хранилище"
"storageUsed" = "Использовано"
"storageTotal" = "Всего"
"memory" = "ОЗУ"
"threads" = "Потоки"
"xrayStatus" = "Xray" "xrayStatus" = "Xray"
"stopXray" = "Остановить" "stopXray" = "Остановить"
"restartXray" = "Перезапустить" "restartXray" = "Перезапустить"
"xraySwitch" = "Выбор версии" "xraySwitch" = "Выбор версии"
"xraySwitchClick" = "Выберите желаемую версию" "xraySwitchClick" = "Выберите желаемую версию"
"xraySwitchClickDesk" = "Обратите внимание: старые версии могут не поддерживать текущие настройки" "xraySwitchClickDesk" = "Обратите внимание: старые версии могут не поддерживать текущие настройки"
"xrayStatusUnknown" = "Неизвестно"
"xrayStatusRunning" = "Запущен"
"xrayStatusStop" = "Остановлен"
"xrayStatusError" = "Ошибка"
"xrayErrorPopoverTitle" = "Произошла ошибка при запуске Xray"
"operationHours" = "Время работы системы" "operationHours" = "Время работы системы"
"systemLoad" = "Нагрузка на систему" "systemLoad" = "Нагрузка на систему"
"systemLoadDesc" = "Средняя загрузка системы за последние 1, 5 и 15 минут" "systemLoadDesc" = "Средняя загрузка системы за последние 1, 5 и 15 минут"

View file

@ -91,14 +91,27 @@
[pages.index] [pages.index]
"title" = "Genel Bakış" "title" = "Genel Bakış"
"cpu" = "İşlemci"
"cpuCores" = "Çekirdekler"
"logicalProcessors" = "Mantıksal işlemciler"
"frequency" = "Frekans"
"swap" = "Takas"
"storage" = "Depolama"
"storageUsed" = "Kullanılan"
"storageTotal" = "Toplam"
"memory" = "RAM" "memory" = "RAM"
"hard" = "Disk" "threads" = "İş parçacıkları"
"xrayStatus" = "Xray" "xrayStatus" = "Xray"
"stopXray" = "Durdur" "stopXray" = "Durdur"
"restartXray" = "Yeniden Başlat" "restartXray" = "Yeniden Başlat"
"xraySwitch" = "Sürüm" "xraySwitch" = "Sürüm"
"xraySwitchClick" = "Geçiş yapmak istediğiniz sürümü seçin." "xraySwitchClick" = "Geçiş yapmak istediğiniz sürümü seçin."
"xraySwitchClickDesk" = "Dikkatli seçin, eski sürümler mevcut yapılandırmalarla uyumlu olmayabilir." "xraySwitchClickDesk" = "Dikkatli seçin, eski sürümler mevcut yapılandırmalarla uyumlu olmayabilir."
"xrayStatusUnknown" = "Bilinmiyor"
"xrayStatusRunning" = "Çalışıyor"
"xrayStatusStop" = "Durduruldu"
"xrayStatusError" = "Hata"
"xrayErrorPopoverTitle" = "Xray çalıştırılırken bir hata oluştu"
"operationHours" = "Çalışma Süresi" "operationHours" = "Çalışma Süresi"
"systemLoad" = "Sistem Yükü" "systemLoad" = "Sistem Yükü"
"systemLoadDesc" = "Geçmiş 1, 5 ve 15 dakika için sistem yük ortalaması" "systemLoadDesc" = "Geçmiş 1, 5 ve 15 dakika için sistem yük ortalaması"

View file

@ -91,14 +91,27 @@
[pages.index] [pages.index]
"title" = "Огляд" "title" = "Огляд"
"memory" = "Пам'ять" "cpu" = "ЦП"
"hard" = "Диск" "cpuCores" = "Ядра"
"logicalProcessors" = "Логічні процесори"
"frequency" = "Частота"
"swap" = "Своп"
"storage" = "Сховище"
"storageUsed" = "Використано"
"storageTotal" = "Всього"
"memory" = "ОЗП"
"threads" = "Потоки"
"xrayStatus" = "Xray" "xrayStatus" = "Xray"
"stopXray" = "Зупинити" "stopXray" = "Зупинити"
"restartXray" = "Перезапустити" "restartXray" = "Перезапустити"
"xraySwitch" = "Версія" "xraySwitch" = "Версія"
"xraySwitchClick" = "Виберіть версію, на яку ви хочете перейти." "xraySwitchClick" = "Виберіть версію, на яку ви хочете перейти."
"xraySwitchClickDesk" = "Вибирайте уважно, оскільки старіші версії можуть бути несумісними з поточними конфігураціями." "xraySwitchClickDesk" = "Вибирайте уважно, оскільки старіші версії можуть бути несумісними з поточними конфігураціями."
"xrayStatusUnknown" = "Невідомо"
"xrayStatusRunning" = "Запущено"
"xrayStatusStop" = "Зупинено"
"xrayStatusError" = "Помилка"
"xrayErrorPopoverTitle" = "Під час роботи Xray сталася помилка"
"operationHours" = "Час роботи" "operationHours" = "Час роботи"
"systemLoad" = "Завантаження системи" "systemLoad" = "Завантаження системи"
"systemLoadDesc" = "Середнє завантаження системи за останні 1, 5 і 15 хвилин" "systemLoadDesc" = "Середнє завантаження системи за останні 1, 5 і 15 хвилин"

View file

@ -91,14 +91,27 @@
[pages.index] [pages.index]
"title" = "Trạng thái hệ thống" "title" = "Trạng thái hệ thống"
"memory" = "Ram" "cpu" = "CPU"
"hard" = "Dung lượng" "cpuCores" = "Nhân"
"logicalProcessors" = "Bộ xử lý logic"
"frequency" = "Tần số"
"swap" = "Swap"
"storage" = "Lưu trữ"
"storageUsed" = "Đã dùng"
"storageTotal" = "Tổng"
"memory" = "RAM"
"threads" = "Luồng"
"xrayStatus" = "Xray" "xrayStatus" = "Xray"
"stopXray" = "Dừng lại" "stopXray" = "Dừng lại"
"restartXray" = "Khởi động lại" "restartXray" = "Khởi động lại"
"xraySwitch" = "Phiên bản" "xraySwitch" = "Phiên bản"
"xraySwitchClick" = "Chọn phiên bản mà bạn muốn chuyển đổi sang." "xraySwitchClick" = "Chọn phiên bản mà bạn muốn chuyển đổi sang."
"xraySwitchClickDesk" = "Hãy lựa chọn thận trọng, vì các phiên bản cũ có thể không tương thích với các cấu hình hiện tại." "xraySwitchClickDesk" = "Hãy lựa chọn thận trọng, vì các phiên bản cũ có thể không tương thích với các cấu hình hiện tại."
"xrayStatusUnknown" = "Không xác định"
"xrayStatusRunning" = "Đang chạy"
"xrayStatusStop" = "Dừng"
"xrayStatusError" = "Lỗi"
"xrayErrorPopoverTitle" = "Đã xảy ra lỗi khi chạy Xray"
"operationHours" = "Thời gian hoạt động" "operationHours" = "Thời gian hoạt động"
"systemLoad" = "Tải hệ thống" "systemLoad" = "Tải hệ thống"
"systemLoadDesc" = "trung bình tải hệ thống trong 1, 5 và 15 phút qua" "systemLoadDesc" = "trung bình tải hệ thống trong 1, 5 và 15 phút qua"

View file

@ -91,14 +91,27 @@
[pages.index] [pages.index]
"title" = "系统状态" "title" = "系统状态"
"cpu" = "CPU"
"cpuCores" = "核心"
"logicalProcessors" = "逻辑处理器"
"frequency" = "频率"
"swap" = "交换分区"
"storage" = "存储"
"storageUsed" = "已用"
"storageTotal" = "总计"
"memory" = "内存" "memory" = "内存"
"hard" = "磁盘" "threads" = "线程"
"xrayStatus" = "Xray" "xrayStatus" = "Xray"
"stopXray" = "停止" "stopXray" = "停止"
"restartXray" = "重启" "restartXray" = "重启"
"xraySwitch" = "版本" "xraySwitch" = "版本"
"xraySwitchClick" = "选择你要切换到的版本" "xraySwitchClick" = "选择你要切换到的版本"
"xraySwitchClickDesk" = "请谨慎选择,因为较旧版本可能与当前配置不兼容" "xraySwitchClickDesk" = "请谨慎选择,因为较旧版本可能与当前配置不兼容"
"xrayStatusUnknown" = "未知"
"xrayStatusRunning" = "运行中"
"xrayStatusStop" = "停止"
"xrayStatusError" = "错误"
"xrayErrorPopoverTitle" = "运行Xray时发生错误"
"operationHours" = "系统正常运行时间" "operationHours" = "系统正常运行时间"
"systemLoad" = "系统负载" "systemLoad" = "系统负载"
"systemLoadDesc" = "过去 1、5 和 15 分钟的系统平均负载" "systemLoadDesc" = "过去 1、5 和 15 分钟的系统平均负载"

View file

@ -91,14 +91,27 @@
[pages.index] [pages.index]
"title" = "系統狀態" "title" = "系統狀態"
"cpu" = "CPU"
"cpuCores" = "核心"
"logicalProcessors" = "邏輯處理器"
"frequency" = "頻率"
"swap" = "交換空間"
"storage" = "儲存"
"storageUsed" = "已使用"
"storageTotal" = "總計"
"memory" = "記憶體" "memory" = "記憶體"
"hard" = "磁碟" "threads" = "執行緒"
"xrayStatus" = "Xray" "xrayStatus" = "Xray"
"stopXray" = "停止" "stopXray" = "停止"
"restartXray" = "重啟" "restartXray" = "重啟"
"xraySwitch" = "版本" "xraySwitch" = "版本"
"xraySwitchClick" = "選擇你要切換到的版本" "xraySwitchClick" = "選擇你要切換到的版本"
"xraySwitchClickDesk" = "請謹慎選擇,因為較舊版本可能與當前配置不相容" "xraySwitchClickDesk" = "請謹慎選擇,因為較舊版本可能與當前配置不相容"
"xrayStatusUnknown" = "未知"
"xrayStatusRunning" = "運行中"
"xrayStatusStop" = "停止"
"xrayStatusError" = "錯誤"
"xrayErrorPopoverTitle" = "執行Xray時發生錯誤"
"operationHours" = "系統正常執行時間" "operationHours" = "系統正常執行時間"
"systemLoad" = "系統負載" "systemLoad" = "系統負載"
"systemLoadDesc" = "過去 1、5 和 15 分鐘的系統平均負載" "systemLoadDesc" = "過去 1、5 和 15 分鐘的系統平均負載"