mirror of
https://github.com/karl0ss/homepage.git
synced 2025-05-01 21:13:39 +01:00
Merge branch 'dev'
This commit is contained in:
commit
3ff61cfad6
@ -1,5 +1,9 @@
|
|||||||
{
|
{
|
||||||
"extends": ["airbnb", "next/core-web-vitals", "prettier"],
|
"extends": [
|
||||||
|
"next/core-web-vitals",
|
||||||
|
"prettier",
|
||||||
|
"plugin:react-hooks/recommended"
|
||||||
|
],
|
||||||
"plugins": ["prettier"],
|
"plugins": ["prettier"],
|
||||||
"rules": {
|
"rules": {
|
||||||
"import/no-cycle": [
|
"import/no-cycle": [
|
||||||
@ -27,5 +31,12 @@
|
|||||||
"paths": ["src"]
|
"paths": ["src"]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"parserOptions": {
|
||||||
|
"ecmaVersion": 6,
|
||||||
|
"sourceType": "module",
|
||||||
|
"ecmaFeatures": {
|
||||||
|
"modules": true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
2
.github/DISCUSSION_TEMPLATE/support.yml
vendored
2
.github/DISCUSSION_TEMPLATE/support.yml
vendored
@ -51,7 +51,7 @@ body:
|
|||||||
id: troubleshooting
|
id: troubleshooting
|
||||||
attributes:
|
attributes:
|
||||||
label: Troubleshooting
|
label: Troubleshooting
|
||||||
description: Please include output from your [troubleshooting tests](https://gethomepage.dev/more/troubleshooting/#service-widget-errors), if relevant.
|
description: Please include output from your [troubleshooting steps](https://gethomepage.dev/more/troubleshooting/#service-widget-errors), if relevant.
|
||||||
validations:
|
validations:
|
||||||
required: true
|
required: true
|
||||||
- type: markdown
|
- type: markdown
|
||||||
|
50
.github/workflows/docker-publish.yml
vendored
50
.github/workflows/docker-publish.yml
vendored
@ -46,6 +46,24 @@ jobs:
|
|||||||
-
|
-
|
||||||
name: Check files
|
name: Check files
|
||||||
uses: pre-commit/action@v3.0.1
|
uses: pre-commit/action@v3.0.1
|
||||||
|
-
|
||||||
|
name: Install pnpm
|
||||||
|
uses: pnpm/action-setup@v4
|
||||||
|
with:
|
||||||
|
version: 10
|
||||||
|
run_install: false
|
||||||
|
-
|
||||||
|
name: Install Node.js
|
||||||
|
uses: actions/setup-node@v4
|
||||||
|
with:
|
||||||
|
node-version: 20
|
||||||
|
cache: 'pnpm'
|
||||||
|
-
|
||||||
|
name: Install dependencies
|
||||||
|
run: pnpm install
|
||||||
|
-
|
||||||
|
name: Lint frontend
|
||||||
|
run: pnpm run lint
|
||||||
|
|
||||||
build:
|
build:
|
||||||
name: Docker Build & Push
|
name: Docker Build & Push
|
||||||
@ -64,26 +82,7 @@ jobs:
|
|||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
# Setup QEMU
|
# Login to Docker Registry
|
||||||
# https://github.com/marketplace/actions/docker-setup-buildx#with-qemu
|
|
||||||
- name: Setup QEMU
|
|
||||||
uses: docker/setup-qemu-action@v3
|
|
||||||
|
|
||||||
# Workaround: https://github.com/docker/build-push-action/issues/461
|
|
||||||
- name: Setup Docker buildx
|
|
||||||
uses: docker/setup-buildx-action@v3
|
|
||||||
|
|
||||||
# This step is being disabled because the runner is on a self-hosted machine
|
|
||||||
# where the cache will stick between runs.
|
|
||||||
# - name: Cache Docker layers
|
|
||||||
# uses: actions/cache@v3
|
|
||||||
# with:
|
|
||||||
# path: /tmp/.buildx-cache
|
|
||||||
# key: ${{ runner.os }}-buildx-${{ github.sha }}
|
|
||||||
# restore-keys: |
|
|
||||||
# ${{ runner.os }}-buildx-
|
|
||||||
|
|
||||||
# Login against a Docker registry except on PR
|
|
||||||
# https://github.com/docker/login-action
|
# https://github.com/docker/login-action
|
||||||
- name: Log into registry ${{ env.REGISTRY }}
|
- name: Log into registry ${{ env.REGISTRY }}
|
||||||
if: github.event_name != 'pull_request'
|
if: github.event_name != 'pull_request'
|
||||||
@ -99,6 +98,15 @@ jobs:
|
|||||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||||
|
|
||||||
|
# Setup QEMU
|
||||||
|
# https://github.com/marketplace/actions/docker-setup-buildx#with-qemu
|
||||||
|
- name: Setup QEMU
|
||||||
|
uses: docker/setup-qemu-action@v3.6.0
|
||||||
|
|
||||||
|
# Workaround: https://github.com/docker/build-push-action/issues/461
|
||||||
|
- name: Setup Docker buildx
|
||||||
|
uses: docker/setup-buildx-action@v3
|
||||||
|
|
||||||
# Extract metadata (tags, labels) for Docker
|
# Extract metadata (tags, labels) for Docker
|
||||||
# https://github.com/docker/metadata-action
|
# https://github.com/docker/metadata-action
|
||||||
- name: Extract Docker metadata
|
- name: Extract Docker metadata
|
||||||
@ -127,7 +135,7 @@ jobs:
|
|||||||
REVISION=${{ fromJSON(steps.meta.outputs.json).labels['org.opencontainers.image.revision'] }}
|
REVISION=${{ fromJSON(steps.meta.outputs.json).labels['org.opencontainers.image.revision'] }}
|
||||||
# https://github.com/docker/setup-qemu-action#about
|
# https://github.com/docker/setup-qemu-action#about
|
||||||
# platforms: linux/amd64,linux/arm64,linux/riscv64,linux/ppc64le,linux/s390x,linux/386,linux/mips64le,linux/mips64,linux/arm/v7,linux/arm/v6
|
# platforms: linux/amd64,linux/arm64,linux/riscv64,linux/ppc64le,linux/s390x,linux/386,linux/mips64le,linux/mips64,linux/arm/v7,linux/arm/v6
|
||||||
platforms: linux/amd64,linux/arm64,linux/arm/v7,linux/arm/v6
|
platforms: linux/amd64,linux/arm64
|
||||||
cache-from: type=local,src=/tmp/.buildx-cache
|
cache-from: type=local,src=/tmp/.buildx-cache
|
||||||
cache-to: type=local,dest=/tmp/.buildx-cache-new,mode=max
|
cache-to: type=local,dest=/tmp/.buildx-cache-new,mode=max
|
||||||
|
|
||||||
|
2
.github/workflows/reaction-comments.yml
vendored
2
.github/workflows/reaction-comments.yml
vendored
@ -5,8 +5,6 @@ on:
|
|||||||
types: [created, edited]
|
types: [created, edited]
|
||||||
pull_request_review_comment:
|
pull_request_review_comment:
|
||||||
types: [created, edited]
|
types: [created, edited]
|
||||||
schedule:
|
|
||||||
- cron: '0 0 * * *'
|
|
||||||
|
|
||||||
permissions:
|
permissions:
|
||||||
actions: write
|
actions: write
|
||||||
|
21
Dockerfile
21
Dockerfile
@ -1,7 +1,5 @@
|
|||||||
# syntax = docker/dockerfile:latest
|
|
||||||
|
|
||||||
# Install dependencies only when needed
|
# Install dependencies only when needed
|
||||||
FROM docker.io/node:18-alpine AS deps
|
FROM docker.io/node:22-alpine AS deps
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
@ -17,9 +15,11 @@ RUN --mount=type=cache,id=pnpm-store,target=/root/.local/share/pnpm/store pnpm f
|
|||||||
RUN --mount=type=cache,id=pnpm-store,target=/root/.local/share/pnpm/store pnpm install -r --offline
|
RUN --mount=type=cache,id=pnpm-store,target=/root/.local/share/pnpm/store pnpm install -r --offline
|
||||||
|
|
||||||
# Rebuild the source code only when needed
|
# Rebuild the source code only when needed
|
||||||
FROM docker.io/node:18-alpine AS builder
|
FROM docker.io/node:22-alpine AS builder
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
|
RUN mkdir config
|
||||||
|
|
||||||
ARG BUILDTIME
|
ARG BUILDTIME
|
||||||
ARG VERSION
|
ARG VERSION
|
||||||
ARG REVISION
|
ARG REVISION
|
||||||
@ -28,12 +28,12 @@ COPY --link --from=deps /app/node_modules ./node_modules/
|
|||||||
COPY . .
|
COPY . .
|
||||||
|
|
||||||
SHELL ["/bin/ash", "-xeo", "pipefail", "-c"]
|
SHELL ["/bin/ash", "-xeo", "pipefail", "-c"]
|
||||||
RUN npm run telemetry \
|
RUN npm install -g pnpm \
|
||||||
&& mkdir config \
|
&& pnpm run telemetry \
|
||||||
&& NEXT_PUBLIC_BUILDTIME=$BUILDTIME NEXT_PUBLIC_VERSION=$VERSION NEXT_PUBLIC_REVISION=$REVISION npm run build
|
&& NEXT_PUBLIC_BUILDTIME=$BUILDTIME NEXT_PUBLIC_VERSION=$VERSION NEXT_PUBLIC_REVISION=$REVISION pnpm run build
|
||||||
|
|
||||||
# Production image, copy all the files and run next
|
# Production image, copy all the files and run next
|
||||||
FROM docker.io/node:18-alpine AS runner
|
FROM docker.io/node:22-alpine AS runner
|
||||||
LABEL org.opencontainers.image.title "Homepage"
|
LABEL org.opencontainers.image.title "Homepage"
|
||||||
LABEL org.opencontainers.image.description "A self-hosted services landing page, with docker and service integrations."
|
LABEL org.opencontainers.image.description "A self-hosted services landing page, with docker and service integrations."
|
||||||
LABEL org.opencontainers.image.url="https://github.com/gethomepage/homepage"
|
LABEL org.opencontainers.image.url="https://github.com/gethomepage/homepage"
|
||||||
@ -41,7 +41,7 @@ LABEL org.opencontainers.image.documentation='https://github.com/gethomepage/hom
|
|||||||
LABEL org.opencontainers.image.source='https://github.com/gethomepage/homepage'
|
LABEL org.opencontainers.image.source='https://github.com/gethomepage/homepage'
|
||||||
LABEL org.opencontainers.image.licenses='Apache-2.0'
|
LABEL org.opencontainers.image.licenses='Apache-2.0'
|
||||||
|
|
||||||
ENV NODE_ENV production
|
ENV NODE_ENV=production
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
@ -56,7 +56,8 @@ COPY --link --chmod=755 docker-entrypoint.sh /usr/local/bin/
|
|||||||
|
|
||||||
RUN apk add --no-cache su-exec
|
RUN apk add --no-cache su-exec
|
||||||
|
|
||||||
ENV PORT 3000
|
ENV HOSTNAME=::
|
||||||
|
ENV PORT=3000
|
||||||
EXPOSE $PORT
|
EXPOSE $PORT
|
||||||
|
|
||||||
HEALTHCHECK --interval=10s --timeout=3s --start-period=20s \
|
HEALTHCHECK --interval=10s --timeout=3s --start-period=20s \
|
||||||
|
@ -10,7 +10,7 @@ RUN <<EOF
|
|||||||
apk add libc6-compat
|
apk add libc6-compat
|
||||||
apk add --virtual .gyp python3 make g++
|
apk add --virtual .gyp python3 make g++
|
||||||
npm install -g pnpm
|
npm install -g pnpm
|
||||||
npm install -g next
|
pnpm install -g next
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
RUN --mount=type=cache,id=pnpm-store,target=/root/.local/share/pnpm/store pnpm fetch | grep -v "cross-device link not permitted\|Falling back to copying packages from store"
|
RUN --mount=type=cache,id=pnpm-store,target=/root/.local/share/pnpm/store pnpm fetch | grep -v "cross-device link not permitted\|Falling back to copying packages from store"
|
||||||
|
@ -38,7 +38,7 @@ With features like quick search, bookmarks, weather support, a wide range of int
|
|||||||
|
|
||||||
- **Fast** - The site is statically generated at build time for instant load times.
|
- **Fast** - The site is statically generated at build time for instant load times.
|
||||||
- **Secure** - All API requests to backend services are proxied, keeping your API keys hidden. Constantly reviewed for security by the community.
|
- **Secure** - All API requests to backend services are proxied, keeping your API keys hidden. Constantly reviewed for security by the community.
|
||||||
- **For Everyone** - Images built for AMD64, ARM64, ARMv7, and ARMv6.
|
- **For Everyone** - Images built for AMD64, ARM64.
|
||||||
- **Full i18n** - Support for over 40 languages.
|
- **Full i18n** - Support for over 40 languages.
|
||||||
- **Service & Web Bookmarks** - Add custom links to the homepage.
|
- **Service & Web Bookmarks** - Add custom links to the homepage.
|
||||||
- **Docker Integration** - Container status and stats. Automatic service discovery via labels.
|
- **Docker Integration** - Container status and stats. Automatic service discovery via labels.
|
||||||
@ -111,7 +111,7 @@ First, clone the repository:
|
|||||||
git clone https://github.com/gethomepage/homepage.git
|
git clone https://github.com/gethomepage/homepage.git
|
||||||
```
|
```
|
||||||
|
|
||||||
Then install dependencies and build the production bundle (I'm using pnpm here, you can use npm or yarn if you like):
|
Then install dependencies and build the production bundle:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
pnpm install
|
pnpm install
|
||||||
|
@ -8,6 +8,7 @@ The Kubernetes connectivity has the following requirements:
|
|||||||
- Kubernetes 1.19+
|
- Kubernetes 1.19+
|
||||||
- Metrics Service
|
- Metrics Service
|
||||||
- An Ingress controller
|
- An Ingress controller
|
||||||
|
- Optionally: Gateway-API
|
||||||
|
|
||||||
The Kubernetes connection is configured in the `kubernetes.yaml` file. There are 3 modes to choose from:
|
The Kubernetes connection is configured in the `kubernetes.yaml` file. There are 3 modes to choose from:
|
||||||
|
|
||||||
@ -19,6 +20,22 @@ The Kubernetes connection is configured in the `kubernetes.yaml` file. There are
|
|||||||
mode: default
|
mode: default
|
||||||
```
|
```
|
||||||
|
|
||||||
|
To configure Kubernetes gateway-api, ingress or ingressRoute service discovery, add one or multiple of the following settings.
|
||||||
|
|
||||||
|
Example settings:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
ingress: true # enable ingress only
|
||||||
|
```
|
||||||
|
|
||||||
|
or
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
ingress: true # enable ingress
|
||||||
|
traefik: true # enable traefik ingressRoute
|
||||||
|
gateway: true # enable gateway-api
|
||||||
|
```
|
||||||
|
|
||||||
## Services
|
## Services
|
||||||
|
|
||||||
Once the Kubernetes connection is configured, individual services can be configured to pull statistics. Only CPU and Memory are currently supported.
|
Once the Kubernetes connection is configured, individual services can be configured to pull statistics. Only CPU and Memory are currently supported.
|
||||||
@ -142,6 +159,10 @@ spec:
|
|||||||
|
|
||||||
If the `href` attribute is not present, Homepage will ignore the specific IngressRoute.
|
If the `href` attribute is not present, Homepage will ignore the specific IngressRoute.
|
||||||
|
|
||||||
|
### Gateway API HttpRoute support
|
||||||
|
|
||||||
|
Homepage also features automatic service discovery for Gateway API. Service definitions are read by annotating the HttpRoute custom resource definition and are indentical to the Ingress example as defined in [Automatic Service Discovery](#automatic-service-discovery).
|
||||||
|
|
||||||
## Caveats
|
## Caveats
|
||||||
|
|
||||||
Similarly to Docker service discovery, there currently is no rigid ordering to discovered services and discovered services will be displayed above those specified in the `services.yaml`.
|
Similarly to Docker service discovery, there currently is no rigid ordering to discovered services and discovered services will be displayed above those specified in the `services.yaml`.
|
||||||
|
@ -447,7 +447,7 @@ quicklaunch:
|
|||||||
suggestionUrl: https://ac.ecosia.org/autocomplete?type=list&q=
|
suggestionUrl: https://ac.ecosia.org/autocomplete?type=list&q=
|
||||||
```
|
```
|
||||||
|
|
||||||
## Homepage Version
|
## Homepage Version & Update Checking
|
||||||
|
|
||||||
By default the release version is displayed at the bottom of the page. To hide this, use the `hideVersion` setting, like so:
|
By default the release version is displayed at the bottom of the page. To hide this, use the `hideVersion` setting, like so:
|
||||||
|
|
||||||
@ -455,6 +455,12 @@ By default the release version is displayed at the bottom of the page. To hide t
|
|||||||
hideVersion: true
|
hideVersion: true
|
||||||
```
|
```
|
||||||
|
|
||||||
|
You can disable checking for new versions from GitHub (enabled by default) with:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
disableUpdateCheck: true
|
||||||
|
```
|
||||||
|
|
||||||
## Log Path
|
## Log Path
|
||||||
|
|
||||||
By default the homepage logfile is written to the a `logs` subdirectory of the `config` folder. In order to customize this path, you can set the `logpath` setting. A `logs` folder will be created in that location where the logfile will be written.
|
By default the homepage logfile is written to the a `logs` subdirectory of the `config` folder. In order to customize this path, you can set the `logpath` setting. A `logs` folder will be created in that location where the logfile will be written.
|
||||||
|
@ -15,6 +15,8 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- /path/to/config:/app/config # Make sure your local config directory exists
|
- /path/to/config:/app/config # Make sure your local config directory exists
|
||||||
- /var/run/docker.sock:/var/run/docker.sock # (optional) For docker integrations
|
- /var/run/docker.sock:/var/run/docker.sock # (optional) For docker integrations
|
||||||
|
environment:
|
||||||
|
HOMEPAGE_ALLOWED_HOSTS: gethomepage.dev # required when deploying via public URL
|
||||||
```
|
```
|
||||||
|
|
||||||
### Running as non-root
|
### Running as non-root
|
||||||
@ -36,6 +38,7 @@ services:
|
|||||||
- /path/to/config:/app/config # Make sure your local config directory exists
|
- /path/to/config:/app/config # Make sure your local config directory exists
|
||||||
- /var/run/docker.sock:/var/run/docker.sock # (optional) For docker integrations, see alternative methods
|
- /var/run/docker.sock:/var/run/docker.sock # (optional) For docker integrations, see alternative methods
|
||||||
environment:
|
environment:
|
||||||
|
HOMEPAGE_ALLOWED_HOSTS: gethomepage.dev # required when deploying via public URL
|
||||||
PUID: $PUID
|
PUID: $PUID
|
||||||
PGID: $PGID
|
PGID: $PGID
|
||||||
```
|
```
|
||||||
@ -43,7 +46,7 @@ services:
|
|||||||
### With Docker Run
|
### With Docker Run
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker run -p 3000:3000 -v /path/to/config:/app/config -v /var/run/docker.sock:/var/run/docker.sock ghcr.io/gethomepage/homepage:latest
|
docker run -p 3000:3000 -e HOMEPAGE_ALLOWED_HOSTS=gethomepage.dev -v /path/to/config:/app/config -v /var/run/docker.sock:/var/run/docker.sock ghcr.io/gethomepage/homepage:latest
|
||||||
```
|
```
|
||||||
|
|
||||||
### Using Environment Secrets
|
### Using Environment Secrets
|
||||||
|
@ -4,11 +4,9 @@ description: Docs intro
|
|||||||
icon: simple/docker
|
icon: simple/docker
|
||||||
---
|
---
|
||||||
|
|
||||||
<p>
|
|
||||||
You have a few options for deploying homepage, depending on your needs. We offer docker images for a majority of platforms. You can also install and run homepage from source if Docker is not your thing. It can even be installed on Kubernetes with Helm.
|
You have a few options for deploying homepage, depending on your needs. We offer docker images for a majority of platforms. You can also install and run homepage from source if Docker is not your thing. It can even be installed on Kubernetes with Helm.
|
||||||
</p>
|
|
||||||
|
|
||||||
!!! warning
|
!!! info
|
||||||
|
|
||||||
Please note that when using features such as widgets, Homepage can access personal information (for example from your home automation system) and Homepage currently does not (and is not planned to) include any authentication layer itself. Thus, we recommend homepage be deployed behind a reverse proxy including authentication, SSL etc, and / or behind a VPN.
|
Please note that when using features such as widgets, Homepage can access personal information (for example from your home automation system) and Homepage currently does not (and is not planned to) include any authentication layer itself. Thus, we recommend homepage be deployed behind a reverse proxy including authentication, SSL etc, and / or behind a VPN.
|
||||||
|
|
||||||
@ -28,3 +26,7 @@ You have a few options for deploying homepage, depending on your needs. We offer
|
|||||||
{ .card }
|
{ .card }
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
### `HOMEPAGE_ALLOWED_HOSTS`
|
||||||
|
|
||||||
|
As of v1.0 there is one required environment variable when deploying via a public URL, <code>HOMEPAGE_ALLOWED_HOSTS</code>. This is a comma separated list of allowed hosts that can access your homepage. See the [docker](docker.md) and [source](source.md) installation pages for examples.
|
||||||
|
@ -216,6 +216,14 @@ rules:
|
|||||||
verbs:
|
verbs:
|
||||||
- get
|
- get
|
||||||
- list
|
- list
|
||||||
|
- apiGroups:
|
||||||
|
- gateway.networking.k8s.io
|
||||||
|
resources:
|
||||||
|
- httproutes
|
||||||
|
- gateways
|
||||||
|
verbs:
|
||||||
|
- get
|
||||||
|
- list
|
||||||
- apiGroups:
|
- apiGroups:
|
||||||
- metrics.k8s.io
|
- metrics.k8s.io
|
||||||
resources:
|
resources:
|
||||||
|
@ -21,7 +21,7 @@ If this is your first time starting, copy the `src/skeleton` directory to `confi
|
|||||||
Finally, run the server:
|
Finally, run the server:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
pnpm start
|
HOMEPAGE_ALLOWED_HOSTS=gethomepage.dev pnpm start
|
||||||
```
|
```
|
||||||
|
|
||||||
When updating homepage versions you will need to re-build the static files i.e. repeat the process above.
|
When updating homepage versions you will need to re-build the static files i.e. repeat the process above.
|
||||||
|
@ -15,9 +15,9 @@ hide:
|
|||||||
|
|
||||||
## Service Widget Errors
|
## Service Widget Errors
|
||||||
|
|
||||||
All service widgets work essentially the same, that is, homepage makes a proxied call to an API made available by that service. The majority of the time widgets don't work it is a configuration issue. Of course, sometimes things do break. Some basic steps to try:
|
All service widgets work essentially the same, that is, homepage makes a proxied call to an API made available by that service. The majority of the time widgets don't work it is a configuration issue. Of course, sometimes things do break. Some basic steps to check:
|
||||||
|
|
||||||
1. **URLs should not end with a / or other API path. Each widget will handle the path on its own.**. Including a trailing slash can result in an error.
|
1. URLs should not end with a / or other API path. Each widget will handle the path on its own.
|
||||||
|
|
||||||
2. All services with a widget require a unique name.
|
2. All services with a widget require a unique name.
|
||||||
|
|
||||||
|
@ -22,9 +22,8 @@ An optional 'site' parameter can be supplied, if it is not the widget will use t
|
|||||||
```yaml
|
```yaml
|
||||||
- unifi_console:
|
- unifi_console:
|
||||||
url: https://unifi.host.or.ip:port
|
url: https://unifi.host.or.ip:port
|
||||||
|
site: Site Name # optional
|
||||||
username: user
|
username: user
|
||||||
password: pass
|
password: pass
|
||||||
site: Site Name # optional
|
key: unifiapikey # required if using API key instead of username/password
|
||||||
```
|
```
|
||||||
|
|
||||||
_Added in v0.4.18, updated in 0.6.7_
|
|
||||||
|
16
docs/widgets/services/apcups.md
Normal file
16
docs/widgets/services/apcups.md
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
---
|
||||||
|
title: APC UPS Monitoring
|
||||||
|
description: Lightweight monitoring widget for APC UPSs using apcupsd daemon
|
||||||
|
---
|
||||||
|
|
||||||
|
This widget extracts UPS information from an apcupsd daemon.
|
||||||
|
Only works for [APC/Schneider](https://www.se.com/us/en/product-range/61915-smartups/#products) UPS products.
|
||||||
|
|
||||||
|
[!NOTE]
|
||||||
|
By default apcupsd daemon is bound to 127.0.0.1. Edit `/etc/apcupsd.conf` and change `NISIP` to an IP accessible from your homepage docker (usually your internal LAN interface).
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
widget:
|
||||||
|
type: apcups
|
||||||
|
url: tcp://your.acpupsd.host:3551
|
||||||
|
```
|
17
docs/widgets/services/firefly.md
Normal file
17
docs/widgets/services/firefly.md
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
---
|
||||||
|
title: Firefly III
|
||||||
|
description: Firefly III Widget Configuration
|
||||||
|
---
|
||||||
|
|
||||||
|
Learn more about [Firefly III](https://www.firefly-iii.org/).
|
||||||
|
|
||||||
|
Find your API key under `Options > Profile > OAuth > Personal Access Tokens`.
|
||||||
|
|
||||||
|
Allowed fields: `["networth" ,"budget"]`.
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
widget:
|
||||||
|
type: firefly
|
||||||
|
url: https://firefly.host.or.ip
|
||||||
|
key: personalaccesstoken.personalaccesstoken.personalaccesstoken
|
||||||
|
```
|
@ -13,7 +13,7 @@ Home Network > Network > Network Settings > Access Settings in the Home Network
|
|||||||
|
|
||||||
Credentials are not needed and, as such, you may want to consider using `http` instead of `https` as those requests are significantly faster.
|
Credentials are not needed and, as such, you may want to consider using `http` instead of `https` as those requests are significantly faster.
|
||||||
|
|
||||||
Allowed fields (limited to a max of 4): `["connectionStatus", "uptime", "maxDown", "maxUp", "down", "up", "received", "sent", "externalIPAddress"]`.
|
Allowed fields (limited to a max of 4): `["connectionStatus", "uptime", "maxDown", "maxUp", "down", "up", "received", "sent", "externalIPAddress", "externalIPv6Address", "externalIPv6Prefix"]`.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
widget:
|
widget:
|
||||||
|
17
docs/widgets/services/hoarder.md
Normal file
17
docs/widgets/services/hoarder.md
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
---
|
||||||
|
title: Hoarder
|
||||||
|
description: Hoarder Widget Configuration
|
||||||
|
---
|
||||||
|
|
||||||
|
Learn more about [Hoarder](https://hoarder.app).
|
||||||
|
|
||||||
|
Generate an API key for your user at `User Settings > API Keys`.
|
||||||
|
|
||||||
|
Allowed fields: `["bookmarks", "favorites", "archived", "highlights", "lists", "tags"]` (maximum of 4).
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
widget:
|
||||||
|
type: hoarder
|
||||||
|
url: http[s]://hoarder.host.or.ip[:port]
|
||||||
|
key: hoarderapikey
|
||||||
|
```
|
@ -8,6 +8,7 @@ search:
|
|||||||
You can also find a list of all available service widgets in the sidebar navigation.
|
You can also find a list of all available service widgets in the sidebar navigation.
|
||||||
|
|
||||||
- [Adguard Home](adguard-home.md)
|
- [Adguard Home](adguard-home.md)
|
||||||
|
- [APC UPS](apcups.md)
|
||||||
- [ArgoCD](argocd.md)
|
- [ArgoCD](argocd.md)
|
||||||
- [Atsumeru](atsumeru.md)
|
- [Atsumeru](atsumeru.md)
|
||||||
- [Audiobookshelf](audiobookshelf.md)
|
- [Audiobookshelf](audiobookshelf.md)
|
||||||
@ -33,6 +34,7 @@ You can also find a list of all available service widgets in the sidebar navigat
|
|||||||
- [ESPHome](esphome.md)
|
- [ESPHome](esphome.md)
|
||||||
- [EVCC](evcc.md)
|
- [EVCC](evcc.md)
|
||||||
- [Fileflows](fileflows.md)
|
- [Fileflows](fileflows.md)
|
||||||
|
- [Firefly III](firefly.md)
|
||||||
- [Flood](flood.md)
|
- [Flood](flood.md)
|
||||||
- [FreshRSS](freshrss.md)
|
- [FreshRSS](freshrss.md)
|
||||||
- [Frigate](frigate.md)
|
- [Frigate](frigate.md)
|
||||||
@ -49,6 +51,7 @@ You can also find a list of all available service widgets in the sidebar navigat
|
|||||||
- [HDHomeRun](hdhomerun.md)
|
- [HDHomeRun](hdhomerun.md)
|
||||||
- [Headscale](headscale.md)
|
- [Headscale](headscale.md)
|
||||||
- [Healthchecks](healthchecks.md)
|
- [Healthchecks](healthchecks.md)
|
||||||
|
- [Hoarder](hoarder.md)
|
||||||
- [Home Assistant](homeassistant.md)
|
- [Home Assistant](homeassistant.md)
|
||||||
- [HomeBox](homebox.md)
|
- [HomeBox](homebox.md)
|
||||||
- [Homebridge](homebridge.md)
|
- [Homebridge](homebridge.md)
|
||||||
|
@ -15,4 +15,5 @@ widget:
|
|||||||
url: http://kavita.host.or.ip:port
|
url: http://kavita.host.or.ip:port
|
||||||
username: username
|
username: username
|
||||||
password: password
|
password: password
|
||||||
|
key: kavitaapikey # Optional, e.g. if not using username and password
|
||||||
```
|
```
|
||||||
|
@ -9,6 +9,11 @@ Uses the same username and password used to login from the web.
|
|||||||
|
|
||||||
Allowed fields: `["libraries", "series", "books"]`.
|
Allowed fields: `["libraries", "series", "books"]`.
|
||||||
|
|
||||||
|
| Komga API Version | Homepage Widget Version |
|
||||||
|
| ----------------- | ----------------------- |
|
||||||
|
| < v2 | 1 (default) |
|
||||||
|
| >= v2 | 2 |
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
widget:
|
widget:
|
||||||
type: komga
|
type: komga
|
||||||
|
@ -20,4 +20,6 @@ widget:
|
|||||||
type: peanut
|
type: peanut
|
||||||
url: http://peanut.host.or.ip:port
|
url: http://peanut.host.or.ip:port
|
||||||
key: nameofyourups
|
key: nameofyourups
|
||||||
|
username: username # only needed if set
|
||||||
|
password: password # only needed if set
|
||||||
```
|
```
|
||||||
|
@ -10,7 +10,5 @@ If more than (4) fields are provided, only the first (4) will be used.
|
|||||||
widget:
|
widget:
|
||||||
type: romm
|
type: romm
|
||||||
url: http://romm.host.or.ip
|
url: http://romm.host.or.ip
|
||||||
username: username # optional
|
|
||||||
password: password # optional
|
|
||||||
fields: ["platforms", "totalRoms", "saves", "states"] # optional - default fields shown
|
fields: ["platforms", "totalRoms", "saves", "states"] # optional - default fields shown
|
||||||
```
|
```
|
||||||
|
@ -8,7 +8,12 @@ Learn more about [Speedtest Tracker](https://github.com/alexjustesen/speedtest-t
|
|||||||
|
|
||||||
No extra configuration is required.
|
No extra configuration is required.
|
||||||
|
|
||||||
This widget is compatible with both [alexjustesen/speedtest-tracker](https://github.com/alexjustesen/speedtest-tracker) and [henrywhitaker3/Speedtest-Tracker](https://github.com/henrywhitaker3/Speedtest-Tracker).
|
Version 1 of the widget is compatible with both [alexjustesen/speedtest-tracker](https://github.com/alexjustesen/speedtest-tracker) and [henrywhitaker3/Speedtest-Tracker](https://github.com/henrywhitaker3/Speedtest-Tracker), while version 2 is only compatible with [alexjustesen/speedtest-tracker](https://github.com/alexjustesen/speedtest-tracker).
|
||||||
|
|
||||||
|
| Speedtest Version (AJ) | Speedtest Version (HW) | Homepage Widget Version |
|
||||||
|
| ---------------------- | ---------------------- | ----------------------- |
|
||||||
|
| < 1.2.1 | ≤ 1.12.0 | 1 (default) |
|
||||||
|
| >= 1.2.1 | N/A | 2 |
|
||||||
|
|
||||||
Allowed fields: `["download", "upload", "ping"]`.
|
Allowed fields: `["download", "upload", "ping"]`.
|
||||||
|
|
||||||
@ -16,5 +21,7 @@ Allowed fields: `["download", "upload", "ping"]`.
|
|||||||
widget:
|
widget:
|
||||||
type: speedtest
|
type: speedtest
|
||||||
url: http://speedtest.host.or.ip
|
url: http://speedtest.host.or.ip
|
||||||
|
version: 1 # optional, default is 1
|
||||||
|
key: speedtestapikey # required for version 2
|
||||||
bitratePrecision: 3 # optional, default is 0
|
bitratePrecision: 3 # optional, default is 0
|
||||||
```
|
```
|
||||||
|
@ -19,15 +19,14 @@ Allowed fields: `["uptime", "wan", "lan", "lan_users", "lan_devices", "wlan", "w
|
|||||||
|
|
||||||
!!! hint
|
!!! hint
|
||||||
|
|
||||||
If you enter e.g. incorrect credentials and receive an "API Error", you may need to recreate the container to clear the cache.
|
If you enter e.g. incorrect credentials and receive an "API Error", you may need to recreate the container or restart the service to clear the cache.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
widget:
|
widget:
|
||||||
type: unifi
|
type: unifi
|
||||||
url: https://unifi.host.or.ip:port
|
url: https://unifi.host.or.ip:port
|
||||||
username: username
|
|
||||||
password: password
|
|
||||||
site: Site Name # optional
|
site: Site Name # optional
|
||||||
|
username: user
|
||||||
|
password: pass
|
||||||
|
key: unifiapikey # required if using API key instead of username/password
|
||||||
```
|
```
|
||||||
|
|
||||||
_Added in v0.4.18, updated in 0.6.7_
|
|
||||||
|
@ -23,6 +23,12 @@ Set the `mode` in the `kubernetes.yaml` to `cluster`.
|
|||||||
mode: default
|
mode: default
|
||||||
```
|
```
|
||||||
|
|
||||||
|
To enable Kubernetes gateway-api compatibility, set `route` to `gateway`.
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
route: gateway
|
||||||
|
```
|
||||||
|
|
||||||
## Widgets
|
## Widgets
|
||||||
|
|
||||||
The Kubernetes widget can show a high-level overview of the cluster,
|
The Kubernetes widget can show a high-level overview of the cluster,
|
||||||
|
@ -31,6 +31,7 @@ nav:
|
|||||||
- "Service Widgets":
|
- "Service Widgets":
|
||||||
- widgets/services/index.md
|
- widgets/services/index.md
|
||||||
- widgets/services/adguard-home.md
|
- widgets/services/adguard-home.md
|
||||||
|
- widgets/services/apcups.md
|
||||||
- widgets/services/argocd.md
|
- widgets/services/argocd.md
|
||||||
- widgets/services/atsumeru.md
|
- widgets/services/atsumeru.md
|
||||||
- widgets/services/audiobookshelf.md
|
- widgets/services/audiobookshelf.md
|
||||||
@ -56,6 +57,7 @@ nav:
|
|||||||
- widgets/services/esphome.md
|
- widgets/services/esphome.md
|
||||||
- widgets/services/evcc.md
|
- widgets/services/evcc.md
|
||||||
- widgets/services/fileflows.md
|
- widgets/services/fileflows.md
|
||||||
|
- widgets/services/firefly.md
|
||||||
- widgets/services/flood.md
|
- widgets/services/flood.md
|
||||||
- widgets/services/freshrss.md
|
- widgets/services/freshrss.md
|
||||||
- widgets/services/frigate.md
|
- widgets/services/frigate.md
|
||||||
@ -72,6 +74,7 @@ nav:
|
|||||||
- widgets/services/hdhomerun.md
|
- widgets/services/hdhomerun.md
|
||||||
- widgets/services/headscale.md
|
- widgets/services/headscale.md
|
||||||
- widgets/services/healthchecks.md
|
- widgets/services/healthchecks.md
|
||||||
|
- widgets/services/hoarder.md
|
||||||
- widgets/services/homeassistant.md
|
- widgets/services/homeassistant.md
|
||||||
- widgets/services/homebox.md
|
- widgets/services/homebox.md
|
||||||
- widgets/services/homebridge.md
|
- widgets/services/homebridge.md
|
||||||
|
8768
package-lock.json
generated
8768
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
58
package.json
58
package.json
@ -1,8 +1,9 @@
|
|||||||
{
|
{
|
||||||
"name": "homepage",
|
"name": "homepage",
|
||||||
"version": "0.9.6",
|
"version": "0.10.9",
|
||||||
"private": true,
|
"private": true,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
"preinstall": "npx only-allow pnpm",
|
||||||
"dev": "next dev",
|
"dev": "next dev",
|
||||||
"build": "next build",
|
"build": "next build",
|
||||||
"start": "next start",
|
"start": "next start",
|
||||||
@ -10,55 +11,54 @@
|
|||||||
"telemetry": "next telemetry disable"
|
"telemetry": "next telemetry disable"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@headlessui/react": "^1.7.18",
|
"@headlessui/react": "^1.7.19",
|
||||||
"@kubernetes/client-node": "^0.17.1",
|
"@kubernetes/client-node": "^1.0.0",
|
||||||
"cal-parser": "^1.0.2",
|
"cal-parser": "^1.0.2",
|
||||||
"classnames": "^2.5.1",
|
"classnames": "^2.5.1",
|
||||||
"compare-versions": "^6.1.0",
|
"compare-versions": "^6.1.1",
|
||||||
"dockerode": "^4.0.2",
|
"dockerode": "^4.0.4",
|
||||||
"follow-redirects": "^1.15.9",
|
"follow-redirects": "^1.15.9",
|
||||||
"gamedig": "^5.1.4",
|
"gamedig": "^5.2.0",
|
||||||
"i18next": "^21.10.0",
|
"i18next": "^21.10.0",
|
||||||
"js-yaml": "^4.1.0",
|
"js-yaml": "^4.1.0",
|
||||||
"json-rpc-2.0": "^1.7.0",
|
"json-rpc-2.0": "^1.7.0",
|
||||||
"luxon": "^3.5.0",
|
"luxon": "^3.5.0",
|
||||||
"memory-cache": "^0.2.0",
|
"memory-cache": "^0.2.0",
|
||||||
"minecraft-ping-js": "^1.0.2",
|
"minecraftstatuspinger": "^1.2.1",
|
||||||
"next": "^12.3.4",
|
"next": "^15.1.7",
|
||||||
"next-i18next": "^12.1.0",
|
"next-i18next": "^12.1.0",
|
||||||
"ping": "^0.4.4",
|
"ping": "^0.4.4",
|
||||||
"pretty-bytes": "^6.1.1",
|
"pretty-bytes": "^6.1.1",
|
||||||
"raw-body": "^3.0.0",
|
"raw-body": "^3.0.0",
|
||||||
"react": "^18.3.1",
|
"react": "^18.3.1",
|
||||||
"react-dom": "^18.2.0",
|
"react-dom": "^18.3.1",
|
||||||
"react-i18next": "^11.18.6",
|
"react-i18next": "^11.18.6",
|
||||||
"react-icons": "^5.4.0",
|
"react-icons": "^5.4.0",
|
||||||
"recharts": "^2.12.6",
|
"recharts": "^2.15.1",
|
||||||
"rrule": "^2.8.1",
|
"rrule": "^2.8.1",
|
||||||
"swr": "^1.3.0",
|
"swr": "^1.3.0",
|
||||||
"systeminformation": "^5.24.3",
|
"systeminformation": "^5.25.11",
|
||||||
"tough-cookie": "^4.1.3",
|
"tough-cookie": "^5.1.2",
|
||||||
"urbackup-server-api": "^0.52.1",
|
"urbackup-server-api": "^0.8.9",
|
||||||
"winston": "^3.11.0",
|
"winston": "^3.17.0",
|
||||||
"xml-js": "^1.6.11"
|
"xml-js": "^1.6.11"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@tailwindcss/forms": "^0.5.8",
|
"@tailwindcss/forms": "^0.5.10",
|
||||||
"autoprefixer": "^10.4.20",
|
"@tailwindcss/postcss": "^4.0.9",
|
||||||
"eslint": "^8.57.1",
|
"eslint": "^9.21.0",
|
||||||
"eslint-config-airbnb": "^19.0.4",
|
"eslint-config-next": "^15.1.7",
|
||||||
"eslint-config-next": "^14.2.3",
|
"eslint-config-prettier": "^10.0.2",
|
||||||
"eslint-config-prettier": "^9.1.0",
|
|
||||||
"eslint-plugin-import": "^2.31.0",
|
"eslint-plugin-import": "^2.31.0",
|
||||||
"eslint-plugin-jsx-a11y": "^6.8.0",
|
"eslint-plugin-jsx-a11y": "^6.10.2",
|
||||||
"eslint-plugin-prettier": "^5.2.1",
|
"eslint-plugin-prettier": "^5.2.3",
|
||||||
"eslint-plugin-react": "^7.37.3",
|
"eslint-plugin-react": "^7.37.4",
|
||||||
"eslint-plugin-react-hooks": "^4.6.2",
|
"eslint-plugin-react-hooks": "^5.1.0",
|
||||||
"postcss": "^8.4.47",
|
"postcss": "^8.5.2",
|
||||||
"prettier": "^3.2.5",
|
"prettier": "^3.5.2",
|
||||||
"tailwind-scrollbar": "^3.0.5",
|
"tailwind-scrollbar": "^4.0.1",
|
||||||
"tailwindcss": "^3.4.17",
|
"tailwindcss": "^4.0.9",
|
||||||
"typescript": "^5.6.3"
|
"typescript": "^5.7.3"
|
||||||
},
|
},
|
||||||
"optionalDependencies": {
|
"optionalDependencies": {
|
||||||
"osx-temperature-sensor": "^1.0.8"
|
"osx-temperature-sensor": "^1.0.8"
|
||||||
|
4292
pnpm-lock.yaml
generated
4292
pnpm-lock.yaml
generated
File diff suppressed because it is too large
Load Diff
@ -1,6 +1,5 @@
|
|||||||
module.exports = {
|
module.exports = {
|
||||||
plugins: {
|
plugins: {
|
||||||
tailwindcss: {},
|
"@tailwindcss/postcss": {},
|
||||||
autoprefixer: {},
|
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Op",
|
"up": "Op",
|
||||||
"received": "Ontvang",
|
"received": "Ontvang",
|
||||||
"sent": "Gestuur",
|
"sent": "Gestuur",
|
||||||
"externalIPAddress": "Ext. IP"
|
"externalIPAddress": "Ext. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Voorvoegsel"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Stroomop",
|
"upstreams": "Stroomop",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Gekoppelde APs",
|
"connectedAp": "Gekoppelde APs",
|
||||||
"activeUser": "Aktiewe toestelle",
|
"activeUser": "Aktiewe toestelle",
|
||||||
"alerts": "Waarskuwings",
|
"alerts": "Waarskuwings",
|
||||||
"connectedGateway": "Gekoppelde poorte",
|
"connectedGateways": "Gekoppelde poorte",
|
||||||
"connectedSwitches": "Gekoppelde skakelaars"
|
"connectedSwitches": "Gekoppelde skakelaars"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Verwerk",
|
"processed": "Verwerk",
|
||||||
"time": "Tyd"
|
"time": "Tyd"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Netto Waarde",
|
||||||
|
"budget": "Begroting"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dashboards",
|
"dashboards": "Dashboards",
|
||||||
"datasources": "Databronne",
|
"datasources": "Databronne",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Kwessies",
|
"issues": "Kwessies",
|
||||||
"merges": "Saamvleg Versoeke",
|
"merges": "Saamvleg Versoeke",
|
||||||
"projects": "Projekte"
|
"projects": "Projekte"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Status",
|
||||||
|
"load": "Las",
|
||||||
|
"bcharge": "Batterylading",
|
||||||
|
"timeleft": "Oorblywende Tyd"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Merkers"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "يعمل",
|
"up": "يعمل",
|
||||||
"received": "تم الإستلام",
|
"received": "تم الإستلام",
|
||||||
"sent": "تم الإرسال",
|
"sent": "تم الإرسال",
|
||||||
"externalIPAddress": "IP الخارجي"
|
"externalIPAddress": "IP الخارجي",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "تدفق",
|
"upstreams": "تدفق",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "المتصلة APs",
|
"connectedAp": "المتصلة APs",
|
||||||
"activeUser": "الأجهزة النشطة",
|
"activeUser": "الأجهزة النشطة",
|
||||||
"alerts": "تنبيهات",
|
"alerts": "تنبيهات",
|
||||||
"connectedGateway": "البوابات المتصلة",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "مفاتيح التبديل المتصلة"
|
"connectedSwitches": "مفاتيح التبديل المتصلة"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "معالجة",
|
"processed": "معالجة",
|
||||||
"time": "الوقت"
|
"time": "الوقت"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "لوحات المعلومات",
|
"dashboards": "لوحات المعلومات",
|
||||||
"datasources": "مصادر البيانات",
|
"datasources": "مصادر البيانات",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "المُشكِلات",
|
"issues": "المُشكِلات",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "الحالة",
|
||||||
|
"load": "الضغط",
|
||||||
|
"bcharge": "شحن البطارية",
|
||||||
|
"timeleft": "الوقت المتبقي"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "التصنيفات"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -148,7 +148,9 @@
|
|||||||
"up": "Actiu",
|
"up": "Actiu",
|
||||||
"received": "Rebuts",
|
"received": "Rebuts",
|
||||||
"sent": "Enviats",
|
"sent": "Enviats",
|
||||||
"externalIPAddress": "IP ext."
|
"externalIPAddress": "IP ext.",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "AP connectats",
|
"connectedAp": "AP connectats",
|
||||||
"activeUser": "Dispositius actius",
|
"activeUser": "Dispositius actius",
|
||||||
"alerts": "Alertes",
|
"alerts": "Alertes",
|
||||||
"connectedGateway": "Pasarel·les connectades",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Conmutadors connectats"
|
"connectedSwitches": "Conmutadors connectats"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Processat",
|
"processed": "Processat",
|
||||||
"time": "Temps"
|
"time": "Temps"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Taulells",
|
"dashboards": "Taulells",
|
||||||
"datasources": "Orígens de dades",
|
"datasources": "Orígens de dades",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Problemes",
|
"issues": "Problemes",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projectes"
|
"projects": "Projectes"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Estat",
|
||||||
|
"load": "Càrrega",
|
||||||
|
"bcharge": "Càrrega de la bateria",
|
||||||
|
"timeleft": "Temps restant"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Etiquetes"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Up",
|
"up": "Up",
|
||||||
"received": "Přijaté",
|
"received": "Přijaté",
|
||||||
"sent": "Odeslané",
|
"sent": "Odeslané",
|
||||||
"externalIPAddress": "Ext. IP"
|
"externalIPAddress": "Ext. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Odesílání dat",
|
"upstreams": "Odesílání dat",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Připojené APs",
|
"connectedAp": "Připojené APs",
|
||||||
"activeUser": "Aktivní zařízení",
|
"activeUser": "Aktivní zařízení",
|
||||||
"alerts": "Upozornění",
|
"alerts": "Upozornění",
|
||||||
"connectedGateway": "Připojené brány",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Připojené přepínače"
|
"connectedSwitches": "Připojené přepínače"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Zpracováno",
|
"processed": "Zpracováno",
|
||||||
"time": "Čas"
|
"time": "Čas"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Nástěnky",
|
"dashboards": "Nástěnky",
|
||||||
"datasources": "Zdroje dat",
|
"datasources": "Zdroje dat",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Problémy",
|
"issues": "Problémy",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Stav",
|
||||||
|
"load": "Zatížení",
|
||||||
|
"bcharge": "Battery Charge",
|
||||||
|
"timeleft": "Zbývající čas"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tags"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Op",
|
"up": "Op",
|
||||||
"received": "Modtaget",
|
"received": "Modtaget",
|
||||||
"sent": "Sendt",
|
"sent": "Sendt",
|
||||||
"externalIPAddress": "Ekstern IP"
|
"externalIPAddress": "Ekstern IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Forbundne APs",
|
"connectedAp": "Forbundne APs",
|
||||||
"activeUser": "Aktive enheder",
|
"activeUser": "Aktive enheder",
|
||||||
"alerts": "Advarsler",
|
"alerts": "Advarsler",
|
||||||
"connectedGateway": "Forbundne gateways",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Forbundne switches"
|
"connectedSwitches": "Forbundne switches"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Behandlet",
|
"processed": "Behandlet",
|
||||||
"time": "Tid"
|
"time": "Tid"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Kontrolpanel",
|
"dashboards": "Kontrolpanel",
|
||||||
"datasources": "Data Kilder",
|
"datasources": "Data Kilder",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Problemer",
|
"issues": "Problemer",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Status",
|
||||||
|
"load": "Belastning",
|
||||||
|
"bcharge": "Batteriniveau",
|
||||||
|
"timeleft": "Resterende tid"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tags"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -85,16 +85,16 @@
|
|||||||
"ping": {
|
"ping": {
|
||||||
"error": "Fehler",
|
"error": "Fehler",
|
||||||
"ping": "Ping",
|
"ping": "Ping",
|
||||||
"down": "Empfangen",
|
"down": "Offline",
|
||||||
"up": "Senden",
|
"up": "Online",
|
||||||
"not_available": "Nicht verfügbar"
|
"not_available": "Nicht verfügbar"
|
||||||
},
|
},
|
||||||
"siteMonitor": {
|
"siteMonitor": {
|
||||||
"http_status": "HTTP-Status",
|
"http_status": "HTTP-Status",
|
||||||
"error": "Fehler",
|
"error": "Fehler",
|
||||||
"response": "Antwort",
|
"response": "Antwort",
|
||||||
"down": "Empfangen",
|
"down": "Offline",
|
||||||
"up": "Senden",
|
"up": "Online",
|
||||||
"not_available": "Nicht verfügbar"
|
"not_available": "Nicht verfügbar"
|
||||||
},
|
},
|
||||||
"emby": {
|
"emby": {
|
||||||
@ -144,11 +144,13 @@
|
|||||||
"uptime": "Betriebszeit",
|
"uptime": "Betriebszeit",
|
||||||
"maxDown": "Max. Down",
|
"maxDown": "Max. Down",
|
||||||
"maxUp": "Max. Up",
|
"maxUp": "Max. Up",
|
||||||
"down": "Empfangen",
|
"down": "Offline",
|
||||||
"up": "Senden",
|
"up": "Online",
|
||||||
"received": "Empfangen",
|
"received": "Empfangen",
|
||||||
"sent": "Gesendet",
|
"sent": "Gesendet",
|
||||||
"externalIPAddress": "Externe IP"
|
"externalIPAddress": "Externe IP",
|
||||||
|
"externalIPv6Address": "Externe IPv6",
|
||||||
|
"externalIPv6Prefix": "Externer IPv4-Präfix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Verbundene APs",
|
"connectedAp": "Verbundene APs",
|
||||||
"activeUser": "Aktive Geräte",
|
"activeUser": "Aktive Geräte",
|
||||||
"alerts": "Warnungen",
|
"alerts": "Warnungen",
|
||||||
"connectedGateway": "Verbundene Gateways",
|
"connectedGateways": "Verbundene Gateways",
|
||||||
"connectedSwitches": "Verbundene Switche"
|
"connectedSwitches": "Verbundene Switche"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -350,7 +352,7 @@
|
|||||||
"queue": "Warteschlange",
|
"queue": "Warteschlange",
|
||||||
"processed": "Verarbeitet",
|
"processed": "Verarbeitet",
|
||||||
"errored": "Fehlgeschlagen",
|
"errored": "Fehlgeschlagen",
|
||||||
"saved": "Gespeichert"
|
"saved": "Eingespart"
|
||||||
},
|
},
|
||||||
"traefik": {
|
"traefik": {
|
||||||
"routers": "Router",
|
"routers": "Router",
|
||||||
@ -521,15 +523,15 @@
|
|||||||
"up_to_date": "Aktuell",
|
"up_to_date": "Aktuell",
|
||||||
"child_bridges": "Unter-Bridges",
|
"child_bridges": "Unter-Bridges",
|
||||||
"child_bridges_status": "{{ok}}/{{total}}",
|
"child_bridges_status": "{{ok}}/{{total}}",
|
||||||
"up": "Senden",
|
"up": "Online",
|
||||||
"pending": "Ausstehend",
|
"pending": "Ausstehend",
|
||||||
"down": "Empfangen"
|
"down": "Offline"
|
||||||
},
|
},
|
||||||
"healthchecks": {
|
"healthchecks": {
|
||||||
"new": "Neu",
|
"new": "Neu",
|
||||||
"up": "Senden",
|
"up": "Online",
|
||||||
"grace": "In Karenzzeit",
|
"grace": "In Karenzzeit",
|
||||||
"down": "Empfangen",
|
"down": "Offline",
|
||||||
"paused": "Pausiert",
|
"paused": "Pausiert",
|
||||||
"status": "Status",
|
"status": "Status",
|
||||||
"last_ping": "Letzter Ping",
|
"last_ping": "Letzter Ping",
|
||||||
@ -644,8 +646,8 @@
|
|||||||
"load": "Durchschnittliche Last",
|
"load": "Durchschnittliche Last",
|
||||||
"memory": "Speichernutzung",
|
"memory": "Speichernutzung",
|
||||||
"wanStatus": "WAN-Status",
|
"wanStatus": "WAN-Status",
|
||||||
"up": "Senden",
|
"up": "Online",
|
||||||
"down": "Empfangen",
|
"down": "Offline",
|
||||||
"temp": "Temperatur",
|
"temp": "Temperatur",
|
||||||
"disk": "Datenträgernutzung",
|
"disk": "Datenträgernutzung",
|
||||||
"wanIP": "WAN-IP"
|
"wanIP": "WAN-IP"
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Verarbeitet",
|
"processed": "Verarbeitet",
|
||||||
"time": "Zeit"
|
"time": "Zeit"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Reinvermögen",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dashboards",
|
"dashboards": "Dashboards",
|
||||||
"datasources": "Datenquellen",
|
"datasources": "Datenquellen",
|
||||||
@ -826,8 +832,8 @@
|
|||||||
"openwrt": {
|
"openwrt": {
|
||||||
"uptime": "Betriebszeit",
|
"uptime": "Betriebszeit",
|
||||||
"cpuLoad": "CPU-Last (5 min-Durchschnitt)",
|
"cpuLoad": "CPU-Last (5 min-Durchschnitt)",
|
||||||
"up": "Senden",
|
"up": "Online",
|
||||||
"down": "Empfangen",
|
"down": "Offline",
|
||||||
"bytesTx": "Übertragen",
|
"bytesTx": "Übertragen",
|
||||||
"bytesRx": "Empfangen"
|
"bytesRx": "Empfangen"
|
||||||
},
|
},
|
||||||
@ -840,9 +846,9 @@
|
|||||||
"sitesDown": "Seiten nicht verfügbar",
|
"sitesDown": "Seiten nicht verfügbar",
|
||||||
"paused": "Pausiert",
|
"paused": "Pausiert",
|
||||||
"notyetchecked": "Noch nicht geprüft",
|
"notyetchecked": "Noch nicht geprüft",
|
||||||
"up": "Senden",
|
"up": "Online",
|
||||||
"seemsdown": "Scheint nicht verfügbar",
|
"seemsdown": "Scheint nicht verfügbar",
|
||||||
"down": "Empfangen",
|
"down": "Offline",
|
||||||
"unknown": "Unbekannt"
|
"unknown": "Unbekannt"
|
||||||
},
|
},
|
||||||
"calendar": {
|
"calendar": {
|
||||||
@ -981,8 +987,8 @@
|
|||||||
"beszel": {
|
"beszel": {
|
||||||
"name": "Name",
|
"name": "Name",
|
||||||
"systems": "Systeme",
|
"systems": "Systeme",
|
||||||
"up": "Senden",
|
"up": "Online",
|
||||||
"down": "Empfangen",
|
"down": "Offline",
|
||||||
"paused": "Pausiert",
|
"paused": "Pausiert",
|
||||||
"pending": "Ausstehend",
|
"pending": "Ausstehend",
|
||||||
"status": "Status",
|
"status": "Status",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Probleme",
|
"issues": "Probleme",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projekte"
|
"projects": "Projekte"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Status",
|
||||||
|
"load": "Last",
|
||||||
|
"bcharge": "Akkuladung",
|
||||||
|
"timeleft": "Verbleibende Zeit"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Schlagwörter"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Ping up",
|
"up": "Ping up",
|
||||||
"received": "Ληφθέντα",
|
"received": "Ληφθέντα",
|
||||||
"sent": "Απεσταλμένα",
|
"sent": "Απεσταλμένα",
|
||||||
"externalIPAddress": "Εξωτερική IP"
|
"externalIPAddress": "Εξωτερική IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Συνδεδεμένα APs",
|
"connectedAp": "Συνδεδεμένα APs",
|
||||||
"activeUser": "Ενεργές συσκευές",
|
"activeUser": "Ενεργές συσκευές",
|
||||||
"alerts": "Ειδοποιήσεις",
|
"alerts": "Ειδοποιήσεις",
|
||||||
"connectedGateway": "Συνδεδεμένα gateways",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Συνδεδεμένα switches"
|
"connectedSwitches": "Συνδεδεμένα switches"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Σε επεξεργασία",
|
"processed": "Σε επεξεργασία",
|
||||||
"time": "Ώρα"
|
"time": "Ώρα"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Πίνακας Ελέγχου",
|
"dashboards": "Πίνακας Ελέγχου",
|
||||||
"datasources": "Πηγές Δεδομένων",
|
"datasources": "Πηγές Δεδομένων",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Issues",
|
"issues": "Issues",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Κατάσταση",
|
||||||
|
"load": "Φόρτωση",
|
||||||
|
"bcharge": "Battery Charge",
|
||||||
|
"timeleft": "Χρόνος που απομένει"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Ετικέτες"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Up",
|
"up": "Up",
|
||||||
"received": "Received",
|
"received": "Received",
|
||||||
"sent": "Sent",
|
"sent": "Sent",
|
||||||
"externalIPAddress": "Ext. IP"
|
"externalIPAddress": "Ext. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Connected APs",
|
"connectedAp": "Connected APs",
|
||||||
"activeUser": "Active devices",
|
"activeUser": "Active devices",
|
||||||
"alerts": "Alerts",
|
"alerts": "Alerts",
|
||||||
"connectedGateway": "Connected gateways",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Connected switches"
|
"connectedSwitches": "Connected switches"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Processed",
|
"processed": "Processed",
|
||||||
"time": "Time"
|
"time": "Time"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dashboards",
|
"dashboards": "Dashboards",
|
||||||
"datasources": "Data Sources",
|
"datasources": "Data Sources",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Issues",
|
"issues": "Issues",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Status",
|
||||||
|
"load": "Load",
|
||||||
|
"bcharge":"Battery Charge",
|
||||||
|
"timeleft":"Time Left"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tags"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Up",
|
"up": "Up",
|
||||||
"received": "Received",
|
"received": "Received",
|
||||||
"sent": "Sent",
|
"sent": "Sent",
|
||||||
"externalIPAddress": "Ext. IP"
|
"externalIPAddress": "Ext. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Connected APs",
|
"connectedAp": "Connected APs",
|
||||||
"activeUser": "Active devices",
|
"activeUser": "Active devices",
|
||||||
"alerts": "Alerts",
|
"alerts": "Alerts",
|
||||||
"connectedGateway": "Connected gateways",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Connected switches"
|
"connectedSwitches": "Connected switches"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Processed",
|
"processed": "Processed",
|
||||||
"time": "Time"
|
"time": "Time"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dashboards",
|
"dashboards": "Dashboards",
|
||||||
"datasources": "Data Sources",
|
"datasources": "Data Sources",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Issues",
|
"issues": "Issues",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Stato",
|
||||||
|
"load": "Ŝarĝo",
|
||||||
|
"bcharge": "Battery Charge",
|
||||||
|
"timeleft": "Time Left"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tags"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Activo",
|
"up": "Activo",
|
||||||
"received": "Recibido",
|
"received": "Recibido",
|
||||||
"sent": "Enviado",
|
"sent": "Enviado",
|
||||||
"externalIPAddress": "IP ext."
|
"externalIPAddress": "IP ext.",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstream (desarrollo de software)",
|
"upstreams": "Upstream (desarrollo de software)",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "AP conectados",
|
"connectedAp": "AP conectados",
|
||||||
"activeUser": "Dispositivos activos",
|
"activeUser": "Dispositivos activos",
|
||||||
"alerts": "Alertas",
|
"alerts": "Alertas",
|
||||||
"connectedGateway": "Puertas de enlace conectadas",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Conmutadores conectados"
|
"connectedSwitches": "Conmutadores conectados"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Procesado",
|
"processed": "Procesado",
|
||||||
"time": "Tiempo"
|
"time": "Tiempo"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Tableros",
|
"dashboards": "Tableros",
|
||||||
"datasources": "Fuentes de datos",
|
"datasources": "Fuentes de datos",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Números",
|
"issues": "Números",
|
||||||
"merges": "Solicitudes de fusión",
|
"merges": "Solicitudes de fusión",
|
||||||
"projects": "Proyectos"
|
"projects": "Proyectos"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Estado",
|
||||||
|
"load": "Carga",
|
||||||
|
"bcharge": "Carga de la batería",
|
||||||
|
"timeleft": "Tiempo restante"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Etiquetas"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Up",
|
"up": "Up",
|
||||||
"received": "Received",
|
"received": "Received",
|
||||||
"sent": "Sent",
|
"sent": "Sent",
|
||||||
"externalIPAddress": "Ext. IP"
|
"externalIPAddress": "Ext. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Connected APs",
|
"connectedAp": "Connected APs",
|
||||||
"activeUser": "Active devices",
|
"activeUser": "Active devices",
|
||||||
"alerts": "Alerts",
|
"alerts": "Alerts",
|
||||||
"connectedGateway": "Connected gateways",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Connected switches"
|
"connectedSwitches": "Connected switches"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Processed",
|
"processed": "Processed",
|
||||||
"time": "Time"
|
"time": "Time"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dashboards",
|
"dashboards": "Dashboards",
|
||||||
"datasources": "Data Sources",
|
"datasources": "Data Sources",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Issues",
|
"issues": "Issues",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Status",
|
||||||
|
"load": "Load",
|
||||||
|
"bcharge": "Battery Charge",
|
||||||
|
"timeleft": "Time Left"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tags"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Up",
|
"up": "Up",
|
||||||
"received": "Received",
|
"received": "Received",
|
||||||
"sent": "Sent",
|
"sent": "Sent",
|
||||||
"externalIPAddress": "Ext. IP"
|
"externalIPAddress": "Ext. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Connected APs",
|
"connectedAp": "Connected APs",
|
||||||
"activeUser": "Active devices",
|
"activeUser": "Active devices",
|
||||||
"alerts": "Alerts",
|
"alerts": "Alerts",
|
||||||
"connectedGateway": "Connected gateways",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Connected switches"
|
"connectedSwitches": "Connected switches"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Processed",
|
"processed": "Processed",
|
||||||
"time": "Time"
|
"time": "Time"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dashboards",
|
"dashboards": "Dashboards",
|
||||||
"datasources": "Data Sources",
|
"datasources": "Data Sources",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Issues",
|
"issues": "Issues",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Tila",
|
||||||
|
"load": "Kuorma",
|
||||||
|
"bcharge": "Battery Charge",
|
||||||
|
"timeleft": "Aikaa jäljellä"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tags"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -57,14 +57,14 @@
|
|||||||
"lan": "LAN",
|
"lan": "LAN",
|
||||||
"wlan": "WLAN",
|
"wlan": "WLAN",
|
||||||
"devices": "Équipt.",
|
"devices": "Équipt.",
|
||||||
"lan_devices": "Équipt. LAN",
|
"lan_devices": "Périphériques LAN",
|
||||||
"wlan_devices": "Périphériques WLAN",
|
"wlan_devices": "Périphériques WLAN",
|
||||||
"lan_users": "Utilisateurs LAN",
|
"lan_users": "Utilisateurs LAN",
|
||||||
"wlan_users": "Utilisateurs WLAN",
|
"wlan_users": "Utilisateurs WLAN",
|
||||||
"up": "Up",
|
"up": "Up",
|
||||||
"down": "INACTIF",
|
"down": "INACTIF",
|
||||||
"wait": "Veuillez patienter",
|
"wait": "Veuillez patienter",
|
||||||
"empty_data": "Statut sous-système inconnu"
|
"empty_data": "Statut du sous-système inconnu"
|
||||||
},
|
},
|
||||||
"docker": {
|
"docker": {
|
||||||
"rx": "Rx",
|
"rx": "Rx",
|
||||||
@ -77,24 +77,24 @@
|
|||||||
"unknown": "Inconnu",
|
"unknown": "Inconnu",
|
||||||
"healthy": "Fonctionnel",
|
"healthy": "Fonctionnel",
|
||||||
"starting": "Démarrage",
|
"starting": "Démarrage",
|
||||||
"unhealthy": "Dysfonctionnement",
|
"unhealthy": "Mauvaise santé",
|
||||||
"not_found": "Inconnu",
|
"not_found": "Introuvable",
|
||||||
"exited": "Arrêté",
|
"exited": "Arrêté",
|
||||||
"partial": "Partiel"
|
"partial": "Partiel"
|
||||||
},
|
},
|
||||||
"ping": {
|
"ping": {
|
||||||
"error": "Erreur",
|
"error": "Erreur",
|
||||||
"ping": "Ping",
|
"ping": "Latence",
|
||||||
"down": "Down",
|
"down": "Bas",
|
||||||
"up": "Up",
|
"up": "Haut",
|
||||||
"not_available": "Non disponible"
|
"not_available": "Non disponible"
|
||||||
},
|
},
|
||||||
"siteMonitor": {
|
"siteMonitor": {
|
||||||
"http_status": "Statut HTTP",
|
"http_status": "Statut HTTP",
|
||||||
"error": "Erreur",
|
"error": "Erreur",
|
||||||
"response": "Réponse",
|
"response": "Réponse",
|
||||||
"down": "Down",
|
"down": "Bas",
|
||||||
"up": "Up",
|
"up": "Haut",
|
||||||
"not_available": "Non disponible"
|
"not_available": "Non disponible"
|
||||||
},
|
},
|
||||||
"emby": {
|
"emby": {
|
||||||
@ -105,7 +105,7 @@
|
|||||||
"movies": "Films",
|
"movies": "Films",
|
||||||
"series": "Séries TV",
|
"series": "Séries TV",
|
||||||
"episodes": "Épisodes",
|
"episodes": "Épisodes",
|
||||||
"songs": "Musique"
|
"songs": "Chansons"
|
||||||
},
|
},
|
||||||
"esphome": {
|
"esphome": {
|
||||||
"offline": "Hors ligne",
|
"offline": "Hors ligne",
|
||||||
@ -124,7 +124,7 @@
|
|||||||
},
|
},
|
||||||
"flood": {
|
"flood": {
|
||||||
"download": "Récep.",
|
"download": "Récep.",
|
||||||
"upload": "Envoi",
|
"upload": "Téléverser",
|
||||||
"leech": "Leech",
|
"leech": "Leech",
|
||||||
"seed": "Seed"
|
"seed": "Seed"
|
||||||
},
|
},
|
||||||
@ -144,23 +144,25 @@
|
|||||||
"uptime": "Démarré depuis",
|
"uptime": "Démarré depuis",
|
||||||
"maxDown": "Max. Bas",
|
"maxDown": "Max. Bas",
|
||||||
"maxUp": "Max. Haut",
|
"maxUp": "Max. Haut",
|
||||||
"down": "Down",
|
"down": "Bas",
|
||||||
"up": "Up",
|
"up": "Haut",
|
||||||
"received": "Reçu",
|
"received": "Reçu",
|
||||||
"sent": "Envoyé",
|
"sent": "Envoyé",
|
||||||
"externalIPAddress": "IP externe"
|
"externalIPAddress": "IP externe",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "En amont",
|
||||||
"requests": "Demandes en cours",
|
"requests": "Demandes en cours",
|
||||||
"requests_failed": "Demandes échouées"
|
"requests_failed": "Demandes échouées"
|
||||||
},
|
},
|
||||||
"changedetectionio": {
|
"changedetectionio": {
|
||||||
"totalObserved": "Total Observé",
|
"totalObserved": "Total Observé",
|
||||||
"diffsDetected": "Diffs détectées"
|
"diffsDetected": "Différences détectées"
|
||||||
},
|
},
|
||||||
"channelsdvrserver": {
|
"channelsdvrserver": {
|
||||||
"shows": "Affichages",
|
"shows": "Séries",
|
||||||
"recordings": "Enregistrements",
|
"recordings": "Enregistrements",
|
||||||
"scheduled": "Planifié",
|
"scheduled": "Planifié",
|
||||||
"passes": "Passes"
|
"passes": "Passes"
|
||||||
@ -174,10 +176,10 @@
|
|||||||
},
|
},
|
||||||
"omada": {
|
"omada": {
|
||||||
"connectedAp": "AP connectés",
|
"connectedAp": "AP connectés",
|
||||||
"activeUser": "Équipts actifs",
|
"activeUser": "Périphériques actifs",
|
||||||
"alerts": "Alertes",
|
"alerts": "Alertes",
|
||||||
"connectedGateway": "Passerelles connectées",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Switches connectés"
|
"connectedSwitches": "Switchs connectés"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
"rate": "Débit",
|
"rate": "Débit",
|
||||||
@ -188,7 +190,7 @@
|
|||||||
"streams": "Flux actif",
|
"streams": "Flux actif",
|
||||||
"albums": "Albums",
|
"albums": "Albums",
|
||||||
"movies": "Films",
|
"movies": "Films",
|
||||||
"tv": "Séries TV"
|
"tv": "Séries"
|
||||||
},
|
},
|
||||||
"sabnzbd": {
|
"sabnzbd": {
|
||||||
"rate": "Débit",
|
"rate": "Débit",
|
||||||
@ -197,32 +199,32 @@
|
|||||||
},
|
},
|
||||||
"rutorrent": {
|
"rutorrent": {
|
||||||
"active": "Actif",
|
"active": "Actif",
|
||||||
"upload": "Envoi",
|
"upload": "Téléverser",
|
||||||
"download": "Récep."
|
"download": "Récep."
|
||||||
},
|
},
|
||||||
"transmission": {
|
"transmission": {
|
||||||
"download": "Récep.",
|
"download": "Récep.",
|
||||||
"upload": "Envoi",
|
"upload": "Téléverser",
|
||||||
"leech": "Leech",
|
"leech": "Leech",
|
||||||
"seed": "Seed"
|
"seed": "Seed"
|
||||||
},
|
},
|
||||||
"qbittorrent": {
|
"qbittorrent": {
|
||||||
"download": "Récep.",
|
"download": "Récep.",
|
||||||
"upload": "Envoi",
|
"upload": "Téléverser",
|
||||||
"leech": "Leech",
|
"leech": "Leech",
|
||||||
"seed": "Seed"
|
"seed": "Seed"
|
||||||
},
|
},
|
||||||
"qnap": {
|
"qnap": {
|
||||||
"cpuUsage": "Cpu",
|
"cpuUsage": "Processeur utilisé",
|
||||||
"memUsage": "Mém",
|
"memUsage": "Mémoire utilisée",
|
||||||
"systemTempC": "Temp",
|
"systemTempC": "Température système",
|
||||||
"poolUsage": "Pool",
|
"poolUsage": "Utilisation de la pool",
|
||||||
"volumeUsage": "Volume",
|
"volumeUsage": "Utilisation du volume",
|
||||||
"invalid": "Invalide"
|
"invalid": "Invalide"
|
||||||
},
|
},
|
||||||
"deluge": {
|
"deluge": {
|
||||||
"download": "Récep.",
|
"download": "Récep.",
|
||||||
"upload": "Envoi",
|
"upload": "Téléverser",
|
||||||
"leech": "Leech",
|
"leech": "Leech",
|
||||||
"seed": "Seed"
|
"seed": "Seed"
|
||||||
},
|
},
|
||||||
@ -232,33 +234,33 @@
|
|||||||
},
|
},
|
||||||
"downloadstation": {
|
"downloadstation": {
|
||||||
"download": "Récep.",
|
"download": "Récep.",
|
||||||
"upload": "Envoi",
|
"upload": "Téléverser",
|
||||||
"leech": "Leech",
|
"leech": "Leech",
|
||||||
"seed": "Seed"
|
"seed": "Seed"
|
||||||
},
|
},
|
||||||
"sonarr": {
|
"sonarr": {
|
||||||
"wanted": "Demande",
|
"wanted": "Demandé",
|
||||||
"queued": "Attente",
|
"queued": "En file d'attente",
|
||||||
"series": "Séries TV",
|
"series": "Séries TV",
|
||||||
"queue": "En attente",
|
"queue": "En attente",
|
||||||
"unknown": "Inconnu"
|
"unknown": "Inconnu"
|
||||||
},
|
},
|
||||||
"radarr": {
|
"radarr": {
|
||||||
"wanted": "Demande",
|
"wanted": "Demandé",
|
||||||
"missing": "Manquant",
|
"missing": "Manquant",
|
||||||
"queued": "Attente",
|
"queued": "En file d'attente",
|
||||||
"movies": "Films",
|
"movies": "Films",
|
||||||
"queue": "En attente",
|
"queue": "En attente",
|
||||||
"unknown": "Inconnu"
|
"unknown": "Inconnu"
|
||||||
},
|
},
|
||||||
"lidarr": {
|
"lidarr": {
|
||||||
"wanted": "Demande",
|
"wanted": "Demandé",
|
||||||
"queued": "Attente",
|
"queued": "En file d'attente",
|
||||||
"artists": "Artistes"
|
"artists": "Artistes"
|
||||||
},
|
},
|
||||||
"readarr": {
|
"readarr": {
|
||||||
"wanted": "Demande",
|
"wanted": "Demandé",
|
||||||
"queued": "Attente",
|
"queued": "En file d'attente",
|
||||||
"books": "Livres"
|
"books": "Livres"
|
||||||
},
|
},
|
||||||
"bazarr": {
|
"bazarr": {
|
||||||
@ -267,18 +269,18 @@
|
|||||||
},
|
},
|
||||||
"ombi": {
|
"ombi": {
|
||||||
"pending": "En attente",
|
"pending": "En attente",
|
||||||
"approved": "Validé",
|
"approved": "Approuvé",
|
||||||
"available": "Disponible"
|
"available": "Disponible"
|
||||||
},
|
},
|
||||||
"jellyseerr": {
|
"jellyseerr": {
|
||||||
"pending": "En attente",
|
"pending": "En attente",
|
||||||
"approved": "Validé",
|
"approved": "Approuvé",
|
||||||
"available": "Disponible"
|
"available": "Disponible"
|
||||||
},
|
},
|
||||||
"overseerr": {
|
"overseerr": {
|
||||||
"pending": "En attente",
|
"pending": "En attente",
|
||||||
"processing": "Traitement",
|
"processing": "En cours de traitement",
|
||||||
"approved": "Validé",
|
"approved": "Approuvé",
|
||||||
"available": "Disponible"
|
"available": "Disponible"
|
||||||
},
|
},
|
||||||
"netalertx": {
|
"netalertx": {
|
||||||
@ -290,7 +292,7 @@
|
|||||||
"pihole": {
|
"pihole": {
|
||||||
"queries": "Requêtes",
|
"queries": "Requêtes",
|
||||||
"blocked": "Bloqué",
|
"blocked": "Bloqué",
|
||||||
"blocked_percent": "Bloqué %",
|
"blocked_percent": "% bloqué",
|
||||||
"gravity": "Listes dom. bloqués"
|
"gravity": "Listes dom. bloqués"
|
||||||
},
|
},
|
||||||
"adguard": {
|
"adguard": {
|
||||||
@ -300,9 +302,9 @@
|
|||||||
"latency": "Latence"
|
"latency": "Latence"
|
||||||
},
|
},
|
||||||
"speedtest": {
|
"speedtest": {
|
||||||
"upload": "Envoi",
|
"upload": "Téléverser",
|
||||||
"download": "Récep.",
|
"download": "Récep.",
|
||||||
"ping": "Ping"
|
"ping": "Latence"
|
||||||
},
|
},
|
||||||
"portainer": {
|
"portainer": {
|
||||||
"running": "Démarré",
|
"running": "Démarré",
|
||||||
@ -335,7 +337,7 @@
|
|||||||
},
|
},
|
||||||
"technitium": {
|
"technitium": {
|
||||||
"totalQueries": "Requêtes",
|
"totalQueries": "Requêtes",
|
||||||
"totalNoError": "Effectué avec succès",
|
"totalNoError": "Succès",
|
||||||
"totalServerFailure": "Échecs",
|
"totalServerFailure": "Échecs",
|
||||||
"totalNxDomain": "Domaines NX",
|
"totalNxDomain": "Domaines NX",
|
||||||
"totalRefused": "Refusés",
|
"totalRefused": "Refusés",
|
||||||
@ -349,8 +351,8 @@
|
|||||||
"tdarr": {
|
"tdarr": {
|
||||||
"queue": "En attente",
|
"queue": "En attente",
|
||||||
"processed": "Traité",
|
"processed": "Traité",
|
||||||
"errored": "En erreur",
|
"errored": "Erroné",
|
||||||
"saved": "Libéré"
|
"saved": "Enregistré"
|
||||||
},
|
},
|
||||||
"traefik": {
|
"traefik": {
|
||||||
"routers": "Routeurs",
|
"routers": "Routeurs",
|
||||||
@ -374,35 +376,35 @@
|
|||||||
"30days": "30 Jours"
|
"30days": "30 Jours"
|
||||||
},
|
},
|
||||||
"gotify": {
|
"gotify": {
|
||||||
"apps": "Applis",
|
"apps": "Applications",
|
||||||
"clients": "Clients",
|
"clients": "Clients",
|
||||||
"messages": "Msg"
|
"messages": "Messages"
|
||||||
},
|
},
|
||||||
"prowlarr": {
|
"prowlarr": {
|
||||||
"enableIndexers": "Indexeur",
|
"enableIndexers": "Indexeur",
|
||||||
"numberOfGrabs": "Capture",
|
"numberOfGrabs": "Captures",
|
||||||
"numberOfQueries": "Requêtes",
|
"numberOfQueries": "Requêtes",
|
||||||
"numberOfFailGrabs": "Capt. échouée",
|
"numberOfFailGrabs": "Captures échouées",
|
||||||
"numberOfFailQueries": "Dem. échouée"
|
"numberOfFailQueries": "Demandes échouées"
|
||||||
},
|
},
|
||||||
"jackett": {
|
"jackett": {
|
||||||
"configured": "Configuré",
|
"configured": "Configuré",
|
||||||
"errored": "En erreur"
|
"errored": "Erroné"
|
||||||
},
|
},
|
||||||
"strelaysrv": {
|
"strelaysrv": {
|
||||||
"numActiveSessions": "Sessions",
|
"numActiveSessions": "Sessions",
|
||||||
"numConnections": "Cnx",
|
"numConnections": "Connexions",
|
||||||
"dataRelayed": "Relayé",
|
"dataRelayed": "Relayé",
|
||||||
"transferRate": "Débit"
|
"transferRate": "Débit"
|
||||||
},
|
},
|
||||||
"mastodon": {
|
"mastodon": {
|
||||||
"user_count": "Utilisateurs",
|
"user_count": "Utilisateurs",
|
||||||
"status_count": "Messages",
|
"status_count": "Articles",
|
||||||
"domain_count": "Domaines"
|
"domain_count": "Domaines"
|
||||||
},
|
},
|
||||||
"medusa": {
|
"medusa": {
|
||||||
"wanted": "Demande",
|
"wanted": "Demandé",
|
||||||
"queued": "Attente",
|
"queued": "En file d'attente",
|
||||||
"series": "Séries TV"
|
"series": "Séries TV"
|
||||||
},
|
},
|
||||||
"minecraft": {
|
"minecraft": {
|
||||||
@ -418,13 +420,13 @@
|
|||||||
},
|
},
|
||||||
"authentik": {
|
"authentik": {
|
||||||
"users": "Utilisateurs",
|
"users": "Utilisateurs",
|
||||||
"loginsLast24H": "Cnx. (24h)",
|
"loginsLast24H": "Connexions (24 h)",
|
||||||
"failedLoginsLast24H": "Cnx. échouées (24h)"
|
"failedLoginsLast24H": "Connexions échouées (24 h)"
|
||||||
},
|
},
|
||||||
"proxmox": {
|
"proxmox": {
|
||||||
"mem": "MÉM",
|
"mem": "MÉM",
|
||||||
"cpu": "CPU",
|
"cpu": "CPU",
|
||||||
"lxc": "LxC",
|
"lxc": "LXC",
|
||||||
"vms": "VMs"
|
"vms": "VMs"
|
||||||
},
|
},
|
||||||
"glances": {
|
"glances": {
|
||||||
@ -432,7 +434,7 @@
|
|||||||
"load": "Charge",
|
"load": "Charge",
|
||||||
"wait": "Veuillez patienter",
|
"wait": "Veuillez patienter",
|
||||||
"temp": "Temp",
|
"temp": "Temp",
|
||||||
"_temp": "T°",
|
"_temp": "Température",
|
||||||
"warn": "Alerte",
|
"warn": "Alerte",
|
||||||
"uptime": "Up",
|
"uptime": "Up",
|
||||||
"total": "Total",
|
"total": "Total",
|
||||||
@ -443,12 +445,12 @@
|
|||||||
"crit": "Crit.",
|
"crit": "Crit.",
|
||||||
"read": "Lu",
|
"read": "Lu",
|
||||||
"write": "Écrit.",
|
"write": "Écrit.",
|
||||||
"gpu": "GPU",
|
"gpu": "Carte Graphique",
|
||||||
"mem": "Mém.",
|
"mem": "Mém.",
|
||||||
"swap": "Swap"
|
"swap": "Swap"
|
||||||
},
|
},
|
||||||
"quicklaunch": {
|
"quicklaunch": {
|
||||||
"bookmark": "Signet",
|
"bookmark": "Marque-Page",
|
||||||
"service": "Service",
|
"service": "Service",
|
||||||
"search": "Recherche",
|
"search": "Recherche",
|
||||||
"custom": "Personnalisé",
|
"custom": "Personnalisé",
|
||||||
@ -458,13 +460,13 @@
|
|||||||
},
|
},
|
||||||
"wmo": {
|
"wmo": {
|
||||||
"0-day": "Ensoleillé",
|
"0-day": "Ensoleillé",
|
||||||
"0-night": "Ciel clair",
|
"0-night": "Clair",
|
||||||
"1-day": "Principalement ensoleillé",
|
"1-day": "Principalement ensoleillé",
|
||||||
"1-night": "Principalement clair",
|
"1-night": "Principalement clair",
|
||||||
"2-day": "Partiellement couvert",
|
"2-day": "Partiellement nuageux",
|
||||||
"2-night": "Partiellement couvert",
|
"2-night": "Partiellement nuageux",
|
||||||
"3-day": "Couvert",
|
"3-day": "Nuageux",
|
||||||
"3-night": "Couvert",
|
"3-night": "Nuageux",
|
||||||
"45-day": "Brumeux",
|
"45-day": "Brumeux",
|
||||||
"45-night": "Brumeux",
|
"45-night": "Brumeux",
|
||||||
"48-day": "Brumeux",
|
"48-day": "Brumeux",
|
||||||
@ -483,14 +485,14 @@
|
|||||||
"61-night": "Pluie légère",
|
"61-night": "Pluie légère",
|
||||||
"63-day": "Pluie",
|
"63-day": "Pluie",
|
||||||
"63-night": "Pluie",
|
"63-night": "Pluie",
|
||||||
"65-day": "Pluie forte",
|
"65-day": "Forte pluie",
|
||||||
"65-night": "Pluie forte",
|
"65-night": "Forte pluie",
|
||||||
"66-day": "Pluie verglaçante",
|
"66-day": "Pluie verglaçante",
|
||||||
"66-night": "Pluie verglaçante",
|
"66-night": "Pluie verglaçante",
|
||||||
"67-day": "Pluie verglaçante",
|
"67-day": "Pluie verglaçante",
|
||||||
"67-night": "Pluie verglaçante",
|
"67-night": "Pluie verglaçante",
|
||||||
"71-day": "Neige légère",
|
"71-day": "Légères chutes de neige",
|
||||||
"71-night": "Neige légère",
|
"71-night": "Légères chutes de neige",
|
||||||
"73-day": "Neige",
|
"73-day": "Neige",
|
||||||
"73-night": "Neige",
|
"73-night": "Neige",
|
||||||
"75-day": "Neige abondante",
|
"75-day": "Neige abondante",
|
||||||
@ -521,15 +523,15 @@
|
|||||||
"up_to_date": "À jour",
|
"up_to_date": "À jour",
|
||||||
"child_bridges": "Child Bridges",
|
"child_bridges": "Child Bridges",
|
||||||
"child_bridges_status": "{{ok}}/{{total}}",
|
"child_bridges_status": "{{ok}}/{{total}}",
|
||||||
"up": "Up",
|
"up": "Haut",
|
||||||
"pending": "En attente",
|
"pending": "En attente",
|
||||||
"down": "Down"
|
"down": "Bas"
|
||||||
},
|
},
|
||||||
"healthchecks": {
|
"healthchecks": {
|
||||||
"new": "Nouveau",
|
"new": "Nouveau",
|
||||||
"up": "Up",
|
"up": "Haut",
|
||||||
"grace": "En Période de Grâce",
|
"grace": "En Période de Grâce",
|
||||||
"down": "Down",
|
"down": "Bas",
|
||||||
"paused": "En Pause",
|
"paused": "En Pause",
|
||||||
"status": "Statut",
|
"status": "Statut",
|
||||||
"last_ping": "Dernier Ping",
|
"last_ping": "Dernier Ping",
|
||||||
@ -541,7 +543,7 @@
|
|||||||
"containers_failed": "Échoué"
|
"containers_failed": "Échoué"
|
||||||
},
|
},
|
||||||
"autobrr": {
|
"autobrr": {
|
||||||
"approvedPushes": "Validé",
|
"approvedPushes": "Approuvé",
|
||||||
"rejectedPushes": "Rejeté",
|
"rejectedPushes": "Rejeté",
|
||||||
"filters": "Filtres",
|
"filters": "Filtres",
|
||||||
"indexers": "Indexeur"
|
"indexers": "Indexeur"
|
||||||
@ -550,7 +552,7 @@
|
|||||||
"downloads": "En attente",
|
"downloads": "En attente",
|
||||||
"videos": "Vidéos",
|
"videos": "Vidéos",
|
||||||
"channels": "Chaînes",
|
"channels": "Chaînes",
|
||||||
"playlists": "Playlists"
|
"playlists": "Listes de lecture"
|
||||||
},
|
},
|
||||||
"truenas": {
|
"truenas": {
|
||||||
"load": "Charge Système",
|
"load": "Charge Système",
|
||||||
@ -590,9 +592,9 @@
|
|||||||
"total": "Total"
|
"total": "Total"
|
||||||
},
|
},
|
||||||
"peanut": {
|
"peanut": {
|
||||||
"battery_charge": "Charge Batterie",
|
"battery_charge": "Charge de la batterie",
|
||||||
"ups_load": "Charge de l'UPS",
|
"ups_load": "Charge de l’ASI",
|
||||||
"ups_status": "État de l'UPS",
|
"ups_status": "État de l’ASI",
|
||||||
"online": "En ligne",
|
"online": "En ligne",
|
||||||
"on_battery": "Sur Batterie",
|
"on_battery": "Sur Batterie",
|
||||||
"low_battery": "Batterie Faible"
|
"low_battery": "Batterie Faible"
|
||||||
@ -602,8 +604,8 @@
|
|||||||
"no_devices": "Aucune donnée d'appareil reçue"
|
"no_devices": "Aucune donnée d'appareil reçue"
|
||||||
},
|
},
|
||||||
"mikrotik": {
|
"mikrotik": {
|
||||||
"cpuLoad": "Charge CPU",
|
"cpuLoad": "Charge du processeur",
|
||||||
"memoryUsed": "Mém. Utilisée",
|
"memoryUsed": "Mémoire utilisée",
|
||||||
"uptime": "Démarré depuis",
|
"uptime": "Démarré depuis",
|
||||||
"numberOfLeases": "Baux"
|
"numberOfLeases": "Baux"
|
||||||
},
|
},
|
||||||
@ -615,25 +617,25 @@
|
|||||||
"opendtu": {
|
"opendtu": {
|
||||||
"yieldDay": "Aujourd'hui",
|
"yieldDay": "Aujourd'hui",
|
||||||
"absolutePower": "Puissance",
|
"absolutePower": "Puissance",
|
||||||
"relativePower": "Puissance %",
|
"relativePower": "% de puissance",
|
||||||
"limit": "Limite"
|
"limit": "Limite"
|
||||||
},
|
},
|
||||||
"opnsense": {
|
"opnsense": {
|
||||||
"cpu": "Charge CPU",
|
"cpu": "Charge du processeur",
|
||||||
"memory": "Mém. utilisée",
|
"memory": "Mémoire utilisée",
|
||||||
"wanUpload": "WAN Envoi",
|
"wanUpload": "WAN Envoi",
|
||||||
"wanDownload": "WAN Récep."
|
"wanDownload": "WAN Récep."
|
||||||
},
|
},
|
||||||
"moonraker": {
|
"moonraker": {
|
||||||
"printer_state": "État Imprimante",
|
"printer_state": "État de l'imprimante",
|
||||||
"print_status": "Statut Imprimante",
|
"print_status": "Statut de l'imprimante",
|
||||||
"print_progress": "Progression",
|
"print_progress": "Progression",
|
||||||
"layers": "Couches"
|
"layers": "Couches"
|
||||||
},
|
},
|
||||||
"octoprint": {
|
"octoprint": {
|
||||||
"printer_state": "Statut",
|
"printer_state": "Statut",
|
||||||
"temp_tool": "Tool T°",
|
"temp_tool": "Temp. de l'outil",
|
||||||
"temp_bed": "Bed T°",
|
"temp_bed": "Temp. du lit",
|
||||||
"job_completion": "Achèvement"
|
"job_completion": "Achèvement"
|
||||||
},
|
},
|
||||||
"cloudflared": {
|
"cloudflared": {
|
||||||
@ -644,9 +646,9 @@
|
|||||||
"load": "Charge moy.",
|
"load": "Charge moy.",
|
||||||
"memory": "Util. Mém.",
|
"memory": "Util. Mém.",
|
||||||
"wanStatus": "Statut WAN",
|
"wanStatus": "Statut WAN",
|
||||||
"up": "Up",
|
"up": "Haut",
|
||||||
"down": "Down",
|
"down": "Bas",
|
||||||
"temp": "T°",
|
"temp": "Température",
|
||||||
"disk": "Util. Disque",
|
"disk": "Util. Disque",
|
||||||
"wanIP": "IP WAN"
|
"wanIP": "IP WAN"
|
||||||
},
|
},
|
||||||
@ -688,7 +690,7 @@
|
|||||||
"mylar": {
|
"mylar": {
|
||||||
"series": "Séries TV",
|
"series": "Séries TV",
|
||||||
"issues": "Anomalies",
|
"issues": "Anomalies",
|
||||||
"wanted": "Demande"
|
"wanted": "Demandé"
|
||||||
},
|
},
|
||||||
"photoprism": {
|
"photoprism": {
|
||||||
"albums": "Albums",
|
"albums": "Albums",
|
||||||
@ -698,10 +700,14 @@
|
|||||||
},
|
},
|
||||||
"fileflows": {
|
"fileflows": {
|
||||||
"queue": "En attente",
|
"queue": "En attente",
|
||||||
"processing": "Traitement",
|
"processing": "En cours de traitement",
|
||||||
"processed": "Traité",
|
"processed": "Traité",
|
||||||
"time": "Temps"
|
"time": "Temps"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Valeur Nette",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Tableau de bord",
|
"dashboards": "Tableau de bord",
|
||||||
"datasources": "Sources données",
|
"datasources": "Sources données",
|
||||||
@ -754,9 +760,9 @@
|
|||||||
"booksDuration": "Durée"
|
"booksDuration": "Durée"
|
||||||
},
|
},
|
||||||
"homeassistant": {
|
"homeassistant": {
|
||||||
"people_home": "People Home",
|
"people_home": "Personne à la maison",
|
||||||
"lights_on": "Lumières allumées",
|
"lights_on": "Lumières allumées",
|
||||||
"switches_on": "Commutateur On"
|
"switches_on": "Interrupteurs allumés"
|
||||||
},
|
},
|
||||||
"whatsupdocker": {
|
"whatsupdocker": {
|
||||||
"monitoring": "Conteneurs",
|
"monitoring": "Conteneurs",
|
||||||
@ -789,7 +795,7 @@
|
|||||||
"inProgress": "En cours",
|
"inProgress": "En cours",
|
||||||
"totalPrs": "PRs Total",
|
"totalPrs": "PRs Total",
|
||||||
"myPrs": "Mes PRs",
|
"myPrs": "Mes PRs",
|
||||||
"approved": "Validé"
|
"approved": "Approuvé"
|
||||||
},
|
},
|
||||||
"gamedig": {
|
"gamedig": {
|
||||||
"status": "Statut",
|
"status": "Statut",
|
||||||
@ -800,8 +806,8 @@
|
|||||||
"currentPlayers": "Joueurs actuels",
|
"currentPlayers": "Joueurs actuels",
|
||||||
"players": "Joueurs",
|
"players": "Joueurs",
|
||||||
"maxPlayers": "Joueurs max",
|
"maxPlayers": "Joueurs max",
|
||||||
"bots": "Bots",
|
"bots": "Robots",
|
||||||
"ping": "Ping"
|
"ping": "Latence"
|
||||||
},
|
},
|
||||||
"urbackup": {
|
"urbackup": {
|
||||||
"ok": "Ok",
|
"ok": "Ok",
|
||||||
@ -826,8 +832,8 @@
|
|||||||
"openwrt": {
|
"openwrt": {
|
||||||
"uptime": "Démarré depuis",
|
"uptime": "Démarré depuis",
|
||||||
"cpuLoad": "Charge moyenne CPU (5 min)",
|
"cpuLoad": "Charge moyenne CPU (5 min)",
|
||||||
"up": "Up",
|
"up": "Haut",
|
||||||
"down": "Down",
|
"down": "Bas",
|
||||||
"bytesTx": "Transmis",
|
"bytesTx": "Transmis",
|
||||||
"bytesRx": "Reçu"
|
"bytesRx": "Reçu"
|
||||||
},
|
},
|
||||||
@ -840,9 +846,9 @@
|
|||||||
"sitesDown": "Hors ligne",
|
"sitesDown": "Hors ligne",
|
||||||
"paused": "En Pause",
|
"paused": "En Pause",
|
||||||
"notyetchecked": "Non vérifié",
|
"notyetchecked": "Non vérifié",
|
||||||
"up": "Up",
|
"up": "Haut",
|
||||||
"seemsdown": "Semble hors ligne",
|
"seemsdown": "Semble hors ligne",
|
||||||
"down": "Down",
|
"down": "Bas",
|
||||||
"unknown": "Inconnu"
|
"unknown": "Inconnu"
|
||||||
},
|
},
|
||||||
"calendar": {
|
"calendar": {
|
||||||
@ -912,7 +918,7 @@
|
|||||||
},
|
},
|
||||||
"crowdsec": {
|
"crowdsec": {
|
||||||
"alerts": "Alertes",
|
"alerts": "Alertes",
|
||||||
"bans": "Exclusions"
|
"bans": "Bannissements"
|
||||||
},
|
},
|
||||||
"wgeasy": {
|
"wgeasy": {
|
||||||
"connected": "Connecté",
|
"connected": "Connecté",
|
||||||
@ -927,12 +933,12 @@
|
|||||||
"banned": "Banni"
|
"banned": "Banni"
|
||||||
},
|
},
|
||||||
"myspeed": {
|
"myspeed": {
|
||||||
"ping": "Ping",
|
"ping": "Latence",
|
||||||
"download": "Récep.",
|
"download": "Récep.",
|
||||||
"upload": "Envoi"
|
"upload": "Téléverser"
|
||||||
},
|
},
|
||||||
"stocks": {
|
"stocks": {
|
||||||
"stocks": "Actions",
|
"stocks": "Stocks",
|
||||||
"loading": "Chargement",
|
"loading": "Chargement",
|
||||||
"open": "Ouvert - Marché américain",
|
"open": "Ouvert - Marché américain",
|
||||||
"closed": "Fermé - marché américain",
|
"closed": "Fermé - marché américain",
|
||||||
@ -981,8 +987,8 @@
|
|||||||
"beszel": {
|
"beszel": {
|
||||||
"name": "Nom",
|
"name": "Nom",
|
||||||
"systems": "Systèmes",
|
"systems": "Systèmes",
|
||||||
"up": "Up",
|
"up": "Haut",
|
||||||
"down": "Down",
|
"down": "Bas",
|
||||||
"paused": "En Pause",
|
"paused": "En Pause",
|
||||||
"pending": "En attente",
|
"pending": "En attente",
|
||||||
"status": "Statut",
|
"status": "Statut",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Anomalies",
|
"issues": "Anomalies",
|
||||||
"merges": "Demandes de fusion de branches",
|
"merges": "Demandes de fusion de branches",
|
||||||
"projects": "Projets"
|
"projects": "Projets"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Statut",
|
||||||
|
"load": "Charge",
|
||||||
|
"bcharge": "Charge de la batterie",
|
||||||
|
"timeleft": "Temps restant"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Étiquettes"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Up",
|
"up": "Up",
|
||||||
"received": "Received",
|
"received": "Received",
|
||||||
"sent": "Sent",
|
"sent": "Sent",
|
||||||
"externalIPAddress": "Ext. IP"
|
"externalIPAddress": "Ext. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Connected APs",
|
"connectedAp": "Connected APs",
|
||||||
"activeUser": "Active devices",
|
"activeUser": "Active devices",
|
||||||
"alerts": "Alerts",
|
"alerts": "Alerts",
|
||||||
"connectedGateway": "Connected gateways",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Connected switches"
|
"connectedSwitches": "Connected switches"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Processed",
|
"processed": "Processed",
|
||||||
"time": "Time"
|
"time": "Time"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dashboards",
|
"dashboards": "Dashboards",
|
||||||
"datasources": "Data Sources",
|
"datasources": "Data Sources",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Issues",
|
"issues": "Issues",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "סטטוס",
|
||||||
|
"load": "עומס",
|
||||||
|
"bcharge": "Battery Charge",
|
||||||
|
"timeleft": "זמן שנותר"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tags"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Up",
|
"up": "Up",
|
||||||
"received": "Received",
|
"received": "Received",
|
||||||
"sent": "Sent",
|
"sent": "Sent",
|
||||||
"externalIPAddress": "Ext. IP"
|
"externalIPAddress": "Ext. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Connected APs",
|
"connectedAp": "Connected APs",
|
||||||
"activeUser": "Active devices",
|
"activeUser": "Active devices",
|
||||||
"alerts": "Alerts",
|
"alerts": "Alerts",
|
||||||
"connectedGateway": "Connected gateways",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Connected switches"
|
"connectedSwitches": "Connected switches"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Processed",
|
"processed": "Processed",
|
||||||
"time": "Time"
|
"time": "Time"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dashboards",
|
"dashboards": "Dashboards",
|
||||||
"datasources": "Data Sources",
|
"datasources": "Data Sources",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Issues",
|
"issues": "Issues",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Status",
|
||||||
|
"load": "Load",
|
||||||
|
"bcharge": "Battery Charge",
|
||||||
|
"timeleft": "Time Left"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tags"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Dostupno",
|
"up": "Dostupno",
|
||||||
"received": "Primljeno",
|
"received": "Primljeno",
|
||||||
"sent": "Poslano",
|
"sent": "Poslano",
|
||||||
"externalIPAddress": "Eksterna IP adresa"
|
"externalIPAddress": "Eksterna IP adresa",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Glavne grane",
|
"upstreams": "Glavne grane",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Povezani AP-ovi",
|
"connectedAp": "Povezani AP-ovi",
|
||||||
"activeUser": "Aktivni uređaji",
|
"activeUser": "Aktivni uređaji",
|
||||||
"alerts": "Upozorenja",
|
"alerts": "Upozorenja",
|
||||||
"connectedGateway": "Povezani pristupi",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Povezani prekidači"
|
"connectedSwitches": "Povezani prekidači"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Obrađeno",
|
"processed": "Obrađeno",
|
||||||
"time": "Vrijeme"
|
"time": "Vrijeme"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Pregledne ploče",
|
"dashboards": "Pregledne ploče",
|
||||||
"datasources": "Izvori podataka",
|
"datasources": "Izvori podataka",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Problemi",
|
"issues": "Problemi",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Stanje",
|
||||||
|
"load": "Opterećenje",
|
||||||
|
"bcharge": "Napunjenost baterije",
|
||||||
|
"timeleft": "Preostalo vrijeme"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Oznake"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Fel",
|
"up": "Fel",
|
||||||
"received": "Fogadott",
|
"received": "Fogadott",
|
||||||
"sent": "Küldött",
|
"sent": "Küldött",
|
||||||
"externalIPAddress": "Külső IP cím"
|
"externalIPAddress": "Külső IP cím",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreamek",
|
"upstreams": "Upstreamek",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Csatlakoztatott AP-k",
|
"connectedAp": "Csatlakoztatott AP-k",
|
||||||
"activeUser": "Aktív eszközök",
|
"activeUser": "Aktív eszközök",
|
||||||
"alerts": "Riasztások",
|
"alerts": "Riasztások",
|
||||||
"connectedGateway": "Csatlakoztatott gateway-ek",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Csatlakoztatott switch-ek"
|
"connectedSwitches": "Csatlakoztatott switch-ek"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Feldolgozott",
|
"processed": "Feldolgozott",
|
||||||
"time": "Idő"
|
"time": "Idő"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Nettó érték",
|
||||||
|
"budget": "Költségkeret"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Műszerfalak",
|
"dashboards": "Műszerfalak",
|
||||||
"datasources": "Adatforrások",
|
"datasources": "Adatforrások",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Problémák",
|
"issues": "Problémák",
|
||||||
"merges": "Merge kérések",
|
"merges": "Merge kérések",
|
||||||
"projects": "Projektek"
|
"projects": "Projektek"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Státusz",
|
||||||
|
"load": "Terhelés",
|
||||||
|
"bcharge": "Akku töltöttsége",
|
||||||
|
"timeleft": "Hátralévő idő"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Címkék"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
"date": "{{value, date}}",
|
"date": "{{value, date}}",
|
||||||
"relativeDate": "{{value, relativeDate}}",
|
"relativeDate": "{{value, relativeDate}}",
|
||||||
"duration": "{{value, duration}}",
|
"duration": "{{value, duration}}",
|
||||||
"months": "bulan",
|
"months": "bln",
|
||||||
"days": "h",
|
"days": "h",
|
||||||
"hours": "j",
|
"hours": "j",
|
||||||
"minutes": "m",
|
"minutes": "m",
|
||||||
@ -140,7 +140,7 @@
|
|||||||
"connectionStatusPendingDisconnect": "Menunggu Terputus",
|
"connectionStatusPendingDisconnect": "Menunggu Terputus",
|
||||||
"connectionStatusDisconnecting": "Sedan Memutus",
|
"connectionStatusDisconnecting": "Sedan Memutus",
|
||||||
"connectionStatusDisconnected": "Terputus",
|
"connectionStatusDisconnected": "Terputus",
|
||||||
"connectionStatusConnected": "Connected",
|
"connectionStatusConnected": "Tersambung",
|
||||||
"uptime": "Waktu Aktif",
|
"uptime": "Waktu Aktif",
|
||||||
"maxDown": "Maks Unduh",
|
"maxDown": "Maks Unduh",
|
||||||
"maxUp": "Maks Unggah",
|
"maxUp": "Maks Unggah",
|
||||||
@ -148,7 +148,9 @@
|
|||||||
"up": "Hidup",
|
"up": "Hidup",
|
||||||
"received": "Diterima",
|
"received": "Diterima",
|
||||||
"sent": "Terkirim",
|
"sent": "Terkirim",
|
||||||
"externalIPAddress": "IP Eksternal"
|
"externalIPAddress": "IP Eksternal",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Strim Luar",
|
"upstreams": "Strim Luar",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "AP Tersambung",
|
"connectedAp": "AP Tersambung",
|
||||||
"activeUser": "Perangakat yang Aktif",
|
"activeUser": "Perangakat yang Aktif",
|
||||||
"alerts": "Peringatan",
|
"alerts": "Peringatan",
|
||||||
"connectedGateway": "Gateway Tersambung",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Switch Tersambung"
|
"connectedSwitches": "Switch Tersambung"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -283,9 +285,9 @@
|
|||||||
},
|
},
|
||||||
"netalertx": {
|
"netalertx": {
|
||||||
"total": "Total",
|
"total": "Total",
|
||||||
"connected": "Connected",
|
"connected": "Tersambung",
|
||||||
"new_devices": "New Devices",
|
"new_devices": "Perangkat Baru",
|
||||||
"down_alerts": "Down Alerts"
|
"down_alerts": "Peringatan Pemadaman"
|
||||||
},
|
},
|
||||||
"pihole": {
|
"pihole": {
|
||||||
"queries": "Kueri",
|
"queries": "Kueri",
|
||||||
@ -311,17 +313,17 @@
|
|||||||
},
|
},
|
||||||
"suwayomi": {
|
"suwayomi": {
|
||||||
"download": "Terunduh",
|
"download": "Terunduh",
|
||||||
"nondownload": "Non-Downloaded",
|
"nondownload": "Belum Diunduh",
|
||||||
"read": "Baca",
|
"read": "Baca",
|
||||||
"unread": "Belum Dibaca",
|
"unread": "Belum Dibaca",
|
||||||
"downloadedread": "Downloaded & Read",
|
"downloadedread": "Diunduh & Dibaca",
|
||||||
"downloadedunread": "Downloaded & Unread",
|
"downloadedunread": "Diunduh & Belum Dibaca",
|
||||||
"nondownloadedread": "Non-Downloaded & Read",
|
"nondownloadedread": "Belum Diunduh & Dibaca",
|
||||||
"nondownloadedunread": "Non-Downloaded & Unread"
|
"nondownloadedunread": "Belum Diunduh & Belum Dibaca"
|
||||||
},
|
},
|
||||||
"tailscale": {
|
"tailscale": {
|
||||||
"address": "Alamat",
|
"address": "Alamat",
|
||||||
"expires": "Kadaluarsa",
|
"expires": "Kedaluwarsa",
|
||||||
"never": "Tidak Pernah",
|
"never": "Tidak Pernah",
|
||||||
"last_seen": "Terakhir terlihat",
|
"last_seen": "Terakhir terlihat",
|
||||||
"now": "Sekarang",
|
"now": "Sekarang",
|
||||||
@ -335,10 +337,10 @@
|
|||||||
},
|
},
|
||||||
"technitium": {
|
"technitium": {
|
||||||
"totalQueries": "Kueri",
|
"totalQueries": "Kueri",
|
||||||
"totalNoError": "Success",
|
"totalNoError": "Berhasil",
|
||||||
"totalServerFailure": "Failures",
|
"totalServerFailure": "Gagal",
|
||||||
"totalNxDomain": "NX Domains",
|
"totalNxDomain": "Domain NX",
|
||||||
"totalRefused": "Refused",
|
"totalRefused": "Ditolak",
|
||||||
"totalAuthoritative": "Authoritative",
|
"totalAuthoritative": "Authoritative",
|
||||||
"totalRecursive": "Recursive",
|
"totalRecursive": "Recursive",
|
||||||
"totalCached": "Cached",
|
"totalCached": "Cached",
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Terproses",
|
"processed": "Terproses",
|
||||||
"time": "Waktu"
|
"time": "Waktu"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dasbor",
|
"dashboards": "Dasbor",
|
||||||
"datasources": "Sumber Data",
|
"datasources": "Sumber Data",
|
||||||
@ -854,16 +860,16 @@
|
|||||||
},
|
},
|
||||||
"romm": {
|
"romm": {
|
||||||
"platforms": "Platform",
|
"platforms": "Platform",
|
||||||
"totalRoms": "Games",
|
"totalRoms": "Permainan",
|
||||||
"saves": "Saves",
|
"saves": "Saves",
|
||||||
"states": "States",
|
"states": "Kondisi",
|
||||||
"screenshots": "Screenshots",
|
"screenshots": "Tangkapan Layar",
|
||||||
"totalfilesize": "Total Size"
|
"totalfilesize": "Total Ukuran"
|
||||||
},
|
},
|
||||||
"mailcow": {
|
"mailcow": {
|
||||||
"domains": "Jumlah Domain",
|
"domains": "Jumlah Domain",
|
||||||
"mailboxes": "Mailboxes",
|
"mailboxes": "Kotak surat",
|
||||||
"mails": "Mails",
|
"mails": "Surat",
|
||||||
"storage": "Penyimpanan"
|
"storage": "Penyimpanan"
|
||||||
},
|
},
|
||||||
"netdata": {
|
"netdata": {
|
||||||
@ -882,48 +888,48 @@
|
|||||||
"pulls": "Pull Requests"
|
"pulls": "Pull Requests"
|
||||||
},
|
},
|
||||||
"stash": {
|
"stash": {
|
||||||
"scenes": "Scenes",
|
"scenes": "Adegan",
|
||||||
"scenesPlayed": "Scenes Played",
|
"scenesPlayed": "Adegan Dimainkan",
|
||||||
"playCount": "Total Plays",
|
"playCount": "Total Dimainkan",
|
||||||
"playDuration": "Time Watched",
|
"playDuration": "Waktu Ditonton",
|
||||||
"sceneSize": "Scenes Size",
|
"sceneSize": "Ukuran Adegan",
|
||||||
"sceneDuration": "Scenes Duration",
|
"sceneDuration": "Durasi Adegan",
|
||||||
"images": "Images",
|
"images": "Gambar",
|
||||||
"imageSize": "Images Size",
|
"imageSize": "Ukuran Gambar",
|
||||||
"galleries": "Galleries",
|
"galleries": "Galeri",
|
||||||
"performers": "Performers",
|
"performers": "Pemain",
|
||||||
"studios": "Studios",
|
"studios": "Studio",
|
||||||
"movies": "Film",
|
"movies": "Film",
|
||||||
"tags": "Tag",
|
"tags": "Tag",
|
||||||
"oCount": "O Count"
|
"oCount": "Jumlah O"
|
||||||
},
|
},
|
||||||
"tandoor": {
|
"tandoor": {
|
||||||
"users": "Pengguna",
|
"users": "Pengguna",
|
||||||
"recipes": "Resep",
|
"recipes": "Resep",
|
||||||
"keywords": "Keywords"
|
"keywords": "Kata Kunci"
|
||||||
},
|
},
|
||||||
"homebox": {
|
"homebox": {
|
||||||
"items": "Items",
|
"items": "Items",
|
||||||
"totalWithWarranty": "With Warranty",
|
"totalWithWarranty": "Dengan Garansi",
|
||||||
"locations": "Locations",
|
"locations": "Lokasi",
|
||||||
"labels": "Labels",
|
"labels": "Label",
|
||||||
"users": "Pengguna",
|
"users": "Pengguna",
|
||||||
"totalValue": "Total Value"
|
"totalValue": "Total Nilai"
|
||||||
},
|
},
|
||||||
"crowdsec": {
|
"crowdsec": {
|
||||||
"alerts": "Peringatan",
|
"alerts": "Peringatan",
|
||||||
"bans": "Bans"
|
"bans": "Bans"
|
||||||
},
|
},
|
||||||
"wgeasy": {
|
"wgeasy": {
|
||||||
"connected": "Connected",
|
"connected": "Tersambung",
|
||||||
"enabled": "Aktif",
|
"enabled": "Aktif",
|
||||||
"disabled": "Nonaktif",
|
"disabled": "Nonaktif",
|
||||||
"total": "Total"
|
"total": "Total"
|
||||||
},
|
},
|
||||||
"swagdashboard": {
|
"swagdashboard": {
|
||||||
"proxied": "Proxied",
|
"proxied": "Diproksi",
|
||||||
"auth": "With Auth",
|
"auth": "With Auth",
|
||||||
"outdated": "Outdated",
|
"outdated": "Usang",
|
||||||
"banned": "Banned"
|
"banned": "Banned"
|
||||||
},
|
},
|
||||||
"myspeed": {
|
"myspeed": {
|
||||||
@ -932,43 +938,43 @@
|
|||||||
"upload": "Unggah"
|
"upload": "Unggah"
|
||||||
},
|
},
|
||||||
"stocks": {
|
"stocks": {
|
||||||
"stocks": "Stocks",
|
"stocks": "Saham",
|
||||||
"loading": "Loading",
|
"loading": "Memuat",
|
||||||
"open": "Open - US Market",
|
"open": "Buka - Pasar AS",
|
||||||
"closed": "Closed - US Market",
|
"closed": "Tutup - Pasar AS",
|
||||||
"invalidConfiguration": "Invalid Configuration"
|
"invalidConfiguration": "Konfigurasi Invalid"
|
||||||
},
|
},
|
||||||
"frigate": {
|
"frigate": {
|
||||||
"cameras": "Cameras",
|
"cameras": "Kamera",
|
||||||
"uptime": "Waktu Aktif",
|
"uptime": "Waktu Aktif",
|
||||||
"version": "Versi"
|
"version": "Versi"
|
||||||
},
|
},
|
||||||
"linkwarden": {
|
"linkwarden": {
|
||||||
"links": "Links",
|
"links": "Tautan",
|
||||||
"collections": "Collections",
|
"collections": "Koleksi",
|
||||||
"tags": "Tag"
|
"tags": "Tag"
|
||||||
},
|
},
|
||||||
"zabbix": {
|
"zabbix": {
|
||||||
"unclassified": "Not classified",
|
"unclassified": "Not classified",
|
||||||
"information": "Informasi",
|
"information": "Informasi",
|
||||||
"warning": "Warning",
|
"warning": "Peringatan",
|
||||||
"average": "Average",
|
"average": "Rata-rata",
|
||||||
"high": "High",
|
"high": "Tinggi",
|
||||||
"disaster": "Disaster"
|
"disaster": "Bencana"
|
||||||
},
|
},
|
||||||
"lubelogger": {
|
"lubelogger": {
|
||||||
"vehicle": "Vehicle",
|
"vehicle": "Kendaraan",
|
||||||
"vehicles": "Vehicles",
|
"vehicles": "Kendaraan",
|
||||||
"serviceRecords": "Service Records",
|
"serviceRecords": "Service Records",
|
||||||
"reminders": "Reminders",
|
"reminders": "Pengingat",
|
||||||
"nextReminder": "Next Reminder",
|
"nextReminder": "Pengingat Berikutnya",
|
||||||
"none": "None"
|
"none": "Tidak ada"
|
||||||
},
|
},
|
||||||
"vikunja": {
|
"vikunja": {
|
||||||
"projects": "Active Projects",
|
"projects": "Proyek Aktif",
|
||||||
"tasks7d": "Tasks Due This Week",
|
"tasks7d": "Tugas Jatuh Tempo Minggu Ini",
|
||||||
"tasksOverdue": "Overdue Tasks",
|
"tasksOverdue": "Tugas Terlewat",
|
||||||
"tasksInProgress": "Tasks In Progress"
|
"tasksInProgress": "Tugas Berlangsung"
|
||||||
},
|
},
|
||||||
"headscale": {
|
"headscale": {
|
||||||
"name": "Nama",
|
"name": "Nama",
|
||||||
@ -980,7 +986,7 @@
|
|||||||
},
|
},
|
||||||
"beszel": {
|
"beszel": {
|
||||||
"name": "Nama",
|
"name": "Nama",
|
||||||
"systems": "Systems",
|
"systems": "Sistem",
|
||||||
"up": "Hidup",
|
"up": "Hidup",
|
||||||
"down": "Mati",
|
"down": "Mati",
|
||||||
"paused": "Pause",
|
"paused": "Pause",
|
||||||
@ -989,26 +995,40 @@
|
|||||||
"updated": "Terbarui",
|
"updated": "Terbarui",
|
||||||
"cpu": "CPU",
|
"cpu": "CPU",
|
||||||
"memory": "MEM",
|
"memory": "MEM",
|
||||||
"disk": "Disk",
|
"disk": "Diska",
|
||||||
"network": "NET"
|
"network": "NET"
|
||||||
},
|
},
|
||||||
"argocd": {
|
"argocd": {
|
||||||
"apps": "Apps",
|
"apps": "Apl",
|
||||||
"synced": "Synced",
|
"synced": "Tersinkron",
|
||||||
"outOfSync": "Out Of Sync",
|
"outOfSync": "Tidak Sinkron",
|
||||||
"healthy": "Lancar",
|
"healthy": "Lancar",
|
||||||
"degraded": "Degraded",
|
"degraded": "Terdegradasi",
|
||||||
"progressing": "Progressing",
|
"progressing": "Progressing",
|
||||||
"missing": "Tidak Ditemukan",
|
"missing": "Tidak Ditemukan",
|
||||||
"suspended": "Suspended"
|
"suspended": "Ditangguhkan"
|
||||||
},
|
},
|
||||||
"spoolman": {
|
"spoolman": {
|
||||||
"loading": "Loading"
|
"loading": "Memuat"
|
||||||
},
|
},
|
||||||
"gitlab": {
|
"gitlab": {
|
||||||
"groups": "Groups",
|
"groups": "Grup",
|
||||||
"issues": "Isu",
|
"issues": "Isu",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Proyek"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Status",
|
||||||
|
"load": "Beban",
|
||||||
|
"bcharge": "Sisa Baterai",
|
||||||
|
"timeleft": "Sisa Waktu"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tag"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Up",
|
"up": "Up",
|
||||||
"received": "Ricevuti",
|
"received": "Ricevuti",
|
||||||
"sent": "Inviati",
|
"sent": "Inviati",
|
||||||
"externalIPAddress": "IP Esterno"
|
"externalIPAddress": "IP Esterno",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstream",
|
"upstreams": "Upstream",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "AP Connessi",
|
"connectedAp": "AP Connessi",
|
||||||
"activeUser": "Dispositivi attivi",
|
"activeUser": "Dispositivi attivi",
|
||||||
"alerts": "Allarmi",
|
"alerts": "Allarmi",
|
||||||
"connectedGateway": "Gateway connessi",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Switch connessi"
|
"connectedSwitches": "Switch connessi"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Elaborati",
|
"processed": "Elaborati",
|
||||||
"time": "Tempo"
|
"time": "Tempo"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dashboard",
|
"dashboards": "Dashboard",
|
||||||
"datasources": "Origine dei Dati",
|
"datasources": "Origine dei Dati",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Problemi",
|
"issues": "Problemi",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Stato",
|
||||||
|
"load": "Carico",
|
||||||
|
"bcharge": "Carica Batteria",
|
||||||
|
"timeleft": "Tempo Rimanente"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tag"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "稼働",
|
"up": "稼働",
|
||||||
"received": "受信済み",
|
"received": "受信済み",
|
||||||
"sent": "送信済み",
|
"sent": "送信済み",
|
||||||
"externalIPAddress": "退出ID"
|
"externalIPAddress": "退出ID",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "アップストリーム",
|
"upstreams": "アップストリーム",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "接続されたAP",
|
"connectedAp": "接続されたAP",
|
||||||
"activeUser": "アクティブデバイス",
|
"activeUser": "アクティブデバイス",
|
||||||
"alerts": "アラート",
|
"alerts": "アラート",
|
||||||
"connectedGateway": "接続されたゲートウェイ",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "接続スイッチ"
|
"connectedSwitches": "接続スイッチ"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "処理済み",
|
"processed": "処理済み",
|
||||||
"time": "時間"
|
"time": "時間"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "ダッシュ ボード",
|
"dashboards": "ダッシュ ボード",
|
||||||
"datasources": "データソース",
|
"datasources": "データソース",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "課題",
|
"issues": "課題",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "状態",
|
||||||
|
"load": "ロード",
|
||||||
|
"bcharge": "バッテリー充電",
|
||||||
|
"timeleft": "残り時間"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "タグ"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Up",
|
"up": "Up",
|
||||||
"received": "수신됨",
|
"received": "수신됨",
|
||||||
"sent": "전송됨",
|
"sent": "전송됨",
|
||||||
"externalIPAddress": "Ext. IP"
|
"externalIPAddress": "Ext. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "연결된 AP",
|
"connectedAp": "연결된 AP",
|
||||||
"activeUser": "활성 장치",
|
"activeUser": "활성 장치",
|
||||||
"alerts": "경고",
|
"alerts": "경고",
|
||||||
"connectedGateway": "연결된 게이트웨이",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "연결된 스위치"
|
"connectedSwitches": "연결된 스위치"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "처리됨",
|
"processed": "처리됨",
|
||||||
"time": "Time"
|
"time": "Time"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "대시보드",
|
"dashboards": "대시보드",
|
||||||
"datasources": "Data Sources",
|
"datasources": "Data Sources",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Issues",
|
"issues": "Issues",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "상태",
|
||||||
|
"load": "부하",
|
||||||
|
"bcharge": "배터리 충전 중",
|
||||||
|
"timeleft": "남은 시간"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "태그"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Up",
|
"up": "Up",
|
||||||
"received": "Received",
|
"received": "Received",
|
||||||
"sent": "Sent",
|
"sent": "Sent",
|
||||||
"externalIPAddress": "Ext. IP"
|
"externalIPAddress": "Ext. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Savienotie piekļuves punkti",
|
"connectedAp": "Savienotie piekļuves punkti",
|
||||||
"activeUser": "Aktīvās ierīces",
|
"activeUser": "Aktīvās ierīces",
|
||||||
"alerts": "Paziņojumi",
|
"alerts": "Paziņojumi",
|
||||||
"connectedGateway": "Savienotās vārtejas",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Savienotie komutatori"
|
"connectedSwitches": "Savienotie komutatori"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Processed",
|
"processed": "Processed",
|
||||||
"time": "Time"
|
"time": "Time"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dashboards",
|
"dashboards": "Dashboards",
|
||||||
"datasources": "Data Sources",
|
"datasources": "Data Sources",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Issues",
|
"issues": "Issues",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Statuss",
|
||||||
|
"load": "Ielādē",
|
||||||
|
"bcharge": "Battery Charge",
|
||||||
|
"timeleft": "Atlikušais laiks"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tags"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Hidup",
|
"up": "Hidup",
|
||||||
"received": "Diterima",
|
"received": "Diterima",
|
||||||
"sent": "Telah dihantar",
|
"sent": "Telah dihantar",
|
||||||
"externalIPAddress": "IP Luaran"
|
"externalIPAddress": "IP Luaran",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Connected APs",
|
"connectedAp": "Connected APs",
|
||||||
"activeUser": "Peranti aktif",
|
"activeUser": "Peranti aktif",
|
||||||
"alerts": "Perhatian",
|
"alerts": "Perhatian",
|
||||||
"connectedGateway": "Connected gateways",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Connected switches"
|
"connectedSwitches": "Connected switches"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Sudah diprosess",
|
"processed": "Sudah diprosess",
|
||||||
"time": "Time"
|
"time": "Time"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dashboards",
|
"dashboards": "Dashboards",
|
||||||
"datasources": "Data Sources",
|
"datasources": "Data Sources",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Issues",
|
"issues": "Issues",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Status",
|
||||||
|
"load": "Beban",
|
||||||
|
"bcharge": "Bateri dicas",
|
||||||
|
"timeleft": "Masa Tinggal"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tanda nama"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Online",
|
"up": "Online",
|
||||||
"received": "Ontvangen",
|
"received": "Ontvangen",
|
||||||
"sent": "Verzonden",
|
"sent": "Verzonden",
|
||||||
"externalIPAddress": "Ext. IP"
|
"externalIPAddress": "Ext. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Verbonden APs",
|
"connectedAp": "Verbonden APs",
|
||||||
"activeUser": "Actieve apparaten",
|
"activeUser": "Actieve apparaten",
|
||||||
"alerts": "Meldingen",
|
"alerts": "Meldingen",
|
||||||
"connectedGateway": "Verbonden gateways",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Verbonden switches"
|
"connectedSwitches": "Verbonden switches"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Verwerkt",
|
"processed": "Verwerkt",
|
||||||
"time": "Tijd"
|
"time": "Tijd"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dashboards",
|
"dashboards": "Dashboards",
|
||||||
"datasources": "Data Bronnen",
|
"datasources": "Data Bronnen",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Problemen",
|
"issues": "Problemen",
|
||||||
"merges": "Merge Verzoeken",
|
"merges": "Merge Verzoeken",
|
||||||
"projects": "Projecten"
|
"projects": "Projecten"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Status",
|
||||||
|
"load": "Belasting",
|
||||||
|
"bcharge": "Batterij opladen",
|
||||||
|
"timeleft": "Resterende Tijd"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Label"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Oppe",
|
"up": "Oppe",
|
||||||
"received": "Mottatt",
|
"received": "Mottatt",
|
||||||
"sent": "Sendt",
|
"sent": "Sendt",
|
||||||
"externalIPAddress": "Ekstern IP"
|
"externalIPAddress": "Ekstern IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Oppstrøms",
|
"upstreams": "Oppstrøms",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Tilkoblede AP'er",
|
"connectedAp": "Tilkoblede AP'er",
|
||||||
"activeUser": "Aktive enheter",
|
"activeUser": "Aktive enheter",
|
||||||
"alerts": "Varsler",
|
"alerts": "Varsler",
|
||||||
"connectedGateway": "Tilkoblede gateways",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Tilkoblede switcher"
|
"connectedSwitches": "Tilkoblede switcher"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Behandlet",
|
"processed": "Behandlet",
|
||||||
"time": "Time"
|
"time": "Time"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dashboards",
|
"dashboards": "Dashboards",
|
||||||
"datasources": "Data Sources",
|
"datasources": "Data Sources",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Issues",
|
"issues": "Issues",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Status",
|
||||||
|
"load": "Last",
|
||||||
|
"bcharge": "Batteriladning",
|
||||||
|
"timeleft": "Gjenstående tid"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Stikkord"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Dostępny",
|
"up": "Dostępny",
|
||||||
"received": "Odebrane",
|
"received": "Odebrane",
|
||||||
"sent": "Wysłane",
|
"sent": "Wysłane",
|
||||||
"externalIPAddress": "Pub. IP"
|
"externalIPAddress": "Pub. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Połączone punkty dostępowe",
|
"connectedAp": "Połączone punkty dostępowe",
|
||||||
"activeUser": "Aktywne urządzenia",
|
"activeUser": "Aktywne urządzenia",
|
||||||
"alerts": "Alarmy",
|
"alerts": "Alarmy",
|
||||||
"connectedGateway": "Połączone bramy",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Połączone przełączniki"
|
"connectedSwitches": "Połączone przełączniki"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Przetworzone",
|
"processed": "Przetworzone",
|
||||||
"time": "Czas"
|
"time": "Czas"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Panel główny",
|
"dashboards": "Panel główny",
|
||||||
"datasources": "Źródła danych",
|
"datasources": "Źródła danych",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Zgłoszenia",
|
"issues": "Zgłoszenia",
|
||||||
"merges": "Żądania scaleń",
|
"merges": "Żądania scaleń",
|
||||||
"projects": "Projekty"
|
"projects": "Projekty"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Stan",
|
||||||
|
"load": "Obciążenie",
|
||||||
|
"bcharge": "Stan baterii",
|
||||||
|
"timeleft": "Pozostało"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tagi"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Up",
|
"up": "Up",
|
||||||
"received": "Recebido",
|
"received": "Recebido",
|
||||||
"sent": "Enviado",
|
"sent": "Enviado",
|
||||||
"externalIPAddress": "Endereço IP Externo"
|
"externalIPAddress": "Endereço IP Externo",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "APs Ligados",
|
"connectedAp": "APs Ligados",
|
||||||
"activeUser": "Dispositivos activos",
|
"activeUser": "Dispositivos activos",
|
||||||
"alerts": "Alertas",
|
"alerts": "Alertas",
|
||||||
"connectedGateway": "Gateways ligados",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Switches ligados"
|
"connectedSwitches": "Switches ligados"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Processado",
|
"processed": "Processado",
|
||||||
"time": "Hora"
|
"time": "Hora"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Painéis",
|
"dashboards": "Painéis",
|
||||||
"datasources": "Origem de Dados",
|
"datasources": "Origem de Dados",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Problemas",
|
"issues": "Problemas",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Estado",
|
||||||
|
"load": "Carga",
|
||||||
|
"bcharge": "Carga da bateria",
|
||||||
|
"timeleft": "Tempo Restante"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Etiquetas"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Ativo",
|
"up": "Ativo",
|
||||||
"received": "Recebido",
|
"received": "Recebido",
|
||||||
"sent": "Enviado",
|
"sent": "Enviado",
|
||||||
"externalIPAddress": "IP Externo"
|
"externalIPAddress": "IP Externo",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Streams de Envio",
|
"upstreams": "Streams de Envio",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "APs Ligados",
|
"connectedAp": "APs Ligados",
|
||||||
"activeUser": "Dispositivos ativos",
|
"activeUser": "Dispositivos ativos",
|
||||||
"alerts": "Alertas",
|
"alerts": "Alertas",
|
||||||
"connectedGateway": "Gateways conectados",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Switches conectados"
|
"connectedSwitches": "Switches conectados"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Processado",
|
"processed": "Processado",
|
||||||
"time": "Hora"
|
"time": "Hora"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Painéis",
|
"dashboards": "Painéis",
|
||||||
"datasources": "Origem de Dados",
|
"datasources": "Origem de Dados",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Problemas",
|
"issues": "Problemas",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Status",
|
||||||
|
"load": "Carga",
|
||||||
|
"bcharge": "Carga da bateria",
|
||||||
|
"timeleft": "Tempo restante"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Marcadores"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Sus",
|
"up": "Sus",
|
||||||
"received": "Received",
|
"received": "Received",
|
||||||
"sent": "Sent",
|
"sent": "Sent",
|
||||||
"externalIPAddress": "Ext. IP"
|
"externalIPAddress": "Ext. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreamuri",
|
"upstreams": "Upstreamuri",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Connected APs",
|
"connectedAp": "Connected APs",
|
||||||
"activeUser": "Active devices",
|
"activeUser": "Active devices",
|
||||||
"alerts": "Alerts",
|
"alerts": "Alerts",
|
||||||
"connectedGateway": "Connected gateways",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Connected switches"
|
"connectedSwitches": "Connected switches"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Processed",
|
"processed": "Processed",
|
||||||
"time": "Time"
|
"time": "Time"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dashboards",
|
"dashboards": "Dashboards",
|
||||||
"datasources": "Data Sources",
|
"datasources": "Data Sources",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Issues",
|
"issues": "Issues",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Stare",
|
||||||
|
"load": "Sarcină",
|
||||||
|
"bcharge": "Battery Charge",
|
||||||
|
"timeleft": "Timp rămas"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tags"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Онлайн",
|
"up": "Онлайн",
|
||||||
"received": "Получено",
|
"received": "Получено",
|
||||||
"sent": "Отправлено",
|
"sent": "Отправлено",
|
||||||
"externalIPAddress": "Внеш. IP"
|
"externalIPAddress": "Внеш. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Входящие каналы",
|
"upstreams": "Входящие каналы",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Подключенные точки доступа",
|
"connectedAp": "Подключенные точки доступа",
|
||||||
"activeUser": "Активные устройства",
|
"activeUser": "Активные устройства",
|
||||||
"alerts": "Предупреждения",
|
"alerts": "Предупреждения",
|
||||||
"connectedGateway": "Подключенные шлюзы",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Подключенные коммутаторы"
|
"connectedSwitches": "Подключенные коммутаторы"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Обработано",
|
"processed": "Обработано",
|
||||||
"time": "Время"
|
"time": "Время"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Панели",
|
"dashboards": "Панели",
|
||||||
"datasources": "Источники данных",
|
"datasources": "Источники данных",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Вопросы",
|
"issues": "Вопросы",
|
||||||
"merges": "Мердж-реквесты",
|
"merges": "Мердж-реквесты",
|
||||||
"projects": "Проекты"
|
"projects": "Проекты"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Статус",
|
||||||
|
"load": "Загрузка",
|
||||||
|
"bcharge": "Заряд батареи",
|
||||||
|
"timeleft": "Осталось"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Теги"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Nahrávanie",
|
"up": "Nahrávanie",
|
||||||
"received": "Prijaté",
|
"received": "Prijaté",
|
||||||
"sent": "Odoslané",
|
"sent": "Odoslané",
|
||||||
"externalIPAddress": "Ext. IP"
|
"externalIPAddress": "Ext. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Odosielanie dát",
|
"upstreams": "Odosielanie dát",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Pripojené prístupové body",
|
"connectedAp": "Pripojené prístupové body",
|
||||||
"activeUser": "Aktívne zariadenia",
|
"activeUser": "Aktívne zariadenia",
|
||||||
"alerts": "Upozornenia",
|
"alerts": "Upozornenia",
|
||||||
"connectedGateway": "Pripojené sieťové brány",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Pripojené prepínače"
|
"connectedSwitches": "Pripojené prepínače"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Spracované",
|
"processed": "Spracované",
|
||||||
"time": "Čas"
|
"time": "Čas"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Panely",
|
"dashboards": "Panely",
|
||||||
"datasources": "Zdroje dát",
|
"datasources": "Zdroje dát",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Problémy",
|
"issues": "Problémy",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Stav",
|
||||||
|
"load": "Záťaž",
|
||||||
|
"bcharge": "Nabitie batérie",
|
||||||
|
"timeleft": "Zostávajúci čas"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Štítky"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Povezan",
|
"up": "Povezan",
|
||||||
"received": "Prejeto",
|
"received": "Prejeto",
|
||||||
"sent": "Poslano",
|
"sent": "Poslano",
|
||||||
"externalIPAddress": "Zun. IP"
|
"externalIPAddress": "Zun. IP",
|
||||||
|
"externalIPv6Address": "Eks. IPv6",
|
||||||
|
"externalIPv6Prefix": "Eks. IPv6-predpona"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Pretok gor",
|
"upstreams": "Pretok gor",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Povezanih AP",
|
"connectedAp": "Povezanih AP",
|
||||||
"activeUser": "Aktivne naprave",
|
"activeUser": "Aktivne naprave",
|
||||||
"alerts": "Opozorila",
|
"alerts": "Opozorila",
|
||||||
"connectedGateway": "Povezan prehod",
|
"connectedGateways": "Povezani prehodi",
|
||||||
"connectedSwitches": "Povezana stikala"
|
"connectedSwitches": "Povezana stikala"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Procesiran",
|
"processed": "Procesiran",
|
||||||
"time": "Čas"
|
"time": "Čas"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Neto vrednost",
|
||||||
|
"budget": "Proračun"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Nadzorne plošče",
|
"dashboards": "Nadzorne plošče",
|
||||||
"datasources": "Viri podatkov",
|
"datasources": "Viri podatkov",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Težave",
|
"issues": "Težave",
|
||||||
"merges": "Združi zahtevke",
|
"merges": "Združi zahtevke",
|
||||||
"projects": "Projekti"
|
"projects": "Projekti"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Stanje",
|
||||||
|
"load": "Bremenitev",
|
||||||
|
"bcharge": "Napolnjenost baterije",
|
||||||
|
"timeleft": "Preostali čas"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Značke"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Up",
|
"up": "Up",
|
||||||
"received": "Received",
|
"received": "Received",
|
||||||
"sent": "Sent",
|
"sent": "Sent",
|
||||||
"externalIPAddress": "Ext. IP"
|
"externalIPAddress": "Ext. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Connected APs",
|
"connectedAp": "Connected APs",
|
||||||
"activeUser": "Active devices",
|
"activeUser": "Active devices",
|
||||||
"alerts": "Alerts",
|
"alerts": "Alerts",
|
||||||
"connectedGateway": "Connected gateways",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Connected switches"
|
"connectedSwitches": "Connected switches"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Processed",
|
"processed": "Processed",
|
||||||
"time": "Time"
|
"time": "Time"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dashboards",
|
"dashboards": "Dashboards",
|
||||||
"datasources": "Data Sources",
|
"datasources": "Data Sources",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Issues",
|
"issues": "Issues",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Status",
|
||||||
|
"load": "Load",
|
||||||
|
"bcharge": "Battery Charge",
|
||||||
|
"timeleft": "Time Left"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tags"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Up",
|
"up": "Up",
|
||||||
"received": "Received",
|
"received": "Received",
|
||||||
"sent": "Sent",
|
"sent": "Sent",
|
||||||
"externalIPAddress": "Ext. IP"
|
"externalIPAddress": "Ext. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Connected APs",
|
"connectedAp": "Connected APs",
|
||||||
"activeUser": "Active devices",
|
"activeUser": "Active devices",
|
||||||
"alerts": "Alerts",
|
"alerts": "Alerts",
|
||||||
"connectedGateway": "Connected gateways",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Connected switches"
|
"connectedSwitches": "Connected switches"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Processed",
|
"processed": "Processed",
|
||||||
"time": "Time"
|
"time": "Time"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dashboards",
|
"dashboards": "Dashboards",
|
||||||
"datasources": "Data Sources",
|
"datasources": "Data Sources",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Issues",
|
"issues": "Issues",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Status",
|
||||||
|
"load": "Laddar",
|
||||||
|
"bcharge": "Battery Charge",
|
||||||
|
"timeleft": "Tid kvar"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tags"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Up",
|
"up": "Up",
|
||||||
"received": "Received",
|
"received": "Received",
|
||||||
"sent": "Sent",
|
"sent": "Sent",
|
||||||
"externalIPAddress": "Ext. IP"
|
"externalIPAddress": "Ext. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Connected APs",
|
"connectedAp": "Connected APs",
|
||||||
"activeUser": "Active devices",
|
"activeUser": "Active devices",
|
||||||
"alerts": "Alerts",
|
"alerts": "Alerts",
|
||||||
"connectedGateway": "Connected gateways",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Connected switches"
|
"connectedSwitches": "Connected switches"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Processed",
|
"processed": "Processed",
|
||||||
"time": "Time"
|
"time": "Time"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dashboards",
|
"dashboards": "Dashboards",
|
||||||
"datasources": "Data Sources",
|
"datasources": "Data Sources",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Issues",
|
"issues": "Issues",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "హోదా",
|
||||||
|
"load": "లోడ్",
|
||||||
|
"bcharge": "Battery Charge",
|
||||||
|
"timeleft": "మిగిలి వున్న సమయం"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tags"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Up",
|
"up": "Up",
|
||||||
"received": "Received",
|
"received": "Received",
|
||||||
"sent": "Sent",
|
"sent": "Sent",
|
||||||
"externalIPAddress": "Ext. IP"
|
"externalIPAddress": "Ext. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Connected APs",
|
"connectedAp": "Connected APs",
|
||||||
"activeUser": "Active devices",
|
"activeUser": "Active devices",
|
||||||
"alerts": "Alerts",
|
"alerts": "Alerts",
|
||||||
"connectedGateway": "Connected gateways",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Connected switches"
|
"connectedSwitches": "Connected switches"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Processed",
|
"processed": "Processed",
|
||||||
"time": "Time"
|
"time": "Time"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dashboards",
|
"dashboards": "Dashboards",
|
||||||
"datasources": "Data Sources",
|
"datasources": "Data Sources",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Issues",
|
"issues": "Issues",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "สถานะ",
|
||||||
|
"load": "โหลด",
|
||||||
|
"bcharge": "Battery Charge",
|
||||||
|
"timeleft": "Time Left"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tags"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Yükleme",
|
"up": "Yükleme",
|
||||||
"received": "Alınan",
|
"received": "Alınan",
|
||||||
"sent": "Gönderilen",
|
"sent": "Gönderilen",
|
||||||
"externalIPAddress": "Harici IP"
|
"externalIPAddress": "Harici IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Akış",
|
"upstreams": "Akış",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Bağlı AP'ler",
|
"connectedAp": "Bağlı AP'ler",
|
||||||
"activeUser": "Aktif cihazlar",
|
"activeUser": "Aktif cihazlar",
|
||||||
"alerts": "Alarmlar",
|
"alerts": "Alarmlar",
|
||||||
"connectedGateway": "Bağlı ağ geçitleri",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Bağlı anahtarlar"
|
"connectedSwitches": "Bağlı anahtarlar"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "İşlendi",
|
"processed": "İşlendi",
|
||||||
"time": "Zaman"
|
"time": "Zaman"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Kontrol Paneli",
|
"dashboards": "Kontrol Paneli",
|
||||||
"datasources": "Veri Kaynakları",
|
"datasources": "Veri Kaynakları",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Sorunlar",
|
"issues": "Sorunlar",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Durum",
|
||||||
|
"load": "Yük",
|
||||||
|
"bcharge": "Pil Yüzdesi",
|
||||||
|
"timeleft": "Kalan Zaman"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Etiketler"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Онлайн",
|
"up": "Онлайн",
|
||||||
"received": "Отримано",
|
"received": "Отримано",
|
||||||
"sent": "Надіслано",
|
"sent": "Надіслано",
|
||||||
"externalIPAddress": "Зовнішній IP"
|
"externalIPAddress": "Зовнішній IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Потоки",
|
"upstreams": "Потоки",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Підключені точки доступу",
|
"connectedAp": "Підключені точки доступу",
|
||||||
"activeUser": "Активні пристрої",
|
"activeUser": "Активні пристрої",
|
||||||
"alerts": "Оповіщення",
|
"alerts": "Оповіщення",
|
||||||
"connectedGateway": "Підключені шлюзи",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Підключені перемикачі"
|
"connectedSwitches": "Підключені перемикачі"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -285,13 +287,13 @@
|
|||||||
"total": "Усього",
|
"total": "Усього",
|
||||||
"connected": "З'єднано",
|
"connected": "З'єднано",
|
||||||
"new_devices": "Нові пристрої",
|
"new_devices": "Нові пристрої",
|
||||||
"down_alerts": "Спов. про падіння"
|
"down_alerts": "Сповіщення про падіння"
|
||||||
},
|
},
|
||||||
"pihole": {
|
"pihole": {
|
||||||
"queries": "Запити",
|
"queries": "Запити",
|
||||||
"blocked": "Заблоковано",
|
"blocked": "Заблоковано",
|
||||||
"blocked_percent": "Заблоковано %",
|
"blocked_percent": "Заблоковано %",
|
||||||
"gravity": "Гравітація"
|
"gravity": "Доменів в списку"
|
||||||
},
|
},
|
||||||
"adguard": {
|
"adguard": {
|
||||||
"queries": "Запити",
|
"queries": "Запити",
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Обробка",
|
"processed": "Обробка",
|
||||||
"time": "Час"
|
"time": "Час"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Інформаційні панелі",
|
"dashboards": "Інформаційні панелі",
|
||||||
"datasources": "Джерела даних",
|
"datasources": "Джерела даних",
|
||||||
@ -856,7 +862,7 @@
|
|||||||
"platforms": "Платформи",
|
"platforms": "Платформи",
|
||||||
"totalRoms": "Ігри",
|
"totalRoms": "Ігри",
|
||||||
"saves": "Збереження",
|
"saves": "Збереження",
|
||||||
"states": "Штати",
|
"states": "Стани",
|
||||||
"screenshots": "Знімки екрану",
|
"screenshots": "Знімки екрану",
|
||||||
"totalfilesize": "Загальний обсяг"
|
"totalfilesize": "Загальний обсяг"
|
||||||
},
|
},
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Питання",
|
"issues": "Питання",
|
||||||
"merges": "Запити на злиття",
|
"merges": "Запити на злиття",
|
||||||
"projects": "Проєкти"
|
"projects": "Проєкти"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Стан",
|
||||||
|
"load": "Завантаження",
|
||||||
|
"bcharge": "Заряд батареї",
|
||||||
|
"timeleft": "Залишилось"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Теги"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Up",
|
"up": "Up",
|
||||||
"received": "Received",
|
"received": "Received",
|
||||||
"sent": "Sent",
|
"sent": "Sent",
|
||||||
"externalIPAddress": "Ext. IP"
|
"externalIPAddress": "Ext. IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "Upstreams",
|
"upstreams": "Upstreams",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "Connected APs",
|
"connectedAp": "Connected APs",
|
||||||
"activeUser": "Active devices",
|
"activeUser": "Active devices",
|
||||||
"alerts": "Alerts",
|
"alerts": "Alerts",
|
||||||
"connectedGateway": "Connected gateways",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "Connected switches"
|
"connectedSwitches": "Connected switches"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "Processed",
|
"processed": "Processed",
|
||||||
"time": "Time"
|
"time": "Time"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "Dashboards",
|
"dashboards": "Dashboards",
|
||||||
"datasources": "Data Sources",
|
"datasources": "Data Sources",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "Issues",
|
"issues": "Issues",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "Trạng thái",
|
||||||
|
"load": "Load",
|
||||||
|
"bcharge": "Battery Charge",
|
||||||
|
"timeleft": "Thời gian còn lại"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tags"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "在線",
|
"up": "在線",
|
||||||
"received": "已接收",
|
"received": "已接收",
|
||||||
"sent": "已送出",
|
"sent": "已送出",
|
||||||
"externalIPAddress": "外部 IP"
|
"externalIPAddress": "外部 IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "上行",
|
"upstreams": "上行",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "已連接的存取點",
|
"connectedAp": "已連接的存取點",
|
||||||
"activeUser": "在線裝置",
|
"activeUser": "在線裝置",
|
||||||
"alerts": "警示",
|
"alerts": "警示",
|
||||||
"connectedGateway": "已連接的閘道",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "已連接的交換器"
|
"connectedSwitches": "已連接的交換器"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "已處理",
|
"processed": "已處理",
|
||||||
"time": "時間"
|
"time": "時間"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "控制面板",
|
"dashboards": "控制面板",
|
||||||
"datasources": "數據來源",
|
"datasources": "數據來源",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "出版",
|
"issues": "出版",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "狀況",
|
||||||
|
"load": "負荷",
|
||||||
|
"bcharge": "充電",
|
||||||
|
"timeleft": "用時"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "標籤"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "Up",
|
"up": "Up",
|
||||||
"received": "已接收",
|
"received": "已接收",
|
||||||
"sent": "已发送",
|
"sent": "已发送",
|
||||||
"externalIPAddress": "外部IP"
|
"externalIPAddress": "外部IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "上游",
|
"upstreams": "上游",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "连接中的AP",
|
"connectedAp": "连接中的AP",
|
||||||
"activeUser": "活跃设备",
|
"activeUser": "活跃设备",
|
||||||
"alerts": "警报",
|
"alerts": "警报",
|
||||||
"connectedGateway": "已连接网关",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "已连接开关"
|
"connectedSwitches": "已连接开关"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -311,13 +313,13 @@
|
|||||||
},
|
},
|
||||||
"suwayomi": {
|
"suwayomi": {
|
||||||
"download": "下载",
|
"download": "下载",
|
||||||
"nondownload": "Non-Downloaded",
|
"nondownload": "未下载",
|
||||||
"read": "已读",
|
"read": "已读",
|
||||||
"unread": "未读",
|
"unread": "未读",
|
||||||
"downloadedread": "Downloaded & Read",
|
"downloadedread": "已下载 & 已读",
|
||||||
"downloadedunread": "Downloaded & Unread",
|
"downloadedunread": "已下载 & 未读",
|
||||||
"nondownloadedread": "Non-Downloaded & Read",
|
"nondownloadedread": "未下载 & 已读",
|
||||||
"nondownloadedunread": "Non-Downloaded & Unread"
|
"nondownloadedunread": "未下载 & 未读"
|
||||||
},
|
},
|
||||||
"tailscale": {
|
"tailscale": {
|
||||||
"address": "地址",
|
"address": "地址",
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "已处理",
|
"processed": "已处理",
|
||||||
"time": "时间"
|
"time": "时间"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "控制面板",
|
"dashboards": "控制面板",
|
||||||
"datasources": "数据来源",
|
"datasources": "数据来源",
|
||||||
@ -980,7 +986,7 @@
|
|||||||
},
|
},
|
||||||
"beszel": {
|
"beszel": {
|
||||||
"name": "Name",
|
"name": "Name",
|
||||||
"systems": "Systems",
|
"systems": "系统",
|
||||||
"up": "Up",
|
"up": "Up",
|
||||||
"down": "Down",
|
"down": "Down",
|
||||||
"paused": "暂停",
|
"paused": "暂停",
|
||||||
@ -989,26 +995,40 @@
|
|||||||
"updated": "已升级",
|
"updated": "已升级",
|
||||||
"cpu": "CPU",
|
"cpu": "CPU",
|
||||||
"memory": "内存",
|
"memory": "内存",
|
||||||
"disk": "Disk",
|
"disk": "磁盘",
|
||||||
"network": "NET"
|
"network": "网络"
|
||||||
},
|
},
|
||||||
"argocd": {
|
"argocd": {
|
||||||
"apps": "应用程序",
|
"apps": "应用程序",
|
||||||
"synced": "Synced",
|
"synced": "已同步",
|
||||||
"outOfSync": "Out Of Sync",
|
"outOfSync": "未同步",
|
||||||
"healthy": "健康",
|
"healthy": "健康",
|
||||||
"degraded": "Degraded",
|
"degraded": "已降级",
|
||||||
"progressing": "Progressing",
|
"progressing": "进行中",
|
||||||
"missing": "丢失",
|
"missing": "丢失",
|
||||||
"suspended": "Suspended"
|
"suspended": "已停用"
|
||||||
},
|
},
|
||||||
"spoolman": {
|
"spoolman": {
|
||||||
"loading": "正在加载"
|
"loading": "正在加载"
|
||||||
},
|
},
|
||||||
"gitlab": {
|
"gitlab": {
|
||||||
"groups": "Groups",
|
"groups": "群组",
|
||||||
"issues": "问题",
|
"issues": "问题",
|
||||||
"merges": "Merge Requests",
|
"merges": "合并请求",
|
||||||
"projects": "Projects"
|
"projects": "项目"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "状态",
|
||||||
|
"load": "负载",
|
||||||
|
"bcharge": "充电中",
|
||||||
|
"timeleft": "剩余时间"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "Tags"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -148,7 +148,9 @@
|
|||||||
"up": "在線",
|
"up": "在線",
|
||||||
"received": "已接收",
|
"received": "已接收",
|
||||||
"sent": "已送出",
|
"sent": "已送出",
|
||||||
"externalIPAddress": "外部 IP"
|
"externalIPAddress": "外部 IP",
|
||||||
|
"externalIPv6Address": "Ext. IPv6",
|
||||||
|
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||||
},
|
},
|
||||||
"caddy": {
|
"caddy": {
|
||||||
"upstreams": "上行",
|
"upstreams": "上行",
|
||||||
@ -176,7 +178,7 @@
|
|||||||
"connectedAp": "已連接的存取點",
|
"connectedAp": "已連接的存取點",
|
||||||
"activeUser": "在線裝置",
|
"activeUser": "在線裝置",
|
||||||
"alerts": "警示",
|
"alerts": "警示",
|
||||||
"connectedGateway": "已連接的閘道",
|
"connectedGateways": "Connected gateways",
|
||||||
"connectedSwitches": "已連接的交換器"
|
"connectedSwitches": "已連接的交換器"
|
||||||
},
|
},
|
||||||
"nzbget": {
|
"nzbget": {
|
||||||
@ -702,6 +704,10 @@
|
|||||||
"processed": "已處理",
|
"processed": "已處理",
|
||||||
"time": "時間"
|
"time": "時間"
|
||||||
},
|
},
|
||||||
|
"firefly": {
|
||||||
|
"networth": "Net Worth",
|
||||||
|
"budget": "Budget"
|
||||||
|
},
|
||||||
"grafana": {
|
"grafana": {
|
||||||
"dashboards": "控制面板",
|
"dashboards": "控制面板",
|
||||||
"datasources": "數據來源",
|
"datasources": "數據來源",
|
||||||
@ -1010,5 +1016,19 @@
|
|||||||
"issues": "出版",
|
"issues": "出版",
|
||||||
"merges": "Merge Requests",
|
"merges": "Merge Requests",
|
||||||
"projects": "Projects"
|
"projects": "Projects"
|
||||||
|
},
|
||||||
|
"apcups": {
|
||||||
|
"status": "狀態",
|
||||||
|
"load": "負載",
|
||||||
|
"bcharge": "充電",
|
||||||
|
"timeleft": "剩餘時間"
|
||||||
|
},
|
||||||
|
"hoarder": {
|
||||||
|
"bookmarks": "Bookmarks",
|
||||||
|
"favorites": "Favorites",
|
||||||
|
"archived": "Archived",
|
||||||
|
"highlights": "Highlights",
|
||||||
|
"lists": "Lists",
|
||||||
|
"tags": "標籤"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2,7 +2,6 @@ import { useRef, useEffect } from "react";
|
|||||||
import classNames from "classnames";
|
import classNames from "classnames";
|
||||||
import { Disclosure, Transition } from "@headlessui/react";
|
import { Disclosure, Transition } from "@headlessui/react";
|
||||||
import { MdKeyboardArrowDown } from "react-icons/md";
|
import { MdKeyboardArrowDown } from "react-icons/md";
|
||||||
|
|
||||||
import ErrorBoundary from "components/errorboundry";
|
import ErrorBoundary from "components/errorboundry";
|
||||||
import List from "components/bookmarks/list";
|
import List from "components/bookmarks/list";
|
||||||
import ResolvedIcon from "components/resolvedicon";
|
import ResolvedIcon from "components/resolvedicon";
|
||||||
@ -35,7 +34,7 @@ export default function BookmarksGroup({
|
|||||||
{layout?.header !== false && (
|
{layout?.header !== false && (
|
||||||
<Disclosure.Button disabled={disableCollapse} className="flex w-full select-none items-center group">
|
<Disclosure.Button disabled={disableCollapse} className="flex w-full select-none items-center group">
|
||||||
{layout?.icon && (
|
{layout?.icon && (
|
||||||
<div className="flex-shrink-0 mr-2 w-7 h-7 bookmark-group-icon">
|
<div className="shrink-0 mr-2 w-7 h-7 bookmark-group-icon">
|
||||||
<ResolvedIcon icon={layout.icon} />
|
<ResolvedIcon icon={layout.icon} />
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
@ -53,7 +52,7 @@ export default function BookmarksGroup({
|
|||||||
)}
|
)}
|
||||||
<Transition
|
<Transition
|
||||||
// Otherwise the transition group does display: none and cancels animation
|
// Otherwise the transition group does display: none and cancels animation
|
||||||
className="!block"
|
className="block!"
|
||||||
unmount={false}
|
unmount={false}
|
||||||
beforeLeave={() => {
|
beforeLeave={() => {
|
||||||
panel.current.style.height = `${panel.current.scrollHeight}px`;
|
panel.current.style.height = `${panel.current.scrollHeight}px`;
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
import { useContext } from "react";
|
import { useContext } from "react";
|
||||||
import classNames from "classnames";
|
import classNames from "classnames";
|
||||||
|
|
||||||
import { SettingsContext } from "utils/contexts/settings";
|
import { SettingsContext } from "utils/contexts/settings";
|
||||||
import ResolvedIcon from "components/resolvedicon";
|
import ResolvedIcon from "components/resolvedicon";
|
||||||
|
|
||||||
@ -23,7 +22,7 @@ export default function Item({ bookmark, iconOnly = false }) {
|
|||||||
className={classNames(
|
className={classNames(
|
||||||
settings.cardBlur !== undefined && `backdrop-blur${settings.cardBlur.length ? "-" : ""}${settings.cardBlur}`,
|
settings.cardBlur !== undefined && `backdrop-blur${settings.cardBlur.length ? "-" : ""}${settings.cardBlur}`,
|
||||||
"text-left cursor-pointer transition-all rounded-md font-medium text-theme-700 dark:text-theme-200 dark:hover:text-theme-300 shadow-md shadow-theme-900/10 dark:shadow-theme-900/20 bg-theme-100/20 hover:bg-theme-300/20 dark:bg-white/5 dark:hover:bg-white/10",
|
"text-left cursor-pointer transition-all rounded-md font-medium text-theme-700 dark:text-theme-200 dark:hover:text-theme-300 shadow-md shadow-theme-900/10 dark:shadow-theme-900/20 bg-theme-100/20 hover:bg-theme-300/20 dark:bg-white/5 dark:hover:bg-white/10",
|
||||||
iconOnly ? "h-[60px] w-[60px] grid" : "block w-full h-15 mb-3",
|
iconOnly ? "h-[60px] w-[60px] grid" : "block w-full h-8 mb-3",
|
||||||
)}
|
)}
|
||||||
>
|
>
|
||||||
{iconOnly ? (
|
{iconOnly ? (
|
||||||
@ -37,9 +36,9 @@ export default function Item({ bookmark, iconOnly = false }) {
|
|||||||
</div>
|
</div>
|
||||||
) : (
|
) : (
|
||||||
<div className="flex">
|
<div className="flex">
|
||||||
<div className="flex-shrink-0 flex items-center justify-center w-11 bg-theme-500/10 dark:bg-theme-900/50 text-theme-700 hover:text-theme-700 dark:text-theme-200 text-sm font-medium rounded-l-md bookmark-icon">
|
<div className="shrink-0 flex items-center justify-center w-11 bg-theme-500/10 dark:bg-theme-900/50 text-theme-700 hover:text-theme-700 dark:text-theme-200 text-sm font-medium rounded-l-md bookmark-icon">
|
||||||
{bookmark.icon && (
|
{bookmark.icon && (
|
||||||
<div className="flex-shrink-0 w-5 h-5">
|
<div className="shrink-0 w-5 h-5">
|
||||||
<ResolvedIcon icon={bookmark.icon} alt={bookmark.abbr} />
|
<ResolvedIcon icon={bookmark.icon} alt={bookmark.abbr} />
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
|
@ -1,9 +1,8 @@
|
|||||||
import classNames from "classnames";
|
import classNames from "classnames";
|
||||||
|
import Item from "components/bookmarks/item";
|
||||||
|
|
||||||
import { columnMap } from "../../utils/layout/columns";
|
import { columnMap } from "../../utils/layout/columns";
|
||||||
|
|
||||||
import Item from "components/bookmarks/item";
|
|
||||||
|
|
||||||
export default function List({ bookmarks, layout, bookmarksStyle }) {
|
export default function List({ bookmarks, layout, bookmarksStyle }) {
|
||||||
let classes = layout?.style === "row" ? `grid ${columnMap[layout?.columns]} gap-x-2` : "flex flex-col bookmark-list";
|
let classes = layout?.style === "row" ? `grid ${columnMap[layout?.columns]} gap-x-2` : "flex flex-col bookmark-list";
|
||||||
const style = {};
|
const style = {};
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
/* eslint-disable @next/next/no-img-element */
|
/* eslint-disable @next/next/no-img-element */
|
||||||
/* eslint-disable jsx-a11y/alt-text */
|
/* eslint-disable jsx-a11y/alt-text */
|
||||||
import { useRef, useEffect, useContext } from "react";
|
import { useRef, useEffect, useContext } from "react";
|
||||||
|
import { ColorContext } from "utils/contexts/color";
|
||||||
|
|
||||||
import themes from "utils/styles/themes";
|
import themes from "utils/styles/themes";
|
||||||
import { ColorContext } from "utils/contexts/color";
|
|
||||||
|
|
||||||
export function Svg({ svgRef = null }) {
|
export function Svg({ svgRef = null }) {
|
||||||
const { color } = useContext(ColorContext);
|
const { color } = useContext(ColorContext);
|
||||||
|
@ -2,12 +2,11 @@ import { useTranslation } from "react-i18next";
|
|||||||
import { useEffect, useState, useRef, useCallback, useContext } from "react";
|
import { useEffect, useState, useRef, useCallback, useContext } from "react";
|
||||||
import classNames from "classnames";
|
import classNames from "classnames";
|
||||||
import useSWR from "swr";
|
import useSWR from "swr";
|
||||||
|
import { SettingsContext } from "utils/contexts/settings";
|
||||||
|
|
||||||
import ResolvedIcon from "./resolvedicon";
|
import ResolvedIcon from "./resolvedicon";
|
||||||
import { getStoredProvider, searchProviders } from "./widgets/search/search";
|
import { getStoredProvider, searchProviders } from "./widgets/search/search";
|
||||||
|
|
||||||
import { SettingsContext } from "utils/contexts/settings";
|
|
||||||
|
|
||||||
export default function QuickLaunch({ servicesAndBookmarks, searchString, setSearchString, isOpen, close }) {
|
export default function QuickLaunch({ servicesAndBookmarks, searchString, setSearchString, isOpen, close }) {
|
||||||
const { t } = useTranslation();
|
const { t } = useTranslation();
|
||||||
|
|
||||||
@ -255,10 +254,10 @@ export default function QuickLaunch({ servicesAndBookmarks, searchString, setSea
|
|||||||
role="dialog"
|
role="dialog"
|
||||||
aria-modal="true"
|
aria-modal="true"
|
||||||
>
|
>
|
||||||
<div className="fixed inset-0 bg-gray-500 bg-opacity-50" />
|
<div className="fixed inset-0 bg-gray-500 opacity-50" />
|
||||||
<div className="fixed inset-0 z-20 overflow-y-auto">
|
<div className="fixed inset-0 z-20 overflow-y-auto">
|
||||||
<div className="flex min-h-full min-w-full items-start justify-center text-center">
|
<div className="flex min-h-full min-w-full items-start justify-center text-center">
|
||||||
<dialog className="mt-[10%] min-w-[90%] max-w-[90%] md:min-w-[40%] md:max-w-[40%] rounded-md p-0 block font-medium text-theme-700 dark:text-theme-200 dark:hover:text-theme-300 shadow-md shadow-theme-900/10 dark:shadow-theme-900/20 bg-theme-50 dark:bg-theme-800">
|
<dialog className="mt-[10%] mx-auto min-w-[90%] max-w-[90%] md:min-w-[40%] md:max-w-[40%] rounded-md p-0 block font-medium text-theme-700 dark:text-theme-200 dark:hover:text-theme-300 shadow-md shadow-theme-900/10 dark:shadow-theme-900/20 bg-theme-50 dark:bg-theme-800">
|
||||||
<input
|
<input
|
||||||
placeholder="Search"
|
placeholder="Search"
|
||||||
className={classNames(
|
className={classNames(
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
import { useContext } from "react";
|
import { useContext } from "react";
|
||||||
import Image from "next/future/image";
|
import Image from "next/image";
|
||||||
|
|
||||||
import { SettingsContext } from "utils/contexts/settings";
|
import { SettingsContext } from "utils/contexts/settings";
|
||||||
import { ThemeContext } from "utils/contexts/theme";
|
import { ThemeContext } from "utils/contexts/theme";
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@ export default function Dropdown({ options, value, setValue }) {
|
|||||||
return (
|
return (
|
||||||
<Menu as="div" className="relative inline-block text-left">
|
<Menu as="div" className="relative inline-block text-left">
|
||||||
<div>
|
<div>
|
||||||
<Menu.Button className="text-xs inline-flex w-full items-center rounded bg-theme-200/50 dark:bg-theme-900/20 px-3 py-1.5">
|
<Menu.Button className="text-xs inline-flex w-full items-center rounded-sm bg-theme-200/50 dark:bg-theme-900/20 px-3 py-1.5">
|
||||||
{options.find((option) => option.value === value).label}
|
{options.find((option) => option.value === value).label}
|
||||||
<BiCog className="-mr-1 ml-2 h-4 w-4" aria-hidden="true" />
|
<BiCog className="-mr-1 ml-2 h-4 w-4" aria-hidden="true" />
|
||||||
</Menu.Button>
|
</Menu.Button>
|
||||||
@ -22,7 +22,7 @@ export default function Dropdown({ options, value, setValue }) {
|
|||||||
leaveFrom="transform opacity-100 scale-100"
|
leaveFrom="transform opacity-100 scale-100"
|
||||||
leaveTo="transform opacity-0 scale-95"
|
leaveTo="transform opacity-0 scale-95"
|
||||||
>
|
>
|
||||||
<Menu.Items className="absolute right-0 z-10 mt-2 w-56 origin-top-right rounded-md bg-theme-200/50 dark:bg-theme-900/50 backdrop-blur shadow-md focus:outline-none text-theme-700 dark:text-theme-200">
|
<Menu.Items className="absolute right-0 z-10 mt-2 w-56 origin-top-right rounded-md bg-theme-200/50 dark:bg-theme-900/50 backdrop-blur-sm shadow-md focus:outline-hidden text-theme-700 dark:text-theme-200">
|
||||||
<div className="py-1">
|
<div className="py-1">
|
||||||
{options.map((option) => (
|
{options.map((option) => (
|
||||||
<Menu.Item key={option.value} as={Fragment}>
|
<Menu.Item key={option.value} as={Fragment}>
|
||||||
@ -33,7 +33,7 @@ export default function Dropdown({ options, value, setValue }) {
|
|||||||
type="button"
|
type="button"
|
||||||
className={classNames(
|
className={classNames(
|
||||||
value === option.value ? "bg-theme-300/40 dark:bg-theme-900/40" : "",
|
value === option.value ? "bg-theme-300/40 dark:bg-theme-900/40" : "",
|
||||||
"w-full block px-3 py-1.5 text-sm hover:bg-theme-300/70 hover:dark:bg-theme-900/70 text-left",
|
"w-full block px-3 py-1.5 text-sm hover:bg-theme-300/70 dark:hover:bg-theme-900/70 text-left",
|
||||||
)}
|
)}
|
||||||
>
|
>
|
||||||
{option.label}
|
{option.label}
|
||||||
|
@ -2,12 +2,11 @@ import { useRef, useEffect } from "react";
|
|||||||
import classNames from "classnames";
|
import classNames from "classnames";
|
||||||
import { Disclosure, Transition } from "@headlessui/react";
|
import { Disclosure, Transition } from "@headlessui/react";
|
||||||
import { MdKeyboardArrowDown } from "react-icons/md";
|
import { MdKeyboardArrowDown } from "react-icons/md";
|
||||||
|
|
||||||
import { columnMap } from "../../utils/layout/columns";
|
|
||||||
|
|
||||||
import List from "components/services/list";
|
import List from "components/services/list";
|
||||||
import ResolvedIcon from "components/resolvedicon";
|
import ResolvedIcon from "components/resolvedicon";
|
||||||
|
|
||||||
|
import { columnMap } from "../../utils/layout/columns";
|
||||||
|
|
||||||
export default function ServicesGroup({
|
export default function ServicesGroup({
|
||||||
group,
|
group,
|
||||||
layout,
|
layout,
|
||||||
@ -43,7 +42,7 @@ export default function ServicesGroup({
|
|||||||
{layout?.header !== false && (
|
{layout?.header !== false && (
|
||||||
<Disclosure.Button disabled={disableCollapse} className="flex w-full select-none items-center group">
|
<Disclosure.Button disabled={disableCollapse} className="flex w-full select-none items-center group">
|
||||||
{layout?.icon && (
|
{layout?.icon && (
|
||||||
<div className="flex-shrink-0 mr-2 w-7 h-7 service-group-icon">
|
<div className="shrink-0 mr-2 w-7 h-7 service-group-icon">
|
||||||
<ResolvedIcon icon={layout.icon} />
|
<ResolvedIcon icon={layout.icon} />
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
@ -61,7 +60,7 @@ export default function ServicesGroup({
|
|||||||
)}
|
)}
|
||||||
<Transition
|
<Transition
|
||||||
// Otherwise the transition group does display: none and cancels animation
|
// Otherwise the transition group does display: none and cancels animation
|
||||||
className="!block"
|
className="block!"
|
||||||
unmount={false}
|
unmount={false}
|
||||||
beforeLeave={() => {
|
beforeLeave={() => {
|
||||||
panel.current.style.height = `${panel.current.scrollHeight}px`;
|
panel.current.style.height = `${panel.current.scrollHeight}px`;
|
||||||
|
@ -1,5 +1,9 @@
|
|||||||
import classNames from "classnames";
|
import classNames from "classnames";
|
||||||
import { useContext, useState } from "react";
|
import { useContext, useState } from "react";
|
||||||
|
import Docker from "widgets/docker/component";
|
||||||
|
import Kubernetes from "widgets/kubernetes/component";
|
||||||
|
import { SettingsContext } from "utils/contexts/settings";
|
||||||
|
import ResolvedIcon from "components/resolvedicon";
|
||||||
|
|
||||||
import Status from "./status";
|
import Status from "./status";
|
||||||
import Widget from "./widget";
|
import Widget from "./widget";
|
||||||
@ -7,11 +11,6 @@ import Ping from "./ping";
|
|||||||
import SiteMonitor from "./site-monitor";
|
import SiteMonitor from "./site-monitor";
|
||||||
import KubernetesStatus from "./kubernetes-status";
|
import KubernetesStatus from "./kubernetes-status";
|
||||||
|
|
||||||
import Docker from "widgets/docker/component";
|
|
||||||
import Kubernetes from "widgets/kubernetes/component";
|
|
||||||
import { SettingsContext } from "utils/contexts/settings";
|
|
||||||
import ResolvedIcon from "components/resolvedicon";
|
|
||||||
|
|
||||||
export default function Item({ service, groupName, useEqualHeights }) {
|
export default function Item({ service, groupName, useEqualHeights }) {
|
||||||
const hasLink = service.href && service.href !== "#";
|
const hasLink = service.href && service.href !== "#";
|
||||||
const { settings } = useContext(SettingsContext);
|
const { settings } = useContext(SettingsContext);
|
||||||
@ -47,13 +46,13 @@ export default function Item({ service, groupName, useEqualHeights }) {
|
|||||||
href={service.href}
|
href={service.href}
|
||||||
target={service.target ?? settings.target ?? "_blank"}
|
target={service.target ?? settings.target ?? "_blank"}
|
||||||
rel="noreferrer"
|
rel="noreferrer"
|
||||||
className="flex-shrink-0 flex items-center justify-center w-12 service-icon z-10"
|
className="shrink-0 flex items-center justify-center w-12 service-icon z-10"
|
||||||
aria-label={service.icon}
|
aria-label={service.icon}
|
||||||
>
|
>
|
||||||
<ResolvedIcon icon={service.icon} />
|
<ResolvedIcon icon={service.icon} />
|
||||||
</a>
|
</a>
|
||||||
) : (
|
) : (
|
||||||
<div className="flex-shrink-0 flex items-center justify-center w-12 service-icon z-10">
|
<div className="shrink-0 flex items-center justify-center w-12 service-icon z-10">
|
||||||
<ResolvedIcon icon={service.icon} />
|
<ResolvedIcon icon={service.icon} />
|
||||||
</div>
|
</div>
|
||||||
))}
|
))}
|
||||||
@ -89,14 +88,14 @@ export default function Item({ service, groupName, useEqualHeights }) {
|
|||||||
} z-10 service-tags`}
|
} z-10 service-tags`}
|
||||||
>
|
>
|
||||||
{service.ping && (
|
{service.ping && (
|
||||||
<div className="flex-shrink-0 flex items-center justify-center service-tag service-ping">
|
<div className="shrink-0 flex items-center justify-center service-tag service-ping">
|
||||||
<Ping groupName={groupName} serviceName={service.name} style={statusStyle} />
|
<Ping groupName={groupName} serviceName={service.name} style={statusStyle} />
|
||||||
<span className="sr-only">Ping status</span>
|
<span className="sr-only">Ping status</span>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
|
|
||||||
{service.siteMonitor && (
|
{service.siteMonitor && (
|
||||||
<div className="flex-shrink-0 flex items-center justify-center service-tag service-site-monitor">
|
<div className="shrink-0 flex items-center justify-center service-tag service-site-monitor">
|
||||||
<SiteMonitor groupName={groupName} serviceName={service.name} style={statusStyle} />
|
<SiteMonitor groupName={groupName} serviceName={service.name} style={statusStyle} />
|
||||||
<span className="sr-only">Site monitor status</span>
|
<span className="sr-only">Site monitor status</span>
|
||||||
</div>
|
</div>
|
||||||
@ -106,7 +105,7 @@ export default function Item({ service, groupName, useEqualHeights }) {
|
|||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
onClick={() => (statsOpen ? closeStats() : setStatsOpen(true))}
|
onClick={() => (statsOpen ? closeStats() : setStatsOpen(true))}
|
||||||
className="flex-shrink-0 flex items-center justify-center cursor-pointer service-tag service-container-stats"
|
className="shrink-0 flex items-center justify-center cursor-pointer service-tag service-container-stats"
|
||||||
>
|
>
|
||||||
<Status service={service} style={statusStyle} />
|
<Status service={service} style={statusStyle} />
|
||||||
<span className="sr-only">View container stats</span>
|
<span className="sr-only">View container stats</span>
|
||||||
@ -116,7 +115,7 @@ export default function Item({ service, groupName, useEqualHeights }) {
|
|||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
onClick={() => (statsOpen ? closeStats() : setStatsOpen(true))}
|
onClick={() => (statsOpen ? closeStats() : setStatsOpen(true))}
|
||||||
className="flex-shrink-0 flex items-center justify-center cursor-pointer service-tag service-app"
|
className="shrink-0 flex items-center justify-center cursor-pointer service-tag service-app"
|
||||||
>
|
>
|
||||||
<KubernetesStatus service={service} style={statusStyle} />
|
<KubernetesStatus service={service} style={statusStyle} />
|
||||||
<span className="sr-only">View container stats</span>
|
<span className="sr-only">View container stats</span>
|
||||||
@ -128,7 +127,7 @@ export default function Item({ service, groupName, useEqualHeights }) {
|
|||||||
{service.container && service.server && (
|
{service.container && service.server && (
|
||||||
<div
|
<div
|
||||||
className={classNames(
|
className={classNames(
|
||||||
showStats || (statsOpen && !statsClosing) ? "max-h-[110px] opacity-100" : " max-h-[0] opacity-0",
|
showStats || (statsOpen && !statsClosing) ? "max-h-[110px] opacity-100" : " max-h-0 opacity-0",
|
||||||
"w-full overflow-hidden transition-all duration-300 ease-in-out service-stats",
|
"w-full overflow-hidden transition-all duration-300 ease-in-out service-stats",
|
||||||
)}
|
)}
|
||||||
>
|
>
|
||||||
@ -140,7 +139,7 @@ export default function Item({ service, groupName, useEqualHeights }) {
|
|||||||
{service.app && (
|
{service.app && (
|
||||||
<div
|
<div
|
||||||
className={classNames(
|
className={classNames(
|
||||||
showStats || (statsOpen && !statsClosing) ? "max-h-[55px] opacity-100" : " max-h-[0] opacity-0",
|
showStats || (statsOpen && !statsClosing) ? "max-h-[55px] opacity-100" : " max-h-0 opacity-0",
|
||||||
"w-full overflow-hidden transition-all duration-300 ease-in-out service-stats",
|
"w-full overflow-hidden transition-all duration-300 ease-in-out service-stats",
|
||||||
)}
|
)}
|
||||||
>
|
>
|
||||||
|
@ -1,9 +1,8 @@
|
|||||||
import classNames from "classnames";
|
import classNames from "classnames";
|
||||||
|
import Item from "components/services/item";
|
||||||
|
|
||||||
import { columnMap } from "../../utils/layout/columns";
|
import { columnMap } from "../../utils/layout/columns";
|
||||||
|
|
||||||
import Item from "components/services/item";
|
|
||||||
|
|
||||||
export default function List({ groupName, services, layout, useEqualHeights, header }) {
|
export default function List({ groupName, services, layout, useEqualHeights, header }) {
|
||||||
return (
|
return (
|
||||||
<ul
|
<ul
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
import { useTranslation } from "next-i18next";
|
import { useTranslation } from "next-i18next";
|
||||||
|
|
||||||
import ErrorBoundary from "components/errorboundry";
|
import ErrorBoundary from "components/errorboundry";
|
||||||
|
|
||||||
import components from "widgets/components";
|
import components from "widgets/components";
|
||||||
|
|
||||||
export default function Widget({ widget, service }) {
|
export default function Widget({ widget, service }) {
|
||||||
@ -19,7 +19,7 @@ export default function Widget({ widget, service }) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="bg-theme-200/50 dark:bg-theme-900/20 rounded m-1 flex-1 flex flex-col items-center justify-center p-1 service-missing">
|
<div className="bg-theme-200/50 dark:bg-theme-900/20 rounded-sm m-1 flex-1 flex flex-col items-center justify-center p-1 service-missing">
|
||||||
<div className="font-thin text-sm">{t("widget.missing_type", { type: widget.type })}</div>
|
<div className="font-thin text-sm">{t("widget.missing_type", { type: widget.type })}</div>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
@ -7,7 +7,7 @@ export default function Block({ value, label }) {
|
|||||||
return (
|
return (
|
||||||
<div
|
<div
|
||||||
className={classNames(
|
className={classNames(
|
||||||
"bg-theme-200/50 dark:bg-theme-900/20 rounded m-1 flex-1 flex flex-col items-center justify-center text-center p-1",
|
"bg-theme-200/50 dark:bg-theme-900/20 rounded-sm m-1 flex-1 flex flex-col items-center justify-center text-center p-1",
|
||||||
value === undefined ? "animate-pulse" : "",
|
value === undefined ? "animate-pulse" : "",
|
||||||
"service-block",
|
"service-block",
|
||||||
)}
|
)}
|
||||||
|
@ -1,9 +1,8 @@
|
|||||||
import { useContext } from "react";
|
import { useContext } from "react";
|
||||||
|
import { SettingsContext } from "utils/contexts/settings";
|
||||||
|
|
||||||
import Error from "./error";
|
import Error from "./error";
|
||||||
|
|
||||||
import { SettingsContext } from "utils/contexts/settings";
|
|
||||||
|
|
||||||
export default function Container({ error = false, children, service }) {
|
export default function Container({ error = false, children, service }) {
|
||||||
const { settings } = useContext(SettingsContext);
|
const { settings } = useContext(SettingsContext);
|
||||||
|
|
||||||
|
@ -22,13 +22,13 @@ export default function Error({ error }) {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<details className="px-1 pb-1">
|
<details className="px-1 pb-1">
|
||||||
<summary className="block text-center mt-1 mb-0 mx-auto p-3 rounded bg-rose-900/80 hover:bg-rose-900/95 text-theme-900 cursor-pointer">
|
<summary className="block text-center mt-1 mb-0 mx-auto p-3 rounded-sm bg-rose-900/80 hover:bg-rose-900/95 text-theme-900 cursor-pointer">
|
||||||
<div className="flex items-center justify-center text-xs font-bold">
|
<div className="flex items-center justify-center text-xs font-bold">
|
||||||
<IoAlertCircle className="mr-1 w-5 h-5" />
|
<IoAlertCircle className="mr-1 w-5 h-5" />
|
||||||
{t("widget.api_error")} {error.message && t("widget.information")}
|
{t("widget.api_error")} {error.message && t("widget.information")}
|
||||||
</div>
|
</div>
|
||||||
</summary>
|
</summary>
|
||||||
<div className="bg-white dark:bg-theme-200/50 mt-2 rounded text-rose-900 text-xs font-mono whitespace-pre-wrap break-all">
|
<div className="bg-white dark:bg-theme-200/50 mt-2 rounded-sm text-rose-900 text-xs font-mono whitespace-pre-wrap break-all">
|
||||||
<ul className="p-4">
|
<ul className="p-4">
|
||||||
{error.message && (
|
{error.message && (
|
||||||
<li>
|
<li>
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
import { useContext } from "react";
|
import { useContext } from "react";
|
||||||
import classNames from "classnames";
|
import classNames from "classnames";
|
||||||
|
|
||||||
import { TabContext } from "utils/contexts/tab";
|
import { TabContext } from "utils/contexts/tab";
|
||||||
|
|
||||||
function slugify(tabName) {
|
function slugify(tabName) {
|
||||||
|
@ -2,7 +2,6 @@ import { useContext, Fragment } from "react";
|
|||||||
import { IoColorPalette } from "react-icons/io5";
|
import { IoColorPalette } from "react-icons/io5";
|
||||||
import { Popover, Transition } from "@headlessui/react";
|
import { Popover, Transition } from "@headlessui/react";
|
||||||
import classNames from "classnames";
|
import classNames from "classnames";
|
||||||
|
|
||||||
import { ColorContext } from "utils/contexts/color";
|
import { ColorContext } from "utils/contexts/color";
|
||||||
|
|
||||||
const colors = [
|
const colors = [
|
||||||
@ -40,7 +39,7 @@ export default function ColorToggle() {
|
|||||||
return (
|
return (
|
||||||
<div id="color" className="w-full self-center">
|
<div id="color" className="w-full self-center">
|
||||||
<Popover className="relative flex items-center">
|
<Popover className="relative flex items-center">
|
||||||
<Popover.Button className="outline-none">
|
<Popover.Button className="outline-hidden">
|
||||||
<IoColorPalette
|
<IoColorPalette
|
||||||
className="h-5 w-5 text-theme-800 dark:text-theme-200 transition duration-150 ease-in-out"
|
className="h-5 w-5 text-theme-800 dark:text-theme-200 transition duration-150 ease-in-out"
|
||||||
aria-hidden="true"
|
aria-hidden="true"
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
import { useContext } from "react";
|
import { useContext } from "react";
|
||||||
import { MdDarkMode, MdLightMode, MdToggleOff, MdToggleOn } from "react-icons/md";
|
import { MdDarkMode, MdLightMode, MdToggleOff, MdToggleOn } from "react-icons/md";
|
||||||
|
|
||||||
import { ThemeContext } from "utils/contexts/theme";
|
import { ThemeContext } from "utils/contexts/theme";
|
||||||
|
|
||||||
export default function ThemeToggle() {
|
export default function ThemeToggle() {
|
||||||
|
@ -1,9 +1,12 @@
|
|||||||
|
import cache from "memory-cache";
|
||||||
import { useTranslation } from "next-i18next";
|
import { useTranslation } from "next-i18next";
|
||||||
import useSWR from "swr";
|
import useSWR from "swr";
|
||||||
import { compareVersions } from "compare-versions";
|
import { compareVersions, validate } from "compare-versions";
|
||||||
import { MdNewReleases } from "react-icons/md";
|
import { MdNewReleases } from "react-icons/md";
|
||||||
|
|
||||||
export default function Version() {
|
const LATEST_RELEASE_CACHE_KEY = "latestRelease";
|
||||||
|
|
||||||
|
export default function Version({ disableUpdateCheck = false }) {
|
||||||
const { t, i18n } = useTranslation();
|
const { t, i18n } = useTranslation();
|
||||||
|
|
||||||
const buildTime = process.env.NEXT_PUBLIC_BUILDTIME?.length
|
const buildTime = process.env.NEXT_PUBLIC_BUILDTIME?.length
|
||||||
@ -12,8 +15,6 @@ export default function Version() {
|
|||||||
const revision = process.env.NEXT_PUBLIC_REVISION?.length ? process.env.NEXT_PUBLIC_REVISION : "dev";
|
const revision = process.env.NEXT_PUBLIC_REVISION?.length ? process.env.NEXT_PUBLIC_REVISION : "dev";
|
||||||
const version = process.env.NEXT_PUBLIC_VERSION?.length ? process.env.NEXT_PUBLIC_VERSION : "dev";
|
const version = process.env.NEXT_PUBLIC_VERSION?.length ? process.env.NEXT_PUBLIC_VERSION : "dev";
|
||||||
|
|
||||||
const { data: releaseData } = useSWR("/api/releases");
|
|
||||||
|
|
||||||
// use Intl.DateTimeFormat to format the date
|
// use Intl.DateTimeFormat to format the date
|
||||||
const formatDate = (date) => {
|
const formatDate = (date) => {
|
||||||
const options = {
|
const options = {
|
||||||
@ -24,7 +25,15 @@ export default function Version() {
|
|||||||
return new Intl.DateTimeFormat(i18n.language, options).format(new Date(date));
|
return new Intl.DateTimeFormat(i18n.language, options).format(new Date(date));
|
||||||
};
|
};
|
||||||
|
|
||||||
const latestRelease = releaseData?.[0];
|
let latestRelease = cache.get(LATEST_RELEASE_CACHE_KEY);
|
||||||
|
|
||||||
|
const { data: releaseData } = useSWR(latestRelease || disableUpdateCheck ? null : "/api/releases");
|
||||||
|
|
||||||
|
if (releaseData) {
|
||||||
|
latestRelease = releaseData?.[0];
|
||||||
|
// cache the latest release for 1h
|
||||||
|
cache.put(LATEST_RELEASE_CACHE_KEY, latestRelease, 3600000);
|
||||||
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div id="version" className="flex flex-row items-center">
|
<div id="version" className="flex flex-row items-center">
|
||||||
@ -44,7 +53,7 @@ export default function Version() {
|
|||||||
</a>
|
</a>
|
||||||
)}
|
)}
|
||||||
</span>
|
</span>
|
||||||
{version === "main" || version === "dev" || version === "nightly"
|
{!validate(version)
|
||||||
? null
|
? null
|
||||||
: releaseData &&
|
: releaseData &&
|
||||||
latestRelease &&
|
latestRelease &&
|
||||||
|
@ -4,14 +4,13 @@ import { FaMemory, FaRegClock, FaThermometerHalf } from "react-icons/fa";
|
|||||||
import { FiCpu, FiHardDrive } from "react-icons/fi";
|
import { FiCpu, FiHardDrive } from "react-icons/fi";
|
||||||
import { useTranslation } from "next-i18next";
|
import { useTranslation } from "next-i18next";
|
||||||
import classNames from "classnames";
|
import classNames from "classnames";
|
||||||
|
import { SettingsContext } from "utils/contexts/settings";
|
||||||
|
|
||||||
import Error from "../widget/error";
|
import Error from "../widget/error";
|
||||||
import Resource from "../widget/resource";
|
import Resource from "../widget/resource";
|
||||||
import Resources from "../widget/resources";
|
import Resources from "../widget/resources";
|
||||||
import WidgetLabel from "../widget/widget_label";
|
import WidgetLabel from "../widget/widget_label";
|
||||||
|
|
||||||
import { SettingsContext } from "utils/contexts/settings";
|
|
||||||
|
|
||||||
const cpuSensorLabels = ["cpu_thermal", "Core", "Tctl"];
|
const cpuSensorLabels = ["cpu_thermal", "Core", "Tctl"];
|
||||||
|
|
||||||
function convertToFahrenheit(t) {
|
function convertToFahrenheit(t) {
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
|
import ResolvedIcon from "components/resolvedicon";
|
||||||
|
|
||||||
import Container from "../widget/container";
|
import Container from "../widget/container";
|
||||||
import Raw from "../widget/raw";
|
import Raw from "../widget/raw";
|
||||||
|
|
||||||
import ResolvedIcon from "components/resolvedicon";
|
|
||||||
|
|
||||||
export default function Logo({ options }) {
|
export default function Logo({ options }) {
|
||||||
return (
|
return (
|
||||||
<Container
|
<Container
|
||||||
|
@ -191,7 +191,7 @@ export default function Search({ options }) {
|
|||||||
<div>
|
<div>
|
||||||
<Listbox.Button
|
<Listbox.Button
|
||||||
className="
|
className="
|
||||||
absolute right-0.5 bottom-0.5 rounded-r-md px-4 py-2 border-1
|
absolute right-0.5 bottom-0.5 rounded-r-md px-4 py-2
|
||||||
text-white font-medium text-sm
|
text-white font-medium text-sm
|
||||||
bg-theme-600/40 dark:bg-white/10
|
bg-theme-600/40 dark:bg-white/10
|
||||||
focus:ring-theme-500 dark:focus:ring-white/50"
|
focus:ring-theme-500 dark:focus:ring-white/50"
|
||||||
@ -212,7 +212,7 @@ export default function Search({ options }) {
|
|||||||
<Listbox.Options
|
<Listbox.Options
|
||||||
className="absolute right-0 z-10 mt-1 origin-top-right rounded-md
|
className="absolute right-0 z-10 mt-1 origin-top-right rounded-md
|
||||||
bg-theme-100 dark:bg-theme-600 shadow-lg
|
bg-theme-100 dark:bg-theme-600 shadow-lg
|
||||||
ring-1 ring-black ring-opacity-5 focus:outline-none"
|
ring-1 ring-black ring-opacity-5 focus:outline-hidden"
|
||||||
>
|
>
|
||||||
<div className="flex flex-col">
|
<div className="flex flex-col">
|
||||||
{availableProviderIds.map((providerId) => {
|
{availableProviderIds.map((providerId) => {
|
||||||
|
@ -40,7 +40,7 @@ export default function Widget({ options }) {
|
|||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
onClick={() => setViewingPercentChange(!viewingPercentChange)}
|
onClick={() => setViewingPercentChange(!viewingPercentChange)}
|
||||||
className="flex items-center w-full h-full hover:outline-none focus:outline-none"
|
className="flex items-center w-full h-full hover:outline-hidden focus:outline-hidden"
|
||||||
>
|
>
|
||||||
<FaChartLine className="flex-none w-5 h-5 text-theme-800 dark:text-theme-200 mr-2" />
|
<FaChartLine className="flex-none w-5 h-5 text-theme-800 dark:text-theme-200 mr-2" />
|
||||||
<div className="flex flex-wrap items-center gap-0.5">
|
<div className="flex flex-wrap items-center gap-0.5">
|
||||||
@ -49,7 +49,7 @@ export default function Widget({ options }) {
|
|||||||
stock && (
|
stock && (
|
||||||
<div
|
<div
|
||||||
key={stock.ticker}
|
key={stock.ticker}
|
||||||
className="rounded h-full text-xs px-1 w-[4.75rem] flex flex-col items-center justify-center"
|
className="rounded-sm h-full text-xs px-1 w-[4.75rem] flex flex-col items-center justify-center"
|
||||||
>
|
>
|
||||||
<span className="text-theme-800 dark:text-theme-200 text-xs">
|
<span className="text-theme-800 dark:text-theme-200 text-xs">
|
||||||
{stock.ticker.split(":").pop()}
|
{stock.ticker.split(":").pop()}
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
import dynamic from "next/dynamic";
|
import dynamic from "next/dynamic";
|
||||||
|
|
||||||
import ErrorBoundary from "components/errorboundry";
|
import ErrorBoundary from "components/errorboundry";
|
||||||
|
|
||||||
const widgetMappings = {
|
const widgetMappings = {
|
||||||
|
@ -1,13 +1,12 @@
|
|||||||
import classNames from "classnames";
|
import classNames from "classnames";
|
||||||
import { useContext } from "react";
|
import { useContext } from "react";
|
||||||
|
import { SettingsContext } from "utils/contexts/settings";
|
||||||
|
|
||||||
import WidgetIcon from "./widget_icon";
|
import WidgetIcon from "./widget_icon";
|
||||||
import PrimaryText from "./primary_text";
|
import PrimaryText from "./primary_text";
|
||||||
import SecondaryText from "./secondary_text";
|
import SecondaryText from "./secondary_text";
|
||||||
import Raw from "./raw";
|
import Raw from "./raw";
|
||||||
|
|
||||||
import { SettingsContext } from "utils/contexts/settings";
|
|
||||||
|
|
||||||
export function getAllClasses(options, additionalClassNames = "") {
|
export function getAllClasses(options, additionalClassNames = "") {
|
||||||
if (options?.style?.header === "boxedWidgets") {
|
if (options?.style?.header === "boxedWidgets") {
|
||||||
if (options?.style?.cardBlur !== undefined) {
|
if (options?.style?.cardBlur !== undefined) {
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user