mirror of
https://github.com/DI0IK/homepage-plus.git
synced 2025-07-06 12:18:48 +00:00
Compare commits
65 commits
v1.0.3-plu
...
homepage-p
Author | SHA1 | Date | |
---|---|---|---|
1370cd195a | |||
![]() |
2376184b14 | ||
![]() |
7272823d20 | ||
![]() |
4a9ca62efd | ||
![]() |
a35da39c03 | ||
![]() |
d99c3cb691 | ||
![]() |
1fe4f49771 | ||
![]() |
0a1bf3b2be | ||
![]() |
e2c997f29d | ||
![]() |
ae9fbdcb8b | ||
![]() |
6597ec566b | ||
![]() |
52399e21e1 | ||
![]() |
dbc26e835c | ||
![]() |
a59ee5a605 | ||
![]() |
f46568ec2a | ||
![]() |
5e946ed2c2 | ||
![]() |
6741eb723d | ||
![]() |
1666106dcd | ||
![]() |
eda06965fa | ||
![]() |
954ab54493 | ||
![]() |
30cb893354 | ||
![]() |
4567427b9c | ||
![]() |
ee7e8fab61 | ||
![]() |
313835c0e6 | ||
![]() |
999dade861 | ||
![]() |
2cabe77b55 | ||
![]() |
0a50d5a6aa | ||
![]() |
e19dcc2729 | ||
![]() |
cadf1433af | ||
![]() |
6bae078a8d | ||
![]() |
77bbdc6a04 | ||
![]() |
1f8fd1c69d | ||
![]() |
5d557844cc | ||
![]() |
a4b07b91fe | ||
![]() |
d853bbfe44 | ||
![]() |
7fd5e6ccb1 | ||
![]() |
aed602ad70 | ||
![]() |
fa28a11658 | ||
![]() |
a3b693e2b6 | ||
![]() |
708c4e64d1 | ||
![]() |
11a6b5d0b8 | ||
![]() |
ce0102eb6f | ||
![]() |
42f1ed3c47 | ||
![]() |
dca23e8547 | ||
![]() |
8d20f22932 | ||
![]() |
071b5275bc | ||
![]() |
de9c015f7f | ||
![]() |
b4dc53c7c0 | ||
![]() |
934ad3a6f1 | ||
![]() |
6fbe080b28 | ||
![]() |
4047f8d6e8 | ||
![]() |
59cd5564f8 | ||
![]() |
5f19e4af91 | ||
![]() |
5ea46881ee | ||
![]() |
9545757bb9 | ||
![]() |
95507aab54 | ||
![]() |
564dfb7ce3 | ||
![]() |
7b72442114 | ||
![]() |
65370a7668 | ||
![]() |
6e9339b14c | ||
![]() |
241c786710 | ||
![]() |
801ce479d8 | ||
![]() |
16730ffec2 | ||
![]() |
b35dd80e8c | ||
![]() |
82b159bf14 |
375 changed files with 3274 additions and 1924 deletions
|
@ -16,11 +16,11 @@
|
|||
**/compose*
|
||||
**/Dockerfile*
|
||||
**/node_modules
|
||||
!.next/standalone/node_modules
|
||||
**/npm-debug.log
|
||||
**/obj
|
||||
**/secrets.dev.yaml
|
||||
**/values.dev.yaml
|
||||
**/.next
|
||||
README.md
|
||||
config/
|
||||
k3d/
|
||||
|
|
4
.github/workflows/crowdin.yml
vendored
4
.github/workflows/crowdin.yml
vendored
|
@ -2,8 +2,8 @@ name: Crowdin Action
|
|||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
- cron: '2 */12 * * *'
|
||||
# schedule:
|
||||
# - cron: '2 */12 * * *'
|
||||
push:
|
||||
paths: [
|
||||
'/public/locales/en/**',
|
||||
|
|
146
.github/workflows/docker-publish.yml
vendored
146
.github/workflows/docker-publish.yml
vendored
|
@ -1,20 +1,16 @@
|
|||
name: Docker
|
||||
|
||||
# This workflow uses actions that are not certified by GitHub.
|
||||
# They are provided by a third-party and are governed by
|
||||
# separate terms of service, privacy policy, and support
|
||||
# documentation.
|
||||
name: Docker CI
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '20 0 * * *'
|
||||
# schedule:
|
||||
# - cron: '20 0 * * *'
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
- feature/**
|
||||
- dev
|
||||
- homepage-plus
|
||||
# Publish semver tags as releases.
|
||||
tags: [ 'v*.*.*' ]
|
||||
tags: [ 'v*.*.*-plus' ]
|
||||
paths-ignore:
|
||||
- 'docs/**'
|
||||
- 'mkdocs.yml'
|
||||
|
@ -24,91 +20,58 @@ on:
|
|||
- 'docs/**'
|
||||
- 'mkdocs.yml'
|
||||
merge_group:
|
||||
workflow_dispatch:
|
||||
|
||||
env:
|
||||
# github.repository as <account>/<repo>
|
||||
IMAGE_NAME: ${{ github.repository }}
|
||||
|
||||
|
||||
jobs:
|
||||
pre-commit:
|
||||
name: Linting Checks
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
-
|
||||
name: Checkout repository
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
-
|
||||
name: Install python
|
||||
|
||||
- name: Install python
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: 3.x
|
||||
-
|
||||
name: Check files
|
||||
|
||||
- name: Check files
|
||||
uses: pre-commit/action@v3.0.1
|
||||
-
|
||||
name: Install pnpm
|
||||
|
||||
- name: Install pnpm
|
||||
uses: pnpm/action-setup@v4
|
||||
with:
|
||||
version: 10
|
||||
run_install: false
|
||||
-
|
||||
name: Install Node.js
|
||||
|
||||
- name: Setup Node.js
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 20
|
||||
cache: 'pnpm'
|
||||
-
|
||||
name: Install dependencies
|
||||
|
||||
- name: Install dependencies
|
||||
run: pnpm install
|
||||
-
|
||||
name: Lint frontend
|
||||
|
||||
- name: Lint frontend
|
||||
run: pnpm run lint
|
||||
|
||||
build:
|
||||
name: Docker Build & Push
|
||||
if: github.repository == 'gethomepage/homepage'
|
||||
runs-on: self-hosted
|
||||
runs-on: ubuntu-latest
|
||||
needs:
|
||||
- pre-commit
|
||||
permissions:
|
||||
contents: read
|
||||
packages: write
|
||||
# This is used to complete the identity challenge
|
||||
# with sigstore/fulcio when running outside of PRs.
|
||||
id-token: write
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4
|
||||
|
||||
# Login to Docker Registry
|
||||
# https://github.com/docker/login-action
|
||||
- name: Log into registry ${{ env.REGISTRY }}
|
||||
if: github.event_name != 'pull_request'
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.actor }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Login to Docker Hub
|
||||
if: github.event_name != 'pull_request'
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
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
|
||||
# https://github.com/docker/metadata-action
|
||||
- name: Extract Docker metadata
|
||||
id: meta
|
||||
uses: docker/metadata-action@v5
|
||||
|
@ -116,11 +79,69 @@ jobs:
|
|||
images: |
|
||||
${{ env.IMAGE_NAME }}
|
||||
ghcr.io/${{ env.IMAGE_NAME }}
|
||||
tags: |
|
||||
# Default tags
|
||||
type=schedule,pattern=nightly
|
||||
type=ref,event=branch
|
||||
type=ref,event=tag
|
||||
# Versioning tags
|
||||
type=semver,pattern=v{{version}}
|
||||
type=semver,pattern=v{{major}}.{{minor}}
|
||||
type=semver,pattern=v{{major}}
|
||||
flavor: |
|
||||
latest=auto
|
||||
|
||||
# Build and push Docker image with Buildx (don't push on PR)
|
||||
# https://github.com/docker/build-push-action
|
||||
- name: Next.js build cache
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: .next/cache
|
||||
key: nextjs-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml') }}-${{ hashFiles('**/*.js', '**/*.jsx') }}
|
||||
restore-keys: |
|
||||
nextjs-${{ runner.os }}-${{ hashFiles('pnpm-lock.yaml') }}
|
||||
|
||||
- name: Install pnpm
|
||||
uses: pnpm/action-setup@v4
|
||||
with:
|
||||
version: 10
|
||||
run_install: false
|
||||
|
||||
- name: Setup Node.js
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 20
|
||||
cache: 'pnpm'
|
||||
|
||||
- name: Install dependencies
|
||||
run: pnpm install
|
||||
|
||||
- name: Build app
|
||||
run: |
|
||||
NEXT_PUBLIC_BUILDTIME="${{ fromJSON(steps.meta.outputs.json).labels['org.opencontainers.image.created'] }}" \
|
||||
NEXT_PUBLIC_VERSION="${{ fromJSON(steps.meta.outputs.json).labels['org.opencontainers.image.version'] }}" \
|
||||
NEXT_PUBLIC_REVISION="${{ fromJSON(steps.meta.outputs.json).labels['org.opencontainers.image.revision'] }}" \
|
||||
pnpm run build
|
||||
|
||||
- name: Log into registry ${{ env.REGISTRY }}
|
||||
if: github.event_name != 'pull_request'
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.actor }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Login to Docker Hub
|
||||
if: github.event_name != 'pull_request'
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
|
||||
- name: Setup QEMU
|
||||
uses: docker/setup-qemu-action@v3.6.0
|
||||
|
||||
- name: Setup Docker buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: Build and push Docker image
|
||||
id: build-and-push
|
||||
uses: docker/build-push-action@v6
|
||||
|
@ -130,18 +151,15 @@ jobs:
|
|||
tags: ${{ steps.meta.outputs.tags }}
|
||||
labels: ${{ steps.meta.outputs.labels }}
|
||||
build-args: |
|
||||
CI=true
|
||||
BUILDTIME=${{ fromJSON(steps.meta.outputs.json).labels['org.opencontainers.image.created'] }}
|
||||
VERSION=${{ fromJSON(steps.meta.outputs.json).labels['org.opencontainers.image.version'] }}
|
||||
REVISION=${{ fromJSON(steps.meta.outputs.json).labels['org.opencontainers.image.revision'] }}
|
||||
# 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
|
||||
cache-from: type=local,src=/tmp/.buildx-cache
|
||||
cache-to: type=local,dest=/tmp/.buildx-cache-new,mode=max
|
||||
|
||||
# Temp fix
|
||||
# https://github.com/docker/build-push-action/issues/252
|
||||
# https://github.com/moby/buildkit/issues/1896
|
||||
# https://github.com/docker/build-push-action/issues/252 / https://github.com/moby/buildkit/issues/1896
|
||||
- name: Move cache
|
||||
run: |
|
||||
rm -rf /tmp/.buildx-cache
|
||||
|
|
2
.github/workflows/docs-publish.yml
vendored
2
.github/workflows/docs-publish.yml
vendored
|
@ -55,7 +55,7 @@ jobs:
|
|||
run: MKINSIDERS=false mkdocs build
|
||||
deploy:
|
||||
name: Build & Deploy
|
||||
if: github.repository == 'gethomepage/homepage' && github.event_name != 'pull_request'
|
||||
if: github.repository == 'gethomepage/homepage' && github.event_name != 'pull_request' && github.ref == 'refs/heads/main'
|
||||
runs-on: ubuntu-latest
|
||||
needs:
|
||||
- pre-commit
|
||||
|
|
|
@ -9,11 +9,14 @@ repos:
|
|||
- id: check-yaml
|
||||
exclude: "(^mkdocs\\.yml$)"
|
||||
- id: check-added-large-files
|
||||
- repo: https://github.com/pre-commit/mirrors-prettier
|
||||
rev: 'v3.0.3'
|
||||
- repo: https://github.com/rbubley/mirrors-prettier
|
||||
rev: 'v3.3.3'
|
||||
hooks:
|
||||
- id: prettier
|
||||
types_or:
|
||||
- javascript
|
||||
- markdown
|
||||
- jsx
|
||||
additional_dependencies:
|
||||
- prettier@3.3.3
|
||||
- 'prettier-plugin-organize-imports@4.1.0'
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
{}
|
5
.prettierrc.js
Normal file
5
.prettierrc.js
Normal file
|
@ -0,0 +1,5 @@
|
|||
const config = {
|
||||
plugins: [require("prettier-plugin-organize-imports")],
|
||||
};
|
||||
|
||||
module.exports = config;
|
78
Dockerfile
78
Dockerfile
|
@ -1,67 +1,63 @@
|
|||
# Install dependencies only when needed
|
||||
FROM docker.io/node:22-alpine AS deps
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
COPY --link package.json pnpm-lock.yaml* ./
|
||||
|
||||
SHELL ["/bin/ash", "-xeo", "pipefail", "-c"]
|
||||
RUN apk add --no-cache libc6-compat \
|
||||
&& apk add --no-cache --virtual .gyp python3 make g++ \
|
||||
&& npm install -g pnpm
|
||||
|
||||
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 install -r --offline
|
||||
|
||||
# Rebuild the source code only when needed
|
||||
FROM docker.io/node:22-alpine AS builder
|
||||
# =========================
|
||||
# Builder Stage
|
||||
# =========================
|
||||
FROM node:22-slim AS builder
|
||||
WORKDIR /app
|
||||
|
||||
# Setup
|
||||
RUN mkdir config
|
||||
COPY . .
|
||||
|
||||
ARG CI
|
||||
ARG BUILDTIME
|
||||
ARG VERSION
|
||||
ARG REVISION
|
||||
ENV CI=$CI
|
||||
|
||||
COPY --link --from=deps /app/node_modules ./node_modules/
|
||||
COPY . .
|
||||
# Install and build only outside CI
|
||||
RUN if [ "$CI" != "true" ]; then \
|
||||
corepack enable && corepack prepare pnpm@latest --activate && \
|
||||
pnpm install --frozen-lockfile --prefer-offline && \
|
||||
NEXT_TELEMETRY_DISABLED=1 \
|
||||
NEXT_PUBLIC_BUILDTIME=$BUILDTIME \
|
||||
NEXT_PUBLIC_VERSION=$VERSION \
|
||||
NEXT_PUBLIC_REVISION=$REVISION \
|
||||
pnpm run build; \
|
||||
else \
|
||||
echo "✅ Using prebuilt app from CI context"; \
|
||||
fi
|
||||
|
||||
SHELL ["/bin/ash", "-xeo", "pipefail", "-c"]
|
||||
RUN npm install -g pnpm \
|
||||
&& pnpm run telemetry \
|
||||
&& NEXT_PUBLIC_BUILDTIME=$BUILDTIME NEXT_PUBLIC_VERSION=$VERSION NEXT_PUBLIC_REVISION=$REVISION pnpm run build
|
||||
|
||||
# Production image, copy all the files and run next
|
||||
FROM docker.io/node:22-alpine AS runner
|
||||
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.url="https://github.com/gethomepage/homepage"
|
||||
# =========================
|
||||
# Runtime Stage
|
||||
# =========================
|
||||
FROM node:22-alpine AS runner
|
||||
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.url="https://github.com/di0ik/homepage-plus"
|
||||
LABEL org.opencontainers.image.documentation='https://github.com/gethomepage/homepage/wiki'
|
||||
LABEL org.opencontainers.image.source='https://github.com/gethomepage/homepage'
|
||||
LABEL org.opencontainers.image.source='https://github.com/di0ik/homepage-plus'
|
||||
LABEL org.opencontainers.image.licenses='Apache-2.0'
|
||||
|
||||
ENV NODE_ENV=production
|
||||
|
||||
# Setup
|
||||
WORKDIR /app
|
||||
|
||||
# Copy files from context (this allows the files to copy before the builder stage is done).
|
||||
COPY --link --chown=1000:1000 package.json next.config.js ./
|
||||
# Copy some files from context
|
||||
COPY --link --chown=1000:1000 /public ./public/
|
||||
|
||||
# Copy files from builder
|
||||
COPY --link --from=builder --chown=1000:1000 /app/.next/standalone ./
|
||||
COPY --link --from=builder --chown=1000:1000 /app/.next/static/ ./.next/static/
|
||||
COPY --link --chmod=755 docker-entrypoint.sh /usr/local/bin/
|
||||
|
||||
RUN apk add --no-cache su-exec
|
||||
# Copy only necessary files from the build stage
|
||||
COPY --link --from=builder --chown=1000:1000 /app/.next/standalone/ ./
|
||||
COPY --link --from=builder --chown=1000:1000 /app/.next/static/ ./.next/static
|
||||
|
||||
RUN apk add --no-cache su-exec iputils-ping
|
||||
|
||||
ENV NODE_ENV=production
|
||||
ENV HOSTNAME=0.0.0.0
|
||||
ENV PORT=3000
|
||||
EXPOSE $PORT
|
||||
|
||||
HEALTHCHECK --interval=10s --timeout=3s --start-period=20s \
|
||||
CMD wget --no-verbose --tries=1 --spider --no-check-certificate http://127.0.0.1:$PORT/api/healthcheck || exit 1
|
||||
CMD wget --no-verbose --tries=1 --spider http://127.0.0.1:$PORT/api/healthcheck || exit 1
|
||||
|
||||
ENTRYPOINT ["docker-entrypoint.sh"]
|
||||
CMD ["node", "server.js"]
|
||||
|
|
|
@ -80,7 +80,7 @@ services:
|
|||
image: ghcr.io/gethomepage/homepage:latest
|
||||
container_name: homepage
|
||||
environment:
|
||||
HOMEPAGE_ALLOWED_HOSTS: gethomepage.dev # required, may need port
|
||||
HOMEPAGE_ALLOWED_HOSTS: gethomepage.dev # required, may need port. See gethomepage.dev/installation/#homepage_allowed_hosts
|
||||
PUID: 1000 # optional, your user id
|
||||
PGID: 1000 # optional, your group id
|
||||
ports:
|
||||
|
|
|
@ -15,7 +15,7 @@ export HOMEPAGE_BUILDTIME=$(date +%s)
|
|||
# Set privileges for /app but only if pid 1 user is root and we are dropping privileges.
|
||||
# If container is run as an unprivileged user, it means owner already handled ownership setup on their own.
|
||||
# Running chown in that case (as non-root) will cause error
|
||||
[ "$(id -u)" == "0" ] && [ "${PUID}" != "0" ] && chown -R ${PUID}:${PGID} /app
|
||||
[ "$(id -u)" == "0" ] && [ "${PUID}" != "0" ] && chown -R ${PUID}:${PGID} /app/config /app/public
|
||||
|
||||
# Drop privileges (when asked to) if root, otherwise run as current user
|
||||
if [ "$(id -u)" == "0" ] && [ "${PUID}" != "0" ]; then
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
.md-typeset[data-page-id="landing"] .md-header-anchor {
|
||||
display: none;
|
||||
}
|
|
@ -25,13 +25,13 @@ To configure Kubernetes gateway-api, ingress or ingressRoute service discovery,
|
|||
Example settings:
|
||||
|
||||
```yaml
|
||||
ingress: true # enable ingress only
|
||||
ingress: true # default, enable ingress only
|
||||
```
|
||||
|
||||
or
|
||||
|
||||
```yaml
|
||||
ingress: true # enable ingress
|
||||
ingress: true # default, enable ingress
|
||||
traefik: true # enable traefik ingressRoute
|
||||
gateway: true # enable gateway-api
|
||||
```
|
||||
|
|
|
@ -78,7 +78,7 @@ background:
|
|||
You can apply a blur filter to the service & bookmark cards. Note this option is incompatible with the background blur, saturate and brightness filters.
|
||||
|
||||
```yaml
|
||||
cardBlur: sm # sm, "", md, etc... see https://tailwindcss.com/docs/backdrop-blur
|
||||
cardBlur: xs # xs, md, etc... see https://tailwindcss.com/docs/backdrop-blur
|
||||
```
|
||||
|
||||
## Favicon
|
||||
|
@ -254,15 +254,29 @@ layout:
|
|||
columns: 4
|
||||
```
|
||||
|
||||
### Five Columns
|
||||
### Full Width
|
||||
|
||||
You can add a fifth column to services (when `style: columns` which is default) by adding:
|
||||
You can make homepage take up the entire window width by adding:
|
||||
|
||||
```yaml
|
||||
fiveColumns: true
|
||||
fullWidth: true
|
||||
```
|
||||
|
||||
By default homepage will max out at 4 columns for services with `columns` style
|
||||
### Maximum Group Columns
|
||||
|
||||
You can set the maximum number of columns of groups on larger screen sizes (note this is only for groups with the default `style: columns`, not groups with `stle: row`) by adding:
|
||||
|
||||
```yaml
|
||||
maxGroupColumns: 8 # default is 4 for services, 6 for bookmarks, max 8
|
||||
```
|
||||
|
||||
By default homepage will max out at 4 columns for services and 6 for bookmarks, thus the minimum for this setting is _5_. Of course, if you're setting this to higher numbers, you may want to consider enabling the [fullWidth](#full-width) option as well.
|
||||
|
||||
If you want to set the maximum columns for bookmark groups separately, you can do so by adding:
|
||||
|
||||
```yaml
|
||||
maxBookmarkGroupColumns: 6 # default is 6, max 8
|
||||
```
|
||||
|
||||
### Collapsible sections
|
||||
|
||||
|
@ -542,3 +556,42 @@ or per service widget (`services.yaml`) with:
|
|||
```
|
||||
|
||||
If either value is set to true, the error message will be hidden.
|
||||
|
||||
## Identity Based Visibiltiy
|
||||
|
||||
Basic user identity integration is implemeted via an `identity` section. An identity provider can be configured using the `provider` section with the given type. Currently the only provider supported is `proxy`, where the users identification and group membership are passed via HTTP Request headers (in plaintext). The expectation is that the application will be accessed only via an authenticating proxy (i.e traefik or nginx).
|
||||
|
||||
The group and user headers are both configurable like so:
|
||||
|
||||
```yaml
|
||||
identity:
|
||||
provider:
|
||||
type: proxy
|
||||
groupHeader: "X-group-header"
|
||||
userHeader: "X-user-header"
|
||||
```
|
||||
|
||||
Identity based visibility can be configured on the service, bookmark, and widget level using the `allowUsers` and `allowGroups` list. The default is to allow all users and groups.
|
||||
|
||||
```yaml
|
||||
- Example Servie:
|
||||
allowGroups:
|
||||
- Group1
|
||||
- Group2
|
||||
- Group3
|
||||
allowUsers:
|
||||
- User1
|
||||
- User2
|
||||
- User3
|
||||
```
|
||||
|
||||
Identity visibility for groups can be set in the `groups` under `identity`. In general the `groups` tag follows the format of the `layout` section. For example:
|
||||
|
||||
```yaml
|
||||
identity:
|
||||
groups:
|
||||
- My Service Group:
|
||||
allowGroups: ["Group1", "Group2"]
|
||||
- My Other Group:
|
||||
allowGroups: ["Group1"]
|
||||
```
|
||||
|
|
|
@ -16,7 +16,7 @@ services:
|
|||
- /path/to/config:/app/config # Make sure your local config directory exists
|
||||
- /var/run/docker.sock:/var/run/docker.sock # (optional) For docker integrations
|
||||
environment:
|
||||
HOMEPAGE_ALLOWED_HOSTS: gethomepage.dev # required, may need port
|
||||
HOMEPAGE_ALLOWED_HOSTS: gethomepage.dev # required, may need port. See gethomepage.dev/installation/#homepage_allowed_hosts
|
||||
```
|
||||
|
||||
### Running as non-root
|
||||
|
@ -38,7 +38,7 @@ services:
|
|||
- /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
|
||||
environment:
|
||||
HOMEPAGE_ALLOWED_HOSTS: gethomepage.dev # required, may need port
|
||||
HOMEPAGE_ALLOWED_HOSTS: gethomepage.dev # required, may need port. See gethomepage.dev/installation/#homepage_allowed_hosts
|
||||
PUID: $PUID
|
||||
PGID: $PGID
|
||||
```
|
||||
|
|
|
@ -13,24 +13,28 @@ You have a few options for deploying homepage, depending on your needs. We offer
|
|||
<br>
|
||||
|
||||
<div class="grid cards" style="margin: 0 auto;" markdown>
|
||||
:simple-docker: [ Install on Docker :octicons-arrow-right-24:](docker.md)
|
||||
[:simple-docker: Install on Docker :octicons-arrow-right-24:](docker.md)
|
||||
{ .card }
|
||||
|
||||
:simple-kubernetes: [ Install on Kubernetes :octicons-arrow-right-24:](k8s.md)
|
||||
[:simple-kubernetes: Install on Kubernetes :octicons-arrow-right-24:](k8s.md)
|
||||
{ .card }
|
||||
|
||||
:simple-unraid: [ Install on UNRAID :octicons-arrow-right-24:](unraid.md)
|
||||
[:simple-unraid: Install on UNRAID :octicons-arrow-right-24:](unraid.md)
|
||||
{ .card }
|
||||
|
||||
:simple-nextdotjs: [ Building from source :octicons-arrow-right-24:](source.md)
|
||||
[:simple-nextdotjs: Building from source :octicons-arrow-right-24:](source.md)
|
||||
{ .card }
|
||||
|
||||
</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 (no spaces) list of allowed hosts (sometimes with the port) that can access your homepage. See the [docker](docker.md) and [source](source.md) installation pages for more information.
|
||||
As of v1.0 there is one required environment variable to access homepage via a URL other than `localhost`, <code>HOMEPAGE_ALLOWED_HOSTS</code>. The setting helps prevent certain kinds of attacks when retrieving data from the homepage API proxy.
|
||||
|
||||
`localhost:3000` and `127.0.0.1:3000` are always allowed, but you can add a domain or IP address to this list to allow access from that host such as `HOMEPAGE_ALLOWED_HOSTS=gethomepage.dev,192.168.1.2:1234`, etc.
|
||||
The value is a comma-separated (no spaces) list of allowed hosts (sometimes with the port) that can host your homepage install. See the [docker](docker.md), [kubernetes](k8s.md) and [source](source.md) installation pages for more information about where / how to set the variable.
|
||||
|
||||
`localhost:3000` and `127.0.0.1:3000` are always included, but you can add a domain or IP address to this list to allow that host such as `HOMEPAGE_ALLOWED_HOSTS=gethomepage.dev,192.168.1.2:1234`, etc.
|
||||
|
||||
If you are seeing errors about host validation, check the homepage logs and ensure that the host exactly as output in the logs is in the `HOMEPAGE_ALLOWED_HOSTS` list.
|
||||
|
||||
This can be disabled by setting `HOMEPAGE_ALLOWED_HOSTS` to `*` but this is not recommended.
|
||||
|
|
|
@ -225,7 +225,7 @@ spec:
|
|||
imagePullPolicy: Always
|
||||
env:
|
||||
- name: HOMEPAGE_ALLOWED_HOSTS
|
||||
value: gethomepage.dev # required, may need port
|
||||
value: gethomepage.dev # required, may need port. See gethomepage.dev/installation/#homepage_allowed_hosts
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: 3000
|
||||
|
|
|
@ -9,7 +9,13 @@ First, clone the repository:
|
|||
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):
|
||||
If `pnpm` is not installed, install it:
|
||||
|
||||
```bash
|
||||
npm install -g pnpm
|
||||
```
|
||||
|
||||
Then install dependencies and build the production bundle:
|
||||
|
||||
```bash
|
||||
pnpm install
|
||||
|
@ -25,3 +31,5 @@ HOMEPAGE_ALLOWED_HOSTS=gethomepage.dev:1234 pnpm start
|
|||
```
|
||||
|
||||
When updating homepage versions you will need to re-build the static files i.e. repeat the process above.
|
||||
|
||||
See [HOMEPAGE_ALLOWED_HOSTS](index.md#homepage_allowed_hosts) for more information on this environment variable.
|
||||
|
|
|
@ -286,3 +286,13 @@ body[data-md-color-scheme="default"] {
|
|||
.md-tabs__link {
|
||||
transform: translateZ(0);
|
||||
}
|
||||
|
||||
.grid.cards .card {
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.grid.cards .card a {
|
||||
display: block;
|
||||
padding: 0.8rem;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
|
|
@ -70,7 +70,9 @@ If, after correctly adding and mapping your custom icons via the [Icons](../conf
|
|||
|
||||
## Disabling IPv6
|
||||
|
||||
If you are having issues with certain widgets that are unable to reach public APIs (e.g. weather), you may need to disable IPv6 on your host machine. This can be done by adding the following to your `docker-compose.yml` file (or for docker run, the equivalent flag):
|
||||
If you are having issues with certain widgets that are unable to reach public APIs (e.g. weather), in certain setups you may need to disable IPv6. You can set the environment variable `HOMEPAGE_PROXY_DISABLE_IPV6` to `true` to disable IPv6 for the homepage proxy.
|
||||
|
||||
Alternatively, you can use the `sysctls` option in your docker-compose file to disable IPv6 for the homepage container completely:
|
||||
|
||||
```yaml
|
||||
services:
|
||||
|
@ -79,12 +81,3 @@ services:
|
|||
sysctls:
|
||||
- net.ipv6.conf.all.disable_ipv6=1
|
||||
```
|
||||
|
||||
or disable IPv6 for the docker network:
|
||||
|
||||
```yaml
|
||||
networks:
|
||||
some_network:
|
||||
driver: bridge
|
||||
enable_ipv6: false
|
||||
```
|
||||
|
|
|
@ -19,27 +19,22 @@ widget:
|
|||
requestBody: # optional, can be string or object, see below
|
||||
display: # optional, default to block, see below
|
||||
mappings:
|
||||
- field: key # needs to be YAML string or object
|
||||
- field: key
|
||||
label: Field 1
|
||||
format: text # optional - defaults to text
|
||||
- field: # needs to be YAML string or object
|
||||
path:
|
||||
to: key2
|
||||
- field: path.to.key2
|
||||
format: number # optional - defaults to text
|
||||
label: Field 2
|
||||
- field: # needs to be YAML string or object
|
||||
path:
|
||||
to:
|
||||
another: key3
|
||||
- field: path.to.another.key3
|
||||
label: Field 3
|
||||
format: percent # optional - defaults to text
|
||||
- field: key # needs to be YAML string or object
|
||||
- field: key
|
||||
label: Field 4
|
||||
format: date # optional - defaults to text
|
||||
locale: nl # optional
|
||||
dateStyle: long # optional - defaults to "long". Allowed values: `["full", "long", "medium", "short"]`.
|
||||
timeStyle: medium # optional - Allowed values: `["full", "long", "medium", "short"]`.
|
||||
- field: key # needs to be YAML string or object
|
||||
- field: key
|
||||
label: Field 5
|
||||
format: relativeDate # optional - defaults to text
|
||||
locale: nl # optional
|
||||
|
@ -49,9 +44,7 @@ widget:
|
|||
label: Field 6
|
||||
format: text
|
||||
additionalField: # optional
|
||||
field:
|
||||
hourly:
|
||||
time: other key
|
||||
field: hourly.time.key
|
||||
color: theme # optional - defaults to "". Allowed values: `["theme", "adaptive", "black", "white"]`.
|
||||
format: date # optional
|
||||
- field: key
|
||||
|
@ -103,9 +96,16 @@ mappings:
|
|||
label: Name
|
||||
- field: status # Alive
|
||||
label: Status
|
||||
- field:
|
||||
origin: name # Earth (C-137)
|
||||
- field: origin.name # Earth (C-137)
|
||||
label: Origin
|
||||
- field: locations.1.name # Citadel of Ricks
|
||||
label: Location
|
||||
```
|
||||
|
||||
Note that older versions of the widget accepted fields as a yaml object, which is still supported. E.g.:
|
||||
|
||||
```yaml
|
||||
mappings:
|
||||
- field:
|
||||
locations:
|
||||
1: name # Citadel of Ricks
|
||||
|
@ -138,7 +138,15 @@ You can manipulate data with the following tools `remap`, `scale`, `prefix` and
|
|||
prefix: "$"
|
||||
```
|
||||
|
||||
## List View
|
||||
## Display Options
|
||||
|
||||
The widget supports different display modes that can be set using the `display` property.
|
||||
|
||||
### Block View (Default)
|
||||
|
||||
The default display mode is `block`, which shows fields in a block format.
|
||||
|
||||
### List View
|
||||
|
||||
You can change the default block view to a list view by setting the `display` option to `list`.
|
||||
|
||||
|
@ -162,13 +170,54 @@ The list view can optionally display an additional field next to the primary fie
|
|||
- any: true # will map all other values
|
||||
to: Unknown
|
||||
additionalField:
|
||||
field:
|
||||
hourly:
|
||||
time: key
|
||||
field: hourly.time.key
|
||||
color: theme
|
||||
format: date
|
||||
```
|
||||
|
||||
### Dynamic List View
|
||||
|
||||
To display a list of items from an array in the API response, set the `display` property to `dynamic-list` and configure the `mappings` object with the following properties:
|
||||
|
||||
```yaml
|
||||
widget:
|
||||
type: customapi
|
||||
url: https://example.com/api/servers
|
||||
display: dynamic-list
|
||||
mappings:
|
||||
items: data # optional, the path to the array in the API response. Omit this option if the array is at the root level
|
||||
name: id # required, field in each item to use as the item name (left side)
|
||||
label: ip_address # required, field in each item to use as the item label (right side)
|
||||
limit: 5 # optional, limit the number of items to display
|
||||
format: text # optional - format of the label field
|
||||
target: https://example.com/server/{id} # optional, makes items clickable with template support
|
||||
```
|
||||
|
||||
This configuration would work with an API that returns a response like:
|
||||
|
||||
```json
|
||||
{
|
||||
"data": [
|
||||
{ "id": "server1", "name": "Server 1", "ip_address": "192.168.0.1" },
|
||||
{ "id": "server2", "name": "Server 2", "ip_address": "192.168.0.2" }
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
The widget would display a list with two items:
|
||||
|
||||
- "Server 1" on the left and "192.168.0.1" on the right, clickable to "https://example.com/server/server1"
|
||||
- "Server 2" on the left and "192.168.0.2" on the right, clickable to "https://example.com/server/server2"
|
||||
|
||||
For nested fields in the items, you can use dot notation:
|
||||
|
||||
```yaml
|
||||
mappings:
|
||||
items: data.results.servers
|
||||
name: details.id
|
||||
label: details.name
|
||||
```
|
||||
|
||||
## Custom Headers
|
||||
|
||||
Pass custom headers using the `headers` option, for example:
|
||||
|
|
|
@ -7,7 +7,7 @@ Learn more about [Gitea](https://gitea.com).
|
|||
|
||||
API token requires `notifications`, `repository` and `issue` permissions. See the [gitea documentation](https://docs.gitea.com/development/api-usage#generating-and-listing-api-tokens) for details on generating tokens.
|
||||
|
||||
Allowed fields: `["notifications", "issues", "pulls"]`.
|
||||
Allowed fields: `["repositories", "notifications", "issues", "pulls"]`.
|
||||
|
||||
```yaml
|
||||
widget:
|
||||
|
|
|
@ -1,17 +0,0 @@
|
|||
---
|
||||
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
|
||||
```
|
|
@ -51,7 +51,7 @@ You can also find a list of all available service widgets in the sidebar navigat
|
|||
- [HDHomeRun](hdhomerun.md)
|
||||
- [Headscale](headscale.md)
|
||||
- [Healthchecks](healthchecks.md)
|
||||
- [Hoarder](hoarder.md)
|
||||
- [Karakeep](karakeep.md)
|
||||
- [Home Assistant](homeassistant.md)
|
||||
- [HomeBox](homebox.md)
|
||||
- [Homebridge](homebridge.md)
|
||||
|
@ -117,6 +117,7 @@ You can also find a list of all available service widgets in the sidebar navigat
|
|||
- [ruTorrent](rutorrent.md)
|
||||
- [SABnzbd](sabnzbd.md)
|
||||
- [Scrutiny](scrutiny.md)
|
||||
- [Slskd](slskd.md)
|
||||
- [Sonarr](sonarr.md)
|
||||
- [Speedtest Tracker](speedtest-tracker.md)
|
||||
- [Stash](stash.md)
|
||||
|
|
17
docs/widgets/services/karakeep.md
Normal file
17
docs/widgets/services/karakeep.md
Normal file
|
@ -0,0 +1,17 @@
|
|||
---
|
||||
title: Karakeep
|
||||
description: Karakeep Widget Configuration
|
||||
---
|
||||
|
||||
Learn more about [Karakeep](https://karakeep.app) (formerly known as Hoarder).
|
||||
|
||||
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: karakeep
|
||||
url: http[s]://karakeep.host.or.ip[:port]
|
||||
key: karakeep_api_key
|
||||
```
|
25
docs/widgets/services/slskd.md
Normal file
25
docs/widgets/services/slskd.md
Normal file
|
@ -0,0 +1,25 @@
|
|||
---
|
||||
title: Slskd
|
||||
description: Slskd Widget Configuration
|
||||
---
|
||||
|
||||
Learn more about [Slskd](https://github.com/slskd/slskd).
|
||||
|
||||
Generate an API key for slskd with `openssl rand -base64 48`.
|
||||
Add it to your `path/to/config/slskd.yml` in `web > authentication > api_keys`:
|
||||
|
||||
```yaml
|
||||
homepage_widget:
|
||||
key: <generated key>
|
||||
role: readonly
|
||||
cidr: <homepage subnet>
|
||||
```
|
||||
|
||||
Allowed fields: `["slskStatus", "updateStatus", "downloads", "uploads", "sharedFiles"]` (maximum of 4).
|
||||
|
||||
```yaml
|
||||
widget:
|
||||
type: slskd
|
||||
url: http[s]://slskd.host.or.ip[:5030]
|
||||
key: generatedapikey
|
||||
```
|
|
@ -46,6 +46,10 @@ config:
|
|||
docker:
|
||||
settings:
|
||||
|
||||
env:
|
||||
- name: HOMEPAGE_ALLOWED_HOSTS
|
||||
value: "homepage.k3d.localhost:8080"
|
||||
|
||||
serviceAccount:
|
||||
create: true
|
||||
name: homepage
|
||||
|
|
|
@ -4,9 +4,9 @@ site_name: Homepage
|
|||
site_url: https://gethomepage.dev/
|
||||
|
||||
# Repository
|
||||
repo_name: gethomepage/homepage
|
||||
repo_url: https://github.com/gethomepage/homepage
|
||||
edit_uri: https://github.com/gethomepage/homepage/tree/main/docs/
|
||||
repo_name: di0ik/homepage-plus
|
||||
repo_url: https://github.com/di0ik/homepage-plus
|
||||
edit_uri: https://github.com/di0ik/homepage-plus/tree/main/docs/
|
||||
|
||||
nav:
|
||||
- "Home":
|
||||
|
@ -74,7 +74,7 @@ nav:
|
|||
- widgets/services/hdhomerun.md
|
||||
- widgets/services/headscale.md
|
||||
- widgets/services/healthchecks.md
|
||||
- widgets/services/hoarder.md
|
||||
- widgets/services/karakeep.md
|
||||
- widgets/services/homeassistant.md
|
||||
- widgets/services/homebox.md
|
||||
- widgets/services/homebridge.md
|
||||
|
|
|
@ -131,8 +131,8 @@ module.exports = {
|
|||
? BIBIT_UNITS
|
||||
: BIT_UNITS
|
||||
: options.binary
|
||||
? BIBYTE_UNITS
|
||||
: BYTE_UNITS;
|
||||
? BIBYTE_UNITS
|
||||
: BYTE_UNITS;
|
||||
|
||||
if (value === 0) return `0 ${sizes[0]}/s`;
|
||||
|
||||
|
|
17
package.json
17
package.json
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "homepage",
|
||||
"version": "1.0.3",
|
||||
"version": "1.2.0",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"preinstall": "npx only-allow pnpm",
|
||||
|
@ -19,13 +19,13 @@
|
|||
"dockerode": "^4.0.4",
|
||||
"follow-redirects": "^1.15.9",
|
||||
"gamedig": "^5.2.0",
|
||||
"i18next": "^21.10.0",
|
||||
"i18next": "^24.2.3",
|
||||
"js-yaml": "^4.1.0",
|
||||
"json-rpc-2.0": "^1.7.0",
|
||||
"luxon": "^3.5.0",
|
||||
"memory-cache": "^0.2.0",
|
||||
"minecraftstatuspinger": "^1.2.1",
|
||||
"next": "^15.1.7",
|
||||
"minecraftstatuspinger": "^1.2.2",
|
||||
"next": "^15.2.4",
|
||||
"next-i18next": "^12.1.0",
|
||||
"ping": "^0.4.4",
|
||||
"pretty-bytes": "^6.1.1",
|
||||
|
@ -36,7 +36,7 @@
|
|||
"react-icons": "^5.4.0",
|
||||
"recharts": "^2.15.1",
|
||||
"rrule": "^2.8.1",
|
||||
"swr": "^1.3.0",
|
||||
"swr": "^2.3.3",
|
||||
"systeminformation": "^5.25.11",
|
||||
"tough-cookie": "^5.1.2",
|
||||
"urbackup-server-api": "^0.8.9",
|
||||
|
@ -47,15 +47,16 @@
|
|||
"@tailwindcss/forms": "^0.5.10",
|
||||
"@tailwindcss/postcss": "^4.0.9",
|
||||
"eslint": "^9.21.0",
|
||||
"eslint-config-next": "^15.1.7",
|
||||
"eslint-config-prettier": "^10.0.2",
|
||||
"eslint-config-next": "^15.2.4",
|
||||
"eslint-config-prettier": "^10.1.1",
|
||||
"eslint-plugin-import": "^2.31.0",
|
||||
"eslint-plugin-jsx-a11y": "^6.10.2",
|
||||
"eslint-plugin-prettier": "^5.2.3",
|
||||
"eslint-plugin-react": "^7.37.4",
|
||||
"eslint-plugin-react-hooks": "^5.1.0",
|
||||
"postcss": "^8.5.2",
|
||||
"postcss": "^8.5.3",
|
||||
"prettier": "^3.5.2",
|
||||
"prettier-plugin-organize-imports": "^4.1.0",
|
||||
"tailwind-scrollbar": "^4.0.1",
|
||||
"tailwindcss": "^4.0.9",
|
||||
"typescript": "^5.7.3"
|
||||
|
|
641
pnpm-lock.yaml
generated
641
pnpm-lock.yaml
generated
File diff suppressed because it is too large
Load diff
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Kennisgewings",
|
||||
"issues": "Kwessies",
|
||||
"pulls": "Trek Versoeke"
|
||||
"pulls": "Trek Versoeke",
|
||||
"repositories": "Bewaarplekke"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Tonele",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Batterylading",
|
||||
"timeleft": "Oorblywende Tyd"
|
||||
},
|
||||
"hoarder": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"karakeep": {
|
||||
"bookmarks": "Boekmerke",
|
||||
"favorites": "Gunstelinge",
|
||||
"archived": "Geargiveer",
|
||||
"highlights": "Hoogtepunte",
|
||||
"lists": "Lyste",
|
||||
"tags": "Merkers"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Netwerk",
|
||||
"connected": "Gekoppel",
|
||||
"disconnected": "Ontkoppel",
|
||||
"updateStatus": "Opdateer",
|
||||
"update_yes": "Beskikbaar",
|
||||
"update_no": "Op Datum",
|
||||
"downloads": "Aflaaie",
|
||||
"uploads": "Oplaaie",
|
||||
"sharedFiles": "Lêers"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "الإشعارات",
|
||||
"issues": "المُشكِلات",
|
||||
"pulls": "طلبات السحب"
|
||||
"pulls": "طلبات السحب",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "المشاهد",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "شحن البطارية",
|
||||
"timeleft": "الوقت المتبقي"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "التصنيفات"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "الشبكة",
|
||||
"connected": "متصل",
|
||||
"disconnected": "غير متصل",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "متاح",
|
||||
"update_no": "حتى الآن",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "ملفات"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -394,7 +394,7 @@
|
|||
"strelaysrv": {
|
||||
"numActiveSessions": "Сесии",
|
||||
"numConnections": "Connections",
|
||||
"dataRelayed": "Relayed",
|
||||
"dataRelayed": "",
|
||||
"transferRate": "Скорост"
|
||||
},
|
||||
"mastodon": {
|
||||
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Известия",
|
||||
"issues": "Издания",
|
||||
"pulls": "Заявки за сливане"
|
||||
"pulls": "Заявки за сливане",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Сцени",
|
||||
|
@ -1001,7 +1002,7 @@
|
|||
"argocd": {
|
||||
"apps": "Приложения",
|
||||
"synced": "Synced",
|
||||
"outOfSync": "Out Of Sync",
|
||||
"outOfSync": "",
|
||||
"healthy": "Здрав",
|
||||
"degraded": "Деградирани",
|
||||
"progressing": "Progressing",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Заряд на батерията",
|
||||
"timeleft": "Оставащо Време"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Тагове"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Мрежа",
|
||||
"connected": "Свързан",
|
||||
"disconnected": "Не е свързан",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Наличен",
|
||||
"update_no": "Актуално",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Файлове"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notificacions",
|
||||
"issues": "Problemes",
|
||||
"pulls": "Sol·licitud de Canvis"
|
||||
"pulls": "Sol·licitud de Canvis",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Escenes",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Càrrega de la bateria",
|
||||
"timeleft": "Temps restant"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Etiquetes"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Xarxa",
|
||||
"connected": "Connectat",
|
||||
"disconnected": "Desconnectat",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Disponible",
|
||||
"update_no": "Actualitzat",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Fitxers"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -85,16 +85,16 @@
|
|||
"ping": {
|
||||
"error": "Chyba",
|
||||
"ping": "Odezva",
|
||||
"down": "Down",
|
||||
"up": "Up",
|
||||
"down": "Výpadek",
|
||||
"up": "Běží",
|
||||
"not_available": "Není k dispozici"
|
||||
},
|
||||
"siteMonitor": {
|
||||
"http_status": "Stav HTTP",
|
||||
"error": "Chyba",
|
||||
"response": "Odpověď",
|
||||
"down": "Down",
|
||||
"up": "Up",
|
||||
"down": "Výpadek",
|
||||
"up": "Běží",
|
||||
"not_available": "Není k dispozici"
|
||||
},
|
||||
"emby": {
|
||||
|
@ -144,13 +144,13 @@
|
|||
"uptime": "Doba spuštění",
|
||||
"maxDown": "Max. Down",
|
||||
"maxUp": "Max. Up",
|
||||
"down": "Down",
|
||||
"up": "Up",
|
||||
"down": "Výpadek",
|
||||
"up": "Běží",
|
||||
"received": "Přijaté",
|
||||
"sent": "Odeslané",
|
||||
"externalIPAddress": "Ext. IP",
|
||||
"externalIPv6Address": "Ext. IPv6",
|
||||
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||
"externalIPv6Address": "Veřejná IPv6",
|
||||
"externalIPv6Prefix": "Věřejná IPv6 prefix"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Odesílání dat",
|
||||
|
@ -178,7 +178,7 @@
|
|||
"connectedAp": "Připojené APs",
|
||||
"activeUser": "Aktivní zařízení",
|
||||
"alerts": "Upozornění",
|
||||
"connectedGateways": "Connected gateways",
|
||||
"connectedGateways": "Připojené brány",
|
||||
"connectedSwitches": "Připojené přepínače"
|
||||
},
|
||||
"nzbget": {
|
||||
|
@ -229,8 +229,8 @@
|
|||
"seed": "Seedované"
|
||||
},
|
||||
"develancacheui": {
|
||||
"cachehitbytes": "Cache Hit Bytes",
|
||||
"cachemissbytes": "Cache Miss Bytes"
|
||||
"cachehitbytes": "Byty nalezené v mezipaměti",
|
||||
"cachemissbytes": "Byty nenalezené v mezipaměti"
|
||||
},
|
||||
"downloadstation": {
|
||||
"download": "Stahování",
|
||||
|
@ -287,7 +287,7 @@
|
|||
"total": "Celkem",
|
||||
"connected": "",
|
||||
"new_devices": "",
|
||||
"down_alerts": "Down Alerts"
|
||||
"down_alerts": "Upozornění na výpadek"
|
||||
},
|
||||
"pihole": {
|
||||
"queries": "Dotazy",
|
||||
|
@ -313,13 +313,13 @@
|
|||
},
|
||||
"suwayomi": {
|
||||
"download": "Staženo",
|
||||
"nondownload": "Non-Downloaded",
|
||||
"nondownload": "Nestaženo",
|
||||
"read": "Přečteno",
|
||||
"unread": "Nepřečteno",
|
||||
"downloadedread": "Downloaded & Read",
|
||||
"downloadedunread": "Downloaded & Unread",
|
||||
"nondownloadedread": "Non-Downloaded & Read",
|
||||
"nondownloadedunread": "Non-Downloaded & Unread"
|
||||
"downloadedread": "Staženo a přečteno",
|
||||
"downloadedunread": "Staženo a nepřečteno",
|
||||
"nondownloadedread": "Nestaženo a přečteno",
|
||||
"nondownloadedunread": "Nestaženo a nepřečteno"
|
||||
},
|
||||
"tailscale": {
|
||||
"address": "Adresa",
|
||||
|
@ -337,15 +337,15 @@
|
|||
},
|
||||
"technitium": {
|
||||
"totalQueries": "Dotazy",
|
||||
"totalNoError": "Success",
|
||||
"totalServerFailure": "Failures",
|
||||
"totalNxDomain": "NX Domains",
|
||||
"totalRefused": "Refused",
|
||||
"totalAuthoritative": "Authoritative",
|
||||
"totalRecursive": "Recursive",
|
||||
"totalCached": "Cached",
|
||||
"totalNoError": "Úspěšně",
|
||||
"totalServerFailure": "Chyby",
|
||||
"totalNxDomain": "NX domény",
|
||||
"totalRefused": "Odmítnuto",
|
||||
"totalAuthoritative": "Autoritativní",
|
||||
"totalRecursive": "Rekurzivní",
|
||||
"totalCached": "V mezipaměti",
|
||||
"totalBlocked": "Blokováno",
|
||||
"totalDropped": "Dropped",
|
||||
"totalDropped": "Vynecháno",
|
||||
"totalClients": "Klienti"
|
||||
},
|
||||
"tdarr": {
|
||||
|
@ -434,7 +434,7 @@
|
|||
"load": "Zatížení",
|
||||
"wait": "Počkejte prosím",
|
||||
"temp": "TEPLOTA",
|
||||
"_temp": "Temp",
|
||||
"_temp": "Teplota",
|
||||
"warn": "Varováni",
|
||||
"uptime": "BĚŽÍ",
|
||||
"total": "Celkem",
|
||||
|
@ -442,12 +442,12 @@
|
|||
"used": "Využité",
|
||||
"days": "d",
|
||||
"hours": "h",
|
||||
"crit": "Crit",
|
||||
"crit": "Kritické",
|
||||
"read": "Přečteno",
|
||||
"write": "Write",
|
||||
"gpu": "GPU",
|
||||
"mem": "Mem",
|
||||
"swap": "Swap"
|
||||
"write": "Zápis",
|
||||
"gpu": "Grafická karta",
|
||||
"mem": "Pamět RAM",
|
||||
"swap": "Swap RAM"
|
||||
},
|
||||
"quicklaunch": {
|
||||
"bookmark": "Záložka",
|
||||
|
@ -456,7 +456,7 @@
|
|||
"custom": "Vlastní",
|
||||
"visit": "Navštivte",
|
||||
"url": "Odkaz",
|
||||
"searchsuggestion": "Suggestion"
|
||||
"searchsuggestion": "Doporučení"
|
||||
},
|
||||
"wmo": {
|
||||
"0-day": "Slunečno",
|
||||
|
@ -523,15 +523,15 @@
|
|||
"up_to_date": "Žádné",
|
||||
"child_bridges": "Podřízené můstky",
|
||||
"child_bridges_status": "{{ok}}/{{total}}",
|
||||
"up": "Up",
|
||||
"up": "Běží",
|
||||
"pending": "Čeká",
|
||||
"down": "Down"
|
||||
"down": "Výpadek"
|
||||
},
|
||||
"healthchecks": {
|
||||
"new": "Nové",
|
||||
"up": "Up",
|
||||
"up": "Běží",
|
||||
"grace": "V období odkladu",
|
||||
"down": "Down",
|
||||
"down": "Výpadek",
|
||||
"paused": "Pozastaveno",
|
||||
"status": "Stav",
|
||||
"last_ping": "Poslední ping",
|
||||
|
@ -573,14 +573,14 @@
|
|||
"hdhomerun": {
|
||||
"channels": "Kanály",
|
||||
"hd": "HD",
|
||||
"tunerCount": "Tuners",
|
||||
"channelNumber": "Channel",
|
||||
"channelNetwork": "Network",
|
||||
"signalStrength": "Strength",
|
||||
"signalQuality": "Quality",
|
||||
"symbolQuality": "Quality",
|
||||
"tunerCount": "Tuner",
|
||||
"channelNumber": "Kanál",
|
||||
"channelNetwork": "Síť",
|
||||
"signalStrength": "Síla",
|
||||
"signalQuality": "Kvalita",
|
||||
"symbolQuality": "Kvalita",
|
||||
"networkRate": "Přenosová rychlost",
|
||||
"clientIP": "Client"
|
||||
"clientIP": "Klient"
|
||||
},
|
||||
"scrutiny": {
|
||||
"passed": "Úspěšné",
|
||||
|
@ -592,12 +592,12 @@
|
|||
"total": "Celkem"
|
||||
},
|
||||
"peanut": {
|
||||
"battery_charge": "Battery Charge",
|
||||
"ups_load": "UPS Load",
|
||||
"ups_status": "UPS Status",
|
||||
"battery_charge": "Úroveň baterie",
|
||||
"ups_load": "Zítěž UPS",
|
||||
"ups_status": "Stav UPS",
|
||||
"online": "Online",
|
||||
"on_battery": "On Battery",
|
||||
"low_battery": "Low Battery"
|
||||
"on_battery": "Na baterii",
|
||||
"low_battery": "Nízký stav baterie"
|
||||
},
|
||||
"nextdns": {
|
||||
"wait": "Čekejte prosím",
|
||||
|
@ -615,9 +615,9 @@
|
|||
"streams_xepg": "Kanály XEPG"
|
||||
},
|
||||
"opendtu": {
|
||||
"yieldDay": "Today",
|
||||
"absolutePower": "Power",
|
||||
"relativePower": "Power %",
|
||||
"yieldDay": "Dnes",
|
||||
"absolutePower": "Výkon",
|
||||
"relativePower": "Výkon %",
|
||||
"limit": "Limit"
|
||||
},
|
||||
"opnsense": {
|
||||
|
@ -646,9 +646,9 @@
|
|||
"load": "Prům. zatížení",
|
||||
"memory": "Využití paměti",
|
||||
"wanStatus": "Stav WAN",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"temp": "Temp",
|
||||
"up": "Běží",
|
||||
"down": "Výpadek",
|
||||
"temp": "Teplota",
|
||||
"disk": "Využití disku",
|
||||
"wanIP": "IP WAN"
|
||||
},
|
||||
|
@ -668,14 +668,14 @@
|
|||
"up": "Stránky Up",
|
||||
"down": "Stránky Down",
|
||||
"uptime": "Doba spuštění",
|
||||
"incident": "Incident",
|
||||
"incident": "Událost",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Seriály",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
"archives": "Archivy",
|
||||
"chapters": "Kapitoly",
|
||||
"categories": "Kategorie"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Knihovny",
|
||||
|
@ -705,13 +705,13 @@
|
|||
"time": "Čas"
|
||||
},
|
||||
"firefly": {
|
||||
"networth": "Net Worth",
|
||||
"budget": "Budget"
|
||||
"networth": "Čisté jmění",
|
||||
"budget": "Rozpočet"
|
||||
},
|
||||
"grafana": {
|
||||
"dashboards": "Nástěnky",
|
||||
"datasources": "Zdroje dat",
|
||||
"totalalerts": "Celkový počet upozornění",
|
||||
"totalalerts": "Celkový počet upozornění2",
|
||||
"alertstriggered": "Spuštěné výstrahy"
|
||||
},
|
||||
"nextcloud": {
|
||||
|
@ -749,7 +749,7 @@
|
|||
"uptime": "Doba spuštění"
|
||||
},
|
||||
"ghostfolio": {
|
||||
"gross_percent_today": "Today",
|
||||
"gross_percent_today": "Dnes",
|
||||
"gross_percent_1y": "Jeden rok",
|
||||
"gross_percent_max": "Za celou dobu"
|
||||
},
|
||||
|
@ -770,8 +770,8 @@
|
|||
},
|
||||
"calibreweb": {
|
||||
"books": "Knihy",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"authors": "Autoři",
|
||||
"categories": "Kategorie",
|
||||
"series": "Seriály"
|
||||
},
|
||||
"jdownloader": {
|
||||
|
@ -785,44 +785,44 @@
|
|||
"totalFiles": "Soubory"
|
||||
},
|
||||
"azuredevops": {
|
||||
"result": "Result",
|
||||
"result": "Výsledek",
|
||||
"status": "Stav",
|
||||
"buildId": "Build ID",
|
||||
"succeeded": "Succeeded",
|
||||
"notStarted": "Not Started",
|
||||
"buildId": "ID sestavení",
|
||||
"succeeded": "Úspěšně",
|
||||
"notStarted": "Nezahájeno",
|
||||
"failed": "Selhalo",
|
||||
"canceled": "Canceled",
|
||||
"inProgress": "In Progress",
|
||||
"totalPrs": "Total PRs",
|
||||
"myPrs": "My PRs",
|
||||
"canceled": "Zrušeno",
|
||||
"inProgress": "Probíhá",
|
||||
"totalPrs": "Celkem PR",
|
||||
"myPrs": "Moje PR",
|
||||
"approved": "Schváleno"
|
||||
},
|
||||
"gamedig": {
|
||||
"status": "Stav",
|
||||
"online": "Online",
|
||||
"offline": "Offline",
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"currentPlayers": "Current players",
|
||||
"name": "Jméno",
|
||||
"map": "Mapa",
|
||||
"currentPlayers": "Počet hráčů",
|
||||
"players": "Hráči",
|
||||
"maxPlayers": "Max players",
|
||||
"bots": "Bots",
|
||||
"maxPlayers": "Maximální počet hráčů",
|
||||
"bots": "Boti",
|
||||
"ping": "Odezva"
|
||||
},
|
||||
"urbackup": {
|
||||
"ok": "Ok",
|
||||
"errored": "Errors",
|
||||
"noRecent": "Out of Date",
|
||||
"totalUsed": "Used Storage"
|
||||
"errored": "Chyby",
|
||||
"noRecent": "Zastaralý",
|
||||
"totalUsed": "Využití úložiště"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"recipes": "Recepty",
|
||||
"users": "Uživatelé",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
"categories": "Kategorie",
|
||||
"tags": "Štítky"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"downloading": "Stahování",
|
||||
"total": "Celkem",
|
||||
"running": "Běží",
|
||||
"stopped": "Zastaveno",
|
||||
|
@ -831,94 +831,95 @@
|
|||
},
|
||||
"openwrt": {
|
||||
"uptime": "Doba spuštění",
|
||||
"cpuLoad": "CPU Load Avg (5m)",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"bytesTx": "Transmitted",
|
||||
"cpuLoad": "Prům. zatížení procesoru (5m)",
|
||||
"up": "Běží",
|
||||
"down": "Výpadek",
|
||||
"bytesTx": "Přeneseno",
|
||||
"bytesRx": "Přijaté"
|
||||
},
|
||||
"uptimerobot": {
|
||||
"status": "Stav",
|
||||
"uptime": "Doba spuštění",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"lastDown": "Poslední výpadek",
|
||||
"downDuration": "Trvání výpadku",
|
||||
"sitesUp": "Stránky Up",
|
||||
"sitesDown": "Stránky Down",
|
||||
"paused": "Pozastaveno",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"notyetchecked": "Zatím nezkontrolováno",
|
||||
"up": "Běží",
|
||||
"seemsdown": "Zdá se nedostupný",
|
||||
"down": "Výpadek",
|
||||
"unknown": "Neznámý"
|
||||
},
|
||||
"calendar": {
|
||||
"inCinemas": "In cinemas",
|
||||
"physicalRelease": "Physical release",
|
||||
"digitalRelease": "Digital release",
|
||||
"noEventsToday": "No events for today!",
|
||||
"noEventsFound": "No events found"
|
||||
"inCinemas": "V kinech",
|
||||
"physicalRelease": "Fyzické vydání",
|
||||
"digitalRelease": "Digitální vydání",
|
||||
"noEventsToday": "Pro dnešek žádné události!",
|
||||
"noEventsFound": "Nemáte žádné události"
|
||||
},
|
||||
"romm": {
|
||||
"platforms": "Platforms",
|
||||
"totalRoms": "Games",
|
||||
"saves": "Saves",
|
||||
"states": "States",
|
||||
"screenshots": "Screenshots",
|
||||
"totalfilesize": "Total Size"
|
||||
"platforms": "Platformy",
|
||||
"totalRoms": "Hry",
|
||||
"saves": "Uložené",
|
||||
"states": "Stavy",
|
||||
"screenshots": "Snímky obrazovky",
|
||||
"totalfilesize": "Celková velikost"
|
||||
},
|
||||
"mailcow": {
|
||||
"domains": "Domény",
|
||||
"mailboxes": "Mailboxes",
|
||||
"mails": "Mails",
|
||||
"mailboxes": "E-mailové schránky",
|
||||
"mails": "Maily",
|
||||
"storage": "Úložiště"
|
||||
},
|
||||
"netdata": {
|
||||
"warnings": "Warnings",
|
||||
"criticals": "Criticals"
|
||||
"warnings": "Upozornění",
|
||||
"criticals": "Kritické"
|
||||
},
|
||||
"plantit": {
|
||||
"events": "Events",
|
||||
"plants": "Plants",
|
||||
"events": "Události",
|
||||
"plants": "Rostliny",
|
||||
"photos": "Fotografie",
|
||||
"species": "Species"
|
||||
"species": "Druhy"
|
||||
},
|
||||
"gitea": {
|
||||
"notifications": "Notifications",
|
||||
"notifications": "Oznámení",
|
||||
"issues": "Problémy",
|
||||
"pulls": "Pull Requests"
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repozitáře"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scenes",
|
||||
"scenesPlayed": "Scenes Played",
|
||||
"playCount": "Total Plays",
|
||||
"playDuration": "Time Watched",
|
||||
"sceneSize": "Scenes Size",
|
||||
"sceneDuration": "Scenes Duration",
|
||||
"images": "Images",
|
||||
"imageSize": "Images Size",
|
||||
"galleries": "Galleries",
|
||||
"performers": "Performers",
|
||||
"studios": "Studios",
|
||||
"scenes": "Scény",
|
||||
"scenesPlayed": "Přehrané scény",
|
||||
"playCount": "Celkový počet přehrání",
|
||||
"playDuration": "Čas sledování",
|
||||
"sceneSize": "Velikost scén",
|
||||
"sceneDuration": "Délka scény",
|
||||
"images": "Obrázky",
|
||||
"imageSize": "Velikost obrázků",
|
||||
"galleries": "Galerie",
|
||||
"performers": "Herci",
|
||||
"studios": "Studia",
|
||||
"movies": "Filmy",
|
||||
"tags": "Tags",
|
||||
"oCount": "O Count"
|
||||
"tags": "Štítky",
|
||||
"oCount": "Počet O"
|
||||
},
|
||||
"tandoor": {
|
||||
"users": "Uživatelé",
|
||||
"recipes": "Recipes",
|
||||
"keywords": "Keywords"
|
||||
"recipes": "Recepty",
|
||||
"keywords": "Klíčová slova"
|
||||
},
|
||||
"homebox": {
|
||||
"items": "Items",
|
||||
"totalWithWarranty": "With Warranty",
|
||||
"locations": "Locations",
|
||||
"labels": "Labels",
|
||||
"items": "Položky",
|
||||
"totalWithWarranty": "Se zárukou",
|
||||
"locations": "Lokality",
|
||||
"labels": "Štítky",
|
||||
"users": "Uživatelé",
|
||||
"totalValue": "Total Value"
|
||||
"totalValue": "Celková hodnota"
|
||||
},
|
||||
"crowdsec": {
|
||||
"alerts": "Upozornění",
|
||||
"bans": "Bans"
|
||||
"bans": "Bany"
|
||||
},
|
||||
"wgeasy": {
|
||||
"connected": "",
|
||||
|
@ -927,10 +928,10 @@
|
|||
"total": "Celkem"
|
||||
},
|
||||
"swagdashboard": {
|
||||
"proxied": "Proxied",
|
||||
"auth": "With Auth",
|
||||
"outdated": "Outdated",
|
||||
"banned": "Banned"
|
||||
"proxied": "Přes proxy",
|
||||
"auth": "S ověřením",
|
||||
"outdated": "Zastaralé",
|
||||
"banned": "Zabanován"
|
||||
},
|
||||
"myspeed": {
|
||||
"ping": "Odezva",
|
||||
|
@ -938,46 +939,46 @@
|
|||
"upload": "Nahrávání"
|
||||
},
|
||||
"stocks": {
|
||||
"stocks": "Stocks",
|
||||
"loading": "Loading",
|
||||
"open": "Open - US Market",
|
||||
"closed": "Closed - US Market",
|
||||
"invalidConfiguration": "Invalid Configuration"
|
||||
"stocks": "Akcie",
|
||||
"loading": "Načítání",
|
||||
"open": "Otevřeno - US trh",
|
||||
"closed": "Uzavřeno - US trh",
|
||||
"invalidConfiguration": "Neplatná konfigurace"
|
||||
},
|
||||
"frigate": {
|
||||
"cameras": "Cameras",
|
||||
"cameras": "Kamery",
|
||||
"uptime": "Doba spuštění",
|
||||
"version": "Verze"
|
||||
},
|
||||
"linkwarden": {
|
||||
"links": "Links",
|
||||
"collections": "Collections",
|
||||
"tags": "Tags"
|
||||
"links": "Linky",
|
||||
"collections": "Sbírky",
|
||||
"tags": "Štítky"
|
||||
},
|
||||
"zabbix": {
|
||||
"unclassified": "Not classified",
|
||||
"unclassified": "Neklasifikováno",
|
||||
"information": "Informace",
|
||||
"warning": "Warning",
|
||||
"average": "Average",
|
||||
"high": "High",
|
||||
"disaster": "Disaster"
|
||||
"warning": "Upozornění",
|
||||
"average": "Průměr",
|
||||
"high": "Vysoký",
|
||||
"disaster": "Katastrofa"
|
||||
},
|
||||
"lubelogger": {
|
||||
"vehicle": "Vehicle",
|
||||
"vehicles": "Vehicles",
|
||||
"serviceRecords": "Service Records",
|
||||
"reminders": "Reminders",
|
||||
"nextReminder": "Next Reminder",
|
||||
"none": "None"
|
||||
"vehicle": "Vozidlo",
|
||||
"vehicles": "Vozidla",
|
||||
"serviceRecords": "Servisní záznamy",
|
||||
"reminders": "Připomenutí",
|
||||
"nextReminder": "Další připomenutí",
|
||||
"none": "Žádné"
|
||||
},
|
||||
"vikunja": {
|
||||
"projects": "Active Projects",
|
||||
"tasks7d": "Tasks Due This Week",
|
||||
"tasksOverdue": "Overdue Tasks",
|
||||
"tasksInProgress": "Tasks In Progress"
|
||||
"projects": "Aktivní projekty",
|
||||
"tasks7d": "Úkoly k dokončení tento týden",
|
||||
"tasksOverdue": "Zpožděné úkoly",
|
||||
"tasksInProgress": "Probíhají úkoly"
|
||||
},
|
||||
"headscale": {
|
||||
"name": "Name",
|
||||
"name": "Jméno",
|
||||
"address": "Adresa",
|
||||
"last_seen": "Naposledy viděno",
|
||||
"status": "Stav",
|
||||
|
@ -985,10 +986,10 @@
|
|||
"offline": "Offline"
|
||||
},
|
||||
"beszel": {
|
||||
"name": "Name",
|
||||
"systems": "Systems",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"name": "Jméno",
|
||||
"systems": "Systém",
|
||||
"up": "Běží",
|
||||
"down": "Výpadek",
|
||||
"paused": "Pozastaveno",
|
||||
"pending": "Čeká",
|
||||
"status": "Stav",
|
||||
|
@ -996,39 +997,50 @@
|
|||
"cpu": "CPU",
|
||||
"memory": "RAM",
|
||||
"disk": "Disk",
|
||||
"network": "NET"
|
||||
"network": "Síť"
|
||||
},
|
||||
"argocd": {
|
||||
"apps": "Apps",
|
||||
"synced": "Synced",
|
||||
"outOfSync": "Out Of Sync",
|
||||
"apps": "Aplikace",
|
||||
"synced": "Synchronizováno",
|
||||
"outOfSync": "Nesynchronizováno",
|
||||
"healthy": "Zdravý",
|
||||
"degraded": "Degraded",
|
||||
"progressing": "Progressing",
|
||||
"degraded": "Degradováno",
|
||||
"progressing": "Probíhá",
|
||||
"missing": "Chybějící",
|
||||
"suspended": "Suspended"
|
||||
"suspended": "Pozastaveno"
|
||||
},
|
||||
"spoolman": {
|
||||
"loading": "Loading"
|
||||
"loading": "Načítání"
|
||||
},
|
||||
"gitlab": {
|
||||
"groups": "Groups",
|
||||
"groups": "Skupiny",
|
||||
"issues": "Problémy",
|
||||
"merges": "Merge Requests",
|
||||
"projects": "Projects"
|
||||
"merges": "Žádosti o sloučení",
|
||||
"projects": "Projekty"
|
||||
},
|
||||
"apcups": {
|
||||
"status": "Stav",
|
||||
"load": "Zatížení",
|
||||
"bcharge": "Battery Charge",
|
||||
"bcharge": "Úroveň baterie",
|
||||
"timeleft": "Zbývající čas"
|
||||
},
|
||||
"hoarder": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Tags"
|
||||
"karakeep": {
|
||||
"bookmarks": "Záložky",
|
||||
"favorites": "Oblíbené",
|
||||
"archived": "Archivováno",
|
||||
"highlights": "Zvýraznění",
|
||||
"lists": "Seznamy",
|
||||
"tags": "Štítky"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Síť",
|
||||
"connected": "",
|
||||
"disconnected": "Odpojeno",
|
||||
"updateStatus": "Aktualizace",
|
||||
"update_yes": "Dostupné",
|
||||
"update_no": "Žádné",
|
||||
"downloads": "Stažení",
|
||||
"uploads": "Nahrávání",
|
||||
"sharedFiles": "Soubory"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notifications",
|
||||
"issues": "Problemer",
|
||||
"pulls": "Pull Requests"
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scenes",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Batteriniveau",
|
||||
"timeleft": "Resterende tid"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Network",
|
||||
"connected": "Connected",
|
||||
"disconnected": "Disconnected",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Tilgængelig",
|
||||
"update_no": "Opdateret",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Filer"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -447,7 +447,7 @@
|
|||
"write": "Schreiben",
|
||||
"gpu": "GPU",
|
||||
"mem": "RAM",
|
||||
"swap": "Swap"
|
||||
"swap": "Auslagerung"
|
||||
},
|
||||
"quicklaunch": {
|
||||
"bookmark": "Lesezeichen",
|
||||
|
@ -665,8 +665,8 @@
|
|||
"storage": "Speicher"
|
||||
},
|
||||
"uptimekuma": {
|
||||
"up": "Seiten verfügbar",
|
||||
"down": "Seiten nicht verfügbar",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"uptime": "Betriebszeit",
|
||||
"incident": "Vorfall",
|
||||
"m": "min"
|
||||
|
@ -744,8 +744,8 @@
|
|||
"targets_total": "Alle Ziele"
|
||||
},
|
||||
"gatus": {
|
||||
"up": "Seiten verfügbar",
|
||||
"down": "Seiten nicht verfügbar",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"uptime": "Betriebszeit"
|
||||
},
|
||||
"ghostfolio": {
|
||||
|
@ -842,8 +842,8 @@
|
|||
"uptime": "Betriebszeit",
|
||||
"lastDown": "Letzter Ausfall",
|
||||
"downDuration": "Ausfalldauer",
|
||||
"sitesUp": "Seiten verfügbar",
|
||||
"sitesDown": "Seiten nicht verfügbar",
|
||||
"sitesUp": "Up",
|
||||
"sitesDown": "Down",
|
||||
"paused": "Pausiert",
|
||||
"notyetchecked": "Noch nicht geprüft",
|
||||
"up": "Online",
|
||||
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Benachrichtigungen",
|
||||
"issues": "Probleme",
|
||||
"pulls": "Pull-Requests"
|
||||
"pulls": "Pull-Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Szenen",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Akkuladung",
|
||||
"timeleft": "Verbleibende Zeit"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Schlagwörter"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Netzwerk",
|
||||
"connected": "Verbunden",
|
||||
"disconnected": "Getrennt",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Verfügbar",
|
||||
"update_no": "Aktuell",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Dateien"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notifications",
|
||||
"issues": "Issues",
|
||||
"pulls": "Pull Requests"
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scenes",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Battery Charge",
|
||||
"timeleft": "Χρόνος που απομένει"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Ετικέτες"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Δίκτυο",
|
||||
"connected": "Συνδέθηκε",
|
||||
"disconnected": "Αποσυνδέθηκε",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Διαθέσιμο",
|
||||
"update_no": "Ενημερωμένο",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Αρχεία"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -883,9 +883,10 @@
|
|||
"species": "Species"
|
||||
},
|
||||
"gitea": {
|
||||
"notifications": "Notifications",
|
||||
"issues": "Issues",
|
||||
"pulls": "Pull Requests"
|
||||
"notifications": "Notifications",
|
||||
"issues": "Issues",
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scenes",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge":"Battery Charge",
|
||||
"timeleft":"Time Left"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Network",
|
||||
"connected": "Connected",
|
||||
"disconnected": "Disconnected",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Available",
|
||||
"update_no": "Up to Date",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Files"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notifications",
|
||||
"issues": "Issues",
|
||||
"pulls": "Pull Requests"
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scenes",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Battery Charge",
|
||||
"timeleft": "Time Left"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Network",
|
||||
"connected": "Connected",
|
||||
"disconnected": "Disconnected",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Havebla",
|
||||
"update_no": "Up to Date",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Files"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -149,8 +149,8 @@
|
|||
"received": "Recibido",
|
||||
"sent": "Enviado",
|
||||
"externalIPAddress": "IP ext.",
|
||||
"externalIPv6Address": "Ext. IPv6",
|
||||
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||
"externalIPv6Address": "IPv6 ext.",
|
||||
"externalIPv6Prefix": "Prefijo IPv6 ext."
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Upstream (desarrollo de software)",
|
||||
|
@ -178,7 +178,7 @@
|
|||
"connectedAp": "AP conectados",
|
||||
"activeUser": "Dispositivos activos",
|
||||
"alerts": "Alertas",
|
||||
"connectedGateways": "Connected gateways",
|
||||
"connectedGateways": "Puertas de enlace conectadas",
|
||||
"connectedSwitches": "Conmutadores conectados"
|
||||
},
|
||||
"nzbget": {
|
||||
|
@ -705,8 +705,8 @@
|
|||
"time": "Tiempo"
|
||||
},
|
||||
"firefly": {
|
||||
"networth": "Net Worth",
|
||||
"budget": "Budget"
|
||||
"networth": "Patrimonio neto",
|
||||
"budget": "Presupuesto"
|
||||
},
|
||||
"grafana": {
|
||||
"dashboards": "Tableros",
|
||||
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notificaciones",
|
||||
"issues": "Números",
|
||||
"pulls": "Solicitudes de cambios"
|
||||
"pulls": "Solicitudes de cambios",
|
||||
"repositories": "Repositorios"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Escenas",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Carga de la batería",
|
||||
"timeleft": "Tiempo restante"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Etiquetas"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Red",
|
||||
"connected": "Conectado",
|
||||
"disconnected": "Desconectado",
|
||||
"updateStatus": "Actualización",
|
||||
"update_yes": "Disponible",
|
||||
"update_no": "Actualizado",
|
||||
"downloads": "Descargas",
|
||||
"uploads": "Subidas",
|
||||
"sharedFiles": "Archivos"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -85,16 +85,16 @@
|
|||
"ping": {
|
||||
"error": "Error",
|
||||
"ping": "Ping",
|
||||
"down": "Down",
|
||||
"up": "Up",
|
||||
"down": "Behera",
|
||||
"up": "Gora",
|
||||
"not_available": "Not Available"
|
||||
},
|
||||
"siteMonitor": {
|
||||
"http_status": "HTTP status",
|
||||
"error": "Error",
|
||||
"response": "Response",
|
||||
"down": "Down",
|
||||
"up": "Up",
|
||||
"response": "Erantzuna",
|
||||
"down": "Behera",
|
||||
"up": "Gora",
|
||||
"not_available": "Not Available"
|
||||
},
|
||||
"emby": {
|
||||
|
@ -102,8 +102,8 @@
|
|||
"transcoding": "Transcoding",
|
||||
"bitrate": "Bit-tasa",
|
||||
"no_active": "No Active Streams",
|
||||
"movies": "Movies",
|
||||
"series": "Series",
|
||||
"movies": "Filmak",
|
||||
"series": "Serieak",
|
||||
"episodes": "Episodes",
|
||||
"songs": "Abestiak"
|
||||
},
|
||||
|
@ -115,39 +115,39 @@
|
|||
"unknown": "Ezezaguna"
|
||||
},
|
||||
"evcc": {
|
||||
"pv_power": "Production",
|
||||
"battery_soc": "Battery",
|
||||
"grid_power": "Grid",
|
||||
"home_power": "Consumption",
|
||||
"charge_power": "Charger",
|
||||
"pv_power": "Produkzioak",
|
||||
"battery_soc": "Bateria",
|
||||
"grid_power": "Sarea",
|
||||
"home_power": "Kontsumoa",
|
||||
"charge_power": "Kargagailua",
|
||||
"kilowatt": "kW"
|
||||
},
|
||||
"flood": {
|
||||
"download": "Download",
|
||||
"upload": "Upload",
|
||||
"download": "Jeitsierak",
|
||||
"upload": "Kargatu",
|
||||
"leech": "Leech",
|
||||
"seed": "Seed"
|
||||
},
|
||||
"freshrss": {
|
||||
"subscriptions": "Subscriptions",
|
||||
"unread": "Unread"
|
||||
"subscriptions": "Harpidetzak",
|
||||
"unread": "Irakurri gabe"
|
||||
},
|
||||
"fritzbox": {
|
||||
"connectionStatus": "Status",
|
||||
"connectionStatusUnconfigured": "Unconfigured",
|
||||
"connectionStatusConnecting": "Connecting",
|
||||
"connectionStatusConnecting": "Konektatzen",
|
||||
"connectionStatusAuthenticating": "Authenticating",
|
||||
"connectionStatusPendingDisconnect": "Pending Disconnect",
|
||||
"connectionStatusDisconnecting": "Disconnecting",
|
||||
"connectionStatusDisconnected": "Disconnected",
|
||||
"connectionStatusConnected": "Connected",
|
||||
"connectionStatusDisconnected": "Deskonektatuta",
|
||||
"connectionStatusConnected": "Konektatuta",
|
||||
"uptime": "Uptime",
|
||||
"maxDown": "Max. Down",
|
||||
"maxUp": "Max. Up",
|
||||
"down": "Down",
|
||||
"up": "Up",
|
||||
"down": "Behera",
|
||||
"up": "Gora",
|
||||
"received": "Received",
|
||||
"sent": "Sent",
|
||||
"sent": "Bidalita",
|
||||
"externalIPAddress": "Ext. IP",
|
||||
"externalIPv6Address": "Ext. IPv6",
|
||||
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||
|
@ -189,7 +189,7 @@
|
|||
"plex": {
|
||||
"streams": "Active Streams",
|
||||
"albums": "Albums",
|
||||
"movies": "Movies",
|
||||
"movies": "Filmak",
|
||||
"tv": "TV Shows"
|
||||
},
|
||||
"sabnzbd": {
|
||||
|
@ -199,18 +199,18 @@
|
|||
},
|
||||
"rutorrent": {
|
||||
"active": "Active",
|
||||
"upload": "Upload",
|
||||
"download": "Download"
|
||||
"upload": "Kargatu",
|
||||
"download": "Jeitsierak"
|
||||
},
|
||||
"transmission": {
|
||||
"download": "Download",
|
||||
"upload": "Upload",
|
||||
"download": "Jeitsierak",
|
||||
"upload": "Kargatu",
|
||||
"leech": "Leech",
|
||||
"seed": "Seed"
|
||||
},
|
||||
"qbittorrent": {
|
||||
"download": "Download",
|
||||
"upload": "Upload",
|
||||
"download": "Jeitsierak",
|
||||
"upload": "Kargatu",
|
||||
"leech": "Leech",
|
||||
"seed": "Seed"
|
||||
},
|
||||
|
@ -223,8 +223,8 @@
|
|||
"invalid": "Invalid"
|
||||
},
|
||||
"deluge": {
|
||||
"download": "Download",
|
||||
"upload": "Upload",
|
||||
"download": "Jeitsierak",
|
||||
"upload": "Kargatu",
|
||||
"leech": "Leech",
|
||||
"seed": "Seed"
|
||||
},
|
||||
|
@ -233,15 +233,15 @@
|
|||
"cachemissbytes": "Cache Miss Bytes"
|
||||
},
|
||||
"downloadstation": {
|
||||
"download": "Download",
|
||||
"upload": "Upload",
|
||||
"download": "Jeitsierak",
|
||||
"upload": "Kargatu",
|
||||
"leech": "Leech",
|
||||
"seed": "Seed"
|
||||
},
|
||||
"sonarr": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"series": "Series",
|
||||
"series": "Serieak",
|
||||
"queue": "Queue",
|
||||
"unknown": "Ezezaguna"
|
||||
},
|
||||
|
@ -249,7 +249,7 @@
|
|||
"wanted": "Wanted",
|
||||
"missing": "Missing",
|
||||
"queued": "Queued",
|
||||
"movies": "Movies",
|
||||
"movies": "Filmak",
|
||||
"queue": "Queue",
|
||||
"unknown": "Ezezaguna"
|
||||
},
|
||||
|
@ -285,7 +285,7 @@
|
|||
},
|
||||
"netalertx": {
|
||||
"total": "Guztira",
|
||||
"connected": "Connected",
|
||||
"connected": "Konektatuta",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
},
|
||||
|
@ -302,8 +302,8 @@
|
|||
"latency": "Latency"
|
||||
},
|
||||
"speedtest": {
|
||||
"upload": "Upload",
|
||||
"download": "Download",
|
||||
"upload": "Kargatu",
|
||||
"download": "Jeitsierak",
|
||||
"ping": "Ping"
|
||||
},
|
||||
"portainer": {
|
||||
|
@ -315,7 +315,7 @@
|
|||
"download": "Downloaded",
|
||||
"nondownload": "Non-Downloaded",
|
||||
"read": "Read",
|
||||
"unread": "Unread",
|
||||
"unread": "Irakurri gabe",
|
||||
"downloadedread": "Downloaded & Read",
|
||||
"downloadedunread": "Downloaded & Unread",
|
||||
"nondownloadedread": "Non-Downloaded & Read",
|
||||
|
@ -405,7 +405,7 @@
|
|||
"medusa": {
|
||||
"wanted": "Wanted",
|
||||
"queued": "Queued",
|
||||
"series": "Series"
|
||||
"series": "Serieak"
|
||||
},
|
||||
"minecraft": {
|
||||
"players": "Jokalariak",
|
||||
|
@ -416,7 +416,7 @@
|
|||
},
|
||||
"miniflux": {
|
||||
"read": "Read",
|
||||
"unread": "Unread"
|
||||
"unread": "Irakurri gabe"
|
||||
},
|
||||
"authentik": {
|
||||
"users": "Users",
|
||||
|
@ -523,15 +523,15 @@
|
|||
"up_to_date": "Up to Date",
|
||||
"child_bridges": "Child Bridges",
|
||||
"child_bridges_status": "{{ok}}/{{total}}",
|
||||
"up": "Up",
|
||||
"up": "Gora",
|
||||
"pending": "Pending",
|
||||
"down": "Down"
|
||||
"down": "Behera"
|
||||
},
|
||||
"healthchecks": {
|
||||
"new": "New",
|
||||
"up": "Up",
|
||||
"up": "Gora",
|
||||
"grace": "In Grace Period",
|
||||
"down": "Down",
|
||||
"down": "Behera",
|
||||
"paused": "Paused",
|
||||
"status": "Status",
|
||||
"last_ping": "Last Ping",
|
||||
|
@ -646,8 +646,8 @@
|
|||
"load": "Load Avg",
|
||||
"memory": "Mem Usage",
|
||||
"wanStatus": "WAN Status",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"up": "Gora",
|
||||
"down": "Behera",
|
||||
"temp": "Temp",
|
||||
"disk": "Disk Usage",
|
||||
"wanIP": "WAN IP"
|
||||
|
@ -660,7 +660,7 @@
|
|||
},
|
||||
"immich": {
|
||||
"users": "Users",
|
||||
"photos": "Photos",
|
||||
"photos": "Argazkiak",
|
||||
"videos": "Videos",
|
||||
"storage": "Storage"
|
||||
},
|
||||
|
@ -672,14 +672,14 @@
|
|||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"series": "Serieak",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
"series": "Serieak",
|
||||
"books": "Books"
|
||||
},
|
||||
"diskstation": {
|
||||
|
@ -688,13 +688,13 @@
|
|||
"volumeAvailable": "Available"
|
||||
},
|
||||
"mylar": {
|
||||
"series": "Series",
|
||||
"issues": "Issues",
|
||||
"series": "Serieak",
|
||||
"issues": "Arazoak",
|
||||
"wanted": "Wanted"
|
||||
},
|
||||
"photoprism": {
|
||||
"albums": "Albums",
|
||||
"photos": "Photos",
|
||||
"photos": "Argazkiak",
|
||||
"videos": "Videos",
|
||||
"people": "People"
|
||||
},
|
||||
|
@ -772,7 +772,7 @@
|
|||
"books": "Books",
|
||||
"authors": "Authors",
|
||||
"categories": "Categories",
|
||||
"series": "Series"
|
||||
"series": "Serieak"
|
||||
},
|
||||
"jdownloader": {
|
||||
"downloadCount": "Queue",
|
||||
|
@ -781,7 +781,7 @@
|
|||
"downloadSpeed": "Speed"
|
||||
},
|
||||
"kavita": {
|
||||
"seriesCount": "Series",
|
||||
"seriesCount": "Serieak",
|
||||
"totalFiles": "Files"
|
||||
},
|
||||
"azuredevops": {
|
||||
|
@ -801,8 +801,8 @@
|
|||
"status": "Status",
|
||||
"online": "Online",
|
||||
"offline": "Offline",
|
||||
"name": "Name",
|
||||
"map": "Map",
|
||||
"name": "Izena",
|
||||
"map": "Mapa",
|
||||
"currentPlayers": "Current players",
|
||||
"players": "Jokalariak",
|
||||
"maxPlayers": "Max players",
|
||||
|
@ -819,10 +819,10 @@
|
|||
"recipes": "Recipes",
|
||||
"users": "Users",
|
||||
"categories": "Categories",
|
||||
"tags": "Tags"
|
||||
"tags": "Etiketak"
|
||||
},
|
||||
"openmediavault": {
|
||||
"downloading": "Downloading",
|
||||
"downloading": "Deskargatzen",
|
||||
"total": "Guztira",
|
||||
"running": "Running",
|
||||
"stopped": "Stopped",
|
||||
|
@ -832,8 +832,8 @@
|
|||
"openwrt": {
|
||||
"uptime": "Uptime",
|
||||
"cpuLoad": "CPU Load Avg (5m)",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"up": "Gora",
|
||||
"down": "Behera",
|
||||
"bytesTx": "Transmitted",
|
||||
"bytesRx": "Received"
|
||||
},
|
||||
|
@ -846,9 +846,9 @@
|
|||
"sitesDown": "Sites Down",
|
||||
"paused": "Paused",
|
||||
"notyetchecked": "Not Yet Checked",
|
||||
"up": "Up",
|
||||
"up": "Gora",
|
||||
"seemsdown": "Seems Down",
|
||||
"down": "Down",
|
||||
"down": "Behera",
|
||||
"unknown": "Ezezaguna"
|
||||
},
|
||||
"calendar": {
|
||||
|
@ -856,7 +856,7 @@
|
|||
"physicalRelease": "Physical release",
|
||||
"digitalRelease": "Digital release",
|
||||
"noEventsToday": "No events for today!",
|
||||
"noEventsFound": "No events found"
|
||||
"noEventsFound": "Ez da gertaerarik aurkitu."
|
||||
},
|
||||
"romm": {
|
||||
"platforms": "Platforms",
|
||||
|
@ -868,7 +868,7 @@
|
|||
},
|
||||
"mailcow": {
|
||||
"domains": "Domains",
|
||||
"mailboxes": "Mailboxes",
|
||||
"mailboxes": "Gutunontziak",
|
||||
"mails": "Mails",
|
||||
"storage": "Storage"
|
||||
},
|
||||
|
@ -877,15 +877,16 @@
|
|||
"criticals": "Criticals"
|
||||
},
|
||||
"plantit": {
|
||||
"events": "Events",
|
||||
"plants": "Plants",
|
||||
"photos": "Photos",
|
||||
"events": "Ekitaldiak",
|
||||
"plants": "Landareak",
|
||||
"photos": "Argazkiak",
|
||||
"species": "Species"
|
||||
},
|
||||
"gitea": {
|
||||
"notifications": "Notifications",
|
||||
"issues": "Issues",
|
||||
"pulls": "Pull Requests"
|
||||
"notifications": "Jakinarazpenak",
|
||||
"issues": "Arazoak",
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scenes",
|
||||
|
@ -894,34 +895,34 @@
|
|||
"playDuration": "Time Watched",
|
||||
"sceneSize": "Scenes Size",
|
||||
"sceneDuration": "Scenes Duration",
|
||||
"images": "Images",
|
||||
"imageSize": "Images Size",
|
||||
"images": "Irudia",
|
||||
"imageSize": "Irudiaren tamaina",
|
||||
"galleries": "Galleries",
|
||||
"performers": "Performers",
|
||||
"studios": "Studios",
|
||||
"movies": "Movies",
|
||||
"tags": "Tags",
|
||||
"movies": "Filmak",
|
||||
"tags": "Etiketak",
|
||||
"oCount": "O Count"
|
||||
},
|
||||
"tandoor": {
|
||||
"users": "Users",
|
||||
"recipes": "Recipes",
|
||||
"keywords": "Keywords"
|
||||
"keywords": "Hitz gakoak"
|
||||
},
|
||||
"homebox": {
|
||||
"items": "Items",
|
||||
"items": "Elementuak",
|
||||
"totalWithWarranty": "With Warranty",
|
||||
"locations": "Locations",
|
||||
"labels": "Labels",
|
||||
"labels": "Etiketak",
|
||||
"users": "Users",
|
||||
"totalValue": "Total Value"
|
||||
"totalValue": "Guztira"
|
||||
},
|
||||
"crowdsec": {
|
||||
"alerts": "Alerts",
|
||||
"bans": "Bans"
|
||||
},
|
||||
"wgeasy": {
|
||||
"connected": "Connected",
|
||||
"connected": "Konektatuta",
|
||||
"enabled": "Enabled",
|
||||
"disabled": "Disabled",
|
||||
"total": "Guztira"
|
||||
|
@ -934,8 +935,8 @@
|
|||
},
|
||||
"myspeed": {
|
||||
"ping": "Ping",
|
||||
"download": "Download",
|
||||
"upload": "Upload"
|
||||
"download": "Jeitsierak",
|
||||
"upload": "Kargatu"
|
||||
},
|
||||
"stocks": {
|
||||
"stocks": "Stocks",
|
||||
|
@ -951,23 +952,23 @@
|
|||
},
|
||||
"linkwarden": {
|
||||
"links": "Links",
|
||||
"collections": "Collections",
|
||||
"tags": "Tags"
|
||||
"collections": "Bildumak",
|
||||
"tags": "Etiketak"
|
||||
},
|
||||
"zabbix": {
|
||||
"unclassified": "Not classified",
|
||||
"information": "Informazioa",
|
||||
"warning": "Warning",
|
||||
"average": "Average",
|
||||
"high": "High",
|
||||
"warning": "Abisua",
|
||||
"average": "Batez besteko",
|
||||
"high": "Altua",
|
||||
"disaster": "Disaster"
|
||||
},
|
||||
"lubelogger": {
|
||||
"vehicle": "Vehicle",
|
||||
"vehicles": "Vehicles",
|
||||
"vehicles": "Ibilgailuak",
|
||||
"serviceRecords": "Service Records",
|
||||
"reminders": "Reminders",
|
||||
"nextReminder": "Next Reminder",
|
||||
"reminders": "Oroigarriak",
|
||||
"nextReminder": "Hurrengo abisua",
|
||||
"none": "None"
|
||||
},
|
||||
"vikunja": {
|
||||
|
@ -977,7 +978,7 @@
|
|||
"tasksInProgress": "Tasks In Progress"
|
||||
},
|
||||
"headscale": {
|
||||
"name": "Name",
|
||||
"name": "Izena",
|
||||
"address": "Address",
|
||||
"last_seen": "Last Seen",
|
||||
"status": "Status",
|
||||
|
@ -985,10 +986,10 @@
|
|||
"offline": "Offline"
|
||||
},
|
||||
"beszel": {
|
||||
"name": "Name",
|
||||
"name": "Izena",
|
||||
"systems": "Systems",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"up": "Gora",
|
||||
"down": "Behera",
|
||||
"paused": "Paused",
|
||||
"pending": "Pending",
|
||||
"status": "Status",
|
||||
|
@ -999,23 +1000,23 @@
|
|||
"network": "NET"
|
||||
},
|
||||
"argocd": {
|
||||
"apps": "Apps",
|
||||
"synced": "Synced",
|
||||
"apps": "Aplikazioak",
|
||||
"synced": "Sinkronizatuta",
|
||||
"outOfSync": "Out Of Sync",
|
||||
"healthy": "Osasuntsu",
|
||||
"degraded": "Degraded",
|
||||
"progressing": "Progressing",
|
||||
"missing": "Missing",
|
||||
"suspended": "Suspended"
|
||||
"suspended": "Etenda"
|
||||
},
|
||||
"spoolman": {
|
||||
"loading": "Loading"
|
||||
},
|
||||
"gitlab": {
|
||||
"groups": "Groups",
|
||||
"issues": "Issues",
|
||||
"groups": "Taldeak",
|
||||
"issues": "Arazoak",
|
||||
"merges": "Merge Requests",
|
||||
"projects": "Projects"
|
||||
"projects": "Proiektuak"
|
||||
},
|
||||
"apcups": {
|
||||
"status": "Status",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Battery Charge",
|
||||
"timeleft": "Time Left"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Tags"
|
||||
"tags": "Etiketak"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Network",
|
||||
"connected": "Konektatuta",
|
||||
"disconnected": "Deskonektatuta",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Available",
|
||||
"update_no": "Up to Date",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Files"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notifications",
|
||||
"issues": "Issues",
|
||||
"pulls": "Pull Requests"
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scenes",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Battery Charge",
|
||||
"timeleft": "Aikaa jäljellä"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Network",
|
||||
"connected": "Connected",
|
||||
"disconnected": "Disconnected",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Saatavilla",
|
||||
"update_no": "Up to Date",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Files"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -85,16 +85,16 @@
|
|||
"ping": {
|
||||
"error": "Erreur",
|
||||
"ping": "Latence",
|
||||
"down": "Bas",
|
||||
"up": "Haut",
|
||||
"down": "Down",
|
||||
"up": "Up",
|
||||
"not_available": "Non disponible"
|
||||
},
|
||||
"siteMonitor": {
|
||||
"http_status": "Statut HTTP",
|
||||
"error": "Erreur",
|
||||
"response": "Réponse",
|
||||
"down": "Bas",
|
||||
"up": "Haut",
|
||||
"down": "Down",
|
||||
"up": "Up",
|
||||
"not_available": "Non disponible"
|
||||
},
|
||||
"emby": {
|
||||
|
@ -142,15 +142,15 @@
|
|||
"connectionStatusDisconnected": "Déconnecté",
|
||||
"connectionStatusConnected": "Connecté",
|
||||
"uptime": "Démarré depuis",
|
||||
"maxDown": "Max. Bas",
|
||||
"maxUp": "Max. Haut",
|
||||
"down": "Bas",
|
||||
"up": "Haut",
|
||||
"maxDown": "Max. Down",
|
||||
"maxUp": "Max. Up",
|
||||
"down": "Down",
|
||||
"up": "Up",
|
||||
"received": "Reçu",
|
||||
"sent": "Envoyé",
|
||||
"externalIPAddress": "IP externe",
|
||||
"externalIPv6Address": "Ext. IPv6",
|
||||
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||
"externalIPv6Address": "IPv6 externe",
|
||||
"externalIPv6Prefix": "Préfixe IPv6 externe"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "En amont",
|
||||
|
@ -178,7 +178,7 @@
|
|||
"connectedAp": "AP connectés",
|
||||
"activeUser": "Périphériques actifs",
|
||||
"alerts": "Alertes",
|
||||
"connectedGateways": "Connected gateways",
|
||||
"connectedGateways": "Passerelles connectées",
|
||||
"connectedSwitches": "Switchs connectés"
|
||||
},
|
||||
"nzbget": {
|
||||
|
@ -523,15 +523,15 @@
|
|||
"up_to_date": "À jour",
|
||||
"child_bridges": "Child Bridges",
|
||||
"child_bridges_status": "{{ok}}/{{total}}",
|
||||
"up": "Haut",
|
||||
"up": "Up",
|
||||
"pending": "En attente",
|
||||
"down": "Bas"
|
||||
"down": "Down"
|
||||
},
|
||||
"healthchecks": {
|
||||
"new": "Nouveau",
|
||||
"up": "Haut",
|
||||
"up": "Up",
|
||||
"grace": "En Période de Grâce",
|
||||
"down": "Bas",
|
||||
"down": "Down",
|
||||
"paused": "En Pause",
|
||||
"status": "Statut",
|
||||
"last_ping": "Dernier Ping",
|
||||
|
@ -646,8 +646,8 @@
|
|||
"load": "Charge moy.",
|
||||
"memory": "Util. Mém.",
|
||||
"wanStatus": "Statut WAN",
|
||||
"up": "Haut",
|
||||
"down": "Bas",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"temp": "Température",
|
||||
"disk": "Util. Disque",
|
||||
"wanIP": "IP WAN"
|
||||
|
@ -832,8 +832,8 @@
|
|||
"openwrt": {
|
||||
"uptime": "Démarré depuis",
|
||||
"cpuLoad": "Charge moyenne CPU (5 min)",
|
||||
"up": "Haut",
|
||||
"down": "Bas",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"bytesTx": "Transmis",
|
||||
"bytesRx": "Reçu"
|
||||
},
|
||||
|
@ -846,9 +846,9 @@
|
|||
"sitesDown": "Hors ligne",
|
||||
"paused": "En Pause",
|
||||
"notyetchecked": "Non vérifié",
|
||||
"up": "Haut",
|
||||
"up": "Up",
|
||||
"seemsdown": "Semble hors ligne",
|
||||
"down": "Bas",
|
||||
"down": "Down",
|
||||
"unknown": "Inconnu"
|
||||
},
|
||||
"calendar": {
|
||||
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notifications",
|
||||
"issues": "Anomalies",
|
||||
"pulls": "Demandes de tirage"
|
||||
"pulls": "Demandes de tirage",
|
||||
"repositories": "Dépôts"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scènes",
|
||||
|
@ -987,8 +988,8 @@
|
|||
"beszel": {
|
||||
"name": "Nom",
|
||||
"systems": "Systèmes",
|
||||
"up": "Haut",
|
||||
"down": "Bas",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"paused": "En Pause",
|
||||
"pending": "En attente",
|
||||
"status": "Statut",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Charge de la batterie",
|
||||
"timeleft": "Temps restant"
|
||||
},
|
||||
"hoarder": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"karakeep": {
|
||||
"bookmarks": "Marque-pages",
|
||||
"favorites": "Favoris",
|
||||
"archived": "Archivé",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"lists": "Listes",
|
||||
"tags": "Étiquettes"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Réseau",
|
||||
"connected": "Connecté",
|
||||
"disconnected": "Déconnecté",
|
||||
"updateStatus": "Mise à jour",
|
||||
"update_yes": "Disponible",
|
||||
"update_no": "À jour",
|
||||
"downloads": "Téléchargements",
|
||||
"uploads": "Téléversements",
|
||||
"sharedFiles": "Fichiers"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notifications",
|
||||
"issues": "Issues",
|
||||
"pulls": "Pull Requests"
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scenes",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Battery Charge",
|
||||
"timeleft": "זמן שנותר"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Network",
|
||||
"connected": "Connected",
|
||||
"disconnected": "Disconnected",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "זמין",
|
||||
"update_no": "Up to Date",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Files"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notifications",
|
||||
"issues": "Issues",
|
||||
"pulls": "Pull Requests"
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scenes",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Battery Charge",
|
||||
"timeleft": "Time Left"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Network",
|
||||
"connected": "Connected",
|
||||
"disconnected": "Disconnected",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Available",
|
||||
"update_no": "Up to Date",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Files"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Obavijesti",
|
||||
"issues": "Problemi",
|
||||
"pulls": "Zahtjevi za povlačenje"
|
||||
"pulls": "Zahtjevi za povlačenje",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scene",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Napunjenost baterije",
|
||||
"timeleft": "Preostalo vrijeme"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Oznake"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Mreža",
|
||||
"connected": "Povezano",
|
||||
"disconnected": "Odspojeno",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Dostupno",
|
||||
"update_no": "Aktualno",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Datoteke"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Üzenetek",
|
||||
"issues": "Problémák",
|
||||
"pulls": "Pull request-ek"
|
||||
"pulls": "Pull request-ek",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Jelenetek",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Akku töltöttsége",
|
||||
"timeleft": "Hátralévő idő"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Címkék"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Hálózat",
|
||||
"connected": "Csatlakozva",
|
||||
"disconnected": "Kapcsolat bontva",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Elérhető",
|
||||
"update_no": "Naprakész",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Fájlok"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -342,7 +342,7 @@
|
|||
"totalNxDomain": "Domain NX",
|
||||
"totalRefused": "Ditolak",
|
||||
"totalAuthoritative": "Authoritative",
|
||||
"totalRecursive": "Recursive",
|
||||
"totalRecursive": "Rekursif",
|
||||
"totalCached": "Cached",
|
||||
"totalBlocked": "Terblokir",
|
||||
"totalDropped": "Dropped",
|
||||
|
@ -705,8 +705,8 @@
|
|||
"time": "Waktu"
|
||||
},
|
||||
"firefly": {
|
||||
"networth": "Net Worth",
|
||||
"budget": "Budget"
|
||||
"networth": "Kekayaan Bersih",
|
||||
"budget": "Anggaran"
|
||||
},
|
||||
"grafana": {
|
||||
"dashboards": "Dasbor",
|
||||
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notifikasi",
|
||||
"issues": "Isu",
|
||||
"pulls": "Pull Requests"
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Adegan",
|
||||
|
@ -965,7 +966,7 @@
|
|||
"lubelogger": {
|
||||
"vehicle": "Kendaraan",
|
||||
"vehicles": "Kendaraan",
|
||||
"serviceRecords": "Service Records",
|
||||
"serviceRecords": "Catatan Servis",
|
||||
"reminders": "Pengingat",
|
||||
"nextReminder": "Pengingat Berikutnya",
|
||||
"none": "Tidak ada"
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Sisa Baterai",
|
||||
"timeleft": "Sisa Waktu"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Tag"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Jaringan",
|
||||
"connected": "Tersambung",
|
||||
"disconnected": "Terputus",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Tersedia",
|
||||
"update_no": "Terbaru",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "File"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -149,8 +149,8 @@
|
|||
"received": "Ricevuti",
|
||||
"sent": "Inviati",
|
||||
"externalIPAddress": "IP Esterno",
|
||||
"externalIPv6Address": "Ext. IPv6",
|
||||
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||
"externalIPv6Address": "IPv6 Esterno",
|
||||
"externalIPv6Prefix": "Prefisso IPv6 Esterno"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Upstream",
|
||||
|
@ -178,7 +178,7 @@
|
|||
"connectedAp": "AP Connessi",
|
||||
"activeUser": "Dispositivi attivi",
|
||||
"alerts": "Allarmi",
|
||||
"connectedGateways": "Connected gateways",
|
||||
"connectedGateways": "Gateway connessi",
|
||||
"connectedSwitches": "Switch connessi"
|
||||
},
|
||||
"nzbget": {
|
||||
|
@ -338,7 +338,7 @@
|
|||
"technitium": {
|
||||
"totalQueries": "Richieste",
|
||||
"totalNoError": "Successo",
|
||||
"totalServerFailure": "Failures",
|
||||
"totalServerFailure": "Fallimenti",
|
||||
"totalNxDomain": "NX Domains",
|
||||
"totalRefused": "Refused",
|
||||
"totalAuthoritative": "Authoritative",
|
||||
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notifiche",
|
||||
"issues": "Problemi",
|
||||
"pulls": "Richieste di Pull"
|
||||
"pulls": "Richieste di Pull",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scene",
|
||||
|
@ -942,7 +943,7 @@
|
|||
"loading": "Caricamento",
|
||||
"open": "Open - US Market",
|
||||
"closed": "Closed - US Market",
|
||||
"invalidConfiguration": "Invalid Configuration"
|
||||
"invalidConfiguration": "Configurazione non valida"
|
||||
},
|
||||
"frigate": {
|
||||
"cameras": "Cameras",
|
||||
|
@ -958,7 +959,7 @@
|
|||
"unclassified": "Not classified",
|
||||
"information": "Informazioni",
|
||||
"warning": "Warning",
|
||||
"average": "Average",
|
||||
"average": "Media",
|
||||
"high": "High",
|
||||
"disaster": "Disaster"
|
||||
},
|
||||
|
@ -986,7 +987,7 @@
|
|||
},
|
||||
"beszel": {
|
||||
"name": "Nome",
|
||||
"systems": "Systems",
|
||||
"systems": "Sistemi",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
"paused": "In Pausa",
|
||||
|
@ -995,15 +996,15 @@
|
|||
"updated": "Aggiornato",
|
||||
"cpu": "CPU",
|
||||
"memory": "MEM",
|
||||
"disk": "Disk",
|
||||
"disk": "Disco",
|
||||
"network": "NET"
|
||||
},
|
||||
"argocd": {
|
||||
"apps": "Apps",
|
||||
"synced": "Synced",
|
||||
"outOfSync": "Out Of Sync",
|
||||
"apps": "Applicazioni",
|
||||
"synced": "Sincronizzato",
|
||||
"outOfSync": "Non Sincronizzato",
|
||||
"healthy": "Sano",
|
||||
"degraded": "Degraded",
|
||||
"degraded": "Degradato",
|
||||
"progressing": "Progressing",
|
||||
"missing": "Mancanti",
|
||||
"suspended": "Suspended"
|
||||
|
@ -1012,10 +1013,10 @@
|
|||
"loading": "Caricamento"
|
||||
},
|
||||
"gitlab": {
|
||||
"groups": "Groups",
|
||||
"groups": "Gruppi",
|
||||
"issues": "Problemi",
|
||||
"merges": "Merge Requests",
|
||||
"projects": "Projects"
|
||||
"merges": "Richieste di merge",
|
||||
"projects": "Progetti"
|
||||
},
|
||||
"apcups": {
|
||||
"status": "Stato",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Carica Batteria",
|
||||
"timeleft": "Tempo Rimanente"
|
||||
},
|
||||
"hoarder": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"karakeep": {
|
||||
"bookmarks": "Segnalibri",
|
||||
"favorites": "Preferiti",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"lists": "Liste",
|
||||
"tags": "Tag"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Rete",
|
||||
"connected": "Connesso",
|
||||
"disconnected": "Disconnesso",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Disponibili",
|
||||
"update_no": "Aggiornato",
|
||||
"downloads": "Download",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "File"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "通知",
|
||||
"issues": "課題",
|
||||
"pulls": "プルリクエスト"
|
||||
"pulls": "プルリクエスト",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "シーン",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "バッテリー充電",
|
||||
"timeleft": "残り時間"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "タグ"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "ネットワーク",
|
||||
"connected": "接続済",
|
||||
"disconnected": "切断されました",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "利用可",
|
||||
"update_no": "最新",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "ファイル"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -14,11 +14,11 @@
|
|||
"date": "{{value, date}}",
|
||||
"relativeDate": "{{value, relativeDate}}",
|
||||
"duration": "{{value, duration}}",
|
||||
"months": "mo",
|
||||
"days": "d",
|
||||
"hours": "h",
|
||||
"minutes": "m",
|
||||
"seconds": "s"
|
||||
"months": "달",
|
||||
"days": "일",
|
||||
"hours": "시",
|
||||
"minutes": "분",
|
||||
"seconds": "초"
|
||||
},
|
||||
"widget": {
|
||||
"missing_type": "없는 위젯 유형: {{type}}",
|
||||
|
@ -51,7 +51,7 @@
|
|||
},
|
||||
"unifi": {
|
||||
"users": "사용자",
|
||||
"uptime": "Uptime",
|
||||
"uptime": "가동 시간",
|
||||
"days": "일",
|
||||
"wan": "WAN",
|
||||
"lan": "LAN",
|
||||
|
@ -141,7 +141,7 @@
|
|||
"connectionStatusDisconnecting": "연결을 끊는 중...",
|
||||
"connectionStatusDisconnected": "연결 끊김",
|
||||
"connectionStatusConnected": "연결됨",
|
||||
"uptime": "Uptime",
|
||||
"uptime": "가동 시간",
|
||||
"maxDown": "Max. Down",
|
||||
"maxUp": "Max. Up",
|
||||
"down": "Down",
|
||||
|
@ -188,7 +188,7 @@
|
|||
},
|
||||
"plex": {
|
||||
"streams": "활성 스트림",
|
||||
"albums": "Albums",
|
||||
"albums": "앨범",
|
||||
"movies": "영화",
|
||||
"tv": "TV 쇼"
|
||||
},
|
||||
|
@ -440,8 +440,8 @@
|
|||
"total": "총합",
|
||||
"free": "남음",
|
||||
"used": "사용",
|
||||
"days": "d",
|
||||
"hours": "h",
|
||||
"days": "일",
|
||||
"hours": "시",
|
||||
"crit": "Crit",
|
||||
"read": "읽음",
|
||||
"write": "쓰기",
|
||||
|
@ -556,7 +556,7 @@
|
|||
},
|
||||
"truenas": {
|
||||
"load": "System Load",
|
||||
"uptime": "Uptime",
|
||||
"uptime": "가동 시간",
|
||||
"alerts": "경고"
|
||||
},
|
||||
"pyload": {
|
||||
|
@ -606,7 +606,7 @@
|
|||
"mikrotik": {
|
||||
"cpuLoad": "CPU Load",
|
||||
"memoryUsed": "메모리 사용량",
|
||||
"uptime": "Uptime",
|
||||
"uptime": "가동 시간",
|
||||
"numberOfLeases": "Leases"
|
||||
},
|
||||
"xteve": {
|
||||
|
@ -667,9 +667,9 @@
|
|||
"uptimekuma": {
|
||||
"up": "Sites Up",
|
||||
"down": "Sites Down",
|
||||
"uptime": "Uptime",
|
||||
"uptime": "가동 시간",
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
"m": "분"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "시리즈",
|
||||
|
@ -684,7 +684,7 @@
|
|||
},
|
||||
"diskstation": {
|
||||
"days": "일",
|
||||
"uptime": "Uptime",
|
||||
"uptime": "가동 시간",
|
||||
"volumeAvailable": "이용 가능"
|
||||
},
|
||||
"mylar": {
|
||||
|
@ -693,7 +693,7 @@
|
|||
"wanted": "요청"
|
||||
},
|
||||
"photoprism": {
|
||||
"albums": "Albums",
|
||||
"albums": "앨범",
|
||||
"photos": "사진",
|
||||
"videos": "동영상",
|
||||
"people": "People"
|
||||
|
@ -705,8 +705,8 @@
|
|||
"time": "Time"
|
||||
},
|
||||
"firefly": {
|
||||
"networth": "Net Worth",
|
||||
"budget": "Budget"
|
||||
"networth": "순자산",
|
||||
"budget": "예산"
|
||||
},
|
||||
"grafana": {
|
||||
"dashboards": "대시보드",
|
||||
|
@ -746,7 +746,7 @@
|
|||
"gatus": {
|
||||
"up": "Sites Up",
|
||||
"down": "Sites Down",
|
||||
"uptime": "Uptime"
|
||||
"uptime": "가동 시간"
|
||||
},
|
||||
"ghostfolio": {
|
||||
"gross_percent_today": "오늘",
|
||||
|
@ -816,7 +816,7 @@
|
|||
"totalUsed": "Used Storage"
|
||||
},
|
||||
"mealie": {
|
||||
"recipes": "Recipes",
|
||||
"recipes": "레시피",
|
||||
"users": "사용자",
|
||||
"categories": "분류",
|
||||
"tags": "태그"
|
||||
|
@ -830,7 +830,7 @@
|
|||
"failed": "Failed"
|
||||
},
|
||||
"openwrt": {
|
||||
"uptime": "Uptime",
|
||||
"uptime": "가동 시간",
|
||||
"cpuLoad": "CPU Load Avg (5m)",
|
||||
"up": "Up",
|
||||
"down": "Down",
|
||||
|
@ -839,7 +839,7 @@
|
|||
},
|
||||
"uptimerobot": {
|
||||
"status": "상태",
|
||||
"uptime": "Uptime",
|
||||
"uptime": "가동 시간",
|
||||
"lastDown": "Last Downtime",
|
||||
"downDuration": "Downtime Duration",
|
||||
"sitesUp": "Sites Up",
|
||||
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "알림",
|
||||
"issues": "Issues",
|
||||
"pulls": "Pull Requests"
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "장면",
|
||||
|
@ -905,7 +906,7 @@
|
|||
},
|
||||
"tandoor": {
|
||||
"users": "사용자",
|
||||
"recipes": "Recipes",
|
||||
"recipes": "레시피",
|
||||
"keywords": "키워드"
|
||||
},
|
||||
"homebox": {
|
||||
|
@ -946,7 +947,7 @@
|
|||
},
|
||||
"frigate": {
|
||||
"cameras": "카메라",
|
||||
"uptime": "Uptime",
|
||||
"uptime": "가동 시간",
|
||||
"version": "버전"
|
||||
},
|
||||
"linkwarden": {
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "배터리 충전 중",
|
||||
"timeleft": "남은 시간"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "태그"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "네트워크",
|
||||
"connected": "연결됨",
|
||||
"disconnected": "연결 끊김",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "이용 가능",
|
||||
"update_no": "최신 상태",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "파일"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notifications",
|
||||
"issues": "Issues",
|
||||
"pulls": "Pull Requests"
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scenes",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Battery Charge",
|
||||
"timeleft": "Atlikušais laiks"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Network",
|
||||
"connected": "Connected",
|
||||
"disconnected": "Disconnected",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Available",
|
||||
"update_no": "Up to Date",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Files"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notifications",
|
||||
"issues": "Issues",
|
||||
"pulls": "Pull Requests"
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Adegan",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Bateri dicas",
|
||||
"timeleft": "Masa Tinggal"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Tanda nama"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Rangkaian",
|
||||
"connected": "Connected",
|
||||
"disconnected": "Sambungan Terputus",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Sudah Ada",
|
||||
"update_no": "Terkemaskini",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Files"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notificaties",
|
||||
"issues": "Problemen",
|
||||
"pulls": "Pull Requests"
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scènes",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Batterij opladen",
|
||||
"timeleft": "Resterende Tijd"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Label"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Netwerk",
|
||||
"connected": "Verbonden",
|
||||
"disconnected": "Verbinding verbroken",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Beschikbaar",
|
||||
"update_no": "Bijgewerkt",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Bestanden"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Varslinger",
|
||||
"issues": "Issues",
|
||||
"pulls": "Forespørsel"
|
||||
"pulls": "Forespørsel",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scener",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Batteriladning",
|
||||
"timeleft": "Gjenstående tid"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Stikkord"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Nettverk",
|
||||
"connected": "Tilkoblet",
|
||||
"disconnected": "Frakoblet",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Tilgjengelig",
|
||||
"update_no": "Oppdatert",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Files"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -149,8 +149,8 @@
|
|||
"received": "Odebrane",
|
||||
"sent": "Wysłane",
|
||||
"externalIPAddress": "Pub. IP",
|
||||
"externalIPv6Address": "Ext. IPv6",
|
||||
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||
"externalIPv6Address": "Zewn. IPv6",
|
||||
"externalIPv6Prefix": "Zewn. prefiks IPv6"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Upstreams",
|
||||
|
@ -705,8 +705,8 @@
|
|||
"time": "Czas"
|
||||
},
|
||||
"firefly": {
|
||||
"networth": "Net Worth",
|
||||
"budget": "Budget"
|
||||
"networth": "Wartość netto",
|
||||
"budget": "Budżet"
|
||||
},
|
||||
"grafana": {
|
||||
"dashboards": "Panel główny",
|
||||
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Powiadomienia",
|
||||
"issues": "Zgłoszenia",
|
||||
"pulls": "Żądania Pull"
|
||||
"pulls": "Żądania Pull",
|
||||
"repositories": "Repozytoria"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Sceny",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Stan baterii",
|
||||
"timeleft": "Pozostało"
|
||||
},
|
||||
"hoarder": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"karakeep": {
|
||||
"bookmarks": "Zakładki",
|
||||
"favorites": "Ulubione",
|
||||
"archived": "Zarchiwizowane",
|
||||
"highlights": "Wyróżnione",
|
||||
"lists": "Listy",
|
||||
"tags": "Tagi"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Sieć",
|
||||
"connected": "Połączono",
|
||||
"disconnected": "Rozłączono",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Dostępne",
|
||||
"update_no": "Aktualny",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Pliki"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notificações",
|
||||
"issues": "Problemas",
|
||||
"pulls": "Solicitar pull"
|
||||
"pulls": "Solicitar pull",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Cenas",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Carga da bateria",
|
||||
"timeleft": "Tempo Restante"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Etiquetas"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Rede",
|
||||
"connected": "Conectado",
|
||||
"disconnected": "Desconectado",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Disponível",
|
||||
"update_no": "Atualizado",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Ficheiros"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -47,7 +47,7 @@
|
|||
"load": "Carga",
|
||||
"temp": "TEMP",
|
||||
"max": "Máximo",
|
||||
"uptime": "CIMA"
|
||||
"uptime": "ATIVO"
|
||||
},
|
||||
"unifi": {
|
||||
"users": "Usuários",
|
||||
|
@ -61,7 +61,7 @@
|
|||
"wlan_devices": "Dispositivos WLAN",
|
||||
"lan_users": "Usuários de LAN",
|
||||
"wlan_users": "Usuários de WLAN",
|
||||
"up": "CIMA",
|
||||
"up": "ATIVO",
|
||||
"down": "Desligado",
|
||||
"wait": "Por favor, aguarde",
|
||||
"empty_data": "Status do Subsistema desconhecido"
|
||||
|
@ -149,8 +149,8 @@
|
|||
"received": "Recebido",
|
||||
"sent": "Enviado",
|
||||
"externalIPAddress": "IP Externo",
|
||||
"externalIPv6Address": "Ext. IPv6",
|
||||
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||
"externalIPv6Address": "IPv6 Externo",
|
||||
"externalIPv6Prefix": "Prefixo IPv6 Externo"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Streams de Envio",
|
||||
|
@ -178,7 +178,7 @@
|
|||
"connectedAp": "APs Ligados",
|
||||
"activeUser": "Dispositivos ativos",
|
||||
"alerts": "Alertas",
|
||||
"connectedGateways": "Connected gateways",
|
||||
"connectedGateways": "Gateways conectados",
|
||||
"connectedSwitches": "Switches conectados"
|
||||
},
|
||||
"nzbget": {
|
||||
|
@ -229,8 +229,8 @@
|
|||
"seed": "Semente"
|
||||
},
|
||||
"develancacheui": {
|
||||
"cachehitbytes": "Cache Hit Bytes",
|
||||
"cachemissbytes": "Cache Miss Bytes"
|
||||
"cachehitbytes": "Bytes de Acerto de Cache",
|
||||
"cachemissbytes": "Bytes de Falha de Cache"
|
||||
},
|
||||
"downloadstation": {
|
||||
"download": "Descarregar",
|
||||
|
@ -313,13 +313,13 @@
|
|||
},
|
||||
"suwayomi": {
|
||||
"download": "Baixado",
|
||||
"nondownload": "Non-Downloaded",
|
||||
"nondownload": "Não Baixado",
|
||||
"read": "Lido",
|
||||
"unread": "Não lida",
|
||||
"downloadedread": "Downloaded & Read",
|
||||
"downloadedunread": "Downloaded & Unread",
|
||||
"nondownloadedread": "Non-Downloaded & Read",
|
||||
"nondownloadedunread": "Non-Downloaded & Unread"
|
||||
"downloadedread": "Baixado e Lido",
|
||||
"downloadedunread": "Baixado e Não Lido",
|
||||
"nondownloadedread": "Não Baixado e Lido",
|
||||
"nondownloadedunread": "Não Baixado e Não Lido"
|
||||
},
|
||||
"tailscale": {
|
||||
"address": "Endereço",
|
||||
|
@ -337,15 +337,15 @@
|
|||
},
|
||||
"technitium": {
|
||||
"totalQueries": "Consultas",
|
||||
"totalNoError": "Success",
|
||||
"totalServerFailure": "Failures",
|
||||
"totalNxDomain": "NX Domains",
|
||||
"totalRefused": "Refused",
|
||||
"totalAuthoritative": "Authoritative",
|
||||
"totalRecursive": "Recursive",
|
||||
"totalCached": "Cached",
|
||||
"totalNoError": "Sucesso",
|
||||
"totalServerFailure": "Falhas",
|
||||
"totalNxDomain": "Domínios NX",
|
||||
"totalRefused": "Recusado",
|
||||
"totalAuthoritative": "Autoritativo",
|
||||
"totalRecursive": "Recursivo",
|
||||
"totalCached": "Em cache",
|
||||
"totalBlocked": "Bloqueado",
|
||||
"totalDropped": "Dropped",
|
||||
"totalDropped": "Perdidos",
|
||||
"totalClients": "Clientes"
|
||||
},
|
||||
"tdarr": {
|
||||
|
@ -436,7 +436,7 @@
|
|||
"temp": "TEMP",
|
||||
"_temp": "Temperatura",
|
||||
"warn": "Aviso",
|
||||
"uptime": "CIMA",
|
||||
"uptime": "ATIVO",
|
||||
"total": "Total",
|
||||
"free": "Livre",
|
||||
"used": "Utilizado",
|
||||
|
@ -705,8 +705,8 @@
|
|||
"time": "Hora"
|
||||
},
|
||||
"firefly": {
|
||||
"networth": "Net Worth",
|
||||
"budget": "Budget"
|
||||
"networth": "Valor Líquido",
|
||||
"budget": "Orçamento"
|
||||
},
|
||||
"grafana": {
|
||||
"dashboards": "Painéis",
|
||||
|
@ -860,16 +860,16 @@
|
|||
},
|
||||
"romm": {
|
||||
"platforms": "Plataformas",
|
||||
"totalRoms": "Games",
|
||||
"totalRoms": "Jogos",
|
||||
"saves": "Saves",
|
||||
"states": "States",
|
||||
"screenshots": "Screenshots",
|
||||
"totalfilesize": "Total Size"
|
||||
"states": "Estados",
|
||||
"screenshots": "Capturas de Tela",
|
||||
"totalfilesize": "Tamanho total"
|
||||
},
|
||||
"mailcow": {
|
||||
"domains": "Domínios",
|
||||
"mailboxes": "Mailboxes",
|
||||
"mails": "Mails",
|
||||
"mailboxes": "Caixas de e-mail",
|
||||
"mails": "Mensagens",
|
||||
"storage": "Armazenamento"
|
||||
},
|
||||
"netdata": {
|
||||
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notificações",
|
||||
"issues": "Problemas",
|
||||
"pulls": "Solicitações de Envio"
|
||||
"pulls": "Solicitações de Envio",
|
||||
"repositories": "Repositórios"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Cenas",
|
||||
|
@ -951,30 +952,30 @@
|
|||
},
|
||||
"linkwarden": {
|
||||
"links": "Links",
|
||||
"collections": "Collections",
|
||||
"collections": "Coleções",
|
||||
"tags": "Marcadores"
|
||||
},
|
||||
"zabbix": {
|
||||
"unclassified": "Not classified",
|
||||
"unclassified": "Não classificado",
|
||||
"information": "Informação",
|
||||
"warning": "Warning",
|
||||
"average": "Average",
|
||||
"high": "High",
|
||||
"disaster": "Disaster"
|
||||
"warning": "Aviso",
|
||||
"average": "Médio",
|
||||
"high": "Alto",
|
||||
"disaster": "Desastre"
|
||||
},
|
||||
"lubelogger": {
|
||||
"vehicle": "Vehicle",
|
||||
"vehicles": "Vehicles",
|
||||
"serviceRecords": "Service Records",
|
||||
"reminders": "Reminders",
|
||||
"nextReminder": "Next Reminder",
|
||||
"none": "None"
|
||||
"vehicle": "Veículo",
|
||||
"vehicles": "Veículos",
|
||||
"serviceRecords": "Registros de Serviço",
|
||||
"reminders": "Lembretes",
|
||||
"nextReminder": "Próximo Lembrete",
|
||||
"none": "Nenhum"
|
||||
},
|
||||
"vikunja": {
|
||||
"projects": "Active Projects",
|
||||
"tasks7d": "Tasks Due This Week",
|
||||
"tasksOverdue": "Overdue Tasks",
|
||||
"tasksInProgress": "Tasks In Progress"
|
||||
"projects": "Projetos Ativos",
|
||||
"tasks7d": "Tarefas que vencem nesta semana",
|
||||
"tasksOverdue": "Tarefas Atrasadas",
|
||||
"tasksInProgress": "Tarefas em Andamento"
|
||||
},
|
||||
"headscale": {
|
||||
"name": "Nome",
|
||||
|
@ -986,7 +987,7 @@
|
|||
},
|
||||
"beszel": {
|
||||
"name": "Nome",
|
||||
"systems": "Systems",
|
||||
"systems": "Sistemas",
|
||||
"up": "Ativo",
|
||||
"down": "Inativo",
|
||||
"paused": "Pausado",
|
||||
|
@ -995,27 +996,27 @@
|
|||
"updated": "Atualizado",
|
||||
"cpu": "CPU",
|
||||
"memory": "MEM",
|
||||
"disk": "Disk",
|
||||
"network": "NET"
|
||||
"disk": "Disco",
|
||||
"network": "Rede"
|
||||
},
|
||||
"argocd": {
|
||||
"apps": "Apps",
|
||||
"synced": "Synced",
|
||||
"outOfSync": "Out Of Sync",
|
||||
"apps": "Aplicativos",
|
||||
"synced": "Sincronizado",
|
||||
"outOfSync": "Fora de sincronia",
|
||||
"healthy": "Saudável",
|
||||
"degraded": "Degraded",
|
||||
"progressing": "Progressing",
|
||||
"degraded": "Degradado",
|
||||
"progressing": "Progredindo",
|
||||
"missing": "Faltando",
|
||||
"suspended": "Suspended"
|
||||
"suspended": "Suspenso"
|
||||
},
|
||||
"spoolman": {
|
||||
"loading": "Carregando"
|
||||
},
|
||||
"gitlab": {
|
||||
"groups": "Groups",
|
||||
"groups": "Grupos",
|
||||
"issues": "Problemas",
|
||||
"merges": "Merge Requests",
|
||||
"projects": "Projects"
|
||||
"merges": "Solicitações de mesclagem",
|
||||
"projects": "Projetos"
|
||||
},
|
||||
"apcups": {
|
||||
"status": "Status",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Carga da bateria",
|
||||
"timeleft": "Tempo restante"
|
||||
},
|
||||
"hoarder": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"karakeep": {
|
||||
"bookmarks": "Marcadores",
|
||||
"favorites": "Favoritos",
|
||||
"archived": "Arquivados",
|
||||
"highlights": "Destaques",
|
||||
"lists": "Listas",
|
||||
"tags": "Marcadores"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Rede",
|
||||
"connected": "Conectado",
|
||||
"disconnected": "Desconectado",
|
||||
"updateStatus": "Atualize",
|
||||
"update_yes": "Disponível",
|
||||
"update_no": "Atualizado",
|
||||
"downloads": "Transferências",
|
||||
"uploads": "Envios",
|
||||
"sharedFiles": "Arquivos"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notifications",
|
||||
"issues": "Issues",
|
||||
"pulls": "Pull Requests"
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scenes",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Battery Charge",
|
||||
"timeleft": "Timp rămas"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Network",
|
||||
"connected": "Connected",
|
||||
"disconnected": "Disconnected",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Disponibile",
|
||||
"update_no": "Up to Date",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Files"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -149,8 +149,8 @@
|
|||
"received": "Получено",
|
||||
"sent": "Отправлено",
|
||||
"externalIPAddress": "Внеш. IP",
|
||||
"externalIPv6Address": "Ext. IPv6",
|
||||
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||
"externalIPv6Address": "Внешний IPv6",
|
||||
"externalIPv6Prefix": "Внешний IPv6 префикс"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Входящие каналы",
|
||||
|
@ -178,7 +178,7 @@
|
|||
"connectedAp": "Подключенные точки доступа",
|
||||
"activeUser": "Активные устройства",
|
||||
"alerts": "Предупреждения",
|
||||
"connectedGateways": "Connected gateways",
|
||||
"connectedGateways": "Подключенные шлюзы",
|
||||
"connectedSwitches": "Подключенные коммутаторы"
|
||||
},
|
||||
"nzbget": {
|
||||
|
@ -705,8 +705,8 @@
|
|||
"time": "Время"
|
||||
},
|
||||
"firefly": {
|
||||
"networth": "Net Worth",
|
||||
"budget": "Budget"
|
||||
"networth": "Общая средства",
|
||||
"budget": "Бюджет"
|
||||
},
|
||||
"grafana": {
|
||||
"dashboards": "Панели",
|
||||
|
@ -861,7 +861,7 @@
|
|||
"romm": {
|
||||
"platforms": "Платформы",
|
||||
"totalRoms": "Игры",
|
||||
"saves": "Сейвы",
|
||||
"saves": "Сохранения",
|
||||
"states": "Состояния",
|
||||
"screenshots": "Скриншоты",
|
||||
"totalfilesize": "Общий объем"
|
||||
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Уведомления",
|
||||
"issues": "Вопросы",
|
||||
"pulls": "Запросы на слияние (Pull Request)"
|
||||
"pulls": "Запросы на слияние (Pull Request)",
|
||||
"repositories": "Репозитории"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Сцены",
|
||||
|
@ -927,7 +928,7 @@
|
|||
"total": "Всего"
|
||||
},
|
||||
"swagdashboard": {
|
||||
"proxied": "Прокси",
|
||||
"proxied": "Проксировано",
|
||||
"auth": "С Авторизацией",
|
||||
"outdated": "Устаревшие",
|
||||
"banned": "Заблокированные"
|
||||
|
@ -958,17 +959,17 @@
|
|||
"unclassified": "Не классифицировано",
|
||||
"information": "Информация",
|
||||
"warning": "Предупреждение",
|
||||
"average": "Средняя",
|
||||
"average": "Среднее",
|
||||
"high": "Высокая",
|
||||
"disaster": "Чрезвычайная"
|
||||
"disaster": "Чрезвычайное"
|
||||
},
|
||||
"lubelogger": {
|
||||
"vehicle": "Автомобиль",
|
||||
"vehicles": "Автомобили",
|
||||
"serviceRecords": "Сервисные работы",
|
||||
"vehicle": "Транспорт",
|
||||
"vehicles": "Транспорты",
|
||||
"serviceRecords": "Сервисные записи",
|
||||
"reminders": "Напоминания",
|
||||
"nextReminder": "Следующее напоминание",
|
||||
"none": "Нет"
|
||||
"none": "Отсутствует"
|
||||
},
|
||||
"vikunja": {
|
||||
"projects": "Активные Проекты",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Заряд батареи",
|
||||
"timeleft": "Осталось"
|
||||
},
|
||||
"hoarder": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"karakeep": {
|
||||
"bookmarks": "Закладки",
|
||||
"favorites": "Избранное",
|
||||
"archived": "Архив",
|
||||
"highlights": "События",
|
||||
"lists": "Список",
|
||||
"tags": "Теги"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Сеть",
|
||||
"connected": "Подключено",
|
||||
"disconnected": "Отключено",
|
||||
"updateStatus": "Обновление",
|
||||
"update_yes": "Доступно",
|
||||
"update_no": "Последняя версия",
|
||||
"downloads": "Скачивания",
|
||||
"uploads": "Загрузки",
|
||||
"sharedFiles": "Файлов"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Oznámenia",
|
||||
"issues": "Problémy",
|
||||
"pulls": "Pull requesty"
|
||||
"pulls": "Pull requesty",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scény",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Nabitie batérie",
|
||||
"timeleft": "Zostávajúci čas"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Štítky"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Sieť",
|
||||
"connected": "Pripojené",
|
||||
"disconnected": "Odpojené",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Dostupné",
|
||||
"update_no": "Aktuálny",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Súborov"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Obvestila",
|
||||
"issues": "Težave",
|
||||
"pulls": "Zahteve za prenos"
|
||||
"pulls": "Zahteve za prenos",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scene",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Napolnjenost baterije",
|
||||
"timeleft": "Preostali čas"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Značke"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Omrežje",
|
||||
"connected": "Povezan",
|
||||
"disconnected": "Prekinjeno",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Na voljo",
|
||||
"update_no": "Posodobljeno",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Datotek"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notifications",
|
||||
"issues": "Issues",
|
||||
"pulls": "Pull Requests"
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scenes",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Battery Charge",
|
||||
"timeleft": "Time Left"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Network",
|
||||
"connected": "Connected",
|
||||
"disconnected": "Disconnected",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Available",
|
||||
"update_no": "Up to Date",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Files"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notifications",
|
||||
"issues": "Issues",
|
||||
"pulls": "Pull Requests"
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scenes",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Battery Charge",
|
||||
"timeleft": "Tid kvar"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Network",
|
||||
"connected": "Connected",
|
||||
"disconnected": "Disconnected",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Tillgänglig",
|
||||
"update_no": "Up to Date",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Files"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notifications",
|
||||
"issues": "Issues",
|
||||
"pulls": "Pull Requests"
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scenes",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Battery Charge",
|
||||
"timeleft": "మిగిలి వున్న సమయం"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Network",
|
||||
"connected": "Connected",
|
||||
"disconnected": "Disconnected",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "అందుబాటులో వున్నవి",
|
||||
"update_no": "తాజాగా",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Files"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notifications",
|
||||
"issues": "Issues",
|
||||
"pulls": "Pull Requests"
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scenes",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Battery Charge",
|
||||
"timeleft": "Time Left"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Network",
|
||||
"connected": "Connected",
|
||||
"disconnected": "Disconnected",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Available",
|
||||
"update_no": "Up to Date",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Files"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Bildirimler",
|
||||
"issues": "Sorunlar",
|
||||
"pulls": "Değişiklik İstekleri"
|
||||
"pulls": "Değişiklik İstekleri",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Sahneler",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Pil Yüzdesi",
|
||||
"timeleft": "Kalan Zaman"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Etiketler"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Ağ",
|
||||
"connected": "Bağlandı",
|
||||
"disconnected": "Bağlantı kesildi",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Kullanılabilir",
|
||||
"update_no": "Güncel",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Dosyalar"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -120,7 +120,7 @@
|
|||
"grid_power": "Сітка",
|
||||
"home_power": "Споживання",
|
||||
"charge_power": "Зарядний пристрій",
|
||||
"kilowatt": "kW"
|
||||
"kilowatt": "кВт"
|
||||
},
|
||||
"flood": {
|
||||
"download": "Завантажено",
|
||||
|
@ -149,8 +149,8 @@
|
|||
"received": "Отримано",
|
||||
"sent": "Надіслано",
|
||||
"externalIPAddress": "Зовнішній IP",
|
||||
"externalIPv6Address": "Ext. IPv6",
|
||||
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||
"externalIPv6Address": "Зовнішній IPv6",
|
||||
"externalIPv6Prefix": "Зовнішній Префікс IPv6-"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "Потоки",
|
||||
|
@ -178,7 +178,7 @@
|
|||
"connectedAp": "Підключені точки доступу",
|
||||
"activeUser": "Активні пристрої",
|
||||
"alerts": "Оповіщення",
|
||||
"connectedGateways": "Connected gateways",
|
||||
"connectedGateways": "Підключені шлюзи",
|
||||
"connectedSwitches": "Підключені перемикачі"
|
||||
},
|
||||
"nzbget": {
|
||||
|
@ -420,8 +420,8 @@
|
|||
},
|
||||
"authentik": {
|
||||
"users": "Користувачі",
|
||||
"loginsLast24H": "Вхід (24 години)",
|
||||
"failedLoginsLast24H": "Невдалі входи (24 години)"
|
||||
"loginsLast24H": "Вхід (протягом доби)",
|
||||
"failedLoginsLast24H": "Невдалі входи (протягом доби)"
|
||||
},
|
||||
"proxmox": {
|
||||
"mem": "ОЗП",
|
||||
|
@ -434,7 +434,7 @@
|
|||
"load": "Завантаження",
|
||||
"wait": "Будь ласка, зачекайте",
|
||||
"temp": "Температура",
|
||||
"_temp": "Темп.",
|
||||
"_temp": "Температура",
|
||||
"warn": "Увага",
|
||||
"uptime": "Онлайн",
|
||||
"total": "Усього",
|
||||
|
@ -616,7 +616,7 @@
|
|||
},
|
||||
"opendtu": {
|
||||
"yieldDay": "Сьогодні",
|
||||
"absolutePower": "Абс. потуж.",
|
||||
"absolutePower": "Потужність",
|
||||
"relativePower": "Заряд %",
|
||||
"limit": "Ліміт"
|
||||
},
|
||||
|
@ -648,13 +648,13 @@
|
|||
"wanStatus": "Статус WAN",
|
||||
"up": "Онлайн",
|
||||
"down": "Офлайн",
|
||||
"temp": "Темп.",
|
||||
"temp": "Температура",
|
||||
"disk": "Використання диска",
|
||||
"wanIP": "WAN IP"
|
||||
},
|
||||
"proxmoxbackupserver": {
|
||||
"datastore_usage": "Сховище даних",
|
||||
"failed_tasks_24h": "Невиконані завдання 24 години",
|
||||
"failed_tasks_24h": "Невиконані завдання за останню добу",
|
||||
"cpu_usage": "ЦП",
|
||||
"memory_usage": "Пам'ять"
|
||||
},
|
||||
|
@ -705,8 +705,8 @@
|
|||
"time": "Час"
|
||||
},
|
||||
"firefly": {
|
||||
"networth": "Net Worth",
|
||||
"budget": "Budget"
|
||||
"networth": "Чисті Активи",
|
||||
"budget": "Бюджет"
|
||||
},
|
||||
"grafana": {
|
||||
"dashboards": "Інформаційні панелі",
|
||||
|
@ -831,7 +831,7 @@
|
|||
},
|
||||
"openwrt": {
|
||||
"uptime": "Час роботи",
|
||||
"cpuLoad": "Сер. навантаження ЦП (5 хв)",
|
||||
"cpuLoad": "Сер. навантаження ЦП (\"5\" хв)",
|
||||
"up": "Онлайн",
|
||||
"down": "Офлайн",
|
||||
"bytesTx": "Передано",
|
||||
|
@ -855,7 +855,7 @@
|
|||
"inCinemas": "У кінотеатрах",
|
||||
"physicalRelease": "Фізичний реліз",
|
||||
"digitalRelease": "Цифровий реліз",
|
||||
"noEventsToday": "Події на сьогодні відсутні",
|
||||
"noEventsToday": "Події на сьогодні відсутні!",
|
||||
"noEventsFound": "Події не знайдено"
|
||||
},
|
||||
"romm": {
|
||||
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Сповіщення",
|
||||
"issues": "Питання",
|
||||
"pulls": "Pull-запити"
|
||||
"pulls": "Pull-запити",
|
||||
"repositories": "Репозиторії"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Сцени",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Заряд батареї",
|
||||
"timeleft": "Залишилось"
|
||||
},
|
||||
"hoarder": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"karakeep": {
|
||||
"bookmarks": "Закладки",
|
||||
"favorites": "Обране",
|
||||
"archived": "Заархівовані",
|
||||
"highlights": "Основні моменти",
|
||||
"lists": "Списки",
|
||||
"tags": "Теги"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Мережа",
|
||||
"connected": "З'єднано",
|
||||
"disconnected": "Відключено",
|
||||
"updateStatus": "Оновити",
|
||||
"update_yes": "Доступно",
|
||||
"update_no": "Актуально",
|
||||
"downloads": "Завантаження",
|
||||
"uploads": "Вивантаження",
|
||||
"sharedFiles": "Файли"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "Notifications",
|
||||
"issues": "Issues",
|
||||
"pulls": "Pull Requests"
|
||||
"pulls": "Pull Requests",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "Scenes",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "Battery Charge",
|
||||
"timeleft": "Thời gian còn lại"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "Network",
|
||||
"connected": "Connected",
|
||||
"disconnected": "Disconnected",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "Available",
|
||||
"update_no": "Up to Date",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Files"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -5,9 +5,9 @@
|
|||
"bbytes": "{{value, bytes(binary: true)}}",
|
||||
"bbits": "{{value, bytes(bits: true; binary: true)}}",
|
||||
"byterate": "{{value, rate(bits: false)}}",
|
||||
"bibyterate": "{{value, rate(bits: false; binary: true)}}",
|
||||
"bibyterate": "{{value, bytes(bits: true; binary: true)}}",
|
||||
"bitrate": "{{value, rate(bits: true)}}",
|
||||
"bibitrate": "{{value, rate(bits: true; binary: true)}}",
|
||||
"bibitrate": "{{value, bytes(bits: true; binary: true)}}",
|
||||
"percent": "{{value, percent}}",
|
||||
"number": "{{value, number}}",
|
||||
"ms": "{{value, number}}",
|
||||
|
@ -120,7 +120,7 @@
|
|||
"grid_power": "電網",
|
||||
"home_power": "電源使用率",
|
||||
"charge_power": "充電",
|
||||
"kilowatt": "kW"
|
||||
"kilowatt": "千瓦"
|
||||
},
|
||||
"flood": {
|
||||
"download": "下載速率",
|
||||
|
@ -140,7 +140,7 @@
|
|||
"connectionStatusPendingDisconnect": "待辦的斷開",
|
||||
"connectionStatusDisconnecting": "正在中斷連線",
|
||||
"connectionStatusDisconnected": "連接已中斷",
|
||||
"connectionStatusConnected": "Connected",
|
||||
"connectionStatusConnected": "已連線",
|
||||
"uptime": "運行時間",
|
||||
"maxDown": "最大下載速率",
|
||||
"maxUp": "最大上傳速率",
|
||||
|
@ -149,8 +149,8 @@
|
|||
"received": "已接收",
|
||||
"sent": "已送出",
|
||||
"externalIPAddress": "外部 IP",
|
||||
"externalIPv6Address": "Ext. IPv6",
|
||||
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||
"externalIPv6Address": "外部 IP",
|
||||
"externalIPv6Prefix": "擴展 IPv-前綴"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "上行",
|
||||
|
@ -178,7 +178,7 @@
|
|||
"connectedAp": "已連接的存取點",
|
||||
"activeUser": "在線裝置",
|
||||
"alerts": "警示",
|
||||
"connectedGateways": "Connected gateways",
|
||||
"connectedGateways": "已連繫的網關",
|
||||
"connectedSwitches": "已連接的交換器"
|
||||
},
|
||||
"nzbget": {
|
||||
|
@ -229,8 +229,8 @@
|
|||
"seed": "已完成下載"
|
||||
},
|
||||
"develancacheui": {
|
||||
"cachehitbytes": "Cache Hit Bytes",
|
||||
"cachemissbytes": "Cache Miss Bytes"
|
||||
"cachehitbytes": "快取未命中位元組",
|
||||
"cachemissbytes": "快取未命中位元組"
|
||||
},
|
||||
"downloadstation": {
|
||||
"download": "下載速率",
|
||||
|
@ -285,9 +285,9 @@
|
|||
},
|
||||
"netalertx": {
|
||||
"total": "全部",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
"connected": "已連線",
|
||||
"new_devices": "新裝置",
|
||||
"down_alerts": "離線警告"
|
||||
},
|
||||
"pihole": {
|
||||
"queries": "查詢",
|
||||
|
@ -313,13 +313,13 @@
|
|||
},
|
||||
"suwayomi": {
|
||||
"download": "下載咗",
|
||||
"nondownload": "Non-Downloaded",
|
||||
"nondownload": "已下載",
|
||||
"read": "已讀",
|
||||
"unread": "未讀",
|
||||
"downloadedread": "Downloaded & Read",
|
||||
"downloadedunread": "Downloaded & Unread",
|
||||
"nondownloadedread": "Non-Downloaded & Read",
|
||||
"nondownloadedunread": "Non-Downloaded & Unread"
|
||||
"downloadedread": "已下載且已閱讀",
|
||||
"downloadedunread": "已下載且未閱讀",
|
||||
"nondownloadedread": "未下載但已閱讀",
|
||||
"nondownloadedunread": "未下載且未閱讀"
|
||||
},
|
||||
"tailscale": {
|
||||
"address": "位址",
|
||||
|
@ -337,15 +337,15 @@
|
|||
},
|
||||
"technitium": {
|
||||
"totalQueries": "查詢",
|
||||
"totalNoError": "Success",
|
||||
"totalServerFailure": "Failures",
|
||||
"totalNxDomain": "NX Domains",
|
||||
"totalRefused": "Refused",
|
||||
"totalAuthoritative": "Authoritative",
|
||||
"totalRecursive": "Recursive",
|
||||
"totalCached": "Cached",
|
||||
"totalNoError": "成功",
|
||||
"totalServerFailure": "失敗",
|
||||
"totalNxDomain": "網域",
|
||||
"totalRefused": "對方拒投誠信",
|
||||
"totalAuthoritative": "權威的",
|
||||
"totalRecursive": "遞迴",
|
||||
"totalCached": "快取",
|
||||
"totalBlocked": "封鎖",
|
||||
"totalDropped": "Dropped",
|
||||
"totalDropped": "丟棄",
|
||||
"totalClients": "客戶端"
|
||||
},
|
||||
"tdarr": {
|
||||
|
@ -705,8 +705,8 @@
|
|||
"time": "時間"
|
||||
},
|
||||
"firefly": {
|
||||
"networth": "Net Worth",
|
||||
"budget": "Budget"
|
||||
"networth": "淨值",
|
||||
"budget": "預算"
|
||||
},
|
||||
"grafana": {
|
||||
"dashboards": "控制面板",
|
||||
|
@ -860,16 +860,16 @@
|
|||
},
|
||||
"romm": {
|
||||
"platforms": "平台",
|
||||
"totalRoms": "Games",
|
||||
"saves": "Saves",
|
||||
"states": "States",
|
||||
"screenshots": "Screenshots",
|
||||
"totalfilesize": "Total Size"
|
||||
"totalRoms": "遊戲",
|
||||
"saves": "已儲存",
|
||||
"states": "州",
|
||||
"screenshots": "螢幕截圖",
|
||||
"totalfilesize": "大小總計"
|
||||
},
|
||||
"mailcow": {
|
||||
"domains": "域",
|
||||
"mailboxes": "Mailboxes",
|
||||
"mails": "Mails",
|
||||
"mailboxes": "信箱",
|
||||
"mails": "郵件數",
|
||||
"storage": "儲存空間"
|
||||
},
|
||||
"netdata": {
|
||||
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "信息",
|
||||
"issues": "出版",
|
||||
"pulls": "提取請求"
|
||||
"pulls": "提取請求",
|
||||
"repositories": "套件來源"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "場景",
|
||||
|
@ -921,16 +922,16 @@
|
|||
"bans": "禁止"
|
||||
},
|
||||
"wgeasy": {
|
||||
"connected": "Connected",
|
||||
"connected": "已連線",
|
||||
"enabled": "啟用",
|
||||
"disabled": "停用咗",
|
||||
"total": "全部"
|
||||
},
|
||||
"swagdashboard": {
|
||||
"proxied": "Proxied",
|
||||
"auth": "With Auth",
|
||||
"outdated": "Outdated",
|
||||
"banned": "Banned"
|
||||
"proxied": "已代理",
|
||||
"auth": "已授權",
|
||||
"outdated": "須更新",
|
||||
"banned": "已封鎖"
|
||||
},
|
||||
"myspeed": {
|
||||
"ping": "延遲",
|
||||
|
@ -938,43 +939,43 @@
|
|||
"upload": "上傳速率"
|
||||
},
|
||||
"stocks": {
|
||||
"stocks": "Stocks",
|
||||
"loading": "Loading",
|
||||
"open": "Open - US Market",
|
||||
"closed": "Closed - US Market",
|
||||
"invalidConfiguration": "Invalid Configuration"
|
||||
"stocks": "股票",
|
||||
"loading": "載入中 ",
|
||||
"open": "美國市場已開放",
|
||||
"closed": "美國市場已關閉",
|
||||
"invalidConfiguration": "無效的設定"
|
||||
},
|
||||
"frigate": {
|
||||
"cameras": "Cameras",
|
||||
"cameras": " ",
|
||||
"uptime": "運行時間",
|
||||
"version": "版本"
|
||||
},
|
||||
"linkwarden": {
|
||||
"links": "Links",
|
||||
"collections": "Collections",
|
||||
"links": " ",
|
||||
"collections": "收藏庫",
|
||||
"tags": "標籤"
|
||||
},
|
||||
"zabbix": {
|
||||
"unclassified": "Not classified",
|
||||
"unclassified": "未分類",
|
||||
"information": "資訊",
|
||||
"warning": "Warning",
|
||||
"average": "Average",
|
||||
"high": "High",
|
||||
"disaster": "Disaster"
|
||||
"warning": "警告",
|
||||
"average": "平均",
|
||||
"high": "高優先權",
|
||||
"disaster": "災難"
|
||||
},
|
||||
"lubelogger": {
|
||||
"vehicle": "Vehicle",
|
||||
"vehicles": "Vehicles",
|
||||
"serviceRecords": "Service Records",
|
||||
"reminders": "Reminders",
|
||||
"nextReminder": "Next Reminder",
|
||||
"none": "None"
|
||||
"vehicle": "車輛",
|
||||
"vehicles": "車輛",
|
||||
"serviceRecords": "保養記錄",
|
||||
"reminders": "提醒",
|
||||
"nextReminder": "下一個提醒",
|
||||
"none": "沒有"
|
||||
},
|
||||
"vikunja": {
|
||||
"projects": "Active Projects",
|
||||
"tasks7d": "Tasks Due This Week",
|
||||
"tasksOverdue": "Overdue Tasks",
|
||||
"tasksInProgress": "Tasks In Progress"
|
||||
"projects": "正在應用的項目",
|
||||
"tasks7d": "本週到期任務",
|
||||
"tasksOverdue": "逾期處理",
|
||||
"tasksInProgress": "正在執行的任務"
|
||||
},
|
||||
"headscale": {
|
||||
"name": "名稱",
|
||||
|
@ -986,7 +987,7 @@
|
|||
},
|
||||
"beszel": {
|
||||
"name": "名稱",
|
||||
"systems": "Systems",
|
||||
"systems": "系統",
|
||||
"up": "在線",
|
||||
"down": "離線",
|
||||
"paused": "擱置中",
|
||||
|
@ -995,27 +996,27 @@
|
|||
"updated": "已更新",
|
||||
"cpu": "CPU",
|
||||
"memory": "記憶體",
|
||||
"disk": "Disk",
|
||||
"network": "NET"
|
||||
"disk": "儲存空間",
|
||||
"network": "網路"
|
||||
},
|
||||
"argocd": {
|
||||
"apps": "Apps",
|
||||
"synced": "Synced",
|
||||
"outOfSync": "Out Of Sync",
|
||||
"apps": "應用程式",
|
||||
"synced": "已同步",
|
||||
"outOfSync": "不同步",
|
||||
"healthy": "健康",
|
||||
"degraded": "Degraded",
|
||||
"progressing": "Progressing",
|
||||
"degraded": "已降級",
|
||||
"progressing": "進度",
|
||||
"missing": "缺少",
|
||||
"suspended": "Suspended"
|
||||
"suspended": "暫停"
|
||||
},
|
||||
"spoolman": {
|
||||
"loading": "Loading"
|
||||
"loading": "載入中 "
|
||||
},
|
||||
"gitlab": {
|
||||
"groups": "Groups",
|
||||
"groups": "群組",
|
||||
"issues": "出版",
|
||||
"merges": "Merge Requests",
|
||||
"projects": "Projects"
|
||||
"merges": "合併請求",
|
||||
"projects": "專"
|
||||
},
|
||||
"apcups": {
|
||||
"status": "狀況",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "充電",
|
||||
"timeleft": "用時"
|
||||
},
|
||||
"hoarder": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"karakeep": {
|
||||
"bookmarks": "書籤",
|
||||
"favorites": "我的最愛",
|
||||
"archived": "已存檔",
|
||||
"highlights": "標記",
|
||||
"lists": "列表",
|
||||
"tags": "標籤"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "網絡",
|
||||
"connected": "已連線",
|
||||
"disconnected": "連接已中斷",
|
||||
"updateStatus": "更新",
|
||||
"update_yes": "可用",
|
||||
"update_no": "已更新至最新",
|
||||
"downloads": "下載",
|
||||
"uploads": "上傳",
|
||||
"sharedFiles": "檔案"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "通知",
|
||||
"issues": "问题",
|
||||
"pulls": "PR"
|
||||
"pulls": "PR",
|
||||
"repositories": "Repositories"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "场景",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "充电中",
|
||||
"timeleft": "剩余时间"
|
||||
},
|
||||
"hoarder": {
|
||||
"karakeep": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"tags": "Tags"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "网络",
|
||||
"connected": "已连接",
|
||||
"disconnected": "未连接",
|
||||
"updateStatus": "Update",
|
||||
"update_yes": "可用",
|
||||
"update_no": "Up to Date",
|
||||
"downloads": "Downloads",
|
||||
"uploads": "Uploads",
|
||||
"sharedFiles": "Files"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -5,9 +5,9 @@
|
|||
"bbytes": "{{value, bytes(binary: true)}}",
|
||||
"bbits": "{{value, bytes(bits: true; binary: true)}}",
|
||||
"byterate": "{{value, rate(bits: false)}}",
|
||||
"bibyterate": "{{value, rate(bits: false; binary: true)}}",
|
||||
"bibyterate": "{{value, bytes(bits: true; binary: true)}}",
|
||||
"bitrate": "{{value, rate(bits: true)}}",
|
||||
"bibitrate": "{{value, rate(bits: true; binary: true)}}",
|
||||
"bibitrate": "{{value, bytes(bits: true; binary: true)}}",
|
||||
"percent": "{{value, percent}}",
|
||||
"number": "{{value, number}}",
|
||||
"ms": "{{value, number}}",
|
||||
|
@ -120,7 +120,7 @@
|
|||
"grid_power": "電網",
|
||||
"home_power": "電源使用率",
|
||||
"charge_power": "充電",
|
||||
"kilowatt": "kW"
|
||||
"kilowatt": "千瓦"
|
||||
},
|
||||
"flood": {
|
||||
"download": "下載速率",
|
||||
|
@ -140,7 +140,7 @@
|
|||
"connectionStatusPendingDisconnect": "待辦的斷開",
|
||||
"connectionStatusDisconnecting": "正在中斷連線",
|
||||
"connectionStatusDisconnected": "連接已中斷",
|
||||
"connectionStatusConnected": "Connected",
|
||||
"connectionStatusConnected": "已連線",
|
||||
"uptime": "運行時間",
|
||||
"maxDown": "最大下載速率",
|
||||
"maxUp": "最大上傳速率",
|
||||
|
@ -149,8 +149,8 @@
|
|||
"received": "已接收",
|
||||
"sent": "已送出",
|
||||
"externalIPAddress": "外部 IP",
|
||||
"externalIPv6Address": "Ext. IPv6",
|
||||
"externalIPv6Prefix": "Ext. IPv6-Prefix"
|
||||
"externalIPv6Address": "外部 IP",
|
||||
"externalIPv6Prefix": "擴展 IPv-前綴"
|
||||
},
|
||||
"caddy": {
|
||||
"upstreams": "上行",
|
||||
|
@ -178,7 +178,7 @@
|
|||
"connectedAp": "已連接的存取點",
|
||||
"activeUser": "在線裝置",
|
||||
"alerts": "警示",
|
||||
"connectedGateways": "Connected gateways",
|
||||
"connectedGateways": "已連繫的網關",
|
||||
"connectedSwitches": "已連接的交換器"
|
||||
},
|
||||
"nzbget": {
|
||||
|
@ -229,8 +229,8 @@
|
|||
"seed": "已完成下載"
|
||||
},
|
||||
"develancacheui": {
|
||||
"cachehitbytes": "Cache Hit Bytes",
|
||||
"cachemissbytes": "Cache Miss Bytes"
|
||||
"cachehitbytes": "快取未命中位元組",
|
||||
"cachemissbytes": "快取未命中位元組"
|
||||
},
|
||||
"downloadstation": {
|
||||
"download": "下載速率",
|
||||
|
@ -285,9 +285,9 @@
|
|||
},
|
||||
"netalertx": {
|
||||
"total": "全部",
|
||||
"connected": "Connected",
|
||||
"new_devices": "New Devices",
|
||||
"down_alerts": "Down Alerts"
|
||||
"connected": "已連線",
|
||||
"new_devices": "新裝置",
|
||||
"down_alerts": "離線警告"
|
||||
},
|
||||
"pihole": {
|
||||
"queries": "查詢",
|
||||
|
@ -313,13 +313,13 @@
|
|||
},
|
||||
"suwayomi": {
|
||||
"download": "已下載",
|
||||
"nondownload": "Non-Downloaded",
|
||||
"nondownload": "已下載",
|
||||
"read": "已讀",
|
||||
"unread": "未讀",
|
||||
"downloadedread": "Downloaded & Read",
|
||||
"downloadedunread": "Downloaded & Unread",
|
||||
"nondownloadedread": "Non-Downloaded & Read",
|
||||
"nondownloadedunread": "Non-Downloaded & Unread"
|
||||
"downloadedread": "已下載且已閱讀",
|
||||
"downloadedunread": "已下載且未閱讀",
|
||||
"nondownloadedread": "未下載但已閱讀",
|
||||
"nondownloadedunread": "未下載且未閱讀"
|
||||
},
|
||||
"tailscale": {
|
||||
"address": "位址",
|
||||
|
@ -337,15 +337,15 @@
|
|||
},
|
||||
"technitium": {
|
||||
"totalQueries": "查詢",
|
||||
"totalNoError": "Success",
|
||||
"totalServerFailure": "Failures",
|
||||
"totalNxDomain": "NX Domains",
|
||||
"totalRefused": "Refused",
|
||||
"totalAuthoritative": "Authoritative",
|
||||
"totalRecursive": "Recursive",
|
||||
"totalCached": "Cached",
|
||||
"totalNoError": "成功",
|
||||
"totalServerFailure": "失敗",
|
||||
"totalNxDomain": "網域",
|
||||
"totalRefused": "對方拒投誠信",
|
||||
"totalAuthoritative": "權威的",
|
||||
"totalRecursive": "遞迴",
|
||||
"totalCached": "快取",
|
||||
"totalBlocked": "已阻擋",
|
||||
"totalDropped": "Dropped",
|
||||
"totalDropped": "丟棄",
|
||||
"totalClients": "客戶端"
|
||||
},
|
||||
"tdarr": {
|
||||
|
@ -705,8 +705,8 @@
|
|||
"time": "時間"
|
||||
},
|
||||
"firefly": {
|
||||
"networth": "Net Worth",
|
||||
"budget": "Budget"
|
||||
"networth": "淨值",
|
||||
"budget": "預算"
|
||||
},
|
||||
"grafana": {
|
||||
"dashboards": "控制面板",
|
||||
|
@ -860,16 +860,16 @@
|
|||
},
|
||||
"romm": {
|
||||
"platforms": "平台",
|
||||
"totalRoms": "Games",
|
||||
"saves": "Saves",
|
||||
"states": "States",
|
||||
"screenshots": "Screenshots",
|
||||
"totalfilesize": "Total Size"
|
||||
"totalRoms": "遊戲",
|
||||
"saves": "已儲存",
|
||||
"states": "州",
|
||||
"screenshots": "螢幕截圖",
|
||||
"totalfilesize": "大小總計"
|
||||
},
|
||||
"mailcow": {
|
||||
"domains": "網域",
|
||||
"mailboxes": "Mailboxes",
|
||||
"mails": "Mails",
|
||||
"mailboxes": "信箱",
|
||||
"mails": "郵件數",
|
||||
"storage": "儲存空間"
|
||||
},
|
||||
"netdata": {
|
||||
|
@ -885,7 +885,8 @@
|
|||
"gitea": {
|
||||
"notifications": "信息",
|
||||
"issues": "出版",
|
||||
"pulls": "提取請求"
|
||||
"pulls": "提取請求",
|
||||
"repositories": "套件來源"
|
||||
},
|
||||
"stash": {
|
||||
"scenes": "場景",
|
||||
|
@ -921,16 +922,16 @@
|
|||
"bans": "禁止"
|
||||
},
|
||||
"wgeasy": {
|
||||
"connected": "Connected",
|
||||
"connected": "已連線",
|
||||
"enabled": "已啟用",
|
||||
"disabled": "已停用",
|
||||
"total": "全部"
|
||||
},
|
||||
"swagdashboard": {
|
||||
"proxied": "Proxied",
|
||||
"auth": "With Auth",
|
||||
"outdated": "Outdated",
|
||||
"banned": "Banned"
|
||||
"proxied": "已代理",
|
||||
"auth": "已授權",
|
||||
"outdated": "須更新",
|
||||
"banned": "已封鎖"
|
||||
},
|
||||
"myspeed": {
|
||||
"ping": "延遲",
|
||||
|
@ -938,43 +939,43 @@
|
|||
"upload": "上傳速率"
|
||||
},
|
||||
"stocks": {
|
||||
"stocks": "Stocks",
|
||||
"loading": "Loading",
|
||||
"open": "Open - US Market",
|
||||
"closed": "Closed - US Market",
|
||||
"invalidConfiguration": "Invalid Configuration"
|
||||
"stocks": "股票",
|
||||
"loading": "載入中 ",
|
||||
"open": "美國市場已開放",
|
||||
"closed": "美國市場已關閉",
|
||||
"invalidConfiguration": "無效的設定"
|
||||
},
|
||||
"frigate": {
|
||||
"cameras": "Cameras",
|
||||
"cameras": " ",
|
||||
"uptime": "運行時間",
|
||||
"version": "版本"
|
||||
},
|
||||
"linkwarden": {
|
||||
"links": "Links",
|
||||
"collections": "Collections",
|
||||
"links": " ",
|
||||
"collections": "收藏庫",
|
||||
"tags": "標籤"
|
||||
},
|
||||
"zabbix": {
|
||||
"unclassified": "Not classified",
|
||||
"unclassified": "未分類",
|
||||
"information": "資訊",
|
||||
"warning": "Warning",
|
||||
"average": "Average",
|
||||
"high": "High",
|
||||
"disaster": "Disaster"
|
||||
"warning": "警告",
|
||||
"average": "平均",
|
||||
"high": "高優先權",
|
||||
"disaster": "災難"
|
||||
},
|
||||
"lubelogger": {
|
||||
"vehicle": "Vehicle",
|
||||
"vehicles": "Vehicles",
|
||||
"serviceRecords": "Service Records",
|
||||
"reminders": "Reminders",
|
||||
"nextReminder": "Next Reminder",
|
||||
"none": "None"
|
||||
"vehicle": "車輛",
|
||||
"vehicles": "車輛",
|
||||
"serviceRecords": "保養記錄",
|
||||
"reminders": "提醒",
|
||||
"nextReminder": "下一個提醒",
|
||||
"none": "沒有"
|
||||
},
|
||||
"vikunja": {
|
||||
"projects": "Active Projects",
|
||||
"tasks7d": "Tasks Due This Week",
|
||||
"tasksOverdue": "Overdue Tasks",
|
||||
"tasksInProgress": "Tasks In Progress"
|
||||
"projects": "正在應用的項目",
|
||||
"tasks7d": "本週到期任務",
|
||||
"tasksOverdue": "逾期處理",
|
||||
"tasksInProgress": "正在執行的任務"
|
||||
},
|
||||
"headscale": {
|
||||
"name": "名稱",
|
||||
|
@ -986,7 +987,7 @@
|
|||
},
|
||||
"beszel": {
|
||||
"name": "名稱",
|
||||
"systems": "Systems",
|
||||
"systems": "系統",
|
||||
"up": "在線",
|
||||
"down": "離線",
|
||||
"paused": "擱置中",
|
||||
|
@ -995,27 +996,27 @@
|
|||
"updated": "已更新",
|
||||
"cpu": "CPU",
|
||||
"memory": "記憶體",
|
||||
"disk": "Disk",
|
||||
"network": "NET"
|
||||
"disk": "儲存空間",
|
||||
"network": "網路"
|
||||
},
|
||||
"argocd": {
|
||||
"apps": "Apps",
|
||||
"synced": "Synced",
|
||||
"outOfSync": "Out Of Sync",
|
||||
"apps": "應用程式",
|
||||
"synced": "已同步",
|
||||
"outOfSync": "不同步",
|
||||
"healthy": "健康",
|
||||
"degraded": "Degraded",
|
||||
"progressing": "Progressing",
|
||||
"degraded": "已降級",
|
||||
"progressing": "進度",
|
||||
"missing": "缺少",
|
||||
"suspended": "Suspended"
|
||||
"suspended": "暫停"
|
||||
},
|
||||
"spoolman": {
|
||||
"loading": "Loading"
|
||||
"loading": "載入中 "
|
||||
},
|
||||
"gitlab": {
|
||||
"groups": "Groups",
|
||||
"groups": "群組",
|
||||
"issues": "出版",
|
||||
"merges": "Merge Requests",
|
||||
"projects": "Projects"
|
||||
"merges": "合併請求",
|
||||
"projects": "專"
|
||||
},
|
||||
"apcups": {
|
||||
"status": "狀態",
|
||||
|
@ -1023,12 +1024,23 @@
|
|||
"bcharge": "充電",
|
||||
"timeleft": "剩餘時間"
|
||||
},
|
||||
"hoarder": {
|
||||
"bookmarks": "Bookmarks",
|
||||
"favorites": "Favorites",
|
||||
"archived": "Archived",
|
||||
"highlights": "Highlights",
|
||||
"lists": "Lists",
|
||||
"karakeep": {
|
||||
"bookmarks": "書籤",
|
||||
"favorites": "我的最愛",
|
||||
"archived": "已存檔",
|
||||
"highlights": "標記",
|
||||
"lists": "列表",
|
||||
"tags": "標籤"
|
||||
},
|
||||
"slskd": {
|
||||
"slskStatus": "網絡",
|
||||
"connected": "已連線",
|
||||
"disconnected": "連接已中斷",
|
||||
"updateStatus": "更新",
|
||||
"update_yes": "可觀看",
|
||||
"update_no": "已更新至最新",
|
||||
"downloads": "下載",
|
||||
"uploads": "上傳",
|
||||
"sharedFiles": "檔案"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
import { useRef, useEffect } from "react";
|
||||
import classNames from "classnames";
|
||||
import { Disclosure, Transition } from "@headlessui/react";
|
||||
import { MdKeyboardArrowDown } from "react-icons/md";
|
||||
import ErrorBoundary from "components/errorboundry";
|
||||
import classNames from "classnames";
|
||||
import List from "components/bookmarks/list";
|
||||
import ErrorBoundary from "components/errorboundry";
|
||||
import ResolvedIcon from "components/resolvedicon";
|
||||
import { useEffect, useRef } from "react";
|
||||
import { MdKeyboardArrowDown } from "react-icons/md";
|
||||
|
||||
export default function BookmarksGroup({
|
||||
bookmarks,
|
||||
|
@ -12,6 +12,7 @@ export default function BookmarksGroup({
|
|||
disableCollapse,
|
||||
groupsInitiallyCollapsed,
|
||||
bookmarksStyle,
|
||||
maxGroupColumns,
|
||||
}) {
|
||||
const panel = useRef();
|
||||
|
||||
|
@ -25,6 +26,9 @@ export default function BookmarksGroup({
|
|||
className={classNames(
|
||||
"bookmark-group flex-1 overflow-hidden",
|
||||
layout?.style === "row" ? "basis-full" : "basis-full md:basis-1/4 lg:basis-1/5 xl:basis-1/6",
|
||||
layout?.style !== "row" && maxGroupColumns && parseInt(maxGroupColumns, 10) > 6
|
||||
? `3xl:basis-1/${maxGroupColumns}`
|
||||
: "",
|
||||
layout?.header === false ? "px-1" : "p-1 pb-0",
|
||||
)}
|
||||
>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import { useContext } from "react";
|
||||
import classNames from "classnames";
|
||||
import { SettingsContext } from "utils/contexts/settings";
|
||||
import ResolvedIcon from "components/resolvedicon";
|
||||
import { useContext } from "react";
|
||||
import { SettingsContext } from "utils/contexts/settings";
|
||||
|
||||
export default function Item({ bookmark, iconOnly = false }) {
|
||||
const description = bookmark.description ?? new URL(bookmark.href).hostname;
|
||||
|
@ -22,7 +22,7 @@ export default function Item({ bookmark, iconOnly = false }) {
|
|||
className={classNames(
|
||||
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",
|
||||
iconOnly ? "h-[60px] w-[60px] grid" : "block w-full h-full mb-3",
|
||||
iconOnly ? "h-[60px] w-[60px] grid" : "block w-full mb-3",
|
||||
)}
|
||||
>
|
||||
{iconOnly ? (
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/* eslint-disable @next/next/no-img-element */
|
||||
/* eslint-disable jsx-a11y/alt-text */
|
||||
import { useRef, useEffect, useContext } from "react";
|
||||
import { useContext, useEffect, useRef } from "react";
|
||||
import { ColorContext } from "utils/contexts/color";
|
||||
|
||||
import themes from "utils/styles/themes";
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import { useTranslation } from "react-i18next";
|
||||
import { useEffect, useState, useRef, useCallback, useContext } from "react";
|
||||
import classNames from "classnames";
|
||||
import { useTranslation } from "next-i18next";
|
||||
import { useCallback, useContext, useEffect, useRef, useState } from "react";
|
||||
import useSWR from "swr";
|
||||
import { SettingsContext } from "utils/contexts/settings";
|
||||
|
||||
|
@ -21,7 +21,7 @@ export default function QuickLaunch({ servicesAndBookmarks, searchString, setSea
|
|||
const [searchSuggestions, setSearchSuggestions] = useState([]);
|
||||
|
||||
const { data: widgets } = useSWR("/api/widgets");
|
||||
const searchWidget = Object.values(widgets).find((w) => w.type === "search");
|
||||
const searchWidget = widgets && Object.values(widgets).find((w) => w.type === "search");
|
||||
|
||||
let searchProvider;
|
||||
|
||||
|
@ -53,7 +53,7 @@ export default function QuickLaunch({ servicesAndBookmarks, searchString, setSea
|
|||
const result = results[currentItemIndex];
|
||||
window.open(
|
||||
result.href,
|
||||
newWindow ? "_blank" : result.target ?? searchProvider?.target ?? settings.target ?? "_blank",
|
||||
newWindow ? "_blank" : (result.target ?? searchProvider?.target ?? settings.target ?? "_blank"),
|
||||
"noreferrer",
|
||||
);
|
||||
}
|
||||
|
@ -204,7 +204,8 @@ export default function QuickLaunch({ servicesAndBookmarks, searchString, setSea
|
|||
return () => {
|
||||
abortController.abort();
|
||||
};
|
||||
}, [searchString, servicesAndBookmarks, searchDescriptions, hideVisitURL, searchSuggestions, searchProvider, url, t]);
|
||||
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||
}, [searchString, servicesAndBookmarks, searchDescriptions, hideVisitURL, searchSuggestions, searchProvider, url]);
|
||||
|
||||
const [hidden, setHidden] = useState(true);
|
||||
useEffect(() => {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import { useContext } from "react";
|
||||
import Image from "next/image";
|
||||
import { useContext } from "react";
|
||||
import { SettingsContext } from "utils/contexts/settings";
|
||||
import { ThemeContext } from "utils/contexts/theme";
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import { Fragment } from "react";
|
||||
import { Menu, Transition } from "@headlessui/react";
|
||||
import { BiCog } from "react-icons/bi";
|
||||
import classNames from "classnames";
|
||||
import { Fragment } from "react";
|
||||
import { BiCog } from "react-icons/bi";
|
||||
|
||||
export default function Dropdown({ options, value, setValue }) {
|
||||
return (
|
||||
|
|
|
@ -1,16 +1,16 @@
|
|||
import { useRef, useEffect } from "react";
|
||||
import classNames from "classnames";
|
||||
import { Disclosure, Transition } from "@headlessui/react";
|
||||
import { MdKeyboardArrowDown } from "react-icons/md";
|
||||
import List from "components/services/list";
|
||||
import classNames from "classnames";
|
||||
import ResolvedIcon from "components/resolvedicon";
|
||||
import List from "components/services/list";
|
||||
import { useEffect, useRef } from "react";
|
||||
import { MdKeyboardArrowDown } from "react-icons/md";
|
||||
|
||||
import { columnMap } from "../../utils/layout/columns";
|
||||
|
||||
export default function ServicesGroup({
|
||||
group,
|
||||
layout,
|
||||
fiveColumns,
|
||||
maxGroupColumns,
|
||||
disableCollapse,
|
||||
useEqualHeights,
|
||||
groupsInitiallyCollapsed,
|
||||
|
@ -31,7 +31,7 @@ export default function ServicesGroup({
|
|||
className={classNames(
|
||||
"services-group flex-1",
|
||||
layout?.style === "row" ? "basis-full" : "basis-full md:basis-1/2 lg:basis-1/3 xl:basis-1/4",
|
||||
layout?.style !== "row" && fiveColumns ? "3xl:basis-1/5" : "",
|
||||
layout?.style !== "row" && maxGroupColumns ? `3xl:basis-1/${maxGroupColumns}` : "",
|
||||
groupPadding,
|
||||
isSubgroup ? "subgroup" : "",
|
||||
)}
|
||||
|
@ -97,7 +97,7 @@ export default function ServicesGroup({
|
|||
key={subgroup.name}
|
||||
group={subgroup}
|
||||
layout={layout?.[subgroup.name]}
|
||||
fiveColumns={fiveColumns}
|
||||
maxGroupColumns={maxGroupColumns}
|
||||
disableCollapse={disableCollapse}
|
||||
useEqualHeights={useEqualHeights}
|
||||
groupsInitiallyCollapsed={groupsInitiallyCollapsed}
|
||||
|
|
|
@ -1,15 +1,15 @@
|
|||
import classNames from "classnames";
|
||||
import ResolvedIcon from "components/resolvedicon";
|
||||
import { useContext, useState } from "react";
|
||||
import { SettingsContext } from "utils/contexts/settings";
|
||||
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 Widget from "./widget";
|
||||
import KubernetesStatus from "./kubernetes-status";
|
||||
import Ping from "./ping";
|
||||
import SiteMonitor from "./site-monitor";
|
||||
import KubernetesStatus from "./kubernetes-status";
|
||||
import Status from "./status";
|
||||
import Widget from "./widget";
|
||||
|
||||
export default function Item({ service, groupName, useEqualHeights }) {
|
||||
const hasLink = service.href && service.href !== "#";
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import useSWR from "swr";
|
||||
import { t } from "i18next";
|
||||
import useSWR from "swr";
|
||||
|
||||
export default function KubernetesStatus({ service, style }) {
|
||||
const podSelectorString = service.podSelector !== undefined ? `podSelector=${service.podSelector}` : "";
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import { useTranslation } from "react-i18next";
|
||||
import { useTranslation } from "next-i18next";
|
||||
import useSWR from "swr";
|
||||
|
||||
export default function Ping({ groupName, serviceName, style }) {
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import { useTranslation } from "react-i18next";
|
||||
import { useTranslation } from "next-i18next";
|
||||
import useSWR from "swr";
|
||||
|
||||
export default function SiteMonitor({ groupName, serviceName, style }) {
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import { useTranslation } from "react-i18next";
|
||||
import { useTranslation } from "next-i18next";
|
||||
import useSWR from "swr";
|
||||
|
||||
export default function Status({ service, style }) {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import { useTranslation } from "next-i18next";
|
||||
import ErrorBoundary from "components/errorboundry";
|
||||
import { useTranslation } from "next-i18next";
|
||||
|
||||
import components from "widgets/components";
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import { useTranslation } from "next-i18next";
|
||||
import classNames from "classnames";
|
||||
import { useTranslation } from "next-i18next";
|
||||
|
||||
export default function Block({ value, label }) {
|
||||
const { t } = useTranslation();
|
||||
|
|
|
@ -3,6 +3,11 @@ import { SettingsContext } from "utils/contexts/settings";
|
|||
|
||||
import Error from "./error";
|
||||
|
||||
const ALIASED_WIDGETS = {
|
||||
pialert: "netalertx",
|
||||
hoarder: "karakeep",
|
||||
};
|
||||
|
||||
export default function Container({ error = false, children, service }) {
|
||||
const { settings } = useContext(SettingsContext);
|
||||
|
||||
|
@ -32,7 +37,17 @@ export default function Container({ error = false, children, service }) {
|
|||
if (!field.includes(".")) {
|
||||
fullField = `${type}.${field}`;
|
||||
}
|
||||
return fullField === child?.props?.label;
|
||||
let matches = fullField === child?.props?.label;
|
||||
// check if the field is an 'alias'
|
||||
if (matches) {
|
||||
return true;
|
||||
} else if (ALIASED_WIDGETS[type]) {
|
||||
matches = fullField.replace(type, ALIASED_WIDGETS[type]) === child?.props?.label;
|
||||
|
||||
return matches;
|
||||
}
|
||||
// no match
|
||||
return false;
|
||||
}),
|
||||
);
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import { useTranslation } from "react-i18next";
|
||||
import { useTranslation } from "next-i18next";
|
||||
import { IoAlertCircle } from "react-icons/io5";
|
||||
|
||||
function displayError(error) {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import { useContext } from "react";
|
||||
import classNames from "classnames";
|
||||
import { useContext } from "react";
|
||||
import { TabContext } from "utils/contexts/tab";
|
||||
|
||||
function slugify(tabName) {
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import { useContext, Fragment } from "react";
|
||||
import { IoColorPalette } from "react-icons/io5";
|
||||
import { Popover, Transition } from "@headlessui/react";
|
||||
import classNames from "classnames";
|
||||
import { Fragment, useContext } from "react";
|
||||
import { IoColorPalette } from "react-icons/io5";
|
||||
import { ColorContext } from "utils/contexts/color";
|
||||
|
||||
const colors = [
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
import { compareVersions, validate } from "compare-versions";
|
||||
import cache from "memory-cache";
|
||||
import { useTranslation } from "next-i18next";
|
||||
import useSWR from "swr";
|
||||
import { compareVersions, validate } from "compare-versions";
|
||||
import { MdNewReleases } from "react-icons/md";
|
||||
import useSWR from "swr";
|
||||
|
||||
const LATEST_RELEASE_CACHE_KEY = "latestRelease";
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import { useState, useEffect } from "react";
|
||||
import { useTranslation } from "next-i18next";
|
||||
import { useEffect, useState } from "react";
|
||||
|
||||
import Container from "../widget/container";
|
||||
import Raw from "../widget/raw";
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
import useSWR from "swr";
|
||||
import classNames from "classnames";
|
||||
import { useTranslation } from "next-i18next";
|
||||
import { useContext } from "react";
|
||||
import { FaMemory, FaRegClock, FaThermometerHalf } from "react-icons/fa";
|
||||
import { FiCpu, FiHardDrive } from "react-icons/fi";
|
||||
import { useTranslation } from "next-i18next";
|
||||
import classNames from "classnames";
|
||||
import useSWR from "swr";
|
||||
import { SettingsContext } from "utils/contexts/settings";
|
||||
|
||||
import Error from "../widget/error";
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
import useSWR from "swr";
|
||||
import { useTranslation } from "next-i18next";
|
||||
import useSWR from "swr";
|
||||
|
||||
import Error from "../widget/error";
|
||||
import Container from "../widget/container";
|
||||
import Error from "../widget/error";
|
||||
import Raw from "../widget/raw";
|
||||
|
||||
import Node from "./node";
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import { useTranslation } from "next-i18next";
|
||||
import { FaMemory } from "react-icons/fa";
|
||||
import { FiAlertTriangle, FiCpu, FiServer } from "react-icons/fi";
|
||||
import { SiKubernetes } from "react-icons/si";
|
||||
import { useTranslation } from "next-i18next";
|
||||
|
||||
import UsageBar from "../resources/usage-bar";
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import useSWR from "swr";
|
||||
|
||||
import Error from "../widget/error";
|
||||
import Container from "../widget/container";
|
||||
import Error from "../widget/error";
|
||||
import Raw from "../widget/raw";
|
||||
|
||||
import Node from "./node";
|
||||
|
@ -32,8 +32,8 @@ export default function Longhorn({ options }) {
|
|||
<div className="flex flex-row self-center flex-wrap justify-between">
|
||||
{data.nodes
|
||||
.filter((node) => {
|
||||
if (node.id === "total" && total) {
|
||||
return true;
|
||||
if (node.id === "total") {
|
||||
return total;
|
||||
}
|
||||
if (!nodes) {
|
||||
return false;
|
||||
|
|
|
@ -1,16 +1,16 @@
|
|||
import useSWR from "swr";
|
||||
import { useState } from "react";
|
||||
import { WiCloudDown } from "react-icons/wi";
|
||||
import { MdLocationDisabled, MdLocationSearching } from "react-icons/md";
|
||||
import { useTranslation } from "next-i18next";
|
||||
import { useState } from "react";
|
||||
import { MdLocationDisabled, MdLocationSearching } from "react-icons/md";
|
||||
import { WiCloudDown } from "react-icons/wi";
|
||||
import useSWR from "swr";
|
||||
|
||||
import Error from "../widget/error";
|
||||
import mapIcon from "../../../utils/weather/openmeteo-condition-map";
|
||||
import Container from "../widget/container";
|
||||
import ContainerButton from "../widget/container_button";
|
||||
import WidgetIcon from "../widget/widget_icon";
|
||||
import Error from "../widget/error";
|
||||
import PrimaryText from "../widget/primary_text";
|
||||
import SecondaryText from "../widget/secondary_text";
|
||||
import mapIcon from "../../../utils/weather/openmeteo-condition-map";
|
||||
import WidgetIcon from "../widget/widget_icon";
|
||||
|
||||
function Widget({ options }) {
|
||||
const { t } = useTranslation();
|
||||
|
|
|
@ -1,16 +1,16 @@
|
|||
import useSWR from "swr";
|
||||
import { useState } from "react";
|
||||
import { WiCloudDown } from "react-icons/wi";
|
||||
import { MdLocationDisabled, MdLocationSearching } from "react-icons/md";
|
||||
import { useTranslation } from "next-i18next";
|
||||
import { useState } from "react";
|
||||
import { MdLocationDisabled, MdLocationSearching } from "react-icons/md";
|
||||
import { WiCloudDown } from "react-icons/wi";
|
||||
import useSWR from "swr";
|
||||
|
||||
import Error from "../widget/error";
|
||||
import mapIcon from "../../../utils/weather/owm-condition-map";
|
||||
import Container from "../widget/container";
|
||||
import ContainerButton from "../widget/container_button";
|
||||
import Error from "../widget/error";
|
||||
import PrimaryText from "../widget/primary_text";
|
||||
import SecondaryText from "../widget/secondary_text";
|
||||
import WidgetIcon from "../widget/widget_icon";
|
||||
import mapIcon from "../../../utils/weather/owm-condition-map";
|
||||
|
||||
function Widget({ options }) {
|
||||
const { t, i18n } = useTranslation();
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
import useSWR from "swr";
|
||||
import { FiCpu } from "react-icons/fi";
|
||||
import { useTranslation } from "next-i18next";
|
||||
import { FiCpu } from "react-icons/fi";
|
||||
import useSWR from "swr";
|
||||
|
||||
import Resource from "../widget/resource";
|
||||
import Error from "../widget/error";
|
||||
import Resource from "../widget/resource";
|
||||
|
||||
export default function Cpu({ expanded, refresh = 1500 }) {
|
||||
const { t } = useTranslation();
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue