mirror of
https://github.com/Buriburizaem0n/nezha-dash-v1.git
synced 2026-05-06 13:58:43 +00:00
fix: Update service to use display_index as the main sort order (#60)
* fix: Update service to use display_index as the main sort order * chore: auto-fix linting and formatting issues * Update src/types/nezha-api.ts Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: huYang <306061454@qq.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
This commit is contained in:
@@ -177,18 +177,23 @@ export function NetworkChart({
|
|||||||
|
|
||||||
const formattedData = formatData(monitorData.data);
|
const formattedData = formatData(monitorData.data);
|
||||||
|
|
||||||
const monitorIdByName = new Map(
|
const monitorInfoByName = new Map(
|
||||||
monitorData.data.map((item) => [item.monitor_name, item.monitor_id]),
|
monitorData.data.map((item) => [
|
||||||
|
item.monitor_name,
|
||||||
|
{ id: item.monitor_id, displayIndex: item.display_index },
|
||||||
|
]),
|
||||||
);
|
);
|
||||||
const chartDataKey = Object.keys(transformedData).sort((a, b) => {
|
const chartDataKey = Object.keys(transformedData).sort((a, b) => {
|
||||||
const aId = monitorIdByName.get(a);
|
const aInfo = monitorInfoByName.get(a);
|
||||||
const bId = monitorIdByName.get(b);
|
const bInfo = monitorInfoByName.get(b);
|
||||||
if (aId === undefined && bId === undefined) {
|
if (!aInfo && !bInfo) return a.localeCompare(b);
|
||||||
return a.localeCompare(b);
|
if (!aInfo) return 1;
|
||||||
}
|
if (!bInfo) return -1;
|
||||||
if (aId === undefined) return 1;
|
|
||||||
if (bId === undefined) return -1;
|
const indexDiff = (bInfo.displayIndex ?? 0) - (aInfo.displayIndex ?? 0);
|
||||||
return aId - bId;
|
if (indexDiff !== 0) return indexDiff;
|
||||||
|
|
||||||
|
return aInfo.id - bInfo.id;
|
||||||
});
|
});
|
||||||
|
|
||||||
const initChartConfig = {
|
const initChartConfig = {
|
||||||
|
|||||||
+135
-135
@@ -1,137 +1,137 @@
|
|||||||
{
|
{
|
||||||
"nezha": "Monitoreo Nezha",
|
"nezha": "Monitoreo Nezha",
|
||||||
"theme": {
|
"theme": {
|
||||||
"light": "Claro",
|
"light": "Claro",
|
||||||
"dark": "Escuro",
|
"dark": "Escuro",
|
||||||
"system": "Sistema"
|
"system": "Sistema"
|
||||||
},
|
},
|
||||||
"overview": "Visión xeral",
|
"overview": "Visión xeral",
|
||||||
"dashboard": "Panel de control",
|
"dashboard": "Panel de control",
|
||||||
"login": "Inciar sesión",
|
"login": "Inciar sesión",
|
||||||
"online": "Activo",
|
"online": "Activo",
|
||||||
"offline": "Desconectado",
|
"offline": "Desconectado",
|
||||||
"whereTheTimeIs": "Onde está a hora",
|
"whereTheTimeIs": "Onde está a hora",
|
||||||
"refreshing": "Recargando",
|
"refreshing": "Recargando",
|
||||||
"info": {
|
"info": {
|
||||||
"websocketConnecting": "Conectando o WebSocket",
|
"websocketConnecting": "Conectando o WebSocket",
|
||||||
"websocketConnected": "WebSocket conectado",
|
"websocketConnected": "WebSocket conectado",
|
||||||
"websocketDisconnected": "WebSocket desconectado",
|
"websocketDisconnected": "WebSocket desconectado",
|
||||||
"processing": "Procesando..."
|
"processing": "Procesando..."
|
||||||
},
|
},
|
||||||
"serverOverview": {
|
"serverOverview": {
|
||||||
"totalServers": "Servidores totais",
|
"totalServers": "Servidores totais",
|
||||||
"onlineServers": "Servidores en liña",
|
"onlineServers": "Servidores en liña",
|
||||||
"offlineServers": "Servidores desconectados",
|
"offlineServers": "Servidores desconectados",
|
||||||
"totalBandwidth": "Ancho de banda total",
|
"totalBandwidth": "Ancho de banda total",
|
||||||
"speed": "Velocidade",
|
"speed": "Velocidade",
|
||||||
"network": "Rede"
|
"network": "Rede"
|
||||||
},
|
},
|
||||||
"map": {
|
"map": {
|
||||||
"Distributions": "Os servidores están distribuidos en",
|
"Distributions": "Os servidores están distribuidos en",
|
||||||
"Regions": "Rexións",
|
"Regions": "Rexións",
|
||||||
"Servers": "servidores"
|
"Servers": "servidores"
|
||||||
},
|
},
|
||||||
"serverCard": {
|
"serverCard": {
|
||||||
"mem": "MEM",
|
"mem": "MEM",
|
||||||
"stg": "STG",
|
"stg": "STG",
|
||||||
"days": "Dias",
|
"days": "Dias",
|
||||||
"hours": "Horas",
|
"hours": "Horas",
|
||||||
"upload": "Subir",
|
"upload": "Subir",
|
||||||
"download": "Descargar",
|
"download": "Descargar",
|
||||||
"system": "Sistema",
|
"system": "Sistema",
|
||||||
"uptime": "Tempo activo",
|
"uptime": "Tempo activo",
|
||||||
"totalUpload": "Subir",
|
"totalUpload": "Subir",
|
||||||
"totalDownload": "Descargar"
|
"totalDownload": "Descargar"
|
||||||
},
|
},
|
||||||
"cycleTransfer": {
|
"cycleTransfer": {
|
||||||
"used": "empregado",
|
"used": "empregado",
|
||||||
"total": "total",
|
"total": "total",
|
||||||
"nextUpdate": "próxima actualización"
|
"nextUpdate": "próxima actualización"
|
||||||
},
|
},
|
||||||
"serviceTracker": {
|
"serviceTracker": {
|
||||||
"noService": "Non hai información do servizo",
|
"noService": "Non hai información do servizo",
|
||||||
"uptime": "Tempo de actividade",
|
"uptime": "Tempo de actividade",
|
||||||
"delay": "Atraso",
|
"delay": "Atraso",
|
||||||
"daysAgo": "dias atrás",
|
"daysAgo": "dias atrás",
|
||||||
"today": "Hoxe",
|
"today": "Hoxe",
|
||||||
"loading": "Cargando..."
|
"loading": "Cargando..."
|
||||||
},
|
},
|
||||||
"serverDetail": {
|
"serverDetail": {
|
||||||
"status": "Estado",
|
"status": "Estado",
|
||||||
"online": "Activo",
|
"online": "Activo",
|
||||||
"days": "Días",
|
"days": "Días",
|
||||||
"hours": "Horas",
|
"hours": "Horas",
|
||||||
"offline": "Desconectado",
|
"offline": "Desconectado",
|
||||||
"unknown": "Descoñecido",
|
"unknown": "Descoñecido",
|
||||||
"uptime": "Tempo activo",
|
"uptime": "Tempo activo",
|
||||||
"version": "Versión",
|
"version": "Versión",
|
||||||
"arch": "Arch",
|
"arch": "Arch",
|
||||||
"mem": "Mem",
|
"mem": "Mem",
|
||||||
"disk": "Disco",
|
"disk": "Disco",
|
||||||
"region": "Rexión",
|
"region": "Rexión",
|
||||||
"system": "Sistema",
|
"system": "Sistema",
|
||||||
"upload": "Subida",
|
"upload": "Subida",
|
||||||
"download": "Descarga",
|
"download": "Descarga",
|
||||||
"lastActive": "Última vez activo",
|
"lastActive": "Última vez activo",
|
||||||
"temperature": "Temperatura",
|
"temperature": "Temperatura",
|
||||||
"bootTime": "Tempo de reinicio"
|
"bootTime": "Tempo de reinicio"
|
||||||
},
|
},
|
||||||
"serverDetailChart": {
|
"serverDetailChart": {
|
||||||
"process": "Proceso",
|
"process": "Proceso",
|
||||||
"disk": "Disco",
|
"disk": "Disco",
|
||||||
"mem": "Mem",
|
"mem": "Mem",
|
||||||
"swap": "Swap",
|
"swap": "Swap",
|
||||||
"upload": "Subida",
|
"upload": "Subida",
|
||||||
"download": "Descarga"
|
"download": "Descarga"
|
||||||
},
|
},
|
||||||
"footer": {
|
"footer": {
|
||||||
"themeBy": "Tema por "
|
"themeBy": "Tema por "
|
||||||
},
|
},
|
||||||
"language": {
|
"language": {
|
||||||
"zh-CN": "简体中文 (Chinés simplificado)",
|
"zh-CN": "简体中文 (Chinés simplificado)",
|
||||||
"zh-TW": "繁體中文 (Chinés tradicional)",
|
"zh-TW": "繁體中文 (Chinés tradicional)",
|
||||||
"en-US": "English (Inglés)",
|
"en-US": "English (Inglés)",
|
||||||
"de-DE": "Deutsch (Alemán)",
|
"de-DE": "Deutsch (Alemán)",
|
||||||
"es-ES": "Español",
|
"es-ES": "Español",
|
||||||
"ru-RU": "Русский (Ruso)",
|
"ru-RU": "Русский (Ruso)",
|
||||||
"ta-IN": "தமிழ் (Tamil)"
|
"ta-IN": "தமிழ் (Tamil)"
|
||||||
},
|
},
|
||||||
"error": {
|
"error": {
|
||||||
"pageNotFound": "Páxina non atopada",
|
"pageNotFound": "Páxina non atopada",
|
||||||
"backToHome": "Voltar áo inicio"
|
"backToHome": "Voltar áo inicio"
|
||||||
},
|
},
|
||||||
"tabSwitch": {
|
"tabSwitch": {
|
||||||
"Detail": "Detalle",
|
"Detail": "Detalle",
|
||||||
"Network": "Rede"
|
"Network": "Rede"
|
||||||
},
|
},
|
||||||
"monitor": {
|
"monitor": {
|
||||||
"noData": "Non hai datos de monitor de servidor. Engada primeiro un monitor de servizo",
|
"noData": "Non hai datos de monitor de servidor. Engada primeiro un monitor de servizo",
|
||||||
"avgDelay": "Latencia",
|
"avgDelay": "Latencia",
|
||||||
"monitorCount": "Servizos",
|
"monitorCount": "Servizos",
|
||||||
"packetLoss": "Pérdida de datos",
|
"packetLoss": "Pérdida de datos",
|
||||||
"clearSelections": "Limpar"
|
"clearSelections": "Limpar"
|
||||||
},
|
},
|
||||||
"pwa": {
|
"pwa": {
|
||||||
"offlineReady": "Aplicación lista para traballar desconectada (offline)",
|
"offlineReady": "Aplicación lista para traballar desconectada (offline)",
|
||||||
"newContent": "Novo contido dispoñíble",
|
"newContent": "Novo contido dispoñíble",
|
||||||
"reload": "Actualizar"
|
"reload": "Actualizar"
|
||||||
},
|
},
|
||||||
"billingInfo": {
|
"billingInfo": {
|
||||||
"remaining": "Restante",
|
"remaining": "Restante",
|
||||||
"error": "erro",
|
"error": "erro",
|
||||||
"indefinite": "Indefinido",
|
"indefinite": "Indefinido",
|
||||||
"expired": "Expirado",
|
"expired": "Expirado",
|
||||||
"days": "días",
|
"days": "días",
|
||||||
"price": "Precio",
|
"price": "Precio",
|
||||||
"free": "Gratis",
|
"free": "Gratis",
|
||||||
"usage-baseed": "Baseado no uso"
|
"usage-baseed": "Baseado no uso"
|
||||||
},
|
},
|
||||||
"TypeCommand": "Escribe un comando ou procura...",
|
"TypeCommand": "Escribe un comando ou procura...",
|
||||||
"NoResults": "Non se atoparon resultados.",
|
"NoResults": "Non se atoparon resultados.",
|
||||||
"Servers": "Servidores",
|
"Servers": "Servidores",
|
||||||
"Shortcuts": "Atallos",
|
"Shortcuts": "Atallos",
|
||||||
"ToggleLightMode": "Cambiar ao modo claro",
|
"ToggleLightMode": "Cambiar ao modo claro",
|
||||||
"ToggleDarkMode": "Cambiar ao modo escuro",
|
"ToggleDarkMode": "Cambiar ao modo escuro",
|
||||||
"ToggleSystemMode": "Cambiar ao determinado polo sistema",
|
"ToggleSystemMode": "Cambiar ao determinado polo sistema",
|
||||||
"Home": "Páxina principal"
|
"Home": "Páxina principal"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,73 +1,73 @@
|
|||||||
{
|
{
|
||||||
"nezha": "Nezha Моніторинг",
|
"nezha": "Nezha Моніторинг",
|
||||||
"theme": {
|
"theme": {
|
||||||
"light": "Світло",
|
"light": "Світло",
|
||||||
"dark": "Темний",
|
"dark": "Темний",
|
||||||
"system": "Як в Системі"
|
"system": "Як в Системі"
|
||||||
},
|
},
|
||||||
"NoResults": "Немає результатів.",
|
"NoResults": "Немає результатів.",
|
||||||
"Servers": "Сервери",
|
"Servers": "Сервери",
|
||||||
"map": {
|
"map": {
|
||||||
"Servers": "сервери",
|
"Servers": "сервери",
|
||||||
"Distributions": "Сервери розподілені в",
|
"Distributions": "Сервери розподілені в",
|
||||||
"Regions": "Регіони"
|
"Regions": "Регіони"
|
||||||
},
|
},
|
||||||
"serverCard": {
|
"serverCard": {
|
||||||
"mem": "МЕМ",
|
"mem": "МЕМ",
|
||||||
"stg": "STG",
|
"stg": "STG",
|
||||||
"days": "Днів",
|
"days": "Днів",
|
||||||
"hours": "Годин",
|
"hours": "Годин",
|
||||||
"upload": "Завантаження",
|
"upload": "Завантаження",
|
||||||
"download": "Завантажити",
|
"download": "Завантажити",
|
||||||
"system": "Система",
|
"system": "Система",
|
||||||
"uptime": "Аптайм",
|
"uptime": "Аптайм",
|
||||||
"totalUpload": "Завантажено",
|
"totalUpload": "Завантажено",
|
||||||
"totalDownload": "Скачано"
|
"totalDownload": "Скачано"
|
||||||
},
|
},
|
||||||
"serverDetail": {
|
"serverDetail": {
|
||||||
"mem": "Мем",
|
"mem": "Мем",
|
||||||
"status": "Статус",
|
"status": "Статус",
|
||||||
"online": "Online",
|
"online": "Online",
|
||||||
"days": "Днів",
|
"days": "Днів",
|
||||||
"hours": "Годин",
|
"hours": "Годин",
|
||||||
"offline": "Offline",
|
"offline": "Offline",
|
||||||
"unknown": "Невідомо"
|
"unknown": "Невідомо"
|
||||||
},
|
},
|
||||||
"serverDetailChart": {
|
"serverDetailChart": {
|
||||||
"mem": "Мем"
|
"mem": "Мем"
|
||||||
},
|
},
|
||||||
"overview": "Огляд",
|
"overview": "Огляд",
|
||||||
"dashboard": "Інформаційна панель",
|
"dashboard": "Інформаційна панель",
|
||||||
"online": "Онлайн",
|
"online": "Онлайн",
|
||||||
"offline": "Оффлайн",
|
"offline": "Оффлайн",
|
||||||
"whereTheTimeIs": "Де час",
|
"whereTheTimeIs": "Де час",
|
||||||
"refreshing": "Оновлення",
|
"refreshing": "Оновлення",
|
||||||
"info": {
|
"info": {
|
||||||
"websocketConnecting": "WebSocket з'єднання",
|
"websocketConnecting": "WebSocket з'єднання",
|
||||||
"websocketConnected": "WebSocket з'єднано",
|
"websocketConnected": "WebSocket з'єднано",
|
||||||
"websocketDisconnected": "WebSocket відключено",
|
"websocketDisconnected": "WebSocket відключено",
|
||||||
"processing": "Обробка..."
|
"processing": "Обробка..."
|
||||||
},
|
},
|
||||||
"serverOverview": {
|
"serverOverview": {
|
||||||
"totalServers": "Всього Серверів",
|
"totalServers": "Всього Серверів",
|
||||||
"onlineServers": "Сервери в мережі",
|
"onlineServers": "Сервери в мережі",
|
||||||
"offlineServers": "Сервери не в мережі",
|
"offlineServers": "Сервери не в мережі",
|
||||||
"totalBandwidth": "Загальна пропускна здатність",
|
"totalBandwidth": "Загальна пропускна здатність",
|
||||||
"speed": "Швидкість",
|
"speed": "Швидкість",
|
||||||
"network": "Мережа"
|
"network": "Мережа"
|
||||||
},
|
},
|
||||||
"cycleTransfer": {
|
"cycleTransfer": {
|
||||||
"used": "використано",
|
"used": "використано",
|
||||||
"total": "всього",
|
"total": "всього",
|
||||||
"nextUpdate": "наступне оновлення"
|
"nextUpdate": "наступне оновлення"
|
||||||
},
|
},
|
||||||
"serviceTracker": {
|
"serviceTracker": {
|
||||||
"noService": "Немає даних про сервіс",
|
"noService": "Немає даних про сервіс",
|
||||||
"uptime": "Аптайм",
|
"uptime": "Аптайм",
|
||||||
"delay": "Затримка",
|
"delay": "Затримка",
|
||||||
"daysAgo": "Днів тому",
|
"daysAgo": "Днів тому",
|
||||||
"today": "Сьогодні",
|
"today": "Сьогодні",
|
||||||
"loading": "Завантаження..."
|
"loading": "Завантаження..."
|
||||||
},
|
},
|
||||||
"login": "Логін"
|
"login": "Логін"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -93,6 +93,7 @@ export type ServerMonitorChart = {
|
|||||||
export interface NezhaMonitor {
|
export interface NezhaMonitor {
|
||||||
monitor_id: number;
|
monitor_id: number;
|
||||||
monitor_name: string;
|
monitor_name: string;
|
||||||
|
display_index?: number;
|
||||||
server_id: number;
|
server_id: number;
|
||||||
server_name: string;
|
server_name: string;
|
||||||
created_at: number[];
|
created_at: number[];
|
||||||
|
|||||||
Reference in New Issue
Block a user