Compare commits

..

24 Commits

Author SHA1 Message Date
github-actions[bot]
986a18170c New Crowdin translations by GitHub Action (#3321)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-05-05 20:51:37 -07:00
Ben Phelps
198835a697 allow seperate href for widget container links
addresses #3140
2024-05-04 19:34:38 +03:00
dependabot[bot]
5efed2e740 Chore(deps-dev): Bump eslint-config-next from 12.3.4 to 14.2.3 (#3399)
Bumps [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) from 12.3.4 to 14.2.3.
- [Release notes](https://github.com/vercel/next.js/releases)
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js)
- [Commits](https://github.com/vercel/next.js/commits/v14.2.3/packages/eslint-config-next)

---
updated-dependencies:
- dependency-name: eslint-config-next
  dependency-type: direct:development
  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-05-01 12:08:26 -07:00
dependabot[bot]
43e258a58d Chore(deps): Bump react from 18.2.0 to 18.3.1 (#3400)
Bumps [react](https://github.com/facebook/react/tree/HEAD/packages/react) from 18.2.0 to 18.3.1.
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/v18.3.1/packages/react)

---
updated-dependencies:
- dependency-name: react
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-01 09:44:31 -07:00
dependabot[bot]
8ca7f422da Chore(deps): Bump systeminformation from 5.22.0 to 5.22.7 (#3398)
Bumps [systeminformation](https://github.com/sebhildebrandt/systeminformation) from 5.22.0 to 5.22.7.
- [Changelog](https://github.com/sebhildebrandt/systeminformation/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sebhildebrandt/systeminformation/compare/v5.22.0...v5.22.7)

---
updated-dependencies:
- dependency-name: systeminformation
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-01 09:44:07 -07:00
dependabot[bot]
4fc70eb1ff Chore(deps-dev): Bump typescript from 4.9.5 to 5.4.5 (#3396)
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.9.5 to 5.4.5.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.9.5...v5.4.5)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  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-05-01 09:43:52 -07:00
dependabot[bot]
d90bf8079a Chore(deps): Bump recharts from 2.12.3 to 2.12.6 (#3397)
Bumps [recharts](https://github.com/recharts/recharts) from 2.12.3 to 2.12.6.
- [Release notes](https://github.com/recharts/recharts/releases)
- [Changelog](https://github.com/recharts/recharts/blob/3.x/CHANGELOG.md)
- [Commits](https://github.com/recharts/recharts/compare/v2.12.3...v2.12.6)

---
updated-dependencies:
- dependency-name: recharts
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-01 09:24:21 -07:00
shamoon
ea63716b61 Fix: some error URLs aren't sanitized (#3385) 2024-04-29 17:18:55 -07:00
Edward Salter
daa51f9740 Fix: format Romm statistics (#3358) 2024-04-23 14:13:53 -07:00
Ameer Abdallah
340424391f Enhancement: add bitrate precision config option for speedtest-tracker (#3354)
---------

Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
2024-04-22 21:20:08 -07:00
Ameer Abdallah
312e97d18b Enhancement: additional tautulli jellyfin emby configuration options (#3350) 2024-04-22 17:49:19 -07:00
Liam Dyer
f4fc30cd9f Documentation: update Authentik suggested permissions (#3349) 2024-04-22 13:59:23 -07:00
Nuno Alexandre
595049f7fc Documentation: clarify uptime kuma slug (#3345)
---------

Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
2024-04-22 12:33:35 -07:00
shamoon
79e3eb9c90 Documentation: fix docker stats link 2024-04-21 07:12:49 -07:00
David Hirsch
c95837f54e Enhancement: configurable CPU temp scale (#3332)
---------

Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
2024-04-19 16:32:14 -07:00
lavavex
068e664f16 Documentation: correct Medusa link (#3320) 2024-04-17 17:00:37 -07:00
github-actions[bot]
12ec1cfdcb New Crowdin translations by GitHub Action (#3270)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-04-17 01:42:55 -07:00
shamoon
303a62369f Fix: pihole ads_percentage_today sometimes returned as string (#3313) 2024-04-16 15:50:32 -07:00
shamoon
034f6d29d6 Docs: show carbon ads on more pages too 2024-04-15 12:53:15 -07:00
Ben Phelps
60098d3909 Docs: move Carbon ads to sidebar (#3302) 2024-04-15 12:20:39 -07:00
Ben Phelps
2c68f1e7ee place carbon ads in docs (#3296)
* place carbon ads in docs

* fix lint

* keep 4 space tabs
2024-04-15 15:59:30 +03:00
brikim
bfd392026d Enhancement: option to show user for Tautulli and Emby/Jellyfin widgets (#3287)
---------

Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
2024-04-12 20:33:40 -07:00
shamoon
c18fd02c8e Fix typo in crowdsec docs 2024-04-08 15:19:35 -07:00
github-actions[bot]
ffad2b890e New Crowdin translations by GitHub Action (#3199)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-04-08 10:20:52 -07:00
69 changed files with 2004 additions and 1551 deletions

View File

@@ -235,4 +235,4 @@ You can show the docker stats by clicking the status indicator but this can also
showStats: true
```
Also see the settings for [show docker stats](docker.md#show-docker-stats).
Also see the settings for [show docker stats](settings.md#show-docker-stats).

47
docs/overrides/main.html Normal file
View File

@@ -0,0 +1,47 @@
{% extends "base.html" %}
{% block site_nav %}
<!-- Navigation -->
{% if nav %}
{% if page.meta and page.meta.hide %}
{% set hidden = "hidden" if "navigation" in page.meta.hide %}
{% endif %}
<div
class="md-sidebar md-sidebar--primary"
data-md-component="sidebar"
data-md-type="navigation"
{{ hidden }}
>
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
{% include "partials/nav.html" %}
{% if 'widgets/' not in page.url and 'more/' not in page.url %}
<script async type="text/javascript" src="//cdn.carbonads.com/carbon.js?serve=CWYIL2JU&placement=gethomepagedev&format=cover" id="_carbonads_js"></script>
{% endif %}
</div>
</div>
</div>
{% endif %}
<!-- Table of contents -->
{% if "toc.integrate" not in features %}
{% if page.meta and page.meta.hide %}
{% set hidden = "hidden" if "toc" in page.meta.hide %}
{% endif %}
<div
class="md-sidebar md-sidebar--secondary"
data-md-component="sidebar"
data-md-type="toc"
{{ hidden }}
>
<div class="md-sidebar__scrollwrap" style="height: 200px;">
<div class="md-sidebar__inner">
{% include "partials/toc.html" %}
{% if 'widgets/' in page.url or 'more/' in page.url %}
<script async type="text/javascript" src="//cdn.carbonads.com/carbon.js?serve=CWYIL2JU&placement=gethomepagedev&format=cover" id="_carbonads_js"></script>
{% endif %}
</div>
</div>
</div>
{% endif %}
{% endblock %}

View File

@@ -22,3 +22,15 @@
#glimeRoot * {
font-family: var(--md-text-font) !important;
}
#carbonads {
margin-top: 10px;
}
#carbon-responsive {
--carbon-padding: 1em;
--carbon-max-char: 20ch;
--carbon-bg-primary: var(--md-default-bg-color) !important;
--carbon-bg-secondary: var(--md-default-fg-color--lightest) !important;
--carbon-text-color: var(--md-typeset-color) !important;
}

View File

@@ -19,6 +19,8 @@ _Note: unfortunately, the package used for getting CPU temp ([systeminformation]
memory: true
disk: /disk/mount/path
cputemp: true
tempmin: 0 # optional, minimum cpu temp
tempmax: 100 # optional, maximum cpu temp
uptime: true
units: imperial # only used by cpu temp
refresh: 3000 # optional, in ms

View File

@@ -12,10 +12,8 @@ Make sure to set Intent to "API Token".
The account you made the API token for also needs the following **Assigned global permissions** in Authentik:
- authentik Core
- User
- authentik Events
- Event
- authentik Core -> Can view User (Model: User)
- authentik Events -> Can view Event (Model: Event)
Allowed fields: `["users", "loginsLast24H", "failedLoginsLast24H"]`.

View File

@@ -15,5 +15,5 @@ widget:
type: crowdsec
url: http://crowdsechostorip:port
username: localhost # machine_id in crowdsec
passowrd: password
password: password
```

View File

@@ -16,4 +16,7 @@ widget:
key: apikeyapikeyapikeyapikeyapikey
enableBlocks: true # optional, defaults to false
enableNowPlaying: true # optional, defaults to true
enableUser: true # optional, defaults to false
showEpisodeNumber: true # optional, defaults to false
expandOneStreamToTwoRows: false # optional, defaults to true
```

View File

@@ -16,4 +16,7 @@ widget:
key: apikeyapikeyapikeyapikeyapikey
enableBlocks: true # optional, defaults to false
enableNowPlaying: true # optional, defaults to true
enableUser: true # optional, defaults to false
showEpisodeNumber: true # optional, defaults to false
expandOneStreamToTwoRows: false # optional, defaults to true
```

View File

@@ -3,7 +3,7 @@ title: Medusa
description: Medusa Widget Configuration
---
Learn more about [Medusa](https://github.com/medusajs/medusa).
Learn more about [Medusa](https://github.com/pymedusa/Medusa).
Allowed fields: `["wanted", "queued", "series"]`.

View File

@@ -14,4 +14,7 @@ widget:
type: tautulli
url: http://tautulli.host.or.ip
key: apikeyapikeyapikeyapikeyapikey
enableUser: true # optional, defaults to false
showEpisodeNumber: true # optional, defaults to false
expandOneStreamToTwoRows: false # optional, defaults to true
```

View File

@@ -16,4 +16,5 @@ Allowed fields: `["download", "upload", "ping"]`.
widget:
type: speedtest
url: http://speedtest.host.or.ip
bitratePrecision: 3 # optional, default is 0
```

View File

@@ -5,7 +5,7 @@ description: Uptime Kuma Widget Configuration
Learn more about [Uptime Kuma](https://github.com/louislam/uptime-kuma).
As Uptime Kuma does not yet have a full API the widget uses data from a single "status page". As such you will need a status page setup with a group of monitored sites, which is where you get the slug (without the `/status/` portion).
As Uptime Kuma does not yet have a full API the widget uses data from a single "status page". As such you will need a status page setup with a group of monitored sites, which is where you get the slug (the url without the `/status/` portion). E.g. if your status page is URL http://uptimekuma.host/status/statuspageslug, insert `slug: statuspageslug`.
Allowed fields: `["up", "down", "uptime", "incident"]`.

View File

@@ -90,6 +90,7 @@ nav:
- widgets/services/mylar.md
- widgets/services/navidrome.md
- widgets/services/netdata.md
- widgets/services/netalertx.md
- widgets/services/nextcloud.md
- widgets/services/nextdns.md
- widgets/services/nginx-proxy-manager.md
@@ -100,12 +101,12 @@ nav:
- widgets/services/opendtu.md
- widgets/services/openmediavault.md
- widgets/services/opnsense.md
- widgets/services/openwrt.md
- widgets/services/overseerr.md
- widgets/services/paperlessngx.md
- widgets/services/peanut.md
- widgets/services/pfsense.md
- widgets/services/photoprism.md
- widgets/services/pialert.md
- widgets/services/pihole.md
- widgets/services/plantit.md
- widgets/services/plex-tautulli.md
@@ -130,6 +131,7 @@ nav:
- widgets/services/stash.md
- widgets/services/syncthing-relay-server.md
- widgets/services/tailscale.md
- widgets/services/tandoor.md
- widgets/services/tdarr.md
- widgets/services/traefik.md
- widgets/services/transmission.md
@@ -166,6 +168,7 @@ nav:
theme:
name: material
custom_dir: docs/overrides
language: en
palette:
- media: "(prefers-color-scheme)"

202
package-lock.json generated
View File

@@ -27,14 +27,14 @@
"ping": "^0.4.4",
"pretty-bytes": "^6.1.1",
"raw-body": "^2.5.2",
"react": "^18.2.0",
"react": "^18.3.1",
"react-dom": "^18.2.0",
"react-i18next": "^11.18.6",
"react-icons": "^4.12.0",
"recharts": "^2.12.3",
"recharts": "^2.12.6",
"rrule": "^2.8.1",
"swr": "^1.3.0",
"systeminformation": "^5.22.0",
"systeminformation": "^5.22.7",
"tough-cookie": "^4.1.3",
"urbackup-server-api": "^0.8.9",
"winston": "^3.11.0",
@@ -45,7 +45,7 @@
"autoprefixer": "^10.4.17",
"eslint": "^8.57.0",
"eslint-config-airbnb": "^19.0.4",
"eslint-config-next": "^12.3.4",
"eslint-config-next": "^14.2.3",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-import": "^2.29.1",
"eslint-plugin-jsx-a11y": "^6.8.0",
@@ -56,7 +56,7 @@
"prettier": "^3.2.5",
"tailwind-scrollbar": "^3.0.5",
"tailwindcss": "^3.4.3",
"typescript": "^4.9.5"
"typescript": "^5.4.5"
},
"optionalDependencies": {
"osx-temperature-sensor": "^1.0.8"
@@ -344,12 +344,58 @@
"integrity": "sha512-H/69Lc5Q02dq3o+dxxy5O/oNxFsZpdL6WREtOOtOM1B/weonIwDXkekr1KV5DPVPr12IHFPrMrcJQ6bgPMfn7A=="
},
"node_modules/@next/eslint-plugin-next": {
"version": "12.3.4",
"resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-12.3.4.tgz",
"integrity": "sha512-BFwj8ykJY+zc1/jWANsDprDIu2MgwPOIKxNVnrKvPs+f5TPegrVnem8uScND+1veT4B7F6VeqgaNLFW1Hzl9Og==",
"version": "14.2.3",
"resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.3.tgz",
"integrity": "sha512-L3oDricIIjgj1AVnRdRor21gI7mShlSwU/1ZGHmqM3LzHhXXhdkrfeNY5zif25Bi5Dd7fiJHsbhoZCHfXYvlAw==",
"dev": true,
"dependencies": {
"glob": "7.1.7"
"glob": "10.3.10"
}
},
"node_modules/@next/eslint-plugin-next/node_modules/brace-expansion": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
"integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
"dev": true,
"dependencies": {
"balanced-match": "^1.0.0"
}
},
"node_modules/@next/eslint-plugin-next/node_modules/glob": {
"version": "10.3.10",
"resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz",
"integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==",
"dev": true,
"dependencies": {
"foreground-child": "^3.1.0",
"jackspeak": "^2.3.5",
"minimatch": "^9.0.1",
"minipass": "^5.0.0 || ^6.0.2 || ^7.0.0",
"path-scurry": "^1.10.1"
},
"bin": {
"glob": "dist/esm/bin.mjs"
},
"engines": {
"node": ">=16 || 14 >=14.17"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/@next/eslint-plugin-next/node_modules/minimatch": {
"version": "9.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz",
"integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==",
"dev": true,
"dependencies": {
"brace-expansion": "^2.0.1"
},
"engines": {
"node": ">=16 || 14 >=14.17"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/@next/swc-android-arm-eabi": {
@@ -2318,6 +2364,19 @@
"once": "^1.4.0"
}
},
"node_modules/enhanced-resolve": {
"version": "5.16.0",
"resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.16.0.tgz",
"integrity": "sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==",
"dev": true,
"dependencies": {
"graceful-fs": "^4.2.4",
"tapable": "^2.2.0"
},
"engines": {
"node": ">=10.13.0"
}
},
"node_modules/entities": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
@@ -2604,20 +2663,20 @@
}
},
"node_modules/eslint-config-next": {
"version": "12.3.4",
"resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-12.3.4.tgz",
"integrity": "sha512-WuT3gvgi7Bwz00AOmKGhOeqnyA5P29Cdyr0iVjLyfDbk+FANQKcOjFUTZIdyYfe5Tq1x4TGcmoe4CwctGvFjHQ==",
"version": "14.2.3",
"resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.3.tgz",
"integrity": "sha512-ZkNztm3Q7hjqvB1rRlOX8P9E/cXRL9ajRcs8jufEtwMfTVYRqnmtnaSu57QqHyBlovMuiB8LEzfLBkh5RYV6Fg==",
"dev": true,
"dependencies": {
"@next/eslint-plugin-next": "12.3.4",
"@rushstack/eslint-patch": "^1.1.3",
"@typescript-eslint/parser": "^5.21.0",
"@next/eslint-plugin-next": "14.2.3",
"@rushstack/eslint-patch": "^1.3.3",
"@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0",
"eslint-import-resolver-node": "^0.3.6",
"eslint-import-resolver-typescript": "^2.7.1",
"eslint-plugin-import": "^2.26.0",
"eslint-plugin-jsx-a11y": "^6.5.1",
"eslint-plugin-react": "^7.31.7",
"eslint-plugin-react-hooks": "^4.5.0"
"eslint-import-resolver-typescript": "^3.5.2",
"eslint-plugin-import": "^2.28.1",
"eslint-plugin-jsx-a11y": "^6.7.1",
"eslint-plugin-react": "^7.33.2",
"eslint-plugin-react-hooks": "^4.5.0 || 5.0.0-canary-7118f5dd7-20230705"
},
"peerDependencies": {
"eslint": "^7.23.0 || ^8.0.0",
@@ -2662,45 +2721,30 @@
}
},
"node_modules/eslint-import-resolver-typescript": {
"version": "2.7.1",
"resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-2.7.1.tgz",
"integrity": "sha512-00UbgGwV8bSgUv34igBDbTOtKhqoRMy9bFjNehT40bXg6585PNIct8HhXZ0SybqB9rWtXj9crcku8ndDn/gIqQ==",
"version": "3.6.1",
"resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.6.1.tgz",
"integrity": "sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==",
"dev": true,
"dependencies": {
"debug": "^4.3.4",
"glob": "^7.2.0",
"is-glob": "^4.0.3",
"resolve": "^1.22.0",
"tsconfig-paths": "^3.14.1"
"enhanced-resolve": "^5.12.0",
"eslint-module-utils": "^2.7.4",
"fast-glob": "^3.3.1",
"get-tsconfig": "^4.5.0",
"is-core-module": "^2.11.0",
"is-glob": "^4.0.3"
},
"engines": {
"node": ">=4"
"node": "^14.18.0 || >=16.0.0"
},
"funding": {
"url": "https://opencollective.com/unts/projects/eslint-import-resolver-ts"
},
"peerDependencies": {
"eslint": "*",
"eslint-plugin-import": "*"
}
},
"node_modules/eslint-import-resolver-typescript/node_modules/glob": {
"version": "7.2.3",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
"integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
"dev": true,
"dependencies": {
"fs.realpath": "^1.0.0",
"inflight": "^1.0.4",
"inherits": "2",
"minimatch": "^3.1.1",
"once": "^1.3.0",
"path-is-absolute": "^1.0.0"
},
"engines": {
"node": "*"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/eslint-module-utils": {
"version": "2.8.0",
"resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz",
@@ -3436,6 +3480,18 @@
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/get-tsconfig": {
"version": "4.7.3",
"resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.3.tgz",
"integrity": "sha512-ZvkrzoUA0PQZM6fy6+/Hce561s+faD1rsNwhnO5FelNjyy7EMGJ3Rz1AQ8GYDWjhRs/7dBLOEJvhK8MiEJOAFg==",
"dev": true,
"dependencies": {
"resolve-pkg-maps": "^1.0.0"
},
"funding": {
"url": "https://github.com/privatenumber/get-tsconfig?sponsor=1"
}
},
"node_modules/getpass": {
"version": "0.1.7",
"resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
@@ -3561,6 +3617,12 @@
"url": "https://github.com/sindresorhus/got?sponsor=1"
}
},
"node_modules/graceful-fs": {
"version": "4.2.11",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
"integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
"dev": true
},
"node_modules/graphemer": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz",
@@ -5652,9 +5714,9 @@
}
},
"node_modules/react": {
"version": "18.2.0",
"resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz",
"integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==",
"version": "18.3.1",
"resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz",
"integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==",
"dependencies": {
"loose-envify": "^1.1.0"
},
@@ -5772,9 +5834,9 @@
}
},
"node_modules/recharts": {
"version": "2.12.3",
"resolved": "https://registry.npmjs.org/recharts/-/recharts-2.12.3.tgz",
"integrity": "sha512-vE/F7wTlokf5mtCqVDJlVKelCjliLSJ+DJxj79XlMREm7gpV7ljwbrwE3CfeaoDlOaLX+6iwHaVRn9587YkwIg==",
"version": "2.12.6",
"resolved": "https://registry.npmjs.org/recharts/-/recharts-2.12.6.tgz",
"integrity": "sha512-D+7j9WI+D0NHauah3fKHuNNcRK8bOypPW7os1DERinogGBGaHI7i6tQKJ0aUF3JXyBZ63dyfKIW2WTOPJDxJ8w==",
"dependencies": {
"clsx": "^2.0.0",
"eventemitter3": "^4.0.1",
@@ -5933,6 +5995,15 @@
"node": ">=4"
}
},
"node_modules/resolve-pkg-maps": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz",
"integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==",
"dev": true,
"funding": {
"url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1"
}
},
"node_modules/responselike": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/responselike/-/responselike-3.0.0.tgz",
@@ -6663,9 +6734,9 @@
}
},
"node_modules/systeminformation": {
"version": "5.22.0",
"resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.22.0.tgz",
"integrity": "sha512-oAP80ymt8ssrAzjX8k3frbL7ys6AotqC35oikG6/SG15wBw+tG9nCk4oPaXIhEaAOAZ8XngxUv3ORq2IuR3r4Q==",
"version": "5.22.7",
"resolved": "https://registry.npmjs.org/systeminformation/-/systeminformation-5.22.7.tgz",
"integrity": "sha512-AWxlP05KeHbpGdgvZkcudJpsmChc2Y5Eo/GvxG/iUA/Aws5LZKHAMSeAo+V+nD+nxWZaxrwpWcnx4SH3oxNL3A==",
"os": [
"darwin",
"linux",
@@ -6789,6 +6860,15 @@
"node": ">=14"
}
},
"node_modules/tapable": {
"version": "2.2.1",
"resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
"integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
"dev": true,
"engines": {
"node": ">=6"
}
},
"node_modules/tar": {
"version": "6.2.0",
"resolved": "https://registry.npmjs.org/tar/-/tar-6.2.0.tgz",
@@ -7091,16 +7171,16 @@
}
},
"node_modules/typescript": {
"version": "4.9.5",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz",
"integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==",
"version": "5.4.5",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz",
"integrity": "sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==",
"dev": true,
"bin": {
"tsc": "bin/tsc",
"tsserver": "bin/tsserver"
},
"engines": {
"node": ">=4.2.0"
"node": ">=14.17"
}
},
"node_modules/unbox-primitive": {

View File

@@ -29,14 +29,14 @@
"ping": "^0.4.4",
"pretty-bytes": "^6.1.1",
"raw-body": "^2.5.2",
"react": "^18.2.0",
"react": "^18.3.1",
"react-dom": "^18.2.0",
"react-i18next": "^11.18.6",
"react-icons": "^4.12.0",
"recharts": "^2.12.3",
"recharts": "^2.12.6",
"rrule": "^2.8.1",
"swr": "^1.3.0",
"systeminformation": "^5.22.0",
"systeminformation": "^5.22.7",
"tough-cookie": "^4.1.3",
"urbackup-server-api": "^0.8.9",
"winston": "^3.11.0",
@@ -47,7 +47,7 @@
"autoprefixer": "^10.4.17",
"eslint": "^8.57.0",
"eslint-config-airbnb": "^19.0.4",
"eslint-config-next": "^12.3.4",
"eslint-config-next": "^14.2.3",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-import": "^2.29.1",
"eslint-plugin-jsx-a11y": "^6.8.0",
@@ -58,7 +58,7 @@
"prettier": "^3.2.5",
"tailwind-scrollbar": "^3.0.5",
"tailwindcss": "^3.4.3",
"typescript": "^4.9.5"
"typescript": "^5.4.5"
},
"optionalDependencies": {
"osx-temperature-sensor": "^1.0.8"

241
pnpm-lock.yaml generated
View File

@@ -7,7 +7,7 @@ settings:
dependencies:
'@headlessui/react':
specifier: ^1.7.18
version: 1.7.18(react-dom@18.2.0)(react@18.2.0)
version: 1.7.18(react-dom@18.2.0)(react@18.3.1)
'@kubernetes/client-node':
specifier: ^0.17.1
version: 0.17.1
@@ -49,10 +49,10 @@ dependencies:
version: 1.0.2
next:
specifier: ^12.3.4
version: 12.3.4(react-dom@18.2.0)(react@18.2.0)
version: 12.3.4(react-dom@18.2.0)(react@18.3.1)
next-i18next:
specifier: ^12.1.0
version: 12.1.0(next@12.3.4)(react-dom@18.2.0)(react@18.2.0)
version: 12.1.0(next@12.3.4)(react-dom@18.2.0)(react@18.3.1)
ping:
specifier: ^0.4.4
version: 0.4.4
@@ -63,29 +63,29 @@ dependencies:
specifier: ^2.5.2
version: 2.5.2
react:
specifier: ^18.2.0
version: 18.2.0
specifier: ^18.3.1
version: 18.3.1
react-dom:
specifier: ^18.2.0
version: 18.2.0(react@18.2.0)
version: 18.2.0(react@18.3.1)
react-i18next:
specifier: ^11.18.6
version: 11.18.6(i18next@21.10.0)(react-dom@18.2.0)(react@18.2.0)
version: 11.18.6(i18next@21.10.0)(react-dom@18.2.0)(react@18.3.1)
react-icons:
specifier: ^4.12.0
version: 4.12.0(react@18.2.0)
version: 4.12.0(react@18.3.1)
recharts:
specifier: ^2.12.3
version: 2.12.3(react-dom@18.2.0)(react@18.2.0)
specifier: ^2.12.6
version: 2.12.6(react-dom@18.2.0)(react@18.3.1)
rrule:
specifier: ^2.8.1
version: 2.8.1
swr:
specifier: ^1.3.0
version: 1.3.0(react@18.2.0)
version: 1.3.0(react@18.3.1)
systeminformation:
specifier: ^5.22.0
version: 5.22.0
specifier: ^5.22.7
version: 5.22.7
tough-cookie:
specifier: ^4.1.3
version: 4.1.3
@@ -118,14 +118,14 @@ devDependencies:
specifier: ^19.0.4
version: 19.0.4(eslint-plugin-import@2.29.1)(eslint-plugin-jsx-a11y@6.8.0)(eslint-plugin-react-hooks@4.6.0)(eslint-plugin-react@7.34.1)(eslint@8.57.0)
eslint-config-next:
specifier: ^12.3.4
version: 12.3.4(eslint@8.57.0)(typescript@4.9.5)
specifier: ^14.2.3
version: 14.2.3(eslint@8.57.0)(typescript@5.4.5)
eslint-config-prettier:
specifier: ^9.1.0
version: 9.1.0(eslint@8.57.0)
eslint-plugin-import:
specifier: ^2.29.1
version: 2.29.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@2.7.1)(eslint@8.57.0)
version: 2.29.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
eslint-plugin-jsx-a11y:
specifier: ^6.8.0
version: 6.8.0(eslint@8.57.0)
@@ -151,8 +151,8 @@ devDependencies:
specifier: ^3.4.3
version: 3.4.3
typescript:
specifier: ^4.9.5
version: 4.9.5
specifier: ^5.4.5
version: 5.4.5
packages:
@@ -226,17 +226,17 @@ packages:
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dev: true
/@headlessui/react@1.7.18(react-dom@18.2.0)(react@18.2.0):
/@headlessui/react@1.7.18(react-dom@18.2.0)(react@18.3.1):
resolution: {integrity: sha512-4i5DOrzwN4qSgNsL4Si61VMkUcWbcSKueUV7sFhpHzQcSShdlHENE5+QBntMSRvHt8NyoFO2AGG8si9lq+w4zQ==}
engines: {node: '>=10'}
peerDependencies:
react: ^16 || ^17 || ^18
react-dom: ^16 || ^17 || ^18
dependencies:
'@tanstack/react-virtual': 3.0.2(react-dom@18.2.0)(react@18.2.0)
'@tanstack/react-virtual': 3.0.2(react-dom@18.2.0)(react@18.3.1)
client-only: 0.0.1
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
react: 18.3.1
react-dom: 18.2.0(react@18.3.1)
dev: false
/@humanwhocodes/config-array@0.11.14:
@@ -329,10 +329,10 @@ packages:
resolution: {integrity: sha512-H/69Lc5Q02dq3o+dxxy5O/oNxFsZpdL6WREtOOtOM1B/weonIwDXkekr1KV5DPVPr12IHFPrMrcJQ6bgPMfn7A==}
dev: false
/@next/eslint-plugin-next@12.3.4:
resolution: {integrity: sha512-BFwj8ykJY+zc1/jWANsDprDIu2MgwPOIKxNVnrKvPs+f5TPegrVnem8uScND+1veT4B7F6VeqgaNLFW1Hzl9Og==}
/@next/eslint-plugin-next@14.2.3:
resolution: {integrity: sha512-L3oDricIIjgj1AVnRdRor21gI7mShlSwU/1ZGHmqM3LzHhXXhdkrfeNY5zif25Bi5Dd7fiJHsbhoZCHfXYvlAw==}
dependencies:
glob: 7.1.7
glob: 10.3.10
dev: true
/@next/swc-android-arm-eabi@12.3.4:
@@ -511,15 +511,15 @@ packages:
tailwindcss: 3.4.3
dev: true
/@tanstack/react-virtual@3.0.2(react-dom@18.2.0)(react@18.2.0):
/@tanstack/react-virtual@3.0.2(react-dom@18.2.0)(react@18.3.1):
resolution: {integrity: sha512-9XbRLPKgnhMwwmuQMnJMv+5a9sitGNCSEtf/AZXzmJdesYk7XsjYHaEDny+IrJzvPNwZliIIDwCRiaUqR3zzCA==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
dependencies:
'@tanstack/virtual-core': 3.0.0
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
react: 18.3.1
react-dom: 18.2.0(react@18.3.1)
dev: false
/@tanstack/virtual-core@3.0.0:
@@ -603,7 +603,7 @@ packages:
resolution: {integrity: sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==}
dev: false
/@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@4.9.5):
/@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.4.5):
resolution: {integrity: sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
@@ -615,10 +615,10 @@ packages:
dependencies:
'@typescript-eslint/scope-manager': 5.62.0
'@typescript-eslint/types': 5.62.0
'@typescript-eslint/typescript-estree': 5.62.0(typescript@4.9.5)
'@typescript-eslint/typescript-estree': 5.62.0(typescript@5.4.5)
debug: 4.3.4
eslint: 8.57.0
typescript: 4.9.5
typescript: 5.4.5
transitivePeerDependencies:
- supports-color
dev: true
@@ -636,7 +636,7 @@ packages:
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dev: true
/@typescript-eslint/typescript-estree@5.62.0(typescript@4.9.5):
/@typescript-eslint/typescript-estree@5.62.0(typescript@5.4.5):
resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
@@ -651,8 +651,8 @@ packages:
globby: 11.1.0
is-glob: 4.0.3
semver: 7.5.4
tsutils: 3.21.0(typescript@4.9.5)
typescript: 4.9.5
tsutils: 3.21.0(typescript@5.4.5)
typescript: 5.4.5
transitivePeerDependencies:
- supports-color
dev: true
@@ -1596,6 +1596,14 @@ packages:
once: 1.4.0
dev: false
/enhanced-resolve@5.16.0:
resolution: {integrity: sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==}
engines: {node: '>=10.13.0'}
dependencies:
graceful-fs: 4.2.11
tapable: 2.2.1
dev: true
/entities@4.5.0:
resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
engines: {node: '>=0.12'}
@@ -1808,7 +1816,7 @@ packages:
dependencies:
confusing-browser-globals: 1.0.11
eslint: 8.57.0
eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@2.7.1)(eslint@8.57.0)
eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
object.assign: 4.1.5
object.entries: 1.1.7
semver: 6.3.1
@@ -1826,7 +1834,7 @@ packages:
dependencies:
eslint: 8.57.0
eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.1)(eslint@8.57.0)
eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@2.7.1)(eslint@8.57.0)
eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
eslint-plugin-jsx-a11y: 6.8.0(eslint@8.57.0)
eslint-plugin-react: 7.34.1(eslint@8.57.0)
eslint-plugin-react-hooks: 4.6.0(eslint@8.57.0)
@@ -1834,8 +1842,8 @@ packages:
object.entries: 1.1.7
dev: true
/eslint-config-next@12.3.4(eslint@8.57.0)(typescript@4.9.5):
resolution: {integrity: sha512-WuT3gvgi7Bwz00AOmKGhOeqnyA5P29Cdyr0iVjLyfDbk+FANQKcOjFUTZIdyYfe5Tq1x4TGcmoe4CwctGvFjHQ==}
/eslint-config-next@14.2.3(eslint@8.57.0)(typescript@5.4.5):
resolution: {integrity: sha512-ZkNztm3Q7hjqvB1rRlOX8P9E/cXRL9ajRcs8jufEtwMfTVYRqnmtnaSu57QqHyBlovMuiB8LEzfLBkh5RYV6Fg==}
peerDependencies:
eslint: ^7.23.0 || ^8.0.0
typescript: '>=3.3.1'
@@ -1843,17 +1851,17 @@ packages:
typescript:
optional: true
dependencies:
'@next/eslint-plugin-next': 12.3.4
'@next/eslint-plugin-next': 14.2.3
'@rushstack/eslint-patch': 1.7.2
'@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@4.9.5)
'@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.4.5)
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
eslint-import-resolver-typescript: 2.7.1(eslint-plugin-import@2.29.1)(eslint@8.57.0)
eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@2.7.1)(eslint@8.57.0)
eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
eslint-plugin-jsx-a11y: 6.8.0(eslint@8.57.0)
eslint-plugin-react: 7.34.1(eslint@8.57.0)
eslint-plugin-react-hooks: 4.6.0(eslint@8.57.0)
typescript: 4.9.5
typescript: 5.4.5
transitivePeerDependencies:
- eslint-import-resolver-webpack
- supports-color
@@ -1878,25 +1886,30 @@ packages:
- supports-color
dev: true
/eslint-import-resolver-typescript@2.7.1(eslint-plugin-import@2.29.1)(eslint@8.57.0):
resolution: {integrity: sha512-00UbgGwV8bSgUv34igBDbTOtKhqoRMy9bFjNehT40bXg6585PNIct8HhXZ0SybqB9rWtXj9crcku8ndDn/gIqQ==}
engines: {node: '>=4'}
/eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0):
resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==}
engines: {node: ^14.18.0 || >=16.0.0}
peerDependencies:
eslint: '*'
eslint-plugin-import: '*'
dependencies:
debug: 4.3.4
enhanced-resolve: 5.16.0
eslint: 8.57.0
eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@2.7.1)(eslint@8.57.0)
glob: 7.2.3
eslint-module-utils: 2.8.0(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
fast-glob: 3.3.2
get-tsconfig: 4.7.3
is-core-module: 2.13.1
is-glob: 4.0.3
resolve: 1.22.8
tsconfig-paths: 3.15.0
transitivePeerDependencies:
- '@typescript-eslint/parser'
- eslint-import-resolver-node
- eslint-import-resolver-webpack
- supports-color
dev: true
/eslint-module-utils@2.8.0(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@2.7.1)(eslint@8.57.0):
/eslint-module-utils@2.8.0(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0):
resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==}
engines: {node: '>=4'}
peerDependencies:
@@ -1917,16 +1930,16 @@ packages:
eslint-import-resolver-webpack:
optional: true
dependencies:
'@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@4.9.5)
'@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.4.5)
debug: 3.2.7
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
eslint-import-resolver-typescript: 2.7.1(eslint-plugin-import@2.29.1)(eslint@8.57.0)
eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
transitivePeerDependencies:
- supports-color
dev: true
/eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@2.7.1)(eslint@8.57.0):
/eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0):
resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==}
engines: {node: '>=4'}
peerDependencies:
@@ -1936,7 +1949,7 @@ packages:
'@typescript-eslint/parser':
optional: true
dependencies:
'@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@4.9.5)
'@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.4.5)
array-includes: 3.1.7
array.prototype.findlastindex: 1.2.3
array.prototype.flat: 1.3.2
@@ -1945,7 +1958,7 @@ packages:
doctrine: 2.1.0
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
eslint-module-utils: 2.8.0(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@2.7.1)(eslint@8.57.0)
eslint-module-utils: 2.8.0(@typescript-eslint/parser@5.62.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
hasown: 2.0.0
is-core-module: 2.13.1
is-glob: 4.0.3
@@ -2398,6 +2411,12 @@ packages:
get-intrinsic: 1.2.4
dev: true
/get-tsconfig@4.7.3:
resolution: {integrity: sha512-ZvkrzoUA0PQZM6fy6+/Hce561s+faD1rsNwhnO5FelNjyy7EMGJ3Rz1AQ8GYDWjhRs/7dBLOEJvhK8MiEJOAFg==}
dependencies:
resolve-pkg-maps: 1.0.0
dev: true
/getpass@0.1.7:
resolution: {integrity: sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==}
dependencies:
@@ -2430,17 +2449,6 @@ packages:
path-scurry: 1.10.1
dev: true
/glob@7.1.7:
resolution: {integrity: sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==}
dependencies:
fs.realpath: 1.0.0
inflight: 1.0.6
inherits: 2.0.4
minimatch: 3.1.2
once: 1.4.0
path-is-absolute: 1.0.1
dev: true
/glob@7.2.3:
resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
dependencies:
@@ -2500,6 +2508,10 @@ packages:
responselike: 3.0.0
dev: false
/graceful-fs@4.2.11:
resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
dev: true
/graphemer@1.4.0:
resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
dev: true
@@ -3302,7 +3314,7 @@ packages:
resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
dev: true
/next-i18next@12.1.0(next@12.3.4)(react-dom@18.2.0)(react@18.2.0):
/next-i18next@12.1.0(next@12.3.4)(react-dom@18.2.0)(react@18.3.1):
resolution: {integrity: sha512-rhos/PVULmZPdC0jpec2MDBQMXdGZ3+Mbh/tZfrDtjgnVN3ucdq7k8BlwsJNww6FnqC8AC31n6dSYuqVzYsGsw==}
engines: {node: '>=12'}
peerDependencies:
@@ -3315,15 +3327,15 @@ packages:
hoist-non-react-statics: 3.3.2
i18next: 21.10.0
i18next-fs-backend: 1.2.0
next: 12.3.4(react-dom@18.2.0)(react@18.2.0)
react: 18.2.0
react-i18next: 11.18.6(i18next@21.10.0)(react-dom@18.2.0)(react@18.2.0)
next: 12.3.4(react-dom@18.2.0)(react@18.3.1)
react: 18.3.1
react-i18next: 11.18.6(i18next@21.10.0)(react-dom@18.2.0)(react@18.3.1)
transitivePeerDependencies:
- react-dom
- react-native
dev: false
/next@12.3.4(react-dom@18.2.0)(react@18.2.0):
/next@12.3.4(react-dom@18.2.0)(react@18.3.1):
resolution: {integrity: sha512-VcyMJUtLZBGzLKo3oMxrEF0stxh8HwuW976pAzlHhI3t8qJ4SROjCrSh1T24bhrbjw55wfZXAbXPGwPt5FLRfQ==}
engines: {node: '>=12.22.0'}
hasBin: true
@@ -3345,10 +3357,10 @@ packages:
'@swc/helpers': 0.4.11
caniuse-lite: 1.0.30001581
postcss: 8.4.14
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
styled-jsx: 5.0.7(react@18.2.0)
use-sync-external-store: 1.2.0(react@18.2.0)
react: 18.3.1
react-dom: 18.2.0(react@18.3.1)
styled-jsx: 5.0.7(react@18.3.1)
use-sync-external-store: 1.2.0(react@18.3.1)
optionalDependencies:
'@next/swc-android-arm-eabi': 12.3.4
'@next/swc-android-arm64': 12.3.4
@@ -3810,17 +3822,17 @@ packages:
unpipe: 1.0.0
dev: false
/react-dom@18.2.0(react@18.2.0):
/react-dom@18.2.0(react@18.3.1):
resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==}
peerDependencies:
react: ^18.2.0
dependencies:
loose-envify: 1.4.0
react: 18.2.0
react: 18.3.1
scheduler: 0.23.0
dev: false
/react-i18next@11.18.6(i18next@21.10.0)(react-dom@18.2.0)(react@18.2.0):
/react-i18next@11.18.6(i18next@21.10.0)(react-dom@18.2.0)(react@18.3.1):
resolution: {integrity: sha512-yHb2F9BiT0lqoQDt8loZ5gWP331GwctHz9tYQ8A2EIEUu+CcEdjBLQWli1USG3RdWQt3W+jqQLg/d4rrQR96LA==}
peerDependencies:
i18next: '>= 19.0.0'
@@ -3836,22 +3848,22 @@ packages:
'@babel/runtime': 7.23.9
html-parse-stringify: 3.0.1
i18next: 21.10.0
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
react: 18.3.1
react-dom: 18.2.0(react@18.3.1)
dev: false
/react-icons@4.12.0(react@18.2.0):
/react-icons@4.12.0(react@18.3.1):
resolution: {integrity: sha512-IBaDuHiShdZqmfc/TwHu6+d6k2ltNCf3AszxNmjJc1KUfXdEeRJOKyNvLmAHaarhzGmTSVygNdyu8/opXv2gaw==}
peerDependencies:
react: '*'
dependencies:
react: 18.2.0
react: 18.3.1
dev: false
/react-is@16.13.1:
resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==}
/react-smooth@4.0.0(react-dom@18.2.0)(react@18.2.0):
/react-smooth@4.0.0(react-dom@18.2.0)(react@18.3.1):
resolution: {integrity: sha512-2NMXOBY1uVUQx1jBeENGA497HK20y6CPGYL1ZnJLeoQ8rrc3UfmOM82sRxtzpcoCkUMy4CS0RGylfuVhuFjBgg==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
@@ -3859,12 +3871,12 @@ packages:
dependencies:
fast-equals: 5.0.1
prop-types: 15.8.1
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
react-transition-group: 4.4.5(react-dom@18.2.0)(react@18.2.0)
react: 18.3.1
react-dom: 18.2.0(react@18.3.1)
react-transition-group: 4.4.5(react-dom@18.2.0)(react@18.3.1)
dev: false
/react-transition-group@4.4.5(react-dom@18.2.0)(react@18.2.0):
/react-transition-group@4.4.5(react-dom@18.2.0)(react@18.3.1):
resolution: {integrity: sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==}
peerDependencies:
react: '>=16.6.0'
@@ -3874,12 +3886,12 @@ packages:
dom-helpers: 5.2.1
loose-envify: 1.4.0
prop-types: 15.8.1
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
react: 18.3.1
react-dom: 18.2.0(react@18.3.1)
dev: false
/react@18.2.0:
resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==}
/react@18.3.1:
resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==}
engines: {node: '>=0.10.0'}
dependencies:
loose-envify: 1.4.0
@@ -3934,8 +3946,8 @@ packages:
decimal.js-light: 2.5.1
dev: false
/recharts@2.12.3(react-dom@18.2.0)(react@18.2.0):
resolution: {integrity: sha512-vE/F7wTlokf5mtCqVDJlVKelCjliLSJ+DJxj79XlMREm7gpV7ljwbrwE3CfeaoDlOaLX+6iwHaVRn9587YkwIg==}
/recharts@2.12.6(react-dom@18.2.0)(react@18.3.1):
resolution: {integrity: sha512-D+7j9WI+D0NHauah3fKHuNNcRK8bOypPW7os1DERinogGBGaHI7i6tQKJ0aUF3JXyBZ63dyfKIW2WTOPJDxJ8w==}
engines: {node: '>=14'}
peerDependencies:
react: ^16.0.0 || ^17.0.0 || ^18.0.0
@@ -3944,10 +3956,10 @@ packages:
clsx: 2.1.0
eventemitter3: 4.0.7
lodash: 4.17.21
react: 18.2.0
react-dom: 18.2.0(react@18.2.0)
react: 18.3.1
react-dom: 18.2.0(react@18.3.1)
react-is: 16.13.1
react-smooth: 4.0.0(react-dom@18.2.0)(react@18.2.0)
react-smooth: 4.0.0(react-dom@18.2.0)(react@18.3.1)
recharts-scale: 0.4.5
tiny-invariant: 1.3.1
victory-vendor: 36.8.4
@@ -4034,6 +4046,10 @@ packages:
engines: {node: '>=4'}
dev: true
/resolve-pkg-maps@1.0.0:
resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==}
dev: true
/resolve@1.22.8:
resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==}
hasBin: true
@@ -4450,7 +4466,7 @@ packages:
engines: {node: '>=8'}
dev: true
/styled-jsx@5.0.7(react@18.2.0):
/styled-jsx@5.0.7(react@18.3.1):
resolution: {integrity: sha512-b3sUzamS086YLRuvnaDigdAewz1/EFYlHpYBP5mZovKEdQQOIIYq8lApylub3HHZ6xFjV051kkGU7cudJmrXEA==}
engines: {node: '>= 12.0.0'}
peerDependencies:
@@ -4463,7 +4479,7 @@ packages:
babel-plugin-macros:
optional: true
dependencies:
react: 18.2.0
react: 18.3.1
dev: false
/sucrase@3.35.0:
@@ -4491,16 +4507,16 @@ packages:
resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
engines: {node: '>= 0.4'}
/swr@1.3.0(react@18.2.0):
/swr@1.3.0(react@18.3.1):
resolution: {integrity: sha512-dkghQrOl2ORX9HYrMDtPa7LTVHJjCTeZoB1dqTbnnEDlSvN8JEKpYIYurDfvbQFUUS8Cg8PceFVZNkW0KNNYPw==}
peerDependencies:
react: ^16.11.0 || ^17.0.0 || ^18.0.0
dependencies:
react: 18.2.0
react: 18.3.1
dev: false
/systeminformation@5.22.0:
resolution: {integrity: sha512-oAP80ymt8ssrAzjX8k3frbL7ys6AotqC35oikG6/SG15wBw+tG9nCk4oPaXIhEaAOAZ8XngxUv3ORq2IuR3r4Q==}
/systeminformation@5.22.7:
resolution: {integrity: sha512-AWxlP05KeHbpGdgvZkcudJpsmChc2Y5Eo/GvxG/iUA/Aws5LZKHAMSeAo+V+nD+nxWZaxrwpWcnx4SH3oxNL3A==}
engines: {node: '>=8.0.0'}
os: [darwin, linux, win32, freebsd, openbsd, netbsd, sunos, android]
hasBin: true
@@ -4546,6 +4562,11 @@ packages:
- ts-node
dev: true
/tapable@2.2.1:
resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==}
engines: {node: '>=6'}
dev: true
/tar-fs@2.0.1:
resolution: {integrity: sha512-6tzWDMeroL87uF/+lin46k+Q+46rAJ0SyPGz7OW7wTgblI273hsBqk2C1j0/xNadNLKDTUL9BukSjB7cwgmlPA==}
dependencies:
@@ -4675,14 +4696,14 @@ packages:
resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==}
dev: false
/tsutils@3.21.0(typescript@4.9.5):
/tsutils@3.21.0(typescript@5.4.5):
resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==}
engines: {node: '>= 6'}
peerDependencies:
typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta'
dependencies:
tslib: 1.14.1
typescript: 4.9.5
typescript: 5.4.5
dev: true
/tunnel-agent@0.6.0:
@@ -4789,9 +4810,9 @@ packages:
possible-typed-array-names: 1.0.0
dev: true
/typescript@4.9.5:
resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==}
engines: {node: '>=4.2.0'}
/typescript@5.4.5:
resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==}
engines: {node: '>=14.17'}
hasBin: true
dev: true
@@ -4850,12 +4871,12 @@ packages:
requires-port: 1.0.0
dev: false
/use-sync-external-store@1.2.0(react@18.2.0):
/use-sync-external-store@1.2.0(react@18.3.1):
resolution: {integrity: sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==}
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0
dependencies:
react: 18.2.0
react: 18.3.1
dev: false
/util-deprecate@1.0.2:

View File

@@ -277,7 +277,7 @@
"approved": "Goedgekeur",
"available": "Beskikbaar"
},
"pialert": {
"netalertx": {
"total": "Totaal",
"connected": "Gekoppel",
"new_devices": "Nuwe Toestelle",
@@ -872,5 +872,9 @@
"labels": "Etikette",
"users": "Gebruikers",
"totalValue": "Totale Waarde"
},
"crowdsec": {
"alerts": "Waarskuwings",
"bans": "Verbanne"
}
}

View File

@@ -140,7 +140,7 @@
"connectionStatusPendingDisconnect": "في انتظار قطع الاتصال",
"connectionStatusDisconnecting": "جار قطع الاتصال",
"connectionStatusDisconnected": "غير متصل",
"connectionStatusConnected": "متصل",
"connectionStatusConnected": "Connected",
"uptime": "مدة التشغيل",
"maxDown": "أقصى حد للتنزيل",
"maxUp": "أقصى حد للتحميل",
@@ -277,11 +277,11 @@
"approved": "مصدق",
"available": "متاح"
},
"pialert": {
"netalertx": {
"total": "المجموع",
"connected": "متصل",
"new_devices": "أجهزة جديدة",
"down_alerts": "تنبيهات تعطل الخوادم"
"connected": "Connected",
"new_devices": "New Devices",
"down_alerts": "Down Alerts"
},
"pihole": {
"queries": "الاستعلامات",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "المستخدمون",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "تنبيهات",
"bans": "Bans"
}
}

View File

@@ -140,7 +140,7 @@
"connectionStatusPendingDisconnect": "Pending Disconnect",
"connectionStatusDisconnecting": "Disconnecting",
"connectionStatusDisconnected": "Disconnected",
"connectionStatusConnected": "Свързано",
"connectionStatusConnected": "Connected",
"uptime": "Uptime",
"maxDown": "Max. Down",
"maxUp": "Max. Up",
@@ -277,10 +277,10 @@
"approved": "Одобрен",
"available": "Наличен"
},
"pialert": {
"netalertx": {
"total": "Общо",
"connected": "Свързано",
"new_devices": "Нови устройства",
"connected": "Connected",
"new_devices": "New Devices",
"down_alerts": "Down Alerts"
},
"pihole": {
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Потребители",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Предупреждения",
"bans": "Bans"
}
}

View File

@@ -14,7 +14,7 @@
"date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}",
"months": "mo",
"months": "mes",
"days": "d",
"hours": "h",
"minutes": "m",
@@ -46,8 +46,8 @@
"used": "Utilitzat",
"load": "Càrrega",
"temp": "TEMP",
"max": "Max",
"uptime": "UP"
"max": "Màx.",
"uptime": "ACTIU"
},
"unifi": {
"users": "Usuaris",
@@ -61,65 +61,65 @@
"wlan_devices": "Dispositius WLAN",
"lan_users": "Usuaris LAN",
"wlan_users": "Usuaris WLAN",
"up": "UP",
"up": "ACTIU",
"down": "INACTIU",
"wait": "Si us plau, espereu",
"empty_data": "Subsystem status unknown"
"empty_data": "Estat del subsistema desconegut"
},
"docker": {
"rx": "Rebut",
"tx": "Transmès",
"mem": "MEM",
"cpu": "CPU",
"running": "Running",
"running": "En execució",
"offline": "Fora de línia",
"error": "Error",
"unknown": "Desconegut",
"healthy": "Healthy",
"starting": "Starting",
"unhealthy": "Unhealthy",
"not_found": "Not Found",
"exited": "Exited",
"partial": "Partial"
"healthy": "Saludable",
"starting": "Iniciant",
"unhealthy": "No saludable",
"not_found": "No trobat",
"exited": "Tancat",
"partial": "Parcial"
},
"ping": {
"error": "Error",
"ping": "Ping",
"down": "Down",
"up": "Up",
"not_available": "Not Available"
"ping": "Latència",
"down": "Inactiu",
"up": "Actiu",
"not_available": "No Disponible"
},
"siteMonitor": {
"http_status": "HTTP status",
"http_status": "Estat HTTP",
"error": "Error",
"response": "Response",
"down": "Down",
"up": "Up",
"not_available": "Not Available"
"response": "Resposta",
"down": "Inactiu",
"up": "Actiu",
"not_available": "No Disponible"
},
"emby": {
"playing": "Reproduint",
"transcoding": "Transcodificant",
"bitrate": "Taxa de bits",
"no_active": "Sense reproduccions actives",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"songs": "Songs"
"movies": "Pel·lícules",
"series": "Sèries",
"episodes": "Episodis",
"songs": "Cançons"
},
"esphome": {
"offline": "Fora de línia",
"offline_alt": "Fora de línia",
"online": "Online",
"online": "En línia",
"total": "Total",
"unknown": "Desconegut"
},
"evcc": {
"pv_power": "Production",
"battery_soc": "Battery",
"grid_power": "Grid",
"home_power": "Consumption",
"charge_power": "Charger",
"pv_power": "Producció",
"battery_soc": "Bateria",
"grid_power": "Xarxa",
"home_power": "Consum",
"charge_power": "Carregador",
"watt_hour": "Wh"
},
"flood": {
@@ -129,55 +129,55 @@
"seed": "Llavor"
},
"freshrss": {
"subscriptions": "Subscriptions",
"unread": "Unread"
"subscriptions": "Subcripcions",
"unread": "Sense llegir"
},
"fritzbox": {
"connectionStatus": "Estat",
"connectionStatusUnconfigured": "Unconfigured",
"connectionStatusConnecting": "Connecting",
"connectionStatusAuthenticating": "Authenticating",
"connectionStatusPendingDisconnect": "Pending Disconnect",
"connectionStatusDisconnecting": "Disconnecting",
"connectionStatusDisconnected": "Disconnected",
"connectionStatusConnected": "Connected",
"connectionStatusUnconfigured": "Sense configurar",
"connectionStatusConnecting": "Connectant",
"connectionStatusAuthenticating": "Autenticant",
"connectionStatusPendingDisconnect": "Desconnexió pendent",
"connectionStatusDisconnecting": "Desconnectant",
"connectionStatusDisconnected": "Desconnectat",
"connectionStatusConnected": "Connectat",
"uptime": "Temps actiu",
"maxDown": "Max. Down",
"maxUp": "Max. Up",
"down": "Down",
"up": "Up",
"received": "Received",
"sent": "Sent",
"externalIPAddress": "Ext. IP"
"maxDown": "Màx. Descàrrega",
"maxUp": "Màx. Càrrega",
"down": "Inactiu",
"up": "Actiu",
"received": "Rebuts",
"sent": "Enviats",
"externalIPAddress": "IP ext."
},
"caddy": {
"upstreams": "Upstreams",
"requests": "Current requests",
"requests_failed": "Failed requests"
"requests": "Peticions actuals",
"requests_failed": "Peticions fallides"
},
"changedetectionio": {
"totalObserved": "Total d'observats",
"diffsDetected": "Diferències detectades"
},
"channelsdvrserver": {
"shows": "Shows",
"recordings": "Recordings",
"scheduled": "Scheduled",
"passes": "Passes"
"shows": "Sèries",
"recordings": "Gravacions",
"scheduled": "Programat",
"passes": "Aprovat"
},
"tautulli": {
"playing": "Reproduint",
"transcoding": "Transcodificant",
"bitrate": "Taxa de bits",
"no_active": "Sense reproduccions actives",
"plex_connection_error": "Check Plex Connection"
"plex_connection_error": "Comprova la connexió de Plex"
},
"omada": {
"connectedAp": "Connected APs",
"activeUser": "Active devices",
"alerts": "Alerts",
"connectedGateway": "Connected gateways",
"connectedSwitches": "Connected switches"
"connectedAp": "AP connectats",
"activeUser": "Dispositius actius",
"alerts": "Alertes",
"connectedGateway": "Pasarel·les connectades",
"connectedSwitches": "Conmutadors connectats"
},
"nzbget": {
"rate": "Taxa",
@@ -187,7 +187,7 @@
"plex": {
"streams": "Transmissions actives",
"albums": "Àlbums",
"movies": "Movies",
"movies": "Pel·lícules",
"tv": "Sèries"
},
"sabnzbd": {
@@ -213,12 +213,12 @@
"seed": "Llavor"
},
"qnap": {
"cpuUsage": "CPU Usage",
"memUsage": "MEM Usage",
"systemTempC": "System Temp",
"poolUsage": "Pool Usage",
"volumeUsage": "Volume Usage",
"invalid": "Invalid"
"cpuUsage": "Ús de CPU",
"memUsage": "Ús de Memòria",
"systemTempC": "Temp. Sistema",
"poolUsage": "Ús de les Reserves",
"volumeUsage": "Ús dels Volums",
"invalid": "No vàlid"
},
"deluge": {
"download": "Descarregar",
@@ -235,7 +235,7 @@
"sonarr": {
"wanted": "Volgut",
"queued": "En cua",
"series": "Series",
"series": "Sèries",
"queue": "Cua",
"unknown": "Desconegut"
},
@@ -243,14 +243,14 @@
"wanted": "Volgut",
"missing": "Faltant",
"queued": "En cua",
"movies": "Movies",
"movies": "Pel·lícules",
"queue": "Cua",
"unknown": "Desconegut"
},
"lidarr": {
"wanted": "Volgut",
"queued": "En cua",
"artists": "Artists"
"artists": "Artistes"
},
"readarr": {
"wanted": "Volgut",
@@ -277,17 +277,17 @@
"approved": "Aprovat",
"available": "Disponible"
},
"pialert": {
"netalertx": {
"total": "Total",
"connected": "Connected",
"new_devices": "New Devices",
"down_alerts": "Down Alerts"
"connected": "Connectat",
"new_devices": "Nous dispositius",
"down_alerts": "Alertes de caigudes"
},
"pihole": {
"queries": "Consultes",
"blocked": "Bloquejat",
"blocked_percent": "Blocked %",
"gravity": "Gravity"
"blocked_percent": "Bloquejat %",
"gravity": "Gravetat"
},
"adguard": {
"queries": "Consultes",
@@ -298,37 +298,37 @@
"speedtest": {
"upload": "Pujada",
"download": "Descarregar",
"ping": "Ping"
"ping": "Latència"
},
"portainer": {
"running": "Running",
"running": "En execució",
"stopped": "Aturat",
"total": "Total"
},
"tailscale": {
"address": "Address",
"expires": "Expires",
"never": "Never",
"last_seen": "Last Seen",
"now": "Now",
"years": "{{number}}y",
"weeks": "{{number}}w",
"address": "Adreça",
"expires": "Caduca",
"never": "Mai",
"last_seen": "Vist per darrer cop",
"now": "Ara",
"years": "{{number}}a",
"weeks": "{{number}}set",
"days": "{{number}}d",
"hours": "{{number}}h",
"minutes": "{{number}}m",
"seconds": "{{number}}s",
"ago": "{{value}} Ago"
"ago": "Fa {{value}}"
},
"tdarr": {
"queue": "Cua",
"processed": "Processed",
"errored": "Errored",
"saved": "Saved"
"processed": "Processat",
"errored": "Error",
"saved": "Desat"
},
"traefik": {
"routers": "Encaminadors",
"services": "Serveis",
"middleware": "Middleware"
"middleware": "Intermediari"
},
"navidrome": {
"nothing_streaming": "Sense reproduccions actives",
@@ -360,7 +360,7 @@
},
"jackett": {
"configured": "Configurat",
"errored": "Errored"
"errored": "Error"
},
"strelaysrv": {
"numActiveSessions": "Sessions",
@@ -376,18 +376,18 @@
"medusa": {
"wanted": "Volgut",
"queued": "En cua",
"series": "Series"
"series": "Sèries"
},
"minecraft": {
"players": "Players",
"version": "Version",
"players": "Jugadors",
"version": "Versió",
"status": "Estat",
"up": "Online",
"up": "En línia",
"down": "Fora de línia"
},
"miniflux": {
"read": "Read",
"unread": "Unread"
"read": "Llegir",
"unread": "Sense llegir"
},
"authentik": {
"users": "Usuaris",
@@ -406,28 +406,28 @@
"wait": "Si us plau, espereu",
"temp": "TEMP",
"_temp": "Temp",
"warn": "Warn",
"uptime": "UP",
"warn": "Avís",
"uptime": "ACTIU",
"total": "Total",
"free": "Lliure",
"used": "Utilitzat",
"days": "d",
"hours": "h",
"crit": "Crit",
"read": "Read",
"write": "Write",
"crit": "Crític",
"read": "Llegir",
"write": "Escriure",
"gpu": "GPU",
"mem": "Mem",
"swap": "Swap"
"swap": "Intercanvi"
},
"quicklaunch": {
"bookmark": "Marcador",
"service": "Servei",
"search": "Search",
"custom": "Custom",
"visit": "Visit",
"search": "Cercar",
"custom": "Personalitzat",
"visit": "Visitar",
"url": "URL",
"searchsuggestion": "Suggestion"
"searchsuggestion": "Suggeriment"
},
"wmo": {
"0-day": "Assolellat",
@@ -492,21 +492,21 @@
"updates": "Actualitzacions",
"update_available": "Actualització disponible",
"up_to_date": "Actualitzat",
"child_bridges": "Child Bridges",
"child_bridges": "Ponts fills",
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"up": "Actiu",
"pending": "Pendent",
"down": "Down"
"down": "Inactiu"
},
"healthchecks": {
"new": "New",
"up": "Up",
"grace": "In Grace Period",
"down": "Down",
"paused": "Paused",
"new": "Nou",
"up": "Actiu",
"grace": "En Període de gràcia",
"down": "Inactiu",
"paused": "En pausa",
"status": "Estat",
"last_ping": "Last Ping",
"never": "No pings yet"
"last_ping": "Últim ping",
"never": "Sense pings"
},
"watchtower": {
"containers_scanned": "Escanejat",
@@ -528,7 +528,7 @@
"truenas": {
"load": "Càrrega del sistema",
"uptime": "Temps actiu",
"alerts": "Alerts"
"alerts": "Alertes"
},
"pyload": {
"speed": "Velocitat",
@@ -544,12 +544,12 @@
"hdhomerun": {
"channels": "Canals",
"hd": "HD",
"tunerCount": "Tuners",
"channelNumber": "Channel",
"channelNetwork": "Network",
"signalStrength": "Strength",
"signalQuality": "Quality",
"symbolQuality": "Quality",
"tunerCount": "Sintonitzadors",
"channelNumber": "Canal",
"channelNetwork": "Xarxa",
"signalStrength": "Intensitat",
"signalQuality": "Qualitat",
"symbolQuality": "Qualitat",
"networkRate": "Taxa de bits",
"clientIP": "Client"
},
@@ -563,94 +563,94 @@
"total": "Total"
},
"peanut": {
"battery_charge": "Battery Charge",
"ups_load": "UPS Load",
"ups_status": "UPS Status",
"online": "Online",
"on_battery": "On Battery",
"low_battery": "Low Battery"
"battery_charge": "Càrrega de la bateria",
"ups_load": "Càrrega del SAI",
"ups_status": "Estat del SAI",
"online": "En línia",
"on_battery": "En Bateria",
"low_battery": "Bateria Baixa"
},
"nextdns": {
"wait": "Espereu si us plau",
"no_devices": "No Device Data Received"
"no_devices": "No s'han rebut dades del Dispositiu"
},
"mikrotik": {
"cpuLoad": "CPU Load",
"memoryUsed": "Memory Used",
"cpuLoad": "Càrrega de CPU",
"memoryUsed": "Memoria en ús",
"uptime": "Temps actiu",
"numberOfLeases": "Leases"
"numberOfLeases": "IPs assignades"
},
"xteve": {
"streams_all": "All Streams",
"streams_all": "Tots els fluxos",
"streams_active": "Transmissions actives",
"streams_xepg": "XEPG Channels"
"streams_xepg": "Canals XEPG"
},
"opendtu": {
"yieldDay": "Today",
"absolutePower": "Power",
"relativePower": "Power %",
"limit": "Limit"
"yieldDay": "Avui",
"absolutePower": "Potència",
"relativePower": "Potència %",
"limit": "Límit"
},
"opnsense": {
"cpu": "CPU Load",
"memory": "Active Memory",
"wanUpload": "WAN Upload",
"wanDownload": "WAN Download"
"cpu": "Càrrega de CPU",
"memory": "Memòria activa",
"wanUpload": "Pujada WAN",
"wanDownload": "Baixada WAN"
},
"moonraker": {
"printer_state": "Printer State",
"print_status": "Print Status",
"printer_state": "Estat de l'impressora",
"print_status": "Estat de l'impressió",
"print_progress": "Progress",
"layers": "Layers"
"layers": "Capes"
},
"octoprint": {
"printer_state": "Estat",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"job_completion": "Completion"
"temp_tool": "Temperatura capçal",
"temp_bed": "Temperatura llit",
"job_completion": "Finalització"
},
"cloudflared": {
"origin_ip": "Origin IP",
"origin_ip": "IP Origen",
"status": "Estat"
},
"pfsense": {
"load": "Load Avg",
"memory": "Mem Usage",
"wanStatus": "WAN Status",
"up": "Up",
"down": "Down",
"load": "Promig Càrrega",
"memory": "Ús Memòria",
"wanStatus": "Estat WAN",
"up": "Actiu",
"down": "Inactiu",
"temp": "Temp",
"disk": "Disk Usage",
"disk": "Ús Disc",
"wanIP": "WAN IP"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"failed_tasks_24h": "Tasques fallides (24h)",
"cpu_usage": "CPU",
"memory_usage": "Memory"
"memory_usage": "Memòria"
},
"immich": {
"users": "Usuaris",
"photos": "Photos",
"photos": "Fotos",
"videos": "Vídeos",
"storage": "Storage"
"storage": "Emmagatzematge"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"up": "Actius",
"down": "Caiguts",
"uptime": "Temps actiu",
"incident": "Incident",
"incident": "Incidència",
"m": "m"
},
"atsumeru": {
"series": "Series",
"archives": "Archives",
"chapters": "Chapters",
"series": "Sèries",
"archives": "Arxius",
"chapters": "Capítols",
"categories": "Categories"
},
"komga": {
"libraries": "Libraries",
"series": "Series",
"libraries": "Biblioteques",
"series": "Sèries",
"books": "Llibres"
},
"diskstation": {
@@ -659,77 +659,77 @@
"volumeAvailable": "Disponible"
},
"mylar": {
"series": "Series",
"issues": "Issues",
"series": "Sèries",
"issues": "Problemes",
"wanted": "Volgut"
},
"photoprism": {
"albums": "Àlbums",
"photos": "Photos",
"photos": "Fotos",
"videos": "Vídeos",
"people": "People"
"people": "Gent"
},
"fileflows": {
"queue": "Cua",
"processing": "Processant",
"processed": "Processed",
"time": "Time"
"processed": "Processat",
"time": "Temps"
},
"grafana": {
"dashboards": "Dashboards",
"datasources": "Data Sources",
"totalalerts": "Total Alerts",
"alertstriggered": "Alerts Triggered"
"dashboards": "Taulells",
"datasources": "Origen de dades",
"totalalerts": "Alertes Totals",
"alertstriggered": "Alertes disparades"
},
"nextcloud": {
"cpuload": "Cpu Load",
"memoryusage": "Memory Usage",
"freespace": "Free Space",
"activeusers": "Active Users",
"numfiles": "Files",
"numshares": "Shared Items"
"cpuload": "Càrrega de CPU",
"memoryusage": "Ús Memòria",
"freespace": "Espai lliure",
"activeusers": "Usuaris actius",
"numfiles": "Fitxers",
"numshares": "Elements compartits"
},
"kopia": {
"status": "Estat",
"size": "Size",
"lastrun": "Last Run",
"nextrun": "Next Run",
"size": "Mida",
"lastrun": "Darrera execució",
"nextrun": "Següent execució",
"failed": "Error"
},
"unmanic": {
"active_workers": "Active Workers",
"total_workers": "Total Workers",
"records_total": "Queue Length"
"active_workers": "Treballadors actius",
"total_workers": "Treballadors Totals",
"records_total": "Llargada de la Cua"
},
"pterodactyl": {
"servers": "Servers",
"servers": "Servidors",
"nodes": "Nodes"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
"targets_up": "Objectius actius",
"targets_down": "Objectius caiguts",
"targets_total": "Objectius Totals"
},
"gatus": {
"up": "Sites Up",
"down": "Sites Down",
"up": "Actius",
"down": "Caiguts",
"uptime": "Temps actiu"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_1y": "One year",
"gross_percent_max": "All time"
"gross_percent_today": "Avui",
"gross_percent_1y": "Un any",
"gross_percent_max": "Tot"
},
"audiobookshelf": {
"podcasts": "Podcasts",
"books": "Llibres",
"podcastsDuration": "Duration",
"booksDuration": "Duration"
"podcastsDuration": "Durada",
"booksDuration": "Durada"
},
"homeassistant": {
"people_home": "People Home",
"lights_on": "Lights On",
"switches_on": "Switches On"
"people_home": "Gent a casa",
"lights_on": "Llums enceses",
"switches_on": "Endolls activats"
},
"whatsupdocker": {
"monitoring": "Supervisió",
@@ -737,140 +737,144 @@
},
"calibreweb": {
"books": "Llibres",
"authors": "Authors",
"authors": "Autors",
"categories": "Categories",
"series": "Series"
"series": "Sèries"
},
"jdownloader": {
"downloadCount": "Cua",
"downloadBytesRemaining": "Restant",
"downloadTotalBytes": "Size",
"downloadTotalBytes": "Mida",
"downloadSpeed": "Velocitat"
},
"kavita": {
"seriesCount": "Series",
"totalFiles": "Files"
"seriesCount": "Sèries",
"totalFiles": "Fitxers"
},
"azuredevops": {
"result": "Result",
"result": "Resultat",
"status": "Estat",
"buildId": "Build ID",
"succeeded": "Succeeded",
"notStarted": "Not Started",
"buildId": "Id de compilació",
"succeeded": "Amb èxit",
"notStarted": "No Iniciat",
"failed": "Error",
"canceled": "Canceled",
"inProgress": "In Progress",
"totalPrs": "Total PRs",
"myPrs": "My PRs",
"canceled": "Cancel·lat",
"inProgress": "En curs",
"totalPrs": "RP Totals",
"myPrs": "Els meus RP",
"approved": "Aprovat"
},
"gamedig": {
"status": "Estat",
"online": "Online",
"online": "En línia",
"offline": "Fora de línia",
"name": "Name",
"map": "Map",
"currentPlayers": "Current players",
"players": "Players",
"maxPlayers": "Max players",
"name": "Nom",
"map": "Mapa",
"currentPlayers": "Jugadors actuals",
"players": "Jugadors",
"maxPlayers": "Màxim de jugadors",
"bots": "Bots",
"ping": "Ping"
"ping": "Latència"
},
"urbackup": {
"ok": "Ok",
"errored": "Errors",
"noRecent": "Out of Date",
"totalUsed": "Used Storage"
"noRecent": "Obsolet",
"totalUsed": "Emmagatzematge utilitzat"
},
"mealie": {
"recipes": "Recipes",
"recipes": "Receptes",
"users": "Usuaris",
"categories": "Categories",
"tags": "Tags"
"tags": "Etiquetes"
},
"openmediavault": {
"downloading": "Downloading",
"downloading": "Descarregant",
"total": "Total",
"running": "Running",
"running": "En execució",
"stopped": "Aturat",
"passed": "Aprobat",
"failed": "Error"
},
"openwrt": {
"uptime": "Temps actiu",
"cpuLoad": "CPU Load Avg (5m)",
"up": "Up",
"down": "Down",
"bytesTx": "Transmitted",
"bytesRx": "Received"
"cpuLoad": "Càrrega promig de CPU (5m)",
"up": "Actiu",
"down": "Inactiu",
"bytesTx": "Enviat",
"bytesRx": "Rebuts"
},
"uptimerobot": {
"status": "Estat",
"uptime": "Temps actiu",
"lastDown": "Last Downtime",
"downDuration": "Downtime Duration",
"sitesUp": "Sites Up",
"sitesDown": "Sites Down",
"paused": "Paused",
"notyetchecked": "Not Yet Checked",
"up": "Up",
"seemsdown": "Seems Down",
"down": "Down",
"lastDown": "Darrera Inactivitat",
"downDuration": "Duració d'Inactivitat",
"sitesUp": "Actius",
"sitesDown": "Caiguts",
"paused": "En pausa",
"notyetchecked": "Sense verificar",
"up": "Actiu",
"seemsdown": "Sembla caigut",
"down": "Inactiu",
"unknown": "Desconegut"
},
"calendar": {
"inCinemas": "In cinemas",
"physicalRelease": "Physical release",
"digitalRelease": "Digital release",
"noEventsToday": "No events for today!",
"noEventsFound": "No events found"
"inCinemas": "En cines",
"physicalRelease": "Estrena física",
"digitalRelease": "Estrena digital",
"noEventsToday": "Cap esdeveniment per avui!",
"noEventsFound": "No s'han trobat esdeveniments"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
"platforms": "Plataformes",
"totalRoms": "ROMs totals"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
"warnings": "Avisos",
"criticals": "Crítics"
},
"plantit": {
"events": "Events",
"plants": "Plants",
"photos": "Photos",
"species": "Species"
"events": "Esdeveniments",
"plants": "Plantes",
"photos": "Fotos",
"species": "Espècies"
},
"gitea": {
"notifications": "Notifications",
"issues": "Issues",
"pulls": "Pull Requests"
"notifications": "Notificacions",
"issues": "Problemes",
"pulls": "Sol·licitud de Canvis"
},
"stash": {
"scenes": "Scenes",
"scenesPlayed": "Scenes Played",
"playCount": "Total Plays",
"playDuration": "Time Watched",
"sceneSize": "Scenes Size",
"sceneDuration": "Scenes Duration",
"images": "Images",
"imageSize": "Images Size",
"galleries": "Galleries",
"performers": "Performers",
"studios": "Studios",
"movies": "Movies",
"tags": "Tags",
"scenes": "Escenes",
"scenesPlayed": "Escenes reproduïdes",
"playCount": "Total reproduccions",
"playDuration": "Temps visionat",
"sceneSize": "Tamany Escena",
"sceneDuration": "Duració Escenes",
"images": "Imatges",
"imageSize": "Mida Imatges",
"galleries": "Biblioteques",
"performers": "Intèrprets",
"studios": "Estudis",
"movies": "Pel·lícules",
"tags": "Etiquetes",
"oCount": "O Count"
},
"tandoor": {
"users": "Usuaris",
"recipes": "Recipes",
"keywords": "Keywords"
"recipes": "Receptes",
"keywords": "Paraules claus"
},
"homebox": {
"items": "Items",
"totalWithWarranty": "With Warranty",
"locations": "Locations",
"labels": "Labels",
"items": "Elements",
"totalWithWarranty": "Amb Garantia",
"locations": "Ubicacions",
"labels": "Etiquetes",
"users": "Usuaris",
"totalValue": "Total Value"
"totalValue": "Valor total"
},
"crowdsec": {
"alerts": "Alertes",
"bans": "Prohibicions"
}
}

View File

@@ -140,7 +140,7 @@
"connectionStatusPendingDisconnect": "Čeká na odpojení",
"connectionStatusDisconnecting": "Odpojování",
"connectionStatusDisconnected": "Odpojeno",
"connectionStatusConnected": "Připojeno",
"connectionStatusConnected": "Connected",
"uptime": "Doba spuštění",
"maxDown": "Max. Down",
"maxUp": "Max. Up",
@@ -277,10 +277,10 @@
"approved": "Schváleno",
"available": "Dostupné"
},
"pialert": {
"netalertx": {
"total": "Celkem",
"connected": "Připojeno",
"new_devices": "Nová zařízení",
"connected": "Connected",
"new_devices": "New Devices",
"down_alerts": "Down Alerts"
},
"pihole": {
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Uživatelé",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Upozornění",
"bans": "Bans"
}
}

View File

@@ -140,7 +140,7 @@
"connectionStatusPendingDisconnect": "Pending Disconnect",
"connectionStatusDisconnecting": "Disconnecting",
"connectionStatusDisconnected": "Disconnected",
"connectionStatusConnected": "Forbundet",
"connectionStatusConnected": "Connected",
"uptime": "Oppetid",
"maxDown": "Max. Down",
"maxUp": "Max. Up",
@@ -277,11 +277,11 @@
"approved": "Godkendt",
"available": "Tilgængelig"
},
"pialert": {
"netalertx": {
"total": "Total",
"connected": "Forbundet",
"new_devices": "Nye Enheder",
"down_alerts": "Nedadvarsler"
"connected": "Connected",
"new_devices": "New Devices",
"down_alerts": "Down Alerts"
},
"pihole": {
"queries": "Forespørgsler",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Brugere",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Advarsler",
"bans": "Bans"
}
}

View File

@@ -142,8 +142,8 @@
"connectionStatusDisconnected": "Getrennt",
"connectionStatusConnected": "Verbunden",
"uptime": "Betriebszeit",
"maxDown": "Max. Empfang",
"maxUp": "Max. Senden",
"maxDown": "Max. Down",
"maxUp": "Max. Up",
"down": "Empfangen",
"up": "Senden",
"received": "Empfangen",
@@ -277,7 +277,7 @@
"approved": "Genehmigt",
"available": "Verfügbar"
},
"pialert": {
"netalertx": {
"total": "Gesamt",
"connected": "Verbunden",
"new_devices": "Neue Geräte",
@@ -392,7 +392,7 @@
"authentik": {
"users": "Benutzer",
"loginsLast24H": "Anmeldungen (24 h)",
"failedLoginsLast24H": "Fehlgeschlagene Anmeldungen (24 h)"
"failedLoginsLast24H": "Fehlversuche (24 h)"
},
"proxmox": {
"mem": "RAM",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Benutzer",
"totalValue": "Gesamtwert"
},
"crowdsec": {
"alerts": "Warnungen",
"bans": "Banns"
}
}

View File

@@ -146,9 +146,9 @@
"maxUp": "Max. Up",
"down": "Down",
"up": "Up",
"received": "Received",
"sent": "Sent",
"externalIPAddress": "Ext. IP"
"received": "Ληφθέντα",
"sent": "Απεσταλμένα",
"externalIPAddress": "Εξωτερική IP"
},
"caddy": {
"upstreams": "Upstreams",
@@ -277,7 +277,7 @@
"approved": "Εγκρίθηκε",
"available": "Διαθέσιμο"
},
"pialert": {
"netalertx": {
"total": "Σύνολο",
"connected": "Connected",
"new_devices": "New Devices",
@@ -327,7 +327,7 @@
},
"traefik": {
"routers": "Routers",
"services": "Services",
"services": "Υπηρεσίες",
"middleware": "Middleware"
},
"navidrome": {
@@ -522,7 +522,7 @@
"tubearchivist": {
"downloads": "Ουρά",
"videos": "Videos",
"channels": "Channels",
"channels": "Κανάλια",
"playlists": "Playlists"
},
"truenas": {
@@ -542,14 +542,14 @@
"country": "Χώρα"
},
"hdhomerun": {
"channels": "Channels",
"channels": "Κανάλια",
"hd": "HD",
"tunerCount": "Tuners",
"channelNumber": "Channel",
"channelNetwork": "Network",
"channelNumber": "Κανάλι",
"channelNetwork": "Δίκτυο",
"signalStrength": "Strength",
"signalQuality": "Quality",
"symbolQuality": "Quality",
"signalQuality": "Ποιότητα",
"symbolQuality": "Ποιότητα",
"networkRate": "Ρυθμός bit",
"clientIP": "Client"
},
@@ -559,7 +559,7 @@
"unknown": "Άγνωστο"
},
"paperlessngx": {
"inbox": "Inbox",
"inbox": "Εισερχόμενα",
"total": "Σύνολο"
},
"peanut": {
@@ -567,8 +567,8 @@
"ups_load": "UPS Load",
"ups_status": "UPS Status",
"online": "Συνδεδεμένοι",
"on_battery": "On Battery",
"low_battery": "Low Battery"
"on_battery": "Σε μπαταρία",
"low_battery": "Χαμηλή μπαταρία"
},
"nextdns": {
"wait": "Παρακαλώ περιμένετε",
@@ -620,7 +620,7 @@
"up": "Up",
"down": "Down",
"temp": "Temp",
"disk": "Disk Usage",
"disk": "Χρήση δίσκου",
"wanIP": "WAN IP"
},
"proxmoxbackupserver": {
@@ -631,7 +631,7 @@
},
"immich": {
"users": "Χρήστες",
"photos": "Photos",
"photos": "Φωτογραφίες",
"videos": "Videos",
"storage": "Storage"
},
@@ -646,7 +646,7 @@
"series": "Σειρές",
"archives": "Archives",
"chapters": "Chapters",
"categories": "Categories"
"categories": "Κατηγορίες"
},
"komga": {
"libraries": "Libraries",
@@ -665,7 +665,7 @@
},
"photoprism": {
"albums": "Άλμπουμ",
"photos": "Photos",
"photos": "Φωτογραφίες",
"videos": "Videos",
"people": "People"
},
@@ -738,7 +738,7 @@
"calibreweb": {
"books": "Βιβλία",
"authors": "Authors",
"categories": "Categories",
"categories": "Κατηγορίες",
"series": "Σειρές"
},
"jdownloader": {
@@ -785,7 +785,7 @@
"mealie": {
"recipes": "Recipes",
"users": "Χρήστες",
"categories": "Categories",
"categories": "Κατηγορίες",
"tags": "Tags"
},
"openmediavault": {
@@ -802,7 +802,7 @@
"up": "Up",
"down": "Down",
"bytesTx": "Transmitted",
"bytesRx": "Received"
"bytesRx": "Ληφθέντα"
},
"uptimerobot": {
"status": "Κατάσταση",
@@ -836,7 +836,7 @@
"plantit": {
"events": "Events",
"plants": "Plants",
"photos": "Photos",
"photos": "Φωτογραφίες",
"species": "Species"
},
"gitea": {
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Χρήστες",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Ειδοποιήσεις",
"bans": "Bans"
}
}

View File

@@ -277,7 +277,7 @@
"approved": "Aprobita",
"available": "Havebla"
},
"pialert": {
"netalertx": {
"total": "Totalo",
"connected": "Connected",
"new_devices": "New Devices",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Uzantoj",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Alerts",
"bans": "Bans"
}
}

View File

@@ -12,7 +12,7 @@
"number": "{{value, number}}",
"ms": "{{value, number}}",
"date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"relativeDate": "{{valor, relativaFecha}}",
"uptime": "{{value, uptime}}",
"months": "me",
"days": "d",
@@ -140,7 +140,7 @@
"connectionStatusPendingDisconnect": "Desconexión pendiente",
"connectionStatusDisconnecting": "Desconectando",
"connectionStatusDisconnected": "Desconectado",
"connectionStatusConnected": "Conectado",
"connectionStatusConnected": "Connected",
"uptime": "Tiempo activo",
"maxDown": "Descarga máxima",
"maxUp": "Subida máxima",
@@ -277,11 +277,11 @@
"approved": "Aprobado",
"available": "Disponible"
},
"pialert": {
"netalertx": {
"total": "Total",
"connected": "Conectado",
"new_devices": "Nuevos dispositivos",
"down_alerts": "Alertas de caídas"
"connected": "Connected",
"new_devices": "New Devices",
"down_alerts": "Down Alerts"
},
"pihole": {
"queries": "Consultas",
@@ -427,7 +427,7 @@
"custom": "Personalizado",
"visit": "Visitar",
"url": "Enlace",
"searchsuggestion": "Suggestion"
"searchsuggestion": "Sugerencia"
},
"wmo": {
"0-day": "Soleado",
@@ -546,12 +546,12 @@
"hd": "Alta definición",
"tunerCount": "Tuners",
"channelNumber": "Canal",
"channelNetwork": "Network",
"signalStrength": "Strength",
"signalQuality": "Quality",
"symbolQuality": "Quality",
"channelNetwork": "Red",
"signalStrength": "Intensidad",
"signalQuality": "Calidad",
"symbolQuality": "Calidad",
"networkRate": "Tasa de bits",
"clientIP": "Client"
"clientIP": "Cliente"
},
"scrutiny": {
"passed": "Aprobado",
@@ -798,10 +798,10 @@
},
"openwrt": {
"uptime": "Tiempo activo",
"cpuLoad": "CPU Load Avg (5m)",
"cpuLoad": "Carga promedio del CPU (5m)",
"up": "Activo",
"down": "Inactivo",
"bytesTx": "Transmitted",
"bytesTx": "Transmitido",
"bytesRx": "Recibido"
},
"uptimerobot": {
@@ -826,21 +826,21 @@
"noEventsFound": "No se encontraron eventos"
},
"romm": {
"platforms": "Platforms",
"platforms": "Plataformas",
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
"warnings": "Advertencias",
"criticals": "Críticos"
},
"plantit": {
"events": "Events",
"events": "Eventos",
"plants": "Plants",
"photos": "Fotos",
"species": "Species"
},
"gitea": {
"notifications": "Notifications",
"notifications": "Notificaciones",
"issues": "Números",
"pulls": "Pull Requests"
},
@@ -852,7 +852,7 @@
"sceneSize": "Scenes Size",
"sceneDuration": "Scenes Duration",
"images": "Imágenes",
"imageSize": "Images Size",
"imageSize": "Tamaño de imagen",
"galleries": "Galerías",
"performers": "Performers",
"studios": "Studios",
@@ -869,8 +869,12 @@
"items": "Items",
"totalWithWarranty": "Con Garantía",
"locations": "Ubicaciones",
"labels": "Labels",
"labels": "Etiquetas",
"users": "Usuarios",
"totalValue": "Total Value"
"totalValue": "Valor total"
},
"crowdsec": {
"alerts": "Alertas",
"bans": "Bans"
}
}

View File

@@ -277,7 +277,7 @@
"approved": "Approved",
"available": "Available"
},
"pialert": {
"netalertx": {
"total": "Guztira",
"connected": "Connected",
"new_devices": "New Devices",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Users",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Alerts",
"bans": "Bans"
}
}

View File

@@ -277,7 +277,7 @@
"approved": "Hyväksytty",
"available": "Saatavilla"
},
"pialert": {
"netalertx": {
"total": "Yhteensä",
"connected": "Connected",
"new_devices": "New Devices",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Users",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Alerts",
"bans": "Bans"
}
}

View File

@@ -15,13 +15,13 @@
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}",
"months": "mo",
"days": "d",
"days": "j",
"hours": "h",
"minutes": "m",
"seconds": "s"
},
"widget": {
"missing_type": "Widget manquant: {{type}}",
"missing_type": "Type de widget manquant: {{type}}",
"api_error": "Erreur API",
"information": "Informations",
"status": "Statut",
@@ -40,7 +40,7 @@
},
"resources": {
"cpu": "CPU",
"mem": "Mém",
"mem": "MÉM",
"total": "Total",
"free": "Libre",
"used": "Utilisé",
@@ -69,7 +69,7 @@
"docker": {
"rx": "Rx",
"tx": "Tx",
"mem": "Mém",
"mem": "MÉM",
"cpu": "CPU",
"running": "Démarré",
"offline": "Hors ligne",
@@ -277,11 +277,11 @@
"approved": "Validé",
"available": "Disponible"
},
"pialert": {
"netalertx": {
"total": "Total",
"connected": "Connecté",
"new_devices": "Nouvel Appareil",
"down_alerts": "Alertes"
"new_devices": "Nouveaux appareils",
"down_alerts": "Alertes d'arrêt"
},
"pihole": {
"queries": "Requêtes",
@@ -395,7 +395,7 @@
"failedLoginsLast24H": "Cnx. échouées (24h)"
},
"proxmox": {
"mem": "Mém",
"mem": "MÉM",
"cpu": "CPU",
"lxc": "LxC",
"vms": "VMs"
@@ -411,7 +411,7 @@
"total": "Total",
"free": "Libre",
"used": "Utilisé",
"days": "d",
"days": "j",
"hours": "h",
"crit": "Crit.",
"read": "Lu",
@@ -847,18 +847,18 @@
"stash": {
"scenes": "Scènes",
"scenesPlayed": "Scènes jouées",
"playCount": "Total Plays",
"playDuration": "Time Watched",
"sceneSize": "Scenes Size",
"sceneDuration": "Scenes Duration",
"playCount": "Lectures Totales",
"playDuration": "Temps regardé",
"sceneSize": "Taille des scènes",
"sceneDuration": "Durée des scènes",
"images": "Images",
"imageSize": "Taille des images",
"galleries": "Galeries",
"performers": "Performers",
"performers": "Acteurs",
"studios": "Studios",
"movies": "Films",
"tags": "Étiquettes",
"oCount": "O Count"
"oCount": "0 Compte"
},
"tandoor": {
"users": "Utilisateurs",
@@ -871,6 +871,10 @@
"locations": "Emplacements",
"labels": "Étiquettes",
"users": "Utilisateurs",
"totalValue": "Total Value"
"totalValue": "Valeur Totale"
},
"crowdsec": {
"alerts": "Alertes",
"bans": "Exclusions"
}
}

View File

@@ -277,7 +277,7 @@
"approved": "מאושר",
"available": "זמין"
},
"pialert": {
"netalertx": {
"total": "סה\"כ",
"connected": "Connected",
"new_devices": "New Devices",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Users",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Alerts",
"bans": "Bans"
}
}

View File

@@ -277,7 +277,7 @@
"approved": "Approved",
"available": "Available"
},
"pialert": {
"netalertx": {
"total": "Total",
"connected": "Connected",
"new_devices": "New Devices",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Users",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Alerts",
"bans": "Bans"
}
}

View File

@@ -140,7 +140,7 @@
"connectionStatusPendingDisconnect": "Odspajanje u tijeku",
"connectionStatusDisconnecting": "Odspajanje",
"connectionStatusDisconnected": "Odspojeno",
"connectionStatusConnected": "Povezano",
"connectionStatusConnected": "Connected",
"uptime": "Vrijeme rada",
"maxDown": "Maksimum preuzimanja",
"maxUp": "Maksimum prijenosa",
@@ -277,11 +277,11 @@
"approved": "Odobreno",
"available": "Dostupno"
},
"pialert": {
"netalertx": {
"total": "Ukupno",
"connected": "Povezano",
"new_devices": "Novi uređaji",
"down_alerts": "Obavijesti o nedostupnosti"
"connected": "Connected",
"new_devices": "New Devices",
"down_alerts": "Down Alerts"
},
"pihole": {
"queries": "Upiti",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Korisnici",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Upozorenja",
"bans": "Bans"
}
}

View File

@@ -140,7 +140,7 @@
"connectionStatusPendingDisconnect": "Szétkapcsolás függőben",
"connectionStatusDisconnecting": "Kapcsolat bontása",
"connectionStatusDisconnected": "Kapcsolat bontva",
"connectionStatusConnected": "Csatlakoztatott",
"connectionStatusConnected": "Connected",
"uptime": "Üzemidő",
"maxDown": "Max let.",
"maxUp": "Max felt.",
@@ -277,11 +277,11 @@
"approved": "Engedélyezett",
"available": "Elérhető"
},
"pialert": {
"netalertx": {
"total": "Összes",
"connected": "Csatlakoztatott",
"new_devices": "Új Eszközök",
"down_alerts": "Leállási Figyelmeztetések"
"connected": "Connected",
"new_devices": "New Devices",
"down_alerts": "Down Alerts"
},
"pihole": {
"queries": "Lekérdezések",
@@ -872,5 +872,9 @@
"labels": "Címkék",
"users": "Felhasználók",
"totalValue": "Teljes érték"
},
"crowdsec": {
"alerts": "Riasztások",
"bans": "Bans"
}
}

View File

@@ -140,7 +140,7 @@
"connectionStatusPendingDisconnect": "Menunggu Terputus",
"connectionStatusDisconnecting": "Sedan Memutus",
"connectionStatusDisconnected": "Terputus",
"connectionStatusConnected": "Tersambung",
"connectionStatusConnected": "Connected",
"uptime": "Waktu Aktif",
"maxDown": "Maks Unduh",
"maxUp": "Maks Unggah",
@@ -277,11 +277,11 @@
"approved": "Tersetujui",
"available": "Tersedia"
},
"pialert": {
"netalertx": {
"total": "Total",
"connected": "Tersambung",
"new_devices": "Perangkat Baru",
"down_alerts": "Alert Mati"
"connected": "Connected",
"new_devices": "New Devices",
"down_alerts": "Down Alerts"
},
"pihole": {
"queries": "Kueri",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Pengguna",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Peringatan",
"bans": "Bans"
}
}

View File

@@ -15,8 +15,8 @@
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}",
"months": "mo",
"days": "d",
"hours": "h",
"days": "g",
"hours": "o",
"minutes": "m",
"seconds": "s"
},
@@ -277,7 +277,7 @@
"approved": "Approvati",
"available": "Disponibili"
},
"pialert": {
"netalertx": {
"total": "Totale",
"connected": "Connesso",
"new_devices": "Nuovi Dispositivi",
@@ -411,8 +411,8 @@
"total": "Totale",
"free": "Libero",
"used": "In utilizzo",
"days": "d",
"hours": "h",
"days": "g",
"hours": "o",
"crit": "Critico",
"read": "Letti",
"write": "Scrittura",
@@ -427,7 +427,7 @@
"custom": "Personalizzato",
"visit": "Visita",
"url": "URL",
"searchsuggestion": "Suggestion"
"searchsuggestion": "Suggerimenti"
},
"wmo": {
"0-day": "Soleggiato",
@@ -546,8 +546,8 @@
"hd": "HD",
"tunerCount": "Tuners",
"channelNumber": "Channel",
"channelNetwork": "Network",
"signalStrength": "Strength",
"channelNetwork": "Rete",
"signalStrength": "Intensità",
"signalQuality": "Quality",
"symbolQuality": "Quality",
"networkRate": "Bitrate",
@@ -830,32 +830,32 @@
"totalRoms": "Total ROMs"
},
"netdata": {
"warnings": "Warnings",
"warnings": "Avvisi",
"criticals": "Criticals"
},
"plantit": {
"events": "Events",
"plants": "Plants",
"photos": "Foto",
"species": "Species"
"species": "Specie"
},
"gitea": {
"notifications": "Notifications",
"notifications": "Notifiche",
"issues": "Problemi",
"pulls": "Pull Requests"
"pulls": "Richieste di Pull"
},
"stash": {
"scenes": "Scenes",
"scenesPlayed": "Scenes Played",
"playCount": "Total Plays",
"playDuration": "Time Watched",
"sceneSize": "Scenes Size",
"sceneDuration": "Scenes Duration",
"images": "Images",
"scenes": "Scene",
"scenesPlayed": "Scene Riprodotte",
"playCount": "Totale Riproduzioni",
"playDuration": "Tempo Guardato",
"sceneSize": "Dimensione Delle Scene",
"sceneDuration": "Durata Delle Scene",
"images": "Immagini",
"imageSize": "Images Size",
"galleries": "Galleries",
"performers": "Performers",
"studios": "Studios",
"performers": "Esecutori",
"studios": "Studi",
"movies": "Film",
"tags": "Tag",
"oCount": "O Count"
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Utenti",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Allarmi",
"bans": "Bans"
}
}

View File

@@ -140,7 +140,7 @@
"connectionStatusPendingDisconnect": "接続を切断する",
"connectionStatusDisconnecting": "接続を切断中",
"connectionStatusDisconnected": "切断されました",
"connectionStatusConnected": "接続済み",
"connectionStatusConnected": "Connected",
"uptime": "稼働時間",
"maxDown": "最大ダウン",
"maxUp": "最大アップ",
@@ -277,11 +277,11 @@
"approved": "承認済",
"available": "利用可"
},
"pialert": {
"netalertx": {
"total": "合計",
"connected": "接続済み",
"new_devices": "新しいデバイス",
"down_alerts": "ダウンアラート"
"connected": "Connected",
"new_devices": "New Devices",
"down_alerts": "Down Alerts"
},
"pihole": {
"queries": "クエリ",
@@ -872,5 +872,9 @@
"labels": "ラベル",
"users": "ユーザ",
"totalValue": "合計値"
},
"crowdsec": {
"alerts": "アラート",
"bans": "Bans"
}
}

View File

@@ -277,7 +277,7 @@
"approved": "승인됨",
"available": "이용 가능"
},
"pialert": {
"netalertx": {
"total": "총합",
"connected": "Connected",
"new_devices": "New Devices",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "사용자",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "경고",
"bans": "Bans"
}
}

View File

@@ -277,7 +277,7 @@
"approved": "Approved",
"available": "Available"
},
"pialert": {
"netalertx": {
"total": "Kopā",
"connected": "Connected",
"new_devices": "New Devices",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Lietotāji",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Paziņojumi",
"bans": "Bans"
}
}

View File

@@ -277,7 +277,7 @@
"approved": "Lulus",
"available": "Sudah Ada"
},
"pialert": {
"netalertx": {
"total": "Jumlah",
"connected": "Connected",
"new_devices": "New Devices",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Pengguna",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Alerts",
"bans": "Bans"
}
}

View File

@@ -277,7 +277,7 @@
"approved": "Goedgekeurd",
"available": "Beschikbaar"
},
"pialert": {
"netalertx": {
"total": "Totaal",
"connected": "Verbonden",
"new_devices": "Nieuwe Apparaten",
@@ -826,8 +826,8 @@
"noEventsFound": "Geen gebeurtenissen gevonden"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
"platforms": "Platformen",
"totalRoms": "Totale ROM's"
},
"netdata": {
"warnings": "Waarschuwingen",
@@ -840,7 +840,7 @@
"species": "Soorten"
},
"gitea": {
"notifications": "Notifications",
"notifications": "Notificaties",
"issues": "Problemen",
"pulls": "Pull Requests"
},
@@ -863,7 +863,7 @@
"tandoor": {
"users": "Gebruikers",
"recipes": "Recepten",
"keywords": "Keywords"
"keywords": "Trefwoorden"
},
"homebox": {
"items": "Items",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Gebruikers",
"totalValue": "Totale waarde"
},
"crowdsec": {
"alerts": "Meldingen",
"bans": "Bans"
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -40,7 +40,7 @@
},
"resources": {
"cpu": "Procesor",
"mem": "PAM",
"mem": "RAM",
"total": "Całkowite",
"free": "Wolne",
"used": "Użyte",
@@ -53,9 +53,9 @@
"users": "Użytkownicy",
"uptime": "Czas działania",
"days": "Dni",
"wan": "Sieć WAN",
"lan": "Sieć LAN",
"wlan": "Sieć WLAN",
"wan": "WAN",
"lan": "LAN",
"wlan": "WLAN",
"devices": "Urządzenia",
"lan_devices": "Urządzenia LAN",
"wlan_devices": "Urządzenia WLAN",
@@ -64,23 +64,23 @@
"up": "CZAS",
"down": "Pobieranie",
"wait": "Proszę czekać",
"empty_data": "Nieznany stan"
"empty_data": "Status podsystemu nieznany"
},
"docker": {
"rx": "Rx",
"tx": "Tx",
"mem": "PAM",
"mem": "RAM",
"cpu": "Procesor",
"running": "Działa",
"offline": "Nieosiągalny",
"error": "Błąd",
"unknown": "Nieznany",
"healthy": "Zdrowy",
"starting": "Rozpoczynanie",
"unhealthy": "Niezdrowe",
"starting": "Uruchamianie",
"unhealthy": "Niezdrowy",
"not_found": "Nie znaleziono",
"exited": "Zakończone",
"partial": "Częściowe"
"exited": "Zakończony",
"partial": "Częściowy"
},
"ping": {
"error": "Błąd",
@@ -137,18 +137,18 @@
"connectionStatusUnconfigured": "Nieskonfigurowane",
"connectionStatusConnecting": "Łączenie",
"connectionStatusAuthenticating": "Uwierzytelnianie",
"connectionStatusPendingDisconnect": "Pending Disconnect",
"connectionStatusPendingDisconnect": "Oczekujące rozłączenie",
"connectionStatusDisconnecting": "Rozłączanie",
"connectionStatusDisconnected": "Rozłączono",
"connectionStatusConnected": "Połączony",
"connectionStatusConnected": "Connected",
"uptime": "Czas działania",
"maxDown": "Max. Down",
"maxUp": "Max. Up",
"maxDown": "Maks. Pobieranie",
"maxUp": "Maks. Wysyłanie",
"down": "Niedostępny",
"up": "Dostępny",
"received": "Odebrane",
"sent": "Wysłane",
"externalIPAddress": "Ext. IP"
"externalIPAddress": "Pub. IP"
},
"caddy": {
"upstreams": "Upstreams",
@@ -156,12 +156,12 @@
"requests_failed": "Nieudane zapytania"
},
"changedetectionio": {
"totalObserved": "Obserwowanych ogółem",
"diffsDetected": "Wykryto różnic"
"totalObserved": "Łącznie obserwowanych",
"diffsDetected": "Wykrytych różnic"
},
"channelsdvrserver": {
"shows": "Seriale",
"recordings": "Nagrywanie",
"recordings": "Nagrania",
"scheduled": "W kolejce",
"passes": "Przebiegi"
},
@@ -277,11 +277,11 @@
"approved": "Zaakceptowane",
"available": "Dostępne"
},
"pialert": {
"netalertx": {
"total": "Całkowite",
"connected": "Połączony",
"new_devices": "Nowe urządzenia",
"down_alerts": "Powiadomienia o niedostępności"
"connected": "Connected",
"new_devices": "New Devices",
"down_alerts": "Down Alerts"
},
"pihole": {
"queries": "Zapytania",
@@ -395,7 +395,7 @@
"failedLoginsLast24H": "Nieudane logowania (24h)"
},
"proxmox": {
"mem": "PAM",
"mem": "RAM",
"cpu": "Procesor",
"lxc": "Kontenery LXC",
"vms": "Maszyn wirtualnych"
@@ -413,7 +413,7 @@
"used": "Użyte",
"days": "d",
"hours": "g",
"crit": "Crit",
"crit": "Krytyczyny",
"read": "Przeczytane",
"write": "Zapis",
"gpu": "Karta graficzna",
@@ -492,7 +492,7 @@
"updates": "Aktualizacje",
"update_available": "Dostępna aktualizacja",
"up_to_date": "Aktualny",
"child_bridges": "Child Bridges",
"child_bridges": "Mostki podrzędne",
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Dostępny",
"pending": "Oczekiwane",
@@ -501,12 +501,12 @@
"healthchecks": {
"new": "Nowy",
"up": "Dostępny",
"grace": "In Grace Period",
"grace": "W okresie karencji",
"down": "Niedostępny",
"paused": "Zatrzymane",
"status": "Stan",
"last_ping": "Ostatni ping",
"never": "No pings yet"
"never": "Brak pingów"
},
"watchtower": {
"containers_scanned": "Zeskanowane",
@@ -544,7 +544,7 @@
"hdhomerun": {
"channels": "Kanały",
"hd": "HD",
"tunerCount": "Tuners",
"tunerCount": "Tunery",
"channelNumber": "Kanał",
"channelNetwork": "Sieć",
"signalStrength": "Siła",
@@ -563,7 +563,7 @@
"total": "Całkowite"
},
"peanut": {
"battery_charge": "Battery Charge",
"battery_charge": "Stan baterii",
"ups_load": "Obciążenie UPS",
"ups_status": "Status UPS",
"online": "Dostępny",
@@ -576,7 +576,7 @@
},
"mikrotik": {
"cpuLoad": "Obciążenie procesora",
"memoryUsed": "Zuyżyta pamięć",
"memoryUsed": "Zużyta pamięć",
"uptime": "Czas działania",
"numberOfLeases": "Dzierżawy"
},
@@ -587,8 +587,8 @@
},
"opendtu": {
"yieldDay": "Dzisiaj",
"absolutePower": "Power",
"relativePower": "Power %",
"absolutePower": "Zasilanie",
"relativePower": "Moc %",
"limit": "Limit"
},
"opnsense": {
@@ -605,16 +605,16 @@
},
"octoprint": {
"printer_state": "Stan",
"temp_tool": "Tool temp",
"temp_bed": "Bed temp",
"temp_tool": "Temperatura narzędzia",
"temp_bed": "Temp. łóżka",
"job_completion": "Ukończono"
},
"cloudflared": {
"origin_ip": "Origin IP",
"origin_ip": "IP Źródła",
"status": "Stan"
},
"pfsense": {
"load": "Load Avg",
"load": "Śr. Obciążenie",
"memory": "Użycie pamięci",
"wanStatus": "Status WAN",
"up": "Dostępny",
@@ -624,8 +624,8 @@
"wanIP": "WAN IP"
},
"proxmoxbackupserver": {
"datastore_usage": "Datastore",
"failed_tasks_24h": "Failed Tasks 24h",
"datastore_usage": "Magazyn danych",
"failed_tasks_24h": "Nieudane zadania 24h",
"cpu_usage": "Procesor",
"memory_usage": "Pamięć"
},
@@ -679,7 +679,7 @@
"dashboards": "Panel główny",
"datasources": "Źródła danych",
"totalalerts": "Wszystkie alerty",
"alertstriggered": "Alerts Triggered"
"alertstriggered": "Wywołane alerty"
},
"nextcloud": {
"cpuload": "Obciążenie CPU",
@@ -687,7 +687,7 @@
"freespace": "Wolna przestrzeń",
"activeusers": "Aktywni użytkownicy",
"numfiles": "Pliki",
"numshares": "Shared Items"
"numshares": "Udostępnione elementy"
},
"kopia": {
"status": "Stan",
@@ -698,7 +698,7 @@
},
"unmanic": {
"active_workers": "Aktywni pracownicy",
"total_workers": "Total Workers",
"total_workers": "Wszyscy pracownicy",
"records_total": "Długość kolejki"
},
"pterodactyl": {
@@ -706,9 +706,9 @@
"nodes": "Węzły"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_total": "Total Targets"
"targets_up": "Cele włączone",
"targets_down": "Cele wyłączone",
"targets_total": "Wszystkich Celi"
},
"gatus": {
"up": "Działające",
@@ -727,9 +727,9 @@
"booksDuration": "Czas trwania"
},
"homeassistant": {
"people_home": "People Home",
"lights_on": "Lights On",
"switches_on": "Switches On"
"people_home": "Dom ludzi",
"lights_on": "Światła włączone",
"switches_on": "Przełączniki włączone"
},
"whatsupdocker": {
"monitoring": "Monitoring",
@@ -756,12 +756,12 @@
"status": "Stan",
"buildId": "ID kompilacji",
"succeeded": "Ukończono",
"notStarted": "Not Started",
"notStarted": "Nierozpoczęte",
"failed": "Niepowodzenie",
"canceled": "Anulowano",
"inProgress": "W trakcie",
"totalPrs": "Total PRs",
"myPrs": "My PRs",
"totalPrs": "Łącznie PRs",
"myPrs": "Moje PRs",
"approved": "Zaakceptowane"
},
"gamedig": {
@@ -770,7 +770,7 @@
"offline": "Nieosiągalny",
"name": "Nazwa",
"map": "Mapa",
"currentPlayers": "Current players",
"currentPlayers": "Gracze online",
"players": "Gracze",
"maxPlayers": "Maksymalna ilość graczy",
"bots": "Boty",
@@ -783,7 +783,7 @@
"totalUsed": "Użyta pamięć"
},
"mealie": {
"recipes": "Recipes",
"recipes": "Przepisy",
"users": "Użytkownicy",
"categories": "Kategorie",
"tags": "Tagi"
@@ -798,79 +798,83 @@
},
"openwrt": {
"uptime": "Czas działania",
"cpuLoad": "CPU Load Avg (5m)",
"cpuLoad": "Śr. obciążenie CPU (5m)",
"up": "Dostępny",
"down": "Niedostępny",
"bytesTx": "Transmitted",
"bytesTx": "Przesłane",
"bytesRx": "Odebrane"
},
"uptimerobot": {
"status": "Stan",
"uptime": "Czas działania",
"lastDown": "Last Downtime",
"downDuration": "Downtime Duration",
"lastDown": "Ostatni downtime",
"downDuration": "Długość downtime'u",
"sitesUp": "Działające",
"sitesDown": "Niedziałające",
"paused": "Zatrzymane",
"notyetchecked": "Not Yet Checked",
"notyetchecked": "Nie sprawdzono",
"up": "Dostępny",
"seemsdown": "Seems Down",
"seemsdown": "Możliwe, że wyłączony",
"down": "Niedostępny",
"unknown": "Nieznany"
},
"calendar": {
"inCinemas": "W kinach",
"physicalRelease": "Wydanie fizyczne",
"digitalRelease": "Digital release",
"noEventsToday": "No events for today!",
"noEventsFound": "No events found"
"digitalRelease": "Wydanie cyfrowe",
"noEventsToday": "Brak wydarzeń na dziś!",
"noEventsFound": "Nie znaleziono wydarzeń"
},
"romm": {
"platforms": "Platformy",
"totalRoms": "Total ROMs"
"totalRoms": "Łącznie ROM"
},
"netdata": {
"warnings": "Ostrzeżenia",
"criticals": "Criticals"
"criticals": "Krytyczny"
},
"plantit": {
"events": "Events",
"plants": "Plants",
"events": "Wydarzenia",
"plants": "Rośliny",
"photos": "Zdjęcia",
"species": "Species"
"species": "Gatunki"
},
"gitea": {
"notifications": "Notifications",
"notifications": "Powiadomienia",
"issues": "Zgłoszenia",
"pulls": "Pull Requests"
"pulls": "Żądania Pull"
},
"stash": {
"scenes": "Scenes",
"scenesPlayed": "Scenes Played",
"playCount": "Total Plays",
"playDuration": "Time Watched",
"sceneSize": "Scenes Size",
"sceneDuration": "Scenes Duration",
"images": "Images",
"imageSize": "Images Size",
"galleries": "Galleries",
"performers": "Performers",
"studios": "Studios",
"scenes": "Sceny",
"scenesPlayed": "Odgrane sceny",
"playCount": "Łącznie odtworzone",
"playDuration": "Łączny czas oglądania",
"sceneSize": "Rozmiar scen",
"sceneDuration": "Czas trwania scen",
"images": "Obrazy",
"imageSize": "Rozmiar obrazów",
"galleries": "Galerie",
"performers": "Artyści",
"studios": "Studia",
"movies": "Filmy",
"tags": "Tagi",
"oCount": "O Count"
"oCount": "O Licznik"
},
"tandoor": {
"users": "Użytkownicy",
"recipes": "Recipes",
"keywords": "Keywords"
"recipes": "Przepisy",
"keywords": "Słowa kluczowe"
},
"homebox": {
"items": "Items",
"totalWithWarranty": "With Warranty",
"locations": "Locations",
"labels": "Labels",
"items": "Elementy",
"totalWithWarranty": "Z gwarancją",
"locations": "Lokalizacje",
"labels": "Etykiety",
"users": "Użytkownicy",
"totalValue": "Total Value"
"totalValue": "Wartość całkowita"
},
"crowdsec": {
"alerts": "Alarmy",
"bans": "Bany"
}
}

View File

@@ -140,7 +140,7 @@
"connectionStatusPendingDisconnect": "Desconexão pendente",
"connectionStatusDisconnecting": "Desconectando",
"connectionStatusDisconnected": "Desconectado",
"connectionStatusConnected": "Conectado",
"connectionStatusConnected": "Connected",
"uptime": "Ligado",
"maxDown": "Máx. de Descarga",
"maxUp": "Max. de Envio",
@@ -277,11 +277,11 @@
"approved": "Aprovada",
"available": "Disponível"
},
"pialert": {
"netalertx": {
"total": "Total",
"connected": "Conectado",
"new_devices": "Novos dispositivos",
"down_alerts": "Alertas de Baixo"
"connected": "Connected",
"new_devices": "New Devices",
"down_alerts": "Down Alerts"
},
"pihole": {
"queries": "Consultas",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Utilizadores",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Alertas",
"bans": "Bans"
}
}

View File

@@ -14,7 +14,7 @@
"date": "{{value, date}}",
"relativeDate": "{{value, relativeDate}}",
"uptime": "{{value, uptime}}",
"months": "mo",
"months": "M",
"days": "d",
"hours": "h",
"minutes": "m",
@@ -22,11 +22,11 @@
},
"widget": {
"missing_type": "Tipo de Widget ausente: {{type}}",
"api_error": "Erro da API",
"api_error": "Erros de API",
"information": "Informação",
"status": "Estado",
"url": "Endereço URL",
"raw_error": "Erro",
"raw_error": "Erro Raw",
"response_data": "Dados da Resposta"
},
"weather": {
@@ -85,23 +85,23 @@
"ping": {
"error": "Erro",
"ping": "Tempo de resposta",
"down": "Down",
"up": "Up",
"not_available": "Not Available"
"down": "Inativo",
"up": "Ativo",
"not_available": "Não Disponível"
},
"siteMonitor": {
"http_status": "HTTP status",
"http_status": "Estado HTTP",
"error": "Erro",
"response": "Response",
"down": "Down",
"up": "Up",
"not_available": "Not Available"
"response": "Resposta",
"down": "Inativo",
"up": "Ativo",
"not_available": "Não Disponível"
},
"emby": {
"playing": "A reproduzir",
"transcoding": "Transcodificação",
"bitrate": "Taxa de bits",
"no_active": "Sem streams ativas",
"no_active": "Sem Streams Ativos",
"movies": "Filmes",
"series": "Séries",
"episodes": "Episódios",
@@ -110,7 +110,7 @@
"esphome": {
"offline": "Desligado",
"offline_alt": "Desligado",
"online": "Online",
"online": "Disponível",
"total": "Total",
"unknown": "Desconhecido"
},
@@ -134,24 +134,24 @@
},
"fritzbox": {
"connectionStatus": "Estado",
"connectionStatusUnconfigured": "Unconfigured",
"connectionStatusConnecting": "Connecting",
"connectionStatusAuthenticating": "Authenticating",
"connectionStatusPendingDisconnect": "Pending Disconnect",
"connectionStatusDisconnecting": "Disconnecting",
"connectionStatusDisconnected": "Disconnected",
"connectionStatusConnected": "Connected",
"connectionStatusUnconfigured": "Não configurado",
"connectionStatusConnecting": "Conectando",
"connectionStatusAuthenticating": "Autenticando",
"connectionStatusPendingDisconnect": "Desconexão Pendente",
"connectionStatusDisconnecting": "Desconectando",
"connectionStatusDisconnected": "Desconectado",
"connectionStatusConnected": "Conectado",
"uptime": "Ligado",
"maxDown": "Max. Down",
"maxUp": "Max. Up",
"down": "Down",
"up": "Up",
"received": "Received",
"sent": "Sent",
"externalIPAddress": "Ext. IP"
"down": "Inativo",
"up": "Ativo",
"received": "Recebido",
"sent": "Enviado",
"externalIPAddress": "IP Externo"
},
"caddy": {
"upstreams": "Upstreams",
"upstreams": "Streams de Envio",
"requests": "Solicitações atuais",
"requests_failed": "Solicitações com falha"
},
@@ -160,24 +160,24 @@
"diffsDetected": "Diferenças Detetadas"
},
"channelsdvrserver": {
"shows": "Shows",
"shows": "Programas",
"recordings": "Gravações",
"scheduled": "Scheduled",
"scheduled": "Agendado",
"passes": "Passes"
},
"tautulli": {
"playing": "A reproduzir",
"transcoding": "Transcodificação",
"bitrate": "Taxa de bits",
"no_active": "Sem streams ativas",
"plex_connection_error": "Check Plex Connection"
"no_active": "Sem Streams Ativos",
"plex_connection_error": "Verifique a conexão do Plex"
},
"omada": {
"connectedAp": "APs Ligados",
"activeUser": "Dispositivos activos",
"activeUser": "Dispositivos ativos",
"alerts": "Alertas",
"connectedGateway": "Gateways ligados",
"connectedSwitches": "Switches ligados"
"connectedGateway": "Gateways conectados",
"connectedSwitches": "Switches conectados"
},
"nzbget": {
"rate": "Taxa",
@@ -186,7 +186,7 @@
},
"plex": {
"streams": "Streams Ativas",
"albums": "Albums",
"albums": "Álbuns",
"movies": "Filmes",
"tv": "Series de TV"
},
@@ -213,12 +213,12 @@
"seed": "Semente"
},
"qnap": {
"cpuUsage": "CPU Usage",
"memUsage": "MEM Usage",
"systemTempC": "System Temp",
"cpuUsage": "Uso de CPU",
"memUsage": "Uso de Memória",
"systemTempC": "Temp. do Sistema",
"poolUsage": "Pool Usage",
"volumeUsage": "Volume Usage",
"invalid": "Invalid"
"volumeUsage": "Uso do volume",
"invalid": "Inválido"
},
"deluge": {
"download": "Descarregar",
@@ -250,7 +250,7 @@
"lidarr": {
"wanted": "Desejada",
"queued": "Em fila",
"artists": "Artists"
"artists": "Artistas"
},
"readarr": {
"wanted": "Desejada",
@@ -277,16 +277,16 @@
"approved": "Aprovada",
"available": "Disponível"
},
"pialert": {
"netalertx": {
"total": "Total",
"connected": "Connected",
"new_devices": "New Devices",
"down_alerts": "Down Alerts"
"connected": "Conectado",
"new_devices": "Novos dispositivos",
"down_alerts": "Alertas de Inatividade"
},
"pihole": {
"queries": "Consultas",
"blocked": "Bloqueado",
"blocked_percent": "Blocked %",
"blocked_percent": "Bloqueado %",
"gravity": "Gravidade"
},
"adguard": {
@@ -306,11 +306,11 @@
"total": "Total"
},
"tailscale": {
"address": "Address",
"expires": "Expires",
"never": "Never",
"last_seen": "Last Seen",
"now": "Now",
"address": "Endereço",
"expires": "Expira em",
"never": "Nunca",
"last_seen": "Visto por último",
"now": "Agora",
"years": "{{number}}y",
"weeks": "{{number}}w",
"days": "{{number}}d",
@@ -331,8 +331,8 @@
"middleware": "Middleware"
},
"navidrome": {
"nothing_streaming": "Sem streams ativas",
"please_wait": "Por favor aguarde"
"nothing_streaming": "Sem Streams Ativos",
"please_wait": "Por favor, aguarde"
},
"npm": {
"enabled": "Ativo",
@@ -382,7 +382,7 @@
"players": "Reprodutores",
"version": "Versão",
"status": "Estado",
"up": "Online",
"up": "Disponível",
"down": "Desligado"
},
"miniflux": {
@@ -405,20 +405,20 @@
"load": "Carga",
"wait": "Por favor aguarde",
"temp": "TEMP",
"_temp": "Temp",
"warn": "Warn",
"_temp": "Temperatura",
"warn": "Aviso",
"uptime": "CIMA",
"total": "Total",
"free": "Livre",
"used": "Utilizado",
"days": "d",
"hours": "h",
"crit": "Crit",
"crit": "Crítico",
"read": "Lido",
"write": "Write",
"write": "Escrita",
"gpu": "GPU",
"mem": "Mem",
"swap": "Swap"
"mem": "Memória",
"swap": "Temporário"
},
"quicklaunch": {
"bookmark": "Marcador",
@@ -427,7 +427,7 @@
"custom": "Personalizado",
"visit": "Visitar",
"url": "Endereço URL",
"searchsuggestion": "Suggestion"
"searchsuggestion": "Sugestão"
},
"wmo": {
"0-day": "Solarengo",
@@ -494,15 +494,15 @@
"up_to_date": "Atualizado",
"child_bridges": "Pontes Filhas",
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Up",
"up": "Ativo",
"pending": "Pendente",
"down": "Down"
"down": "Inativo"
},
"healthchecks": {
"new": "Novo",
"up": "Up",
"up": "Ativo",
"grace": "Em Período Gratuito",
"down": "Down",
"down": "Inativo",
"paused": "Pausado",
"status": "Estado",
"last_ping": "Ultimo Ping",
@@ -544,14 +544,14 @@
"hdhomerun": {
"channels": "Canais",
"hd": "HD",
"tunerCount": "Tuners",
"channelNumber": "Channel",
"channelNetwork": "Network",
"signalStrength": "Strength",
"signalQuality": "Quality",
"symbolQuality": "Quality",
"tunerCount": "Sintonizadores",
"channelNumber": "Canal",
"channelNetwork": "Rede",
"signalStrength": "Potência",
"signalQuality": "Qualidade",
"symbolQuality": "Qualidade",
"networkRate": "Taxa de bits",
"clientIP": "Client"
"clientIP": "Cliente"
},
"scrutiny": {
"passed": "Aprovado",
@@ -563,15 +563,15 @@
"total": "Total"
},
"peanut": {
"battery_charge": "Battery Charge",
"ups_load": "UPS Load",
"ups_status": "UPS Status",
"online": "Online",
"on_battery": "On Battery",
"low_battery": "Low Battery"
"battery_charge": "Carga da bateria",
"ups_load": "Carga do UPS",
"ups_status": "Estado UPS",
"online": "Disponível",
"on_battery": "Na bateria",
"low_battery": "Bateria Fraca"
},
"nextdns": {
"wait": "Por favor aguarde",
"wait": "Por favor, aguarde",
"no_devices": "Nenhum dado do dispositivo recebido"
},
"mikrotik": {
@@ -586,10 +586,10 @@
"streams_xepg": "Canais XEPG"
},
"opendtu": {
"yieldDay": "Today",
"absolutePower": "Power",
"relativePower": "Power %",
"limit": "Limit"
"yieldDay": "Hoje",
"absolutePower": "Energia",
"relativePower": "Energia %",
"limit": "Limite"
},
"opnsense": {
"cpu": "Carga do CPU",
@@ -614,14 +614,14 @@
"status": "Estado"
},
"pfsense": {
"load": "Load Avg",
"memory": "Mem Usage",
"wanStatus": "WAN Status",
"up": "Up",
"down": "Down",
"temp": "Temp",
"disk": "Disk Usage",
"wanIP": "WAN IP"
"load": "Carga Média",
"memory": "Uso de memória",
"wanStatus": "Estado WAN",
"up": "Ativo",
"down": "Inativo",
"temp": "Temperatura",
"disk": "Uso do disco",
"wanIP": "IP WAN"
},
"proxmoxbackupserver": {
"datastore_usage": "Armaz. de Dados",
@@ -644,9 +644,9 @@
},
"atsumeru": {
"series": "Séries",
"archives": "Archives",
"chapters": "Chapters",
"categories": "Categories"
"archives": "Arquivos",
"chapters": "Capítulos",
"categories": "Categorias"
},
"komga": {
"libraries": "Bibliotecas",
@@ -664,7 +664,7 @@
"wanted": "Desejada"
},
"photoprism": {
"albums": "Albums",
"albums": "Álbuns",
"photos": "Fotos",
"videos": "Vídeos",
"people": "Pessoa"
@@ -686,8 +686,8 @@
"memoryusage": "Memória Utilizada",
"freespace": "Espaço Livre",
"activeusers": "Utilizadores Ativos",
"numfiles": "Files",
"numshares": "Shared Items"
"numfiles": "Arquivos",
"numshares": "Itens compartilhados"
},
"kopia": {
"status": "Estado",
@@ -698,7 +698,7 @@
},
"unmanic": {
"active_workers": "Workers Ativos",
"total_workers": "Total Workers",
"total_workers": "Total de trabalhadores",
"records_total": "Comprimento da Fila"
},
"pterodactyl": {
@@ -716,7 +716,7 @@
"uptime": "Ligado"
},
"ghostfolio": {
"gross_percent_today": "Today",
"gross_percent_today": "Hoje",
"gross_percent_1y": "Um ano",
"gross_percent_max": "Todo o tempo"
},
@@ -732,13 +732,13 @@
"switches_on": "Interruptores Ligados"
},
"whatsupdocker": {
"monitoring": "Monitoring",
"monitoring": "Monitorando",
"updates": "Atualizações"
},
"calibreweb": {
"books": "Livros",
"authors": "Authors",
"categories": "Categories",
"authors": "Autores",
"categories": "Categorias",
"series": "Séries"
},
"jdownloader": {
@@ -749,47 +749,47 @@
},
"kavita": {
"seriesCount": "Séries",
"totalFiles": "Files"
"totalFiles": "Arquivos"
},
"azuredevops": {
"result": "Result",
"result": "Resultado",
"status": "Estado",
"buildId": "Build ID",
"succeeded": "Succeeded",
"notStarted": "Not Started",
"buildId": "ID Compilação",
"succeeded": "Bem-sucedido",
"notStarted": "Não iniciado",
"failed": "Falhou",
"canceled": "Canceled",
"inProgress": "In Progress",
"totalPrs": "Total PRs",
"myPrs": "My PRs",
"canceled": "Cancelado",
"inProgress": "Em Progresso",
"totalPrs": "Total de PRs",
"myPrs": "Minhas PRs",
"approved": "Aprovada"
},
"gamedig": {
"status": "Estado",
"online": "Online",
"online": "Disponível",
"offline": "Desligado",
"name": "Name",
"map": "Map",
"currentPlayers": "Current players",
"name": "Nome",
"map": "Mapa",
"currentPlayers": "Jogadores atuais",
"players": "Reprodutores",
"maxPlayers": "Max players",
"bots": "Bots",
"maxPlayers": "Número Máximo de Jogadores",
"bots": "Robôs",
"ping": "Tempo de resposta"
},
"urbackup": {
"ok": "Ok",
"errored": "Errors",
"noRecent": "Out of Date",
"totalUsed": "Used Storage"
"errored": "Erros",
"noRecent": "Desatualizado",
"totalUsed": "Armazanamento Utilizado"
},
"mealie": {
"recipes": "Recipes",
"recipes": "Receitas",
"users": "Utilizadores",
"categories": "Categories",
"tags": "Tags"
"categories": "Categorias",
"tags": "Marcadores"
},
"openmediavault": {
"downloading": "Downloading",
"downloading": "Baixando",
"total": "Total",
"running": "A correr",
"stopped": "Parado",
@@ -798,79 +798,83 @@
},
"openwrt": {
"uptime": "Ligado",
"cpuLoad": "CPU Load Avg (5m)",
"up": "Up",
"down": "Down",
"bytesTx": "Transmitted",
"bytesRx": "Received"
"cpuLoad": "Carga da CPU média (5m)",
"up": "Ativo",
"down": "Inativo",
"bytesTx": "Transmitido",
"bytesRx": "Recebido"
},
"uptimerobot": {
"status": "Estado",
"uptime": "Ligado",
"lastDown": "Last Downtime",
"downDuration": "Downtime Duration",
"lastDown": "Última inatividade",
"downDuration": "Duração de inatividade",
"sitesUp": "Sites no Ar",
"sitesDown": "Sites Fora do Ar",
"paused": "Pausado",
"notyetchecked": "Not Yet Checked",
"up": "Up",
"seemsdown": "Seems Down",
"down": "Down",
"notyetchecked": "Não conferidos ainda",
"up": "Ativo",
"seemsdown": "Parece Desconectado",
"down": "Inativo",
"unknown": "Desconhecido"
},
"calendar": {
"inCinemas": "In cinemas",
"physicalRelease": "Physical release",
"digitalRelease": "Digital release",
"noEventsToday": "No events for today!",
"noEventsFound": "No events found"
"inCinemas": "Nos cinemas",
"physicalRelease": "Versão física",
"digitalRelease": "Versão digital",
"noEventsToday": "Nenhum evento para hoje!",
"noEventsFound": "Nenhum evento encontrado"
},
"romm": {
"platforms": "Platforms",
"totalRoms": "Total ROMs"
"platforms": "Plataformas",
"totalRoms": "Total de ROMs"
},
"netdata": {
"warnings": "Warnings",
"criticals": "Criticals"
"warnings": "Alertas",
"criticals": "Críticos"
},
"plantit": {
"events": "Events",
"plants": "Plants",
"events": "Eventos",
"plants": "Plantas",
"photos": "Fotos",
"species": "Species"
"species": "Espécies"
},
"gitea": {
"notifications": "Notifications",
"notifications": "Notificações",
"issues": "Problemas",
"pulls": "Pull Requests"
"pulls": "Solicitações de Envio"
},
"stash": {
"scenes": "Scenes",
"scenesPlayed": "Scenes Played",
"playCount": "Total Plays",
"playDuration": "Time Watched",
"sceneSize": "Scenes Size",
"sceneDuration": "Scenes Duration",
"images": "Images",
"imageSize": "Images Size",
"galleries": "Galleries",
"performers": "Performers",
"studios": "Studios",
"scenes": "Cenas",
"scenesPlayed": "Cenas Reproduzidas",
"playCount": "Total de Reproduções",
"playDuration": "Tempo Assistido",
"sceneSize": "Tamanho das cenas",
"sceneDuration": "Duração das cenas",
"images": "Imagens",
"imageSize": "Tamanho da Imagem",
"galleries": "Galerias",
"performers": "Atores",
"studios": "Estúdios",
"movies": "Filmes",
"tags": "Tags",
"oCount": "O Count"
"tags": "Marcadores",
"oCount": "Contagem 0"
},
"tandoor": {
"users": "Utilizadores",
"recipes": "Recipes",
"keywords": "Keywords"
"recipes": "Receitas",
"keywords": "Palavras-chave"
},
"homebox": {
"items": "Items",
"totalWithWarranty": "With Warranty",
"locations": "Locations",
"labels": "Labels",
"items": "Itens",
"totalWithWarranty": "Com Garantia",
"locations": "Localização",
"labels": "Rótulos",
"users": "Utilizadores",
"totalValue": "Total Value"
"totalValue": "Valor Total"
},
"crowdsec": {
"alerts": "Alertas",
"bans": "Banimentos"
}
}

View File

@@ -277,7 +277,7 @@
"approved": "Aprobate",
"available": "Disponibile"
},
"pialert": {
"netalertx": {
"total": "Total",
"connected": "Connected",
"new_devices": "New Devices",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Utilizatori",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Alerts",
"bans": "Bans"
}
}

View File

@@ -140,7 +140,7 @@
"connectionStatusPendingDisconnect": "Ожидает отключения",
"connectionStatusDisconnecting": "Отключение",
"connectionStatusDisconnected": "Отключено",
"connectionStatusConnected": "Подключено",
"connectionStatusConnected": "Connected",
"uptime": "Время работы",
"maxDown": "Макс. Загрузка",
"maxUp": "Макс. Отдача",
@@ -277,11 +277,11 @@
"approved": "Одобрено",
"available": "Доступно"
},
"pialert": {
"netalertx": {
"total": "Всего",
"connected": "Подключено",
"new_devices": "Новые устройства",
"down_alerts": "Оповещение о недоступности"
"connected": "Connected",
"new_devices": "New Devices",
"down_alerts": "Down Alerts"
},
"pihole": {
"queries": "Запросы",
@@ -872,5 +872,9 @@
"labels": "Ярлыки",
"users": "Пользователи",
"totalValue": "Общая стоимость"
},
"crowdsec": {
"alerts": "Предупреждения",
"bans": "Bans"
}
}

View File

@@ -140,7 +140,7 @@
"connectionStatusPendingDisconnect": "Čakám na odpojenie",
"connectionStatusDisconnecting": "Odpájanie",
"connectionStatusDisconnected": "Odpojené",
"connectionStatusConnected": "Pripojené",
"connectionStatusConnected": "Connected",
"uptime": "Prevádzka",
"maxDown": "Max. sťahovanie",
"maxUp": "Max. nahrávanie",
@@ -277,11 +277,11 @@
"approved": "Schválené",
"available": "Dostupné"
},
"pialert": {
"netalertx": {
"total": "Celkovo",
"connected": "Pripojené",
"new_devices": "Nové zariadenia",
"down_alerts": "Upozornenia o výpadkoch"
"connected": "Connected",
"new_devices": "New Devices",
"down_alerts": "Down Alerts"
},
"pihole": {
"queries": "Dopyty",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Používatelia",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Upozornenia",
"bans": "Bans"
}
}

View File

@@ -140,7 +140,7 @@
"connectionStatusPendingDisconnect": "Čakanje na prekinitev",
"connectionStatusDisconnecting": "Prekinitev",
"connectionStatusDisconnected": "Prekinjeno",
"connectionStatusConnected": "Povezanih",
"connectionStatusConnected": "Povezan",
"uptime": "Čas delovanja",
"maxDown": "Maks. dol",
"maxUp": "Maks. gor",
@@ -277,11 +277,11 @@
"approved": "Odobreno",
"available": "Na voljo"
},
"pialert": {
"netalertx": {
"total": "Skupaj",
"connected": "Povezanih",
"new_devices": "Nove naprave",
"down_alerts": "Izključeno"
"connected": "Povezan",
"new_devices": "Nova naprave",
"down_alerts": "Alarmi nedelovanja"
},
"pihole": {
"queries": "Poizvedbe",
@@ -872,5 +872,9 @@
"labels": "Oznake",
"users": "Uporabniki",
"totalValue": "Skupna vrednost"
},
"crowdsec": {
"alerts": "Opozorila",
"bans": "Prepovedi"
}
}

View File

@@ -277,7 +277,7 @@
"approved": "Approved",
"available": "Available"
},
"pialert": {
"netalertx": {
"total": "Total",
"connected": "Connected",
"new_devices": "New Devices",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Users",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Alerts",
"bans": "Bans"
}
}

View File

@@ -104,7 +104,7 @@
"no_active": "Inga aktiva strömmar",
"movies": "Movies",
"series": "Series",
"episodes": "Episodes",
"episodes": "Avsnitt",
"songs": "Songs"
},
"esphome": {
@@ -277,7 +277,7 @@
"approved": "Godkända",
"available": "Tillgänglig"
},
"pialert": {
"netalertx": {
"total": "Total",
"connected": "Connected",
"new_devices": "New Devices",
@@ -423,7 +423,7 @@
"quicklaunch": {
"bookmark": "Bookmark",
"service": "Service",
"search": "Search",
"search": "Sök",
"custom": "Custom",
"visit": "Visit",
"url": "URL",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Användare",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Alerts",
"bans": "Bans"
}
}

View File

@@ -277,7 +277,7 @@
"approved": "ఆమోదించబడింది",
"available": "అందుబాటులో వున్నవి"
},
"pialert": {
"netalertx": {
"total": "మొత్తం",
"connected": "Connected",
"new_devices": "New Devices",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "వినియోగదారులు",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Alerts",
"bans": "Bans"
}
}

View File

@@ -277,7 +277,7 @@
"approved": "Approved",
"available": "Available"
},
"pialert": {
"netalertx": {
"total": "ทั้งหมด",
"connected": "Connected",
"new_devices": "New Devices",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "ผู้ใช้",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Alerts",
"bans": "Bans"
}
}

View File

@@ -21,7 +21,7 @@
"seconds": "s"
},
"widget": {
"missing_type": "Kayıp Araç Türü: {{type}}",
"missing_type": "Eksik Araç Türü: {{type}}",
"api_error": "API Hatası",
"information": "Bilgi",
"status": "Durum",
@@ -42,12 +42,12 @@
"cpu": "CPU",
"mem": "MEM",
"total": "Toplam",
"free": "Boşta",
"free": "Boş",
"used": "Kullanımda",
"load": "Yük",
"temp": "Geçici",
"temp": "Sıcaklık",
"max": "En Yüksek",
"uptime": "Çalışma Süresi"
"uptime": "Çalışıyor"
},
"unifi": {
"users": "Kullanıcılar",
@@ -61,7 +61,7 @@
"wlan_devices": "WLAN Aygıtları",
"lan_users": "LAN Kullanıcıları",
"wlan_users": "WLAN Kullanıcıları",
"up": "Çalışma Süresi",
"up": "Çalışıyor",
"down": "Aşağı",
"wait": "Lütfen bekleyin",
"empty_data": "Alt sistem durumu bilinmiyor"
@@ -71,15 +71,15 @@
"tx": "Giden Veri",
"mem": "MEM",
"cpu": "CPU",
"running": "Çalışan",
"running": "Çalışıyor",
"offline": "Çevrimdışı",
"error": "Hata",
"unknown": "Bilinmiyor",
"healthy": "Sağlık",
"healthy": "Sağlıklı",
"starting": "Başlatılıyor",
"unhealthy": "Sağlıksız",
"not_found": "Bulunamadı",
"exited": "Durduruldu",
"exited": "Kapandı",
"partial": "Parçalı"
},
"ping": {
@@ -123,8 +123,8 @@
"watt_hour": "Watt/Saat"
},
"flood": {
"download": "İndir",
"upload": "Yükle",
"download": "İndirme",
"upload": "Yükleme",
"leech": "Tüketici",
"seed": "Sağlayıcı"
},
@@ -197,18 +197,18 @@
},
"rutorrent": {
"active": "Aktif",
"upload": "Yükle",
"download": "İndir"
"upload": "Yükleme",
"download": "İndirme"
},
"transmission": {
"download": "İndir",
"upload": "Yükle",
"download": "İndirme",
"upload": "Yükleme",
"leech": "Tüketici",
"seed": "Sağlayıcı"
},
"qbittorrent": {
"download": "İndir",
"upload": "Yükle",
"download": "İndirme",
"upload": "Yükleme",
"leech": "Tüketici",
"seed": "Sağlayıcı"
},
@@ -221,87 +221,87 @@
"invalid": "Geçersiz"
},
"deluge": {
"download": "İndir",
"upload": "Yükle",
"download": "İndirme",
"upload": "Yükleme",
"leech": "Tüketici",
"seed": "Sağlayıcı"
},
"downloadstation": {
"download": "İndir",
"upload": "Yükle",
"download": "İndirme",
"upload": "Yükleme",
"leech": "Tüketici",
"seed": "Sağlayıcı"
},
"sonarr": {
"wanted": "Aranan",
"queued": "Kuyrukta",
"wanted": "İstendi",
"queued": "Sırada",
"series": "Diziler",
"queue": "Kuyruk",
"unknown": "Bilinmiyor"
},
"radarr": {
"wanted": "Aranan",
"missing": "Kayıp",
"queued": "Kuyrukta",
"wanted": "İstendi",
"missing": "Eksik",
"queued": "Sırada",
"movies": "Filmler",
"queue": "Kuyruk",
"unknown": "Bilinmiyor"
},
"lidarr": {
"wanted": "Aranan",
"queued": "Kuyrukta",
"wanted": "İstendi",
"queued": "Sırada",
"artists": "Sanatçılar"
},
"readarr": {
"wanted": "Aranan",
"queued": "Kuyrukta",
"wanted": "İstendi",
"queued": "Sırada",
"books": "Kitaplar"
},
"bazarr": {
"missingEpisodes": "Kayıp Bölümler",
"missingMovies": "Kayıp Filmler"
"missingEpisodes": "Eksik Bölümler",
"missingMovies": "Eksik Filmler"
},
"ombi": {
"pending": "Bekliyor",
"pending": "Bekleyen",
"approved": "Onaylı",
"available": "Kullanılabilir"
},
"jellyseerr": {
"pending": "Bekliyor",
"pending": "Bekleyen",
"approved": "Onaylı",
"available": "Kullanılabilir"
},
"overseerr": {
"pending": "Bekliyor",
"pending": "Bekleyen",
"processing": "İşleniyor",
"approved": "Onaylı",
"available": "Kullanılabilir"
},
"pialert": {
"netalertx": {
"total": "Toplam",
"connected": "Bağlandı",
"new_devices": "Yeni Cihazlar",
"down_alerts": "Düşme Uyarıları"
"down_alerts": "Hata Uyarıları"
},
"pihole": {
"queries": "Sorgular",
"blocked": "Engellenen",
"blocked_percent": "Engellenen %",
"gravity": "Yer Çekimi"
"gravity": "Gravity"
},
"adguard": {
"queries": "Sorgular",
"blocked": "Engellenen",
"filtered": "Filtrelenen",
"filtered": "Filtrelendi",
"latency": "Gecikme"
},
"speedtest": {
"upload": "Yükle",
"download": "İndir",
"upload": "Yükleme",
"download": "İndirme",
"ping": "Gecikme"
},
"portainer": {
"running": "Çalışan",
"running": "Çalışıyor",
"stopped": "Durduruldu",
"total": "Toplam"
},
@@ -353,10 +353,10 @@
},
"prowlarr": {
"enableIndexers": "Dizin Oluşturucular",
"numberOfGrabs": "Yakalama Sayısı",
"numberOfGrabs": "Yakalamalar",
"numberOfQueries": "Sorgular",
"numberOfFailGrabs": "Başarısız Yakalama Sayısı",
"numberOfFailQueries": "Başarısız Sorgu Sayısı"
"numberOfFailGrabs": "Başarısız Yakalamalar",
"numberOfFailQueries": "Başarısız Sorgular"
},
"jackett": {
"configured": "Yapılandırılmış",
@@ -374,8 +374,8 @@
"domain_count": "Etki Alanları"
},
"medusa": {
"wanted": "Aranan",
"queued": "Kuyrukta",
"wanted": "İstendi",
"queued": "Sırada",
"series": "Diziler"
},
"minecraft": {
@@ -386,7 +386,7 @@
"down": "Çevrimdışı"
},
"miniflux": {
"read": "Oku",
"read": "Okunan",
"unread": "Okunmamış"
},
"authentik": {
@@ -404,17 +404,17 @@
"cpu": "CPU",
"load": "Yük",
"wait": "Lütfen bekleyin",
"temp": "Geçici",
"temp": "Sıcaklık",
"_temp": "Sıcaklık",
"warn": "Uyarı",
"uptime": "Çalışma Süresi",
"uptime": "Çalışıyor",
"total": "Toplam",
"free": "Boşta",
"free": "Boş",
"used": "Kullanımda",
"days": "g",
"hours": "sa",
"crit": "Kritik",
"read": "Oku",
"read": "Okunan",
"write": "Yazma",
"gpu": "GPU",
"mem": "Hafıza",
@@ -495,7 +495,7 @@
"child_bridges": "Alt Köprüler",
"child_bridges_status": "{{ok}}/{{total}}",
"up": "Yükleme",
"pending": "Bekliyor",
"pending": "Bekleyen",
"down": "İndirme"
},
"healthchecks": {
@@ -503,7 +503,7 @@
"up": "Yükleme",
"grace": "Tolerans Döneminde",
"down": "İndirme",
"paused": "Durduruldu",
"paused": "Duraklatıldı",
"status": "Durum",
"last_ping": "Son Ping",
"never": "Henüz ping yok"
@@ -636,8 +636,8 @@
"storage": "Depo"
},
"uptimekuma": {
"up": "Sites Up",
"down": "Sites Down",
"up": "Siteler Çalışıyor",
"down": "Siteler Çalışmıyor",
"uptime": "Çalışma Süresi",
"incident": "Olay",
"m": "dk"
@@ -661,7 +661,7 @@
"mylar": {
"series": "Diziler",
"issues": "Sorunlar",
"wanted": "Aranan"
"wanted": "İstendi"
},
"photoprism": {
"albums": "Albümler",
@@ -706,13 +706,13 @@
"nodes": "Düğümler"
},
"prometheus": {
"targets_up": "Targets Up",
"targets_down": "Targets Down",
"targets_up": "Hedef Çalışıyor",
"targets_down": "Hedef Çalışmıyor",
"targets_total": "Toplam Hedef"
},
"gatus": {
"up": "Sites Up",
"down": "Sites Down",
"up": "Siteler Çalışıyor",
"down": "Siteler Çalışmıyor",
"uptime": "Çalışma Süresi"
},
"ghostfolio": {
@@ -727,7 +727,7 @@
"booksDuration": "Süre"
},
"homeassistant": {
"people_home": "People Home",
"people_home": "Evdeki İnsanlar",
"lights_on": "Işıklar Açık",
"switches_on": "Aç"
},
@@ -754,14 +754,14 @@
"azuredevops": {
"result": "Sonuç",
"status": "Durum",
"buildId": "Build ID",
"buildId": "Yapı Kimliği",
"succeeded": "Başarılı",
"notStarted": "Henüz Başlamadı",
"failed": "Başarısız",
"canceled": "İptal edildi",
"inProgress": "Sürüyor",
"totalPrs": "Total PRs",
"myPrs": "My PRs",
"totalPrs": "Toplam Çekme İstekleri",
"myPrs": "Benim Çekme İsteklerim",
"approved": "Onaylı"
},
"gamedig": {
@@ -791,7 +791,7 @@
"openmediavault": {
"downloading": "İndiriliyor",
"total": "Toplam",
"running": "Çalışan",
"running": "Çalışıyor",
"stopped": "Durduruldu",
"passed": "Geçti",
"failed": "Başarısız"
@@ -809,9 +809,9 @@
"uptime": "Çalışma Süresi",
"lastDown": "Son Kesinti",
"downDuration": "Kesinti Süresi",
"sitesUp": "Sites Up",
"sitesDown": "Sites Down",
"paused": "Durduruldu",
"sitesUp": "Siteler Çalışıyor",
"sitesDown": "Siteler Çalışmıyor",
"paused": "Duraklatıldı",
"notyetchecked": "Henüz Kontrol Edilmedi",
"up": "Yükleme",
"seemsdown": "Kapalı görünüyor",
@@ -821,7 +821,7 @@
"calendar": {
"inCinemas": "Sinemalarda",
"physicalRelease": "Fiziksel Yayınlanan",
"digitalRelease": "Dijital Yayınlanan",
"digitalRelease": "Dijitalde Yayınlandı",
"noEventsToday": "Bugün için etkinlik yok!",
"noEventsFound": "Etkinlik bulunamadı"
},
@@ -835,7 +835,7 @@
},
"plantit": {
"events": "Etkinlikler",
"plants": "Plants",
"plants": "Bitkiler",
"photos": "Fotoğraflar",
"species": "Türler"
},
@@ -854,11 +854,11 @@
"images": "Görseller",
"imageSize": "Görsel Boyutu",
"galleries": "Galeriler",
"performers": "Performers",
"performers": "Oyuncu",
"studios": "Stüdyolar",
"movies": "Filmler",
"tags": "Etiketler",
"oCount": "O Count"
"oCount": "O Sayısı"
},
"tandoor": {
"users": "Kullanıcılar",
@@ -872,5 +872,9 @@
"labels": "Etiketler",
"users": "Kullanıcılar",
"totalValue": "Toplam Değer"
},
"crowdsec": {
"alerts": "Alarmlar",
"bans": "Yasaklar"
}
}

View File

@@ -140,7 +140,7 @@
"connectionStatusPendingDisconnect": "Pending Disconnect",
"connectionStatusDisconnecting": "Disconnecting",
"connectionStatusDisconnected": "Disconnected",
"connectionStatusConnected": "Підключено",
"connectionStatusConnected": "Connected",
"uptime": "Час роботи",
"maxDown": "Max. Down",
"maxUp": "Max. Up",
@@ -277,11 +277,11 @@
"approved": "Затверджено",
"available": "Доступно"
},
"pialert": {
"netalertx": {
"total": "Усього",
"connected": "Підключено",
"new_devices": "Нові пристрої",
"down_alerts": "Сповіщення про збій"
"connected": "Connected",
"new_devices": "New Devices",
"down_alerts": "Down Alerts"
},
"pihole": {
"queries": "Запити",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Користувачі",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Оповіщення",
"bans": "Bans"
}
}

View File

@@ -277,7 +277,7 @@
"approved": "Đã duyệt",
"available": "Available"
},
"pialert": {
"netalertx": {
"total": "Tổng",
"connected": "Connected",
"new_devices": "New Devices",
@@ -872,5 +872,9 @@
"labels": "Labels",
"users": "Users",
"totalValue": "Total Value"
},
"crowdsec": {
"alerts": "Alerts",
"bans": "Bans"
}
}

View File

@@ -140,7 +140,7 @@
"connectionStatusPendingDisconnect": "待辦的斷開",
"connectionStatusDisconnecting": "正在中斷連線",
"connectionStatusDisconnected": "連接已中斷",
"connectionStatusConnected": "已連線",
"connectionStatusConnected": "Connected",
"uptime": "運行時間",
"maxDown": "最大下載速率",
"maxUp": "最大上傳速率",
@@ -277,11 +277,11 @@
"approved": "批准",
"available": "可用"
},
"pialert": {
"netalertx": {
"total": "全部",
"connected": "已連線",
"new_devices": "新裝置",
"down_alerts": "離線警告"
"connected": "Connected",
"new_devices": "New Devices",
"down_alerts": "Down Alerts"
},
"pihole": {
"queries": "查詢",
@@ -858,7 +858,7 @@
"studios": "工作室",
"movies": "電影",
"tags": "標籤",
"oCount": "O Count"
"oCount": "0 個"
},
"tandoor": {
"users": "使用者",
@@ -867,10 +867,14 @@
},
"homebox": {
"items": "項目",
"totalWithWarranty": "With Warranty",
"totalWithWarranty": "有保証",
"locations": "位置",
"labels": "標籤",
"users": "使用者",
"totalValue": "總共"
},
"crowdsec": {
"alerts": "警示",
"bans": "禁止"
}
}

View File

@@ -54,13 +54,13 @@
"uptime": "运行时间",
"days": "天",
"wan": "WAN",
"lan": "LAN",
"wlan": "WLAN",
"lan": "局域网",
"wlan": "无线局域网",
"devices": "设备",
"lan_devices": "LAN设备",
"lan_devices": "有线设备",
"wlan_devices": "WLAN 设备",
"lan_users": "LAN 用户",
"wlan_users": "WLAN 用户",
"lan_users": "有线用户",
"wlan_users": "无线用户",
"up": "运行时间",
"down": "离线",
"wait": "请稍候",
@@ -277,7 +277,7 @@
"approved": "已批准",
"available": "可用"
},
"pialert": {
"netalertx": {
"total": "总计",
"connected": "已连接",
"new_devices": "新设备",
@@ -858,7 +858,7 @@
"studios": "工作室",
"movies": "电影",
"tags": "标签",
"oCount": "O Count"
"oCount": "O "
},
"tandoor": {
"users": "用户数",
@@ -866,11 +866,15 @@
"keywords": "关键词"
},
"homebox": {
"items": "Items",
"totalWithWarranty": "With Warranty",
"locations": "Locations",
"labels": "Labels",
"items": "条目",
"totalWithWarranty": "有保证",
"locations": "位置",
"labels": "标签",
"users": "用户数",
"totalValue": "Total Value"
"totalValue": "总计"
},
"crowdsec": {
"alerts": "警告",
"bans": "禁用"
}
}

View File

@@ -140,7 +140,7 @@
"connectionStatusPendingDisconnect": "待辦的斷開",
"connectionStatusDisconnecting": "正在中斷連線",
"connectionStatusDisconnected": "連接已中斷",
"connectionStatusConnected": "已連線",
"connectionStatusConnected": "Connected",
"uptime": "運行時間",
"maxDown": "最大下載速率",
"maxUp": "最大上傳速率",
@@ -277,11 +277,11 @@
"approved": "已核准",
"available": "可觀看"
},
"pialert": {
"netalertx": {
"total": "全部",
"connected": "已連線",
"new_devices": "新裝置",
"down_alerts": "離線警告"
"connected": "Connected",
"new_devices": "New Devices",
"down_alerts": "Down Alerts"
},
"pihole": {
"queries": "查詢",
@@ -858,7 +858,7 @@
"studios": "工作室",
"movies": "電影",
"tags": "標籤",
"oCount": "O Count"
"oCount": "0 個"
},
"tandoor": {
"users": "用戶",
@@ -867,10 +867,14 @@
},
"homebox": {
"items": "項目",
"totalWithWarranty": "With Warranty",
"totalWithWarranty": "有保証",
"locations": "位置",
"labels": "標籤",
"users": "用戶",
"totalValue": "總共"
},
"crowdsec": {
"alerts": "警示",
"bans": "禁止"
}
}

View File

@@ -9,7 +9,7 @@ function convertToFahrenheit(t) {
return (t * 9) / 5 + 32;
}
export default function CpuTemp({ expanded, units, refresh = 1500 }) {
export default function CpuTemp({ expanded, units, refresh = 1500, tempmin = 0, tempmax = -1 }) {
const { t } = useTranslation();
const { data, error } = useSWR(`/api/widgets/resources?type=cputemp`, {
@@ -39,7 +39,12 @@ export default function CpuTemp({ expanded, units, refresh = 1500 }) {
}
const unit = units === "imperial" ? "fahrenheit" : "celsius";
mainTemp = unit === "celsius" ? mainTemp : convertToFahrenheit(mainTemp);
const maxTemp = unit === "celsius" ? data.cputemp.max : convertToFahrenheit(data.cputemp.max);
const minTemp = tempmin < mainTemp ? tempmin : mainTemp;
let maxTemp = tempmax;
if (maxTemp < minTemp) {
maxTemp = unit === "celsius" ? data.cputemp.max : convertToFahrenheit(data.cputemp.max);
}
return (
<Resource
@@ -58,7 +63,7 @@ export default function CpuTemp({ expanded, units, refresh = 1500 }) {
unit,
})}
expandedLabel={t("resources.max")}
percentage={Math.round((mainTemp / maxTemp) * 100)}
percentage={Math.round(((mainTemp - minTemp) / (maxTemp - minTemp)) * 100)}
expanded={expanded}
/>
);

View File

@@ -8,7 +8,7 @@ import CpuTemp from "./cputemp";
import Uptime from "./uptime";
export default function Resources({ options }) {
const { expanded, units, diskUnits } = options;
const { expanded, units, diskUnits, tempmin, tempmax } = options;
let { refresh } = options;
if (!refresh) refresh = 1500;
refresh = Math.max(refresh, 1000);
@@ -23,7 +23,9 @@ export default function Resources({ options }) {
<Disk key={disk} options={{ disk }} expanded={expanded} diskUnits={diskUnits} refresh={refresh} />
))
: options.disk && <Disk options={options} expanded={expanded} diskUnits={diskUnits} refresh={refresh} />}
{options.cputemp && <CpuTemp expanded={expanded} units={units} refresh={refresh} />}
{options.cputemp && (
<CpuTemp expanded={expanded} units={units} refresh={refresh} tempmin={tempmin} tempmax={tempmax} />
)}
{options.uptime && <Uptime refresh={refresh} />}
</div>
{options.label && (

View File

@@ -3,7 +3,7 @@ import { getAllClasses, getInnerBlock, getBottomBlock } from "./container";
export default function ContainerLink({ children = [], options, additionalClassNames = "", target }) {
return (
<a
href={options.url}
href={options.href || options.url}
target={target}
className={`${getAllClasses(options, additionalClassNames)} information-widget-link`}
>

View File

@@ -393,6 +393,11 @@ export function cleanServiceGroups(groups) {
enableBlocks,
enableNowPlaying,
// emby, jellyfin, tautulli
enableUser,
expandOneStreamToTwoRows,
showEpisodeNumber,
// glances, pihole
version,
@@ -445,6 +450,9 @@ export function cleanServiceGroups(groups) {
// proxmox
node,
// speedtest
bitratePrecision,
// sonarr, radarr
enableQueue,
@@ -518,6 +526,13 @@ export function cleanServiceGroups(groups) {
if (enableBlocks !== undefined) cleanedService.widget.enableBlocks = JSON.parse(enableBlocks);
if (enableNowPlaying !== undefined) cleanedService.widget.enableNowPlaying = JSON.parse(enableNowPlaying);
}
if (["emby", "jellyfin", "tautulli"].includes(type)) {
if (expandOneStreamToTwoRows !== undefined)
cleanedService.widget.expandOneStreamToTwoRows = !!JSON.parse(expandOneStreamToTwoRows);
if (showEpisodeNumber !== undefined)
cleanedService.widget.showEpisodeNumber = !!JSON.parse(showEpisodeNumber);
if (enableUser !== undefined) cleanedService.widget.enableUser = !!JSON.parse(enableUser);
}
if (["sonarr", "radarr"].includes(type)) {
if (enableQueue !== undefined) cleanedService.widget.enableQueue = JSON.parse(enableQueue);
}
@@ -576,6 +591,11 @@ export function cleanServiceGroups(groups) {
if (type === "healthchecks") {
if (uuid !== undefined) cleanedService.widget.uuid = uuid;
}
if (type === "speedtest") {
if (bitratePrecision !== undefined) {
cleanedService.widget.bitratePrecision = parseInt(bitratePrecision, 10);
}
}
}
return cleanedService;

View File

@@ -57,7 +57,7 @@ export function jsonArrayFilter(data, filter) {
export function sanitizeErrorURL(errorURL) {
// Dont display sensitive params on frontend
const url = new URL(errorURL);
["apikey", "api_key", "token", "t", "access_token"].forEach((key) => {
["apikey", "api_key", "token", "t", "access_token", "auth"].forEach((key) => {
if (url.searchParams.has(key)) url.searchParams.set(key, "***");
});
return url.toString();

View File

@@ -5,6 +5,7 @@ import { createUnzip, constants as zlibConstants } from "node:zlib";
import { http, https } from "follow-redirects";
import { addCookieToJar, setCookieHeader } from "./cookie-jar";
import { sanitizeErrorURL } from "./api-helpers";
import createLogger from "utils/logger";
@@ -113,6 +114,11 @@ export async function httpProxy(url, params = {}) {
constructedUrl.pathname,
);
if (err) logger.error(err);
return [500, "application/json", { error: { message: err?.message ?? "Unknown error", url, rawError: err } }, null];
return [
500,
"application/json",
{ error: { message: err?.message ?? "Unknown error", url: sanitizeErrorURL(url), rawError: err } },
null,
];
}
}

View File

@@ -27,9 +27,26 @@ function ticksToString(ticks) {
return parts.map((part) => part.toString().padStart(2, "0")).join(":");
}
function SingleSessionEntry({ playCommand, session }) {
function generateStreamTitle(session, enableUser, showEpisodeNumber) {
const {
NowPlayingItem: { Name, SeriesName, Type, ParentIndexNumber, IndexNumber },
UserName,
} = session;
let streamTitle = "";
if (Type === "Episode" && showEpisodeNumber) {
const seasonStr = `S${ParentIndexNumber.toString().padStart(2, "0")}`;
const episodeStr = `E${IndexNumber.toString().padStart(2, "0")}`;
streamTitle = `${SeriesName}: ${seasonStr} · ${episodeStr} - ${Name}`;
} else {
streamTitle = `${Name}${SeriesName ? ` - ${SeriesName}` : ""}`;
}
return enableUser ? `${streamTitle} (${UserName})` : streamTitle;
}
function SingleSessionEntry({ playCommand, session, enableUser, showEpisodeNumber }) {
const {
NowPlayingItem: { Name, SeriesName },
PlayState: { PositionTicks, IsPaused, IsMuted },
} = session;
@@ -42,13 +59,13 @@ function SingleSessionEntry({ playCommand, session }) {
const percent = Math.min(1, PositionTicks / RunTimeTicks) * 100;
const streamTitle = generateStreamTitle(session, enableUser, showEpisodeNumber);
return (
<>
<div className="text-theme-700 dark:text-theme-200 relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1 flex">
<div className="grow text-xs z-10 self-center ml-2 relative w-full h-4 mr-2">
<div className="absolute w-full whitespace-nowrap text-ellipsis overflow-hidden">
{Name}
{SeriesName && ` - ${SeriesName}`}
<div className="absolute w-full whitespace-nowrap text-ellipsis overflow-hidden" title={streamTitle}>
{streamTitle}
</div>
</div>
<div className="self-center text-xs flex justify-end mr-1.5 pl-1">
@@ -97,9 +114,8 @@ function SingleSessionEntry({ playCommand, session }) {
);
}
function SessionEntry({ playCommand, session }) {
function SessionEntry({ playCommand, session, enableUser, showEpisodeNumber }) {
const {
NowPlayingItem: { Name, SeriesName },
PlayState: { PositionTicks, IsPaused, IsMuted },
} = session;
@@ -110,6 +126,8 @@ function SessionEntry({ playCommand, session }) {
IsVideoDirect: true,
}; // if no transcodinginfo its videodirect
const streamTitle = generateStreamTitle(session, enableUser, showEpisodeNumber);
const percent = Math.min(1, PositionTicks / RunTimeTicks) * 100;
return (
@@ -139,9 +157,8 @@ function SessionEntry({ playCommand, session }) {
)}
</div>
<div className="grow text-xs z-10 self-center relative w-full h-4">
<div className="absolute w-full whitespace-nowrap text-ellipsis overflow-hidden">
{Name}
{SeriesName && ` - ${SeriesName}`}
<div className="absolute w-full whitespace-nowrap text-ellipsis overflow-hidden" title={streamTitle}>
{streamTitle}
</div>
</div>
<div className="self-center text-xs flex justify-end mr-1 z-10">{IsMuted && <BsVolumeMuteFill />}</div>
@@ -215,6 +232,9 @@ export default function Component({ service }) {
const enableBlocks = service.widget?.enableBlocks;
const enableNowPlaying = service.widget?.enableNowPlaying ?? true;
const enableUser = !!service.widget?.enableUser; // default is false
const expandOneStreamToTwoRows = service.widget?.expandOneStreamToTwoRows !== false; // default is true
const showEpisodeNumber = !!service.widget?.showEpisodeNumber; // default is false
if (!sessionsData || !countData) {
return (
@@ -225,9 +245,11 @@ export default function Component({ service }) {
<div className="text-theme-700 dark:text-theme-200 text-xs relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1">
<span className="absolute left-2 text-xs mt-[2px]">-</span>
</div>
<div className="text-theme-700 dark:text-theme-200 text-xs relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1">
<span className="absolute left-2 text-xs mt-[2px]">-</span>
</div>
{expandOneStreamToTwoRows && (
<div className="text-theme-700 dark:text-theme-200 text-xs relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1">
<span className="absolute left-2 text-xs mt-[2px]">-</span>
</div>
)}
</div>
)}
</>
@@ -255,15 +277,17 @@ export default function Component({ service }) {
<div className="text-theme-700 dark:text-theme-200 text-xs relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1">
<span className="absolute left-2 text-xs mt-[2px]">{t("emby.no_active")}</span>
</div>
<div className="text-theme-700 dark:text-theme-200 text-xs relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1">
<span className="absolute left-2 text-xs mt-[2px]">-</span>
</div>
{expandOneStreamToTwoRows && (
<div className="text-theme-700 dark:text-theme-200 text-xs relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1">
<span className="absolute left-2 text-xs mt-[2px]">-</span>
</div>
)}
</div>
</>
);
}
if (playing.length === 1) {
if (expandOneStreamToTwoRows && playing.length === 1) {
const session = playing[0];
return (
<>
@@ -272,27 +296,30 @@ export default function Component({ service }) {
<SingleSessionEntry
playCommand={(currentSession, command) => handlePlayCommand(currentSession, command)}
session={session}
enableUser={enableUser}
showEpisodeNumber={showEpisodeNumber}
/>
</div>
</>
);
}
if (playing.length > 0)
return (
<>
{enableBlocks && <CountBlocks service={service} countData={countData} />}
<div className="flex flex-col pb-1 mx-1">
{playing.map((session) => (
<SessionEntry
key={session.Id}
playCommand={(currentSession, command) => handlePlayCommand(currentSession, command)}
session={session}
/>
))}
</div>
</>
);
return (
<>
{enableBlocks && <CountBlocks service={service} countData={countData} />}
<div className="flex flex-col pb-1 mx-1">
{playing.map((session) => (
<SessionEntry
key={session.Id}
playCommand={(currentSession, command) => handlePlayCommand(currentSession, command)}
session={session}
enableUser={enableUser}
showEpisodeNumber={showEpisodeNumber}
/>
))}
</div>
</>
);
}
if (enableBlocks) {

View File

@@ -32,7 +32,7 @@ export default function Component({ service }) {
let blockedValue = `${t("common.number", { value: parseInt(piholeData.ads_blocked_today, 10) })}`;
if (!widget.fields.includes("blocked_percent")) {
blockedValue += ` (${t("common.percent", { value: parseFloat(piholeData.ads_percentage_today.toPrecision(3)) })})`;
blockedValue += ` (${t("common.percent", { value: parseFloat(piholeData.ads_percentage_today).toPrecision(3) })})`;
}
return (
@@ -41,7 +41,7 @@ export default function Component({ service }) {
<Block label="pihole.blocked" value={blockedValue} />
<Block
label="pihole.blocked_percent"
value={t("common.percent", { value: parseFloat(piholeData.ads_percentage_today.toPrecision(3)) })}
value={t("common.percent", { value: parseFloat(piholeData.ads_percentage_today).toPrecision(3) })}
/>
<Block
label="pihole.gravity"

View File

@@ -1,9 +1,12 @@
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 { widget } = service;
const { t } = useTranslation();
const { data: response, error: responseError } = useWidgetAPI(widget, "statistics");
@@ -24,8 +27,8 @@ export default function Component({ service }) {
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} />
<Block label="romm.platforms" value={t("common.number", { value: platforms })} />
<Block label="romm.totalRoms" value={t("common.number", { value: totalRoms })} />
</Container>
);
}

View File

@@ -11,6 +11,11 @@ export default function Component({ service }) {
const { data: speedtestData, error: speedtestError } = useWidgetAPI(widget, "speedtest/latest");
const bitratePrecision =
!widget?.bitratePrecision || Number.isNaN(widget?.bitratePrecision) || widget?.bitratePrecision < 0
? 0
: widget.bitratePrecision;
if (speedtestError) {
return <Container service={service} error={speedtestError} />;
}
@@ -29,9 +34,18 @@ export default function Component({ service }) {
<Container service={service}>
<Block
label="speedtest.download"
value={t("common.bitrate", { value: speedtestData.data.download * 1000 * 1000 })}
value={t("common.bitrate", {
value: speedtestData.data.download * 1000 * 1000,
decimals: bitratePrecision,
})}
/>
<Block
label="speedtest.upload"
value={t("common.bitrate", {
value: speedtestData.data.upload * 1000 * 1000,
decimals: bitratePrecision,
})}
/>
<Block label="speedtest.upload" value={t("common.bitrate", { value: speedtestData.data.upload * 1000 * 1000 })} />
<Block
label="speedtest.ping"
value={t("common.ms", {

View File

@@ -25,14 +25,32 @@ function millisecondsToString(milliseconds) {
return parts.map((part) => part.toString().padStart(2, "0")).join(":");
}
function SingleSessionEntry({ session }) {
const { full_title, duration, view_offset, progress_percent, state, video_decision, audio_decision } = session;
function generateStreamTitle(session, enableUser, showEpisodeNumber) {
let stream_title = "";
const { media_type, parent_media_index, media_index, title, grandparent_title, full_title, friendly_name } = session;
if (media_type === "episode" && showEpisodeNumber) {
const season_str = `S${parent_media_index.toString().padStart(2, "0")}`;
const episode_str = `E${media_index.toString().padStart(2, "0")}`;
stream_title = `${grandparent_title}: ${season_str} · ${episode_str} - ${title}`;
} else {
stream_title = full_title;
}
return enableUser ? `${stream_title} (${friendly_name})` : stream_title;
}
function SingleSessionEntry({ session, enableUser, showEpisodeNumber }) {
const { duration, view_offset, progress_percent, state, video_decision, audio_decision } = session;
const stream_title = generateStreamTitle(session, enableUser, showEpisodeNumber);
return (
<>
<div className="text-theme-700 dark:text-theme-200 relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1 flex">
<div className="text-xs z-10 self-center ml-2 relative w-full h-4 grow mr-2">
<div className="absolute w-full whitespace-nowrap text-ellipsis overflow-hidden">{full_title}</div>
<div className="absolute w-full whitespace-nowrap text-ellipsis overflow-hidden" title={stream_title}>
{stream_title}
</div>
</div>
<div className="self-center text-xs flex justify-end mr-1.5 pl-1">
{video_decision === "direct play" && audio_decision === "direct play" && (
@@ -74,8 +92,10 @@ function SingleSessionEntry({ session }) {
);
}
function SessionEntry({ session }) {
const { full_title, view_offset, progress_percent, state, video_decision, audio_decision } = session;
function SessionEntry({ session, enableUser, showEpisodeNumber }) {
const { view_offset, progress_percent, state, video_decision, audio_decision } = session;
const stream_title = generateStreamTitle(session, enableUser, showEpisodeNumber);
return (
<div className="text-theme-700 dark:text-theme-200 relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1 flex">
@@ -94,7 +114,9 @@ function SessionEntry({ session }) {
)}
</div>
<div className="text-xs z-10 self-center ml-2 relative w-full h-4 grow mr-2">
<div className="absolute w-full whitespace-nowrap text-ellipsis overflow-hidden">{full_title}</div>
<div className="absolute w-full whitespace-nowrap text-ellipsis overflow-hidden" title={stream_title}>
{stream_title}
</div>
</div>
<div className="self-center text-xs flex justify-end mr-1.5 pl-1 z-10">
{video_decision === "direct play" && audio_decision === "direct play" && (
@@ -122,6 +144,10 @@ export default function Component({ service }) {
refreshInterval: 5000,
});
const enableUser = !!service.widget?.enableUser; // default is false
const expandOneStreamToTwoRows = service.widget?.expandOneStreamToTwoRows !== false; // default is true
const showEpisodeNumber = !!service.widget?.showEpisodeNumber; // default is false
if (activityError || (activityData && Object.keys(activityData.response.data).length === 0)) {
return <Container service={service} error={activityError ?? { message: t("tautulli.plex_connection_error") }} />;
}
@@ -132,9 +158,11 @@ export default function Component({ service }) {
<div className="text-theme-700 dark:text-theme-200 text-xs relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1">
<span className="absolute left-2 text-xs mt-[2px]">-</span>
</div>
<div className="text-theme-700 dark:text-theme-200 text-xs relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1">
<span className="absolute left-2 text-xs mt-[2px]">-</span>
</div>
{expandOneStreamToTwoRows && (
<div className="text-theme-700 dark:text-theme-200 text-xs relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1">
<span className="absolute left-2 text-xs mt-[2px]">-</span>
</div>
)}
</div>
);
}
@@ -155,18 +183,20 @@ export default function Component({ service }) {
<div className="text-theme-700 dark:text-theme-200 text-xs relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1">
<span className="absolute left-2 text-xs mt-[2px]">{t("tautulli.no_active")}</span>
</div>
<div className="text-theme-700 dark:text-theme-200 text-xs relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1">
<span className="absolute left-2 text-xs mt-[2px]">-</span>
</div>
{expandOneStreamToTwoRows && (
<div className="text-theme-700 dark:text-theme-200 text-xs relative h-5 w-full rounded-md bg-theme-200/50 dark:bg-theme-900/20 mt-1">
<span className="absolute left-2 text-xs mt-[2px]">-</span>
</div>
)}
</div>
);
}
if (playing.length === 1) {
if (expandOneStreamToTwoRows && playing.length === 1) {
const session = playing[0];
return (
<div className="flex flex-col pb-1 mx-1">
<SingleSessionEntry session={session} />
<SingleSessionEntry session={session} enableUser={enableUser} showEpisodeNumber={showEpisodeNumber} />
</div>
);
}
@@ -174,7 +204,12 @@ export default function Component({ service }) {
return (
<div className="flex flex-col pb-1 mx-1">
{playing.map((session) => (
<SessionEntry key={session.Id} session={session} />
<SessionEntry
key={session.Id}
session={session}
enableUser={enableUser}
showEpisodeNumber={showEpisodeNumber}
/>
))}
</div>
);