mirror of
https://github.com/henrygd/beszel.git
synced 2025-12-17 02:36:17 +01:00
update language files
This commit is contained in:
@@ -55,7 +55,7 @@ export default function ContainersTable({ systemId }: { systemId?: string }) {
|
|||||||
filter: systemId ? pb.filter("system={:system}", { system: systemId }) : undefined,
|
filter: systemId ? pb.filter("system={:system}", { system: systemId }) : undefined,
|
||||||
})
|
})
|
||||||
.then(({ items }) => items.length && setData((curItems) => {
|
.then(({ items }) => items.length && setData((curItems) => {
|
||||||
const lastUpdated = items[0].updated ?? 0
|
const lastUpdated = Math.max(items[0].updated, items.at(-1)?.updated ?? 0)
|
||||||
const containerIds = new Set()
|
const containerIds = new Set()
|
||||||
const newItems = []
|
const newItems = []
|
||||||
for (const item of items) {
|
for (const item of items) {
|
||||||
@@ -94,7 +94,7 @@ export default function ContainersTable({ systemId }: { systemId?: string }) {
|
|||||||
|
|
||||||
const table = useReactTable({
|
const table = useReactTable({
|
||||||
data,
|
data,
|
||||||
columns: containerChartCols.filter(col => systemId ? col.id !== "system" : true),
|
columns: containerChartCols.filter((col) => (systemId ? col.id !== "system" : true)),
|
||||||
getCoreRowModel: getCoreRowModel(),
|
getCoreRowModel: getCoreRowModel(),
|
||||||
getSortedRowModel: getSortedRowModel(),
|
getSortedRowModel: getSortedRowModel(),
|
||||||
getFilteredRowModel: getFilteredRowModel(),
|
getFilteredRowModel: getFilteredRowModel(),
|
||||||
@@ -162,8 +162,15 @@ export default function ContainersTable({ systemId }: { systemId?: string }) {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
const AllContainersTable = memo(
|
const AllContainersTable = memo(function AllContainersTable({
|
||||||
function AllContainersTable({ table, rows, colLength }: { table: TableType<ContainerRecord>; rows: Row<ContainerRecord>[]; colLength: number }) {
|
table,
|
||||||
|
rows,
|
||||||
|
colLength,
|
||||||
|
}: {
|
||||||
|
table: TableType<ContainerRecord>
|
||||||
|
rows: Row<ContainerRecord>[]
|
||||||
|
colLength: number
|
||||||
|
}) {
|
||||||
// The virtualizer will need a reference to the scrollable container element
|
// The virtualizer will need a reference to the scrollable container element
|
||||||
const scrollRef = useRef<HTMLDivElement>(null)
|
const scrollRef = useRef<HTMLDivElement>(null)
|
||||||
const activeContainer = useRef<ContainerRecord | null>(null)
|
const activeContainer = useRef<ContainerRecord | null>(null)
|
||||||
@@ -201,14 +208,7 @@ const AllContainersTable = memo(
|
|||||||
{rows.length ? (
|
{rows.length ? (
|
||||||
virtualRows.map((virtualRow) => {
|
virtualRows.map((virtualRow) => {
|
||||||
const row = rows[virtualRow.index]
|
const row = rows[virtualRow.index]
|
||||||
return (
|
return <ContainerTableRow key={row.id} row={row} virtualRow={virtualRow} openSheet={openSheet} />
|
||||||
<ContainerTableRow
|
|
||||||
key={row.id}
|
|
||||||
row={row}
|
|
||||||
virtualRow={virtualRow}
|
|
||||||
openSheet={openSheet}
|
|
||||||
/>
|
|
||||||
)
|
|
||||||
})
|
})
|
||||||
) : (
|
) : (
|
||||||
<TableRow>
|
<TableRow>
|
||||||
@@ -223,16 +223,17 @@ const AllContainersTable = memo(
|
|||||||
<ContainerSheet sheetOpen={sheetOpen} setSheetOpen={setSheetOpen} activeContainer={activeContainer} />
|
<ContainerSheet sheetOpen={sheetOpen} setSheetOpen={setSheetOpen} activeContainer={activeContainer} />
|
||||||
</div>
|
</div>
|
||||||
)
|
)
|
||||||
}
|
})
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
async function getLogsHtml(container: ContainerRecord): Promise<string> {
|
async function getLogsHtml(container: ContainerRecord): Promise<string> {
|
||||||
try {
|
try {
|
||||||
const [{ highlighter }, logsHtml] = await Promise.all([import('@/lib/shiki'), pb.send<{ logs: string }>("/api/beszel/containers/logs", {
|
const [{ highlighter }, logsHtml] = await Promise.all([
|
||||||
|
import("@/lib/shiki"),
|
||||||
|
pb.send<{ logs: string }>("/api/beszel/containers/logs", {
|
||||||
system: container.system,
|
system: container.system,
|
||||||
container: container.id,
|
container: container.id,
|
||||||
})])
|
}),
|
||||||
|
])
|
||||||
return logsHtml.logs ? highlighter.codeToHtml(logsHtml.logs, { lang: "log", theme: syntaxTheme }) : t`No results.`
|
return logsHtml.logs ? highlighter.codeToHtml(logsHtml.logs, { lang: "log", theme: syntaxTheme }) : t`No results.`
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error(error)
|
console.error(error)
|
||||||
@@ -242,10 +243,13 @@ async function getLogsHtml(container: ContainerRecord): Promise<string> {
|
|||||||
|
|
||||||
async function getInfoHtml(container: ContainerRecord): Promise<string> {
|
async function getInfoHtml(container: ContainerRecord): Promise<string> {
|
||||||
try {
|
try {
|
||||||
let [{ highlighter }, { info }] = await Promise.all([import('@/lib/shiki'), pb.send<{ info: string }>("/api/beszel/containers/info", {
|
let [{ highlighter }, { info }] = await Promise.all([
|
||||||
|
import("@/lib/shiki"),
|
||||||
|
pb.send<{ info: string }>("/api/beszel/containers/info", {
|
||||||
system: container.system,
|
system: container.system,
|
||||||
container: container.id,
|
container: container.id,
|
||||||
})])
|
}),
|
||||||
|
])
|
||||||
try {
|
try {
|
||||||
info = JSON.stringify(JSON.parse(info), null, 2)
|
info = JSON.stringify(JSON.parse(info), null, 2)
|
||||||
} catch (_) { }
|
} catch (_) { }
|
||||||
@@ -256,7 +260,15 @@ async function getInfoHtml(container: ContainerRecord): Promise<string> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function ContainerSheet({ sheetOpen, setSheetOpen, activeContainer }: { sheetOpen: boolean, setSheetOpen: (open: boolean) => void, activeContainer: RefObject<ContainerRecord | null> }) {
|
function ContainerSheet({
|
||||||
|
sheetOpen,
|
||||||
|
setSheetOpen,
|
||||||
|
activeContainer,
|
||||||
|
}: {
|
||||||
|
sheetOpen: boolean
|
||||||
|
setSheetOpen: (open: boolean) => void
|
||||||
|
activeContainer: RefObject<ContainerRecord | null>
|
||||||
|
}) {
|
||||||
const container = activeContainer.current
|
const container = activeContainer.current
|
||||||
if (!container) return null
|
if (!container) return null
|
||||||
|
|
||||||
@@ -295,9 +307,9 @@ function ContainerSheet({ sheetOpen, setSheetOpen, activeContainer }: { sheetOpe
|
|||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
setLogsDisplay("")
|
setLogsDisplay("")
|
||||||
setInfoDisplay("");
|
setInfoDisplay("")
|
||||||
if (!container) return
|
if (!container) return
|
||||||
(async () => {
|
; (async () => {
|
||||||
const [logsHtml, infoHtml] = await Promise.all([getLogsHtml(container), getInfoHtml(container)])
|
const [logsHtml, infoHtml] = await Promise.all([getLogsHtml(container), getInfoHtml(container)])
|
||||||
setLogsDisplay(logsHtml)
|
setLogsDisplay(logsHtml)
|
||||||
setInfoDisplay(infoHtml)
|
setInfoDisplay(infoHtml)
|
||||||
@@ -326,7 +338,9 @@ function ContainerSheet({ sheetOpen, setSheetOpen, activeContainer }: { sheetOpe
|
|||||||
<SheetHeader>
|
<SheetHeader>
|
||||||
<SheetTitle>{container.name}</SheetTitle>
|
<SheetTitle>{container.name}</SheetTitle>
|
||||||
<SheetDescription className="flex flex-wrap items-center gap-x-2 gap-y-1">
|
<SheetDescription className="flex flex-wrap items-center gap-x-2 gap-y-1">
|
||||||
<Link className="hover:underline" href={getPagePath($router, "system", { id: container.system })}>{$allSystemsById.get()[container.system]?.name ?? ""}</Link>
|
<Link className="hover:underline" href={getPagePath($router, "system", { id: container.system })}>
|
||||||
|
{$allSystemsById.get()[container.system]?.name ?? ""}
|
||||||
|
</Link>
|
||||||
<Separator orientation="vertical" className="h-2.5 bg-muted-foreground opacity-70" />
|
<Separator orientation="vertical" className="h-2.5 bg-muted-foreground opacity-70" />
|
||||||
{container.status}
|
{container.status}
|
||||||
<Separator orientation="vertical" className="h-2.5 bg-muted-foreground opacity-70" />
|
<Separator orientation="vertical" className="h-2.5 bg-muted-foreground opacity-70" />
|
||||||
@@ -348,19 +362,20 @@ function ContainerSheet({ sheetOpen, setSheetOpen, activeContainer }: { sheetOpe
|
|||||||
disabled={isRefreshingLogs}
|
disabled={isRefreshingLogs}
|
||||||
>
|
>
|
||||||
<RefreshCwIcon
|
<RefreshCwIcon
|
||||||
className={`size-4 transition-transform duration-300 ${isRefreshingLogs ? 'animate-spin' : ''}`}
|
className={`size-4 transition-transform duration-300 ${isRefreshingLogs ? "animate-spin" : ""}`}
|
||||||
/>
|
/>
|
||||||
</Button>
|
</Button>
|
||||||
<Button
|
<Button variant="ghost" size="sm" onClick={() => setLogsFullscreenOpen(true)} className="h-8 w-8 p-0">
|
||||||
variant="ghost"
|
|
||||||
size="sm"
|
|
||||||
onClick={() => setLogsFullscreenOpen(true)}
|
|
||||||
className="h-8 w-8 p-0"
|
|
||||||
>
|
|
||||||
<MaximizeIcon className="size-4" />
|
<MaximizeIcon className="size-4" />
|
||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
<div ref={logsContainerRef} className={cn("max-h-[calc(50dvh-10rem)] w-full overflow-auto p-3 rounded-md bg-gh-dark text-white text-sm", !logsDisplay && ["animate-pulse", "h-full"])}>
|
<div
|
||||||
|
ref={logsContainerRef}
|
||||||
|
className={cn(
|
||||||
|
"max-h-[calc(50dvh-10rem)] w-full overflow-auto p-3 rounded-md bg-gh-dark text-white text-sm",
|
||||||
|
!logsDisplay && ["animate-pulse", "h-full"]
|
||||||
|
)}
|
||||||
|
>
|
||||||
<div dangerouslySetInnerHTML={{ __html: logsDisplay }} />
|
<div dangerouslySetInnerHTML={{ __html: logsDisplay }} />
|
||||||
</div>
|
</div>
|
||||||
<div className="flex items-center w-full">
|
<div className="flex items-center w-full">
|
||||||
@@ -374,15 +389,18 @@ function ContainerSheet({ sheetOpen, setSheetOpen, activeContainer }: { sheetOpe
|
|||||||
<MaximizeIcon className="size-4" />
|
<MaximizeIcon className="size-4" />
|
||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
<div className={cn("grow h-[calc(50dvh-4rem)] w-full overflow-auto p-3 rounded-md bg-gh-dark text-white text-sm", !infoDisplay && "animate-pulse")}>
|
<div
|
||||||
|
className={cn(
|
||||||
|
"grow h-[calc(50dvh-4rem)] w-full overflow-auto p-3 rounded-md bg-gh-dark text-white text-sm",
|
||||||
|
!infoDisplay && "animate-pulse"
|
||||||
|
)}
|
||||||
|
>
|
||||||
<div dangerouslySetInnerHTML={{ __html: infoDisplay }} />
|
<div dangerouslySetInnerHTML={{ __html: infoDisplay }} />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</SheetContent>
|
</SheetContent>
|
||||||
</Sheet>
|
</Sheet>
|
||||||
</>
|
</>
|
||||||
|
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -404,8 +422,7 @@ function ContainersTableHead({ table }: { table: TableType<ContainerRecord> }) {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
const ContainerTableRow = memo(
|
const ContainerTableRow = memo(function ContainerTableRow({
|
||||||
function ContainerTableRow({
|
|
||||||
row,
|
row,
|
||||||
virtualRow,
|
virtualRow,
|
||||||
openSheet,
|
openSheet,
|
||||||
@@ -433,10 +450,23 @@ const ContainerTableRow = memo(
|
|||||||
))}
|
))}
|
||||||
</TableRow>
|
</TableRow>
|
||||||
)
|
)
|
||||||
}
|
})
|
||||||
)
|
|
||||||
|
|
||||||
function LogsFullscreenDialog({ open, onOpenChange, logsDisplay, containerName, onRefresh, isRefreshing }: { open: boolean, onOpenChange: (open: boolean) => void, logsDisplay: string, containerName: string, onRefresh: () => void | Promise<void>, isRefreshing: boolean }) {
|
function LogsFullscreenDialog({
|
||||||
|
open,
|
||||||
|
onOpenChange,
|
||||||
|
logsDisplay,
|
||||||
|
containerName,
|
||||||
|
onRefresh,
|
||||||
|
isRefreshing,
|
||||||
|
}: {
|
||||||
|
open: boolean
|
||||||
|
onOpenChange: (open: boolean) => void
|
||||||
|
logsDisplay: string
|
||||||
|
containerName: string
|
||||||
|
onRefresh: () => void | Promise<void>
|
||||||
|
isRefreshing: boolean
|
||||||
|
}) {
|
||||||
const outerContainerRef = useRef<HTMLDivElement>(null)
|
const outerContainerRef = useRef<HTMLDivElement>(null)
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
@@ -469,16 +499,24 @@ function LogsFullscreenDialog({ open, onOpenChange, logsDisplay, containerName,
|
|||||||
title={t`Refresh`}
|
title={t`Refresh`}
|
||||||
aria-label={t`Refresh`}
|
aria-label={t`Refresh`}
|
||||||
>
|
>
|
||||||
<RefreshCwIcon
|
<RefreshCwIcon className={`size-4 transition-transform duration-300 ${isRefreshing ? "animate-spin" : ""}`} />
|
||||||
className={`size-4 transition-transform duration-300 ${isRefreshing ? 'animate-spin' : ''}`}
|
|
||||||
/>
|
|
||||||
</button>
|
</button>
|
||||||
</DialogContent>
|
</DialogContent>
|
||||||
</Dialog>
|
</Dialog>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
function InfoFullscreenDialog({ open, onOpenChange, infoDisplay, containerName }: { open: boolean, onOpenChange: (open: boolean) => void, infoDisplay: string, containerName: string }) {
|
function InfoFullscreenDialog({
|
||||||
|
open,
|
||||||
|
onOpenChange,
|
||||||
|
infoDisplay,
|
||||||
|
containerName,
|
||||||
|
}: {
|
||||||
|
open: boolean
|
||||||
|
onOpenChange: (open: boolean) => void
|
||||||
|
infoDisplay: string
|
||||||
|
containerName: string
|
||||||
|
}) {
|
||||||
return (
|
return (
|
||||||
<Dialog open={open} onOpenChange={onOpenChange}>
|
<Dialog open={open} onOpenChange={onOpenChange}>
|
||||||
<DialogContent className="w-[calc(100vw-20px)] h-[calc(100dvh-20px)] max-w-none p-0 bg-gh-dark border-0 text-white">
|
<DialogContent className="w-[calc(100vw-20px)] h-[calc(100dvh-20px)] max-w-none p-0 bg-gh-dark border-0 text-white">
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "تسمح الرموز المميزة للوكلاء بالاتصال و
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "تُستخدم الرموز المميزة والبصمات للمصادقة على اتصالات WebSocket إلى المحور."
|
msgstr "تُستخدم الرموز المميزة والبصمات للمصادقة على اتصالات WebSocket إلى المحور."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "الإجمالي"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "إجمالي البيانات المستلمة لكل واجهة"
|
msgstr "إجمالي البيانات المستلمة لكل واجهة"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "Токените позволяват на агентите да се с
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "Токените и пръстовите отпечатъци се използват за удостоверяване на WebSocket връзките към концентратора."
|
msgstr "Токените и пръстовите отпечатъци се използват за удостоверяване на WebSocket връзките към концентратора."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Общо"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Общо получени данни за всеки интерфейс"
|
msgstr "Общо получени данни за всеки интерфейс"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "Tokeny umožňují agentům připojení a registraci. Otisky jsou stabil
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "Tokeny a otisky slouží k ověření připojení WebSocket k uzlu."
|
msgstr "Tokeny a otisky slouží k ověření připojení WebSocket k uzlu."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Celkem"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Celkový přijatý objem dat pro každé rozhraní"
|
msgstr "Celkový přijatý objem dat pro každé rozhraní"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "Nøgler tillader agenter at oprette forbindelse og registrere. Fingeraft
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "Nøgler og fingeraftryk bruges til at godkende WebSocket-forbindelser til hubben."
|
msgstr "Nøgler og fingeraftryk bruges til at godkende WebSocket-forbindelser til hubben."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Samlet"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Samlet modtaget data for hver interface"
|
msgstr "Samlet modtaget data for hver interface"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "Tokens ermöglichen es Agents, sich zu verbinden und zu registrieren. Fi
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "Tokens und Fingerabdrücke werden verwendet, um WebSocket-Verbindungen zum Hub zu authentifizieren."
|
msgstr "Tokens und Fingerabdrücke werden verwendet, um WebSocket-Verbindungen zum Hub zu authentifizieren."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Gesamt"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Empfangene Gesamtdatenmenge je Schnittstelle "
|
msgstr "Empfangene Gesamtdatenmenge je Schnittstelle "
|
||||||
|
|||||||
@@ -1194,6 +1194,11 @@ msgstr "Tokens allow agents to connect and register. Fingerprints are stable ide
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgstr "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Total"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Total data received for each interface"
|
msgstr "Total data received for each interface"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "Los tokens permiten que los agentes se conecten y registren. Las huellas
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "Los tokens y las huellas digitales se utilizan para autenticar las conexiones WebSocket al hub."
|
msgstr "Los tokens y las huellas digitales se utilizan para autenticar las conexiones WebSocket al hub."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Total"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Datos totales recibidos por cada interfaz"
|
msgstr "Datos totales recibidos por cada interfaz"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "توکنها به عاملها اجازه اتصال و ثبت
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "توکنها و اثرات انگشت برای احراز هویت اتصالات WebSocket به هاب استفاده میشوند."
|
msgstr "توکنها و اثرات انگشت برای احراز هویت اتصالات WebSocket به هاب استفاده میشوند."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "کل"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "دادههای کل دریافت شده برای هر رابط"
|
msgstr "دادههای کل دریافت شده برای هر رابط"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "Les tokens permettent aux agents de se connecter et de s'enregistrer. Le
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "Les tokens et les empreintes sont utilisés pour authentifier les connexions WebSocket vers le hub."
|
msgstr "Les tokens et les empreintes sont utilisés pour authentifier les connexions WebSocket vers le hub."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Total"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Données totales reçues pour chaque interface"
|
msgstr "Données totales reçues pour chaque interface"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "Tokens מאפשרים לסוכנים להתחבר ולהירשם. טבי
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "Tokens וטביעות אצבע משמשים לאימות חיבורי WebSocket ל-hub."
|
msgstr "Tokens וטביעות אצבע משמשים לאימות חיבורי WebSocket ל-hub."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "כולל"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "סך נתונים שהתקבלו עבור כל ממשק"
|
msgstr "סך נתונים שהתקבלו עבור כל ממשק"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "Tokeni dopuštaju agentima prijavu i registraciju. Otisci su stabilni id
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "Tokeni se uz otiske koriste za autentifikaciju WebSocket veza prema središnjoj kontroli."
|
msgstr "Tokeni se uz otiske koriste za autentifikaciju WebSocket veza prema središnjoj kontroli."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Ukupno"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Ukupni podaci primljeni za svako sučelje"
|
msgstr "Ukupni podaci primljeni za svako sučelje"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr ""
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Összesen"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Összes fogadott adat minden interfészenként"
|
msgstr "Összes fogadott adat minden interfészenként"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "I token consentono agli agenti di connettersi e registrarsi. Le impronte
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "I token e le impronte digitali vengono utilizzati per autenticare le connessioni WebSocket all'hub."
|
msgstr "I token e le impronte digitali vengono utilizzati per autenticare le connessioni WebSocket all'hub."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Totale"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Dati totali ricevuti per ogni interfaccia"
|
msgstr "Dati totali ricevuti per ogni interfaccia"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "トークンはエージェントの接続と登録を可能にします
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "トークンとフィンガープリントは、ハブへのWebSocket接続の認証に使用されます。"
|
msgstr "トークンとフィンガープリントは、ハブへのWebSocket接続の認証に使用されます。"
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "総数"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "各インターフェースの総受信データ量"
|
msgstr "各インターフェースの総受信データ量"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "토큰은 에이전트가 연결하고 등록할 수 있도록 합니다
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "토큰과 지문은 허브에 대한 WebSocket 연결을 인증하는 데 사용됩니다."
|
msgstr "토큰과 지문은 허브에 대한 WebSocket 연결을 인증하는 데 사용됩니다."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "총"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "각 인터페이스별 총합 다운로드 데이터량"
|
msgstr "각 인터페이스별 총합 다운로드 데이터량"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "Tokens staan agenten toe om verbinding te maken met en te registreren. V
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "Tokens en vingerafdrukken worden gebruikt om WebSocket verbindingen te verifiëren naar de hub."
|
msgstr "Tokens en vingerafdrukken worden gebruikt om WebSocket verbindingen te verifiëren naar de hub."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Totaal"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Totaal ontvangen gegevens per interface"
|
msgstr "Totaal ontvangen gegevens per interface"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "Tokens lar agenter koble til og registrere seg selv. Fingeravtrykk er st
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "Tokens og fingeravtrykk blir brukt for å autentisere WebSocket-tilkoblinger til huben."
|
msgstr "Tokens og fingeravtrykk blir brukt for å autentisere WebSocket-tilkoblinger til huben."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Total"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Totalt mottatt data for hvert grensesnitt"
|
msgstr "Totalt mottatt data for hvert grensesnitt"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "Tokeny umożliwiają agentom łączenie się i rejestrację. Odciski pal
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "Tokeny i odciski palców (fingerprinty) służą do uwierzytelniania połączeń WebSocket z hubem."
|
msgstr "Tokeny i odciski palców (fingerprinty) służą do uwierzytelniania połączeń WebSocket z hubem."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Łącznie"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Całkowita ilość danych odebranych dla każdego interfejsu"
|
msgstr "Całkowita ilość danych odebranych dla każdego interfejsu"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "Os tokens permitem que os agentes se conectem e registrem. As impressõe
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "Tokens e impressões digitais são usados para autenticar conexões WebSocket ao hub."
|
msgstr "Tokens e impressões digitais são usados para autenticar conexões WebSocket ao hub."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Total"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Dados totais recebidos para cada interface"
|
msgstr "Dados totais recebidos para cada interface"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "Токены позволяют агентам подключаться
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "Токены и отпечатки используются для аутентификации соединений WebSocket с хабом."
|
msgstr "Токены и отпечатки используются для аутентификации соединений WebSocket с хабом."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Итого"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Общий объем полученных данных для каждого интерфейса"
|
msgstr "Общий объем полученных данных для каждого интерфейса"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "Žetoni omogočajo agentom povezavo in registracijo. Prstni odtisi so st
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "Žetoni in prstni odtisi se uporabljajo za preverjanje pristnosti WebSocket povezav do vozlišča."
|
msgstr "Žetoni in prstni odtisi se uporabljajo za preverjanje pristnosti WebSocket povezav do vozlišča."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Skupaj"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Skupni prejeti podatki za vsak vmesnik"
|
msgstr "Skupni prejeti podatki za vsak vmesnik"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "Tokens tillåter agenter att ansluta och registrera. Fingeravtryck är s
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "Tokens och fingeravtryck används för att autentisera WebSocket-anslutningar till hubben."
|
msgstr "Tokens och fingeravtryck används för att autentisera WebSocket-anslutningar till hubben."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Total"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Totalt mottagen data för varje gränssnitt"
|
msgstr "Totalt mottagen data för varje gränssnitt"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "Token'lar agentların bağlanıp kaydolmasına izin verir. Parmak izleri
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "Token'lar ve parmak izleri hub'a WebSocket bağlantılarını doğrulamak için kullanılır."
|
msgstr "Token'lar ve parmak izleri hub'a WebSocket bağlantılarını doğrulamak için kullanılır."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Toplam"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Her arayüz için alınan toplam veri"
|
msgstr "Her arayüz için alınan toplam veri"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "Токени дозволяють агентам підключатис
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "Токени та відбитки використовуються для автентифікації WebSocket з'єднань до хабу."
|
msgstr "Токени та відбитки використовуються для автентифікації WebSocket з'єднань до хабу."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Разом"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Загальний обсяг отриманих даних для кожного інтерфейсу"
|
msgstr "Загальний обсяг отриманих даних для кожного інтерфейсу"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "Token cho phép các tác nhân kết nối và đăng ký. Vân tay là
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "Token và vân tay được sử dụng để xác thực các kết nối WebSocket đến trung tâm."
|
msgstr "Token và vân tay được sử dụng để xác thực các kết nối WebSocket đến trung tâm."
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "Tổng"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "Tổng dữ liệu nhận được cho mỗi giao diện"
|
msgstr "Tổng dữ liệu nhận được cho mỗi giao diện"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "令牌允许客户端连接和注册。指纹是每个系统唯一的稳
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "令牌与指纹用于验证到中心的 WebSocket 连接。"
|
msgstr "令牌与指纹用于验证到中心的 WebSocket 连接。"
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "总计"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "每个接口的总接收数据量"
|
msgstr "每个接口的总接收数据量"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "令牌允許代理程式連接和註冊。指紋是每個系統唯一的
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "令牌和指紋用於驗證到中心的WebSocket連接。"
|
msgstr "令牌和指紋用於驗證到中心的WebSocket連接。"
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "總計"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "每個介面的總接收資料量"
|
msgstr "每個介面的總接收資料量"
|
||||||
|
|||||||
@@ -1199,6 +1199,11 @@ msgstr "令牌允許代理程式連線和註冊。指紋是每個系統的唯一
|
|||||||
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
msgid "Tokens and fingerprints are used to authenticate WebSocket connections to the hub."
|
||||||
msgstr "令牌和指紋被用於驗證到 Hub 的 WebSocket 連線。"
|
msgstr "令牌和指紋被用於驗證到 Hub 的 WebSocket 連線。"
|
||||||
|
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
#: src/components/ui/chart.tsx
|
||||||
|
msgid "Total"
|
||||||
|
msgstr "總計"
|
||||||
|
|
||||||
#: src/components/routes/system/network-sheet.tsx
|
#: src/components/routes/system/network-sheet.tsx
|
||||||
msgid "Total data received for each interface"
|
msgid "Total data received for each interface"
|
||||||
msgstr "每個介面的總接收資料量"
|
msgstr "每個介面的總接收資料量"
|
||||||
|
|||||||
Reference in New Issue
Block a user