Compare commits

...

24 Commits

Author SHA1 Message Date
stephenc01
e206c86de8 Documentation: fix typo in coin-market-cap widget docs (#2711) 2024-01-20 15:52:46 -08:00
shamoon
71b919bbe2 Documentation: Add username / pw to romm widget 2024-01-20 10:02:45 -08:00
github-actions[bot]
8684292d02 New Crowdin translations by GitHub Action (#2534)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-01-20 00:16:55 -08:00
shamoon
cca747c0fe Fix: Calendar widget iCal integration catch RRule failures (#2706) 2024-01-20 00:15:45 -08:00
Karl0ss
f6ca3f57f7 Feature: Romm Widget (#2663)
---------

Co-authored-by: Karl Hudgell <karl.hudgell@bjss.com>
Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
2024-01-19 23:36:44 -08:00
Gianfranco
0cdc354ead Documentation: add info for obtaining immich API keys (#2703) 2024-01-19 20:07:55 -08:00
Luke Hagar
a24b5d2fd1 Fix: remove date time load delay (#2675) 2024-01-18 14:58:42 -08:00
Mitchell
7f621ed518 Feature: Netdata service widget (#2672) 2024-01-17 16:01:20 -08:00
Denis Papec
72efd9a08d Fix: calendar timezone performance improvements (#2668) 2024-01-17 15:00:51 -08:00
shamoon
93dc6db4ef Remove mkdocs-material insiders 2024-01-17 09:35:05 -08:00
0phoff
7837864841 Enhancement: locale option for date & relativeDate format (#2658) 2024-01-17 09:23:11 -08:00
dependabot[bot]
641eb25047 Chore(deps): Bump actions/cache from 3 to 4 (#2662)
Bumps [actions/cache](https://github.com/actions/cache) from 3 to 4.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-17 09:09:28 -08:00
shamoon
1f905bc241 Fix: constrain usage bar to 0-100 (#2650) 2024-01-16 16:07:20 -08:00
shamoon
d61d0eb88f Fix configured service weight = 0 (#2628) 2024-01-15 06:30:46 -08:00
Denis Papec
1f2081af5d Add option to specify a timezone for events (#2623)
* Add option to specify a timezone for events

* Amend message, update docs
2024-01-14 18:01:10 -08:00
Denis Papec
674d7f2e01 Fix for events repeating on mothly basis and old events that are shown as occuring today (#2624) 2024-01-14 13:49:28 -08:00
shamoon
9984e7894f Fix lint error for service anchors 2024-01-10 14:26:40 -08:00
shamoon
66a1368aa3 Fix: sort ical events in monthly view (#2604) 2024-01-10 14:24:38 -08:00
shamoon
8f121d675c Fix custom API docker labels example 2024-01-10 11:16:48 -08:00
Metin Yazici
1103df2b64 Feature: support multiple checks for healthchecks widget (#2580)
* Change healthchecks online/offline with the original up/down

* Add group statistics to healthcheck widget

* Update healthchecks docs

---------

Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
2024-01-07 09:17:07 -08:00
shamoon
50c989e36a Fix: unique element key generation in quicklaunch and services (#2586) 2024-01-06 09:22:25 -08:00
shamoon
1c47d9d70e Fix: pass user/pass as strings with OMV proxy (#2555) 2023-12-31 20:18:17 -08:00
shamoon
aa7cfa58ff Better handle malformed docker labels (#2552) 2023-12-31 10:48:10 -08:00
Brandon McFarlin
ccad62b5c2 Fix: Peanut widget v2 api compatibility (#2526) 2023-12-27 07:29:27 -08:00
77 changed files with 1047 additions and 420 deletions

View File

@@ -46,7 +46,7 @@ jobs:
with: with:
python-version: 3.x python-version: 3.x
- run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV - run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV
- uses: actions/cache@v3 - uses: actions/cache@v4
with: with:
key: mkdocs-material-${{ env.cache_id }} key: mkdocs-material-${{ env.cache_id }}
path: .cache path: .cache
@@ -71,7 +71,7 @@ jobs:
with: with:
python-version: 3.x python-version: 3.x
- run: echo "cache_id=${{github.sha}}" >> $GITHUB_ENV - run: echo "cache_id=${{github.sha}}" >> $GITHUB_ENV
- uses: actions/cache@v3 - uses: actions/cache@v4
with: with:
key: mkdocs-material-${{ env.cache_id }} key: mkdocs-material-${{ env.cache_id }}
path: .cache path: .cache

View File

@@ -164,10 +164,10 @@ labels:
- homepage.description=Media server - homepage.description=Media server
- homepage.widget.type=customapi - homepage.widget.type=customapi
- homepage.widget.url=http://argus.service/api/v1/service/summary/emby - homepage.widget.url=http://argus.service/api/v1/service/summary/emby
- homepage.widget.field[0].label=Deployed Version - homepage.widget.mappings[0].label=Deployed Version
- homepage.widget.field[0].field.status=deployed_version - homepage.widget.mappings[0].field.status=deployed_version
- homepage.widget.field[1].label=Latest Version - homepage.widget.mappings[1].label=Latest Version
- homepage.widget.field[1].field.status=latest_version - homepage.widget.mappings[1].field.status=latest_version
``` ```
## Docker Swarm ## Docker Swarm

View File

@@ -16,6 +16,7 @@ widget:
view: monthly # optional - possible values monthly, agenda view: monthly # optional - possible values monthly, agenda
maxEvents: 10 # optional - defaults to 10 maxEvents: 10 # optional - defaults to 10
showTime: true # optional - show time for event happening today - defaults to false showTime: true # optional - show time for event happening today - defaults to false
timezone: America/Los_Angeles # optional and only when timezone is not detected properly (slightly slower performance) - force timezone for ical events (if it's the same - no change, if missing or different in ical - will be converted to this timezone)
integrations: # optional integrations: # optional
- type: sonarr # active widget type that is currently enabled on homepage - possible values: radarr, sonarr, lidarr, readarr, ical - type: sonarr # active widget type that is currently enabled on homepage - possible values: radarr, sonarr, lidarr, readarr, ical
service_group: Media # group name where widget exists service_group: Media # group name where widget exists

View File

@@ -16,7 +16,7 @@ widget:
defaultinterval: 7d # Optional defaultinterval: 7d # Optional
``` ```
You can also specify slugs instead of symbols (since symbols aren't garaunteed to be unique). If you supply both, slugs will be used. For example: You can also specify slugs instead of symbols (since symbols aren't guaranteed to be unique). If you supply both, slugs will be used. For example:
```yaml ```yaml
widget: widget:

View File

@@ -34,11 +34,20 @@ widget:
- field: key # needs to be YAML string or object - field: key # needs to be YAML string or object
label: Field 4 label: Field 4
format: date # optional - defaults to text format: date # optional - defaults to text
locale: nl # optional
dateStyle: long # optional - defaults to "long". Allowed values: `["full", "long", "medium", "short"]`. dateStyle: long # optional - defaults to "long". Allowed values: `["full", "long", "medium", "short"]`.
timeStyle: medium # optional - Allowed values: `["full", "long", "medium", "short"]`. timeStyle: medium # optional - Allowed values: `["full", "long", "medium", "short"]`.
- field: key # needs to be YAML string or object
label: Field 5
format: relativeDate # optional - defaults to text
locale: nl # optional
style: short # optional - defaults to "long". Allowed values: `["long", "short", "narrow"]`.
numeric: auto # optional - defaults to "always". Allowed values `["always", "auto"]`.
``` ```
Supported formats for the values are `text`, `number`, `float`, `percent`, `bytes`, `bitrate` and `date`. Supported formats for the values are `text`, `number`, `float`, `percent`, `bytes`, `bitrate`, `date` and `relativeDate`.
The `dateStyle` and `timeStyle` options of the `date` format are passed directly to [Intl.DateTimeFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat) and the `style` and `numeric` options of `relativeDate` are passed to [Intl.RelativeTimeFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat).
## Example ## Example

View File

@@ -3,18 +3,21 @@ title: Health checks
description: Health checks Widget Configuration description: Health checks Widget Configuration
--- ---
To use the Health Checks widget, you first need to generate an API key. To do this, follow these steps: Specify a single check by including the `uuid` field or show the total 'up' and 'down' for all
checks by leaving off the `uuid` field.
1. Go to Settings in your check dashboard. To use the Health Checks widget, you first need to generate an API key.
1. In your project, go to project Settings on the navigation bar.
2. Click on API key (read-only) and then click _Create_. 2. Click on API key (read-only) and then click _Create_.
3. Copy the API key that is generated for you. 3. Copy the API key that is generated for you.
Allowed fields: `["status", "last_ping"]`. Allowed fields: `["status", "last_ping"]` for single checks, `["up", "down"]` for total stats.
```yaml ```yaml
widget: widget:
type: healthchecks type: healthchecks
url: http://healthchecks.host.or.ip:port url: http://healthchecks.host.or.ip:port
key: <YOUR_API_KEY> key: <YOUR_API_KEY>
uuid: <YOUR_CHECK_UUID> uuid: <CHECK_UUID> # optional, if not included total statistics for all checks is shown
``` ```

View File

@@ -3,6 +3,8 @@ title: Immich
description: Immich Widget Configuration description: Immich Widget Configuration
--- ---
Find your API key under `Account Settings > API Keys`.
Allowed fields: `["users" ,"photos", "videos", "storage"]`. Allowed fields: `["users" ,"photos", "videos", "storage"]`.
Note that API key must be from admin user. Note that API key must be from admin user.

View File

@@ -0,0 +1,12 @@
---
title: Netdata
description: Netdata Widget Configuration
---
Allowed fields: `["warnings", "criticals"]`.
```yaml
widget:
type: Netdata
url: http://netdata.host.or.ip
```

View File

@@ -0,0 +1,14 @@
---
title: Romm
description: Romm Widget Configuration
---
Allowed fields: `["platforms", "totalRoms"]`.
```yaml
widget:
type: Romm
url: http://romm.host.or.ip
username: username # optional
password: password # optional
```

View File

@@ -84,6 +84,7 @@ nav:
- widgets/services/moonraker.md - widgets/services/moonraker.md
- widgets/services/mylar.md - widgets/services/mylar.md
- widgets/services/navidrome.md - widgets/services/navidrome.md
- widgets/services/netdata.md
- widgets/services/nextcloud.md - widgets/services/nextcloud.md
- widgets/services/nextdns.md - widgets/services/nextdns.md
- widgets/services/nginx-proxy-manager.md - widgets/services/nginx-proxy-manager.md
@@ -114,6 +115,7 @@ nav:
- widgets/services/qnap.md - widgets/services/qnap.md
- widgets/services/radarr.md - widgets/services/radarr.md
- widgets/services/readarr.md - widgets/services/readarr.md
- widgets/services/romm.md
- widgets/services/rutorrent.md - widgets/services/rutorrent.md
- widgets/services/sabnzbd.md - widgets/services/sabnzbd.md
- widgets/services/scrutiny.md - widgets/services/scrutiny.md

View File

@@ -100,6 +100,17 @@ function uptime(uptimeInSeconds, i18next) {
return (moDisplay + dDisplay + hDisplay + mDisplay + sDisplay).replace(/,\s*$/, ""); return (moDisplay + dDisplay + hDisplay + mDisplay + sDisplay).replace(/,\s*$/, "");
} }
function relativeDate(date, formatter) {
const cutoffs = [60, 3600, 86400, 86400 * 7, 86400 * 30, 86400 * 365, Infinity];
const units = ["second", "minute", "hour", "day", "week", "month", "year"];
const delta = Math.round((date.getTime() - Date.now()) / 1000);
const unitIndex = cutoffs.findIndex((cutoff) => cutoff > Math.abs(delta));
const divisor = unitIndex ? cutoffs[unitIndex - 1] : 1;
return formatter.format(Math.floor(delta / divisor), units[unitIndex]);
}
module.exports = { module.exports = {
i18n: { i18n: {
defaultLocale: "en", defaultLocale: "en",
@@ -142,6 +153,9 @@ module.exports = {
i18next.services.formatter.add("date", (value, lng, options) => i18next.services.formatter.add("date", (value, lng, options) =>
new Intl.DateTimeFormat(lng, { ...options }).format(new Date(value)), new Intl.DateTimeFormat(lng, { ...options }).format(new Date(value)),
); );
i18next.services.formatter.add("relativeDate", (value, lng, options) =>
relativeDate(new Date(value), new Intl.RelativeTimeFormat(lng, { ...options })),
);
i18next.services.formatter.add("uptime", (value, lng) => uptime(value, i18next)); i18next.services.formatter.add("uptime", (value, lng) => uptime(value, i18next));
}, },
type: "3rdParty", type: "3rdParty",

View File

@@ -12,8 +12,9 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "ma",
"days": "d", "days": "d",
"hours": "h", "hours": "h",
"minutes": "m", "minutes": "m",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "Nuut", "new": "Nuut",
"up": "Aanlyn", "up": "Op",
"grace": "In Grasietydperk", "grace": "In Grasietydperk",
"down": "Vanlyn", "down": "Af",
"paused": "Onderbreek", "paused": "Onderbreek",
"status": "Status", "status": "Status",
"last_ping": "Laaste Pieng", "last_ping": "Laaste Pieng",
@@ -794,5 +795,13 @@
"digitalRelease": "Digitale Vrylating", "digitalRelease": "Digitale Vrylating",
"noEventsToday": "Geen gebeure vir vandag nie!", "noEventsToday": "Geen gebeure vir vandag nie!",
"noEventsFound": "Geen gebeure gevind nie" "noEventsFound": "Geen gebeure gevind nie"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "ش", "months": "ش",
"days": "ي", "days": "ي",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "جديد(ة)", "new": "جديد(ة)",
"up": ُتّصل", "up": "يعمل",
"grace": "في فترة السماح", "grace": "في فترة السماح",
"down": "غير متصل", "down": "لا يعمل",
"paused": "متوقف", "paused": "متوقف",
"status": "الحالة", "status": "الحالة",
"last_ping": "آخر Ping", "last_ping": "آخر Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "الإصدار الرقمي", "digitalRelease": "الإصدار الرقمي",
"noEventsToday": "لا توجد أحداث اليوم!", "noEventsToday": "لا توجد أحداث اليوم!",
"noEventsFound": "لم يتم العثور على أحداث" "noEventsFound": "لم يتم العثور على أحداث"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "Нови", "new": "Нови",
"up": "Online", "up": "Up",
"grace": "Гратисен период", "grace": "Гратисен период",
"down": "Изключен", "down": "Down",
"paused": "Paused", "paused": "Paused",
"status": "Статус", "status": "Статус",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "Няма събития за днес!", "noEventsToday": "Няма събития за днес!",
"noEventsFound": "Няма намерени събития" "noEventsFound": "Няма намерени събития"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Online", "up": "Up",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "Fora de línia", "down": "Down",
"paused": "Paused", "paused": "Paused",
"status": "Estat", "status": "Estat",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "Nové", "new": "Nové",
"up": "Online", "up": "Up",
"grace": "V období odkladu", "grace": "V období odkladu",
"down": "Offline", "down": "Down",
"paused": "Pozastaveno", "paused": "Pozastaveno",
"status": "Stav", "status": "Stav",
"last_ping": "Poslední ping", "last_ping": "Poslední ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "Ny", "new": "Ny",
"up": "Online", "up": "Op",
"grace": "Henstandsperiode", "grace": "Henstandsperiode",
"down": "Offline", "down": "Ned",
"paused": "Pause", "paused": "Pause",
"status": "Status", "status": "Status",
"last_ping": "Sidste Ping", "last_ping": "Sidste Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digitale udgivelser", "digitalRelease": "Digitale udgivelser",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -169,7 +170,7 @@
"activeUser": "Aktive Geräte", "activeUser": "Aktive Geräte",
"alerts": "Warnungen", "alerts": "Warnungen",
"connectedGateway": "Verbundene Gateways", "connectedGateway": "Verbundene Gateways",
"connectedSwitches": "Verbundene Switches" "connectedSwitches": "Verbundene Switche"
}, },
"nzbget": { "nzbget": {
"rate": "Datenrate", "rate": "Datenrate",
@@ -383,8 +384,8 @@
}, },
"authentik": { "authentik": {
"users": "Benutzer", "users": "Benutzer",
"loginsLast24H": "Anmeldungen (24h)", "loginsLast24H": "Anmeldungen (24 h)",
"failedLoginsLast24H": "fehlerhafte Anmeldungen (24h)" "failedLoginsLast24H": "Fehlgeschlagene Anmeldungen (24 h)"
}, },
"proxmox": { "proxmox": {
"mem": "RAM", "mem": "RAM",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "Neu", "new": "Neu",
"up": "Online", "up": "Senden",
"grace": "In Karenzzeit", "grace": "In Karenzzeit",
"down": "Offline", "down": "Empfangen",
"paused": "Pausiert", "paused": "Pausiert",
"status": "Status", "status": "Status",
"last_ping": "Letzter Ping", "last_ping": "Letzter Ping",
@@ -561,7 +562,7 @@
"cpuLoad": "CPU-Auslastung", "cpuLoad": "CPU-Auslastung",
"memoryUsed": "RAM Verbrauch", "memoryUsed": "RAM Verbrauch",
"uptime": "Betriebszeit", "uptime": "Betriebszeit",
"numberOfLeases": "Leasen" "numberOfLeases": "Leases"
}, },
"xteve": { "xteve": {
"streams_all": "Keine Übertragungen", "streams_all": "Keine Übertragungen",
@@ -608,7 +609,7 @@
}, },
"proxmoxbackupserver": { "proxmoxbackupserver": {
"datastore_usage": "Datenspeicher", "datastore_usage": "Datenspeicher",
"failed_tasks_24h": "Fehlgeschlagene Prozesse 24h", "failed_tasks_24h": "Fehlgeschlagene Prozesse (24 h)",
"cpu_usage": "CPU", "cpu_usage": "CPU",
"memory_usage": "RAM" "memory_usage": "RAM"
}, },
@@ -794,5 +795,13 @@
"digitalRelease": "Digitale Version", "digitalRelease": "Digitale Version",
"noEventsToday": "Heute keine Ereignisse!", "noEventsToday": "Heute keine Ereignisse!",
"noEventsFound": "Keine Termine gefunden" "noEventsFound": "Keine Termine gefunden"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnungen",
"criticals": "Kritisch"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -50,7 +51,7 @@
}, },
"unifi": { "unifi": {
"users": "Χρήστες", "users": "Χρήστες",
"uptime": "Uptime", "uptime": "Χρόνος Λειτουργίας",
"days": "Ημέρες", "days": "Ημέρες",
"wan": "WAN", "wan": "WAN",
"lan": "LAN", "lan": "LAN",
@@ -86,15 +87,15 @@
"ping": "Ping", "ping": "Ping",
"down": "Down", "down": "Down",
"up": "Up", "up": "Up",
"not_available": "Not Available" "not_available": "Μη διαθέσιμο"
}, },
"siteMonitor": { "siteMonitor": {
"http_status": "HTTP status", "http_status": "Κατάσταση HTTP",
"error": "Σφάλμα", "error": "Σφάλμα",
"response": "Response", "response": "Απόκριση",
"down": "Down", "down": "Down",
"up": "Up", "up": "Up",
"not_available": "Not Available" "not_available": "Μη διαθέσιμο"
}, },
"emby": { "emby": {
"playing": "Παίζει", "playing": "Παίζει",
@@ -126,14 +127,14 @@
}, },
"fritzbox": { "fritzbox": {
"connectionStatus": "Κατάσταση", "connectionStatus": "Κατάσταση",
"connectionStatusUnconfigured": "Unconfigured", "connectionStatusUnconfigured": "Μη Ρυθμισμένο",
"connectionStatusConnecting": "Connecting", "connectionStatusConnecting": "Κατάσταση Σύνδεσης",
"connectionStatusAuthenticating": "Authenticating", "connectionStatusAuthenticating": "Authenticating",
"connectionStatusPendingDisconnect": "Pending Disconnect", "connectionStatusPendingDisconnect": "Pending Disconnect",
"connectionStatusDisconnecting": "Disconnecting", "connectionStatusDisconnecting": "Disconnecting",
"connectionStatusDisconnected": "Disconnected", "connectionStatusDisconnected": "Disconnected",
"connectionStatusConnected": "Connected", "connectionStatusConnected": "Connected",
"uptime": "Uptime", "uptime": "Χρόνος Λειτουργίας",
"maxDown": "Max. Down", "maxDown": "Max. Down",
"maxUp": "Max. Up", "maxUp": "Max. Up",
"down": "Down", "down": "Down",
@@ -309,7 +310,7 @@
"hours": "{{number}}h", "hours": "{{number}}h",
"minutes": "{{number}}m", "minutes": "{{number}}m",
"seconds": "{{number}}s", "seconds": "{{number}}s",
"ago": "{{value}} Ago" "ago": "{{value}} πρίν"
}, },
"tdarr": { "tdarr": {
"queue": "Ουρά", "queue": "Ουρά",
@@ -324,45 +325,45 @@
}, },
"navidrome": { "navidrome": {
"nothing_streaming": "Δεν υπάρχουν ενεργές ροές", "nothing_streaming": "Δεν υπάρχουν ενεργές ροές",
"please_wait": "Please Wait" "please_wait": "Παρακαλώ περιμένετε"
}, },
"npm": { "npm": {
"enabled": "Enabled", "enabled": "Ενεργοποιημένο",
"disabled": "Disabled", "disabled": "Απενεργοποιημένο",
"total": "Σύνολο" "total": "Σύνολο"
}, },
"coinmarketcap": { "coinmarketcap": {
"configure": "Configure one or more crypto currencies to track", "configure": "Ρυθμίστε ένα ή περισσότερα κρυπτονομίσματα για παρακολούθηση",
"1hour": "1 Hour", "1hour": "1 Ώρα",
"1day": "1 Day", "1day": "1 ημέρα",
"7days": "7 Days", "7days": "7 Ημέρες",
"30days": "30 Days" "30days": "30 Ημέρες"
}, },
"gotify": { "gotify": {
"apps": "Applications", "apps": "Εφαρμογές",
"clients": "Clients", "clients": "Πελάτες",
"messages": "Messages" "messages": "Μηνύματα"
}, },
"prowlarr": { "prowlarr": {
"enableIndexers": "Indexers", "enableIndexers": "Ευρετήρια",
"numberOfGrabs": "Grabs", "numberOfGrabs": "Αρπαγές",
"numberOfQueries": "Queries", "numberOfQueries": "Queries",
"numberOfFailGrabs": "Fail Grabs", "numberOfFailGrabs": "Αποτυχημένες Αρπαγές",
"numberOfFailQueries": "Fail Queries" "numberOfFailQueries": "Fail Queries"
}, },
"jackett": { "jackett": {
"configured": "Configured", "configured": "Ρυθμισμένο",
"errored": "Errored" "errored": "Errored"
}, },
"strelaysrv": { "strelaysrv": {
"numActiveSessions": "Sessions", "numActiveSessions": "Συνεδρίες",
"numConnections": "Connections", "numConnections": "Συνδέσεις",
"dataRelayed": "Relayed", "dataRelayed": "Relayed",
"transferRate": "Ρυθμός" "transferRate": "Ρυθμός"
}, },
"mastodon": { "mastodon": {
"user_count": "Χρήστες", "user_count": "Χρήστες",
"status_count": "Posts", "status_count": "Δημοσιεύσεις",
"domain_count": "Domains" "domain_count": "Domains"
}, },
"medusa": { "medusa": {
@@ -371,10 +372,10 @@
"series": "Σειρές" "series": "Σειρές"
}, },
"minecraft": { "minecraft": {
"players": "Players", "players": "Παίκτες",
"version": "Version", "version": "Έκδοση",
"status": "Κατάσταση", "status": "Κατάσταση",
"up": "Online", "up": "Συνδεδεμένοι",
"down": "Εκτός σύνδεσης" "down": "Εκτός σύνδεσης"
}, },
"miniflux": { "miniflux": {
@@ -383,8 +384,8 @@
}, },
"authentik": { "authentik": {
"users": "Χρήστες", "users": "Χρήστες",
"loginsLast24H": "Logins (24h)", "loginsLast24H": "Συνδέσεις (24h)",
"failedLoginsLast24H": "Failed Logins (24h)" "failedLoginsLast24H": "Αποτυχημένες Συνδέσεις (24h)"
}, },
"proxmox": { "proxmox": {
"mem": "MEM", "mem": "MEM",
@@ -409,7 +410,7 @@
"read": "Read", "read": "Read",
"write": "Write", "write": "Write",
"gpu": "GPU", "gpu": "GPU",
"mem": "Mem", "mem": "Μνήμη",
"swap": "Swap" "swap": "Swap"
}, },
"quicklaunch": { "quicklaunch": {
@@ -421,22 +422,22 @@
"url": "URL" "url": "URL"
}, },
"wmo": { "wmo": {
"0-day": "Sunny", "0-day": "Λιακάδα",
"0-night": "Clear", "0-night": "Καθαρή",
"1-day": "Mainly Sunny", "1-day": "Κυρίως Ηλιόλουστη",
"1-night": "Mainly Clear", "1-night": "Κυρίως καθαρή",
"2-day": "Partly Cloudy", "2-day": "Αραιές Νεφώσεις",
"2-night": "Partly Cloudy", "2-night": "Αραιές Νεφώσεις",
"3-day": "Cloudy", "3-day": "Συννεφιές",
"3-night": "Cloudy", "3-night": "Συννεφιές",
"45-day": "Foggy", "45-day": "Ομίχλη",
"45-night": "Foggy", "45-night": "Ομίχλη",
"48-day": "Foggy", "48-day": "Ομίχλη",
"48-night": "Foggy", "48-night": "Ομίχλη",
"51-day": "Light Drizzle", "51-day": "Ψιλόβροχο",
"51-night": "Light Drizzle", "51-night": "Ψιλόβροχο",
"53-day": "Drizzle", "53-day": "Ψιλόβροχο",
"53-night": "Drizzle", "53-night": "Ψιλόβροχο",
"55-day": "Heavy Drizzle", "55-day": "Heavy Drizzle",
"55-night": "Heavy Drizzle", "55-night": "Heavy Drizzle",
"56-day": "Light Freezing Drizzle", "56-day": "Light Freezing Drizzle",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Online", "up": "Up",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "Εκτός σύνδεσης", "down": "Down",
"paused": "Paused", "paused": "Paused",
"status": "Κατάσταση", "status": "Κατάσταση",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -508,7 +509,7 @@
"approvedPushes": "Εγκρίθηκε", "approvedPushes": "Εγκρίθηκε",
"rejectedPushes": "Rejected", "rejectedPushes": "Rejected",
"filters": "Filters", "filters": "Filters",
"indexers": "Indexers" "indexers": "Ευρετήρια"
}, },
"tubearchivist": { "tubearchivist": {
"downloads": "Ουρά", "downloads": "Ουρά",
@@ -517,20 +518,20 @@
"playlists": "Playlists" "playlists": "Playlists"
}, },
"truenas": { "truenas": {
"load": "System Load", "load": "Φόρτος Συστήματος",
"uptime": "Uptime", "uptime": "Χρόνος Λειτουργίας",
"alerts": "Ειδοποιήσεις" "alerts": "Ειδοποιήσεις"
}, },
"pyload": { "pyload": {
"speed": "Speed", "speed": "Ταχύτητα",
"active": "Ενεργό", "active": "Ενεργό",
"queue": "Ουρά", "queue": "Ουρά",
"total": "Σύνολο" "total": "Σύνολο"
}, },
"gluetun": { "gluetun": {
"public_ip": "Public IP", "public_ip": "Δημόσια ΙΡ",
"region": "Region", "region": "Περιοχή",
"country": "Country" "country": "Χώρα"
}, },
"hdhomerun": { "hdhomerun": {
"channels": "Channels", "channels": "Channels",
@@ -549,19 +550,19 @@
"battery_charge": "Battery Charge", "battery_charge": "Battery Charge",
"ups_load": "UPS Load", "ups_load": "UPS Load",
"ups_status": "UPS Status", "ups_status": "UPS Status",
"online": "Online", "online": "Συνδεδεμένοι",
"on_battery": "On Battery", "on_battery": "On Battery",
"low_battery": "Low Battery" "low_battery": "Low Battery"
}, },
"nextdns": { "nextdns": {
"wait": "Please Wait", "wait": "Παρακαλώ περιμένετε",
"no_devices": "No Device Data Received" "no_devices": "No Device Data Received"
}, },
"mikrotik": { "mikrotik": {
"cpuLoad": "CPU Load", "cpuLoad": "Φόρτος CPU",
"memoryUsed": "Memory Used", "memoryUsed": "Χρήση μνήμης",
"uptime": "Uptime", "uptime": "Χρόνος Λειτουργίας",
"numberOfLeases": "Leases" "numberOfLeases": "Μισθώσεις"
}, },
"xteve": { "xteve": {
"streams_all": "All Streams", "streams_all": "All Streams",
@@ -569,20 +570,20 @@
"streams_xepg": "XEPG Channels" "streams_xepg": "XEPG Channels"
}, },
"opendtu": { "opendtu": {
"yieldDay": "Today", "yieldDay": "Σήμερα",
"absolutePower": "Power", "absolutePower": "Ισχύς",
"relativePower": "Power %", "relativePower": "Ισχύς %",
"limit": "Limit" "limit": "Limit"
}, },
"opnsense": { "opnsense": {
"cpu": "CPU Load", "cpu": "Φόρτος CPU",
"memory": "Active Memory", "memory": "Active Memory",
"wanUpload": "WAN Upload", "wanUpload": "WAN Upload",
"wanDownload": "WAN Download" "wanDownload": "WAN Download"
}, },
"moonraker": { "moonraker": {
"printer_state": "Printer State", "printer_state": "Κατάσταση Εκτυπωτή",
"print_status": "Print Status", "print_status": "Κατάσταση Εκτύπωσης",
"print_progress": "Progress", "print_progress": "Progress",
"layers": "Layers" "layers": "Layers"
}, },
@@ -590,7 +591,7 @@
"printer_state": "Κατάσταση", "printer_state": "Κατάσταση",
"temp_tool": "Tool temp", "temp_tool": "Tool temp",
"temp_bed": "Bed temp", "temp_bed": "Bed temp",
"job_completion": "Completion" "job_completion": "Ολοκλήρωση"
}, },
"cloudflared": { "cloudflared": {
"origin_ip": "Origin IP", "origin_ip": "Origin IP",
@@ -621,7 +622,7 @@
"uptimekuma": { "uptimekuma": {
"up": "Sites Up", "up": "Sites Up",
"down": "Sites Down", "down": "Sites Down",
"uptime": "Uptime", "uptime": "Χρόνος Λειτουργίας",
"incident": "Incident", "incident": "Incident",
"m": "m" "m": "m"
}, },
@@ -638,7 +639,7 @@
}, },
"diskstation": { "diskstation": {
"days": "Ημέρες", "days": "Ημέρες",
"uptime": "Uptime", "uptime": "Χρόνος Λειτουργίας",
"volumeAvailable": "Διαθέσιμο" "volumeAvailable": "Διαθέσιμο"
}, },
"mylar": { "mylar": {
@@ -694,7 +695,7 @@
"targets_total": "Total Targets" "targets_total": "Total Targets"
}, },
"ghostfolio": { "ghostfolio": {
"gross_percent_today": "Today", "gross_percent_today": "Σήμερα",
"gross_percent_1y": "One year", "gross_percent_1y": "One year",
"gross_percent_max": "All time" "gross_percent_max": "All time"
}, },
@@ -723,7 +724,7 @@
"downloadCount": "Ουρά", "downloadCount": "Ουρά",
"downloadBytesRemaining": "Υπόλοιπο", "downloadBytesRemaining": "Υπόλοιπο",
"downloadTotalBytes": "Size", "downloadTotalBytes": "Size",
"downloadSpeed": "Speed" "downloadSpeed": "Ταχύτητα"
}, },
"kavita": { "kavita": {
"seriesCount": "Σειρές", "seriesCount": "Σειρές",
@@ -744,12 +745,12 @@
}, },
"gamedig": { "gamedig": {
"status": "Κατάσταση", "status": "Κατάσταση",
"online": "Online", "online": "Συνδεδεμένοι",
"offline": "Εκτός σύνδεσης", "offline": "Εκτός σύνδεσης",
"name": "Name", "name": "Name",
"map": "Map", "map": "Map",
"currentPlayers": "Current players", "currentPlayers": "Current players",
"players": "Players", "players": "Παίκτες",
"maxPlayers": "Max players", "maxPlayers": "Max players",
"bots": "Bots", "bots": "Bots",
"ping": "Ping" "ping": "Ping"
@@ -776,7 +777,7 @@
}, },
"uptimerobot": { "uptimerobot": {
"status": "Κατάσταση", "status": "Κατάσταση",
"uptime": "Uptime", "uptime": "Χρόνος Λειτουργίας",
"lastDown": "Last Downtime", "lastDown": "Last Downtime",
"downDuration": "Downtime Duration", "downDuration": "Downtime Duration",
"sitesUp": "Sites Up", "sitesUp": "Sites Up",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Online", "up": "Up",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "Offline", "down": "Down",
"paused": "Paused", "paused": "Paused",
"status": "Status", "status": "Status",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Online", "up": "Up",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "Malkonekta", "down": "Down",
"paused": "Paused", "paused": "Paused",
"status": "Stato", "status": "Stato",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,8 +12,9 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "me",
"days": "d", "days": "d",
"hours": "h", "hours": "h",
"minutes": "m", "minutes": "m",
@@ -46,11 +47,11 @@
"load": "Carga", "load": "Carga",
"temp": "TEMP", "temp": "TEMP",
"max": "Máx.", "max": "Máx.",
"uptime": "ARRIBA" "uptime": "ACTIVO"
}, },
"unifi": { "unifi": {
"users": "Usuarios", "users": "Usuarios",
"uptime": "Tiempo de la actividad", "uptime": "Tiempo activo",
"days": "Días", "days": "Días",
"wan": "WAN", "wan": "WAN",
"lan": "LAN", "lan": "LAN",
@@ -60,7 +61,7 @@
"wlan_devices": "Dispositivos WLAN", "wlan_devices": "Dispositivos WLAN",
"lan_users": "Usuarios LAN", "lan_users": "Usuarios LAN",
"wlan_users": "Usuarios WLAN", "wlan_users": "Usuarios WLAN",
"up": "ARRIBA", "up": "ACTIVO",
"down": "CAÍDO", "down": "CAÍDO",
"wait": "Espera, por favor", "wait": "Espera, por favor",
"empty_data": "Se desconoce el estado del subsistema" "empty_data": "Se desconoce el estado del subsistema"
@@ -84,17 +85,17 @@
"ping": { "ping": {
"error": "Fallo", "error": "Fallo",
"ping": "Ping", "ping": "Ping",
"down": "Abajo", "down": "Inactivo",
"up": "Arriba", "up": "Activo",
"not_available": "No Disponible" "not_available": "No disponible"
}, },
"siteMonitor": { "siteMonitor": {
"http_status": "Estado HTTP", "http_status": "Estado HTTP",
"error": "Fallo", "error": "Fallo",
"response": "Respuesta", "response": "Respuesta",
"down": "Abajo", "down": "Inactivo",
"up": "Arriba", "up": "Activo",
"not_available": "No Disponible" "not_available": "No disponible"
}, },
"emby": { "emby": {
"playing": "Reproduciendo", "playing": "Reproduciendo",
@@ -102,7 +103,7 @@
"bitrate": "Tasa de bits", "bitrate": "Tasa de bits",
"no_active": "Sin transmisiones activas", "no_active": "Sin transmisiones activas",
"movies": "Películas", "movies": "Películas",
"series": "Serie", "series": "Series",
"episodes": "Episodios", "episodes": "Episodios",
"songs": "Canciones" "songs": "Canciones"
}, },
@@ -129,18 +130,18 @@
"connectionStatusUnconfigured": "Sin configurar", "connectionStatusUnconfigured": "Sin configurar",
"connectionStatusConnecting": "Conectando", "connectionStatusConnecting": "Conectando",
"connectionStatusAuthenticating": "Autenticando", "connectionStatusAuthenticating": "Autenticando",
"connectionStatusPendingDisconnect": "Pending Disconnect", "connectionStatusPendingDisconnect": "Desconexión pendiente",
"connectionStatusDisconnecting": "Desconectando", "connectionStatusDisconnecting": "Desconectando",
"connectionStatusDisconnected": "Desconectado", "connectionStatusDisconnected": "Desconectado",
"connectionStatusConnected": "Conectado", "connectionStatusConnected": "Conectado",
"uptime": "Tiempo de la actividad", "uptime": "Tiempo activo",
"maxDown": "Max. Down", "maxDown": "Descarga máxima",
"maxUp": "Max. Up", "maxUp": "Subida máxima",
"down": "Abajo", "down": "Inactivo",
"up": "Arriba", "up": "Activo",
"received": "Recibido", "received": "Recibido",
"sent": "Enviado", "sent": "Enviado",
"externalIPAddress": "IP pública" "externalIPAddress": "IP ext."
}, },
"caddy": { "caddy": {
"upstreams": "Upstream (desarrollo de software)", "upstreams": "Upstream (desarrollo de software)",
@@ -152,7 +153,7 @@
"diffsDetected": "Diferencias detectadas" "diffsDetected": "Diferencias detectadas"
}, },
"channelsdvrserver": { "channelsdvrserver": {
"shows": "Espectáculos", "shows": "Series",
"recordings": "Grabaciones", "recordings": "Grabaciones",
"scheduled": "Programado", "scheduled": "Programado",
"passes": "Pases" "passes": "Pases"
@@ -168,8 +169,8 @@
"connectedAp": "AP conectados", "connectedAp": "AP conectados",
"activeUser": "Dispositivos activos", "activeUser": "Dispositivos activos",
"alerts": "Alertas", "alerts": "Alertas",
"connectedGateway": "Pasarelas conectadas", "connectedGateway": "Puertas de enlace conectadas",
"connectedSwitches": "Interruptores conectados" "connectedSwitches": "Conmutadores conectados"
}, },
"nzbget": { "nzbget": {
"rate": "Tasa", "rate": "Tasa",
@@ -205,11 +206,11 @@
"seed": "Semillas" "seed": "Semillas"
}, },
"qnap": { "qnap": {
"cpuUsage": "Uso de la Cpu", "cpuUsage": "Uso de la CPU",
"memUsage": "Uso de la memoria", "memUsage": "Uso de la memoria",
"systemTempC": "Temperatura del sistema", "systemTempC": "Temperatura del sistema",
"poolUsage": "Comprobación del uso del grupo de memoria", "poolUsage": "Uso del pool",
"volumeUsage": "Volumen utilizado", "volumeUsage": "Uso de volúmenes",
"invalid": "No válido" "invalid": "No válido"
}, },
"deluge": { "deluge": {
@@ -227,13 +228,13 @@
"sonarr": { "sonarr": {
"wanted": "Buscando", "wanted": "Buscando",
"queued": "En cola", "queued": "En cola",
"series": "Serie", "series": "Series",
"queue": "En cola", "queue": "En cola",
"unknown": "Desconocido" "unknown": "Desconocido"
}, },
"radarr": { "radarr": {
"wanted": "Buscando", "wanted": "Buscando",
"missing": "Faltan", "missing": "Faltantes",
"queued": "En cola", "queued": "En cola",
"movies": "Películas", "movies": "Películas",
"queue": "En cola", "queue": "En cola",
@@ -250,8 +251,8 @@
"books": "Libros" "books": "Libros"
}, },
"bazarr": { "bazarr": {
"missingEpisodes": "Episodios perdidos", "missingEpisodes": "Episodios faltantes",
"missingMovies": "Películas perdidas" "missingMovies": "Películas faltantes"
}, },
"ombi": { "ombi": {
"pending": "Pendiente", "pending": "Pendiente",
@@ -273,13 +274,13 @@
"total": "Total", "total": "Total",
"connected": "Conectado", "connected": "Conectado",
"new_devices": "Nuevos dispositivos", "new_devices": "Nuevos dispositivos",
"down_alerts": "Alertas" "down_alerts": "Alertas de caídas"
}, },
"pihole": { "pihole": {
"queries": "Consultas", "queries": "Consultas",
"blocked": "Bloqueado", "blocked": "Bloqueado",
"blocked_percent": "% bloqueado", "blocked_percent": "% bloqueado",
"gravity": "Gravedad" "gravity": "Gravity"
}, },
"adguard": { "adguard": {
"queries": "Consultas", "queries": "Consultas",
@@ -303,12 +304,12 @@
"never": "Nunca", "never": "Nunca",
"last_seen": "Visto por última vez", "last_seen": "Visto por última vez",
"now": "Ahora", "now": "Ahora",
"years": "{{number}}años", "years": "{{number}}a",
"weeks": "{{number}}semanas", "weeks": "{{number}}sem",
"days": "{{number}}días", "days": "{{number}}d",
"hours": "{{number}}horas", "hours": "{{number}}h",
"minutes": "{{number}}minutos", "minutes": "{{number}}m",
"seconds": "{{number}}segundos", "seconds": "{{number}}s",
"ago": "Hace {{value}}" "ago": "Hace {{value}}"
}, },
"tdarr": { "tdarr": {
@@ -324,7 +325,7 @@
}, },
"navidrome": { "navidrome": {
"nothing_streaming": "Sin transmisiones activas", "nothing_streaming": "Sin transmisiones activas",
"please_wait": "Espere por favor" "please_wait": "Por favor, espera"
}, },
"npm": { "npm": {
"enabled": "Activado", "enabled": "Activado",
@@ -368,7 +369,7 @@
"medusa": { "medusa": {
"wanted": "Buscando", "wanted": "Buscando",
"queued": "En cola", "queued": "En cola",
"series": "Serie" "series": "Series"
}, },
"minecraft": { "minecraft": {
"players": "Jugadores", "players": "Jugadores",
@@ -389,7 +390,7 @@
"proxmox": { "proxmox": {
"mem": "MEM", "mem": "MEM",
"cpu": "CPU", "cpu": "CPU",
"lxc": "Contenedores Linux", "lxc": "LXC",
"vms": "Máquinas Virtuales" "vms": "Máquinas Virtuales"
}, },
"glances": { "glances": {
@@ -399,7 +400,7 @@
"temp": "TEMP", "temp": "TEMP",
"_temp": "Temperatura", "_temp": "Temperatura",
"warn": "Advertir", "warn": "Advertir",
"uptime": "ARRIBA", "uptime": "ACTIVO",
"total": "Total", "total": "Total",
"free": "Libre", "free": "Libre",
"used": "Usado", "used": "Usado",
@@ -417,7 +418,7 @@
"service": "Servicio", "service": "Servicio",
"search": "Buscar", "search": "Buscar",
"custom": "Personalizado", "custom": "Personalizado",
"visit": "Visita", "visit": "Visitar",
"url": "Enlace" "url": "Enlace"
}, },
"wmo": { "wmo": {
@@ -437,8 +438,8 @@
"51-night": "Llovizna ligera", "51-night": "Llovizna ligera",
"53-day": "Llovizna", "53-day": "Llovizna",
"53-night": "Llovizna", "53-night": "Llovizna",
"55-day": "Llovizna pesada", "55-day": "Llovizna intensa",
"55-night": "Llovizna pesada", "55-night": "Llovizna intensa",
"56-day": "Llovizna helada ligera", "56-day": "Llovizna helada ligera",
"56-night": "Llovizna helada ligera", "56-night": "Llovizna helada ligera",
"57-day": "Llovizna helada", "57-day": "Llovizna helada",
@@ -447,26 +448,26 @@
"61-night": "Lluvia ligera", "61-night": "Lluvia ligera",
"63-day": "Lluvia", "63-day": "Lluvia",
"63-night": "Lluvia", "63-night": "Lluvia",
"65-day": "Chubascos", "65-day": "Lluvia torrencial",
"65-night": "Chubascos", "65-night": "Lluvia torrencial",
"66-day": "Granizo", "66-day": "Granizo",
"66-night": "Granizo", "66-night": "Granizo",
"67-day": "Granizo", "67-day": "Granizo",
"67-night": "Granizo", "67-night": "Granizo",
"71-day": "Nevada Leve", "71-day": "Nevada leve",
"71-night": "Nevada Leve", "71-night": "Nevada leve",
"73-day": "Nevada", "73-day": "Nevada",
"73-night": "Nevada", "73-night": "Nevada",
"75-day": "Fuertes Nevadas", "75-day": "Nevada intensa",
"75-night": "Fuertes Nevadas", "75-night": "Nevada intensa",
"77-day": "Granizada", "77-day": "Granizada",
"77-night": "Granizada", "77-night": "Granizada",
"80-day": "Llovizna", "80-day": "Llovizna",
"80-night": "Llovizna", "80-night": "Llovizna",
"81-day": "Lluvia", "81-day": "Lluvia",
"81-night": "Lluvia", "81-night": "Lluvia",
"82-day": "Chubascos", "82-day": "Lluvias torrenciales",
"82-night": "Chubascos", "82-night": "Lluvias torrenciales",
"85-day": "Lluvia de nieve", "85-day": "Lluvia de nieve",
"85-night": "Lluvia de nieve", "85-night": "Lluvia de nieve",
"86-day": "Lluvia de nieve", "86-day": "Lluvia de nieve",
@@ -485,15 +486,15 @@
"up_to_date": "Actualizado", "up_to_date": "Actualizado",
"child_bridges": "Bridges secundarios", "child_bridges": "Bridges secundarios",
"child_bridges_status": "{{ok}}/{{total}}", "child_bridges_status": "{{ok}}/{{total}}",
"up": "Arriba", "up": "Activo",
"pending": "Pendiente", "pending": "Pendiente",
"down": "Abajo" "down": "Inactivo"
}, },
"healthchecks": { "healthchecks": {
"new": "Nuevo", "new": "Nuevo",
"up": "En línea", "up": "Activo",
"grace": "En Periodo de Gracia", "grace": "En Periodo de Gracia",
"down": "Desconectado", "down": "Inactivo",
"paused": "Pausado", "paused": "Pausado",
"status": "Estado", "status": "Estado",
"last_ping": "Último ping", "last_ping": "Último ping",
@@ -512,13 +513,13 @@
}, },
"tubearchivist": { "tubearchivist": {
"downloads": "En cola", "downloads": "En cola",
"videos": "Vídeos", "videos": "Videos",
"channels": "Canales", "channels": "Canales",
"playlists": "Listas de reproducción" "playlists": "Listas de reproducción"
}, },
"truenas": { "truenas": {
"load": "Carga del sistema", "load": "Carga del sistema",
"uptime": "Tiempo de la actividad", "uptime": "Tiempo activo",
"alerts": "Alertas" "alerts": "Alertas"
}, },
"pyload": { "pyload": {
@@ -546,21 +547,21 @@
"total": "Total" "total": "Total"
}, },
"peanut": { "peanut": {
"battery_charge": "Battery Charge", "battery_charge": "Carga de la batería",
"ups_load": "UPS Load", "ups_load": "Carga del UPS",
"ups_status": "UPS Status", "ups_status": "Estado del UPS",
"online": "En línea", "online": "En línea",
"on_battery": "On Battery", "on_battery": "Con batería",
"low_battery": "Low Battery" "low_battery": "Batería baja"
}, },
"nextdns": { "nextdns": {
"wait": "Espere por favor", "wait": "Por favor, espera",
"no_devices": "No se reciben datos del dispositivo" "no_devices": "No se recibieron datos del dispositivo"
}, },
"mikrotik": { "mikrotik": {
"cpuLoad": "Carga de la CPU", "cpuLoad": "Carga de la CPU",
"memoryUsed": "Memoria utilizada", "memoryUsed": "Memoria utilizada",
"uptime": "Tiempo de la actividad", "uptime": "Tiempo activo",
"numberOfLeases": "Alquileres" "numberOfLeases": "Alquileres"
}, },
"xteve": { "xteve": {
@@ -570,15 +571,15 @@
}, },
"opendtu": { "opendtu": {
"yieldDay": "Hoy", "yieldDay": "Hoy",
"absolutePower": "Encender", "absolutePower": "Potencia",
"relativePower": "Encender %", "relativePower": "Potencia %",
"limit": "Límite" "limit": "Límite"
}, },
"opnsense": { "opnsense": {
"cpu": "Carga de la CPU", "cpu": "Carga de la CPU",
"memory": "Memoria activa", "memory": "Memoria activa",
"wanUpload": "Carga WAN", "wanUpload": "Subida WAN",
"wanDownload": "Descargar WAN" "wanDownload": "Descarga WAN"
}, },
"moonraker": { "moonraker": {
"printer_state": "Estado de la impresora", "printer_state": "Estado de la impresora",
@@ -598,10 +599,10 @@
}, },
"pfsense": { "pfsense": {
"load": "Promedio de carga", "load": "Promedio de carga",
"memory": "Memoria utilizada", "memory": "Uso de memoria",
"wanStatus": "Estado de la WAN", "wanStatus": "Estado de la WAN",
"up": "Arriba", "up": "Activo",
"down": "Abajo", "down": "Inactivo",
"temp": "Temperatura", "temp": "Temperatura",
"disk": "Uso del disco", "disk": "Uso del disco",
"wanIP": "IP de la WAN" "wanIP": "IP de la WAN"
@@ -615,41 +616,41 @@
"immich": { "immich": {
"users": "Usuarios", "users": "Usuarios",
"photos": "Fotos", "photos": "Fotos",
"videos": "Vídeos", "videos": "Videos",
"storage": "Almacenamiento" "storage": "Almacenamiento"
}, },
"uptimekuma": { "uptimekuma": {
"up": "Páginas web activas", "up": "Sitios activos",
"down": "Páginas web inactivas", "down": "Sitios inactivos",
"uptime": "Tiempo de la actividad", "uptime": "Tiempo activo",
"incident": "Incidencia", "incident": "Incidencia",
"m": "m" "m": "m"
}, },
"atsumeru": { "atsumeru": {
"series": "Serie", "series": "Series",
"archives": "Archivos", "archives": "Archivos",
"chapters": "Capítulos", "chapters": "Capítulos",
"categories": "Categorías" "categories": "Categorías"
}, },
"komga": { "komga": {
"libraries": "Librerías", "libraries": "Librerías",
"series": "Serie", "series": "Series",
"books": "Libros" "books": "Libros"
}, },
"diskstation": { "diskstation": {
"days": "Días", "days": "Días",
"uptime": "Tiempo de la actividad", "uptime": "Tiempo activo",
"volumeAvailable": "Disponible" "volumeAvailable": "Disponible"
}, },
"mylar": { "mylar": {
"series": "Serie", "series": "Series",
"issues": "Cuestiones", "issues": "Números",
"wanted": "Buscando" "wanted": "Buscando"
}, },
"photoprism": { "photoprism": {
"albums": "Álbumes", "albums": "Álbumes",
"photos": "Fotos", "photos": "Fotos",
"videos": "Vídeos", "videos": "Videos",
"people": "Personas" "people": "Personas"
}, },
"fileflows": { "fileflows": {
@@ -680,17 +681,17 @@
"failed": "Fallido" "failed": "Fallido"
}, },
"unmanic": { "unmanic": {
"active_workers": "Trabajadores en activo", "active_workers": "Trabajadores activos",
"total_workers": "Total de trabajadores", "total_workers": "Total de trabajadores",
"records_total": "Duración de la cola" "records_total": "Longitud de la cola"
}, },
"pterodactyl": { "pterodactyl": {
"servers": "Servidores", "servers": "Servidores",
"nodes": "Nodos" "nodes": "Nodos"
}, },
"prometheus": { "prometheus": {
"targets_up": "Objetivos arriba", "targets_up": "Objetivos activos",
"targets_down": "Objetivos abajo", "targets_down": "Objetivos inactivos",
"targets_total": "Objetivos totales" "targets_total": "Objetivos totales"
}, },
"ghostfolio": { "ghostfolio": {
@@ -705,19 +706,19 @@
"booksDuration": "Duración" "booksDuration": "Duración"
}, },
"homeassistant": { "homeassistant": {
"people_home": "Inicio de personas", "people_home": "Personas en casa",
"lights_on": "Luces encendidas", "lights_on": "Luces encendidas",
"switches_on": "Encendido" "switches_on": "Interruptores activados"
}, },
"whatsupdocker": { "whatsupdocker": {
"monitoring": "Supervisión", "monitoring": "Monitorizando",
"updates": "Actualizaciones" "updates": "Actualizaciones"
}, },
"calibreweb": { "calibreweb": {
"books": "Libros", "books": "Libros",
"authors": "Autores", "authors": "Autores",
"categories": "Categorías", "categories": "Categorías",
"series": "Serie" "series": "Series"
}, },
"jdownloader": { "jdownloader": {
"downloadCount": "En cola", "downloadCount": "En cola",
@@ -726,15 +727,15 @@
"downloadSpeed": "Velocidad" "downloadSpeed": "Velocidad"
}, },
"kavita": { "kavita": {
"seriesCount": "Serie", "seriesCount": "Series",
"totalFiles": "Archivos" "totalFiles": "Archivos"
}, },
"azuredevops": { "azuredevops": {
"result": "Resultado", "result": "Resultado",
"status": "Estado", "status": "Estado",
"buildId": "Identificador de la construcción", "buildId": "ID de compilación",
"succeeded": "Exitoso", "succeeded": "Exitoso",
"notStarted": "Sin empezar", "notStarted": "No iniciado",
"failed": "Fallido", "failed": "Fallido",
"canceled": "Cancelado", "canceled": "Cancelado",
"inProgress": "En curso", "inProgress": "En curso",
@@ -755,7 +756,7 @@
"ping": "Ping" "ping": "Ping"
}, },
"urbackup": { "urbackup": {
"ok": "De acuerdo", "ok": "OK",
"errored": "Errores", "errored": "Errores",
"noRecent": "Caducado", "noRecent": "Caducado",
"totalUsed": "Almacenamiento usado" "totalUsed": "Almacenamiento usado"
@@ -776,23 +777,31 @@
}, },
"uptimerobot": { "uptimerobot": {
"status": "Estado", "status": "Estado",
"uptime": "Tiempo de la actividad", "uptime": "Tiempo activo",
"lastDown": "Último periodo de inactividad", "lastDown": "Último periodo de inactividad",
"downDuration": "Tiempo de inactividad", "downDuration": "Duración de inactividad",
"sitesUp": "Páginas web activas", "sitesUp": "Sitios activos",
"sitesDown": "Páginas web inactivas", "sitesDown": "Sitios inactivos",
"paused": "Pausado", "paused": "Pausado",
"notyetchecked": "Aún no verificado", "notyetchecked": "Aún no verificado",
"up": "Arriba", "up": "Activo",
"seemsdown": "Parece caída", "seemsdown": "Parece caída",
"down": "Abajo", "down": "Inactivo",
"unknown": "Desconocido" "unknown": "Desconocido"
}, },
"calendar": { "calendar": {
"inCinemas": "En cine", "inCinemas": "En cine",
"physicalRelease": "Lanzamiento en físico", "physicalRelease": "Lanzamiento en físico",
"digitalRelease": "Lanzamiento en digital", "digitalRelease": "Lanzamiento en digital",
"noEventsToday": "Sin eventos para hoy", "noEventsToday": "¡Sin eventos para hoy!",
"noEventsFound": "No events found" "noEventsFound": "No se encontraron eventos"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Online", "up": "Up",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "Offline", "down": "Down",
"paused": "Paused", "paused": "Paused",
"status": "Status", "status": "Status",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Online", "up": "Up",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "Offline", "down": "Down",
"paused": "Paused", "paused": "Paused",
"status": "Tila", "status": "Tila",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "Nouveau", "new": "Nouveau",
"up": "En ligne", "up": "Up",
"grace": "En Période de Grâce", "grace": "En Période de Grâce",
"down": "Hors ligne", "down": "Down",
"paused": "En Pause", "paused": "En Pause",
"status": "Statut", "status": "Statut",
"last_ping": "Dernier Ping", "last_ping": "Dernier Ping",
@@ -547,11 +548,11 @@
}, },
"peanut": { "peanut": {
"battery_charge": "Battery Charge", "battery_charge": "Battery Charge",
"ups_load": "UPS Load", "ups_load": "Charge de l'UPS",
"ups_status": "UPS Status", "ups_status": "État de l'UPS",
"online": "En ligne", "online": "En ligne",
"on_battery": "On Battery", "on_battery": "On Battery",
"low_battery": "Low Battery" "low_battery": "Batterie Faible"
}, },
"nextdns": { "nextdns": {
"wait": "Merci de patienter", "wait": "Merci de patienter",
@@ -794,5 +795,13 @@
"digitalRelease": "Sortie numérique", "digitalRelease": "Sortie numérique",
"noEventsToday": "Rien pour aujourd'hui !", "noEventsToday": "Rien pour aujourd'hui !",
"noEventsFound": "Aucun événement trouvé" "noEventsFound": "Aucun événement trouvé"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Online", "up": "Up",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "כבוי", "down": "Down",
"paused": "Paused", "paused": "Paused",
"status": "סטטוס", "status": "סטטוס",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Online", "up": "Up",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "Offline", "down": "Down",
"paused": "Paused", "paused": "Paused",
"status": "Status", "status": "Status",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "Novo", "new": "Novo",
"up": "Online", "up": "Up",
"grace": "U razdoblju odgode", "grace": "U razdoblju odgode",
"down": "Offline", "down": "Down",
"paused": "Zaustavljeno", "paused": "Zaustavljeno",
"status": "Stanje", "status": "Stanje",
"last_ping": "Zadnji ping", "last_ping": "Zadnji ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "Új", "new": "Új",
"up": "Csatlakozva", "up": "Fel",
"grace": "Türelmi idő alatt", "grace": "Türelmi idő alatt",
"down": "Offline", "down": "Le",
"paused": "Szünetel", "paused": "Szünetel",
"status": "Státusz", "status": "Státusz",
"last_ping": "Legutóbbi Ping", "last_ping": "Legutóbbi Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digitális kiadás", "digitalRelease": "Digitális kiadás",
"noEventsToday": "Ezen a napon nincsenek események!", "noEventsToday": "Ezen a napon nincsenek események!",
"noEventsFound": "Nem található esemény" "noEventsFound": "Nem található esemény"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Online", "up": "Up",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "Offline", "down": "Down",
"paused": "Paused", "paused": "Paused",
"status": "Status", "status": "Status",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "Nuovo", "new": "Nuovo",
"up": "Online", "up": "Up",
"grace": "Periodo di Tolleranza", "grace": "Periodo di Tolleranza",
"down": "Non in linea", "down": "Down",
"paused": "In Pausa", "paused": "In Pausa",
"status": "Stato", "status": "Stato",
"last_ping": "Ultimo Ping", "last_ping": "Ultimo Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Versione digitale", "digitalRelease": "Versione digitale",
"noEventsToday": "Nessun evento per oggi!", "noEventsToday": "Nessun evento per oggi!",
"noEventsFound": "Nessun evento trovato" "noEventsFound": "Nessun evento trovato"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "新着", "new": "新着",
"up": "オンライン", "up": "上へ",
"grace": "猶予期間中", "grace": "猶予期間中",
"down": "オフライン", "down": "下へ",
"paused": "一時停止中", "paused": "一時停止中",
"status": "状態", "status": "状態",
"last_ping": "最後のPing", "last_ping": "最後のPing",
@@ -794,5 +795,13 @@
"digitalRelease": "デジタル・リリース", "digitalRelease": "デジタル・リリース",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Online", "up": "Up",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "중지", "down": "Down",
"paused": "Paused", "paused": "Paused",
"status": "상태", "status": "상태",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Online", "up": "Up",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "Bezsaistē", "down": "Down",
"paused": "Paused", "paused": "Paused",
"status": "Statuss", "status": "Statuss",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Online", "up": "Up",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "Luar talian", "down": "Down",
"paused": "Paused", "paused": "Paused",
"status": "Status", "status": "Status",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mnd", "months": "mnd",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "Nieuw", "new": "Nieuw",
"up": "Bereikbaar", "up": "Online",
"grace": "In de respijt periode", "grace": "In de respijt periode",
"down": "Onbereikbaar", "down": "Offline",
"paused": "Gepauzeerd", "paused": "Gepauzeerd",
"status": "Status", "status": "Status",
"last_ping": "Laatste Ping", "last_ping": "Laatste Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digitale versie", "digitalRelease": "Digitale versie",
"noEventsToday": "Geen gebeurtenissen voor vandaag!", "noEventsToday": "Geen gebeurtenissen voor vandaag!",
"noEventsFound": "Geen gebeurtenissen gevonden" "noEventsFound": "Geen gebeurtenissen gevonden"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Waarschuwingen",
"criticals": "Kritiek"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Online", "up": "Up",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "Offline", "down": "Down",
"paused": "Paused", "paused": "Paused",
"status": "Status", "status": "Status",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -493,7 +494,7 @@
"new": "Nowy", "new": "Nowy",
"up": "Dostępny", "up": "Dostępny",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "Nieosiągalny", "down": "Niedostępny",
"paused": "Zatrzymane", "paused": "Zatrzymane",
"status": "Stan", "status": "Stan",
"last_ping": "Ostatni ping", "last_ping": "Ostatni ping",
@@ -619,8 +620,8 @@
"storage": "Pamięć" "storage": "Pamięć"
}, },
"uptimekuma": { "uptimekuma": {
"up": "Sites Up", "up": "Działające",
"down": "Niedziałające strony", "down": "Niedziałające",
"uptime": "Czas działania", "uptime": "Czas działania",
"incident": "Incydent", "incident": "Incydent",
"m": "m" "m": "m"
@@ -779,8 +780,8 @@
"uptime": "Czas działania", "uptime": "Czas działania",
"lastDown": "Last Downtime", "lastDown": "Last Downtime",
"downDuration": "Downtime Duration", "downDuration": "Downtime Duration",
"sitesUp": "Sites Up", "sitesUp": "Działające",
"sitesDown": "Niedziałające strony", "sitesDown": "Niedziałające",
"paused": "Zatrzymane", "paused": "Zatrzymane",
"notyetchecked": "Not Yet Checked", "notyetchecked": "Not Yet Checked",
"up": "Dostępny", "up": "Dostępny",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,11 +12,12 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mes",
"days": "d", "days": "d",
"hours": "h", "hours": "h",
"minutes": "m", "minutes": "min",
"seconds": "s" "seconds": "s"
}, },
"widget": { "widget": {
@@ -30,7 +31,7 @@
}, },
"weather": { "weather": {
"current": "Localização atual", "current": "Localização atual",
"allow": "Clicar para permitir", "allow": "Clique para permitir",
"updating": "Atualizando", "updating": "Atualizando",
"wait": "Por favor aguarde" "wait": "Por favor aguarde"
}, },
@@ -126,21 +127,21 @@
}, },
"fritzbox": { "fritzbox": {
"connectionStatus": "Estado", "connectionStatus": "Estado",
"connectionStatusUnconfigured": "Unconfigured", "connectionStatusUnconfigured": "Não configurado",
"connectionStatusConnecting": "Connecting", "connectionStatusConnecting": "A conectar",
"connectionStatusAuthenticating": "Authenticating", "connectionStatusAuthenticating": "Autenticando",
"connectionStatusPendingDisconnect": "Pending Disconnect", "connectionStatusPendingDisconnect": "Desconexão pendente",
"connectionStatusDisconnecting": "Disconnecting", "connectionStatusDisconnecting": "Desconectando",
"connectionStatusDisconnected": "Disconnected", "connectionStatusDisconnected": "Desconectado",
"connectionStatusConnected": "Conectado", "connectionStatusConnected": "Conectado",
"uptime": "Ligado", "uptime": "Ligado",
"maxDown": "Max. Down", "maxDown": "Máx. de Descarga",
"maxUp": "Max. Up", "maxUp": "Max. de Envio",
"down": "Down", "down": "Down",
"up": "Up", "up": "Up",
"received": "Received", "received": "Recebido",
"sent": "Sent", "sent": "Enviado",
"externalIPAddress": "Ext. IP" "externalIPAddress": "Endereço IP externo"
}, },
"caddy": { "caddy": {
"upstreams": "Upstreams", "upstreams": "Upstreams",
@@ -439,20 +440,20 @@
"53-night": "Chuvisco", "53-night": "Chuvisco",
"55-day": "Aguaceiro Forte", "55-day": "Aguaceiro Forte",
"55-night": "Aguaceiro Forte", "55-night": "Aguaceiro Forte",
"56-day": "Leve Garoa Congelante", "56-day": "Granizo Leve",
"56-night": "Leve Garoa Congelante", "56-night": "Granizo Leve",
"57-day": "Garoa Congelante", "57-day": "Granizo",
"57-night": "Garoa Congelante", "57-night": "Granizo",
"61-day": "Chuva fraca", "61-day": "Chuva fraca",
"61-night": "Chuva fraca", "61-night": "Chuva fraca",
"63-day": "Chuva", "63-day": "Chuva",
"63-night": "Chuva", "63-night": "Chuva",
"65-day": "Chuva forte", "65-day": "Chuva forte",
"65-night": "Chuva forte", "65-night": "Chuva forte",
"66-day": "Chuva Congelante", "66-day": "Granizo",
"66-night": "Chuva Congelante", "66-night": "Granizo",
"67-day": "Chuva Congelante", "67-day": "Granizo",
"67-night": "Chuva Congelante", "67-night": "Granizo",
"71-day": "Neve fraca", "71-day": "Neve fraca",
"71-night": "Neve fraca", "71-night": "Neve fraca",
"73-day": "Neve", "73-day": "Neve",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "Novo", "new": "Novo",
"up": "Online", "up": "Up",
"grace": "Em Período Gratuito", "grace": "Em Período Gratuito",
"down": "Desligado", "down": "Down",
"paused": "Pausado", "paused": "Pausado",
"status": "Estado", "status": "Estado",
"last_ping": "Ultimo Ping", "last_ping": "Ultimo Ping",
@@ -546,12 +547,12 @@
"total": "Total" "total": "Total"
}, },
"peanut": { "peanut": {
"battery_charge": "Battery Charge", "battery_charge": "Carga da bateria",
"ups_load": "UPS Load", "ups_load": "Carga da UPS",
"ups_status": "UPS Status", "ups_status": "Estado da UPS",
"online": "Online", "online": "Online",
"on_battery": "On Battery", "on_battery": "Em bateria",
"low_battery": "Low Battery" "low_battery": "Bateria Fraca"
}, },
"nextdns": { "nextdns": {
"wait": "Por favor aguarde", "wait": "Por favor aguarde",
@@ -623,7 +624,7 @@
"down": "Sites Fora do Ar", "down": "Sites Fora do Ar",
"uptime": "Ligado", "uptime": "Ligado",
"incident": "Incidente", "incident": "Incidente",
"m": "m" "m": "min"
}, },
"atsumeru": { "atsumeru": {
"series": "Séries", "series": "Séries",
@@ -793,6 +794,14 @@
"physicalRelease": "Lançamento físico", "physicalRelease": "Lançamento físico",
"digitalRelease": "Lançamento digital", "digitalRelease": "Lançamento digital",
"noEventsToday": "Não existem eventos hoje!", "noEventsToday": "Não existem eventos hoje!",
"noEventsFound": "No events found" "noEventsFound": "Nenhum evento encontrado"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "Novo", "new": "Novo",
"up": "Online", "up": "Up",
"grace": "Em Período Gratuito", "grace": "Em Período Gratuito",
"down": "Desligado", "down": "Down",
"paused": "Pausado", "paused": "Pausado",
"status": "Estado", "status": "Estado",
"last_ping": "Ultimo Ping", "last_ping": "Ultimo Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Online", "up": "Sus",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "Offline", "down": "Jos",
"paused": "Paused", "paused": "Paused",
"status": "Stare", "status": "Stare",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "Новый", "new": "Новый",
"up": "В сети", "up": "Онлайн",
"grace": "Пробный период", "grace": "Пробный период",
"down": "Не в сети", "down": "Офлайн",
"paused": "Приостановлено", "paused": "Приостановлено",
"status": "Статус", "status": "Статус",
"last_ping": "Последний пинг", "last_ping": "Последний пинг",
@@ -794,5 +795,13 @@
"digitalRelease": "Цифровой релиз", "digitalRelease": "Цифровой релиз",
"noEventsToday": "Нет событий на сегодня!", "noEventsToday": "Нет событий на сегодня!",
"noEventsFound": "Событий не найдено" "noEventsFound": "Событий не найдено"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,7 +12,8 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{value, date}", "date": "{value, date}",
"uptime": "{{value, čas prevádzky}}", "relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}",
"months": "mes", "months": "mes",
"days": "d", "days": "d",
"hours": "h", "hours": "h",
@@ -51,7 +52,7 @@
"unifi": { "unifi": {
"users": "Používatelia", "users": "Používatelia",
"uptime": "Prevádzka", "uptime": "Prevádzka",
"days": "dní", "days": "Dní",
"wan": "WAN", "wan": "WAN",
"lan": "Lokálna sieť", "lan": "Lokálna sieť",
"wlan": "WLAN", "wlan": "WLAN",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "Nový", "new": "Nový",
"up": "Online", "up": "Nahrávanie",
"grace": "V dodatočnej lehote", "grace": "V dodatočnej lehote",
"down": "Nedostupný", "down": "Sťahovanie",
"paused": "Pozastavené", "paused": "Pozastavené",
"status": "Stav", "status": "Stav",
"last_ping": "Poslendný ping", "last_ping": "Poslendný ping",
@@ -637,7 +638,7 @@
"books": "Knihy" "books": "Knihy"
}, },
"diskstation": { "diskstation": {
"days": "dní", "days": "Dní",
"uptime": "Prevádzka", "uptime": "Prevádzka",
"volumeAvailable": "Dostupné" "volumeAvailable": "Dostupné"
}, },
@@ -794,5 +795,13 @@
"digitalRelease": "Digitálne vydanie", "digitalRelease": "Digitálne vydanie",
"noEventsToday": "Žiadne udalosti na dnešný deň!", "noEventsToday": "Žiadne udalosti na dnešný deň!",
"noEventsFound": "Žiadne udalosti" "noEventsFound": "Žiadne udalosti"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mes", "months": "mes",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "Nov", "new": "Nov",
"up": "Na spletu", "up": "Povezan",
"grace": "V podaljšanem roku", "grace": "V podaljšanem roku",
"down": "Ni povezan", "down": "Nepovezan",
"paused": "Pavziran", "paused": "Pavziran",
"status": "Stanje", "status": "Stanje",
"last_ping": "Zadnji Ping", "last_ping": "Zadnji Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digitalna izdaja", "digitalRelease": "Digitalna izdaja",
"noEventsToday": "Za danes ni dogodkov!", "noEventsToday": "Za danes ni dogodkov!",
"noEventsFound": "Ni dogodkov" "noEventsFound": "Ni dogodkov"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Opozorila",
"criticals": "Kritično"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Online", "up": "Up",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "Offline", "down": "Down",
"paused": "Paused", "paused": "Paused",
"status": "Status", "status": "Status",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Online", "up": "Up",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "Offline", "down": "Down",
"paused": "Paused", "paused": "Paused",
"status": "Status", "status": "Status",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Online", "up": "Up",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "ఆఫ్‌లైన్", "down": "Down",
"paused": "Paused", "paused": "Paused",
"status": "హోదా", "status": "హోదా",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Online", "up": "Up",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "ออฟไลน์", "down": "Down",
"paused": "Paused", "paused": "Paused",
"status": "สถานะ", "status": "สถานะ",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,11 +12,12 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "ay",
"days": "d", "days": "g",
"hours": "h", "hours": "sa",
"minutes": "m", "minutes": "dk",
"seconds": "s" "seconds": "s"
}, },
"widget": { "widget": {
@@ -83,18 +84,18 @@
}, },
"ping": { "ping": {
"error": "Hata", "error": "Hata",
"ping": "Ping", "ping": "Gecikme",
"down": "Down", "down": "İndirme",
"up": "Up", "up": "Yükleme",
"not_available": "Not Available" "not_available": "Mevcut Değil"
}, },
"siteMonitor": { "siteMonitor": {
"http_status": "HTTP status", "http_status": "HTTPS durumu",
"error": "Hata", "error": "Hata",
"response": "Response", "response": "Yanıt",
"down": "Down", "down": "İndirme",
"up": "Up", "up": "Yükleme",
"not_available": "Not Available" "not_available": "Mevcut Değil"
}, },
"emby": { "emby": {
"playing": "Oynatılıyor", "playing": "Oynatılıyor",
@@ -126,20 +127,20 @@
}, },
"fritzbox": { "fritzbox": {
"connectionStatus": "Durum", "connectionStatus": "Durum",
"connectionStatusUnconfigured": "Unconfigured", "connectionStatusUnconfigured": "Yapılandırılmamış",
"connectionStatusConnecting": "Connecting", "connectionStatusConnecting": "Bağlanıyor",
"connectionStatusAuthenticating": "Authenticating", "connectionStatusAuthenticating": "Kimlik doğrulanıyor",
"connectionStatusPendingDisconnect": "Pending Disconnect", "connectionStatusPendingDisconnect": "Pending Disconnect",
"connectionStatusDisconnecting": "Disconnecting", "connectionStatusDisconnecting": "Bağlantı kesiliyor...",
"connectionStatusDisconnected": "Disconnected", "connectionStatusDisconnected": "Bağlantı kesildi",
"connectionStatusConnected": "Bağlandı", "connectionStatusConnected": "Bağlandı",
"uptime": "Çalışma Süresi", "uptime": "Çalışma Süresi",
"maxDown": "Max. Down", "maxDown": "Max. Down",
"maxUp": "Max. Up", "maxUp": "Max. Up",
"down": "Down", "down": "İndirme",
"up": "Up", "up": "Yükleme",
"received": "Received", "received": "Alınan",
"sent": "Sent", "sent": "Gönderilen",
"externalIPAddress": "Ext. IP" "externalIPAddress": "Ext. IP"
}, },
"caddy": { "caddy": {
@@ -242,7 +243,7 @@
"lidarr": { "lidarr": {
"wanted": "Aranan", "wanted": "Aranan",
"queued": "Kuyrukta", "queued": "Kuyrukta",
"artists": "Artists" "artists": "Sanatçılar"
}, },
"readarr": { "readarr": {
"wanted": "Aranan", "wanted": "Aranan",
@@ -290,7 +291,7 @@
"speedtest": { "speedtest": {
"upload": "Yükle", "upload": "Yükle",
"download": "İndir", "download": "İndir",
"ping": "Ping" "ping": "Gecikme"
}, },
"portainer": { "portainer": {
"running": "Çalışan", "running": "Çalışan",
@@ -397,19 +398,19 @@
"load": "Yük", "load": "Yük",
"wait": "Lütfen bekleyin", "wait": "Lütfen bekleyin",
"temp": "Geçici", "temp": "Geçici",
"_temp": "Temp", "_temp": "Sıcaklık",
"warn": "Uyarı", "warn": "Uyarı",
"uptime": "Çalışma Süresi", "uptime": "Çalışma Süresi",
"total": "Toplam", "total": "Toplam",
"free": "Boşta", "free": "Boşta",
"used": "Kullanımda", "used": "Kullanımda",
"days": "d", "days": "g",
"hours": "h", "hours": "sa",
"crit": "Crit", "crit": "Kritik",
"read": "Oku", "read": "Oku",
"write": "Write", "write": "Yazma",
"gpu": "GPU", "gpu": "GPU",
"mem": "Mem", "mem": "Hafıza",
"swap": "Swap" "swap": "Swap"
}, },
"quicklaunch": { "quicklaunch": {
@@ -485,18 +486,18 @@
"up_to_date": "Güncel", "up_to_date": "Güncel",
"child_bridges": "Alt Köprüler", "child_bridges": "Alt Köprüler",
"child_bridges_status": "{{ok}}/{{total}}", "child_bridges_status": "{{ok}}/{{total}}",
"up": "Up", "up": "Yükleme",
"pending": "Bekliyor", "pending": "Bekliyor",
"down": "Down" "down": "İndirme"
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Çevrimiçi", "up": "Yükleme",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "Çevrimdışı", "down": "İndirme",
"paused": "Paused", "paused": "Paused",
"status": "Durum", "status": "Durum",
"last_ping": "Last Ping", "last_ping": "Son Ping",
"never": "No pings yet" "never": "No pings yet"
}, },
"watchtower": { "watchtower": {
@@ -546,11 +547,11 @@
"total": "Toplam" "total": "Toplam"
}, },
"peanut": { "peanut": {
"battery_charge": "Battery Charge", "battery_charge": "Pil Yüzdesi",
"ups_load": "UPS Load", "ups_load": "UPS Load",
"ups_status": "UPS Status", "ups_status": "UPS Status",
"online": "Çevrimiçi", "online": "Çevrimiçi",
"on_battery": "On Battery", "on_battery": "Pilde",
"low_battery": "Low Battery" "low_battery": "Low Battery"
}, },
"nextdns": { "nextdns": {
@@ -600,9 +601,9 @@
"load": "Load Avg", "load": "Load Avg",
"memory": "Mem Usage", "memory": "Mem Usage",
"wanStatus": "WAN Status", "wanStatus": "WAN Status",
"up": "Up", "up": "Yükleme",
"down": "Down", "down": "İndirme",
"temp": "Temp", "temp": "Sıcaklık",
"disk": "Disk Usage", "disk": "Disk Usage",
"wanIP": "WAN IP" "wanIP": "WAN IP"
}, },
@@ -623,7 +624,7 @@
"down": "Sites Down", "down": "Sites Down",
"uptime": "Çalışma Süresi", "uptime": "Çalışma Süresi",
"incident": "Incident", "incident": "Incident",
"m": "m" "m": "dk"
}, },
"atsumeru": { "atsumeru": {
"series": "Diziler", "series": "Diziler",
@@ -752,7 +753,7 @@
"players": "Oyuncular", "players": "Oyuncular",
"maxPlayers": "Max players", "maxPlayers": "Max players",
"bots": "Bots", "bots": "Bots",
"ping": "Ping" "ping": "Gecikme"
}, },
"urbackup": { "urbackup": {
"ok": "Ok", "ok": "Ok",
@@ -783,9 +784,9 @@
"sitesDown": "Sites Down", "sitesDown": "Sites Down",
"paused": "Paused", "paused": "Paused",
"notyetchecked": "Not Yet Checked", "notyetchecked": "Not Yet Checked",
"up": "Up", "up": "Yükleme",
"seemsdown": "Seems Down", "seemsdown": "Seems Down",
"down": "Down", "down": "İndirme",
"unknown": "Bilinmiyor" "unknown": "Bilinmiyor"
}, },
"calendar": { "calendar": {
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "Новий", "new": "Новий",
"up": "Онлайн", "up": "Up",
"grace": "У пільговий період", "grace": "У пільговий період",
"down": "Офлайн", "down": "Down",
"paused": "Призупинено", "paused": "Призупинено",
"status": "Стан", "status": "Стан",
"last_ping": "Останній пінг", "last_ping": "Останній пінг",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -491,9 +492,9 @@
}, },
"healthchecks": { "healthchecks": {
"new": "New", "new": "New",
"up": "Online", "up": "Up",
"grace": "In Grace Period", "grace": "In Grace Period",
"down": "Ngoại tuyến", "down": "Down",
"paused": "Paused", "paused": "Paused",
"status": "Trạng thái", "status": "Trạng thái",
"last_ping": "Last Ping", "last_ping": "Last Ping",
@@ -794,5 +795,13 @@
"digitalRelease": "Digital release", "digitalRelease": "Digital release",
"noEventsToday": "No events for today!", "noEventsToday": "No events for today!",
"noEventsFound": "No events found" "noEventsFound": "No events found"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,12 +12,13 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "",
"days": "d", "days": "",
"hours": "h", "hours": "小時",
"minutes": "m", "minutes": "",
"seconds": "s" "seconds": ""
}, },
"widget": { "widget": {
"missing_type": "缺少小部件類型:{{type}}", "missing_type": "缺少小部件類型:{{type}}",
@@ -129,13 +130,13 @@
"connectionStatusUnconfigured": "未設置", "connectionStatusUnconfigured": "未設置",
"connectionStatusConnecting": "連線中", "connectionStatusConnecting": "連線中",
"connectionStatusAuthenticating": "驗證中", "connectionStatusAuthenticating": "驗證中",
"connectionStatusPendingDisconnect": "Pending Disconnect", "connectionStatusPendingDisconnect": "待辦的斷開",
"connectionStatusDisconnecting": "正在中斷連線", "connectionStatusDisconnecting": "正在中斷連線",
"connectionStatusDisconnected": "連接已中斷", "connectionStatusDisconnected": "連接已中斷",
"connectionStatusConnected": "已連線", "connectionStatusConnected": "已連線",
"uptime": "運行時間", "uptime": "運行時間",
"maxDown": "Max. Down", "maxDown": "最大下載速率",
"maxUp": "Max. Up", "maxUp": "最大上傳速率",
"down": "離線", "down": "離線",
"up": "在線", "up": "在線",
"received": "已接收", "received": "已接收",
@@ -403,8 +404,8 @@
"total": "全部", "total": "全部",
"free": "剩餘", "free": "剩餘",
"used": "用咗", "used": "用咗",
"days": "d", "days": "",
"hours": "h", "hours": "小時",
"crit": "重大的", "crit": "重大的",
"read": "已讀", "read": "已讀",
"write": "寫入", "write": "寫入",
@@ -546,12 +547,12 @@
"total": "全部" "total": "全部"
}, },
"peanut": { "peanut": {
"battery_charge": "Battery Charge", "battery_charge": "充電",
"ups_load": "UPS Load", "ups_load": "UPS Load",
"ups_status": "UPS Status", "ups_status": "UPS Status",
"online": "在線", "online": "在線",
"on_battery": "On Battery", "on_battery": "電池供電",
"low_battery": "Low Battery" "low_battery": "低電量"
}, },
"nextdns": { "nextdns": {
"wait": "請稍後", "wait": "請稍後",
@@ -623,7 +624,7 @@
"down": "離線網站", "down": "離線網站",
"uptime": "運行時間", "uptime": "運行時間",
"incident": "事件", "incident": "事件",
"m": "m" "m": ""
}, },
"atsumeru": { "atsumeru": {
"series": "影集", "series": "影集",
@@ -794,5 +795,13 @@
"digitalRelease": "數位發行", "digitalRelease": "數位發行",
"noEventsToday": "今日無事件", "noEventsToday": "今日無事件",
"noEventsFound": "未找到事件" "noEventsFound": "未找到事件"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,6 +12,7 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "mo",
"days": "d", "days": "d",
@@ -794,5 +795,13 @@
"digitalRelease": "数字发行", "digitalRelease": "数字发行",
"noEventsToday": "今天没有活动!", "noEventsToday": "今天没有活动!",
"noEventsFound": "未找到事件" "noEventsFound": "未找到事件"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -12,12 +12,13 @@
"number": "{{value, number}}", "number": "{{value, number}}",
"ms": "{{value, number}}", "ms": "{{value, number}}",
"date": "{{value, date}}", "date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}", "uptime": "{{value, uptime}}",
"months": "mo", "months": "",
"days": "d", "days": "",
"hours": "h", "hours": "小時",
"minutes": "m", "minutes": "",
"seconds": "s" "seconds": ""
}, },
"widget": { "widget": {
"missing_type": "遺失小工具的類型: {{type}}", "missing_type": "遺失小工具的類型: {{type}}",
@@ -129,13 +130,13 @@
"connectionStatusUnconfigured": "未設置", "connectionStatusUnconfigured": "未設置",
"connectionStatusConnecting": "連線中", "connectionStatusConnecting": "連線中",
"connectionStatusAuthenticating": "驗證中", "connectionStatusAuthenticating": "驗證中",
"connectionStatusPendingDisconnect": "Pending Disconnect", "connectionStatusPendingDisconnect": "待辦的斷開",
"connectionStatusDisconnecting": "正在中斷連線", "connectionStatusDisconnecting": "正在中斷連線",
"connectionStatusDisconnected": "連接已中斷", "connectionStatusDisconnected": "連接已中斷",
"connectionStatusConnected": "已連線", "connectionStatusConnected": "已連線",
"uptime": "運行時間", "uptime": "運行時間",
"maxDown": "Max. Down", "maxDown": "最大下載速率",
"maxUp": "Max. Up", "maxUp": "最大上傳速率",
"down": "離線", "down": "離線",
"up": "在線", "up": "在線",
"received": "已接收", "received": "已接收",
@@ -403,8 +404,8 @@
"total": "全部", "total": "全部",
"free": "剩餘", "free": "剩餘",
"used": "已使用", "used": "已使用",
"days": "d", "days": "",
"hours": "h", "hours": "小時",
"crit": "重大的", "crit": "重大的",
"read": "已讀", "read": "已讀",
"write": "寫入", "write": "寫入",
@@ -546,12 +547,12 @@
"total": "全部" "total": "全部"
}, },
"peanut": { "peanut": {
"battery_charge": "Battery Charge", "battery_charge": "充電",
"ups_load": "UPS Load", "ups_load": "UPS Load",
"ups_status": "UPS Status", "ups_status": "UPS Status",
"online": "在線", "online": "在線",
"on_battery": "On Battery", "on_battery": "電池供電",
"low_battery": "Low Battery" "low_battery": "低電量"
}, },
"nextdns": { "nextdns": {
"wait": "請稍後", "wait": "請稍後",
@@ -623,7 +624,7 @@
"down": "離線網站", "down": "離線網站",
"uptime": "運行時間", "uptime": "運行時間",
"incident": "事件", "incident": "事件",
"m": "m" "m": ""
}, },
"atsumeru": { "atsumeru": {
"series": "影集", "series": "影集",
@@ -794,5 +795,13 @@
"digitalRelease": "數位發行", "digitalRelease": "數位發行",
"noEventsToday": "今日無事件", "noEventsToday": "今日無事件",
"noEventsFound": "未找到事件" "noEventsFound": "未找到事件"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
} }
} }

View File

@@ -10,8 +10,8 @@ Markdown==3.4.4
MarkupSafe==2.1.3 MarkupSafe==2.1.3
mergedeep==1.3.4 mergedeep==1.3.4
mkdocs==1.5.3 mkdocs==1.5.3
mkdocs-material @ git+https://github.com/benphelps/mkdocs-material-insiders.git@bcad61c278491d58e74c39e164b821cec795c161 mkdocs-material==9.5.2
mkdocs-material-extensions==1.2 mkdocs-material-extensions==1.3
packaging==23.1 packaging==23.1
paginate==0.5.6 paginate==0.5.6
pathspec==0.11.2 pathspec==0.11.2

View File

@@ -199,7 +199,7 @@ export default function QuickLaunch({
{results.length > 0 && ( {results.length > 0 && (
<ul className="max-h-[60vh] overflow-y-auto m-2"> <ul className="max-h-[60vh] overflow-y-auto m-2">
{results.map((r, i) => ( {results.map((r, i) => (
<li key={r.container ?? r.app ?? `${r.name}-${r.href}`}> <li key={[r.name, r.container, r.app, r.href].filter((s) => s).join("-")}>
<button <button
type="button" type="button"
data-index={i} data-index={i}

View File

@@ -49,6 +49,7 @@ export default function Item({ service, group, useEqualHeights }) {
target={service.target ?? settings.target ?? "_blank"} target={service.target ?? settings.target ?? "_blank"}
rel="noreferrer" rel="noreferrer"
className="flex-shrink-0 flex items-center justify-center w-12 service-icon" className="flex-shrink-0 flex items-center justify-center w-12 service-icon"
aria-label={service.icon}
> >
<ResolvedIcon icon={service.icon} /> <ResolvedIcon icon={service.icon} />
</a> </a>

View File

@@ -14,7 +14,7 @@ export default function List({ group, services, layout, useEqualHeights }) {
> >
{services.map((service) => ( {services.map((service) => (
<Item <Item
key={service.container ?? service.app ?? service.name} key={[service.container, service.app, service.name].filter((s) => s).join("-")}
service={service} service={service}
group={group} group={group}
useEqualHeights={layout?.useEqualHeights ?? useEqualHeights} useEqualHeights={layout?.useEqualHeights ?? useEqualHeights}

View File

@@ -23,6 +23,7 @@ export default function DateTime({ options }) {
useEffect(() => { useEffect(() => {
const dateFormat = new Intl.DateTimeFormat(dateLocale, { ...format }); const dateFormat = new Intl.DateTimeFormat(dateLocale, { ...format });
setDate(dateFormat.format(new Date()));
const interval = setInterval(() => { const interval = setInterval(() => {
setDate(dateFormat.format(new Date())); setDate(dateFormat.format(new Date()));
}, 1000); }, 1000);

View File

@@ -1,10 +1,11 @@
export default function UsageBar({ percent, additionalClassNames = "" }) { export default function UsageBar({ percent, additionalClassNames = "" }) {
const normalized = Math.min(100, Math.max(0, percent));
return ( return (
<div className={`mt-0.5 w-full bg-theme-800/30 rounded-full h-1 dark:bg-theme-200/20 ${additionalClassNames}`}> <div className={`mt-0.5 w-full bg-theme-800/30 rounded-full h-1 dark:bg-theme-200/20 ${additionalClassNames}`}>
<div <div
className="bg-theme-800/70 h-1 rounded-full dark:bg-theme-200/50 transition-all duration-1000" className="bg-theme-800/70 h-1 rounded-full dark:bg-theme-200/50 transition-all duration-1000"
style={{ style={{
width: `${percent}%`, width: `${normalized}%`,
}} }}
/> />
</div> </div>

View File

@@ -38,7 +38,7 @@ export async function servicesFromConfig() {
// add default weight to services based on their position in the configuration // add default weight to services based on their position in the configuration
servicesArray.forEach((group, groupIndex) => { servicesArray.forEach((group, groupIndex) => {
group.services.forEach((service, serviceIndex) => { group.services.forEach((service, serviceIndex) => {
if (!service.weight) { if (service.weight === undefined) {
servicesArray[groupIndex].services[serviceIndex].weight = (serviceIndex + 1) * 100; servicesArray[groupIndex].services[serviceIndex].weight = (serviceIndex + 1) * 100;
} }
}); });
@@ -102,6 +102,16 @@ export async function servicesFromDocker() {
} }
}); });
if (!constructedService.name || !constructedService.group) {
logger.error(
`Error constructing service using homepage labels for container '${containerName.replace(
/^\//,
"",
)}'. Ensure required labels are present.`,
);
return null;
}
return constructedService; return constructedService;
}); });
@@ -358,6 +368,7 @@ export function cleanServiceGroups(groups) {
showTime, showTime,
previousDays, previousDays,
view, view,
timezone,
// coinmarketcap // coinmarketcap
currency, currency,
@@ -387,6 +398,9 @@ export function cleanServiceGroups(groups) {
// glances, customapi, iframe // glances, customapi, iframe
refreshInterval, refreshInterval,
// healthchecks
uuid,
// iframe // iframe
allowFullscreen, allowFullscreen,
allowPolicy, allowPolicy,
@@ -525,6 +539,10 @@ export function cleanServiceGroups(groups) {
if (maxEvents) cleanedService.widget.maxEvents = maxEvents; if (maxEvents) cleanedService.widget.maxEvents = maxEvents;
if (previousDays) cleanedService.widget.previousDays = previousDays; if (previousDays) cleanedService.widget.previousDays = previousDays;
if (showTime) cleanedService.widget.showTime = showTime; if (showTime) cleanedService.widget.showTime = showTime;
if (timezone) cleanedService.widget.timezone = timezone;
}
if (type === "healthchecks") {
if (uuid !== undefined) cleanedService.widget.uuid = uuid;
} }
} }

View File

@@ -2,7 +2,7 @@ import { DateTime } from "luxon";
import classNames from "classnames"; import classNames from "classnames";
import { useTranslation } from "next-i18next"; import { useTranslation } from "next-i18next";
import Event from "./event"; import Event, { compareDateTimezone } from "./event";
export default function Agenda({ service, colorVariants, events, showDate }) { export default function Agenda({ service, colorVariants, events, showDate }) {
const { widget } = service; const { widget } = service;
@@ -56,7 +56,7 @@ export default function Agenda({ service, colorVariants, events, showDate }) {
event={event} event={event}
colorVariants={colorVariants} colorVariants={colorVariants}
showDate={j === 0} showDate={j === 0}
showTime={widget?.showTime && event.date.startOf("day").ts === showDate.startOf("day").ts} showTime={widget?.showTime && compareDateTimezone(showDate, event)}
/> />
))} ))}
</div> </div>

View File

@@ -41,7 +41,8 @@ export default function Component({ service }) {
const { i18n } = useTranslation(); const { i18n } = useTranslation();
const [showDate, setShowDate] = useState(null); const [showDate, setShowDate] = useState(null);
const [events, setEvents] = useState({}); const [events, setEvents] = useState({});
const currentDate = DateTime.now().setLocale(i18n.language).startOf("day"); const nowDate = DateTime.now().setLocale(i18n.language);
const currentDate = widget?.timezone ? nowDate.setZone(widget?.timezone).startOf("day") : nowDate;
const { settings } = useContext(SettingsContext); const { settings } = useContext(SettingsContext);
useEffect(() => { useEffect(() => {
@@ -93,6 +94,7 @@ export default function Component({ service }) {
params={params} params={params}
setEvents={setEvents} setEvents={setEvents}
hideErrors={settings.hideErrors} hideErrors={settings.hideErrors}
timezone={widget?.timezone}
className="fixed bottom-0 left-0 bg-red-500 w-screen h-12" className="fixed bottom-0 left-0 bg-red-500 w-screen h-12"
/> />
); );
@@ -106,6 +108,7 @@ export default function Component({ service }) {
events={events} events={events}
showDate={showDate} showDate={showDate}
setShowDate={setShowDate} setShowDate={setShowDate}
currentDate={currentDate}
className="flex" className="flex"
/> />
)} )}

View File

@@ -39,3 +39,4 @@ export default function Event({ event, colorVariants, showDate = false, showTime
</div> </div>
); );
} }
export const compareDateTimezone = (date, event) => date.startOf("day").ts === event.date.startOf("day").ts;

View File

@@ -7,7 +7,7 @@ import { RRule } from "rrule";
import useWidgetAPI from "../../../utils/proxy/use-widget-api"; import useWidgetAPI from "../../../utils/proxy/use-widget-api";
import Error from "../../../components/services/widget/error"; import Error from "../../../components/services/widget/error";
export default function Integration({ config, params, setEvents, hideErrors }) { export default function Integration({ config, params, setEvents, hideErrors, timezone }) {
const { t } = useTranslation(); const { t } = useTranslation();
const { data: icalData, error: icalError } = useWidgetAPI(config, config.name, { const { data: icalData, error: icalError } = useWidgetAPI(config, config.name, {
refreshInterval: 300000, // 5 minutes refreshInterval: 300000, // 5 minutes
@@ -32,6 +32,7 @@ export default function Integration({ config, params, setEvents, hideErrors }) {
const eventsToAdd = {}; const eventsToAdd = {};
const events = parsedIcal?.getEventsBetweenDates(startDate.toJSDate(), endDate.toJSDate()); const events = parsedIcal?.getEventsBetweenDates(startDate.toJSDate(), endDate.toJSDate());
const now = timezone ? DateTime.now().setZone(timezone) : DateTime.now();
events?.forEach((event) => { events?.forEach((event) => {
let title = `${event?.summary?.value}`; let title = `${event?.summary?.value}`;
@@ -43,31 +44,39 @@ export default function Integration({ config, params, setEvents, hideErrors }) {
const duration = event.dtend.value - event.dtstart.value; const duration = event.dtend.value - event.dtstart.value;
const days = duration / (1000 * 60 * 60 * 24); const days = duration / (1000 * 60 * 60 * 24);
const eventDate = timezone ? DateTime.fromJSDate(date, { zone: timezone }) : DateTime.fromJSDate(date);
for (let j = 0; j < days; j += 1) { for (let j = 0; j < days; j += 1) {
eventsToAdd[`${event?.uid?.value}${i}${j}${type}`] = { eventsToAdd[`${event?.uid?.value}${i}${j}${type}`] = {
title, title,
date: DateTime.fromJSDate(date).plus({ days: j }), date: eventDate.plus({ days: j }),
color: config?.color ?? "zinc", color: config?.color ?? "zinc",
isCompleted: DateTime.fromJSDate(date) < DateTime.now(), isCompleted: eventDate < now,
additional: event.location?.value, additional: event.location?.value,
type: "ical", type: "ical",
}; };
} }
}; };
if (event?.recurrenceRule?.options) { const recurrenceOptions = event?.recurrenceRule?.origOptions;
const rule = new RRule(event.recurrenceRule.options); if (recurrenceOptions && Object.keys(recurrenceOptions).length !== 0) {
const recurringEvents = rule.between(startDate.toJSDate(), endDate.toJSDate()); try {
const rule = new RRule(recurrenceOptions);
const recurringEvents = rule.between(startDate.toJSDate(), endDate.toJSDate());
recurringEvents.forEach((date, i) => eventToAdd(date, i, "recurring")); recurringEvents.forEach((date, i) => eventToAdd(date, i, "recurring"));
return; return;
} catch (e) {
// eslint-disable-next-line no-console
console.error("Unable to parse recurring events from iCal: %s", e);
}
} }
event.matchingDates.forEach((date, i) => eventToAdd(date, i, "single")); event.matchingDates.forEach((date, i) => eventToAdd(date, i, "single"));
}); });
setEvents((prevEvents) => ({ ...prevEvents, ...eventsToAdd })); setEvents((prevEvents) => ({ ...prevEvents, ...eventsToAdd }));
}, [icalData, icalError, config, params, setEvents, t]); }, [icalData, icalError, config, params, setEvents, timezone, t]);
const error = icalError ?? icalData?.error; const error = icalError ?? icalData?.error;
return error && !hideErrors && <Error error={{ message: `${config.type}: ${error.message ?? error}` }} />; return error && !hideErrors && <Error error={{ message: `${config.type}: ${error.message ?? error}` }} />;

View File

@@ -3,18 +3,14 @@ import { DateTime, Info } from "luxon";
import classNames from "classnames"; import classNames from "classnames";
import { useTranslation } from "next-i18next"; import { useTranslation } from "next-i18next";
import Event from "./event"; import Event, { compareDateTimezone } from "./event";
const cellStyle = "relative w-10 flex items-center justify-center flex-col"; const cellStyle = "relative w-10 flex items-center justify-center flex-col";
const monthButton = "pl-6 pr-6 ml-2 mr-2 hover:bg-theme-100/20 dark:hover:bg-white/5 rounded-md cursor-pointer"; const monthButton = "pl-6 pr-6 ml-2 mr-2 hover:bg-theme-100/20 dark:hover:bg-white/5 rounded-md cursor-pointer";
export function Day({ weekNumber, weekday, events, colorVariants, showDate, setShowDate }) { export function Day({ weekNumber, weekday, events, colorVariants, showDate, setShowDate, currentDate }) {
const currentDate = DateTime.now();
const cellDate = showDate.set({ weekday, weekNumber }).startOf("day"); const cellDate = showDate.set({ weekday, weekNumber }).startOf("day");
const filteredEvents = events?.filter( const filteredEvents = events?.filter((event) => compareDateTimezone(cellDate, event));
(event) => event.date?.startOf("day").toUnixInteger() === cellDate.toUnixInteger(),
);
const dayStyles = (displayDate) => { const dayStyles = (displayDate) => {
let style = "h-9 "; let style = "h-9 ";
@@ -79,10 +75,9 @@ const dayInWeekId = {
sunday: 7, sunday: 7,
}; };
export default function Monthly({ service, colorVariants, events, showDate, setShowDate }) { export default function Monthly({ service, colorVariants, events, showDate, setShowDate, currentDate }) {
const { widget } = service; const { widget } = service;
const { i18n } = useTranslation(); const { i18n } = useTranslation();
const currentDate = DateTime.now().setLocale(i18n.language).startOf("day");
const dayNames = Info.weekdays("short", { locale: i18n.language }); const dayNames = Info.weekdays("short", { locale: i18n.language });
@@ -111,6 +106,7 @@ export default function Monthly({ service, colorVariants, events, showDate, setS
} }
const eventsArray = Object.keys(events).map((eventKey) => events[eventKey]); const eventsArray = Object.keys(events).map((eventKey) => events[eventKey]);
eventsArray.sort((a, b) => a.date - b.date);
return ( return (
<div className="w-full text-center"> <div className="w-full text-center">
@@ -165,6 +161,7 @@ export default function Monthly({ service, colorVariants, events, showDate, setS
colorVariants={colorVariants} colorVariants={colorVariants}
showDate={showDate} showDate={showDate}
setShowDate={setShowDate} setShowDate={setShowDate}
currentDate={currentDate}
/> />
)), )),
)} )}
@@ -172,7 +169,7 @@ export default function Monthly({ service, colorVariants, events, showDate, setS
<div className="flex flex-col"> <div className="flex flex-col">
{eventsArray {eventsArray
?.filter((event) => showDate.startOf("day").ts === event.date?.startOf("day").ts) ?.filter((event) => compareDateTimezone(showDate, event))
.slice(0, widget?.maxEvents ?? 10) .slice(0, widget?.maxEvents ?? 10)
.map((event) => ( .map((event) => (
<Event <Event
@@ -180,7 +177,7 @@ export default function Monthly({ service, colorVariants, events, showDate, setS
event={event} event={event}
colorVariants={colorVariants} colorVariants={colorVariants}
showDateColumn={widget?.showTime ?? false} showDateColumn={widget?.showTime ?? false}
showTime={widget?.showTime && event.date.startOf("day").ts === showDate.startOf("day").ts} showTime={widget?.showTime && compareDateTimezone(showDate, event)}
/> />
))} ))}
</div> </div>

View File

@@ -58,6 +58,7 @@ const components = {
moonraker: dynamic(() => import("./moonraker/component")), moonraker: dynamic(() => import("./moonraker/component")),
mylar: dynamic(() => import("./mylar/component")), mylar: dynamic(() => import("./mylar/component")),
navidrome: dynamic(() => import("./navidrome/component")), navidrome: dynamic(() => import("./navidrome/component")),
netdata: dynamic(() => import("./netdata/component")),
nextcloud: dynamic(() => import("./nextcloud/component")), nextcloud: dynamic(() => import("./nextcloud/component")),
nextdns: dynamic(() => import("./nextdns/component")), nextdns: dynamic(() => import("./nextdns/component")),
npm: dynamic(() => import("./npm/component")), npm: dynamic(() => import("./npm/component")),
@@ -86,6 +87,7 @@ const components = {
qnap: dynamic(() => import("./qnap/component")), qnap: dynamic(() => import("./qnap/component")),
radarr: dynamic(() => import("./radarr/component")), radarr: dynamic(() => import("./radarr/component")),
readarr: dynamic(() => import("./readarr/component")), readarr: dynamic(() => import("./readarr/component")),
romm: dynamic(() => import("./romm/component")),
rutorrent: dynamic(() => import("./rutorrent/component")), rutorrent: dynamic(() => import("./rutorrent/component")),
sabnzbd: dynamic(() => import("./sabnzbd/component")), sabnzbd: dynamic(() => import("./sabnzbd/component")),
scrutiny: dynamic(() => import("./scrutiny/component")), scrutiny: dynamic(() => import("./scrutiny/component")),

View File

@@ -70,7 +70,20 @@ function formatValue(t, mapping, rawValue) {
value = t("common.bitrate", { value }); value = t("common.bitrate", { value });
break; break;
case "date": case "date":
value = t("common.date", { value, dateStyle: mapping?.dateStyle ?? "long", timeStyle: mapping?.timeStyle }); value = t("common.date", {
value,
lng: mapping?.locale,
dateStyle: mapping?.dateStyle ?? "long",
timeStyle: mapping?.timeStyle,
});
break;
case "relativeDate":
value = t("common.relativeDate", {
value,
lng: mapping?.locale,
style: mapping?.style,
numeric: mapping?.numeric,
});
break; break;
case "text": case "text":
default: default:

View File

@@ -27,6 +27,23 @@ function formatDate(dateString) {
return new Intl.DateTimeFormat(i18n.language, dateOptions).format(date); return new Intl.DateTimeFormat(i18n.language, dateOptions).format(date);
} }
function countStatus(data) {
let upCount = 0;
let downCount = 0;
if (data.checks) {
data.checks.forEach((check) => {
if (check.status === "up") {
upCount += 1;
} else if (check.status === "down") {
downCount += 1;
}
});
}
return { upCount, downCount };
}
export default function Component({ service }) { export default function Component({ service }) {
const { t } = useTranslation(); const { t } = useTranslation();
const { widget } = service; const { widget } = service;
@@ -46,13 +63,26 @@ export default function Component({ service }) {
); );
} }
const hasUuid = widget?.uuid;
const { upCount, downCount } = countStatus(data);
return ( return (
<Container service={service}> <Container service={service}>
<Block label="healthchecks.status" value={t(`healthchecks.${data.status}`)} /> {hasUuid ? (
<Block <>
label="healthchecks.last_ping" <Block label="healthchecks.status" value={t(`healthchecks.${data.status}`)} />
value={data.last_ping ? formatDate(data.last_ping) : t("healthchecks.never")} <Block
/> label="healthchecks.last_ping"
value={data.last_ping ? formatDate(data.last_ping) : t("healthchecks.never")}
/>
</>
) : (
<>
<Block label="healthchecks.up" value={upCount} />
<Block label="healthchecks.down" value={downCount} />
</>
)}
</Container> </Container>
); );
} }

View File

@@ -1,13 +1,12 @@
import credentialedProxyHandler from "utils/proxy/handlers/credentialed"; import credentialedProxyHandler from "utils/proxy/handlers/credentialed";
const widget = { const widget = {
api: "{url}/api/v2/{endpoint}/{uuid}", api: "{url}/api/v3/{endpoint}/{uuid}",
proxyHandler: credentialedProxyHandler, proxyHandler: credentialedProxyHandler,
mappings: { mappings: {
checks: { checks: {
endpoint: "checks", endpoint: "checks",
validate: ["status", "last_ping"],
}, },
}, },
}; };

View File

@@ -0,0 +1,33 @@
import { useTranslation } from "next-i18next";
import Container from "components/services/widget/container";
import Block from "components/services/widget/block";
import useWidgetAPI from "utils/proxy/use-widget-api";
export default function Component({ service }) {
const { t } = useTranslation();
const { widget } = service;
const { data: netdataData, error: netdataError } = useWidgetAPI(widget, "info");
if (netdataError) {
return <Container service={service} error={netdataError} />;
}
if (!netdataData) {
return (
<Container service={service}>
<Block label="netdata.warnings" />
<Block label="netdata.criticals" />
</Container>
);
}
return (
<Container service={service}>
<Block label="netdata.warnings" value={t("common.number", { value: netdataData.alarms.warning })} />
<Block label="netdata.criticals" value={t("common.number", { value: netdataData.alarms.critical })} />
</Container>
);
}

View File

@@ -0,0 +1,14 @@
import genericProxyHandler from "utils/proxy/handlers/generic";
const widget = {
api: "{url}/api/v1/{endpoint}",
proxyHandler: genericProxyHandler,
mappings: {
info: {
endpoint: "info",
},
},
};
export default widget;

View File

@@ -64,7 +64,7 @@ async function tryLogin(widget) {
const resp = await rpc(url, { const resp = await rpc(url, {
method: "login", method: "login",
service: "session", service: "session",
params: { username, password }, params: { username: username.toString(), password: password.toString() },
}); });
if (resp.status !== 200) { if (resp.status !== 200) {

View File

@@ -24,6 +24,17 @@ export default function Component({ service }) {
); );
} }
// backwards compatibility with peanut v1
if ("battery.charge" in upsData) {
upsData.battery_charge = upsData["battery.charge"];
}
if ("ups.load" in upsData) {
upsData.ups_load = upsData["ups.load"];
}
if ("ups.status" in upsData) {
upsData.ups_status = upsData["ups.status"];
}
let status; let status;
switch (upsData.ups_status) { switch (upsData.ups_status) {
case "OL": case "OL":

View File

@@ -0,0 +1,32 @@
import Container from "components/services/widget/container";
import Block from "components/services/widget/block";
import useWidgetAPI from "utils/proxy/use-widget-api";
export default function Component({ service }) {
const { widget } = service;
const { data: response, error: responseError } = useWidgetAPI(widget, "statistics");
if (responseError) {
return (
<Container service={service}>
<Block label="Error" value={responseError.message} />
</Container>
);
}
if (responseError) {
return <Container service={service} error={responseError} />;
}
if (response) {
const platforms = response.filter((x) => x.rom_count !== 0).length;
const totalRoms = response.reduce((total, stat) => total + stat.rom_count, 0);
return (
<Container service={service}>
<Block label="romm.platforms" value={platforms} />
<Block label="romm.totalRoms" value={totalRoms} />
</Container>
);
}
}

View File

@@ -0,0 +1,14 @@
import genericProxyHandler from "utils/proxy/handlers/generic";
const widget = {
api: "{url}/api/{endpoint}",
proxyHandler: genericProxyHandler,
mappings: {
statistics: {
endpoint: "platforms",
},
},
};
export default widget;

View File

@@ -50,6 +50,7 @@ import mjpeg from "./mjpeg/widget";
import moonraker from "./moonraker/widget"; import moonraker from "./moonraker/widget";
import mylar from "./mylar/widget"; import mylar from "./mylar/widget";
import navidrome from "./navidrome/widget"; import navidrome from "./navidrome/widget";
import netdata from "./netdata/widget";
import nextcloud from "./nextcloud/widget"; import nextcloud from "./nextcloud/widget";
import nextdns from "./nextdns/widget"; import nextdns from "./nextdns/widget";
import npm from "./npm/widget"; import npm from "./npm/widget";
@@ -100,6 +101,7 @@ import watchtower from "./watchtower/widget";
import whatsupdocker from "./whatsupdocker/widget"; import whatsupdocker from "./whatsupdocker/widget";
import xteve from "./xteve/widget"; import xteve from "./xteve/widget";
import urbackup from "./urbackup/widget"; import urbackup from "./urbackup/widget";
import romm from "./romm/widget";
const widgets = { const widgets = {
adguard, adguard,
@@ -155,6 +157,7 @@ const widgets = {
moonraker, moonraker,
mylar, mylar,
navidrome, navidrome,
netdata,
nextcloud, nextcloud,
nextdns, nextdns,
npm, npm,
@@ -184,6 +187,7 @@ const widgets = {
qnap, qnap,
radarr, radarr,
readarr, readarr,
romm,
rutorrent, rutorrent,
sabnzbd, sabnzbd,
scrutiny, scrutiny,