diff --git a/.github/workflows/deployment-docker-image.yml b/.github/workflows/deployment-docker-image.yml
index c96cf1a1b..807a5bf39 100644
--- a/.github/workflows/deployment-docker-image.yml
+++ b/.github/workflows/deployment-docker-image.yml
@@ -40,6 +40,7 @@ jobs:
SKIP_RELEASE: ${{ github.event_name == 'workflow_dispatch' || github.ref_name == 'dev' }}
outputs:
version: ${{ steps.read-semver.outputs.version || steps.version-fallback.outputs.version }}
+ git_ref: ${{ steps.read-git-ref.outputs.ref || github.ref }}
steps:
- run: echo "Skipping release for workflow_dispatch event"
@@ -87,9 +88,16 @@ jobs:
run: |
git fetch --tags
echo "version=$(git describe --tags --abbrev=0)" >> "$GITHUB_OUTPUT"
+ - name: Read git ref
+ if: env.SKIP_RELEASE == 'false'
+ id: read-git-ref
+ run: |
+ echo "ref=$(git rev-parse HEAD)" >> "$GITHUB_OUTPUT"
- name: Update dev branch
if: env.SKIP_RELEASE == 'false'
continue-on-error: true # Prevent pipeline from failing when merge fails
+ env:
+ GITHUB_TOKEN: ${{ steps.obtainToken.outputs.token }}
run: |
git fetch origin dev
git checkout dev
@@ -107,6 +115,8 @@ jobs:
PUSH_IMAGE: ${{ github.event_name != 'workflow_dispatch' || github.events.inputs.push-image == true }}
steps:
- uses: actions/checkout@v4
+ with:
+ ref: ${{ needs.release.outputs.git_ref }}
- name: Discord notification
if: ${{ github.events.inputs.send-notifications != false }}
env:
diff --git a/apps/nextjs/next.config.mjs b/apps/nextjs/next.config.mjs
index 2467471d8..8c4bd2800 100644
--- a/apps/nextjs/next.config.mjs
+++ b/apps/nextjs/next.config.mjs
@@ -1,5 +1,6 @@
// Importing env files here to validate on build
import "@homarr/auth/env.mjs";
+import "@homarr/db/env.mjs";
import MillionLint from "@million/lint";
import createNextIntlPlugin from "next-intl/plugin";
diff --git a/apps/nextjs/package.json b/apps/nextjs/package.json
index fe9b0eeb7..01b6e3884 100644
--- a/apps/nextjs/package.json
+++ b/apps/nextjs/package.json
@@ -65,7 +65,7 @@
"glob": "^11.0.0",
"jotai": "^2.10.4",
"mantine-react-table": "2.0.0-beta.7",
- "next": "^14.2.20",
+ "next": "^14.2.21",
"postcss-preset-mantine": "^1.17.0",
"prismjs": "^1.29.0",
"react": "^19.0.0",
@@ -84,7 +84,7 @@
"@types/chroma-js": "2.4.5",
"@types/node": "^22.10.2",
"@types/prismjs": "^1.26.5",
- "@types/react": "^19.0.1",
+ "@types/react": "^19.0.2",
"@types/react-dom": "^19.0.2",
"@types/swagger-ui-react": "^4.18.3",
"concurrently": "^9.1.0",
diff --git a/apps/nextjs/src/app/[locale]/auth/invite/[id]/page.tsx b/apps/nextjs/src/app/[locale]/auth/invite/[id]/page.tsx
index 1624b50b5..39e8fa623 100644
--- a/apps/nextjs/src/app/[locale]/auth/invite/[id]/page.tsx
+++ b/apps/nextjs/src/app/[locale]/auth/invite/[id]/page.tsx
@@ -4,7 +4,7 @@ import { Card, Center, Stack, Text, Title } from "@mantine/core";
import { auth } from "@homarr/auth/next";
import { isProviderEnabled } from "@homarr/auth/server";
import { and, db, eq } from "@homarr/db";
-import { invites } from "@homarr/db/schema/sqlite";
+import { invites } from "@homarr/db/schema";
import { getScopedI18n } from "@homarr/translation/server";
import { HomarrLogoWithTitle } from "~/components/layout/logo/homarr-logo";
diff --git a/apps/nextjs/src/app/[locale]/boards/(content)/not-found.tsx b/apps/nextjs/src/app/[locale]/boards/(content)/not-found.tsx
index ba84e0593..5ab6c8c61 100644
--- a/apps/nextjs/src/app/[locale]/boards/(content)/not-found.tsx
+++ b/apps/nextjs/src/app/[locale]/boards/(content)/not-found.tsx
@@ -2,7 +2,7 @@ import { IconHomeOff } from "@tabler/icons-react";
import { auth } from "@homarr/auth/next";
import { db } from "@homarr/db";
-import { boards } from "@homarr/db/schema/sqlite";
+import { boards } from "@homarr/db/schema";
import { getI18n } from "@homarr/translation/server";
import type { BoardNotFoundProps } from "~/components/board/not-found";
diff --git a/apps/nextjs/src/app/[locale]/init/_steps/import/import-dropzone.tsx b/apps/nextjs/src/app/[locale]/init/_steps/import/import-dropzone.tsx
index b425267cf..cea43cabe 100644
--- a/apps/nextjs/src/app/[locale]/init/_steps/import/import-dropzone.tsx
+++ b/apps/nextjs/src/app/[locale]/init/_steps/import/import-dropzone.tsx
@@ -24,10 +24,19 @@ export const ImportDropZone = ({ loading, updateFile }: ImportDropZoneProps) =>
}}
acceptColor="blue.6"
rejectColor="red.6"
- accept={[MIME_TYPES.zip]}
+ accept={[MIME_TYPES.zip, "application/x-zip-compressed"]}
loading={loading}
multiple={false}
maxSize={1024 * 1024 * 1024 * 64} // 64 MB
+ onReject={(rejections) => {
+ console.error(
+ "Rejected files",
+ rejections.map(
+ (rejection) =>
+ `File: ${rejection.file.name} size=${rejection.file.size} fileType=${rejection.file.type}\n - ${rejection.errors.map((error) => error.message).join("\n - ")}`,
+ ),
+ );
+ }}
>
diff --git a/apps/nextjs/src/app/[locale]/manage/users/create/page.tsx b/apps/nextjs/src/app/[locale]/manage/users/create/page.tsx
index 4c49b6595..30511e47f 100644
--- a/apps/nextjs/src/app/[locale]/manage/users/create/page.tsx
+++ b/apps/nextjs/src/app/[locale]/manage/users/create/page.tsx
@@ -3,7 +3,7 @@ import { notFound } from "next/navigation";
import { auth } from "@homarr/auth/next";
import { isProviderEnabled } from "@homarr/auth/server";
import { db, inArray } from "@homarr/db";
-import { groups } from "@homarr/db/schema/sqlite";
+import { groups } from "@homarr/db/schema";
import { everyoneGroup } from "@homarr/definitions";
import { getScopedI18n } from "@homarr/translation/server";
diff --git a/apps/nextjs/src/app/api/[...trpc]/route.ts b/apps/nextjs/src/app/api/[...trpc]/route.ts
index ffd59c784..8d1d30f26 100644
--- a/apps/nextjs/src/app/api/[...trpc]/route.ts
+++ b/apps/nextjs/src/app/api/[...trpc]/route.ts
@@ -8,7 +8,7 @@ import { hashPasswordAsync } from "@homarr/auth";
import type { Session } from "@homarr/auth";
import { createSessionAsync } from "@homarr/auth/server";
import { db, eq } from "@homarr/db";
-import { apiKeys } from "@homarr/db/schema/sqlite";
+import { apiKeys } from "@homarr/db/schema";
import { logger } from "@homarr/log";
const handlerAsync = async (req: NextRequest) => {
diff --git a/apps/nextjs/src/app/api/user-medias/[id]/route.ts b/apps/nextjs/src/app/api/user-medias/[id]/route.ts
index 5f3fb36e3..751895381 100644
--- a/apps/nextjs/src/app/api/user-medias/[id]/route.ts
+++ b/apps/nextjs/src/app/api/user-medias/[id]/route.ts
@@ -3,7 +3,7 @@ import { NextResponse } from "next/server";
import type { NextRequest } from "next/server";
import { db, eq } from "@homarr/db";
-import { medias } from "@homarr/db/schema/sqlite";
+import { medias } from "@homarr/db/schema";
export async function GET(_req: NextRequest, { params }: { params: { id: string } }) {
const image = await db.query.medias.findFirst({
diff --git a/apps/nextjs/src/env.mjs b/apps/nextjs/src/env.mjs
index bdef43eb0..a82ae2dd5 100644
--- a/apps/nextjs/src/env.mjs
+++ b/apps/nextjs/src/env.mjs
@@ -1,10 +1,6 @@
import { createEnv } from "@t3-oss/env-nextjs";
import { z } from "zod";
-const isUsingDbUrl = Boolean(process.env.DB_URL);
-const isUsingDbHost = Boolean(process.env.DB_HOST);
-const isUsingDbCredentials = process.env.DB_DRIVER === "mysql2";
-
export const env = createEnv({
shared: {
VERCEL_URL: z
@@ -19,21 +15,6 @@ export const env = createEnv({
* built with invalid env vars.
*/
server: {
- DB_DRIVER: z.enum(["better-sqlite3", "mysql2"]).default("better-sqlite3"),
- // If the DB_HOST is set, the DB_URL is optional
- DB_URL: isUsingDbHost ? z.string().optional() : z.string(),
- DB_HOST: isUsingDbUrl ? z.string().optional() : z.string(),
- DB_PORT: isUsingDbUrl
- ? z.string().regex(/\d+/).transform(Number).optional()
- : z
- .string()
- .regex(/\d+/)
- .transform(Number)
- .refine((number) => number >= 1)
- .default("3306"),
- DB_USER: isUsingDbCredentials ? z.string() : z.string().optional(),
- DB_PASSWORD: isUsingDbCredentials ? z.string() : z.string().optional(),
- DB_NAME: isUsingDbUrl ? z.string().optional() : z.string(),
// Comma separated list of docker hostnames that can be used to connect to query the docker endpoints (localhost:2375,host.docker.internal:2375, ...)
DOCKER_HOSTNAMES: z.string().optional(),
DOCKER_PORTS: z.number().optional(),
@@ -51,13 +32,6 @@ export const env = createEnv({
runtimeEnv: {
VERCEL_URL: process.env.VERCEL_URL,
PORT: process.env.PORT,
- DB_URL: process.env.DB_URL,
- DB_HOST: process.env.DB_HOST,
- DB_USER: process.env.DB_USER,
- DB_PASSWORD: process.env.DB_PASSWORD,
- DB_NAME: process.env.DB_NAME,
- DB_PORT: process.env.DB_PORT,
- DB_DRIVER: process.env.DB_DRIVER,
NODE_ENV: process.env.NODE_ENV,
DOCKER_HOSTNAMES: process.env.DOCKER_HOSTNAMES,
DOCKER_PORTS: process.env.DOCKER_PORTS,
diff --git a/apps/tasks/package.json b/apps/tasks/package.json
index 2b2e89441..51f3ed7a8 100644
--- a/apps/tasks/package.json
+++ b/apps/tasks/package.json
@@ -38,7 +38,7 @@
"dayjs": "^1.11.13",
"dotenv": "^16.4.7",
"superjson": "2.2.2",
- "undici": "7.1.1"
+ "undici": "7.2.0"
},
"devDependencies": {
"@homarr/eslint-config": "workspace:^0.2.0",
diff --git a/packages/analytics/src/send-server-analytics.ts b/packages/analytics/src/send-server-analytics.ts
index 51b3741ae..e09bd71da 100644
--- a/packages/analytics/src/send-server-analytics.ts
+++ b/packages/analytics/src/send-server-analytics.ts
@@ -3,7 +3,7 @@ import { Umami } from "@umami/node";
import { count, db } from "@homarr/db";
import { getServerSettingByKeyAsync } from "@homarr/db/queries";
-import { integrations, items, users } from "@homarr/db/schema/sqlite";
+import { integrations, items, users } from "@homarr/db/schema";
import { logger } from "@homarr/log";
import type { defaultServerSettings } from "@homarr/server-settings";
diff --git a/packages/api/package.json b/packages/api/package.json
index 30b0c4910..4ea3a5646 100644
--- a/packages/api/package.json
+++ b/packages/api/package.json
@@ -40,7 +40,7 @@
"@trpc/react-query": "next",
"@trpc/server": "next",
"dockerode": "^4.0.2",
- "next": "^14.2.20",
+ "next": "^14.2.21",
"react": "^19.0.0",
"superjson": "2.2.2",
"trpc-to-openapi": "^2.1.0"
diff --git a/packages/api/src/middlewares/integration.ts b/packages/api/src/middlewares/integration.ts
index b6d715a56..d2a84f641 100644
--- a/packages/api/src/middlewares/integration.ts
+++ b/packages/api/src/middlewares/integration.ts
@@ -7,7 +7,7 @@ import { decryptSecret } from "@homarr/common/server";
import type { AtLeastOneOf } from "@homarr/common/types";
import type { Database } from "@homarr/db";
import { and, eq, inArray } from "@homarr/db";
-import { integrations } from "@homarr/db/schema/sqlite";
+import { integrations } from "@homarr/db/schema";
import type { IntegrationKind } from "@homarr/definitions";
import { z } from "@homarr/validation";
diff --git a/packages/api/src/middlewares/item.ts b/packages/api/src/middlewares/item.ts
index 78cc623db..79d93a463 100644
--- a/packages/api/src/middlewares/item.ts
+++ b/packages/api/src/middlewares/item.ts
@@ -1,7 +1,7 @@
import { TRPCError } from "@trpc/server";
import { and, eq } from "@homarr/db";
-import { items } from "@homarr/db/schema/sqlite";
+import { items } from "@homarr/db/schema";
import type { WidgetKind } from "@homarr/definitions";
import { z } from "@homarr/validation";
diff --git a/packages/api/src/router/apiKeys.ts b/packages/api/src/router/apiKeys.ts
index 715e85906..da903d695 100644
--- a/packages/api/src/router/apiKeys.ts
+++ b/packages/api/src/router/apiKeys.ts
@@ -1,7 +1,7 @@
import { createSaltAsync, hashPasswordAsync } from "@homarr/auth";
import { generateSecureRandomToken } from "@homarr/common/server";
import { createId, db } from "@homarr/db";
-import { apiKeys } from "@homarr/db/schema/sqlite";
+import { apiKeys } from "@homarr/db/schema";
import { createTRPCRouter, permissionRequiredProcedure } from "../trpc";
diff --git a/packages/api/src/router/app.ts b/packages/api/src/router/app.ts
index 918559c3a..da4184e89 100644
--- a/packages/api/src/router/app.ts
+++ b/packages/api/src/router/app.ts
@@ -1,7 +1,7 @@
import { TRPCError } from "@trpc/server";
import { asc, createId, eq, inArray, like } from "@homarr/db";
-import { apps } from "@homarr/db/schema/sqlite";
+import { apps } from "@homarr/db/schema";
import { selectAppSchema } from "@homarr/db/validationSchemas";
import { validation, z } from "@homarr/validation";
diff --git a/packages/api/src/router/app/app-access-control.ts b/packages/api/src/router/app/app-access-control.ts
index b395cea09..d4254cb75 100644
--- a/packages/api/src/router/app/app-access-control.ts
+++ b/packages/api/src/router/app/app-access-control.ts
@@ -2,7 +2,7 @@ import SuperJSON from "superjson";
import type { Session } from "@homarr/auth";
import { db, eq, or } from "@homarr/db";
-import { items } from "@homarr/db/schema/sqlite";
+import { items } from "@homarr/db/schema";
import type { WidgetComponentProps } from "../../../../widgets/src";
diff --git a/packages/api/src/router/board.ts b/packages/api/src/router/board.ts
index 26c38ba91..291ce54a4 100644
--- a/packages/api/src/router/board.ts
+++ b/packages/api/src/router/board.ts
@@ -15,7 +15,7 @@ import {
items,
sections,
users,
-} from "@homarr/db/schema/sqlite";
+} from "@homarr/db/schema";
import type { WidgetKind } from "@homarr/definitions";
import { getPermissionsWithParents, widgetKinds } from "@homarr/definitions";
import { importOldmarrAsync } from "@homarr/old-import";
diff --git a/packages/api/src/router/board/board-access.ts b/packages/api/src/router/board/board-access.ts
index 0bce8817a..1e4351cba 100644
--- a/packages/api/src/router/board/board-access.ts
+++ b/packages/api/src/router/board/board-access.ts
@@ -4,7 +4,7 @@ import type { Session } from "@homarr/auth";
import { constructBoardPermissions } from "@homarr/auth/shared";
import type { Database, SQL } from "@homarr/db";
import { eq, inArray } from "@homarr/db";
-import { boardGroupPermissions, boardUserPermissions, groupMembers } from "@homarr/db/schema/sqlite";
+import { boardGroupPermissions, boardUserPermissions, groupMembers } from "@homarr/db/schema";
import type { BoardPermission } from "@homarr/definitions";
/**
diff --git a/packages/api/src/router/docker/docker-router.ts b/packages/api/src/router/docker/docker-router.ts
index 0559e6211..6a8b99a1f 100644
--- a/packages/api/src/router/docker/docker-router.ts
+++ b/packages/api/src/router/docker/docker-router.ts
@@ -3,7 +3,7 @@ import type Docker from "dockerode";
import type { Container } from "dockerode";
import { db, like, or } from "@homarr/db";
-import { icons } from "@homarr/db/schema/sqlite";
+import { icons } from "@homarr/db/schema";
import type { DockerContainerState } from "@homarr/definitions";
import { logger } from "@homarr/log";
import { createCacheChannel } from "@homarr/redis";
diff --git a/packages/api/src/router/group.ts b/packages/api/src/router/group.ts
index 7d3ed049b..a1d3be92f 100644
--- a/packages/api/src/router/group.ts
+++ b/packages/api/src/router/group.ts
@@ -2,7 +2,7 @@ import { TRPCError } from "@trpc/server";
import type { Database } from "@homarr/db";
import { and, createId, eq, like, not, sql } from "@homarr/db";
-import { groupMembers, groupPermissions, groups } from "@homarr/db/schema/sqlite";
+import { groupMembers, groupPermissions, groups } from "@homarr/db/schema";
import { everyoneGroup } from "@homarr/definitions";
import { validation, z } from "@homarr/validation";
diff --git a/packages/api/src/router/home.ts b/packages/api/src/router/home.ts
index 2174a2968..7b65c74f3 100644
--- a/packages/api/src/router/home.ts
+++ b/packages/api/src/router/home.ts
@@ -3,7 +3,7 @@ import type { AnySQLiteTable } from "drizzle-orm/sqlite-core";
import { isProviderEnabled } from "@homarr/auth/server";
import type { Database } from "@homarr/db";
import { count } from "@homarr/db";
-import { apps, boards, groups, integrations, invites, users } from "@homarr/db/schema/sqlite";
+import { apps, boards, groups, integrations, invites, users } from "@homarr/db/schema";
import { createTRPCRouter, publicProcedure } from "../trpc";
diff --git a/packages/api/src/router/icons.ts b/packages/api/src/router/icons.ts
index 7b7c2f52b..2128e25ad 100644
--- a/packages/api/src/router/icons.ts
+++ b/packages/api/src/router/icons.ts
@@ -1,5 +1,5 @@
import { count, like } from "@homarr/db";
-import { icons } from "@homarr/db/schema/sqlite";
+import { icons } from "@homarr/db/schema";
import { validation } from "@homarr/validation";
import { createTRPCRouter, publicProcedure } from "../trpc";
diff --git a/packages/api/src/router/integration/integration-access.ts b/packages/api/src/router/integration/integration-access.ts
index f8e83e90b..78f8961e4 100644
--- a/packages/api/src/router/integration/integration-access.ts
+++ b/packages/api/src/router/integration/integration-access.ts
@@ -4,7 +4,7 @@ import type { Session } from "@homarr/auth";
import { constructIntegrationPermissions } from "@homarr/auth/shared";
import type { Database, SQL } from "@homarr/db";
import { eq, inArray } from "@homarr/db";
-import { groupMembers, integrationGroupPermissions, integrationUserPermissions } from "@homarr/db/schema/sqlite";
+import { groupMembers, integrationGroupPermissions, integrationUserPermissions } from "@homarr/db/schema";
import type { IntegrationPermission } from "@homarr/definitions";
/**
diff --git a/packages/api/src/router/integration/integration-router.ts b/packages/api/src/router/integration/integration-router.ts
index 72378a7e9..6b19101de 100644
--- a/packages/api/src/router/integration/integration-router.ts
+++ b/packages/api/src/router/integration/integration-router.ts
@@ -11,7 +11,7 @@ import {
integrations,
integrationSecrets,
integrationUserPermissions,
-} from "@homarr/db/schema/sqlite";
+} from "@homarr/db/schema";
import type { IntegrationSecretKind } from "@homarr/definitions";
import {
getIntegrationKindsByCategory,
diff --git a/packages/api/src/router/integration/integration-test-connection.ts b/packages/api/src/router/integration/integration-test-connection.ts
index 93a0bc356..58fcc9d21 100644
--- a/packages/api/src/router/integration/integration-test-connection.ts
+++ b/packages/api/src/router/integration/integration-test-connection.ts
@@ -1,5 +1,5 @@
import { decryptSecret } from "@homarr/common/server";
-import type { Integration } from "@homarr/db/schema/sqlite";
+import type { Integration } from "@homarr/db/schema";
import type { IntegrationKind, IntegrationSecretKind } from "@homarr/definitions";
import { getAllSecretKindOptions } from "@homarr/definitions";
import { integrationCreator, IntegrationTestConnectionError } from "@homarr/integrations";
diff --git a/packages/api/src/router/invite.ts b/packages/api/src/router/invite.ts
index c380f0003..6cbcc2869 100644
--- a/packages/api/src/router/invite.ts
+++ b/packages/api/src/router/invite.ts
@@ -2,7 +2,7 @@ import { randomBytes } from "crypto";
import { TRPCError } from "@trpc/server";
import { asc, createId, eq } from "@homarr/db";
-import { invites } from "@homarr/db/schema/sqlite";
+import { invites } from "@homarr/db/schema";
import { selectInviteSchema } from "@homarr/db/validationSchemas";
import { z } from "@homarr/validation";
diff --git a/packages/api/src/router/medias/media-router.ts b/packages/api/src/router/medias/media-router.ts
index 90f497523..600df24b4 100644
--- a/packages/api/src/router/medias/media-router.ts
+++ b/packages/api/src/router/medias/media-router.ts
@@ -1,7 +1,7 @@
import { TRPCError } from "@trpc/server";
import { and, createId, desc, eq, like } from "@homarr/db";
-import { medias } from "@homarr/db/schema/sqlite";
+import { medias } from "@homarr/db/schema";
import { validation, z } from "@homarr/validation";
import { createTRPCRouter, permissionRequiredProcedure, protectedProcedure } from "../../trpc";
diff --git a/packages/api/src/router/onboard/onboard-queries.ts b/packages/api/src/router/onboard/onboard-queries.ts
index 6aeb0386c..15f205d8b 100644
--- a/packages/api/src/router/onboard/onboard-queries.ts
+++ b/packages/api/src/router/onboard/onboard-queries.ts
@@ -3,7 +3,7 @@ import { objectEntries } from "@homarr/common";
import type { MaybePromise } from "@homarr/common/types";
import type { Database } from "@homarr/db";
import { eq } from "@homarr/db";
-import { groups, onboarding } from "@homarr/db/schema/sqlite";
+import { groups, onboarding } from "@homarr/db/schema";
import type { OnboardingStep } from "@homarr/definitions";
import { credentialsAdminGroup } from "@homarr/definitions";
diff --git a/packages/api/src/router/onboard/onboard-router.ts b/packages/api/src/router/onboard/onboard-router.ts
index 8b6120655..89b6fb66f 100644
--- a/packages/api/src/router/onboard/onboard-router.ts
+++ b/packages/api/src/router/onboard/onboard-router.ts
@@ -1,4 +1,4 @@
-import { onboarding } from "@homarr/db/schema/sqlite";
+import { onboarding } from "@homarr/db/schema";
import { onboardingSteps } from "@homarr/definitions";
import { z, zodEnumFromArray } from "@homarr/validation";
diff --git a/packages/api/src/router/search-engine/search-engine-router.ts b/packages/api/src/router/search-engine/search-engine-router.ts
index 63c7c3bda..8e8fe853a 100644
--- a/packages/api/src/router/search-engine/search-engine-router.ts
+++ b/packages/api/src/router/search-engine/search-engine-router.ts
@@ -1,7 +1,7 @@
import { TRPCError } from "@trpc/server";
import { createId, eq, like, sql } from "@homarr/db";
-import { searchEngines } from "@homarr/db/schema/sqlite";
+import { searchEngines } from "@homarr/db/schema";
import { validation } from "@homarr/validation";
import { createTRPCRouter, permissionRequiredProcedure, protectedProcedure } from "../../trpc";
diff --git a/packages/api/src/router/test/app.spec.ts b/packages/api/src/router/test/app.spec.ts
index 0354ad74e..4da8a6117 100644
--- a/packages/api/src/router/test/app.spec.ts
+++ b/packages/api/src/router/test/app.spec.ts
@@ -3,7 +3,7 @@ import { describe, expect, test, vi } from "vitest";
import type { Session } from "@homarr/auth";
import { createId } from "@homarr/db";
-import { apps } from "@homarr/db/schema/sqlite";
+import { apps } from "@homarr/db/schema";
import { createDb } from "@homarr/db/test";
import type { GroupPermissionKey } from "@homarr/definitions";
diff --git a/packages/api/src/router/test/board.spec.ts b/packages/api/src/router/test/board.spec.ts
index c8a50ca25..8c0da79e5 100644
--- a/packages/api/src/router/test/board.spec.ts
+++ b/packages/api/src/router/test/board.spec.ts
@@ -17,7 +17,7 @@ import {
sections,
serverSettings,
users,
-} from "@homarr/db/schema/sqlite";
+} from "@homarr/db/schema";
import { createDb } from "@homarr/db/test";
import type { BoardPermission, GroupPermissionKey } from "@homarr/definitions";
diff --git a/packages/api/src/router/test/board/board-access.spec.ts b/packages/api/src/router/test/board/board-access.spec.ts
index 599d08489..370a5bc51 100644
--- a/packages/api/src/router/test/board/board-access.spec.ts
+++ b/packages/api/src/router/test/board/board-access.spec.ts
@@ -2,7 +2,7 @@ import { describe, expect, test, vi } from "vitest";
import * as authShared from "@homarr/auth/shared";
import { createId, eq } from "@homarr/db";
-import { boards, users } from "@homarr/db/schema/sqlite";
+import { boards, users } from "@homarr/db/schema";
import { createDb } from "@homarr/db/test";
import { throwIfActionForbiddenAsync } from "../../board/board-access";
diff --git a/packages/api/src/router/test/group.spec.ts b/packages/api/src/router/test/group.spec.ts
index b552e3bbd..ab5357e8f 100644
--- a/packages/api/src/router/test/group.spec.ts
+++ b/packages/api/src/router/test/group.spec.ts
@@ -3,7 +3,7 @@ import { describe, expect, test, vi } from "vitest";
import type { Session } from "@homarr/auth";
import * as env from "@homarr/auth/env.mjs";
import { createId, eq } from "@homarr/db";
-import { groupMembers, groupPermissions, groups, users } from "@homarr/db/schema/sqlite";
+import { groupMembers, groupPermissions, groups, users } from "@homarr/db/schema";
import { createDb } from "@homarr/db/test";
import type { GroupPermissionKey } from "@homarr/definitions";
diff --git a/packages/api/src/router/test/integration/integration-access.spec.ts b/packages/api/src/router/test/integration/integration-access.spec.ts
index 5013c015f..7251f1e9a 100644
--- a/packages/api/src/router/test/integration/integration-access.spec.ts
+++ b/packages/api/src/router/test/integration/integration-access.spec.ts
@@ -2,7 +2,7 @@ import { describe, expect, test, vi } from "vitest";
import * as authShared from "@homarr/auth/shared";
import { createId, eq } from "@homarr/db";
-import { integrations, users } from "@homarr/db/schema/sqlite";
+import { integrations, users } from "@homarr/db/schema";
import { createDb } from "@homarr/db/test";
import { throwIfActionForbiddenAsync } from "../../integration/integration-access";
diff --git a/packages/api/src/router/test/integration/integration-router.spec.ts b/packages/api/src/router/test/integration/integration-router.spec.ts
index 52a23f3b6..c07c6af2e 100644
--- a/packages/api/src/router/test/integration/integration-router.spec.ts
+++ b/packages/api/src/router/test/integration/integration-router.spec.ts
@@ -4,7 +4,7 @@ import { describe, expect, test, vi } from "vitest";
import type { Session } from "@homarr/auth";
import { encryptSecret } from "@homarr/common/server";
import { createId } from "@homarr/db";
-import { integrations, integrationSecrets } from "@homarr/db/schema/sqlite";
+import { integrations, integrationSecrets } from "@homarr/db/schema";
import { createDb } from "@homarr/db/test";
import type { GroupPermissionKey } from "@homarr/definitions";
diff --git a/packages/api/src/router/test/invite.spec.ts b/packages/api/src/router/test/invite.spec.ts
index 927e7fd91..886ef63df 100644
--- a/packages/api/src/router/test/invite.spec.ts
+++ b/packages/api/src/router/test/invite.spec.ts
@@ -3,7 +3,7 @@ import { describe, expect, test, vi } from "vitest";
import type { Session } from "@homarr/auth";
import { createId } from "@homarr/db";
-import { invites, users } from "@homarr/db/schema/sqlite";
+import { invites, users } from "@homarr/db/schema";
import { createDb } from "@homarr/db/test";
import { inviteRouter } from "../invite";
diff --git a/packages/api/src/router/test/serverSettings.spec.ts b/packages/api/src/router/test/serverSettings.spec.ts
index ba2a7c784..a3ae26422 100644
--- a/packages/api/src/router/test/serverSettings.spec.ts
+++ b/packages/api/src/router/test/serverSettings.spec.ts
@@ -3,7 +3,7 @@ import { describe, expect, test, vi } from "vitest";
import type { Session } from "@homarr/auth";
import { createId } from "@homarr/db";
-import { serverSettings } from "@homarr/db/schema/sqlite";
+import { serverSettings } from "@homarr/db/schema";
import { createDb } from "@homarr/db/test";
import { defaultServerSettings, defaultServerSettingsKeys } from "@homarr/server-settings";
diff --git a/packages/api/src/router/test/user.spec.ts b/packages/api/src/router/test/user.spec.ts
index 1ae7c2dc7..0a3aa8d4f 100644
--- a/packages/api/src/router/test/user.spec.ts
+++ b/packages/api/src/router/test/user.spec.ts
@@ -2,8 +2,8 @@ import { describe, expect, it, test, vi } from "vitest";
import type { Session } from "@homarr/auth";
import type { Database } from "@homarr/db";
-import { createId, eq, schema } from "@homarr/db";
-import { onboarding, users } from "@homarr/db/schema/sqlite";
+import { createId, eq } from "@homarr/db";
+import { invites, onboarding, users } from "@homarr/db/schema";
import { createDb } from "@homarr/db/test";
import type { GroupPermissionKey, OnboardingStep } from "@homarr/definitions";
@@ -121,7 +121,7 @@ describe("register should create a user with valid invitation", () => {
await db.insert(users).values({
id: userId,
});
- await db.insert(schema.invites).values({
+ await db.insert(invites).values({
id: inviteId,
token: inviteToken,
creatorId: userId,
@@ -176,7 +176,7 @@ describe("register should create a user with valid invitation", () => {
await db.insert(users).values({
id: userId,
});
- await db.insert(schema.invites).values({
+ await db.insert(invites).values({
id: inviteId,
token: inviteToken,
creatorId: userId,
@@ -211,7 +211,7 @@ describe("editProfile shoud update user", () => {
const emailVerified = new Date(2024, 0, 5);
- await db.insert(schema.users).values({
+ await db.insert(users).values({
id: defaultOwnerId,
name: "TEST 1",
email: "abc@gmail.com",
@@ -226,7 +226,7 @@ describe("editProfile shoud update user", () => {
});
// assert
- const user = await db.select().from(schema.users).where(eq(schema.users.id, defaultOwnerId));
+ const user = await db.select().from(users).where(eq(users.id, defaultOwnerId));
expect(user).toHaveLength(1);
expect(user[0]).containSubset({
@@ -245,7 +245,7 @@ describe("editProfile shoud update user", () => {
session: defaultSession,
});
- await db.insert(schema.users).values({
+ await db.insert(users).values({
id: defaultOwnerId,
name: "TEST 1",
email: "abc@gmail.com",
@@ -260,7 +260,7 @@ describe("editProfile shoud update user", () => {
});
// assert
- const user = await db.select().from(schema.users).where(eq(schema.users.id, defaultOwnerId));
+ const user = await db.select().from(users).where(eq(users.id, defaultOwnerId));
expect(user).toHaveLength(1);
expect(user[0]).containSubset({
@@ -295,11 +295,11 @@ describe("delete should delete user", () => {
},
];
- await db.insert(schema.users).values(initialUsers);
+ await db.insert(users).values(initialUsers);
await caller.delete({ userId: defaultOwnerId });
- const usersInDb = await db.select().from(schema.users);
+ const usersInDb = await db.select().from(users);
expect(usersInDb).toHaveLength(2);
expect(usersInDb[0]).containSubset(initialUsers[0]);
expect(usersInDb[1]).containSubset(initialUsers[2]);
diff --git a/packages/api/src/router/user.ts b/packages/api/src/router/user.ts
index 4a412365d..4d1691f29 100644
--- a/packages/api/src/router/user.ts
+++ b/packages/api/src/router/user.ts
@@ -2,8 +2,8 @@ import { TRPCError } from "@trpc/server";
import { createSaltAsync, hashPasswordAsync } from "@homarr/auth";
import type { Database } from "@homarr/db";
-import { and, createId, eq, like, schema } from "@homarr/db";
-import { groupMembers, groupPermissions, groups, invites, users } from "@homarr/db/schema/sqlite";
+import { and, createId, eq, like } from "@homarr/db";
+import { groupMembers, groupPermissions, groups, invites, users } from "@homarr/db/schema";
import { selectUserSchema } from "@homarr/db/validationSchemas";
import { credentialsAdminGroup } from "@homarr/definitions";
import type { SupportedAuthProvider } from "@homarr/definitions";
@@ -509,7 +509,7 @@ const createUserAsync = async (db: Database, input: Omit {
diff --git a/packages/auth/callbacks.ts b/packages/auth/callbacks.ts
index d5fac0b7a..8f1168ad8 100644
--- a/packages/auth/callbacks.ts
+++ b/packages/auth/callbacks.ts
@@ -4,7 +4,7 @@ import type { NextAuthConfig } from "next-auth";
import type { Session } from "@homarr/auth";
import type { Database } from "@homarr/db";
import { eq, inArray } from "@homarr/db";
-import { groupMembers, groupPermissions, users } from "@homarr/db/schema/sqlite";
+import { groupMembers, groupPermissions, users } from "@homarr/db/schema";
import { getPermissionsWithChildren } from "@homarr/definitions";
export const getCurrentUserPermissionsAsync = async (db: Database, userId: string) => {
diff --git a/packages/auth/events.ts b/packages/auth/events.ts
index 2c636d14b..92987e0cf 100644
--- a/packages/auth/events.ts
+++ b/packages/auth/events.ts
@@ -4,7 +4,7 @@ import type { NextAuthConfig } from "next-auth";
import { and, eq, inArray } from "@homarr/db";
import type { Database } from "@homarr/db";
-import { groupMembers, groups, users } from "@homarr/db/schema/sqlite";
+import { groupMembers, groups, users } from "@homarr/db/schema";
import { colorSchemeCookieKey, everyoneGroup } from "@homarr/definitions";
import { logger } from "@homarr/log";
diff --git a/packages/auth/package.json b/packages/auth/package.json
index 1dfb76018..4410b440a 100644
--- a/packages/auth/package.json
+++ b/packages/auth/package.json
@@ -34,7 +34,7 @@
"bcrypt": "^5.1.1",
"cookies": "^0.9.1",
"ldapts": "7.3.0",
- "next": "^14.2.20",
+ "next": "^14.2.21",
"next-auth": "5.0.0-beta.25",
"react": "^19.0.0",
"react-dom": "^19.0.0"
diff --git a/packages/auth/permissions/integration-query-permissions.ts b/packages/auth/permissions/integration-query-permissions.ts
index 4ee7a31c2..13d65aca8 100644
--- a/packages/auth/permissions/integration-query-permissions.ts
+++ b/packages/auth/permissions/integration-query-permissions.ts
@@ -2,7 +2,7 @@ import type { Session } from "next-auth";
import type { Database } from "@homarr/db";
import { and, eq, inArray, or } from "@homarr/db";
-import { boards, boardUserPermissions, groupMembers } from "@homarr/db/schema/sqlite";
+import { boards, boardUserPermissions, groupMembers } from "@homarr/db/schema";
import type { IntegrationPermission } from "@homarr/definitions";
import { constructIntegrationPermissions } from "./integration-permissions";
diff --git a/packages/auth/permissions/integrations-with-permissions.ts b/packages/auth/permissions/integrations-with-permissions.ts
index 64fe09087..76cae6c93 100644
--- a/packages/auth/permissions/integrations-with-permissions.ts
+++ b/packages/auth/permissions/integrations-with-permissions.ts
@@ -1,7 +1,7 @@
import type { Session } from "next-auth";
import { db, eq, inArray } from "@homarr/db";
-import { groupMembers, integrationGroupPermissions, integrationUserPermissions } from "@homarr/db/schema/sqlite";
+import { groupMembers, integrationGroupPermissions, integrationUserPermissions } from "@homarr/db/schema";
import { constructIntegrationPermissions } from "./integration-permissions";
diff --git a/packages/auth/permissions/test/integration-query-permissions.spec.ts b/packages/auth/permissions/test/integration-query-permissions.spec.ts
index faf527d92..a1d9f52ed 100644
--- a/packages/auth/permissions/test/integration-query-permissions.spec.ts
+++ b/packages/auth/permissions/test/integration-query-permissions.spec.ts
@@ -3,14 +3,7 @@ import { describe, expect, test, vi } from "vitest";
import type { InferInsertModel } from "@homarr/db";
import { createId } from "@homarr/db";
-import {
- boardGroupPermissions,
- boards,
- boardUserPermissions,
- groupMembers,
- groups,
- users,
-} from "@homarr/db/schema/sqlite";
+import { boardGroupPermissions, boards, boardUserPermissions, groupMembers, groups, users } from "@homarr/db/schema";
import { createDb } from "@homarr/db/test";
import * as integrationPermissions from "../integration-permissions";
diff --git a/packages/auth/providers/credentials/authorization/basic-authorization.ts b/packages/auth/providers/credentials/authorization/basic-authorization.ts
index 6357df7c6..cdce3fe9e 100644
--- a/packages/auth/providers/credentials/authorization/basic-authorization.ts
+++ b/packages/auth/providers/credentials/authorization/basic-authorization.ts
@@ -2,7 +2,7 @@ import bcrypt from "bcrypt";
import type { Database } from "@homarr/db";
import { and, eq } from "@homarr/db";
-import { users } from "@homarr/db/schema/sqlite";
+import { users } from "@homarr/db/schema";
import { logger } from "@homarr/log";
import type { validation, z } from "@homarr/validation";
diff --git a/packages/auth/providers/credentials/authorization/ldap-authorization.ts b/packages/auth/providers/credentials/authorization/ldap-authorization.ts
index cae75f693..529d26ff2 100644
--- a/packages/auth/providers/credentials/authorization/ldap-authorization.ts
+++ b/packages/auth/providers/credentials/authorization/ldap-authorization.ts
@@ -2,7 +2,7 @@ import { CredentialsSignin } from "@auth/core/errors";
import type { Database, InferInsertModel } from "@homarr/db";
import { and, createId, eq } from "@homarr/db";
-import { users } from "@homarr/db/schema/sqlite";
+import { users } from "@homarr/db/schema";
import { logger } from "@homarr/log";
import type { validation } from "@homarr/validation";
import { z } from "@homarr/validation";
diff --git a/packages/auth/providers/test/basic-authorization.spec.ts b/packages/auth/providers/test/basic-authorization.spec.ts
index b828d2784..8955ea83a 100644
--- a/packages/auth/providers/test/basic-authorization.spec.ts
+++ b/packages/auth/providers/test/basic-authorization.spec.ts
@@ -1,7 +1,7 @@
import { describe, expect, test } from "vitest";
import { createId } from "@homarr/db";
-import { users } from "@homarr/db/schema/sqlite";
+import { users } from "@homarr/db/schema";
import { createDb } from "@homarr/db/test";
import { createSaltAsync, hashPasswordAsync } from "../../security";
diff --git a/packages/auth/providers/test/ldap-authorization.spec.ts b/packages/auth/providers/test/ldap-authorization.spec.ts
index c78fba30f..8d4a03ff9 100644
--- a/packages/auth/providers/test/ldap-authorization.spec.ts
+++ b/packages/auth/providers/test/ldap-authorization.spec.ts
@@ -3,7 +3,7 @@ import { describe, expect, test, vi } from "vitest";
import type { Database } from "@homarr/db";
import { and, createId, eq } from "@homarr/db";
-import { groups, users } from "@homarr/db/schema/sqlite";
+import { groups, users } from "@homarr/db/schema";
import { createDb } from "@homarr/db/test";
import { authorizeWithLdapCredentialsAsync } from "../credentials/authorization/ldap-authorization";
diff --git a/packages/auth/test/adapter.spec.ts b/packages/auth/test/adapter.spec.ts
index 7c74ffa4e..d20ae3d1a 100644
--- a/packages/auth/test/adapter.spec.ts
+++ b/packages/auth/test/adapter.spec.ts
@@ -1,6 +1,6 @@
import { describe, expect, test } from "vitest";
-import { users } from "@homarr/db/schema/sqlite";
+import { users } from "@homarr/db/schema";
import { createDb } from "@homarr/db/test";
import { createAdapter } from "../adapter";
diff --git a/packages/auth/test/callbacks.spec.ts b/packages/auth/test/callbacks.spec.ts
index d2da21a3b..6a1f52e2b 100644
--- a/packages/auth/test/callbacks.spec.ts
+++ b/packages/auth/test/callbacks.spec.ts
@@ -3,7 +3,7 @@ import type { AdapterUser } from "@auth/core/adapters";
import type { JWT } from "next-auth/jwt";
import { describe, expect, test, vi } from "vitest";
-import { groupMembers, groupPermissions, groups, users } from "@homarr/db/schema/sqlite";
+import { groupMembers, groupPermissions, groups, users } from "@homarr/db/schema";
import { createDb } from "@homarr/db/test";
import * as definitions from "@homarr/definitions";
diff --git a/packages/auth/test/events.spec.ts b/packages/auth/test/events.spec.ts
index 272612ce9..5fb37a9a2 100644
--- a/packages/auth/test/events.spec.ts
+++ b/packages/auth/test/events.spec.ts
@@ -5,7 +5,7 @@ import { describe, expect, test, vi } from "vitest";
import { eq } from "@homarr/db";
import type { Database } from "@homarr/db";
-import { groupMembers, groups, users } from "@homarr/db/schema/sqlite";
+import { groupMembers, groups, users } from "@homarr/db/schema";
import { createDb } from "@homarr/db/test";
import { colorSchemeCookieKey, everyoneGroup } from "@homarr/definitions";
diff --git a/packages/cli/src/commands/reset-password.ts b/packages/cli/src/commands/reset-password.ts
index a2a31cac0..ee4383205 100644
--- a/packages/cli/src/commands/reset-password.ts
+++ b/packages/cli/src/commands/reset-password.ts
@@ -3,7 +3,7 @@ import { command, string } from "@drizzle-team/brocli";
import { hashPasswordAsync } from "@homarr/auth";
import { generateSecureRandomToken } from "@homarr/common/server";
import { and, db, eq } from "@homarr/db";
-import { sessions, users } from "@homarr/db/schema/sqlite";
+import { sessions, users } from "@homarr/db/schema";
export const resetPassword = command({
name: "reset-password",
diff --git a/packages/common/package.json b/packages/common/package.json
index 2aebbd6a9..8312506ae 100644
--- a/packages/common/package.json
+++ b/packages/common/package.json
@@ -27,9 +27,9 @@
"dependencies": {
"@homarr/log": "workspace:^0.1.0",
"dayjs": "^1.11.13",
- "next": "^14.2.20",
+ "next": "^14.2.21",
"react": "^19.0.0",
- "tldts": "^6.1.68"
+ "tldts": "^6.1.69"
},
"devDependencies": {
"@homarr/eslint-config": "workspace:^0.2.0",
diff --git a/packages/cron-jobs/src/jobs/icons-updater.ts b/packages/cron-jobs/src/jobs/icons-updater.ts
index 9c4aca75d..48fa0c59c 100644
--- a/packages/cron-jobs/src/jobs/icons-updater.ts
+++ b/packages/cron-jobs/src/jobs/icons-updater.ts
@@ -3,7 +3,7 @@ import { EVERY_WEEK } from "@homarr/cron-jobs-core/expressions";
import type { InferInsertModel } from "@homarr/db";
import { db, inArray } from "@homarr/db";
import { createId } from "@homarr/db/client";
-import { iconRepositories, icons } from "@homarr/db/schema/sqlite";
+import { iconRepositories, icons } from "@homarr/db/schema";
import { fetchIconsAsync } from "@homarr/icons";
import { logger } from "@homarr/log";
diff --git a/packages/cron-jobs/src/jobs/rss-feeds.ts b/packages/cron-jobs/src/jobs/rss-feeds.ts
index 5c468520d..4c7f2d720 100644
--- a/packages/cron-jobs/src/jobs/rss-feeds.ts
+++ b/packages/cron-jobs/src/jobs/rss-feeds.ts
@@ -5,7 +5,7 @@ import SuperJSON from "superjson";
import type { Modify } from "@homarr/common/types";
import { EVERY_5_MINUTES } from "@homarr/cron-jobs-core/expressions";
import { db, eq } from "@homarr/db";
-import { items } from "@homarr/db/schema/sqlite";
+import { items } from "@homarr/db/schema";
import { logger } from "@homarr/log";
import { createItemChannel } from "@homarr/redis";
import { z } from "@homarr/validation";
diff --git a/packages/cron-jobs/src/jobs/session-cleanup.ts b/packages/cron-jobs/src/jobs/session-cleanup.ts
index f9d382ad5..cbfe8533d 100644
--- a/packages/cron-jobs/src/jobs/session-cleanup.ts
+++ b/packages/cron-jobs/src/jobs/session-cleanup.ts
@@ -1,7 +1,7 @@
import { env } from "@homarr/auth/env.mjs";
import { NEVER } from "@homarr/cron-jobs-core/expressions";
import { db, eq, inArray } from "@homarr/db";
-import { sessions, users } from "@homarr/db/schema/sqlite";
+import { sessions, users } from "@homarr/db/schema";
import { supportedAuthProviders } from "@homarr/definitions";
import { logger } from "@homarr/log";
diff --git a/packages/db/configs/mysql.config.ts b/packages/db/configs/mysql.config.ts
index 95d0ab936..c04425119 100644
--- a/packages/db/configs/mysql.config.ts
+++ b/packages/db/configs/mysql.config.ts
@@ -1,19 +1,19 @@
-/* eslint-disable @typescript-eslint/no-non-null-assertion */
-import * as dotenv from "dotenv";
import type { Config } from "drizzle-kit";
-dotenv.config({ path: "../../.env" });
+import { env } from "../env.mjs";
export default {
dialect: "mysql",
schema: "./schema",
casing: "snake_case",
- dbCredentials: {
- host: process.env.DB_HOST!,
- user: process.env.DB_USER!,
- password: process.env.DB_PASSWORD!,
- database: process.env.DB_NAME!,
- port: parseInt(process.env.DB_PORT!),
- },
+ dbCredentials: env.DB_URL
+ ? { url: env.DB_URL }
+ : {
+ host: env.DB_HOST,
+ user: env.DB_USER,
+ password: env.DB_PASSWORD,
+ database: env.DB_NAME,
+ port: env.DB_PORT,
+ },
out: "./migrations/mysql",
} satisfies Config;
diff --git a/packages/db/configs/sqlite.config.ts b/packages/db/configs/sqlite.config.ts
index 8e71be989..052c926bb 100644
--- a/packages/db/configs/sqlite.config.ts
+++ b/packages/db/configs/sqlite.config.ts
@@ -1,13 +1,11 @@
-import * as dotenv from "dotenv";
import type { Config } from "drizzle-kit";
-dotenv.config({ path: "../../.env" });
+import { env } from "../env.mjs";
export default {
dialect: "sqlite",
schema: "./schema",
casing: "snake_case",
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- dbCredentials: { url: process.env.DB_URL! },
+ dbCredentials: { url: env.DB_URL },
out: "./migrations/sqlite",
} satisfies Config;
diff --git a/packages/db/driver.ts b/packages/db/driver.ts
index 9eac1531d..8e54f07b5 100644
--- a/packages/db/driver.ts
+++ b/packages/db/driver.ts
@@ -7,6 +7,7 @@ import mysql from "mysql2";
import { logger } from "@homarr/log";
+import { env } from "./env.mjs";
import * as mysqlSchema from "./schema/mysql";
import * as sqliteSchema from "./schema/sqlite";
@@ -15,7 +16,7 @@ type HomarrDatabase = BetterSQLite3Database;
const init = () => {
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
if (!connection) {
- switch (process.env.DB_DRIVER) {
+ switch (env.DB_DRIVER) {
case "mysql2":
initMySQL2();
break;
@@ -36,7 +37,7 @@ class WinstonDrizzleLogger implements Logger {
}
const initBetterSqlite = () => {
- connection = new Database(process.env.DB_URL);
+ connection = new Database(env.DB_URL);
database = drizzleSqlite(connection, {
schema: sqliteSchema,
logger: new WinstonDrizzleLogger(),
@@ -45,16 +46,15 @@ const initBetterSqlite = () => {
};
const initMySQL2 = () => {
- if (!process.env.DB_HOST) {
- connection = mysql.createConnection({ uri: process.env.DB_URL });
+ if (!env.DB_HOST) {
+ connection = mysql.createConnection({ uri: env.DB_URL });
} else {
connection = mysql.createConnection({
- host: process.env.DB_HOST,
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- database: process.env.DB_NAME!,
- port: Number(process.env.DB_PORT),
- user: process.env.DB_USER,
- password: process.env.DB_PASSWORD,
+ host: env.DB_HOST,
+ database: env.DB_NAME,
+ port: env.DB_PORT,
+ user: env.DB_USER,
+ password: env.DB_PASSWORD,
});
}
diff --git a/packages/db/env.mjs b/packages/db/env.mjs
new file mode 100644
index 000000000..fb5ec2923
--- /dev/null
+++ b/packages/db/env.mjs
@@ -0,0 +1,60 @@
+import { createEnv } from "@t3-oss/env-nextjs";
+import { z } from "zod";
+
+const drivers = {
+ betterSqlite3: "better-sqlite3",
+ mysql2: "mysql2",
+};
+
+const isDriver = (driver) => process.env.DB_DRIVER === driver;
+const isUsingDbHost = Boolean(process.env.DB_HOST);
+const onlyAllowUrl = isDriver(drivers.betterSqlite3);
+const urlRequired = onlyAllowUrl || !isUsingDbHost;
+const hostRequired = isUsingDbHost && !onlyAllowUrl;
+
+export const env = createEnv({
+ /**
+ * Specify your server-side environment variables schema here. This way you can ensure the app isn't
+ * built with invalid env vars.
+ */
+ server: {
+ DB_DRIVER: z
+ .union([z.literal(drivers.betterSqlite3), z.literal(drivers.mysql2)], {
+ message: `Invalid database driver, supported are ${Object.keys(drivers).join(", ")}`,
+ })
+ .default(drivers.betterSqlite3),
+ ...(urlRequired
+ ? {
+ DB_URL: z.string(),
+ }
+ : {}),
+ ...(hostRequired
+ ? {
+ DB_HOST: z.string(),
+ DB_PORT: z
+ .string()
+ .regex(/\d+/)
+ .transform(Number)
+ .refine((number) => number >= 1)
+ .default("3306"),
+ DB_USER: z.string(),
+ DB_PASSWORD: z.string(),
+ DB_NAME: z.string(),
+ }
+ : {}),
+ },
+ /**
+ * Destructure all variables from `process.env` to make sure they aren't tree-shaken away.
+ */
+ runtimeEnv: {
+ DB_DRIVER: process.env.DB_DRIVER,
+ DB_URL: process.env.DB_URL,
+ DB_HOST: process.env.DB_HOST,
+ DB_USER: process.env.DB_USER,
+ DB_PASSWORD: process.env.DB_PASSWORD,
+ DB_NAME: process.env.DB_NAME,
+ DB_PORT: process.env.DB_PORT,
+ },
+ skipValidation:
+ Boolean(process.env.CI) || Boolean(process.env.SKIP_ENV_VALIDATION) || process.env.npm_lifecycle_event === "lint",
+});
diff --git a/packages/db/index.ts b/packages/db/index.ts
index beec11606..33575cb57 100644
--- a/packages/db/index.ts
+++ b/packages/db/index.ts
@@ -1,10 +1,6 @@
import Database from "better-sqlite3";
import { database } from "./driver";
-import * as sqliteSchema from "./schema/sqlite";
-
-// Export only the types from the sqlite schema as we're using that.
-export const schema = sqliteSchema;
export * from "drizzle-orm";
diff --git a/packages/db/migrations/mysql/migrate.ts b/packages/db/migrations/mysql/migrate.ts
index 61a2401f7..daca71ee7 100644
--- a/packages/db/migrations/mysql/migrate.ts
+++ b/packages/db/migrations/mysql/migrate.ts
@@ -1,9 +1,9 @@
-/* eslint-disable @typescript-eslint/no-non-null-assertion */
import { drizzle } from "drizzle-orm/mysql2";
import { migrate } from "drizzle-orm/mysql2/migrator";
import mysql from "mysql2";
import type { Database } from "../..";
+import { env } from "../../env.mjs";
import * as mysqlSchema from "../../schema/mysql";
import { seedDataAsync } from "../seed";
@@ -11,15 +11,15 @@ const migrationsFolder = process.argv[2] ?? ".";
const migrateAsync = async () => {
const mysql2 = mysql.createConnection(
- process.env.DB_HOST
- ? {
- host: process.env.DB_HOST,
- database: process.env.DB_NAME!,
- port: Number(process.env.DB_PORT),
- user: process.env.DB_USER,
- password: process.env.DB_PASSWORD,
- }
- : { uri: process.env.DB_URL },
+ env.DB_URL
+ ? { uri: env.DB_URL }
+ : {
+ host: env.DB_HOST,
+ database: env.DB_NAME,
+ port: env.DB_PORT,
+ user: env.DB_USER,
+ password: env.DB_PASSWORD,
+ },
);
const db = drizzle(mysql2, {
diff --git a/packages/db/migrations/seed.ts b/packages/db/migrations/seed.ts
index 15a82ea20..105147e20 100644
--- a/packages/db/migrations/seed.ts
+++ b/packages/db/migrations/seed.ts
@@ -6,8 +6,8 @@ import { defaultServerSettings, defaultServerSettingsKeys } from "@homarr/server
import { createId, eq } from "..";
import type { Database } from "..";
+import { onboarding, serverSettings } from "../schema";
import { groups } from "../schema/mysql";
-import { onboarding, serverSettings } from "../schema/sqlite";
export const seedDataAsync = async (db: Database) => {
await seedEveryoneGroupAsync(db);
diff --git a/packages/db/migrations/sqlite/migrate.ts b/packages/db/migrations/sqlite/migrate.ts
index 420169677..803f36215 100644
--- a/packages/db/migrations/sqlite/migrate.ts
+++ b/packages/db/migrations/sqlite/migrate.ts
@@ -2,15 +2,16 @@ import Database from "better-sqlite3";
import { drizzle } from "drizzle-orm/better-sqlite3";
import { migrate } from "drizzle-orm/better-sqlite3/migrator";
-import { schema } from "../..";
+import { env } from "../../env.mjs";
+import * as sqliteSchema from "../../schema/sqlite";
import { seedDataAsync } from "../seed";
const migrationsFolder = process.argv[2] ?? ".";
const migrateAsync = async () => {
- const sqlite = new Database(process.env.DB_URL?.replace("file:", ""));
+ const sqlite = new Database(env.DB_URL.replace("file:", ""));
- const db = drizzle(sqlite, { schema, casing: "snake_case" });
+ const db = drizzle(sqlite, { schema: sqliteSchema, casing: "snake_case" });
migrate(db, { migrationsFolder });
diff --git a/packages/db/package.json b/packages/db/package.json
index d9185a487..e3db1df95 100644
--- a/packages/db/package.json
+++ b/packages/db/package.json
@@ -7,10 +7,11 @@
"exports": {
".": "./index.ts",
"./client": "./client.ts",
- "./schema/sqlite": "./schema/sqlite.ts",
+ "./schema": "./schema/index.ts",
"./test": "./test/index.ts",
"./queries": "./queries/index.ts",
- "./validationSchemas": "./validationSchemas.ts"
+ "./validationSchemas": "./validationSchemas.ts",
+ "./env.mjs": "./env.mjs"
},
"main": "./index.ts",
"types": "./index.ts",
@@ -21,16 +22,16 @@
"clean": "rm -rf .turbo node_modules",
"format": "prettier --check . --ignore-path ../../.gitignore",
"lint": "eslint",
- "migration:mysql:drop": "drizzle-kit drop --config ./configs/mysql.config.ts",
- "migration:mysql:generate": "drizzle-kit generate --config ./configs/mysql.config.ts",
- "migration:mysql:run": "drizzle-kit migrate --config ./configs/mysql.config.ts && pnpm run seed",
- "migration:sqlite:drop": "drizzle-kit drop --config ./configs/sqlite.config.ts",
- "migration:sqlite:generate": "drizzle-kit generate --config ./configs/sqlite.config.ts",
- "migration:sqlite:run": "drizzle-kit migrate --config ./configs/sqlite.config.ts && pnpm run seed",
- "push:mysql": "drizzle-kit push --config ./configs/mysql.config.ts",
- "push:sqlite": "drizzle-kit push --config ./configs/sqlite.config.ts",
+ "migration:mysql:drop": "pnpm with-env drizzle-kit drop --config ./configs/mysql.config.ts",
+ "migration:mysql:generate": "pnpm with-env drizzle-kit generate --config ./configs/mysql.config.ts",
+ "migration:mysql:run": "pnpm with-env drizzle-kit migrate --config ./configs/mysql.config.ts && pnpm run seed",
+ "migration:sqlite:drop": "pnpm with-env drizzle-kit drop --config ./configs/sqlite.config.ts",
+ "migration:sqlite:generate": "pnpm with-env drizzle-kit generate --config ./configs/sqlite.config.ts",
+ "migration:sqlite:run": "pnpm with-env drizzle-kit migrate --config ./configs/sqlite.config.ts && pnpm run seed",
+ "push:mysql": "pnpm with-env drizzle-kit push --config ./configs/mysql.config.ts",
+ "push:sqlite": "pnpm with-env drizzle-kit push --config ./configs/sqlite.config.ts",
"seed": "pnpm with-env tsx ./migrations/run-seed.ts",
- "studio": "drizzle-kit studio --config ./configs/sqlite.config.ts",
+ "studio": "pnpm with-env drizzle-kit studio --config ./configs/sqlite.config.ts",
"typecheck": "tsc --noEmit",
"with-env": "dotenv -e ../../.env --"
},
@@ -42,6 +43,7 @@
"@homarr/log": "workspace:^0.1.0",
"@homarr/server-settings": "workspace:^0.1.0",
"@paralleldrive/cuid2": "^2.2.2",
+ "@t3-oss/env-nextjs": "^0.11.1",
"@testcontainers/mysql": "^10.16.0",
"better-sqlite3": "^11.7.0",
"dotenv": "^16.4.7",
diff --git a/packages/db/queries/item.ts b/packages/db/queries/item.ts
index 336270471..db048556f 100644
--- a/packages/db/queries/item.ts
+++ b/packages/db/queries/item.ts
@@ -3,7 +3,7 @@ import type { WidgetKind } from "@homarr/definitions";
import type { Database } from "..";
import { inArray } from "..";
import type { inferSupportedIntegrations } from "../../widgets/src";
-import { items } from "../schema/sqlite";
+import { items } from "../schema";
export const getItemsWithIntegrationsAsync = async (
db: Database,
diff --git a/packages/db/queries/server-setting.ts b/packages/db/queries/server-setting.ts
index a8039aa32..73f5156bc 100644
--- a/packages/db/queries/server-setting.ts
+++ b/packages/db/queries/server-setting.ts
@@ -5,7 +5,7 @@ import { defaultServerSettings, defaultServerSettingsKeys } from "@homarr/server
import type { Database } from "..";
import { eq } from "..";
-import { serverSettings } from "../schema/sqlite";
+import { serverSettings } from "../schema";
export const getServerSettingsAsync = async (db: Database) => {
const settings = await db.query.serverSettings.findMany();
diff --git a/packages/db/schema/index.ts b/packages/db/schema/index.ts
new file mode 100644
index 000000000..20000f771
--- /dev/null
+++ b/packages/db/schema/index.ts
@@ -0,0 +1,45 @@
+import type { InferSelectModel } from "drizzle-orm";
+
+import * as mysqlSchema from "./mysql";
+import * as sqliteSchema from "./sqlite";
+
+type Schema = typeof sqliteSchema;
+
+const schema = process.env.DB_DRIVER === "mysql2" ? (mysqlSchema as unknown as Schema) : sqliteSchema;
+
+// Sadly we can't use export * from here as we have multiple possible exports
+export const {
+ accounts,
+ apiKeys,
+ apps,
+ boardGroupPermissions,
+ boardUserPermissions,
+ boards,
+ groupMembers,
+ groupPermissions,
+ groups,
+ iconRepositories,
+ icons,
+ integrationGroupPermissions,
+ integrationItems,
+ integrationSecrets,
+ integrationUserPermissions,
+ integrations,
+ invites,
+ items,
+ medias,
+ onboarding,
+ searchEngines,
+ sections,
+ serverSettings,
+ sessions,
+ users,
+ verificationTokens,
+} = schema;
+
+export type User = InferSelectModel;
+export type Account = InferSelectModel;
+export type Session = InferSelectModel;
+export type VerificationToken = InferSelectModel;
+export type Integration = InferSelectModel;
+export type IntegrationSecret = InferSelectModel;
diff --git a/packages/db/schema/sqlite.ts b/packages/db/schema/sqlite.ts
index f5feffc71..6a24a87ed 100644
--- a/packages/db/schema/sqlite.ts
+++ b/packages/db/schema/sqlite.ts
@@ -1,6 +1,5 @@
import type { AdapterAccount } from "@auth/core/adapters";
import type { DayOfWeek } from "@mantine/dates";
-import type { InferSelectModel } from "drizzle-orm";
import { relations, sql } from "drizzle-orm";
import type { AnySQLiteColumn } from "drizzle-orm/sqlite-core";
import { blob, index, int, primaryKey, sqliteTable, text } from "drizzle-orm/sqlite-core";
@@ -567,10 +566,3 @@ export const searchEngineRelations = relations(searchEngines, ({ one }) => ({
references: [integrations.id],
}),
}));
-
-export type User = InferSelectModel;
-export type Account = InferSelectModel;
-export type Session = InferSelectModel;
-export type VerificationToken = InferSelectModel;
-export type Integration = InferSelectModel;
-export type IntegrationSecret = InferSelectModel;
diff --git a/packages/db/test/db-mock.ts b/packages/db/test/db-mock.ts
index e2f249554..176a27534 100644
--- a/packages/db/test/db-mock.ts
+++ b/packages/db/test/db-mock.ts
@@ -2,11 +2,11 @@ import Database from "better-sqlite3";
import { drizzle } from "drizzle-orm/better-sqlite3";
import { migrate } from "drizzle-orm/better-sqlite3/migrator";
-import { schema } from "..";
+import * as sqliteSchema from "../schema/sqlite";
export const createDb = (debug?: boolean) => {
const sqlite = new Database(":memory:");
- const db = drizzle(sqlite, { schema, logger: debug, casing: "snake_case" });
+ const db = drizzle(sqlite, { schema: sqliteSchema, logger: debug, casing: "snake_case" });
migrate(db, {
migrationsFolder: "./packages/db/migrations/sqlite",
});
diff --git a/packages/db/validationSchemas.ts b/packages/db/validationSchemas.ts
index 584fdfa6f..da49819e3 100644
--- a/packages/db/validationSchemas.ts
+++ b/packages/db/validationSchemas.ts
@@ -1,6 +1,6 @@
import { createSelectSchema } from "drizzle-zod";
-import { apps, boards, groups, invites, searchEngines, serverSettings, users } from "./schema/sqlite";
+import { apps, boards, groups, invites, searchEngines, serverSettings, users } from "./schema";
export const selectAppSchema = createSelectSchema(apps);
export const selectBoardSchema = createSelectSchema(boards);
diff --git a/packages/integrations/src/base/creator.ts b/packages/integrations/src/base/creator.ts
index 82e54d98d..c6782127a 100644
--- a/packages/integrations/src/base/creator.ts
+++ b/packages/integrations/src/base/creator.ts
@@ -1,6 +1,6 @@
import { decryptSecret } from "@homarr/common/server";
import type { Modify } from "@homarr/common/types";
-import type { Integration as DbIntegration } from "@homarr/db/schema/sqlite";
+import type { Integration as DbIntegration } from "@homarr/db/schema";
import type { IntegrationKind, IntegrationSecretKind } from "@homarr/definitions";
import { AdGuardHomeIntegration } from "../adguard-home/adguard-home-integration";
diff --git a/packages/integrations/src/interfaces/downloads/download-client-items.ts b/packages/integrations/src/interfaces/downloads/download-client-items.ts
index 53d31b49a..7137890d8 100644
--- a/packages/integrations/src/interfaces/downloads/download-client-items.ts
+++ b/packages/integrations/src/interfaces/downloads/download-client-items.ts
@@ -1,4 +1,4 @@
-import type { Integration } from "@homarr/db/schema/sqlite";
+import type { Integration } from "@homarr/db/schema";
import { z } from "@homarr/validation";
const usenetQueueState = ["downloading", "queued", "paused"] as const;
diff --git a/packages/integrations/src/interfaces/downloads/download-client-status.ts b/packages/integrations/src/interfaces/downloads/download-client-status.ts
index d8bfc09c0..37fb290b6 100644
--- a/packages/integrations/src/interfaces/downloads/download-client-status.ts
+++ b/packages/integrations/src/interfaces/downloads/download-client-status.ts
@@ -1,4 +1,4 @@
-import type { Integration } from "@homarr/db/schema/sqlite";
+import type { Integration } from "@homarr/db/schema";
export interface DownloadClientStatus {
/** If client is considered paused */
diff --git a/packages/modals-collection/package.json b/packages/modals-collection/package.json
index 590ede0a7..804ee9ea8 100644
--- a/packages/modals-collection/package.json
+++ b/packages/modals-collection/package.json
@@ -35,7 +35,7 @@
"@mantine/core": "^7.15.1",
"@tabler/icons-react": "^3.26.0",
"dayjs": "^1.11.13",
- "next": "^14.2.20",
+ "next": "^14.2.21",
"react": "^19.0.0"
},
"devDependencies": {
diff --git a/packages/old-import/package.json b/packages/old-import/package.json
index b182ff988..832620776 100644
--- a/packages/old-import/package.json
+++ b/packages/old-import/package.json
@@ -40,11 +40,11 @@
"@mantine/core": "^7.15.1",
"@mantine/hooks": "^7.15.1",
"adm-zip": "0.5.16",
- "next": "^14.2.20",
+ "next": "^14.2.21",
"react": "^19.0.0",
"superjson": "2.2.2",
"zod": "^3.24.1",
- "zod-form-data": "^2.0.2"
+ "zod-form-data": "^2.0.4"
},
"devDependencies": {
"@homarr/eslint-config": "workspace:^0.2.0",
diff --git a/packages/old-import/src/import-apps.ts b/packages/old-import/src/import-apps.ts
index 342ba682f..6f0a3f4fa 100644
--- a/packages/old-import/src/import-apps.ts
+++ b/packages/old-import/src/import-apps.ts
@@ -1,6 +1,6 @@
import { createId, inArray } from "@homarr/db";
import type { Database, InferInsertModel, InferSelectModel } from "@homarr/db";
-import { apps as appsTable } from "@homarr/db/schema/sqlite";
+import { apps as appsTable } from "@homarr/db/schema";
import { logger } from "@homarr/log";
import type { OldmarrApp } from "@homarr/old-schema";
diff --git a/packages/old-import/src/import-board.ts b/packages/old-import/src/import-board.ts
index 822e37ed3..737de5f56 100644
--- a/packages/old-import/src/import-board.ts
+++ b/packages/old-import/src/import-board.ts
@@ -1,6 +1,6 @@
import type { Database } from "@homarr/db";
import { createId } from "@homarr/db";
-import { boards } from "@homarr/db/schema/sqlite";
+import { boards } from "@homarr/db/schema";
import { logger } from "@homarr/log";
import type { OldmarrConfig } from "@homarr/old-schema";
diff --git a/packages/old-import/src/import-items.ts b/packages/old-import/src/import-items.ts
index 652687d21..a3fa7dbaf 100644
--- a/packages/old-import/src/import-items.ts
+++ b/packages/old-import/src/import-items.ts
@@ -2,7 +2,7 @@ import SuperJSON from "superjson";
import type { Database } from "@homarr/db";
import { createId } from "@homarr/db";
-import { items } from "@homarr/db/schema/sqlite";
+import { items } from "@homarr/db/schema";
import { logger } from "@homarr/log";
import type { OldmarrApp, OldmarrWidget } from "@homarr/old-schema";
diff --git a/packages/old-import/src/import-sections.ts b/packages/old-import/src/import-sections.ts
index 1aa8afc87..4d332b87c 100644
--- a/packages/old-import/src/import-sections.ts
+++ b/packages/old-import/src/import-sections.ts
@@ -1,6 +1,6 @@
import { createId } from "@homarr/db";
import type { Database } from "@homarr/db";
-import { sections } from "@homarr/db/schema/sqlite";
+import { sections } from "@homarr/db/schema";
import { logger } from "@homarr/log";
import type { OldmarrConfig } from "@homarr/old-schema";
diff --git a/packages/old-import/src/import/collections/common.ts b/packages/old-import/src/import/collections/common.ts
index 7dd07f087..4065063b5 100644
--- a/packages/old-import/src/import/collections/common.ts
+++ b/packages/old-import/src/import/collections/common.ts
@@ -1,6 +1,6 @@
import { objectEntries } from "@homarr/common";
import type { Database, InferInsertModel } from "@homarr/db";
-import { schema } from "@homarr/db";
+import * as schema from "@homarr/db/schema";
type TableKey = {
[K in keyof typeof schema]: (typeof schema)[K] extends { _: { brand: "Table" } } ? K : never;
diff --git a/packages/old-import/src/import/import-single-oldmarr.ts b/packages/old-import/src/import/import-single-oldmarr.ts
index 568595929..42bcc5c15 100644
--- a/packages/old-import/src/import/import-single-oldmarr.ts
+++ b/packages/old-import/src/import/import-single-oldmarr.ts
@@ -1,6 +1,6 @@
import { inArray } from "@homarr/db";
import type { Database } from "@homarr/db";
-import { apps } from "@homarr/db/schema/sqlite";
+import { apps } from "@homarr/db/schema";
import type { OldmarrConfig } from "@homarr/old-schema";
import { doAppsMatch } from "../prepare/prepare-apps";
diff --git a/packages/old-import/src/mappers/map-app.ts b/packages/old-import/src/mappers/map-app.ts
index 0232edc50..3b0bc095e 100644
--- a/packages/old-import/src/mappers/map-app.ts
+++ b/packages/old-import/src/mappers/map-app.ts
@@ -1,5 +1,5 @@
import type { InferSelectModel } from "@homarr/db";
-import type { apps } from "@homarr/db/schema/sqlite";
+import type { apps } from "@homarr/db/schema";
import type { OldmarrApp } from "@homarr/old-schema";
import type { OldmarrBookmarkDefinition } from "../widgets/definitions/bookmark";
diff --git a/packages/old-import/src/mappers/map-board.ts b/packages/old-import/src/mappers/map-board.ts
index a11b84cbd..28a9dfa26 100644
--- a/packages/old-import/src/mappers/map-board.ts
+++ b/packages/old-import/src/mappers/map-board.ts
@@ -1,6 +1,6 @@
import type { InferInsertModel } from "@homarr/db";
import { createId } from "@homarr/db";
-import type { boards } from "@homarr/db/schema/sqlite";
+import type { boards } from "@homarr/db/schema";
import type { prepareMultipleImports } from "../prepare/prepare-multiple";
import { mapColor } from "./map-colors";
diff --git a/packages/old-import/src/mappers/map-item.ts b/packages/old-import/src/mappers/map-item.ts
index f24fdfb37..1262e0e4d 100644
--- a/packages/old-import/src/mappers/map-item.ts
+++ b/packages/old-import/src/mappers/map-item.ts
@@ -2,7 +2,7 @@ import SuperJSON from "superjson";
import type { InferInsertModel } from "@homarr/db";
import { createId } from "@homarr/db";
-import type { items } from "@homarr/db/schema/sqlite";
+import type { items } from "@homarr/db/schema";
import { logger } from "@homarr/log";
import type { BoardSize, OldmarrApp, OldmarrWidget } from "@homarr/old-schema";
diff --git a/packages/old-import/src/mappers/map-section.ts b/packages/old-import/src/mappers/map-section.ts
index 10bf47ac8..e80b8969a 100644
--- a/packages/old-import/src/mappers/map-section.ts
+++ b/packages/old-import/src/mappers/map-section.ts
@@ -1,6 +1,6 @@
import type { InferInsertModel } from "@homarr/db";
import { createId } from "@homarr/db";
-import type { sections } from "@homarr/db/schema/sqlite";
+import type { sections } from "@homarr/db/schema";
import type { OldmarrCategorySection, OldmarrEmptySection } from "@homarr/old-schema";
export const mapCategorySection = (
diff --git a/packages/old-import/src/mappers/map-user.ts b/packages/old-import/src/mappers/map-user.ts
index 465eae455..ffa4c3509 100644
--- a/packages/old-import/src/mappers/map-user.ts
+++ b/packages/old-import/src/mappers/map-user.ts
@@ -1,7 +1,7 @@
import { decryptSecretWithKey } from "@homarr/common/server";
import type { InferInsertModel } from "@homarr/db";
import { createId } from "@homarr/db";
-import type { users } from "@homarr/db/schema/sqlite";
+import type { users } from "@homarr/db/schema";
import type { OldmarrImportUser } from "../user-schema";
diff --git a/packages/old-import/src/prepare/prepare-apps.ts b/packages/old-import/src/prepare/prepare-apps.ts
index d38820102..973ea3653 100644
--- a/packages/old-import/src/prepare/prepare-apps.ts
+++ b/packages/old-import/src/prepare/prepare-apps.ts
@@ -1,5 +1,5 @@
import type { InferSelectModel } from "@homarr/db";
-import type { apps } from "@homarr/db/schema/sqlite";
+import type { apps } from "@homarr/db/schema";
import type { OldmarrConfig } from "@homarr/old-schema";
import type { ValidAnalyseConfig } from "../analyse/types";
diff --git a/packages/request-handler/src/lib/cached-integration-request-handler.ts b/packages/request-handler/src/lib/cached-integration-request-handler.ts
index 437e7117c..b5d25decc 100644
--- a/packages/request-handler/src/lib/cached-integration-request-handler.ts
+++ b/packages/request-handler/src/lib/cached-integration-request-handler.ts
@@ -1,7 +1,7 @@
import type { Duration } from "dayjs/plugin/duration";
import type { Modify } from "@homarr/common/types";
-import type { Integration, IntegrationSecret } from "@homarr/db/schema/sqlite";
+import type { Integration, IntegrationSecret } from "@homarr/db/schema";
import type { IntegrationKind } from "@homarr/definitions";
import { createIntegrationOptionsChannel } from "@homarr/redis";
diff --git a/packages/spotlight/package.json b/packages/spotlight/package.json
index 3956ebbed..21b166e42 100644
--- a/packages/spotlight/package.json
+++ b/packages/spotlight/package.json
@@ -37,7 +37,7 @@
"@mantine/spotlight": "^7.15.1",
"@tabler/icons-react": "^3.26.0",
"jotai": "^2.10.4",
- "next": "^14.2.20",
+ "next": "^14.2.21",
"react": "^19.0.0",
"use-deep-compare-effect": "^1.8.1"
},
diff --git a/packages/translation/package.json b/packages/translation/package.json
index 870ebfdcf..9094e48e8 100644
--- a/packages/translation/package.json
+++ b/packages/translation/package.json
@@ -32,7 +32,7 @@
"dayjs": "^1.11.13",
"deepmerge": "4.3.1",
"mantine-react-table": "2.0.0-beta.7",
- "next": "^14.2.20",
+ "next": "^14.2.21",
"next-intl": "3.26.2",
"react": "^19.0.0"
},
diff --git a/packages/translation/src/lang/cn.json b/packages/translation/src/lang/cn.json
index e7cd1a4d2..b2e52492a 100644
--- a/packages/translation/src/lang/cn.json
+++ b/packages/translation/src/lang/cn.json
@@ -1,10 +1,131 @@
{
+ "init": {
+ "step": {
+ "start": {
+ "title": "",
+ "subtitle": "",
+ "description": "",
+ "action": {
+ "scratch": "",
+ "importOldmarr": ""
+ }
+ },
+ "import": {
+ "title": "",
+ "subtitle": "",
+ "dropzone": {
+ "title": "",
+ "description": ""
+ },
+ "fileInfo": {
+ "action": {
+ "change": ""
+ }
+ },
+ "importSettings": {
+ "title": "",
+ "description": ""
+ },
+ "boardSelection": {
+ "title": "",
+ "description": "",
+ "action": {
+ "selectAll": "",
+ "unselectAll": ""
+ }
+ },
+ "summary": {
+ "title": "",
+ "description": "",
+ "action": {
+ "import": ""
+ },
+ "entities": {
+ "apps": "应用",
+ "boards": "面板",
+ "integrations": "",
+ "credentialUsers": ""
+ }
+ },
+ "tokenModal": {
+ "title": "",
+ "field": {
+ "token": {
+ "label": "Token",
+ "description": ""
+ }
+ },
+ "notification": {
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
+ }
+ },
+ "user": {
+ "title": "",
+ "subtitle": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": ""
+ }
+ }
+ },
+ "group": {
+ "title": "",
+ "subtitle": "",
+ "form": {
+ "name": {
+ "label": "",
+ "description": ""
+ }
+ }
+ },
+ "settings": {
+ "title": "设置",
+ "subtitle": ""
+ },
+ "finish": {
+ "title": "",
+ "subtitle": "",
+ "description": "",
+ "action": {
+ "goToBoard": "",
+ "createBoard": "",
+ "inviteUser": "",
+ "docs": ""
+ }
+ }
+ },
+ "backToStart": ""
+ },
"user": {
"title": "用户",
"name": "用户",
+ "page": {
+ "login": {
+ "title": "",
+ "subtitle": ""
+ },
+ "invite": {
+ "title": "",
+ "subtitle": "",
+ "description": ""
+ },
+ "init": {
+ "title": "",
+ "subtitle": ""
+ }
+ },
"field": {
"email": {
- "label": "邮箱"
+ "label": "邮箱",
+ "verified": ""
},
"username": {
"label": "用户名"
@@ -12,117 +133,732 @@
"password": {
"label": "密码",
"requirement": {
+ "length": "",
"lowercase": "包括小写字母",
"uppercase": "包含大写字母",
- "number": "包含数字"
+ "number": "包含数字",
+ "special": ""
}
},
"passwordConfirm": {
"label": "确认密码"
+ },
+ "previousPassword": {
+ "label": ""
+ },
+ "homeBoard": {
+ "label": ""
+ },
+ "pingIconsEnabled": {
+ "label": ""
}
},
+ "error": {
+ "usernameTaken": ""
+ },
"action": {
"login": {
- "label": "登录"
+ "label": "登录",
+ "labelWith": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ },
+ "forgotPassword": {
+ "label": "",
+ "description": ""
+ }
},
"register": {
"label": "创建账号",
"notification": {
"success": {
- "title": "账号已创建"
+ "title": "账号已创建",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
}
}
},
- "create": "创建用户"
+ "create": "创建用户",
+ "changePassword": {
+ "label": "",
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "changeHomeBoard": {
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "changeFirstDayOfWeek": {
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "changePingIconsEnabled": {
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "manageAvatar": {
+ "changeImage": {
+ "label": "",
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ },
+ "toLarge": {
+ "title": "",
+ "message": ""
+ }
+ }
+ },
+ "removeImage": {
+ "label": "",
+ "confirm": "",
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ }
+ },
+ "editProfile": {
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "delete": {
+ "label": "",
+ "description": "",
+ "confirm": ""
+ },
+ "select": {
+ "label": "",
+ "notFound": ""
+ },
+ "transfer": {
+ "label": ""
+ }
}
},
"group": {
+ "title": "",
+ "name": "",
+ "search": "",
"field": {
- "name": "名称"
+ "name": "名称",
+ "members": ""
},
"permission": {
"admin": {
- "title": "管理员"
+ "title": "管理员",
+ "item": {
+ "admin": {
+ "label": "",
+ "description": ""
+ }
+ }
+ },
+ "app": {
+ "title": "应用",
+ "item": {
+ "create": {
+ "label": "",
+ "description": ""
+ },
+ "use-all": {
+ "label": "",
+ "description": ""
+ },
+ "modify-all": {
+ "label": "",
+ "description": ""
+ },
+ "full-all": {
+ "label": "",
+ "description": ""
+ }
+ }
},
"board": {
- "title": "面板"
+ "title": "面板",
+ "item": {
+ "create": {
+ "label": "",
+ "description": ""
+ },
+ "view-all": {
+ "label": "",
+ "description": ""
+ },
+ "modify-all": {
+ "label": "",
+ "description": ""
+ },
+ "full-all": {
+ "label": "",
+ "description": ""
+ }
+ }
+ },
+ "integration": {
+ "title": "",
+ "item": {
+ "create": {
+ "label": "",
+ "description": ""
+ },
+ "use-all": {
+ "label": "",
+ "description": ""
+ },
+ "interact-all": {
+ "label": "",
+ "description": ""
+ },
+ "full-all": {
+ "label": "",
+ "description": ""
+ }
+ }
+ },
+ "media": {
+ "title": "",
+ "item": {
+ "upload": {
+ "label": "",
+ "description": ""
+ },
+ "view-all": {
+ "label": "",
+ "description": ""
+ },
+ "full-all": {
+ "label": "",
+ "description": ""
+ }
+ }
+ },
+ "other": {
+ "title": "",
+ "item": {
+ "view-logs": {
+ "label": "",
+ "description": ""
+ }
+ }
+ },
+ "search-engine": {
+ "title": "",
+ "item": {
+ "create": {
+ "label": "",
+ "description": ""
+ },
+ "modify-all": {
+ "label": "",
+ "description": ""
+ },
+ "full-all": {
+ "label": "",
+ "description": ""
+ }
+ }
+ }
+ },
+ "memberNotice": {
+ "mixed": "",
+ "external": ""
+ },
+ "reservedNotice": {
+ "message": ""
+ },
+ "action": {
+ "create": {
+ "label": "",
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "transfer": {
+ "label": "",
+ "description": "",
+ "confirm": "",
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "addMember": {
+ "label": ""
+ },
+ "removeMember": {
+ "label": "",
+ "confirm": ""
+ },
+ "delete": {
+ "label": "",
+ "description": "",
+ "confirm": "",
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "changePermissions": {
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
+ },
+ "update": {
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "select": {
+ "label": "",
+ "notFound": ""
}
}
},
"app": {
"page": {
"list": {
- "title": "应用"
+ "title": "应用",
+ "noResults": {
+ "title": "",
+ "action": ""
+ }
+ },
+ "create": {
+ "title": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
+ },
+ "edit": {
+ "title": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
+ },
+ "delete": {
+ "title": "",
+ "message": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
}
},
"field": {
"name": {
"label": "名称"
+ },
+ "description": {
+ "label": ""
+ },
+ "url": {
+ "label": ""
+ }
+ },
+ "action": {
+ "select": {
+ "label": "",
+ "notFound": ""
}
}
},
"integration": {
+ "page": {
+ "list": {
+ "title": "",
+ "search": "",
+ "noResults": {
+ "title": ""
+ }
+ },
+ "create": {
+ "title": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
+ },
+ "edit": {
+ "title": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
+ },
+ "delete": {
+ "title": "",
+ "message": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
+ }
+ },
"field": {
"name": {
"label": "名称"
+ },
+ "url": {
+ "label": ""
}
},
+ "action": {
+ "create": ""
+ },
"testConnection": {
+ "action": {
+ "create": "",
+ "edit": ""
+ },
+ "alertNotice": "",
"notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
"invalidUrl": {
- "title": "无效链接"
+ "title": "无效链接",
+ "message": ""
+ },
+ "secretNotDefined": {
+ "title": "",
+ "message": ""
+ },
+ "invalidCredentials": {
+ "title": "",
+ "message": ""
+ },
+ "commonError": {
+ "title": "",
+ "message": ""
+ },
+ "badRequest": {
+ "title": "",
+ "message": ""
+ },
+ "unauthorized": {
+ "title": "",
+ "message": ""
+ },
+ "forbidden": {
+ "title": "",
+ "message": ""
+ },
+ "notFound": {
+ "title": "",
+ "message": ""
+ },
+ "internalServerError": {
+ "title": "",
+ "message": ""
+ },
+ "serviceUnavailable": {
+ "title": "",
+ "message": ""
+ },
+ "connectionAborted": {
+ "title": "",
+ "message": ""
+ },
+ "domainNotFound": {
+ "title": "",
+ "message": ""
+ },
+ "connectionRefused": {
+ "title": "",
+ "message": ""
+ },
+ "invalidJson": {
+ "title": "",
+ "message": ""
+ },
+ "wrongPath": {
+ "title": "",
+ "message": ""
}
}
},
"secrets": {
+ "title": "",
+ "lastUpdated": "",
+ "notSet": {
+ "label": "",
+ "tooltip": ""
+ },
+ "secureNotice": "",
+ "reset": {
+ "title": "",
+ "message": ""
+ },
+ "noSecretsRequired": {
+ "segmentTitle": "",
+ "text": ""
+ },
"kind": {
"username": {
- "label": "用户名"
+ "label": "用户名",
+ "newLabel": ""
+ },
+ "apiKey": {
+ "label": "",
+ "newLabel": ""
},
"password": {
"label": "密码",
"newLabel": "新密码"
}
}
+ },
+ "permission": {
+ "use": "",
+ "interact": "",
+ "full": ""
}
},
"media": {
+ "plural": "",
+ "search": "",
"field": {
"name": "名称",
"size": "大小",
"creator": "创建者"
+ },
+ "action": {
+ "upload": {
+ "label": "",
+ "file": "",
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "delete": {
+ "label": "",
+ "description": "",
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "copy": {
+ "label": ""
+ }
}
},
"common": {
+ "beta": "",
"error": "错误",
"action": {
"add": "添加",
"apply": "应用",
+ "backToOverview": "",
"create": "创建",
"edit": "编辑",
+ "import": "",
"insert": "插入",
"remove": "删除",
"save": "保存",
"saveChanges": "保存更改",
"cancel": "取消",
"delete": "删除",
+ "discard": "",
"confirm": "确认",
+ "continue": "",
"previous": "上一步",
"next": "下一步",
- "tryAgain": "请再试一次"
+ "checkoutDocs": "",
+ "checkLogs": "",
+ "tryAgain": "请再试一次",
+ "loading": ""
+ },
+ "here": "",
+ "iconPicker": {
+ "label": "",
+ "header": ""
+ },
+ "colorScheme": {
+ "options": {
+ "light": "",
+ "dark": ""
+ }
},
"information": {
+ "min": "",
+ "max": "",
+ "days": "",
"hours": "时",
"minutes": "分"
},
+ "notification": {
+ "create": {
+ "success": "",
+ "error": ""
+ },
+ "delete": {
+ "success": "",
+ "error": ""
+ },
+ "update": {
+ "success": "",
+ "error": ""
+ },
+ "transfer": {
+ "success": "",
+ "error": ""
+ }
+ },
+ "multiSelect": {
+ "placeholder": ""
+ },
+ "multiText": {
+ "placeholder": "",
+ "addLabel": ""
+ },
+ "select": {
+ "placeholder": "",
+ "badge": {
+ "recommended": ""
+ }
+ },
"userAvatar": {
"menu": {
+ "switchToDarkMode": "",
+ "switchToLightMode": "",
+ "management": "",
"preferences": "您的首选项",
- "login": "登录"
+ "logout": "",
+ "login": "登录",
+ "homeBoard": "",
+ "loggedOut": "",
+ "updateAvailable": ""
}
},
"dangerZone": "危险",
"noResults": "未找到结果",
+ "preview": {
+ "show": "",
+ "hide": ""
+ },
"zod": {
"errors": {
"default": "该字段无效",
@@ -130,7 +866,8 @@
"string": {
"startsWith": "该字段必须以 {startsWith} 开头",
"endsWith": "该字段必须以 {endsWith} 结尾",
- "includes": "该字段必须包含 {includes}"
+ "includes": "该字段必须包含 {includes}",
+ "invalidEmail": ""
},
"tooSmall": {
"string": "该字段的长度必须至少为 {minimum} 个字符",
@@ -139,11 +876,30 @@
"tooBig": {
"string": "该字段的长度不得超过 {maximum} 个字符",
"number": "该字段必须小于或等于 {maximum}"
+ },
+ "custom": {
+ "passwordsDoNotMatch": "",
+ "passwordRequirements": "",
+ "boardAlreadyExists": "",
+ "invalidFileType": "",
+ "fileTooLarge": "",
+ "invalidConfiguration": "",
+ "groupNameTaken": ""
}
}
}
},
"section": {
+ "dynamic": {
+ "action": {
+ "create": "",
+ "remove": ""
+ },
+ "remove": {
+ "title": "",
+ "message": ""
+ }
+ },
"category": {
"field": {
"name": {
@@ -151,42 +907,147 @@
}
},
"action": {
+ "create": "",
+ "edit": "",
+ "remove": "",
"moveUp": "上移",
- "moveDown": "下移"
+ "moveDown": "下移",
+ "createAbove": "",
+ "createBelow": ""
+ },
+ "create": {
+ "title": "",
+ "submit": ""
+ },
+ "remove": {
+ "title": "",
+ "message": ""
+ },
+ "edit": {
+ "title": "",
+ "submit": ""
},
"menu": {
"label": {
+ "create": "",
"changePosition": "换位"
}
}
}
},
"item": {
+ "action": {
+ "create": "",
+ "import": "",
+ "edit": "",
+ "moveResize": "",
+ "duplicate": "",
+ "remove": ""
+ },
"menu": {
"label": {
"settings": "设置"
}
},
+ "create": {
+ "title": "",
+ "addToBoard": ""
+ },
"moveResize": {
+ "title": "",
"field": {
"width": {
"label": "宽度"
},
"height": {
"label": "高度"
+ },
+ "xOffset": {
+ "label": ""
+ },
+ "yOffset": {
+ "label": ""
}
}
+ },
+ "edit": {
+ "title": "",
+ "advancedOptions": {
+ "label": "",
+ "title": ""
+ },
+ "field": {
+ "integrations": {
+ "label": ""
+ },
+ "customCssClasses": {
+ "label": ""
+ }
+ }
+ },
+ "remove": {
+ "title": "",
+ "message": ""
}
},
"widget": {
"app": {
+ "name": "",
+ "description": "",
"option": {
+ "appId": {
+ "label": ""
+ },
"openInNewTab": {
"label": "在新标签页中打开"
+ },
+ "showTitle": {
+ "label": ""
+ },
+ "showDescriptionTooltip": {
+ "label": ""
+ },
+ "pingEnabled": {
+ "label": ""
+ }
+ },
+ "error": {
+ "notFound": {
+ "label": "",
+ "tooltip": ""
+ }
+ }
+ },
+ "bookmarks": {
+ "name": "",
+ "description": "",
+ "option": {
+ "title": {
+ "label": ""
+ },
+ "layout": {
+ "label": "显示布局",
+ "option": {
+ "row": {
+ "label": "横向"
+ },
+ "column": {
+ "label": "垂直"
+ },
+ "grid": {
+ "label": ""
+ }
+ }
+ },
+ "items": {
+ "label": "",
+ "add": ""
}
}
},
"dnsHoleSummary": {
+ "name": "",
+ "description": "",
"option": {
"layout": {
"label": "显示布局",
@@ -196,17 +1057,29 @@
},
"column": {
"label": "垂直"
+ },
+ "grid": {
+ "label": ""
}
}
+ },
+ "usePiHoleColors": {
+ "label": ""
}
},
+ "error": {
+ "internalServerError": "",
+ "integrationsDisconnected": ""
+ },
"data": {
"adsBlockedToday": "今日屏蔽",
"adsBlockedTodayPercentage": "今日屏蔽",
- "dnsQueriesToday": "今日查询"
+ "dnsQueriesToday": "今日查询",
+ "domainsBeingBlocked": ""
}
},
"dnsHoleControls": {
+ "name": "",
"description": "从您的面板控制 PiHole 或 AdGuard",
"option": {
"layout": {
@@ -217,28 +1090,70 @@
},
"column": {
"label": "垂直"
+ },
+ "grid": {
+ "label": ""
}
}
+ },
+ "showToggleAllButtons": {
+ "label": ""
}
},
+ "error": {
+ "internalServerError": ""
+ },
"controls": {
+ "enableAll": "",
+ "disableAll": "",
+ "setTimer": "",
"set": "设置",
"enabled": "已启用",
"disabled": "已禁用",
+ "processing": "",
+ "disconnected": "",
"hours": "时",
- "minutes": "分"
+ "minutes": "分",
+ "unlimited": ""
}
},
"clock": {
+ "name": "",
"description": "显示当前的日期和时间。",
"option": {
+ "customTitleToggle": {
+ "label": "",
+ "description": ""
+ },
+ "customTitle": {
+ "label": ""
+ },
+ "is24HourFormat": {
+ "label": "",
+ "description": ""
+ },
+ "showSeconds": {
+ "label": ""
+ },
+ "useCustomTimezone": {
+ "label": ""
+ },
"timezone": {
- "label": "时区"
+ "label": "时区",
+ "description": ""
+ },
+ "showDate": {
+ "label": ""
+ },
+ "dateFormat": {
+ "label": "",
+ "description": ""
}
}
},
"notebook": {
"name": "笔记本",
+ "description": "",
"option": {
"showToolbar": {
"label": "显示帮助您写下 Markdown 的工具栏"
@@ -330,17 +1245,31 @@
}
},
"error": {
+ "noUrl": "",
"noBrowerSupport": "您的浏览器不支持 iframe。请更新您的浏览器。"
}
},
"smartHome-entityState": {
+ "name": "",
+ "description": "",
"option": {
"entityId": {
"label": "实体 ID"
+ },
+ "displayName": {
+ "label": ""
+ },
+ "entityUnit": {
+ "label": ""
+ },
+ "clickable": {
+ "label": ""
}
}
},
"smartHome-executeAutomation": {
+ "name": "",
+ "description": "",
"option": {
"displayName": {
"label": "显示名称"
@@ -348,13 +1277,28 @@
"automationId": {
"label": "自动化 ID"
}
+ },
+ "spotlightAction": {
+ "run": ""
}
},
"calendar": {
"name": "日历",
+ "description": "",
"option": {
"releaseType": {
- "label": "Radarr发布类型"
+ "label": "Radarr发布类型",
+ "options": {
+ "inCinemas": "",
+ "digitalRelease": "",
+ "physicalRelease": ""
+ }
+ },
+ "filterPastMonths": {
+ "label": ""
+ },
+ "filterFutureMonths": {
+ "label": ""
}
}
},
@@ -362,8 +1306,25 @@
"name": "天气",
"description": "显示指定位置的当前天气信息。",
"option": {
+ "isFormatFahrenheit": {
+ "label": ""
+ },
"location": {
"label": "天气位置"
+ },
+ "showCity": {
+ "label": ""
+ },
+ "hasForecast": {
+ "label": ""
+ },
+ "forecastDayCount": {
+ "label": "",
+ "description": ""
+ },
+ "dateFormat": {
+ "label": "",
+ "description": ""
}
},
"kind": {
@@ -385,8 +1346,17 @@
},
"indexerManager": {
"name": "索引器管理状态",
+ "description": "",
+ "option": {
+ "openIndexerSiteInNewTab": {
+ "label": ""
+ }
+ },
"title": "索引器管理",
- "testAll": "测试全部"
+ "testAll": "测试全部",
+ "error": {
+ "internalServerError": ""
+ }
},
"healthMonitoring": {
"name": "系统健康监测",
@@ -406,20 +1376,60 @@
}
},
"popover": {
- "available": "可用"
+ "information": "",
+ "processor": "",
+ "memory": "",
+ "memoryAvailable": "",
+ "version": "",
+ "uptime": "",
+ "loadAverage": "",
+ "minute": "",
+ "minutes": "",
+ "used": "",
+ "available": "可用",
+ "lastSeen": ""
+ },
+ "memory": {},
+ "error": {
+ "internalServerError": ""
}
},
"common": {
"location": {
+ "query": "",
+ "latitude": "",
+ "longitude": "",
+ "disabledTooltip": "",
+ "unknownLocation": "",
"search": "搜索",
"table": {
- "header": {},
- "action": {},
+ "header": {
+ "city": "",
+ "country": "",
+ "coordinates": "",
+ "population": ""
+ },
+ "action": {
+ "select": ""
+ },
"population": {
"fallback": "未知"
}
}
- }
+ },
+ "integration": {
+ "noData": "",
+ "description": ""
+ },
+ "app": {
+ "noData": "",
+ "description": ""
+ },
+ "error": {
+ "noIntegration": "",
+ "noData": ""
+ },
+ "option": {}
},
"video": {
"name": "视频流",
@@ -429,33 +1439,129 @@
"label": "订阅网址"
},
"hasAutoPlay": {
- "label": "自动播放"
+ "label": "自动播放",
+ "description": ""
+ },
+ "isMuted": {
+ "label": ""
+ },
+ "hasControls": {
+ "label": ""
}
+ },
+ "error": {
+ "noUrl": "",
+ "forYoutubeUseIframe": ""
}
},
+ "mediaServer": {
+ "name": "",
+ "description": "",
+ "option": {}
+ },
"downloads": {
+ "name": "",
+ "description": "",
+ "option": {
+ "columns": {
+ "label": ""
+ },
+ "enableRowSorting": {
+ "label": ""
+ },
+ "defaultSort": {
+ "label": ""
+ },
+ "descendingDefaultSort": {
+ "label": ""
+ },
+ "showCompletedUsenet": {
+ "label": ""
+ },
+ "showCompletedTorrent": {
+ "label": ""
+ },
+ "activeTorrentThreshold": {
+ "label": ""
+ },
+ "categoryFilter": {
+ "label": ""
+ },
+ "filterIsWhitelist": {
+ "label": ""
+ },
+ "applyFilterToRatio": {
+ "label": ""
+ }
+ },
+ "errors": {
+ "noColumns": "",
+ "noCommunications": ""
+ },
"items": {
+ "actions": {
+ "columnTitle": ""
+ },
"added": {
+ "columnTitle": "",
"detailsTitle": "日期已添加"
},
+ "category": {
+ "columnTitle": "",
+ "detailsTitle": ""
+ },
"downSpeed": {
"columnTitle": "下载",
"detailsTitle": "下载速度"
},
+ "index": {
+ "columnTitle": "",
+ "detailsTitle": ""
+ },
+ "id": {
+ "columnTitle": ""
+ },
"integration": {
"columnTitle": "集成"
},
+ "name": {
+ "columnTitle": ""
+ },
"progress": {
- "columnTitle": "进度"
+ "columnTitle": "进度",
+ "detailsTitle": ""
},
"ratio": {
- "columnTitle": "分享率"
+ "columnTitle": "分享率",
+ "detailsTitle": ""
+ },
+ "received": {
+ "columnTitle": "",
+ "detailsTitle": ""
+ },
+ "sent": {
+ "columnTitle": "",
+ "detailsTitle": ""
+ },
+ "size": {
+ "columnTitle": "",
+ "detailsTitle": ""
},
"state": {
- "columnTitle": "状态"
+ "columnTitle": "状态",
+ "detailsTitle": ""
+ },
+ "time": {
+ "columnTitle": "",
+ "detailsTitle": ""
+ },
+ "type": {
+ "columnTitle": "",
+ "detailsTitle": ""
},
"upSpeed": {
- "columnTitle": "上传"
+ "columnTitle": "上传",
+ "detailsTitle": ""
}
},
"states": {
@@ -463,62 +1569,304 @@
"queued": "排队中",
"paused": "已暂停",
"completed": "已完成",
- "unknown": "未知"
- }
+ "failed": "",
+ "processing": "",
+ "leeching": "",
+ "stalled": "",
+ "unknown": "未知",
+ "seeding": ""
+ },
+ "actions": {
+ "clients": {
+ "modalTitle": "",
+ "pause": "",
+ "resume": ""
+ },
+ "client": {
+ "pause": "",
+ "resume": ""
+ },
+ "item": {
+ "pause": "",
+ "resume": "",
+ "delete": {
+ "title": "",
+ "modalTitle": "",
+ "entry": "",
+ "entryAndFiles": ""
+ }
+ }
+ },
+ "globalRatio": ""
},
"mediaRequests-requestList": {
+ "name": "",
"description": "查看 Overr 或 Jellyseerr 实例中的所有媒体请求列表",
"option": {
"linksTargetNewTab": {
"label": "在新标签页中打开链接"
}
},
+ "pending": {
+ "approve": "",
+ "approving": "",
+ "decline": ""
+ },
"availability": {
"unknown": "未知",
+ "pending": "",
+ "processing": "",
"partiallyAvailable": "部分",
"available": "可用"
- }
+ },
+ "toBeDetermined": ""
},
"mediaRequests-requestStats": {
+ "name": "",
"description": "您的媒体请求统计",
+ "option": {},
"titles": {
"stats": {
"main": "媒体统计",
"approved": "已经批准",
"pending": "等待批准",
+ "processing": "",
+ "declined": "",
+ "available": "",
"tv": "电视请求",
"movie": "电影请求",
"total": "请求总计"
},
"users": {
- "main": "用户排行"
+ "main": "用户排行",
+ "requests": ""
+ }
+ }
+ },
+ "mediaTranscoding": {
+ "name": "",
+ "description": "",
+ "option": {
+ "defaultView": {
+ "label": "默认视图"
+ },
+ "queuePageSize": {
+ "label": ""
+ }
+ },
+ "tab": {
+ "workers": "工作种",
+ "queue": "队列",
+ "statistics": "统计"
+ },
+ "currentIndex": "",
+ "healthCheck": {
+ "title": "",
+ "queued": "排队中",
+ "status": {
+ "healthy": "健康",
+ "unhealthy": "不良"
+ }
+ },
+ "panel": {
+ "statistics": {
+ "empty": "空",
+ "transcodes": "转码",
+ "transcodesCount": "",
+ "healthChecksCount": "",
+ "filesCount": "",
+ "savedSpace": "",
+ "healthChecks": "",
+ "videoCodecs": "编码",
+ "videoContainers": "容器",
+ "videoResolutions": "分辨率"
+ },
+ "workers": {
+ "empty": "空",
+ "table": {
+ "file": "文件",
+ "eta": "剩余时间",
+ "progress": "进度",
+ "transcode": "转码",
+ "healthCheck": ""
+ }
+ },
+ "queue": {
+ "empty": "空",
+ "table": {
+ "file": "文件",
+ "size": "大小",
+ "transcode": "转码",
+ "healthCheck": ""
+ }
+ }
+ }
+ },
+ "rssFeed": {
+ "name": "",
+ "description": "",
+ "option": {
+ "feedUrls": {
+ "label": ""
+ },
+ "enableRtl": {
+ "label": ""
+ },
+ "textLinesClamp": {
+ "label": ""
+ },
+ "maximumAmountPosts": {
+ "label": ""
}
}
}
},
+ "widgetPreview": {
+ "toggle": {
+ "enabled": "",
+ "disabled": ""
+ },
+ "dimensions": {
+ "title": ""
+ }
+ },
"board": {
"action": {
+ "edit": {
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ },
+ "confirmLeave": {
+ "title": "",
+ "message": ""
+ }
+ },
"oldImport": {
+ "label": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ },
"form": {
+ "file": {
+ "label": "",
+ "invalidError": ""
+ },
"apps": {
- "label": "应用"
+ "label": "应用",
+ "avoidDuplicates": {
+ "label": "",
+ "description": ""
+ },
+ "onlyImportApps": {
+ "label": "",
+ "description": ""
+ }
+ },
+ "name": {
+ "label": ""
},
"screenSize": {
+ "label": "",
+ "description": "",
"option": {
"sm": "小号",
"md": "中号",
"lg": "大号"
}
+ },
+ "sidebarBehavior": {
+ "label": "",
+ "description": "",
+ "option": {
+ "lastSection": {
+ "label": "",
+ "description": ""
+ },
+ "removeItems": {
+ "label": "",
+ "description": ""
+ }
+ }
}
}
}
},
"field": {
+ "pageTitle": {
+ "label": ""
+ },
+ "metaTitle": {
+ "label": ""
+ },
+ "logoImageUrl": {
+ "label": ""
+ },
+ "faviconImageUrl": {
+ "label": ""
+ },
+ "backgroundImageUrl": {
+ "label": ""
+ },
"backgroundImageAttachment": {
- "label": "背景图片附件"
+ "label": "背景图片附件",
+ "option": {
+ "fixed": {
+ "label": "",
+ "description": ""
+ },
+ "scroll": {
+ "label": "",
+ "description": ""
+ }
+ }
+ },
+ "backgroundImageRepeat": {
+ "label": "",
+ "option": {
+ "repeat": {
+ "label": "",
+ "description": ""
+ },
+ "no-repeat": {
+ "label": "",
+ "description": ""
+ },
+ "repeat-x": {
+ "label": "",
+ "description": ""
+ },
+ "repeat-y": {
+ "label": "",
+ "description": ""
+ }
+ }
},
"backgroundImageSize": {
- "label": "背景图像大小"
+ "label": "背景图像大小",
+ "option": {
+ "cover": {
+ "label": "",
+ "description": ""
+ },
+ "contain": {
+ "label": "",
+ "description": ""
+ }
+ }
},
"primaryColor": {
"label": "主体色"
@@ -526,20 +1874,37 @@
"secondaryColor": {
"label": "辅助色"
},
+ "opacity": {
+ "label": ""
+ },
"customCss": {
- "description": "只推荐有经验的用户使用 CSS 自定义面板"
+ "label": "",
+ "description": "只推荐有经验的用户使用 CSS 自定义面板",
+ "customClassesAlert": {
+ "title": "",
+ "description": ""
+ }
+ },
+ "columnCount": {
+ "label": ""
},
"name": {
"label": "名称"
},
"isPublic": {
- "label": "公开"
+ "label": "公开",
+ "description": ""
}
},
+ "content": {
+ "metaTitle": ""
+ },
"setting": {
+ "title": "",
"section": {
"general": {
- "title": "通用"
+ "title": "通用",
+ "unrecognizedLink": ""
},
"layout": {
"title": "显示布局"
@@ -547,11 +1912,24 @@
"background": {
"title": "背景"
},
+ "color": {
+ "title": ""
+ },
+ "customCss": {
+ "title": ""
+ },
"access": {
+ "title": "",
"permission": {
"item": {
"view": {
"label": "查看面板"
+ },
+ "modify": {
+ "label": ""
+ },
+ "full": {
+ "label": ""
}
}
}
@@ -559,34 +1937,115 @@
"dangerZone": {
"title": "危险",
"action": {
- "delete": {
+ "rename": {
+ "label": "",
+ "description": "",
+ "button": "",
+ "modal": {
+ "title": ""
+ }
+ },
+ "visibility": {
+ "label": "",
+ "description": {
+ "public": "",
+ "private": ""
+ },
+ "button": {
+ "public": "",
+ "private": ""
+ },
"confirm": {
- "title": "删除面板"
+ "public": {
+ "title": "",
+ "description": ""
+ },
+ "private": {
+ "title": "",
+ "description": ""
+ }
+ }
+ },
+ "delete": {
+ "label": "",
+ "description": "",
+ "button": "",
+ "confirm": {
+ "title": "删除面板",
+ "description": ""
}
}
}
}
}
+ },
+ "error": {
+ "noBoard": {
+ "title": "",
+ "description": "",
+ "link": "",
+ "notice": ""
+ },
+ "notFound": {
+ "title": "",
+ "description": "",
+ "link": "",
+ "notice": ""
+ },
+ "homeBoard": {
+ "title": "",
+ "admin": {
+ "description": "",
+ "link": "",
+ "notice": ""
+ },
+ "user": {
+ "description": "",
+ "link": "",
+ "notice": ""
+ },
+ "anonymous": {
+ "description": "",
+ "link": "",
+ "notice": ""
+ }
+ }
}
},
"management": {
+ "metaTitle": "",
+ "title": {
+ "morning": "",
+ "afternoon": "",
+ "evening": ""
+ },
+ "notFound": {
+ "title": "",
+ "text": ""
+ },
"navbar": {
"items": {
"home": "首页",
"boards": "面板",
"apps": "应用",
+ "integrations": "",
+ "searchEngies": "",
+ "medias": "",
"users": {
"label": "用户",
"items": {
"manage": "管理中心",
- "invites": "邀请"
+ "invites": "邀请",
+ "groups": ""
}
},
"tools": {
"label": "工具",
"items": {
"docker": "Docker",
- "api": "API"
+ "logs": "",
+ "api": "API",
+ "tasks": ""
}
},
"settings": "设置",
@@ -594,7 +2053,9 @@
"label": "帮助",
"items": {
"documentation": "文档",
- "discord": "Discord 社区"
+ "submitIssue": "",
+ "discord": "Discord 社区",
+ "sourceCode": ""
}
},
"about": "关于"
@@ -606,30 +2067,48 @@
"board": "面板",
"user": "用户",
"invite": "邀请",
- "app": "应用"
+ "integration": "",
+ "app": "应用",
+ "group": ""
},
"statisticLabel": {
- "boards": "面板"
+ "boards": "面板",
+ "resources": "",
+ "authentication": "",
+ "authorization": ""
}
},
"board": {
"title": "您的面板",
"action": {
+ "new": {
+ "label": ""
+ },
+ "open": {
+ "label": ""
+ },
"settings": {
"label": "设置"
},
"setHomeBoard": {
+ "label": "",
"badge": {
- "label": "首页"
+ "label": "首页",
+ "tooltip": ""
}
},
"delete": {
"label": "永久删除",
"confirm": {
- "title": "删除面板"
+ "title": "删除面板",
+ "description": ""
}
}
},
+ "visibility": {
+ "public": "",
+ "private": ""
+ },
"modal": {
"createBoard": {
"field": {
@@ -640,11 +2119,18 @@
}
}
},
+ "media": {
+ "includeFromAllUsers": ""
+ },
"user": {
+ "back": "",
+ "fieldsDisabledExternalProvider": "",
"setting": {
"general": {
"title": "通用",
"item": {
+ "language": "",
+ "board": "",
"firstDayOfWeek": "一周的第一天",
"accessibility": "无障碍服务"
}
@@ -660,22 +2146,51 @@
"metaTitle": "管理用户",
"title": "用户"
},
+ "edit": {
+ "metaTitle": ""
+ },
"create": {
"metaTitle": "创建用户",
+ "title": "",
"step": {
+ "personalInformation": {
+ "label": ""
+ },
"security": {
"label": "安全"
+ },
+ "groups": {
+ "label": "",
+ "title": "",
+ "description": ""
+ },
+ "review": {
+ "label": ""
+ },
+ "completed": {
+ "title": ""
+ },
+ "error": {
+ "title": ""
}
+ },
+ "action": {
+ "createAnother": "",
+ "back": ""
}
},
"invite": {
"title": "管理用户邀请",
"action": {
"new": {
+ "title": "",
"description": "过期后,邀请会失效,被邀请的收件人将无法创建账号。"
},
"copy": {
- "link": "邀请链接"
+ "title": "",
+ "description": "",
+ "link": "邀请链接",
+ "button": ""
},
"delete": {
"title": "删除邀请",
@@ -699,50 +2214,217 @@
}
},
"group": {
+ "back": "",
"setting": {
"general": {
- "title": "通用"
+ "title": "通用",
+ "owner": "所有者",
+ "ownerOfGroup": "",
+ "ownerOfGroupDeleted": ""
+ },
+ "members": {
+ "title": "",
+ "search": "",
+ "notFound": ""
+ },
+ "permissions": {
+ "title": "",
+ "form": {
+ "unsavedChanges": ""
+ }
}
}
},
"settings": {
- "title": "设置"
+ "title": "设置",
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ },
+ "section": {
+ "analytics": {
+ "title": "",
+ "general": {
+ "title": "",
+ "text": ""
+ },
+ "widgetData": {
+ "title": "",
+ "text": ""
+ },
+ "integrationData": {
+ "title": "",
+ "text": ""
+ },
+ "usersData": {
+ "title": "",
+ "text": ""
+ }
+ },
+ "crawlingAndIndexing": {
+ "title": "",
+ "warning": "",
+ "noIndex": {
+ "title": "",
+ "text": ""
+ },
+ "noFollow": {
+ "title": "",
+ "text": ""
+ },
+ "noTranslate": {
+ "title": "",
+ "text": ""
+ },
+ "noSiteLinksSearchBox": {
+ "title": "",
+ "text": ""
+ }
+ },
+ "board": {
+ "title": "面板",
+ "homeBoard": {
+ "label": "",
+ "description": ""
+ }
+ },
+ "appearance": {
+ "title": "外观",
+ "defaultColorScheme": {
+ "label": "",
+ "options": {
+ "light": "",
+ "dark": ""
+ }
+ }
+ },
+ "culture": {
+ "title": "",
+ "defaultLocale": {
+ "label": ""
+ }
+ }
+ }
},
"tool": {
"tasks": {
+ "title": "",
"status": {
+ "idle": "",
"running": "运行中",
"error": "错误"
},
"job": {
+ "iconsUpdater": {
+ "label": ""
+ },
+ "analytics": {
+ "label": ""
+ },
+ "smartHomeEntityState": {
+ "label": ""
+ },
+ "ping": {
+ "label": ""
+ },
"mediaServer": {
"label": "媒体服务"
},
- "mediaRequests": {
- "label": "媒体请求"
+ "mediaOrganizer": {
+ "label": ""
+ },
+ "downloads": {
+ "label": ""
+ },
+ "mediaRequestStats": {
+ "label": ""
+ },
+ "mediaRequestList": {
+ "label": ""
+ },
+ "rssFeeds": {
+ "label": ""
+ },
+ "indexerManager": {
+ "label": ""
+ },
+ "healthMonitoring": {
+ "label": ""
+ },
+ "dnsHole": {
+ "label": ""
+ },
+ "sessionCleanup": {
+ "label": ""
+ },
+ "updateChecker": {
+ "label": ""
+ },
+ "mediaTranscoding": {
+ "label": ""
}
}
},
"api": {
"title": "API",
+ "modal": {
+ "createApiToken": {
+ "title": "",
+ "description": "",
+ "button": ""
+ }
+ },
"tab": {
"documentation": {
"label": "文档"
},
"apiKey": {
+ "label": "",
+ "title": "",
+ "button": {
+ "createApiToken": ""
+ },
"table": {
"header": {
- "id": "ID"
+ "id": "ID",
+ "createdBy": ""
}
}
}
}
}
+ },
+ "about": {
+ "version": "",
+ "text": "",
+ "accordion": {
+ "contributors": {
+ "title": "",
+ "subtitle": ""
+ },
+ "translators": {
+ "title": "",
+ "subtitle": ""
+ },
+ "libraries": {
+ "title": "",
+ "subtitle": ""
+ }
+ }
}
}
},
"docker": {
"title": "容器",
+ "table": {
+ "updated": "",
+ "search": "",
+ "selected": ""
+ },
"field": {
"name": {
"label": "名称"
@@ -754,7 +2436,9 @@
"running": "运行中",
"paused": "已暂停",
"restarting": "正在重启",
- "removing": "删除中"
+ "exited": "",
+ "removing": "删除中",
+ "dead": ""
}
},
"containerImage": {
@@ -766,27 +2450,102 @@
},
"action": {
"start": {
- "label": "开始"
+ "label": "开始",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
},
"stop": {
- "label": "停止"
+ "label": "停止",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
},
"restart": {
- "label": "重启"
+ "label": "重启",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
},
"remove": {
- "label": "删除"
+ "label": "删除",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
+ },
+ "refresh": {
+ "label": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
}
+ },
+ "error": {
+ "internalServerError": ""
}
},
"permission": {
+ "title": "",
+ "userSelect": {
+ "title": ""
+ },
+ "groupSelect": {
+ "title": ""
+ },
"tab": {
- "user": "用户"
+ "user": "用户",
+ "group": "",
+ "inherited": ""
},
"field": {
"user": {
"label": "用户"
+ },
+ "group": {
+ "label": ""
+ },
+ "permission": {
+ "label": ""
}
+ },
+ "action": {
+ "saveUser": "",
+ "saveGroup": ""
}
},
"navigationStructure": {
@@ -796,17 +2555,31 @@
"label": "面板"
},
"integrations": {
+ "label": "",
"edit": {
"label": "编辑"
+ },
+ "new": {
+ "label": ""
}
},
"search-engines": {
+ "label": "",
+ "new": {
+ "label": ""
+ },
"edit": {
"label": "编辑"
}
},
+ "medias": {
+ "label": ""
+ },
"apps": {
"label": "应用",
+ "new": {
+ "label": ""
+ },
"edit": {
"label": "编辑"
}
@@ -819,6 +2592,9 @@
"general": "通用",
"security": "安全",
"board": "面板",
+ "groups": {
+ "label": ""
+ },
"invites": {
"label": "邀请"
}
@@ -827,6 +2603,9 @@
"label": "工具",
"docker": {
"label": "Docker"
+ },
+ "logs": {
+ "label": ""
}
},
"settings": {
@@ -838,23 +2617,144 @@
}
},
"search": {
+ "placeholder": "",
+ "nothingFound": "",
+ "error": {
+ "fetch": ""
+ },
"mode": {
"appIntegrationBoard": {
+ "help": "",
"group": {
"app": {
- "title": "应用"
+ "title": "应用",
+ "children": {
+ "action": {
+ "open": {
+ "label": ""
+ },
+ "edit": {
+ "label": ""
+ }
+ },
+ "detail": {
+ "title": ""
+ }
+ }
},
"board": {
- "title": "面板"
+ "title": "面板",
+ "children": {
+ "action": {
+ "open": {
+ "label": ""
+ },
+ "homeBoard": {
+ "label": ""
+ },
+ "settings": {
+ "label": ""
+ }
+ },
+ "detail": {
+ "title": ""
+ }
+ }
+ },
+ "integration": {
+ "title": ""
+ }
+ }
+ },
+ "command": {
+ "help": "",
+ "group": {
+ "localCommand": {
+ "title": ""
+ },
+ "globalCommand": {
+ "title": "",
+ "option": {
+ "colorScheme": {
+ "light": "",
+ "dark": ""
+ },
+ "language": {
+ "label": "",
+ "children": {
+ "detail": {
+ "title": ""
+ }
+ }
+ },
+ "newBoard": {
+ "label": ""
+ },
+ "importBoard": {
+ "label": ""
+ },
+ "newApp": {
+ "label": ""
+ },
+ "newIntegration": {
+ "label": "",
+ "children": {
+ "detail": {
+ "title": ""
+ }
+ }
+ },
+ "newUser": {
+ "label": ""
+ },
+ "newInvite": {
+ "label": ""
+ },
+ "newGroup": {
+ "label": ""
+ }
+ }
}
}
},
"external": {
+ "help": "",
"group": {
"searchEngine": {
+ "title": "",
+ "children": {
+ "action": {
+ "search": {
+ "label": ""
+ }
+ },
+ "detail": {
+ "title": ""
+ },
+ "searchResults": {
+ "title": ""
+ }
+ },
"option": {
+ "google": {
+ "name": "",
+ "description": ""
+ },
+ "bing": {
+ "name": "",
+ "description": ""
+ },
+ "duckduckgo": {
+ "name": "",
+ "description": ""
+ },
"torrent": {
- "name": "Torrents"
+ "name": "Torrents",
+ "description": ""
+ },
+ "youTube": {
+ "name": "",
+ "description": ""
}
}
}
@@ -862,12 +2762,18 @@
},
"help": {
"group": {
+ "mode": {
+ "title": ""
+ },
"help": {
"title": "帮助",
"option": {
"documentation": {
"label": "文档"
},
+ "submitIssue": {
+ "label": ""
+ },
"discord": {
"label": "Discord 社区"
}
@@ -875,16 +2781,67 @@
}
}
},
+ "home": {
+ "group": {
+ "local": {
+ "title": ""
+ }
+ }
+ },
"page": {
+ "help": "",
"group": {
"page": {
+ "title": "",
"option": {
+ "manageHome": {
+ "label": ""
+ },
+ "manageBoard": {
+ "label": ""
+ },
+ "manageApp": {
+ "label": ""
+ },
+ "manageIntegration": {
+ "label": ""
+ },
+ "manageSearchEngine": {
+ "label": ""
+ },
+ "manageMedia": {
+ "label": ""
+ },
"manageUser": {
"label": "管理用户"
},
+ "manageInvite": {
+ "label": ""
+ },
+ "manageGroup": {
+ "label": ""
+ },
+ "manageDocker": {
+ "label": ""
+ },
+ "manageApi": {
+ "label": ""
+ },
+ "manageLog": {
+ "label": ""
+ },
+ "manageTask": {
+ "label": ""
+ },
+ "manageSettings": {
+ "label": ""
+ },
"about": {
"label": "关于"
},
+ "homeBoard": {
+ "label": ""
+ },
"preferences": {
"label": "您的首选项"
}
@@ -893,17 +2850,112 @@
}
},
"userGroup": {
+ "help": "",
"group": {
"user": {
- "title": "用户"
+ "title": "用户",
+ "children": {
+ "action": {
+ "detail": {
+ "label": ""
+ }
+ },
+ "detail": {
+ "title": ""
+ }
+ }
+ },
+ "group": {
+ "title": "",
+ "children": {
+ "action": {
+ "detail": {
+ "label": ""
+ },
+ "manageMember": {
+ "label": ""
+ },
+ "managePermission": {
+ "label": ""
+ }
+ },
+ "detail": {
+ "title": ""
+ }
+ }
}
}
}
},
"engine": {
+ "search": "",
"field": {
"name": {
"label": "名称"
+ },
+ "short": {
+ "label": ""
+ },
+ "urlTemplate": {
+ "label": ""
+ },
+ "description": {
+ "label": ""
+ }
+ },
+ "page": {
+ "list": {
+ "title": "",
+ "noResults": {
+ "title": "",
+ "action": ""
+ },
+ "interactive": ""
+ },
+ "create": {
+ "title": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
+ },
+ "edit": {
+ "title": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ },
+ "configControl": "",
+ "searchEngineType": {
+ "generic": "",
+ "fromIntegration": ""
+ }
+ },
+ "delete": {
+ "title": "",
+ "message": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
}
}
}
diff --git a/packages/translation/src/lang/cr.json b/packages/translation/src/lang/cr.json
new file mode 100644
index 000000000..e2c405b33
--- /dev/null
+++ b/packages/translation/src/lang/cr.json
@@ -0,0 +1,2963 @@
+{
+ "init": {
+ "step": {
+ "start": {
+ "title": "crwdns4538:0crwdne4538:0",
+ "subtitle": "crwdns4540:0crwdne4540:0",
+ "description": "crwdns4542:0crwdne4542:0",
+ "action": {
+ "scratch": "crwdns4544:0crwdne4544:0",
+ "importOldmarr": "crwdns4546:0crwdne4546:0"
+ }
+ },
+ "import": {
+ "title": "crwdns4548:0crwdne4548:0",
+ "subtitle": "crwdns4550:0crwdne4550:0",
+ "dropzone": {
+ "title": "crwdns4552:0crwdne4552:0",
+ "description": "crwdns4554:0crwdne4554:0"
+ },
+ "fileInfo": {
+ "action": {
+ "change": "crwdns4556:0crwdne4556:0"
+ }
+ },
+ "importSettings": {
+ "title": "crwdns4558:0crwdne4558:0",
+ "description": "crwdns4560:0crwdne4560:0"
+ },
+ "boardSelection": {
+ "title": "crwdns4562:0{count}crwdne4562:0",
+ "description": "crwdns4564:0crwdne4564:0",
+ "action": {
+ "selectAll": "crwdns4566:0crwdne4566:0",
+ "unselectAll": "crwdns4568:0crwdne4568:0"
+ }
+ },
+ "summary": {
+ "title": "crwdns4570:0crwdne4570:0",
+ "description": "crwdns4572:0crwdne4572:0",
+ "action": {
+ "import": "crwdns4574:0crwdne4574:0"
+ },
+ "entities": {
+ "apps": "crwdns4576:0crwdne4576:0",
+ "boards": "crwdns4578:0crwdne4578:0",
+ "integrations": "crwdns4580:0crwdne4580:0",
+ "credentialUsers": "crwdns4582:0crwdne4582:0"
+ }
+ },
+ "tokenModal": {
+ "title": "crwdns4584:0crwdne4584:0",
+ "field": {
+ "token": {
+ "label": "crwdns4586:0crwdne4586:0",
+ "description": "crwdns4588:0crwdne4588:0"
+ }
+ },
+ "notification": {
+ "error": {
+ "title": "crwdns4590:0crwdne4590:0",
+ "message": "crwdns4592:0crwdne4592:0"
+ }
+ }
+ }
+ },
+ "user": {
+ "title": "crwdns4594:0crwdne4594:0",
+ "subtitle": "crwdns4596:0crwdne4596:0",
+ "notification": {
+ "success": {
+ "title": "crwdns4598:0crwdne4598:0",
+ "message": "crwdns4600:0crwdne4600:0"
+ },
+ "error": {
+ "title": "crwdns4602:0crwdne4602:0"
+ }
+ }
+ },
+ "group": {
+ "title": "crwdns4604:0crwdne4604:0",
+ "subtitle": "crwdns4606:0crwdne4606:0",
+ "form": {
+ "name": {
+ "label": "crwdns4608:0crwdne4608:0",
+ "description": "crwdns4610:0crwdne4610:0"
+ }
+ }
+ },
+ "settings": {
+ "title": "crwdns4612:0crwdne4612:0",
+ "subtitle": "crwdns4614:0crwdne4614:0"
+ },
+ "finish": {
+ "title": "crwdns4616:0crwdne4616:0",
+ "subtitle": "crwdns4618:0crwdne4618:0",
+ "description": "crwdns4620:0crwdne4620:0",
+ "action": {
+ "goToBoard": "crwdns4622:0{name}crwdne4622:0",
+ "createBoard": "crwdns4624:0crwdne4624:0",
+ "inviteUser": "crwdns4626:0crwdne4626:0",
+ "docs": "crwdns4628:0crwdne4628:0"
+ }
+ }
+ },
+ "backToStart": "crwdns4630:0crwdne4630:0"
+ },
+ "user": {
+ "title": "crwdns4632:0crwdne4632:0",
+ "name": "crwdns4634:0crwdne4634:0",
+ "page": {
+ "login": {
+ "title": "crwdns4636:0crwdne4636:0",
+ "subtitle": "crwdns4638:0crwdne4638:0"
+ },
+ "invite": {
+ "title": "crwdns4640:0crwdne4640:0",
+ "subtitle": "crwdns4642:0crwdne4642:0",
+ "description": "crwdns4644:0{username}crwdne4644:0"
+ },
+ "init": {
+ "title": "crwdns4646:0crwdne4646:0",
+ "subtitle": "crwdns4648:0crwdne4648:0"
+ }
+ },
+ "field": {
+ "email": {
+ "label": "crwdns4650:0crwdne4650:0",
+ "verified": "crwdns4652:0crwdne4652:0"
+ },
+ "username": {
+ "label": "crwdns4654:0crwdne4654:0"
+ },
+ "password": {
+ "label": "crwdns4656:0crwdne4656:0",
+ "requirement": {
+ "length": "crwdns4658:0crwdne4658:0",
+ "lowercase": "crwdns4660:0crwdne4660:0",
+ "uppercase": "crwdns4662:0crwdne4662:0",
+ "number": "crwdns4664:0crwdne4664:0",
+ "special": "crwdns4666:0crwdne4666:0"
+ }
+ },
+ "passwordConfirm": {
+ "label": "crwdns4668:0crwdne4668:0"
+ },
+ "previousPassword": {
+ "label": "crwdns4670:0crwdne4670:0"
+ },
+ "homeBoard": {
+ "label": "crwdns4672:0crwdne4672:0"
+ },
+ "pingIconsEnabled": {
+ "label": "crwdns4674:0crwdne4674:0"
+ }
+ },
+ "error": {
+ "usernameTaken": "crwdns4676:0crwdne4676:0"
+ },
+ "action": {
+ "login": {
+ "label": "crwdns4678:0crwdne4678:0",
+ "labelWith": "crwdns4680:0{provider}crwdne4680:0",
+ "notification": {
+ "success": {
+ "title": "crwdns4682:0crwdne4682:0",
+ "message": "crwdns4684:0crwdne4684:0"
+ },
+ "error": {
+ "title": "crwdns4686:0crwdne4686:0",
+ "message": "crwdns4688:0crwdne4688:0"
+ }
+ },
+ "forgotPassword": {
+ "label": "crwdns4690:0crwdne4690:0",
+ "description": "crwdns4692:0crwdne4692:0"
+ }
+ },
+ "register": {
+ "label": "crwdns4694:0crwdne4694:0",
+ "notification": {
+ "success": {
+ "title": "crwdns4696:0crwdne4696:0",
+ "message": "crwdns4698:0crwdne4698:0"
+ },
+ "error": {
+ "title": "crwdns4700:0crwdne4700:0",
+ "message": "crwdns4702:0crwdne4702:0"
+ }
+ }
+ },
+ "create": "crwdns4704:0crwdne4704:0",
+ "changePassword": {
+ "label": "crwdns4706:0crwdne4706:0",
+ "notification": {
+ "success": {
+ "message": "crwdns4708:0crwdne4708:0"
+ },
+ "error": {
+ "message": "crwdns4710:0crwdne4710:0"
+ }
+ }
+ },
+ "changeHomeBoard": {
+ "notification": {
+ "success": {
+ "message": "crwdns4712:0crwdne4712:0"
+ },
+ "error": {
+ "message": "crwdns4714:0crwdne4714:0"
+ }
+ }
+ },
+ "changeFirstDayOfWeek": {
+ "notification": {
+ "success": {
+ "message": "crwdns4716:0crwdne4716:0"
+ },
+ "error": {
+ "message": "crwdns4718:0crwdne4718:0"
+ }
+ }
+ },
+ "changePingIconsEnabled": {
+ "notification": {
+ "success": {
+ "message": "crwdns4720:0crwdne4720:0"
+ },
+ "error": {
+ "message": "crwdns4722:0crwdne4722:0"
+ }
+ }
+ },
+ "manageAvatar": {
+ "changeImage": {
+ "label": "crwdns4724:0crwdne4724:0",
+ "notification": {
+ "success": {
+ "message": "crwdns4726:0crwdne4726:0"
+ },
+ "error": {
+ "message": "crwdns4728:0crwdne4728:0"
+ },
+ "toLarge": {
+ "title": "crwdns4730:0crwdne4730:0",
+ "message": "crwdns4732:0{size}crwdne4732:0"
+ }
+ }
+ },
+ "removeImage": {
+ "label": "crwdns4734:0crwdne4734:0",
+ "confirm": "crwdns4736:0crwdne4736:0",
+ "notification": {
+ "success": {
+ "message": "crwdns4738:0crwdne4738:0"
+ },
+ "error": {
+ "message": "crwdns4740:0crwdne4740:0"
+ }
+ }
+ }
+ },
+ "editProfile": {
+ "notification": {
+ "success": {
+ "message": "crwdns4742:0crwdne4742:0"
+ },
+ "error": {
+ "message": "crwdns4744:0crwdne4744:0"
+ }
+ }
+ },
+ "delete": {
+ "label": "crwdns4746:0crwdne4746:0",
+ "description": "crwdns4748:0crwdne4748:0",
+ "confirm": "crwdns4750:0{username}crwdne4750:0"
+ },
+ "select": {
+ "label": "crwdns4752:0crwdne4752:0",
+ "notFound": "crwdns4754:0crwdne4754:0"
+ },
+ "transfer": {
+ "label": "crwdns4756:0crwdne4756:0"
+ }
+ }
+ },
+ "group": {
+ "title": "crwdns4758:0crwdne4758:0",
+ "name": "crwdns4760:0crwdne4760:0",
+ "search": "crwdns4762:0crwdne4762:0",
+ "field": {
+ "name": "crwdns4764:0crwdne4764:0",
+ "members": "crwdns4766:0crwdne4766:0"
+ },
+ "permission": {
+ "admin": {
+ "title": "crwdns4768:0crwdne4768:0",
+ "item": {
+ "admin": {
+ "label": "crwdns4770:0crwdne4770:0",
+ "description": "crwdns4772:0crwdne4772:0"
+ }
+ }
+ },
+ "app": {
+ "title": "crwdns4774:0crwdne4774:0",
+ "item": {
+ "create": {
+ "label": "crwdns4776:0crwdne4776:0",
+ "description": "crwdns4778:0crwdne4778:0"
+ },
+ "use-all": {
+ "label": "crwdns4780:0crwdne4780:0",
+ "description": "crwdns4782:0crwdne4782:0"
+ },
+ "modify-all": {
+ "label": "crwdns4784:0crwdne4784:0",
+ "description": "crwdns4786:0crwdne4786:0"
+ },
+ "full-all": {
+ "label": "crwdns4788:0crwdne4788:0",
+ "description": "crwdns4790:0crwdne4790:0"
+ }
+ }
+ },
+ "board": {
+ "title": "crwdns4792:0crwdne4792:0",
+ "item": {
+ "create": {
+ "label": "crwdns4794:0crwdne4794:0",
+ "description": "crwdns4796:0crwdne4796:0"
+ },
+ "view-all": {
+ "label": "crwdns4798:0crwdne4798:0",
+ "description": "crwdns4800:0crwdne4800:0"
+ },
+ "modify-all": {
+ "label": "crwdns4802:0crwdne4802:0",
+ "description": "crwdns4804:0crwdne4804:0"
+ },
+ "full-all": {
+ "label": "crwdns4806:0crwdne4806:0",
+ "description": "crwdns4808:0crwdne4808:0"
+ }
+ }
+ },
+ "integration": {
+ "title": "crwdns4810:0crwdne4810:0",
+ "item": {
+ "create": {
+ "label": "crwdns4812:0crwdne4812:0",
+ "description": "crwdns4814:0crwdne4814:0"
+ },
+ "use-all": {
+ "label": "crwdns4816:0crwdne4816:0",
+ "description": "crwdns4818:0crwdne4818:0"
+ },
+ "interact-all": {
+ "label": "crwdns4820:0crwdne4820:0",
+ "description": "crwdns4822:0crwdne4822:0"
+ },
+ "full-all": {
+ "label": "crwdns4824:0crwdne4824:0",
+ "description": "crwdns4826:0crwdne4826:0"
+ }
+ }
+ },
+ "media": {
+ "title": "crwdns4828:0crwdne4828:0",
+ "item": {
+ "upload": {
+ "label": "crwdns4830:0crwdne4830:0",
+ "description": "crwdns4832:0crwdne4832:0"
+ },
+ "view-all": {
+ "label": "crwdns4834:0crwdne4834:0",
+ "description": "crwdns4836:0crwdne4836:0"
+ },
+ "full-all": {
+ "label": "crwdns4838:0crwdne4838:0",
+ "description": "crwdns4840:0crwdne4840:0"
+ }
+ }
+ },
+ "other": {
+ "title": "crwdns4842:0crwdne4842:0",
+ "item": {
+ "view-logs": {
+ "label": "crwdns4844:0crwdne4844:0",
+ "description": "crwdns4846:0crwdne4846:0"
+ }
+ }
+ },
+ "search-engine": {
+ "title": "crwdns4848:0crwdne4848:0",
+ "item": {
+ "create": {
+ "label": "crwdns4850:0crwdne4850:0",
+ "description": "crwdns4852:0crwdne4852:0"
+ },
+ "modify-all": {
+ "label": "crwdns4854:0crwdne4854:0",
+ "description": "crwdns4856:0crwdne4856:0"
+ },
+ "full-all": {
+ "label": "crwdns4858:0crwdne4858:0",
+ "description": "crwdns4860:0crwdne4860:0"
+ }
+ }
+ }
+ },
+ "memberNotice": {
+ "mixed": "crwdns4862:0crwdne4862:0",
+ "external": "crwdns4864:0crwdne4864:0"
+ },
+ "reservedNotice": {
+ "message": "crwdns4866:0crwdne4866:0"
+ },
+ "action": {
+ "create": {
+ "label": "crwdns4868:0crwdne4868:0",
+ "notification": {
+ "success": {
+ "message": "crwdns4870:0crwdne4870:0"
+ },
+ "error": {
+ "message": "crwdns4872:0crwdne4872:0"
+ }
+ }
+ },
+ "transfer": {
+ "label": "crwdns4874:0crwdne4874:0",
+ "description": "crwdns4876:0crwdne4876:0",
+ "confirm": "crwdns4878:0{name}crwdnd4878:0{username}crwdne4878:0",
+ "notification": {
+ "success": {
+ "message": "crwdns4880:0{group}crwdnd4880:0{user}crwdne4880:0"
+ },
+ "error": {
+ "message": "crwdns4882:0crwdne4882:0"
+ }
+ }
+ },
+ "addMember": {
+ "label": "crwdns4884:0crwdne4884:0"
+ },
+ "removeMember": {
+ "label": "crwdns4886:0crwdne4886:0",
+ "confirm": "crwdns4888:0{user}crwdne4888:0"
+ },
+ "delete": {
+ "label": "crwdns4890:0crwdne4890:0",
+ "description": "crwdns4892:0crwdne4892:0",
+ "confirm": "crwdns4894:0{name}crwdne4894:0",
+ "notification": {
+ "success": {
+ "message": "crwdns4896:0{name}crwdne4896:0"
+ },
+ "error": {
+ "message": "crwdns4898:0{name}crwdne4898:0"
+ }
+ }
+ },
+ "changePermissions": {
+ "notification": {
+ "success": {
+ "title": "crwdns4900:0crwdne4900:0",
+ "message": "crwdns4902:0crwdne4902:0"
+ },
+ "error": {
+ "title": "crwdns4904:0crwdne4904:0",
+ "message": "crwdns4906:0crwdne4906:0"
+ }
+ }
+ },
+ "update": {
+ "notification": {
+ "success": {
+ "message": "crwdns4908:0{name}crwdne4908:0"
+ },
+ "error": {
+ "message": "crwdns4910:0{name}crwdne4910:0"
+ }
+ }
+ },
+ "select": {
+ "label": "crwdns4912:0crwdne4912:0",
+ "notFound": "crwdns4914:0crwdne4914:0"
+ }
+ }
+ },
+ "app": {
+ "page": {
+ "list": {
+ "title": "crwdns4916:0crwdne4916:0",
+ "noResults": {
+ "title": "crwdns4918:0crwdne4918:0",
+ "action": "crwdns4920:0crwdne4920:0"
+ }
+ },
+ "create": {
+ "title": "crwdns4922:0crwdne4922:0",
+ "notification": {
+ "success": {
+ "title": "crwdns4924:0crwdne4924:0",
+ "message": "crwdns4926:0crwdne4926:0"
+ },
+ "error": {
+ "title": "crwdns4928:0crwdne4928:0",
+ "message": "crwdns4930:0crwdne4930:0"
+ }
+ }
+ },
+ "edit": {
+ "title": "crwdns4932:0crwdne4932:0",
+ "notification": {
+ "success": {
+ "title": "crwdns4934:0crwdne4934:0",
+ "message": "crwdns4936:0crwdne4936:0"
+ },
+ "error": {
+ "title": "crwdns4938:0crwdne4938:0",
+ "message": "crwdns4940:0crwdne4940:0"
+ }
+ }
+ },
+ "delete": {
+ "title": "crwdns4942:0crwdne4942:0",
+ "message": "crwdns4944:0{name}crwdne4944:0",
+ "notification": {
+ "success": {
+ "title": "crwdns4946:0crwdne4946:0",
+ "message": "crwdns4948:0crwdne4948:0"
+ },
+ "error": {
+ "title": "crwdns4950:0crwdne4950:0",
+ "message": "crwdns4952:0crwdne4952:0"
+ }
+ }
+ }
+ },
+ "field": {
+ "name": {
+ "label": "crwdns4954:0crwdne4954:0"
+ },
+ "description": {
+ "label": "crwdns4956:0crwdne4956:0"
+ },
+ "url": {
+ "label": "crwdns4958:0crwdne4958:0"
+ }
+ },
+ "action": {
+ "select": {
+ "label": "crwdns4960:0crwdne4960:0",
+ "notFound": "crwdns4962:0crwdne4962:0"
+ }
+ }
+ },
+ "integration": {
+ "page": {
+ "list": {
+ "title": "crwdns4964:0crwdne4964:0",
+ "search": "crwdns4966:0crwdne4966:0",
+ "noResults": {
+ "title": "crwdns4968:0crwdne4968:0"
+ }
+ },
+ "create": {
+ "title": "crwdns4970:0{name}crwdne4970:0",
+ "notification": {
+ "success": {
+ "title": "crwdns4972:0crwdne4972:0",
+ "message": "crwdns4974:0crwdne4974:0"
+ },
+ "error": {
+ "title": "crwdns4976:0crwdne4976:0",
+ "message": "crwdns4978:0crwdne4978:0"
+ }
+ }
+ },
+ "edit": {
+ "title": "crwdns4980:0{name}crwdne4980:0",
+ "notification": {
+ "success": {
+ "title": "crwdns4982:0crwdne4982:0",
+ "message": "crwdns4984:0crwdne4984:0"
+ },
+ "error": {
+ "title": "crwdns4986:0crwdne4986:0",
+ "message": "crwdns4988:0crwdne4988:0"
+ }
+ }
+ },
+ "delete": {
+ "title": "crwdns4990:0crwdne4990:0",
+ "message": "crwdns4992:0{name}crwdne4992:0",
+ "notification": {
+ "success": {
+ "title": "crwdns4994:0crwdne4994:0",
+ "message": "crwdns4996:0crwdne4996:0"
+ },
+ "error": {
+ "title": "crwdns4998:0crwdne4998:0",
+ "message": "crwdns5000:0crwdne5000:0"
+ }
+ }
+ }
+ },
+ "field": {
+ "name": {
+ "label": "crwdns5002:0crwdne5002:0"
+ },
+ "url": {
+ "label": "crwdns5004:0crwdne5004:0"
+ }
+ },
+ "action": {
+ "create": "crwdns5006:0crwdne5006:0"
+ },
+ "testConnection": {
+ "action": {
+ "create": "crwdns5008:0crwdne5008:0",
+ "edit": "crwdns5010:0crwdne5010:0"
+ },
+ "alertNotice": "crwdns5012:0crwdne5012:0",
+ "notification": {
+ "success": {
+ "title": "crwdns5014:0crwdne5014:0",
+ "message": "crwdns5016:0crwdne5016:0"
+ },
+ "invalidUrl": {
+ "title": "crwdns5018:0crwdne5018:0",
+ "message": "crwdns5020:0crwdne5020:0"
+ },
+ "secretNotDefined": {
+ "title": "crwdns5022:0crwdne5022:0",
+ "message": "crwdns5024:0crwdne5024:0"
+ },
+ "invalidCredentials": {
+ "title": "crwdns5026:0crwdne5026:0",
+ "message": "crwdns5028:0crwdne5028:0"
+ },
+ "commonError": {
+ "title": "crwdns5030:0crwdne5030:0",
+ "message": "crwdns5032:0crwdne5032:0"
+ },
+ "badRequest": {
+ "title": "crwdns5034:0crwdne5034:0",
+ "message": "crwdns5036:0crwdne5036:0"
+ },
+ "unauthorized": {
+ "title": "crwdns5038:0crwdne5038:0",
+ "message": "crwdns5040:0crwdne5040:0"
+ },
+ "forbidden": {
+ "title": "crwdns5042:0crwdne5042:0",
+ "message": "crwdns5044:0crwdne5044:0"
+ },
+ "notFound": {
+ "title": "crwdns5046:0crwdne5046:0",
+ "message": "crwdns5048:0crwdne5048:0"
+ },
+ "internalServerError": {
+ "title": "crwdns5050:0crwdne5050:0",
+ "message": "crwdns5052:0crwdne5052:0"
+ },
+ "serviceUnavailable": {
+ "title": "crwdns5054:0crwdne5054:0",
+ "message": "crwdns5056:0crwdne5056:0"
+ },
+ "connectionAborted": {
+ "title": "crwdns5058:0crwdne5058:0",
+ "message": "crwdns5060:0crwdne5060:0"
+ },
+ "domainNotFound": {
+ "title": "crwdns5062:0crwdne5062:0",
+ "message": "crwdns5064:0crwdne5064:0"
+ },
+ "connectionRefused": {
+ "title": "crwdns5066:0crwdne5066:0",
+ "message": "crwdns5068:0crwdne5068:0"
+ },
+ "invalidJson": {
+ "title": "crwdns5070:0crwdne5070:0",
+ "message": "crwdns5072:0crwdne5072:0"
+ },
+ "wrongPath": {
+ "title": "crwdns5074:0crwdne5074:0",
+ "message": "crwdns5076:0crwdne5076:0"
+ }
+ }
+ },
+ "secrets": {
+ "title": "crwdns5078:0crwdne5078:0",
+ "lastUpdated": "crwdns5080:0{date}crwdne5080:0",
+ "notSet": {
+ "label": "crwdns5082:0crwdne5082:0",
+ "tooltip": "crwdns5084:0crwdne5084:0"
+ },
+ "secureNotice": "crwdns5086:0crwdne5086:0",
+ "reset": {
+ "title": "crwdns5088:0crwdne5088:0",
+ "message": "crwdns5090:0crwdne5090:0"
+ },
+ "noSecretsRequired": {
+ "segmentTitle": "crwdns5092:0crwdne5092:0",
+ "text": "crwdns5094:0crwdne5094:0"
+ },
+ "kind": {
+ "username": {
+ "label": "crwdns5096:0crwdne5096:0",
+ "newLabel": "crwdns5098:0crwdne5098:0"
+ },
+ "apiKey": {
+ "label": "crwdns5100:0crwdne5100:0",
+ "newLabel": "crwdns5102:0crwdne5102:0"
+ },
+ "password": {
+ "label": "crwdns5104:0crwdne5104:0",
+ "newLabel": "crwdns5106:0crwdne5106:0"
+ }
+ }
+ },
+ "permission": {
+ "use": "crwdns5108:0crwdne5108:0",
+ "interact": "crwdns5110:0crwdne5110:0",
+ "full": "crwdns5112:0crwdne5112:0"
+ }
+ },
+ "media": {
+ "plural": "crwdns5114:0crwdne5114:0",
+ "search": "crwdns5116:0crwdne5116:0",
+ "field": {
+ "name": "crwdns5118:0crwdne5118:0",
+ "size": "crwdns5120:0crwdne5120:0",
+ "creator": "crwdns5122:0crwdne5122:0"
+ },
+ "action": {
+ "upload": {
+ "label": "crwdns5124:0crwdne5124:0",
+ "file": "crwdns5126:0crwdne5126:0",
+ "notification": {
+ "success": {
+ "message": "crwdns5128:0crwdne5128:0"
+ },
+ "error": {
+ "message": "crwdns5130:0crwdne5130:0"
+ }
+ }
+ },
+ "delete": {
+ "label": "crwdns5132:0crwdne5132:0",
+ "description": "crwdns5134:0crwdne5134:0",
+ "notification": {
+ "success": {
+ "message": "crwdns5136:0crwdne5136:0"
+ },
+ "error": {
+ "message": "crwdns5138:0crwdne5138:0"
+ }
+ }
+ },
+ "copy": {
+ "label": "crwdns5140:0crwdne5140:0"
+ }
+ }
+ },
+ "common": {
+ "beta": "crwdns5142:0crwdne5142:0",
+ "error": "crwdns5144:0crwdne5144:0",
+ "action": {
+ "add": "crwdns5146:0crwdne5146:0",
+ "apply": "crwdns5148:0crwdne5148:0",
+ "backToOverview": "crwdns5150:0crwdne5150:0",
+ "create": "crwdns5152:0crwdne5152:0",
+ "edit": "crwdns5154:0crwdne5154:0",
+ "import": "crwdns5156:0crwdne5156:0",
+ "insert": "crwdns5158:0crwdne5158:0",
+ "remove": "crwdns5160:0crwdne5160:0",
+ "save": "crwdns5162:0crwdne5162:0",
+ "saveChanges": "crwdns5164:0crwdne5164:0",
+ "cancel": "crwdns5166:0crwdne5166:0",
+ "delete": "crwdns5168:0crwdne5168:0",
+ "discard": "crwdns5170:0crwdne5170:0",
+ "confirm": "crwdns5172:0crwdne5172:0",
+ "continue": "crwdns5174:0crwdne5174:0",
+ "previous": "crwdns5176:0crwdne5176:0",
+ "next": "crwdns5178:0crwdne5178:0",
+ "checkoutDocs": "crwdns5180:0crwdne5180:0",
+ "checkLogs": "crwdns5182:0crwdne5182:0",
+ "tryAgain": "crwdns5184:0crwdne5184:0",
+ "loading": "crwdns5186:0crwdne5186:0"
+ },
+ "here": "crwdns5188:0crwdne5188:0",
+ "iconPicker": {
+ "label": "crwdns5190:0crwdne5190:0",
+ "header": "crwdns5192:0{countIcons}crwdne5192:0"
+ },
+ "colorScheme": {
+ "options": {
+ "light": "crwdns5194:0crwdne5194:0",
+ "dark": "crwdns5196:0crwdne5196:0"
+ }
+ },
+ "information": {
+ "min": "crwdns5198:0crwdne5198:0",
+ "max": "crwdns5200:0crwdne5200:0",
+ "days": "crwdns5202:0crwdne5202:0",
+ "hours": "crwdns5204:0crwdne5204:0",
+ "minutes": "crwdns5206:0crwdne5206:0"
+ },
+ "notification": {
+ "create": {
+ "success": "crwdns5208:0crwdne5208:0",
+ "error": "crwdns5210:0crwdne5210:0"
+ },
+ "delete": {
+ "success": "crwdns5212:0crwdne5212:0",
+ "error": "crwdns5214:0crwdne5214:0"
+ },
+ "update": {
+ "success": "crwdns5216:0crwdne5216:0",
+ "error": "crwdns5218:0crwdne5218:0"
+ },
+ "transfer": {
+ "success": "crwdns5220:0crwdne5220:0",
+ "error": "crwdns5222:0crwdne5222:0"
+ }
+ },
+ "multiSelect": {
+ "placeholder": "crwdns5224:0crwdne5224:0"
+ },
+ "multiText": {
+ "placeholder": "crwdns5226:0crwdne5226:0",
+ "addLabel": "crwdns5228:0{value}crwdne5228:0"
+ },
+ "select": {
+ "placeholder": "crwdns5230:0crwdne5230:0",
+ "badge": {
+ "recommended": "crwdns5232:0crwdne5232:0"
+ }
+ },
+ "userAvatar": {
+ "menu": {
+ "switchToDarkMode": "crwdns5234:0crwdne5234:0",
+ "switchToLightMode": "crwdns5236:0crwdne5236:0",
+ "management": "crwdns5238:0crwdne5238:0",
+ "preferences": "crwdns5240:0crwdne5240:0",
+ "logout": "crwdns5242:0crwdne5242:0",
+ "login": "crwdns5244:0crwdne5244:0",
+ "homeBoard": "crwdns5246:0crwdne5246:0",
+ "loggedOut": "crwdns5248:0crwdne5248:0",
+ "updateAvailable": "crwdns5250:0{countUpdates}crwdnd5250:0{tag}crwdne5250:0"
+ }
+ },
+ "dangerZone": "crwdns5252:0crwdne5252:0",
+ "noResults": "crwdns5254:0crwdne5254:0",
+ "preview": {
+ "show": "crwdns5256:0crwdne5256:0",
+ "hide": "crwdns5258:0crwdne5258:0"
+ },
+ "zod": {
+ "errors": {
+ "default": "crwdns5260:0crwdne5260:0",
+ "required": "crwdns5262:0crwdne5262:0",
+ "string": {
+ "startsWith": "crwdns5264:0{startsWith}crwdne5264:0",
+ "endsWith": "crwdns5266:0{endsWith}crwdne5266:0",
+ "includes": "crwdns5268:0{includes}crwdne5268:0",
+ "invalidEmail": "crwdns5270:0crwdne5270:0"
+ },
+ "tooSmall": {
+ "string": "crwdns5272:0{minimum}crwdne5272:0",
+ "number": "crwdns5274:0{minimum}crwdne5274:0"
+ },
+ "tooBig": {
+ "string": "crwdns5276:0{maximum}crwdne5276:0",
+ "number": "crwdns5278:0{maximum}crwdne5278:0"
+ },
+ "custom": {
+ "passwordsDoNotMatch": "crwdns5280:0crwdne5280:0",
+ "passwordRequirements": "crwdns5282:0crwdne5282:0",
+ "boardAlreadyExists": "crwdns5284:0crwdne5284:0",
+ "invalidFileType": "crwdns5286:0{expected}crwdne5286:0",
+ "fileTooLarge": "crwdns5288:0{maxSize}crwdne5288:0",
+ "invalidConfiguration": "crwdns5290:0crwdne5290:0",
+ "groupNameTaken": "crwdns5292:0crwdne5292:0"
+ }
+ }
+ }
+ },
+ "section": {
+ "dynamic": {
+ "action": {
+ "create": "crwdns5294:0crwdne5294:0",
+ "remove": "crwdns5296:0crwdne5296:0"
+ },
+ "remove": {
+ "title": "crwdns5298:0crwdne5298:0",
+ "message": "crwdns5300:0crwdne5300:0"
+ }
+ },
+ "category": {
+ "field": {
+ "name": {
+ "label": "crwdns5302:0crwdne5302:0"
+ }
+ },
+ "action": {
+ "create": "crwdns5304:0crwdne5304:0",
+ "edit": "crwdns5306:0crwdne5306:0",
+ "remove": "crwdns5308:0crwdne5308:0",
+ "moveUp": "crwdns5310:0crwdne5310:0",
+ "moveDown": "crwdns5312:0crwdne5312:0",
+ "createAbove": "crwdns5314:0crwdne5314:0",
+ "createBelow": "crwdns5316:0crwdne5316:0"
+ },
+ "create": {
+ "title": "crwdns5318:0crwdne5318:0",
+ "submit": "crwdns5320:0crwdne5320:0"
+ },
+ "remove": {
+ "title": "crwdns5322:0crwdne5322:0",
+ "message": "crwdns5324:0{name}crwdne5324:0"
+ },
+ "edit": {
+ "title": "crwdns5326:0crwdne5326:0",
+ "submit": "crwdns5328:0crwdne5328:0"
+ },
+ "menu": {
+ "label": {
+ "create": "crwdns5330:0crwdne5330:0",
+ "changePosition": "crwdns5332:0crwdne5332:0"
+ }
+ }
+ }
+ },
+ "item": {
+ "action": {
+ "create": "crwdns5334:0crwdne5334:0",
+ "import": "crwdns5336:0crwdne5336:0",
+ "edit": "crwdns5338:0crwdne5338:0",
+ "moveResize": "crwdns5340:0crwdne5340:0",
+ "duplicate": "crwdns5342:0crwdne5342:0",
+ "remove": "crwdns5344:0crwdne5344:0"
+ },
+ "menu": {
+ "label": {
+ "settings": "crwdns5346:0crwdne5346:0"
+ }
+ },
+ "create": {
+ "title": "crwdns5348:0crwdne5348:0",
+ "addToBoard": "crwdns5350:0crwdne5350:0"
+ },
+ "moveResize": {
+ "title": "crwdns5352:0crwdne5352:0",
+ "field": {
+ "width": {
+ "label": "crwdns5354:0crwdne5354:0"
+ },
+ "height": {
+ "label": "crwdns5356:0crwdne5356:0"
+ },
+ "xOffset": {
+ "label": "crwdns5358:0crwdne5358:0"
+ },
+ "yOffset": {
+ "label": "crwdns5360:0crwdne5360:0"
+ }
+ }
+ },
+ "edit": {
+ "title": "crwdns5362:0crwdne5362:0",
+ "advancedOptions": {
+ "label": "crwdns5364:0crwdne5364:0",
+ "title": "crwdns5366:0crwdne5366:0"
+ },
+ "field": {
+ "integrations": {
+ "label": "crwdns5368:0crwdne5368:0"
+ },
+ "customCssClasses": {
+ "label": "crwdns5370:0crwdne5370:0"
+ }
+ }
+ },
+ "remove": {
+ "title": "crwdns5372:0crwdne5372:0",
+ "message": "crwdns5374:0crwdne5374:0"
+ }
+ },
+ "widget": {
+ "app": {
+ "name": "crwdns5376:0crwdne5376:0",
+ "description": "crwdns5378:0crwdne5378:0",
+ "option": {
+ "appId": {
+ "label": "crwdns5380:0crwdne5380:0"
+ },
+ "openInNewTab": {
+ "label": "crwdns5382:0crwdne5382:0"
+ },
+ "showTitle": {
+ "label": "crwdns5384:0crwdne5384:0"
+ },
+ "showDescriptionTooltip": {
+ "label": "crwdns5386:0crwdne5386:0"
+ },
+ "pingEnabled": {
+ "label": "crwdns5388:0crwdne5388:0"
+ }
+ },
+ "error": {
+ "notFound": {
+ "label": "crwdns5390:0crwdne5390:0",
+ "tooltip": "crwdns5392:0crwdne5392:0"
+ }
+ }
+ },
+ "bookmarks": {
+ "name": "crwdns5394:0crwdne5394:0",
+ "description": "crwdns5396:0crwdne5396:0",
+ "option": {
+ "title": {
+ "label": "crwdns5398:0crwdne5398:0"
+ },
+ "layout": {
+ "label": "crwdns5400:0crwdne5400:0",
+ "option": {
+ "row": {
+ "label": "crwdns5402:0crwdne5402:0"
+ },
+ "column": {
+ "label": "crwdns5404:0crwdne5404:0"
+ },
+ "grid": {
+ "label": "crwdns5406:0crwdne5406:0"
+ }
+ }
+ },
+ "items": {
+ "label": "crwdns5408:0crwdne5408:0",
+ "add": "crwdns5410:0crwdne5410:0"
+ }
+ }
+ },
+ "dnsHoleSummary": {
+ "name": "crwdns5412:0crwdne5412:0",
+ "description": "crwdns5414:0crwdne5414:0",
+ "option": {
+ "layout": {
+ "label": "crwdns5416:0crwdne5416:0",
+ "option": {
+ "row": {
+ "label": "crwdns5418:0crwdne5418:0"
+ },
+ "column": {
+ "label": "crwdns5420:0crwdne5420:0"
+ },
+ "grid": {
+ "label": "crwdns5422:0crwdne5422:0"
+ }
+ }
+ },
+ "usePiHoleColors": {
+ "label": "crwdns5424:0crwdne5424:0"
+ }
+ },
+ "error": {
+ "internalServerError": "crwdns5426:0crwdne5426:0",
+ "integrationsDisconnected": "crwdns5428:0crwdne5428:0"
+ },
+ "data": {
+ "adsBlockedToday": "crwdns5430:0crwdne5430:0",
+ "adsBlockedTodayPercentage": "crwdns5432:0crwdne5432:0",
+ "dnsQueriesToday": "crwdns5434:0crwdne5434:0",
+ "domainsBeingBlocked": "crwdns5436:0crwdne5436:0"
+ }
+ },
+ "dnsHoleControls": {
+ "name": "crwdns5438:0crwdne5438:0",
+ "description": "crwdns5440:0crwdne5440:0",
+ "option": {
+ "layout": {
+ "label": "crwdns5442:0crwdne5442:0",
+ "option": {
+ "row": {
+ "label": "crwdns5444:0crwdne5444:0"
+ },
+ "column": {
+ "label": "crwdns5446:0crwdne5446:0"
+ },
+ "grid": {
+ "label": "crwdns5448:0crwdne5448:0"
+ }
+ }
+ },
+ "showToggleAllButtons": {
+ "label": "crwdns5450:0crwdne5450:0"
+ }
+ },
+ "error": {
+ "internalServerError": "crwdns5452:0crwdne5452:0"
+ },
+ "controls": {
+ "enableAll": "crwdns5454:0crwdne5454:0",
+ "disableAll": "crwdns5456:0crwdne5456:0",
+ "setTimer": "crwdns5458:0crwdne5458:0",
+ "set": "crwdns5460:0crwdne5460:0",
+ "enabled": "crwdns5462:0crwdne5462:0",
+ "disabled": "crwdns5464:0crwdne5464:0",
+ "processing": "crwdns5466:0crwdne5466:0",
+ "disconnected": "crwdns5468:0crwdne5468:0",
+ "hours": "crwdns5470:0crwdne5470:0",
+ "minutes": "crwdns5472:0crwdne5472:0",
+ "unlimited": "crwdns5474:0crwdne5474:0"
+ }
+ },
+ "clock": {
+ "name": "crwdns5476:0crwdne5476:0",
+ "description": "crwdns5478:0crwdne5478:0",
+ "option": {
+ "customTitleToggle": {
+ "label": "crwdns5480:0crwdne5480:0",
+ "description": "crwdns5482:0crwdne5482:0"
+ },
+ "customTitle": {
+ "label": "crwdns5484:0crwdne5484:0"
+ },
+ "is24HourFormat": {
+ "label": "crwdns5486:0crwdne5486:0",
+ "description": "crwdns5488:0crwdne5488:0"
+ },
+ "showSeconds": {
+ "label": "crwdns5490:0crwdne5490:0"
+ },
+ "useCustomTimezone": {
+ "label": "crwdns5492:0crwdne5492:0"
+ },
+ "timezone": {
+ "label": "crwdns5494:0crwdne5494:0",
+ "description": "crwdns5496:0crwdne5496:0"
+ },
+ "showDate": {
+ "label": "crwdns5498:0crwdne5498:0"
+ },
+ "dateFormat": {
+ "label": "crwdns5500:0crwdne5500:0",
+ "description": "crwdns5502:0crwdne5502:0"
+ }
+ }
+ },
+ "notebook": {
+ "name": "crwdns5504:0crwdne5504:0",
+ "description": "crwdns5506:0crwdne5506:0",
+ "option": {
+ "showToolbar": {
+ "label": "crwdns5508:0crwdne5508:0"
+ },
+ "allowReadOnlyCheck": {
+ "label": "crwdns5510:0crwdne5510:0"
+ },
+ "content": {
+ "label": "crwdns5512:0crwdne5512:0"
+ }
+ },
+ "controls": {
+ "bold": "crwdns5514:0crwdne5514:0",
+ "italic": "crwdns5516:0crwdne5516:0",
+ "strikethrough": "crwdns5518:0crwdne5518:0",
+ "underline": "crwdns5520:0crwdne5520:0",
+ "colorText": "crwdns5522:0crwdne5522:0",
+ "colorHighlight": "crwdns5524:0crwdne5524:0",
+ "code": "crwdns5526:0crwdne5526:0",
+ "clear": "crwdns5528:0crwdne5528:0",
+ "heading": "crwdns5530:0{level}crwdne5530:0",
+ "align": "crwdns5532:0{position}crwdne5532:0",
+ "blockquote": "crwdns5534:0crwdne5534:0",
+ "horizontalLine": "crwdns5536:0crwdne5536:0",
+ "bulletList": "crwdns5538:0crwdne5538:0",
+ "orderedList": "crwdns5540:0crwdne5540:0",
+ "checkList": "crwdns5542:0crwdne5542:0",
+ "increaseIndent": "crwdns5544:0crwdne5544:0",
+ "decreaseIndent": "crwdns5546:0crwdne5546:0",
+ "link": "crwdns5548:0crwdne5548:0",
+ "unlink": "crwdns5550:0crwdne5550:0",
+ "image": "crwdns5552:0crwdne5552:0",
+ "addTable": "crwdns5554:0crwdne5554:0",
+ "deleteTable": "crwdns5556:0crwdne5556:0",
+ "colorCell": "crwdns5558:0crwdne5558:0",
+ "mergeCell": "crwdns5560:0crwdne5560:0",
+ "addColumnLeft": "crwdns5562:0crwdne5562:0",
+ "addColumnRight": "crwdns5564:0crwdne5564:0",
+ "deleteColumn": "crwdns5566:0crwdne5566:0",
+ "addRowTop": "crwdns5568:0crwdne5568:0",
+ "addRowBelow": "crwdns5570:0crwdne5570:0",
+ "deleteRow": "crwdns5572:0crwdne5572:0"
+ },
+ "align": {
+ "left": "crwdns5574:0crwdne5574:0",
+ "center": "crwdns5576:0crwdne5576:0",
+ "right": "crwdns5578:0crwdne5578:0"
+ },
+ "popover": {
+ "clearColor": "crwdns5580:0crwdne5580:0",
+ "source": "crwdns5582:0crwdne5582:0",
+ "widthPlaceholder": "crwdns5584:0crwdne5584:0",
+ "columns": "crwdns5586:0crwdne5586:0",
+ "rows": "crwdns5588:0crwdne5588:0",
+ "width": "crwdns5590:0crwdne5590:0",
+ "height": "crwdns5592:0crwdne5592:0"
+ }
+ },
+ "iframe": {
+ "name": "crwdns5594:0crwdne5594:0",
+ "description": "crwdns5596:0crwdne5596:0",
+ "option": {
+ "embedUrl": {
+ "label": "crwdns5598:0crwdne5598:0"
+ },
+ "allowFullScreen": {
+ "label": "crwdns5600:0crwdne5600:0"
+ },
+ "allowTransparency": {
+ "label": "crwdns5602:0crwdne5602:0"
+ },
+ "allowScrolling": {
+ "label": "crwdns5604:0crwdne5604:0"
+ },
+ "allowPayment": {
+ "label": "crwdns5606:0crwdne5606:0"
+ },
+ "allowAutoPlay": {
+ "label": "crwdns5608:0crwdne5608:0"
+ },
+ "allowMicrophone": {
+ "label": "crwdns5610:0crwdne5610:0"
+ },
+ "allowCamera": {
+ "label": "crwdns5612:0crwdne5612:0"
+ },
+ "allowGeolocation": {
+ "label": "crwdns5614:0crwdne5614:0"
+ }
+ },
+ "error": {
+ "noUrl": "crwdns5616:0crwdne5616:0",
+ "noBrowerSupport": "crwdns5618:0crwdne5618:0"
+ }
+ },
+ "smartHome-entityState": {
+ "name": "crwdns5620:0crwdne5620:0",
+ "description": "crwdns5622:0crwdne5622:0",
+ "option": {
+ "entityId": {
+ "label": "crwdns5624:0crwdne5624:0"
+ },
+ "displayName": {
+ "label": "crwdns5626:0crwdne5626:0"
+ },
+ "entityUnit": {
+ "label": "crwdns5628:0crwdne5628:0"
+ },
+ "clickable": {
+ "label": "crwdns5630:0crwdne5630:0"
+ }
+ }
+ },
+ "smartHome-executeAutomation": {
+ "name": "crwdns5632:0crwdne5632:0",
+ "description": "crwdns5634:0crwdne5634:0",
+ "option": {
+ "displayName": {
+ "label": "crwdns5636:0crwdne5636:0"
+ },
+ "automationId": {
+ "label": "crwdns5638:0crwdne5638:0"
+ }
+ },
+ "spotlightAction": {
+ "run": "crwdns5640:0{name}crwdne5640:0"
+ }
+ },
+ "calendar": {
+ "name": "crwdns5642:0crwdne5642:0",
+ "description": "crwdns5644:0crwdne5644:0",
+ "option": {
+ "releaseType": {
+ "label": "crwdns5646:0crwdne5646:0",
+ "options": {
+ "inCinemas": "crwdns5648:0crwdne5648:0",
+ "digitalRelease": "crwdns5650:0crwdne5650:0",
+ "physicalRelease": "crwdns5652:0crwdne5652:0"
+ }
+ },
+ "filterPastMonths": {
+ "label": "crwdns5654:0crwdne5654:0"
+ },
+ "filterFutureMonths": {
+ "label": "crwdns5656:0crwdne5656:0"
+ }
+ }
+ },
+ "weather": {
+ "name": "crwdns5658:0crwdne5658:0",
+ "description": "crwdns5660:0crwdne5660:0",
+ "option": {
+ "isFormatFahrenheit": {
+ "label": "crwdns5662:0crwdne5662:0"
+ },
+ "location": {
+ "label": "crwdns5664:0crwdne5664:0"
+ },
+ "showCity": {
+ "label": "crwdns5666:0crwdne5666:0"
+ },
+ "hasForecast": {
+ "label": "crwdns5668:0crwdne5668:0"
+ },
+ "forecastDayCount": {
+ "label": "crwdns5670:0crwdne5670:0",
+ "description": "crwdns5672:0crwdne5672:0"
+ },
+ "dateFormat": {
+ "label": "crwdns5674:0crwdne5674:0",
+ "description": "crwdns5676:0crwdne5676:0"
+ }
+ },
+ "kind": {
+ "clear": "crwdns5678:0crwdne5678:0",
+ "mainlyClear": "crwdns5680:0crwdne5680:0",
+ "fog": "crwdns5682:0crwdne5682:0",
+ "drizzle": "crwdns5684:0crwdne5684:0",
+ "freezingDrizzle": "crwdns5686:0crwdne5686:0",
+ "rain": "crwdns5688:0crwdne5688:0",
+ "freezingRain": "crwdns5690:0crwdne5690:0",
+ "snowFall": "crwdns5692:0crwdne5692:0",
+ "snowGrains": "crwdns5694:0crwdne5694:0",
+ "rainShowers": "crwdns5696:0crwdne5696:0",
+ "snowShowers": "crwdns5698:0crwdne5698:0",
+ "thunderstorm": "crwdns5700:0crwdne5700:0",
+ "thunderstormWithHail": "crwdns5702:0crwdne5702:0",
+ "unknown": "crwdns5704:0crwdne5704:0"
+ }
+ },
+ "indexerManager": {
+ "name": "crwdns5706:0crwdne5706:0",
+ "description": "crwdns5708:0crwdne5708:0",
+ "option": {
+ "openIndexerSiteInNewTab": {
+ "label": "crwdns5710:0crwdne5710:0"
+ }
+ },
+ "title": "crwdns5712:0crwdne5712:0",
+ "testAll": "crwdns5714:0crwdne5714:0",
+ "error": {
+ "internalServerError": "crwdns5716:0crwdne5716:0"
+ }
+ },
+ "healthMonitoring": {
+ "name": "crwdns5718:0crwdne5718:0",
+ "description": "crwdns5720:0crwdne5720:0",
+ "option": {
+ "fahrenheit": {
+ "label": "crwdns5722:0crwdne5722:0"
+ },
+ "cpu": {
+ "label": "crwdns5724:0crwdne5724:0"
+ },
+ "memory": {
+ "label": "crwdns5726:0crwdne5726:0"
+ },
+ "fileSystem": {
+ "label": "crwdns5728:0crwdne5728:0"
+ }
+ },
+ "popover": {
+ "information": "crwdns5730:0crwdne5730:0",
+ "processor": "crwdns5732:0{cpuModelName}crwdne5732:0",
+ "memory": "crwdns5734:0{memory}crwdne5734:0",
+ "memoryAvailable": "crwdns5736:0{memoryAvailable}crwdnd5736:0{percent}crwdne5736:0",
+ "version": "crwdns5738:0{version}crwdne5738:0",
+ "uptime": "crwdns5740:0{days}crwdnd5740:0{hours}crwdnd5740:0{minutes}crwdne5740:0",
+ "loadAverage": "crwdns5742:0crwdne5742:0",
+ "minute": "crwdns5744:0crwdne5744:0",
+ "minutes": "crwdns5746:0{count}crwdne5746:0",
+ "used": "crwdns5748:0crwdne5748:0",
+ "available": "crwdns5750:0crwdne5750:0",
+ "lastSeen": "crwdns5752:0{lastSeen}crwdne5752:0"
+ },
+ "memory": {},
+ "error": {
+ "internalServerError": "crwdns5754:0crwdne5754:0"
+ }
+ },
+ "common": {
+ "location": {
+ "query": "crwdns5756:0crwdne5756:0",
+ "latitude": "crwdns5758:0crwdne5758:0",
+ "longitude": "crwdns5760:0crwdne5760:0",
+ "disabledTooltip": "crwdns5762:0crwdne5762:0",
+ "unknownLocation": "crwdns5764:0crwdne5764:0",
+ "search": "crwdns5766:0crwdne5766:0",
+ "table": {
+ "header": {
+ "city": "crwdns5768:0crwdne5768:0",
+ "country": "crwdns5770:0crwdne5770:0",
+ "coordinates": "crwdns5772:0crwdne5772:0",
+ "population": "crwdns5774:0crwdne5774:0"
+ },
+ "action": {
+ "select": "crwdns5776:0{city}crwdnd5776:0{countryCode}crwdne5776:0"
+ },
+ "population": {
+ "fallback": "crwdns5778:0crwdne5778:0"
+ }
+ }
+ },
+ "integration": {
+ "noData": "crwdns5780:0crwdne5780:0",
+ "description": "crwdns5782:0crwdne5782:0"
+ },
+ "app": {
+ "noData": "crwdns5784:0crwdne5784:0",
+ "description": "crwdns5786:0crwdne5786:0"
+ },
+ "error": {
+ "noIntegration": "crwdns5788:0crwdne5788:0",
+ "noData": "crwdns5790:0crwdne5790:0"
+ },
+ "option": {}
+ },
+ "video": {
+ "name": "crwdns5792:0crwdne5792:0",
+ "description": "crwdns5794:0crwdne5794:0",
+ "option": {
+ "feedUrl": {
+ "label": "crwdns5796:0crwdne5796:0"
+ },
+ "hasAutoPlay": {
+ "label": "crwdns5798:0crwdne5798:0",
+ "description": "crwdns5800:0crwdne5800:0"
+ },
+ "isMuted": {
+ "label": "crwdns5802:0crwdne5802:0"
+ },
+ "hasControls": {
+ "label": "crwdns5804:0crwdne5804:0"
+ }
+ },
+ "error": {
+ "noUrl": "crwdns5806:0crwdne5806:0",
+ "forYoutubeUseIframe": "crwdns5808:0crwdne5808:0"
+ }
+ },
+ "mediaServer": {
+ "name": "crwdns5810:0crwdne5810:0",
+ "description": "crwdns5812:0crwdne5812:0",
+ "option": {}
+ },
+ "downloads": {
+ "name": "crwdns5814:0crwdne5814:0",
+ "description": "crwdns5816:0crwdne5816:0",
+ "option": {
+ "columns": {
+ "label": "crwdns5818:0crwdne5818:0"
+ },
+ "enableRowSorting": {
+ "label": "crwdns5820:0crwdne5820:0"
+ },
+ "defaultSort": {
+ "label": "crwdns5822:0crwdne5822:0"
+ },
+ "descendingDefaultSort": {
+ "label": "crwdns5824:0crwdne5824:0"
+ },
+ "showCompletedUsenet": {
+ "label": "crwdns5826:0crwdne5826:0"
+ },
+ "showCompletedTorrent": {
+ "label": "crwdns5828:0crwdne5828:0"
+ },
+ "activeTorrentThreshold": {
+ "label": "crwdns5830:0crwdne5830:0"
+ },
+ "categoryFilter": {
+ "label": "crwdns5832:0crwdne5832:0"
+ },
+ "filterIsWhitelist": {
+ "label": "crwdns5834:0crwdne5834:0"
+ },
+ "applyFilterToRatio": {
+ "label": "crwdns5836:0crwdne5836:0"
+ }
+ },
+ "errors": {
+ "noColumns": "crwdns5838:0crwdne5838:0",
+ "noCommunications": "crwdns5840:0crwdne5840:0"
+ },
+ "items": {
+ "actions": {
+ "columnTitle": "crwdns5842:0crwdne5842:0"
+ },
+ "added": {
+ "columnTitle": "crwdns5844:0crwdne5844:0",
+ "detailsTitle": "crwdns5846:0crwdne5846:0"
+ },
+ "category": {
+ "columnTitle": "crwdns5848:0crwdne5848:0",
+ "detailsTitle": "crwdns5850:0crwdne5850:0"
+ },
+ "downSpeed": {
+ "columnTitle": "crwdns5852:0crwdne5852:0",
+ "detailsTitle": "crwdns5854:0crwdne5854:0"
+ },
+ "index": {
+ "columnTitle": "crwdns5856:0crwdne5856:0",
+ "detailsTitle": "crwdns5858:0crwdne5858:0"
+ },
+ "id": {
+ "columnTitle": "crwdns5860:0crwdne5860:0"
+ },
+ "integration": {
+ "columnTitle": "crwdns5862:0crwdne5862:0"
+ },
+ "name": {
+ "columnTitle": "crwdns5864:0crwdne5864:0"
+ },
+ "progress": {
+ "columnTitle": "crwdns5866:0crwdne5866:0",
+ "detailsTitle": "crwdns5868:0crwdne5868:0"
+ },
+ "ratio": {
+ "columnTitle": "crwdns5870:0crwdne5870:0",
+ "detailsTitle": "crwdns5872:0crwdne5872:0"
+ },
+ "received": {
+ "columnTitle": "crwdns5874:0crwdne5874:0",
+ "detailsTitle": "crwdns5876:0crwdne5876:0"
+ },
+ "sent": {
+ "columnTitle": "crwdns5878:0crwdne5878:0",
+ "detailsTitle": "crwdns5880:0crwdne5880:0"
+ },
+ "size": {
+ "columnTitle": "crwdns5882:0crwdne5882:0",
+ "detailsTitle": "crwdns5884:0crwdne5884:0"
+ },
+ "state": {
+ "columnTitle": "crwdns5886:0crwdne5886:0",
+ "detailsTitle": "crwdns5888:0crwdne5888:0"
+ },
+ "time": {
+ "columnTitle": "crwdns5890:0crwdne5890:0",
+ "detailsTitle": "crwdns5892:0crwdne5892:0"
+ },
+ "type": {
+ "columnTitle": "crwdns5894:0crwdne5894:0",
+ "detailsTitle": "crwdns5896:0crwdne5896:0"
+ },
+ "upSpeed": {
+ "columnTitle": "crwdns5898:0crwdne5898:0",
+ "detailsTitle": "crwdns5900:0crwdne5900:0"
+ }
+ },
+ "states": {
+ "downloading": "crwdns5902:0crwdne5902:0",
+ "queued": "crwdns5904:0crwdne5904:0",
+ "paused": "crwdns5906:0crwdne5906:0",
+ "completed": "crwdns5908:0crwdne5908:0",
+ "failed": "crwdns5910:0crwdne5910:0",
+ "processing": "crwdns5912:0crwdne5912:0",
+ "leeching": "crwdns5914:0crwdne5914:0",
+ "stalled": "crwdns5916:0crwdne5916:0",
+ "unknown": "crwdns5918:0crwdne5918:0",
+ "seeding": "crwdns5920:0crwdne5920:0"
+ },
+ "actions": {
+ "clients": {
+ "modalTitle": "crwdns5922:0crwdne5922:0",
+ "pause": "crwdns5924:0crwdne5924:0",
+ "resume": "crwdns5926:0crwdne5926:0"
+ },
+ "client": {
+ "pause": "crwdns5928:0crwdne5928:0",
+ "resume": "crwdns5930:0crwdne5930:0"
+ },
+ "item": {
+ "pause": "crwdns5932:0crwdne5932:0",
+ "resume": "crwdns5934:0crwdne5934:0",
+ "delete": {
+ "title": "crwdns5936:0crwdne5936:0",
+ "modalTitle": "crwdns5938:0crwdne5938:0",
+ "entry": "crwdns5940:0crwdne5940:0",
+ "entryAndFiles": "crwdns5942:0crwdne5942:0"
+ }
+ }
+ },
+ "globalRatio": "crwdns5944:0crwdne5944:0"
+ },
+ "mediaRequests-requestList": {
+ "name": "crwdns5946:0crwdne5946:0",
+ "description": "crwdns5948:0crwdne5948:0",
+ "option": {
+ "linksTargetNewTab": {
+ "label": "crwdns5950:0crwdne5950:0"
+ }
+ },
+ "pending": {
+ "approve": "crwdns5952:0crwdne5952:0",
+ "approving": "crwdns5954:0crwdne5954:0",
+ "decline": "crwdns5956:0crwdne5956:0"
+ },
+ "availability": {
+ "unknown": "crwdns5958:0crwdne5958:0",
+ "pending": "crwdns5960:0crwdne5960:0",
+ "processing": "crwdns5962:0crwdne5962:0",
+ "partiallyAvailable": "crwdns5964:0crwdne5964:0",
+ "available": "crwdns5966:0crwdne5966:0"
+ },
+ "toBeDetermined": "crwdns5968:0crwdne5968:0"
+ },
+ "mediaRequests-requestStats": {
+ "name": "crwdns5970:0crwdne5970:0",
+ "description": "crwdns5972:0crwdne5972:0",
+ "option": {},
+ "titles": {
+ "stats": {
+ "main": "crwdns5974:0crwdne5974:0",
+ "approved": "crwdns5976:0crwdne5976:0",
+ "pending": "crwdns5978:0crwdne5978:0",
+ "processing": "crwdns5980:0crwdne5980:0",
+ "declined": "crwdns5982:0crwdne5982:0",
+ "available": "crwdns5984:0crwdne5984:0",
+ "tv": "crwdns5986:0crwdne5986:0",
+ "movie": "crwdns5988:0crwdne5988:0",
+ "total": "crwdns5990:0crwdne5990:0"
+ },
+ "users": {
+ "main": "crwdns5992:0crwdne5992:0",
+ "requests": "crwdns5994:0crwdne5994:0"
+ }
+ }
+ },
+ "mediaTranscoding": {
+ "name": "crwdns5996:0crwdne5996:0",
+ "description": "crwdns5998:0crwdne5998:0",
+ "option": {
+ "defaultView": {
+ "label": "crwdns6000:0crwdne6000:0"
+ },
+ "queuePageSize": {
+ "label": "crwdns6002:0crwdne6002:0"
+ }
+ },
+ "tab": {
+ "workers": "crwdns6004:0crwdne6004:0",
+ "queue": "crwdns6006:0crwdne6006:0",
+ "statistics": "crwdns6008:0crwdne6008:0"
+ },
+ "currentIndex": "crwdns6010:0{start}crwdnd6010:0{end}crwdnd6010:0{total}crwdne6010:0",
+ "healthCheck": {
+ "title": "crwdns6012:0crwdne6012:0",
+ "queued": "crwdns6014:0crwdne6014:0",
+ "status": {
+ "healthy": "crwdns6016:0crwdne6016:0",
+ "unhealthy": "crwdns6018:0crwdne6018:0"
+ }
+ },
+ "panel": {
+ "statistics": {
+ "empty": "crwdns6020:0crwdne6020:0",
+ "transcodes": "crwdns6022:0crwdne6022:0",
+ "transcodesCount": "crwdns6024:0{value}crwdne6024:0",
+ "healthChecksCount": "crwdns6026:0{value}crwdne6026:0",
+ "filesCount": "crwdns6028:0{value}crwdne6028:0",
+ "savedSpace": "crwdns6030:0{value}crwdne6030:0",
+ "healthChecks": "crwdns6032:0crwdne6032:0",
+ "videoCodecs": "crwdns6034:0crwdne6034:0",
+ "videoContainers": "crwdns6036:0crwdne6036:0",
+ "videoResolutions": "crwdns6038:0crwdne6038:0"
+ },
+ "workers": {
+ "empty": "crwdns6040:0crwdne6040:0",
+ "table": {
+ "file": "crwdns6042:0crwdne6042:0",
+ "eta": "crwdns6044:0crwdne6044:0",
+ "progress": "crwdns6046:0crwdne6046:0",
+ "transcode": "crwdns6048:0crwdne6048:0",
+ "healthCheck": "crwdns6050:0crwdne6050:0"
+ }
+ },
+ "queue": {
+ "empty": "crwdns6052:0crwdne6052:0",
+ "table": {
+ "file": "crwdns6054:0crwdne6054:0",
+ "size": "crwdns6056:0crwdne6056:0",
+ "transcode": "crwdns6058:0crwdne6058:0",
+ "healthCheck": "crwdns6060:0crwdne6060:0"
+ }
+ }
+ }
+ },
+ "rssFeed": {
+ "name": "crwdns6062:0crwdne6062:0",
+ "description": "crwdns6064:0crwdne6064:0",
+ "option": {
+ "feedUrls": {
+ "label": "crwdns6066:0crwdne6066:0"
+ },
+ "enableRtl": {
+ "label": "crwdns6068:0crwdne6068:0"
+ },
+ "textLinesClamp": {
+ "label": "crwdns6070:0crwdne6070:0"
+ },
+ "maximumAmountPosts": {
+ "label": "crwdns6072:0crwdne6072:0"
+ }
+ }
+ }
+ },
+ "widgetPreview": {
+ "toggle": {
+ "enabled": "crwdns6074:0crwdne6074:0",
+ "disabled": "crwdns6076:0crwdne6076:0"
+ },
+ "dimensions": {
+ "title": "crwdns6078:0crwdne6078:0"
+ }
+ },
+ "board": {
+ "action": {
+ "edit": {
+ "notification": {
+ "success": {
+ "title": "crwdns6080:0crwdne6080:0",
+ "message": "crwdns6082:0crwdne6082:0"
+ },
+ "error": {
+ "title": "crwdns6084:0crwdne6084:0",
+ "message": "crwdns6086:0crwdne6086:0"
+ }
+ },
+ "confirmLeave": {
+ "title": "crwdns6088:0crwdne6088:0",
+ "message": "crwdns6090:0crwdne6090:0"
+ }
+ },
+ "oldImport": {
+ "label": "crwdns6092:0crwdne6092:0",
+ "notification": {
+ "success": {
+ "title": "crwdns6094:0crwdne6094:0",
+ "message": "crwdns6096:0crwdne6096:0"
+ },
+ "error": {
+ "title": "crwdns6098:0crwdne6098:0",
+ "message": "crwdns6100:0crwdne6100:0"
+ }
+ },
+ "form": {
+ "file": {
+ "label": "crwdns6102:0crwdne6102:0",
+ "invalidError": "crwdns6104:0crwdne6104:0"
+ },
+ "apps": {
+ "label": "crwdns6106:0crwdne6106:0",
+ "avoidDuplicates": {
+ "label": "crwdns6108:0crwdne6108:0",
+ "description": "crwdns6110:0crwdne6110:0"
+ },
+ "onlyImportApps": {
+ "label": "crwdns6112:0crwdne6112:0",
+ "description": "crwdns6114:0crwdne6114:0"
+ }
+ },
+ "name": {
+ "label": "crwdns6116:0crwdne6116:0"
+ },
+ "screenSize": {
+ "label": "crwdns6118:0crwdne6118:0",
+ "description": "crwdns6120:0crwdne6120:0",
+ "option": {
+ "sm": "crwdns6122:0crwdne6122:0",
+ "md": "crwdns6124:0crwdne6124:0",
+ "lg": "crwdns6126:0crwdne6126:0"
+ }
+ },
+ "sidebarBehavior": {
+ "label": "crwdns6128:0crwdne6128:0",
+ "description": "crwdns6130:0crwdne6130:0",
+ "option": {
+ "lastSection": {
+ "label": "crwdns6132:0crwdne6132:0",
+ "description": "crwdns6134:0crwdne6134:0"
+ },
+ "removeItems": {
+ "label": "crwdns6136:0crwdne6136:0",
+ "description": "crwdns6138:0crwdne6138:0"
+ }
+ }
+ }
+ }
+ }
+ },
+ "field": {
+ "pageTitle": {
+ "label": "crwdns6140:0crwdne6140:0"
+ },
+ "metaTitle": {
+ "label": "crwdns6142:0crwdne6142:0"
+ },
+ "logoImageUrl": {
+ "label": "crwdns6144:0crwdne6144:0"
+ },
+ "faviconImageUrl": {
+ "label": "crwdns6146:0crwdne6146:0"
+ },
+ "backgroundImageUrl": {
+ "label": "crwdns6148:0crwdne6148:0"
+ },
+ "backgroundImageAttachment": {
+ "label": "crwdns6150:0crwdne6150:0",
+ "option": {
+ "fixed": {
+ "label": "crwdns6152:0crwdne6152:0",
+ "description": "crwdns6154:0crwdne6154:0"
+ },
+ "scroll": {
+ "label": "crwdns6156:0crwdne6156:0",
+ "description": "crwdns6158:0crwdne6158:0"
+ }
+ }
+ },
+ "backgroundImageRepeat": {
+ "label": "crwdns6160:0crwdne6160:0",
+ "option": {
+ "repeat": {
+ "label": "crwdns6162:0crwdne6162:0",
+ "description": "crwdns6164:0crwdne6164:0"
+ },
+ "no-repeat": {
+ "label": "crwdns6166:0crwdne6166:0",
+ "description": "crwdns6168:0crwdne6168:0"
+ },
+ "repeat-x": {
+ "label": "crwdns6170:0crwdne6170:0",
+ "description": "crwdns6172:0crwdne6172:0"
+ },
+ "repeat-y": {
+ "label": "crwdns6174:0crwdne6174:0",
+ "description": "crwdns6176:0crwdne6176:0"
+ }
+ }
+ },
+ "backgroundImageSize": {
+ "label": "crwdns6178:0crwdne6178:0",
+ "option": {
+ "cover": {
+ "label": "crwdns6180:0crwdne6180:0",
+ "description": "crwdns6182:0crwdne6182:0"
+ },
+ "contain": {
+ "label": "crwdns6184:0crwdne6184:0",
+ "description": "crwdns6186:0crwdne6186:0"
+ }
+ }
+ },
+ "primaryColor": {
+ "label": "crwdns6188:0crwdne6188:0"
+ },
+ "secondaryColor": {
+ "label": "crwdns6190:0crwdne6190:0"
+ },
+ "opacity": {
+ "label": "crwdns6192:0crwdne6192:0"
+ },
+ "customCss": {
+ "label": "crwdns6194:0crwdne6194:0",
+ "description": "crwdns6196:0crwdne6196:0",
+ "customClassesAlert": {
+ "title": "crwdns6198:0crwdne6198:0",
+ "description": "crwdns6200:0crwdne6200:0"
+ }
+ },
+ "columnCount": {
+ "label": "crwdns6202:0crwdne6202:0"
+ },
+ "name": {
+ "label": "crwdns6204:0crwdne6204:0"
+ },
+ "isPublic": {
+ "label": "crwdns6206:0crwdne6206:0",
+ "description": "crwdns6208:0crwdne6208:0"
+ }
+ },
+ "content": {
+ "metaTitle": "crwdns6210:0{boardName}crwdne6210:0"
+ },
+ "setting": {
+ "title": "crwdns6212:0{boardName}crwdne6212:0",
+ "section": {
+ "general": {
+ "title": "crwdns6214:0crwdne6214:0",
+ "unrecognizedLink": "crwdns6216:0crwdne6216:0"
+ },
+ "layout": {
+ "title": "crwdns6218:0crwdne6218:0"
+ },
+ "background": {
+ "title": "crwdns6220:0crwdne6220:0"
+ },
+ "color": {
+ "title": "crwdns6222:0crwdne6222:0"
+ },
+ "customCss": {
+ "title": "crwdns6224:0crwdne6224:0"
+ },
+ "access": {
+ "title": "crwdns6226:0crwdne6226:0",
+ "permission": {
+ "item": {
+ "view": {
+ "label": "crwdns6228:0crwdne6228:0"
+ },
+ "modify": {
+ "label": "crwdns6230:0crwdne6230:0"
+ },
+ "full": {
+ "label": "crwdns6232:0crwdne6232:0"
+ }
+ }
+ }
+ },
+ "dangerZone": {
+ "title": "crwdns6234:0crwdne6234:0",
+ "action": {
+ "rename": {
+ "label": "crwdns6236:0crwdne6236:0",
+ "description": "crwdns6238:0crwdne6238:0",
+ "button": "crwdns6240:0crwdne6240:0",
+ "modal": {
+ "title": "crwdns6242:0crwdne6242:0"
+ }
+ },
+ "visibility": {
+ "label": "crwdns6244:0crwdne6244:0",
+ "description": {
+ "public": "crwdns6246:0crwdne6246:0",
+ "private": "crwdns6248:0crwdne6248:0"
+ },
+ "button": {
+ "public": "crwdns6250:0crwdne6250:0",
+ "private": "crwdns6252:0crwdne6252:0"
+ },
+ "confirm": {
+ "public": {
+ "title": "crwdns6254:0crwdne6254:0",
+ "description": "crwdns6256:0crwdne6256:0"
+ },
+ "private": {
+ "title": "crwdns6258:0crwdne6258:0",
+ "description": "crwdns6260:0crwdne6260:0"
+ }
+ }
+ },
+ "delete": {
+ "label": "crwdns6262:0crwdne6262:0",
+ "description": "crwdns6264:0crwdne6264:0",
+ "button": "crwdns6266:0crwdne6266:0",
+ "confirm": {
+ "title": "crwdns6268:0crwdne6268:0",
+ "description": "crwdns6270:0crwdne6270:0"
+ }
+ }
+ }
+ }
+ }
+ },
+ "error": {
+ "noBoard": {
+ "title": "crwdns6272:0crwdne6272:0",
+ "description": "crwdns6274:0crwdne6274:0",
+ "link": "crwdns6276:0crwdne6276:0",
+ "notice": "crwdns6278:0crwdne6278:0"
+ },
+ "notFound": {
+ "title": "crwdns6280:0crwdne6280:0",
+ "description": "crwdns6282:0crwdne6282:0",
+ "link": "crwdns6284:0crwdne6284:0",
+ "notice": "crwdns6286:0crwdne6286:0"
+ },
+ "homeBoard": {
+ "title": "crwdns6288:0crwdne6288:0",
+ "admin": {
+ "description": "crwdns6290:0crwdne6290:0",
+ "link": "crwdns6292:0crwdne6292:0",
+ "notice": "crwdns6294:0crwdne6294:0"
+ },
+ "user": {
+ "description": "crwdns6296:0crwdne6296:0",
+ "link": "crwdns6298:0crwdne6298:0",
+ "notice": "crwdns6300:0crwdne6300:0"
+ },
+ "anonymous": {
+ "description": "crwdns6302:0crwdne6302:0",
+ "link": "crwdns6304:0crwdne6304:0",
+ "notice": "crwdns6306:0crwdne6306:0"
+ }
+ }
+ }
+ },
+ "management": {
+ "metaTitle": "crwdns6308:0crwdne6308:0",
+ "title": {
+ "morning": "crwdns6310:0{username}crwdne6310:0",
+ "afternoon": "crwdns6312:0{username}crwdne6312:0",
+ "evening": "crwdns6314:0{username}crwdne6314:0"
+ },
+ "notFound": {
+ "title": "crwdns6316:0crwdne6316:0",
+ "text": "crwdns6318:0crwdne6318:0"
+ },
+ "navbar": {
+ "items": {
+ "home": "crwdns6320:0crwdne6320:0",
+ "boards": "crwdns6322:0crwdne6322:0",
+ "apps": "crwdns6324:0crwdne6324:0",
+ "integrations": "crwdns6326:0crwdne6326:0",
+ "searchEngies": "crwdns6328:0crwdne6328:0",
+ "medias": "crwdns6330:0crwdne6330:0",
+ "users": {
+ "label": "crwdns6332:0crwdne6332:0",
+ "items": {
+ "manage": "crwdns6334:0crwdne6334:0",
+ "invites": "crwdns6336:0crwdne6336:0",
+ "groups": "crwdns6338:0crwdne6338:0"
+ }
+ },
+ "tools": {
+ "label": "crwdns6340:0crwdne6340:0",
+ "items": {
+ "docker": "crwdns6342:0crwdne6342:0",
+ "logs": "crwdns6344:0crwdne6344:0",
+ "api": "crwdns6346:0crwdne6346:0",
+ "tasks": "crwdns6348:0crwdne6348:0"
+ }
+ },
+ "settings": "crwdns6350:0crwdne6350:0",
+ "help": {
+ "label": "crwdns6352:0crwdne6352:0",
+ "items": {
+ "documentation": "crwdns6354:0crwdne6354:0",
+ "submitIssue": "crwdns6356:0crwdne6356:0",
+ "discord": "crwdns6358:0crwdne6358:0",
+ "sourceCode": "crwdns6360:0crwdne6360:0"
+ }
+ },
+ "about": "crwdns6362:0crwdne6362:0"
+ }
+ },
+ "page": {
+ "home": {
+ "statistic": {
+ "board": "crwdns6364:0crwdne6364:0",
+ "user": "crwdns6366:0crwdne6366:0",
+ "invite": "crwdns6368:0crwdne6368:0",
+ "integration": "crwdns6370:0crwdne6370:0",
+ "app": "crwdns6372:0crwdne6372:0",
+ "group": "crwdns6374:0crwdne6374:0"
+ },
+ "statisticLabel": {
+ "boards": "crwdns6376:0crwdne6376:0",
+ "resources": "crwdns6378:0crwdne6378:0",
+ "authentication": "crwdns6380:0crwdne6380:0",
+ "authorization": "crwdns6382:0crwdne6382:0"
+ }
+ },
+ "board": {
+ "title": "crwdns6384:0crwdne6384:0",
+ "action": {
+ "new": {
+ "label": "crwdns6386:0crwdne6386:0"
+ },
+ "open": {
+ "label": "crwdns6388:0crwdne6388:0"
+ },
+ "settings": {
+ "label": "crwdns6390:0crwdne6390:0"
+ },
+ "setHomeBoard": {
+ "label": "crwdns6392:0crwdne6392:0",
+ "badge": {
+ "label": "crwdns6394:0crwdne6394:0",
+ "tooltip": "crwdns6396:0crwdne6396:0"
+ }
+ },
+ "delete": {
+ "label": "crwdns6398:0crwdne6398:0",
+ "confirm": {
+ "title": "crwdns6400:0crwdne6400:0",
+ "description": "crwdns6402:0{name}crwdne6402:0"
+ }
+ }
+ },
+ "visibility": {
+ "public": "crwdns6404:0crwdne6404:0",
+ "private": "crwdns6406:0crwdne6406:0"
+ },
+ "modal": {
+ "createBoard": {
+ "field": {
+ "name": {
+ "label": "crwdns6408:0crwdne6408:0"
+ }
+ }
+ }
+ }
+ },
+ "media": {
+ "includeFromAllUsers": "crwdns6410:0crwdne6410:0"
+ },
+ "user": {
+ "back": "crwdns6412:0crwdne6412:0",
+ "fieldsDisabledExternalProvider": "crwdns6414:0crwdne6414:0",
+ "setting": {
+ "general": {
+ "title": "crwdns6416:0crwdne6416:0",
+ "item": {
+ "language": "crwdns6418:0crwdne6418:0",
+ "board": "crwdns6420:0crwdne6420:0",
+ "firstDayOfWeek": "crwdns6422:0crwdne6422:0",
+ "accessibility": "crwdns6424:0crwdne6424:0"
+ }
+ },
+ "security": {
+ "title": "crwdns6426:0crwdne6426:0"
+ },
+ "board": {
+ "title": "crwdns6428:0crwdne6428:0"
+ }
+ },
+ "list": {
+ "metaTitle": "crwdns6430:0crwdne6430:0",
+ "title": "crwdns6432:0crwdne6432:0"
+ },
+ "edit": {
+ "metaTitle": "crwdns6434:0{username}crwdne6434:0"
+ },
+ "create": {
+ "metaTitle": "crwdns6436:0crwdne6436:0",
+ "title": "crwdns6438:0crwdne6438:0",
+ "step": {
+ "personalInformation": {
+ "label": "crwdns6440:0crwdne6440:0"
+ },
+ "security": {
+ "label": "crwdns6442:0crwdne6442:0"
+ },
+ "groups": {
+ "label": "crwdns6444:0crwdne6444:0",
+ "title": "crwdns6446:0crwdne6446:0",
+ "description": "crwdns6448:0{everyoneGroup}crwdne6448:0"
+ },
+ "review": {
+ "label": "crwdns6450:0crwdne6450:0"
+ },
+ "completed": {
+ "title": "crwdns6452:0crwdne6452:0"
+ },
+ "error": {
+ "title": "crwdns6454:0crwdne6454:0"
+ }
+ },
+ "action": {
+ "createAnother": "crwdns6456:0crwdne6456:0",
+ "back": "crwdns6458:0crwdne6458:0"
+ }
+ },
+ "invite": {
+ "title": "crwdns6460:0crwdne6460:0",
+ "action": {
+ "new": {
+ "title": "crwdns6462:0crwdne6462:0",
+ "description": "crwdns6464:0crwdne6464:0"
+ },
+ "copy": {
+ "title": "crwdns6466:0crwdne6466:0",
+ "description": "crwdns6468:0crwdne6468:0",
+ "link": "crwdns6470:0crwdne6470:0",
+ "button": "crwdns6472:0crwdne6472:0"
+ },
+ "delete": {
+ "title": "crwdns6474:0crwdne6474:0",
+ "description": "crwdns6476:0crwdne6476:0"
+ }
+ },
+ "field": {
+ "id": {
+ "label": "crwdns6478:0crwdne6478:0"
+ },
+ "creator": {
+ "label": "crwdns6480:0crwdne6480:0"
+ },
+ "expirationDate": {
+ "label": "crwdns6482:0crwdne6482:0"
+ },
+ "token": {
+ "label": "crwdns6484:0crwdne6484:0"
+ }
+ }
+ }
+ },
+ "group": {
+ "back": "crwdns6486:0crwdne6486:0",
+ "setting": {
+ "general": {
+ "title": "crwdns6488:0crwdne6488:0",
+ "owner": "crwdns6490:0crwdne6490:0",
+ "ownerOfGroup": "crwdns6492:0crwdne6492:0",
+ "ownerOfGroupDeleted": "crwdns6494:0crwdne6494:0"
+ },
+ "members": {
+ "title": "crwdns6496:0crwdne6496:0",
+ "search": "crwdns6498:0crwdne6498:0",
+ "notFound": "crwdns6500:0crwdne6500:0"
+ },
+ "permissions": {
+ "title": "crwdns6502:0crwdne6502:0",
+ "form": {
+ "unsavedChanges": "crwdns6504:0crwdne6504:0"
+ }
+ }
+ }
+ },
+ "settings": {
+ "title": "crwdns6506:0crwdne6506:0",
+ "notification": {
+ "success": {
+ "message": "crwdns6508:0crwdne6508:0"
+ },
+ "error": {
+ "message": "crwdns6510:0crwdne6510:0"
+ }
+ },
+ "section": {
+ "analytics": {
+ "title": "crwdns6512:0crwdne6512:0",
+ "general": {
+ "title": "crwdns6514:0crwdne6514:0",
+ "text": "crwdns6516:0crwdne6516:0"
+ },
+ "widgetData": {
+ "title": "crwdns6518:0crwdne6518:0",
+ "text": "crwdns6520:0crwdne6520:0"
+ },
+ "integrationData": {
+ "title": "crwdns6522:0crwdne6522:0",
+ "text": "crwdns6524:0crwdne6524:0"
+ },
+ "usersData": {
+ "title": "crwdns6526:0crwdne6526:0",
+ "text": "crwdns6528:0crwdne6528:0"
+ }
+ },
+ "crawlingAndIndexing": {
+ "title": "crwdns6530:0crwdne6530:0",
+ "warning": "crwdns6532:0crwdne6532:0",
+ "noIndex": {
+ "title": "crwdns6534:0crwdne6534:0",
+ "text": "crwdns6536:0crwdne6536:0"
+ },
+ "noFollow": {
+ "title": "crwdns6538:0crwdne6538:0",
+ "text": "crwdns6540:0crwdne6540:0"
+ },
+ "noTranslate": {
+ "title": "crwdns6542:0crwdne6542:0",
+ "text": "crwdns6544:0crwdne6544:0"
+ },
+ "noSiteLinksSearchBox": {
+ "title": "crwdns6546:0crwdne6546:0",
+ "text": "crwdns6548:0crwdne6548:0"
+ }
+ },
+ "board": {
+ "title": "crwdns6550:0crwdne6550:0",
+ "homeBoard": {
+ "label": "crwdns6552:0crwdne6552:0",
+ "description": "crwdns6554:0crwdne6554:0"
+ }
+ },
+ "appearance": {
+ "title": "crwdns6556:0crwdne6556:0",
+ "defaultColorScheme": {
+ "label": "crwdns6558:0crwdne6558:0",
+ "options": {
+ "light": "crwdns6560:0crwdne6560:0",
+ "dark": "crwdns6562:0crwdne6562:0"
+ }
+ }
+ },
+ "culture": {
+ "title": "crwdns6564:0crwdne6564:0",
+ "defaultLocale": {
+ "label": "crwdns6566:0crwdne6566:0"
+ }
+ }
+ }
+ },
+ "tool": {
+ "tasks": {
+ "title": "crwdns6568:0crwdne6568:0",
+ "status": {
+ "idle": "crwdns6570:0crwdne6570:0",
+ "running": "crwdns6572:0crwdne6572:0",
+ "error": "crwdns6574:0crwdne6574:0"
+ },
+ "job": {
+ "iconsUpdater": {
+ "label": "crwdns6576:0crwdne6576:0"
+ },
+ "analytics": {
+ "label": "crwdns6578:0crwdne6578:0"
+ },
+ "smartHomeEntityState": {
+ "label": "crwdns6580:0crwdne6580:0"
+ },
+ "ping": {
+ "label": "crwdns6582:0crwdne6582:0"
+ },
+ "mediaServer": {
+ "label": "crwdns6584:0crwdne6584:0"
+ },
+ "mediaOrganizer": {
+ "label": "crwdns6586:0crwdne6586:0"
+ },
+ "downloads": {
+ "label": "crwdns6588:0crwdne6588:0"
+ },
+ "mediaRequestStats": {
+ "label": "crwdns6590:0crwdne6590:0"
+ },
+ "mediaRequestList": {
+ "label": "crwdns6592:0crwdne6592:0"
+ },
+ "rssFeeds": {
+ "label": "crwdns6594:0crwdne6594:0"
+ },
+ "indexerManager": {
+ "label": "crwdns6596:0crwdne6596:0"
+ },
+ "healthMonitoring": {
+ "label": "crwdns6598:0crwdne6598:0"
+ },
+ "dnsHole": {
+ "label": "crwdns6600:0crwdne6600:0"
+ },
+ "sessionCleanup": {
+ "label": "crwdns6602:0crwdne6602:0"
+ },
+ "updateChecker": {
+ "label": "crwdns6604:0crwdne6604:0"
+ },
+ "mediaTranscoding": {
+ "label": "crwdns6606:0crwdne6606:0"
+ }
+ }
+ },
+ "api": {
+ "title": "crwdns6608:0crwdne6608:0",
+ "modal": {
+ "createApiToken": {
+ "title": "crwdns6610:0crwdne6610:0",
+ "description": "crwdns6612:0crwdne6612:0",
+ "button": "crwdns6614:0crwdne6614:0"
+ }
+ },
+ "tab": {
+ "documentation": {
+ "label": "crwdns6616:0crwdne6616:0"
+ },
+ "apiKey": {
+ "label": "crwdns6618:0crwdne6618:0",
+ "title": "crwdns6620:0crwdne6620:0",
+ "button": {
+ "createApiToken": "crwdns6622:0crwdne6622:0"
+ },
+ "table": {
+ "header": {
+ "id": "crwdns6624:0crwdne6624:0",
+ "createdBy": "crwdns6626:0crwdne6626:0"
+ }
+ }
+ }
+ }
+ }
+ },
+ "about": {
+ "version": "crwdns6628:0{version}crwdne6628:0",
+ "text": "crwdns6630:0crwdne6630:0",
+ "accordion": {
+ "contributors": {
+ "title": "crwdns6632:0crwdne6632:0",
+ "subtitle": "crwdns6634:0{count}crwdne6634:0"
+ },
+ "translators": {
+ "title": "crwdns6636:0crwdne6636:0",
+ "subtitle": "crwdns6638:0{count}crwdne6638:0"
+ },
+ "libraries": {
+ "title": "crwdns6640:0crwdne6640:0",
+ "subtitle": "crwdns6642:0{count}crwdne6642:0"
+ }
+ }
+ }
+ }
+ },
+ "docker": {
+ "title": "crwdns6644:0crwdne6644:0",
+ "table": {
+ "updated": "crwdns6646:0{when}crwdne6646:0",
+ "search": "crwdns6648:0{count}crwdne6648:0",
+ "selected": "crwdns6650:0{selectCount}crwdnd6650:0{totalCount}crwdne6650:0"
+ },
+ "field": {
+ "name": {
+ "label": "crwdns6652:0crwdne6652:0"
+ },
+ "state": {
+ "label": "crwdns6654:0crwdne6654:0",
+ "option": {
+ "created": "crwdns6656:0crwdne6656:0",
+ "running": "crwdns6658:0crwdne6658:0",
+ "paused": "crwdns6660:0crwdne6660:0",
+ "restarting": "crwdns6662:0crwdne6662:0",
+ "exited": "crwdns6664:0crwdne6664:0",
+ "removing": "crwdns6666:0crwdne6666:0",
+ "dead": "crwdns6668:0crwdne6668:0"
+ }
+ },
+ "containerImage": {
+ "label": "crwdns6670:0crwdne6670:0"
+ },
+ "ports": {
+ "label": "crwdns6672:0crwdne6672:0"
+ }
+ },
+ "action": {
+ "start": {
+ "label": "crwdns6674:0crwdne6674:0",
+ "notification": {
+ "success": {
+ "title": "crwdns6676:0crwdne6676:0",
+ "message": "crwdns6678:0crwdne6678:0"
+ },
+ "error": {
+ "title": "crwdns6680:0crwdne6680:0",
+ "message": "crwdns6682:0crwdne6682:0"
+ }
+ }
+ },
+ "stop": {
+ "label": "crwdns6684:0crwdne6684:0",
+ "notification": {
+ "success": {
+ "title": "crwdns6686:0crwdne6686:0",
+ "message": "crwdns6688:0crwdne6688:0"
+ },
+ "error": {
+ "title": "crwdns6690:0crwdne6690:0",
+ "message": "crwdns6692:0crwdne6692:0"
+ }
+ }
+ },
+ "restart": {
+ "label": "crwdns6694:0crwdne6694:0",
+ "notification": {
+ "success": {
+ "title": "crwdns6696:0crwdne6696:0",
+ "message": "crwdns6698:0crwdne6698:0"
+ },
+ "error": {
+ "title": "crwdns6700:0crwdne6700:0",
+ "message": "crwdns6702:0crwdne6702:0"
+ }
+ }
+ },
+ "remove": {
+ "label": "crwdns6704:0crwdne6704:0",
+ "notification": {
+ "success": {
+ "title": "crwdns6706:0crwdne6706:0",
+ "message": "crwdns6708:0crwdne6708:0"
+ },
+ "error": {
+ "title": "crwdns6710:0crwdne6710:0",
+ "message": "crwdns6712:0crwdne6712:0"
+ }
+ }
+ },
+ "refresh": {
+ "label": "crwdns6714:0crwdne6714:0",
+ "notification": {
+ "success": {
+ "title": "crwdns6716:0crwdne6716:0",
+ "message": "crwdns6718:0crwdne6718:0"
+ },
+ "error": {
+ "title": "crwdns6720:0crwdne6720:0",
+ "message": "crwdns6722:0crwdne6722:0"
+ }
+ }
+ }
+ },
+ "error": {
+ "internalServerError": "crwdns6724:0crwdne6724:0"
+ }
+ },
+ "permission": {
+ "title": "crwdns6726:0crwdne6726:0",
+ "userSelect": {
+ "title": "crwdns6728:0crwdne6728:0"
+ },
+ "groupSelect": {
+ "title": "crwdns6730:0crwdne6730:0"
+ },
+ "tab": {
+ "user": "crwdns6732:0crwdne6732:0",
+ "group": "crwdns6734:0crwdne6734:0",
+ "inherited": "crwdns6736:0crwdne6736:0"
+ },
+ "field": {
+ "user": {
+ "label": "crwdns6738:0crwdne6738:0"
+ },
+ "group": {
+ "label": "crwdns6740:0crwdne6740:0"
+ },
+ "permission": {
+ "label": "crwdns6742:0crwdne6742:0"
+ }
+ },
+ "action": {
+ "saveUser": "crwdns6744:0crwdne6744:0",
+ "saveGroup": "crwdns6746:0crwdne6746:0"
+ }
+ },
+ "navigationStructure": {
+ "manage": {
+ "label": "crwdns6748:0crwdne6748:0",
+ "boards": {
+ "label": "crwdns6750:0crwdne6750:0"
+ },
+ "integrations": {
+ "label": "crwdns6752:0crwdne6752:0",
+ "edit": {
+ "label": "crwdns6754:0crwdne6754:0"
+ },
+ "new": {
+ "label": "crwdns6756:0crwdne6756:0"
+ }
+ },
+ "search-engines": {
+ "label": "crwdns6758:0crwdne6758:0",
+ "new": {
+ "label": "crwdns6760:0crwdne6760:0"
+ },
+ "edit": {
+ "label": "crwdns6762:0crwdne6762:0"
+ }
+ },
+ "medias": {
+ "label": "crwdns6764:0crwdne6764:0"
+ },
+ "apps": {
+ "label": "crwdns6766:0crwdne6766:0",
+ "new": {
+ "label": "crwdns6768:0crwdne6768:0"
+ },
+ "edit": {
+ "label": "crwdns6770:0crwdne6770:0"
+ }
+ },
+ "users": {
+ "label": "crwdns6772:0crwdne6772:0",
+ "create": {
+ "label": "crwdns6774:0crwdne6774:0"
+ },
+ "general": "crwdns6776:0crwdne6776:0",
+ "security": "crwdns6778:0crwdne6778:0",
+ "board": "crwdns6780:0crwdne6780:0",
+ "groups": {
+ "label": "crwdns6782:0crwdne6782:0"
+ },
+ "invites": {
+ "label": "crwdns6784:0crwdne6784:0"
+ }
+ },
+ "tools": {
+ "label": "crwdns6786:0crwdne6786:0",
+ "docker": {
+ "label": "crwdns6788:0crwdne6788:0"
+ },
+ "logs": {
+ "label": "crwdns6790:0crwdne6790:0"
+ }
+ },
+ "settings": {
+ "label": "crwdns6792:0crwdne6792:0"
+ },
+ "about": {
+ "label": "crwdns6794:0crwdne6794:0"
+ }
+ }
+ },
+ "search": {
+ "placeholder": "crwdns6796:0crwdne6796:0",
+ "nothingFound": "crwdns6798:0crwdne6798:0",
+ "error": {
+ "fetch": "crwdns6800:0crwdne6800:0"
+ },
+ "mode": {
+ "appIntegrationBoard": {
+ "help": "crwdns6802:0crwdne6802:0",
+ "group": {
+ "app": {
+ "title": "crwdns6804:0crwdne6804:0",
+ "children": {
+ "action": {
+ "open": {
+ "label": "crwdns6806:0crwdne6806:0"
+ },
+ "edit": {
+ "label": "crwdns6808:0crwdne6808:0"
+ }
+ },
+ "detail": {
+ "title": "crwdns6810:0crwdne6810:0"
+ }
+ }
+ },
+ "board": {
+ "title": "crwdns6812:0crwdne6812:0",
+ "children": {
+ "action": {
+ "open": {
+ "label": "crwdns6814:0crwdne6814:0"
+ },
+ "homeBoard": {
+ "label": "crwdns6816:0crwdne6816:0"
+ },
+ "settings": {
+ "label": "crwdns6818:0crwdne6818:0"
+ }
+ },
+ "detail": {
+ "title": "crwdns6820:0crwdne6820:0"
+ }
+ }
+ },
+ "integration": {
+ "title": "crwdns6822:0crwdne6822:0"
+ }
+ }
+ },
+ "command": {
+ "help": "crwdns6824:0crwdne6824:0",
+ "group": {
+ "localCommand": {
+ "title": "crwdns6826:0crwdne6826:0"
+ },
+ "globalCommand": {
+ "title": "crwdns6828:0crwdne6828:0",
+ "option": {
+ "colorScheme": {
+ "light": "crwdns6830:0crwdne6830:0",
+ "dark": "crwdns6832:0crwdne6832:0"
+ },
+ "language": {
+ "label": "crwdns6834:0crwdne6834:0",
+ "children": {
+ "detail": {
+ "title": "crwdns6836:0crwdne6836:0"
+ }
+ }
+ },
+ "newBoard": {
+ "label": "crwdns6838:0crwdne6838:0"
+ },
+ "importBoard": {
+ "label": "crwdns6840:0crwdne6840:0"
+ },
+ "newApp": {
+ "label": "crwdns6842:0crwdne6842:0"
+ },
+ "newIntegration": {
+ "label": "crwdns6844:0crwdne6844:0",
+ "children": {
+ "detail": {
+ "title": "crwdns6846:0crwdne6846:0"
+ }
+ }
+ },
+ "newUser": {
+ "label": "crwdns6848:0crwdne6848:0"
+ },
+ "newInvite": {
+ "label": "crwdns6850:0crwdne6850:0"
+ },
+ "newGroup": {
+ "label": "crwdns6852:0crwdne6852:0"
+ }
+ }
+ }
+ }
+ },
+ "external": {
+ "help": "crwdns6854:0crwdne6854:0",
+ "group": {
+ "searchEngine": {
+ "title": "crwdns6856:0crwdne6856:0",
+ "children": {
+ "action": {
+ "search": {
+ "label": "crwdns6858:0{name}crwdne6858:0"
+ }
+ },
+ "detail": {
+ "title": "crwdns6860:0crwdne6860:0"
+ },
+ "searchResults": {
+ "title": "crwdns6862:0crwdne6862:0"
+ }
+ },
+ "option": {
+ "google": {
+ "name": "crwdns6864:0crwdne6864:0",
+ "description": "crwdns6866:0crwdne6866:0"
+ },
+ "bing": {
+ "name": "crwdns6868:0crwdne6868:0",
+ "description": "crwdns6870:0crwdne6870:0"
+ },
+ "duckduckgo": {
+ "name": "crwdns6872:0crwdne6872:0",
+ "description": "crwdns6874:0crwdne6874:0"
+ },
+ "torrent": {
+ "name": "crwdns6876:0crwdne6876:0",
+ "description": "crwdns6878:0crwdne6878:0"
+ },
+ "youTube": {
+ "name": "crwdns6880:0crwdne6880:0",
+ "description": "crwdns6882:0crwdne6882:0"
+ }
+ }
+ }
+ }
+ },
+ "help": {
+ "group": {
+ "mode": {
+ "title": "crwdns6884:0crwdne6884:0"
+ },
+ "help": {
+ "title": "crwdns6886:0crwdne6886:0",
+ "option": {
+ "documentation": {
+ "label": "crwdns6888:0crwdne6888:0"
+ },
+ "submitIssue": {
+ "label": "crwdns6890:0crwdne6890:0"
+ },
+ "discord": {
+ "label": "crwdns6892:0crwdne6892:0"
+ }
+ }
+ }
+ }
+ },
+ "home": {
+ "group": {
+ "local": {
+ "title": "crwdns6894:0crwdne6894:0"
+ }
+ }
+ },
+ "page": {
+ "help": "crwdns6896:0crwdne6896:0",
+ "group": {
+ "page": {
+ "title": "crwdns6898:0crwdne6898:0",
+ "option": {
+ "manageHome": {
+ "label": "crwdns6900:0crwdne6900:0"
+ },
+ "manageBoard": {
+ "label": "crwdns6902:0crwdne6902:0"
+ },
+ "manageApp": {
+ "label": "crwdns6904:0crwdne6904:0"
+ },
+ "manageIntegration": {
+ "label": "crwdns6906:0crwdne6906:0"
+ },
+ "manageSearchEngine": {
+ "label": "crwdns6908:0crwdne6908:0"
+ },
+ "manageMedia": {
+ "label": "crwdns6910:0crwdne6910:0"
+ },
+ "manageUser": {
+ "label": "crwdns6912:0crwdne6912:0"
+ },
+ "manageInvite": {
+ "label": "crwdns6914:0crwdne6914:0"
+ },
+ "manageGroup": {
+ "label": "crwdns6916:0crwdne6916:0"
+ },
+ "manageDocker": {
+ "label": "crwdns6918:0crwdne6918:0"
+ },
+ "manageApi": {
+ "label": "crwdns6920:0crwdne6920:0"
+ },
+ "manageLog": {
+ "label": "crwdns6922:0crwdne6922:0"
+ },
+ "manageTask": {
+ "label": "crwdns6924:0crwdne6924:0"
+ },
+ "manageSettings": {
+ "label": "crwdns6926:0crwdne6926:0"
+ },
+ "about": {
+ "label": "crwdns6928:0crwdne6928:0"
+ },
+ "homeBoard": {
+ "label": "crwdns6930:0crwdne6930:0"
+ },
+ "preferences": {
+ "label": "crwdns6932:0crwdne6932:0"
+ }
+ }
+ }
+ }
+ },
+ "userGroup": {
+ "help": "crwdns6934:0crwdne6934:0",
+ "group": {
+ "user": {
+ "title": "crwdns6936:0crwdne6936:0",
+ "children": {
+ "action": {
+ "detail": {
+ "label": "crwdns6938:0crwdne6938:0"
+ }
+ },
+ "detail": {
+ "title": "crwdns6940:0crwdne6940:0"
+ }
+ }
+ },
+ "group": {
+ "title": "crwdns6942:0crwdne6942:0",
+ "children": {
+ "action": {
+ "detail": {
+ "label": "crwdns6944:0crwdne6944:0"
+ },
+ "manageMember": {
+ "label": "crwdns6946:0crwdne6946:0"
+ },
+ "managePermission": {
+ "label": "crwdns6948:0crwdne6948:0"
+ }
+ },
+ "detail": {
+ "title": "crwdns6950:0crwdne6950:0"
+ }
+ }
+ }
+ }
+ }
+ },
+ "engine": {
+ "search": "crwdns6952:0crwdne6952:0",
+ "field": {
+ "name": {
+ "label": "crwdns6954:0crwdne6954:0"
+ },
+ "short": {
+ "label": "crwdns6956:0crwdne6956:0"
+ },
+ "urlTemplate": {
+ "label": "crwdns6958:0crwdne6958:0"
+ },
+ "description": {
+ "label": "crwdns6960:0crwdne6960:0"
+ }
+ },
+ "page": {
+ "list": {
+ "title": "crwdns6962:0crwdne6962:0",
+ "noResults": {
+ "title": "crwdns6964:0crwdne6964:0",
+ "action": "crwdns6966:0crwdne6966:0"
+ },
+ "interactive": "crwdns6968:0crwdne6968:0"
+ },
+ "create": {
+ "title": "crwdns6970:0crwdne6970:0",
+ "notification": {
+ "success": {
+ "title": "crwdns6972:0crwdne6972:0",
+ "message": "crwdns6974:0crwdne6974:0"
+ },
+ "error": {
+ "title": "crwdns6976:0crwdne6976:0",
+ "message": "crwdns6978:0crwdne6978:0"
+ }
+ }
+ },
+ "edit": {
+ "title": "crwdns6980:0crwdne6980:0",
+ "notification": {
+ "success": {
+ "title": "crwdns6982:0crwdne6982:0",
+ "message": "crwdns6984:0crwdne6984:0"
+ },
+ "error": {
+ "title": "crwdns6986:0crwdne6986:0",
+ "message": "crwdns6988:0crwdne6988:0"
+ }
+ },
+ "configControl": "crwdns6990:0crwdne6990:0",
+ "searchEngineType": {
+ "generic": "crwdns6992:0crwdne6992:0",
+ "fromIntegration": "crwdns6994:0crwdne6994:0"
+ }
+ },
+ "delete": {
+ "title": "crwdns6996:0crwdne6996:0",
+ "message": "crwdns6998:0{name}crwdne6998:0",
+ "notification": {
+ "success": {
+ "title": "crwdns7000:0crwdne7000:0",
+ "message": "crwdns7002:0crwdne7002:0"
+ },
+ "error": {
+ "title": "crwdns7004:0crwdne7004:0",
+ "message": "crwdns7006:0crwdne7006:0"
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/packages/translation/src/lang/cs.json b/packages/translation/src/lang/cs.json
index c65569394..3fc6d207c 100644
--- a/packages/translation/src/lang/cs.json
+++ b/packages/translation/src/lang/cs.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Aplikace",
+ "boards": "Plochy",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Token",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Nastavení",
"subtitle": ""
},
"finish": {
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Aplikace",
"item": {
"create": {
"label": "",
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Rozložení",
"option": {
"row": {
- "label": ""
+ "label": "Horizontální"
},
"column": {
- "label": ""
+ "label": "Vertikální"
},
"grid": {
"label": ""
@@ -1213,11 +1213,11 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "Vložte jakýkoli obsah z internetu. Některé webové stránky mohou omezit přístup.",
"option": {
"embedUrl": {
- "label": ""
+ "label": "Embed URL"
},
"allowFullScreen": {
"label": "Povolit celou obrazovku"
@@ -1648,55 +1648,55 @@
"description": "",
"option": {
"defaultView": {
- "label": ""
+ "label": "Výchozí zobrazení"
},
"queuePageSize": {
"label": ""
}
},
"tab": {
- "workers": "",
- "queue": "",
- "statistics": ""
+ "workers": "Stroje",
+ "queue": "Fronta",
+ "statistics": "Statistiky"
},
"currentIndex": "",
"healthCheck": {
"title": "",
- "queued": "",
+ "queued": "Ve frontě",
"status": {
- "healthy": "",
- "unhealthy": ""
+ "healthy": "V pořádku",
+ "unhealthy": "Nastal problém"
}
},
"panel": {
"statistics": {
- "empty": "",
- "transcodes": "",
+ "empty": "Prázdné",
+ "transcodes": "Překódování",
"transcodesCount": "",
"healthChecksCount": "",
"filesCount": "",
"savedSpace": "",
"healthChecks": "",
- "videoCodecs": "",
- "videoContainers": "",
- "videoResolutions": ""
+ "videoCodecs": "Kodeky",
+ "videoContainers": "Kontejnery",
+ "videoResolutions": "Rozlišení"
},
"workers": {
- "empty": "",
+ "empty": "Prázdné",
"table": {
- "file": "",
- "eta": "",
- "progress": "",
- "transcode": "",
+ "file": "Soubor",
+ "eta": "Odhadovaný čas",
+ "progress": "Postup",
+ "transcode": "Překódovat",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Prázdné",
"table": {
- "file": "",
- "size": "",
- "transcode": "",
+ "file": "Soubor",
+ "size": "Velikost",
+ "transcode": "Překódovat",
"healthCheck": ""
}
}
@@ -2042,9 +2042,9 @@
"tools": {
"label": "Nástroje",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2199,7 +2199,7 @@
},
"field": {
"id": {
- "label": ""
+ "label": "ID"
},
"creator": {
"label": "Vytvořil/a"
@@ -2208,7 +2208,7 @@
"label": "Datum konce platnosti"
},
"token": {
- "label": ""
+ "label": "Token"
}
}
}
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "Obecné",
- "owner": "",
+ "owner": "Vlastník",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Plochy",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Vzhled",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2390,7 +2390,7 @@
},
"table": {
"header": {
- "id": "",
+ "id": "ID",
"createdBy": ""
}
}
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Nástroje",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
diff --git a/packages/translation/src/lang/da.json b/packages/translation/src/lang/da.json
index d8398ec91..a9f1e3519 100644
--- a/packages/translation/src/lang/da.json
+++ b/packages/translation/src/lang/da.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Apps",
+ "boards": "Boards",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Token",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Indstillinger",
"subtitle": ""
},
"finish": {
@@ -293,7 +293,7 @@
},
"permission": {
"admin": {
- "title": "",
+ "title": "Admin",
"item": {
"admin": {
"label": "",
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Apps",
"item": {
"create": {
"label": "",
@@ -323,7 +323,7 @@
}
},
"board": {
- "title": "",
+ "title": "Boards",
"item": {
"create": {
"label": "",
@@ -491,7 +491,7 @@
"app": {
"page": {
"list": {
- "title": "",
+ "title": "Apps",
"noResults": {
"title": "",
"action": ""
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Layout",
"option": {
"row": {
- "label": ""
+ "label": "Horisontal"
},
"column": {
- "label": ""
+ "label": "Vertikal"
},
"grid": {
"label": ""
@@ -1050,7 +1050,7 @@
"description": "",
"option": {
"layout": {
- "label": "",
+ "label": "Layout",
"option": {
"row": {
"label": "Horisontal"
@@ -1083,7 +1083,7 @@
"description": "Kontroller PiHole eller AdGuard fra dit dashboard",
"option": {
"layout": {
- "label": "",
+ "label": "Layout",
"option": {
"row": {
"label": "Horisontal"
@@ -1183,7 +1183,7 @@
"checkList": "Tjekliste",
"increaseIndent": "Forøg indrykning",
"decreaseIndent": "Formindsk indrykning",
- "link": "",
+ "link": "Link",
"unlink": "Fjern link",
"image": "Integrer billede",
"addTable": "Tilføj tabel",
@@ -1432,11 +1432,11 @@
"option": {}
},
"video": {
- "name": "",
+ "name": "Video Stream",
"description": "Indlejr en video stream eller video fra et kamera eller et website",
"option": {
"feedUrl": {
- "label": ""
+ "label": "Feed URL"
},
"hasAutoPlay": {
"label": "Auto-afspilning",
@@ -1511,7 +1511,7 @@
"detailsTitle": ""
},
"downSpeed": {
- "columnTitle": "",
+ "columnTitle": "Down",
"detailsTitle": "Download hastighed"
},
"index": {
@@ -1522,7 +1522,7 @@
"columnTitle": ""
},
"integration": {
- "columnTitle": ""
+ "columnTitle": "Integration"
},
"name": {
"columnTitle": ""
@@ -1560,7 +1560,7 @@
"detailsTitle": ""
},
"upSpeed": {
- "columnTitle": "",
+ "columnTitle": "Up",
"detailsTitle": ""
}
},
@@ -1635,7 +1635,7 @@
"available": "",
"tv": "TV-anmodninger",
"movie": "Film anmodninger",
- "total": ""
+ "total": "Total"
},
"users": {
"main": "Topbrugere",
@@ -1648,55 +1648,55 @@
"description": "",
"option": {
"defaultView": {
- "label": ""
+ "label": "Standardvisning"
},
"queuePageSize": {
"label": ""
}
},
"tab": {
- "workers": "",
- "queue": "",
- "statistics": ""
+ "workers": "Arbejdere",
+ "queue": "Kø",
+ "statistics": "Statistikker"
},
"currentIndex": "",
"healthCheck": {
"title": "",
- "queued": "",
+ "queued": "I kø",
"status": {
- "healthy": "",
- "unhealthy": ""
+ "healthy": "Sund",
+ "unhealthy": "Usund"
}
},
"panel": {
"statistics": {
- "empty": "",
- "transcodes": "",
+ "empty": "Tom",
+ "transcodes": "Transkoder",
"transcodesCount": "",
"healthChecksCount": "",
"filesCount": "",
"savedSpace": "",
"healthChecks": "",
- "videoCodecs": "",
- "videoContainers": "",
- "videoResolutions": ""
+ "videoCodecs": "Kodeks",
+ "videoContainers": "Containere",
+ "videoResolutions": "Opløsninger"
},
"workers": {
- "empty": "",
+ "empty": "Tom",
"table": {
- "file": "",
- "eta": "",
- "progress": "",
- "transcode": "",
+ "file": "Fil",
+ "eta": "ETA",
+ "progress": "Fremskridt",
+ "transcode": "Transkod",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Tom",
"table": {
- "file": "",
- "size": "",
- "transcode": "",
+ "file": "Fil",
+ "size": "Størrelse",
+ "transcode": "Transkod",
"healthCheck": ""
}
}
@@ -1766,7 +1766,7 @@
"invalidError": ""
},
"apps": {
- "label": "",
+ "label": "Apps",
"avoidDuplicates": {
"label": "",
"description": ""
@@ -1907,7 +1907,7 @@
"unrecognizedLink": ""
},
"layout": {
- "title": ""
+ "title": "Layout"
},
"background": {
"title": "Baggrund"
@@ -2026,8 +2026,8 @@
"navbar": {
"items": {
"home": "Hjem",
- "boards": "",
- "apps": "",
+ "boards": "Boards",
+ "apps": "Apps",
"integrations": "",
"searchEngies": "",
"medias": "",
@@ -2042,9 +2042,9 @@
"tools": {
"label": "Værktøjer",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2064,15 +2064,15 @@
"page": {
"home": {
"statistic": {
- "board": "",
+ "board": "Boards",
"user": "Brugere",
"invite": "Invitationer",
"integration": "",
- "app": "",
+ "app": "Apps",
"group": ""
},
"statisticLabel": {
- "boards": "",
+ "boards": "Boards",
"resources": "",
"authentication": "",
"authorization": ""
@@ -2139,7 +2139,7 @@
"title": "Sikkerhed"
},
"board": {
- "title": ""
+ "title": "Boards"
}
},
"list": {
@@ -2199,7 +2199,7 @@
},
"field": {
"id": {
- "label": ""
+ "label": "ID"
},
"creator": {
"label": "Skaber"
@@ -2208,7 +2208,7 @@
"label": "Udløbsdato"
},
"token": {
- "label": ""
+ "label": "Token"
}
}
}
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "Generelt",
- "owner": "",
+ "owner": "Ejer",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Boards",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Udseende",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2390,7 +2390,7 @@
},
"table": {
"header": {
- "id": "",
+ "id": "ID",
"createdBy": ""
}
}
@@ -2442,7 +2442,7 @@
}
},
"containerImage": {
- "label": ""
+ "label": "Image"
},
"ports": {
"label": "Porte"
@@ -2450,7 +2450,7 @@
},
"action": {
"start": {
- "label": "",
+ "label": "Start",
"notification": {
"success": {
"title": "",
@@ -2463,7 +2463,7 @@
}
},
"stop": {
- "label": "",
+ "label": "Stop",
"notification": {
"success": {
"title": "",
@@ -2552,7 +2552,7 @@
"manage": {
"label": "Administrer",
"boards": {
- "label": ""
+ "label": "Boards"
},
"integrations": {
"label": "",
@@ -2576,7 +2576,7 @@
"label": ""
},
"apps": {
- "label": "",
+ "label": "Apps",
"new": {
"label": ""
},
@@ -2591,7 +2591,7 @@
},
"general": "Generelt",
"security": "Sikkerhed",
- "board": "",
+ "board": "Boards",
"groups": {
"label": ""
},
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Værktøjer",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
@@ -2627,7 +2627,7 @@
"help": "",
"group": {
"app": {
- "title": "",
+ "title": "Apps",
"children": {
"action": {
"open": {
@@ -2643,7 +2643,7 @@
}
},
"board": {
- "title": "",
+ "title": "Boards",
"children": {
"action": {
"open": {
@@ -2749,7 +2749,7 @@
"description": ""
},
"torrent": {
- "name": "",
+ "name": "Torrents",
"description": ""
},
"youTube": {
diff --git a/packages/translation/src/lang/de.json b/packages/translation/src/lang/de.json
index 1346b70fe..b1e56881f 100644
--- a/packages/translation/src/lang/de.json
+++ b/packages/translation/src/lang/de.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Apps",
+ "boards": "Boards",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Token",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Einstellungen",
"subtitle": ""
},
"finish": {
@@ -124,7 +124,7 @@
},
"field": {
"email": {
- "label": "",
+ "label": "E-Mail",
"verified": "Verifiziert"
},
"username": {
@@ -288,12 +288,12 @@
"name": "",
"search": "",
"field": {
- "name": "",
+ "name": "Name",
"members": ""
},
"permission": {
"admin": {
- "title": "",
+ "title": "Admin",
"item": {
"admin": {
"label": "",
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Apps",
"item": {
"create": {
"label": "",
@@ -323,7 +323,7 @@
}
},
"board": {
- "title": "",
+ "title": "Boards",
"item": {
"create": {
"label": "",
@@ -491,7 +491,7 @@
"app": {
"page": {
"list": {
- "title": "",
+ "title": "Apps",
"noResults": {
"title": "",
"action": ""
@@ -540,7 +540,7 @@
},
"field": {
"name": {
- "label": ""
+ "label": "Name"
},
"description": {
"label": ""
@@ -608,7 +608,7 @@
},
"field": {
"name": {
- "label": ""
+ "label": "Name"
},
"url": {
"label": ""
@@ -731,7 +731,7 @@
"plural": "",
"search": "",
"field": {
- "name": "",
+ "name": "Name",
"size": "Größe",
"creator": "Ersteller"
},
@@ -903,7 +903,7 @@
"category": {
"field": {
"name": {
- "label": ""
+ "label": "Name"
}
},
"action": {
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Ansicht",
"option": {
"row": {
- "label": ""
+ "label": "Horizontal"
},
"column": {
- "label": ""
+ "label": "Vertikal"
},
"grid": {
"label": ""
@@ -1053,7 +1053,7 @@
"label": "Ansicht",
"option": {
"row": {
- "label": ""
+ "label": "Horizontal"
},
"column": {
"label": "Vertikal"
@@ -1086,7 +1086,7 @@
"label": "Ansicht",
"option": {
"row": {
- "label": ""
+ "label": "Horizontal"
},
"column": {
"label": "Vertikal"
@@ -1172,7 +1172,7 @@
"underline": "Unterstrichen",
"colorText": "Farbiger Text",
"colorHighlight": "Farbig hervorgehobener Text",
- "code": "",
+ "code": "Code",
"clear": "Formatierung entfernen",
"heading": "Überschrift {level}",
"align": "Text ausrichten: {position}",
@@ -1183,7 +1183,7 @@
"checkList": "Checkliste",
"increaseIndent": "Einzug vergrößern",
"decreaseIndent": "Einzug verkleinern",
- "link": "",
+ "link": "Link",
"unlink": "Link entfernen",
"image": "Bild einbetten",
"addTable": "Tabelle hinzufügen",
@@ -1213,7 +1213,7 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "Einbetten von Inhalten aus dem Internet. Einige Websites können den Zugriff einschränken.",
"option": {
"embedUrl": {
@@ -1511,7 +1511,7 @@
"detailsTitle": ""
},
"downSpeed": {
- "columnTitle": "",
+ "columnTitle": "Down",
"detailsTitle": "Download Geschwindigkeit"
},
"index": {
@@ -1522,7 +1522,7 @@
"columnTitle": ""
},
"integration": {
- "columnTitle": ""
+ "columnTitle": "Integration"
},
"name": {
"columnTitle": ""
@@ -1560,7 +1560,7 @@
"detailsTitle": ""
},
"upSpeed": {
- "columnTitle": "",
+ "columnTitle": "Up",
"detailsTitle": ""
}
},
@@ -1648,55 +1648,55 @@
"description": "",
"option": {
"defaultView": {
- "label": ""
+ "label": "Standardansicht"
},
"queuePageSize": {
"label": ""
}
},
"tab": {
- "workers": "",
- "queue": "",
- "statistics": ""
+ "workers": "Workers",
+ "queue": "Warteschlange",
+ "statistics": "Statistiken"
},
"currentIndex": "",
"healthCheck": {
"title": "",
- "queued": "",
+ "queued": "In der Warteschlange",
"status": {
- "healthy": "",
- "unhealthy": ""
+ "healthy": "Gesund",
+ "unhealthy": "Fehlerhaft"
}
},
"panel": {
"statistics": {
- "empty": "",
- "transcodes": "",
+ "empty": "Leer",
+ "transcodes": "Transkodieren",
"transcodesCount": "",
"healthChecksCount": "",
"filesCount": "",
"savedSpace": "",
"healthChecks": "",
- "videoCodecs": "",
- "videoContainers": "",
- "videoResolutions": ""
+ "videoCodecs": "Codecs",
+ "videoContainers": "Container",
+ "videoResolutions": "Auflösungen"
},
"workers": {
- "empty": "",
+ "empty": "Leer",
"table": {
- "file": "",
- "eta": "",
- "progress": "",
- "transcode": "",
+ "file": "Datei",
+ "eta": "Voraussichtlicher Abschluss",
+ "progress": "Fortschritt",
+ "transcode": "Transkodieren",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Leer",
"table": {
- "file": "",
- "size": "",
- "transcode": "",
+ "file": "Datei",
+ "size": "Größe",
+ "transcode": "Transkodieren",
"healthCheck": ""
}
}
@@ -1766,7 +1766,7 @@
"invalidError": ""
},
"apps": {
- "label": "",
+ "label": "Apps",
"avoidDuplicates": {
"label": "",
"description": ""
@@ -1889,7 +1889,7 @@
"label": ""
},
"name": {
- "label": ""
+ "label": "Name"
},
"isPublic": {
"label": "Öffentlich sichtbar",
@@ -2026,8 +2026,8 @@
"navbar": {
"items": {
"home": "Startseite",
- "boards": "",
- "apps": "",
+ "boards": "Boards",
+ "apps": "Apps",
"integrations": "",
"searchEngies": "",
"medias": "",
@@ -2042,9 +2042,9 @@
"tools": {
"label": "Werkzeuge",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2054,7 +2054,7 @@
"items": {
"documentation": "Dokumentation",
"submitIssue": "",
- "discord": "",
+ "discord": "Community Discord",
"sourceCode": ""
}
},
@@ -2064,15 +2064,15 @@
"page": {
"home": {
"statistic": {
- "board": "",
+ "board": "Boards",
"user": "Benutzer",
"invite": "Einladungen",
"integration": "",
- "app": "",
+ "app": "Apps",
"group": ""
},
"statisticLabel": {
- "boards": "",
+ "boards": "Boards",
"resources": "",
"authentication": "",
"authorization": ""
@@ -2113,7 +2113,7 @@
"createBoard": {
"field": {
"name": {
- "label": ""
+ "label": "Name"
}
}
}
@@ -2139,7 +2139,7 @@
"title": "Sicherheit"
},
"board": {
- "title": ""
+ "title": "Boards"
}
},
"list": {
@@ -2199,7 +2199,7 @@
},
"field": {
"id": {
- "label": ""
+ "label": "ID"
},
"creator": {
"label": "Ersteller"
@@ -2208,7 +2208,7 @@
"label": "Ablaufdatum"
},
"token": {
- "label": ""
+ "label": "Token"
}
}
}
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "Allgemein",
- "owner": "",
+ "owner": "Eigentümer",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Boards",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Aussehen",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2390,7 +2390,7 @@
},
"table": {
"header": {
- "id": "",
+ "id": "ID",
"createdBy": ""
}
}
@@ -2427,7 +2427,7 @@
},
"field": {
"name": {
- "label": ""
+ "label": "Name"
},
"state": {
"label": "Staat",
@@ -2442,10 +2442,10 @@
}
},
"containerImage": {
- "label": ""
+ "label": "Image"
},
"ports": {
- "label": ""
+ "label": "Ports"
}
},
"action": {
@@ -2552,7 +2552,7 @@
"manage": {
"label": "Verwalten",
"boards": {
- "label": ""
+ "label": "Boards"
},
"integrations": {
"label": "",
@@ -2576,7 +2576,7 @@
"label": ""
},
"apps": {
- "label": "",
+ "label": "Apps",
"new": {
"label": ""
},
@@ -2591,7 +2591,7 @@
},
"general": "Allgemein",
"security": "Sicherheit",
- "board": "",
+ "board": "Boards",
"groups": {
"label": ""
},
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Werkzeuge",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
@@ -2627,7 +2627,7 @@
"help": "",
"group": {
"app": {
- "title": "",
+ "title": "Apps",
"children": {
"action": {
"open": {
@@ -2643,7 +2643,7 @@
}
},
"board": {
- "title": "",
+ "title": "Boards",
"children": {
"action": {
"open": {
@@ -2749,7 +2749,7 @@
"description": ""
},
"torrent": {
- "name": "",
+ "name": "Torrents",
"description": ""
},
"youTube": {
@@ -2775,7 +2775,7 @@
"label": ""
},
"discord": {
- "label": ""
+ "label": "Community Discord"
}
}
}
@@ -2891,7 +2891,7 @@
"search": "",
"field": {
"name": {
- "label": ""
+ "label": "Name"
},
"short": {
"label": ""
diff --git a/packages/translation/src/lang/el.json b/packages/translation/src/lang/el.json
index 4abfc57ad..a9e0c270f 100644
--- a/packages/translation/src/lang/el.json
+++ b/packages/translation/src/lang/el.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Εφαρμογές",
+ "boards": "Πίνακες",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Token",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Ρυθμίσεις",
"subtitle": ""
},
"finish": {
@@ -124,7 +124,7 @@
},
"field": {
"email": {
- "label": "",
+ "label": "E-Mail",
"verified": ""
},
"username": {
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Εφαρμογές",
"item": {
"create": {
"label": "",
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Διάταξη",
"option": {
"row": {
- "label": ""
+ "label": "Οριζόντια"
},
"column": {
- "label": ""
+ "label": "Κατακόρυφα"
},
"grid": {
"label": ""
@@ -1648,55 +1648,55 @@
"description": "",
"option": {
"defaultView": {
- "label": ""
+ "label": "Προεπιλεγμένη προβολή"
},
"queuePageSize": {
"label": ""
}
},
"tab": {
- "workers": "",
- "queue": "",
- "statistics": ""
+ "workers": "Εργάτες",
+ "queue": "Ουρά",
+ "statistics": "Στατιστικά"
},
"currentIndex": "",
"healthCheck": {
"title": "",
- "queued": "",
+ "queued": "Στην ουρά",
"status": {
- "healthy": "",
- "unhealthy": ""
+ "healthy": "Υγιές",
+ "unhealthy": "Μη υγιές"
}
},
"panel": {
"statistics": {
- "empty": "",
- "transcodes": "",
+ "empty": "Άδειο",
+ "transcodes": "Μετακωδικοποιήσεις",
"transcodesCount": "",
"healthChecksCount": "",
"filesCount": "",
"savedSpace": "",
"healthChecks": "",
- "videoCodecs": "",
- "videoContainers": "",
- "videoResolutions": ""
+ "videoCodecs": "Κωδικοποιητές",
+ "videoContainers": "Containers",
+ "videoResolutions": "Αναλύσεις"
},
"workers": {
- "empty": "",
+ "empty": "Άδειο",
"table": {
- "file": "",
- "eta": "",
- "progress": "",
- "transcode": "",
+ "file": "Αρχείο",
+ "eta": "Εκτιμώμενος χρόνος αναμονής",
+ "progress": "Πρόοδος",
+ "transcode": "Μετακωδικοποίηση",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Άδειο",
"table": {
- "file": "",
- "size": "",
- "transcode": "",
+ "file": "Αρχείο",
+ "size": "Μέγεθος",
+ "transcode": "Μετακωδικοποίηση",
"healthCheck": ""
}
}
@@ -2042,9 +2042,9 @@
"tools": {
"label": "Εργαλεία",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2208,7 +2208,7 @@
"label": "Ημερομηνία λήξης"
},
"token": {
- "label": ""
+ "label": "Token"
}
}
}
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "Γενικά",
- "owner": "",
+ "owner": "Ιδιοκτήτης",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Πίνακες",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Εμφάνιση",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2419,7 +2419,7 @@
}
},
"docker": {
- "title": "",
+ "title": "Containers",
"table": {
"updated": "",
"search": "",
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Εργαλεία",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
diff --git a/packages/translation/src/lang/es.json b/packages/translation/src/lang/es.json
index e1c08f864..f9c3afb22 100644
--- a/packages/translation/src/lang/es.json
+++ b/packages/translation/src/lang/es.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Aplicaciones",
+ "boards": "Tableros",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Token",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Ajustes",
"subtitle": ""
},
"finish": {
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Aplicaciones",
"item": {
"create": {
"label": "",
@@ -767,7 +767,7 @@
},
"common": {
"beta": "",
- "error": "",
+ "error": "Error",
"action": {
"add": "Añadir",
"apply": "Aplicar",
@@ -806,8 +806,8 @@
"min": "",
"max": "",
"days": "",
- "hours": "",
- "minutes": ""
+ "hours": "Horas",
+ "minutes": "Minutos"
},
"notification": {
"create": {
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Diseño",
"option": {
"row": {
- "label": ""
+ "label": "Horizontal"
},
"column": {
- "label": ""
+ "label": "Vertical"
},
"grid": {
"label": ""
@@ -1053,10 +1053,10 @@
"label": "Diseño",
"option": {
"row": {
- "label": ""
+ "label": "Horizontal"
},
"column": {
- "label": ""
+ "label": "Vertical"
},
"grid": {
"label": ""
@@ -1086,10 +1086,10 @@
"label": "Diseño",
"option": {
"row": {
- "label": ""
+ "label": "Horizontal"
},
"column": {
- "label": ""
+ "label": "Vertical"
},
"grid": {
"label": ""
@@ -1107,13 +1107,13 @@
"enableAll": "",
"disableAll": "",
"setTimer": "",
- "set": "",
+ "set": "Establecer",
"enabled": "Activado",
"disabled": "Desactivado",
"processing": "",
"disconnected": "",
- "hours": "",
- "minutes": "",
+ "hours": "Horas",
+ "minutes": "Minutos",
"unlimited": ""
}
},
@@ -1213,7 +1213,7 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "Incrusta cualquier contenido de Internet. Algunos sitios web pueden restringir el acceso.",
"option": {
"embedUrl": {
@@ -1345,15 +1345,15 @@
}
},
"indexerManager": {
- "name": "",
+ "name": "Estado del Administrador de Índices",
"description": "",
"option": {
"openIndexerSiteInNewTab": {
"label": ""
}
},
- "title": "",
- "testAll": "",
+ "title": "Administrador de Índices",
+ "testAll": "Probar todo",
"error": {
"internalServerError": ""
}
@@ -1504,7 +1504,7 @@
},
"added": {
"columnTitle": "",
- "detailsTitle": ""
+ "detailsTitle": "Fecha Agregada"
},
"category": {
"columnTitle": "",
@@ -1532,7 +1532,7 @@
"detailsTitle": ""
},
"ratio": {
- "columnTitle": "",
+ "columnTitle": "Ratio",
"detailsTitle": ""
},
"received": {
@@ -1566,7 +1566,7 @@
},
"states": {
"downloading": "Descargando",
- "queued": "",
+ "queued": "En cola",
"paused": "Pausado",
"completed": "Completado",
"failed": "",
@@ -1635,7 +1635,7 @@
"available": "",
"tv": "Solicitudes de TV",
"movie": "Solicitudes de películas",
- "total": ""
+ "total": "Total"
},
"users": {
"main": "Mejores usuarios",
@@ -1648,55 +1648,55 @@
"description": "",
"option": {
"defaultView": {
- "label": ""
+ "label": "Vista predeterminada"
},
"queuePageSize": {
"label": ""
}
},
"tab": {
- "workers": "",
- "queue": "",
- "statistics": ""
+ "workers": "Trabajadores",
+ "queue": "Cola",
+ "statistics": "Estadísticas"
},
"currentIndex": "",
"healthCheck": {
"title": "",
- "queued": "",
+ "queued": "En cola",
"status": {
- "healthy": "",
- "unhealthy": ""
+ "healthy": "Saludable",
+ "unhealthy": "No saludable"
}
},
"panel": {
"statistics": {
- "empty": "",
- "transcodes": "",
+ "empty": "Vacío",
+ "transcodes": "Transcodificaciones",
"transcodesCount": "",
"healthChecksCount": "",
"filesCount": "",
"savedSpace": "",
"healthChecks": "",
- "videoCodecs": "",
- "videoContainers": "",
- "videoResolutions": ""
+ "videoCodecs": "Códecs",
+ "videoContainers": "Contenedores",
+ "videoResolutions": "Resoluciones"
},
"workers": {
- "empty": "",
+ "empty": "Vacío",
"table": {
- "file": "",
- "eta": "",
- "progress": "",
- "transcode": "",
+ "file": "Archivo",
+ "eta": "Tiempo restante",
+ "progress": "Completado %",
+ "transcode": "Transcodificar",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Vacío",
"table": {
- "file": "",
- "size": "",
- "transcode": "",
+ "file": "Archivo",
+ "size": "Tamaño",
+ "transcode": "Transcodificar",
"healthCheck": ""
}
}
@@ -1903,7 +1903,7 @@
"title": "",
"section": {
"general": {
- "title": "",
+ "title": "General",
"unrecognizedLink": ""
},
"layout": {
@@ -2042,9 +2042,9 @@
"tools": {
"label": "Herramientas",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2127,7 +2127,7 @@
"fieldsDisabledExternalProvider": "",
"setting": {
"general": {
- "title": "",
+ "title": "General",
"item": {
"language": "",
"board": "",
@@ -2199,7 +2199,7 @@
},
"field": {
"id": {
- "label": ""
+ "label": "ID"
},
"creator": {
"label": "Creador"
@@ -2208,7 +2208,7 @@
"label": "Fecha de caducidad"
},
"token": {
- "label": ""
+ "label": "Token"
}
}
}
@@ -2217,8 +2217,8 @@
"back": "",
"setting": {
"general": {
- "title": "",
- "owner": "",
+ "title": "General",
+ "owner": "Propietario",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Tableros",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Apariencia",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2316,7 +2316,7 @@
"status": {
"idle": "",
"running": "En ejecución",
- "error": ""
+ "error": "Error"
},
"job": {
"iconsUpdater": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2390,7 +2390,7 @@
},
"table": {
"header": {
- "id": "",
+ "id": "ID",
"createdBy": ""
}
}
@@ -2419,7 +2419,7 @@
}
},
"docker": {
- "title": "",
+ "title": "Contenedores",
"table": {
"updated": "",
"search": "",
@@ -2589,7 +2589,7 @@
"create": {
"label": "Crear"
},
- "general": "",
+ "general": "General",
"security": "Seguridad",
"board": "Tableros",
"groups": {
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Herramientas",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
@@ -2749,7 +2749,7 @@
"description": ""
},
"torrent": {
- "name": "",
+ "name": "Torrents",
"description": ""
},
"youTube": {
diff --git a/packages/translation/src/lang/fr.json b/packages/translation/src/lang/fr.json
index 2a13c4f43..1cc4ce51a 100644
--- a/packages/translation/src/lang/fr.json
+++ b/packages/translation/src/lang/fr.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Applications",
+ "boards": "Tableaux de bord",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Jeton",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Paramètres",
"subtitle": ""
},
"finish": {
@@ -293,7 +293,7 @@
},
"permission": {
"admin": {
- "title": "",
+ "title": "Admin",
"item": {
"admin": {
"label": "",
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Applications",
"item": {
"create": {
"label": "",
@@ -733,7 +733,7 @@
"field": {
"name": "Nom",
"size": "Taille",
- "creator": "Créé par"
+ "creator": "Créateur"
},
"action": {
"upload": {
@@ -807,7 +807,7 @@
"max": "",
"days": "",
"hours": "Heures",
- "minutes": ""
+ "minutes": "Minutes"
},
"notification": {
"create": {
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Mise en page",
"option": {
"row": {
- "label": ""
+ "label": "Horizontale"
},
"column": {
- "label": ""
+ "label": "Verticale"
},
"grid": {
"label": ""
@@ -1113,7 +1113,7 @@
"processing": "",
"disconnected": "",
"hours": "Heures",
- "minutes": "",
+ "minutes": "Minutes",
"unlimited": ""
}
},
@@ -1172,7 +1172,7 @@
"underline": "Souligner",
"colorText": "Colorer le texte",
"colorHighlight": "Surligner en couleur",
- "code": "",
+ "code": "Code",
"clear": "Effacer la mise en forme",
"heading": "Titre {level}",
"align": "Aligner le texte : {position}",
@@ -1204,7 +1204,7 @@
},
"popover": {
"clearColor": "Enlever la couleur",
- "source": "",
+ "source": "Source",
"widthPlaceholder": "Valeur en % ou en pixels",
"columns": "Colonnes",
"rows": "Lignes",
@@ -1213,7 +1213,7 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "Intégrer n'importe quel contenu à partir d'Internet. Certains sites Web peuvent restreindre l'accès.",
"option": {
"embedUrl": {
@@ -1532,7 +1532,7 @@
"detailsTitle": ""
},
"ratio": {
- "columnTitle": "",
+ "columnTitle": "Ratio",
"detailsTitle": ""
},
"received": {
@@ -1635,7 +1635,7 @@
"available": "",
"tv": "Demandes de séries TV",
"movie": "Demandes de films",
- "total": ""
+ "total": "Total"
},
"users": {
"main": "Principaux utilisateurs",
@@ -1648,55 +1648,55 @@
"description": "",
"option": {
"defaultView": {
- "label": ""
+ "label": "Affichage par défaut"
},
"queuePageSize": {
"label": ""
}
},
"tab": {
- "workers": "",
- "queue": "",
- "statistics": ""
+ "workers": "Travailleurs",
+ "queue": "File d'attente",
+ "statistics": "Statistiques"
},
"currentIndex": "",
"healthCheck": {
"title": "",
- "queued": "",
+ "queued": "En file d’attente",
"status": {
- "healthy": "",
- "unhealthy": ""
+ "healthy": "Sain",
+ "unhealthy": "Dysfonctionnement"
}
},
"panel": {
"statistics": {
- "empty": "",
- "transcodes": "",
+ "empty": "Vide",
+ "transcodes": "Transcodeur",
"transcodesCount": "",
"healthChecksCount": "",
"filesCount": "",
"savedSpace": "",
"healthChecks": "",
- "videoCodecs": "",
- "videoContainers": "",
- "videoResolutions": ""
+ "videoCodecs": "Codecs",
+ "videoContainers": "Conteneurs",
+ "videoResolutions": "Résolutions"
},
"workers": {
- "empty": "",
+ "empty": "Vide",
"table": {
- "file": "",
- "eta": "",
- "progress": "",
- "transcode": "",
+ "file": "Fichier",
+ "eta": "ETA",
+ "progress": "Progrès",
+ "transcode": "Transcodeur",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Vide",
"table": {
- "file": "",
- "size": "",
- "transcode": "",
+ "file": "Fichier",
+ "size": "Taille",
+ "transcode": "Transcodeur",
"healthCheck": ""
}
}
@@ -1892,7 +1892,7 @@
"label": "Nom"
},
"isPublic": {
- "label": "",
+ "label": "Public",
"description": ""
}
},
@@ -2042,9 +2042,9 @@
"tools": {
"label": "Outils",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2052,7 +2052,7 @@
"help": {
"label": "Aide",
"items": {
- "documentation": "",
+ "documentation": "Documentation",
"submitIssue": "",
"discord": "Communauté Discord",
"sourceCode": ""
@@ -2199,10 +2199,10 @@
},
"field": {
"id": {
- "label": ""
+ "label": "ID"
},
"creator": {
- "label": "Créé par"
+ "label": "Créateur"
},
"expirationDate": {
"label": "Date d'expiration"
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "Général",
- "owner": "",
+ "owner": "Propriétaire",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Tableaux de bord",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Apparence",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2315,7 +2315,7 @@
"title": "",
"status": {
"idle": "",
- "running": "",
+ "running": "Running",
"error": "Erreur"
},
"job": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2380,7 +2380,7 @@
},
"tab": {
"documentation": {
- "label": ""
+ "label": "Documentation"
},
"apiKey": {
"label": "",
@@ -2390,7 +2390,7 @@
},
"table": {
"header": {
- "id": "",
+ "id": "ID",
"createdBy": ""
}
}
@@ -2433,7 +2433,7 @@
"label": "État",
"option": {
"created": "Créé",
- "running": "",
+ "running": "Running",
"paused": "En pause",
"restarting": "Redémarrage en cours",
"exited": "",
@@ -2442,10 +2442,10 @@
}
},
"containerImage": {
- "label": ""
+ "label": "Image"
},
"ports": {
- "label": ""
+ "label": "Ports"
}
},
"action": {
@@ -2463,7 +2463,7 @@
}
},
"stop": {
- "label": "",
+ "label": "Stop",
"notification": {
"success": {
"title": "",
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Outils",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
@@ -2749,7 +2749,7 @@
"description": ""
},
"torrent": {
- "name": "",
+ "name": "Torrents",
"description": ""
},
"youTube": {
@@ -2769,7 +2769,7 @@
"title": "Aide",
"option": {
"documentation": {
- "label": ""
+ "label": "Documentation"
},
"submitIssue": {
"label": ""
diff --git a/packages/translation/src/lang/he.json b/packages/translation/src/lang/he.json
index b268168b8..55cc8edb5 100644
--- a/packages/translation/src/lang/he.json
+++ b/packages/translation/src/lang/he.json
@@ -2,96 +2,96 @@
"init": {
"step": {
"start": {
- "title": "",
- "subtitle": "",
- "description": "",
+ "title": "ברוכים הבאים ל- Homarr",
+ "subtitle": "בוא נתחיל בהגדרת ה-Homarr שלך.",
+ "description": "כדי להתחיל, בחר כיצד ברצונך להגדיר את ה-Homarr שלך.",
"action": {
- "scratch": "",
- "importOldmarr": ""
+ "scratch": "התחל מאפס",
+ "importOldmarr": "יבוא מ-Homarr לפני 1.0"
}
},
"import": {
- "title": "",
- "subtitle": "",
+ "title": "ייבוא נתונים",
+ "subtitle": "אתה יכול לייבא נתונים מ- Homarr קיים.",
"dropzone": {
- "title": "",
- "description": ""
+ "title": "גרור את קובץ ה-zip לכאן או לחץ כדי לחפש",
+ "description": "ה-zip שהועלה יעובד ותוכל לבחור מה אתה רוצה לייבא"
},
"fileInfo": {
"action": {
- "change": ""
+ "change": "שנה קובץ"
}
},
"importSettings": {
- "title": "",
- "description": ""
+ "title": "הגדרות ייבוא",
+ "description": "הגדר את התנהגות הייבוא"
},
"boardSelection": {
- "title": "",
- "description": "",
+ "title": "נמצאו {count} לוחות",
+ "description": "בחר את כל הלוחות שברצונך לייבא",
"action": {
- "selectAll": "",
- "unselectAll": ""
+ "selectAll": "בחר הכל",
+ "unselectAll": "בטל את הבחירה בכולם"
}
},
"summary": {
- "title": "",
- "description": "",
+ "title": "סיכום ייבוא",
+ "description": "בסיכום למטה תוכלו לראות מה ייבא",
"action": {
- "import": ""
+ "import": "אשר את הייבוא והמשך"
},
"entities": {
- "apps": "",
- "boards": "",
- "integrations": "",
- "credentialUsers": ""
+ "apps": "אפליקציות",
+ "boards": "לוחות",
+ "integrations": "אינטגרציות",
+ "credentialUsers": "משתמשים מאושרים"
}
},
"tokenModal": {
- "title": "",
+ "title": "הזן אסימון ייבוא",
"field": {
"token": {
- "label": "",
- "description": ""
+ "label": "טוקן",
+ "description": "הזן את אסימון הייבוא המוצג ב- Homarr הקודם שלך"
}
},
"notification": {
"error": {
- "title": "",
- "message": ""
+ "title": "אסימון לא חוקי",
+ "message": "האסימון שהזנת אינו חוקי"
}
}
}
},
"user": {
- "title": "",
- "subtitle": "",
+ "title": "משתמש מנהל",
+ "subtitle": "ציין את האישורים עבור משתמש המנהל שלך.",
"notification": {
"success": {
- "title": "",
- "message": ""
+ "title": "המשתמש נוצר",
+ "message": "המשתמש נוצר בהצלחה"
},
"error": {
- "title": ""
+ "title": "יצירת המשתמש נכשלה"
}
}
},
"group": {
- "title": "",
- "subtitle": "",
+ "title": "קבוצה חיצונית",
+ "subtitle": "ציין את הקבוצה שבה יש להשתמש עבור משתמשים חיצוניים.",
"form": {
"name": {
- "label": "",
- "description": ""
+ "label": "שם הקבוצה",
+ "description": "השם צריך להתאים לקבוצת הניהול של הספק החיצוני"
}
}
},
"settings": {
- "title": "",
- "subtitle": ""
+ "title": "הגדרות",
+ "subtitle": "קבע את הגדרות השרת."
},
"finish": {
- "title": "",
+ "title": "סיים את ההגדרה",
"subtitle": "",
"description": "",
"action": {
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "אפליקציות",
"item": {
"create": {
"label": "",
@@ -344,7 +344,7 @@
}
},
"integration": {
- "title": "",
+ "title": "אינטגרציות",
"item": {
"create": {
"label": "",
@@ -559,7 +559,7 @@
"integration": {
"page": {
"list": {
- "title": "",
+ "title": "אינטגרציות",
"search": "",
"noResults": {
"title": ""
@@ -978,7 +978,7 @@
},
"field": {
"integrations": {
- "label": ""
+ "label": "אינטגרציות"
},
"customCssClasses": {
"label": ""
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "פריסה",
"option": {
"row": {
- "label": ""
+ "label": "אופקי"
},
"column": {
- "label": ""
+ "label": "אנכי"
},
"grid": {
"label": ""
@@ -1213,7 +1213,7 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "הטמע כל תוכן מהאינטרנט. חלק מהאתרים עשויים להגביל את הגישה.",
"option": {
"embedUrl": {
@@ -1648,55 +1648,55 @@
"description": "",
"option": {
"defaultView": {
- "label": ""
+ "label": "תצוגת ברירת מחדל"
},
"queuePageSize": {
"label": ""
}
},
"tab": {
- "workers": "",
- "queue": "",
- "statistics": ""
+ "workers": "עובדים",
+ "queue": "תור",
+ "statistics": "סטָטִיסטִיקָה"
},
"currentIndex": "",
"healthCheck": {
"title": "",
- "queued": "",
+ "queued": "בתור",
"status": {
- "healthy": "",
- "unhealthy": ""
+ "healthy": "בָּרִיא",
+ "unhealthy": "לא בריא"
}
},
"panel": {
"statistics": {
- "empty": "",
- "transcodes": "",
+ "empty": "ריק",
+ "transcodes": "קידודים",
"transcodesCount": "",
"healthChecksCount": "",
"filesCount": "",
"savedSpace": "",
"healthChecks": "",
- "videoCodecs": "",
- "videoContainers": "",
- "videoResolutions": ""
+ "videoCodecs": "קודקים",
+ "videoContainers": "מיכלים",
+ "videoResolutions": "רזולוציות"
},
"workers": {
- "empty": "",
+ "empty": "ריק",
"table": {
- "file": "",
- "eta": "",
- "progress": "",
- "transcode": "",
+ "file": "קוֹבֶץ",
+ "eta": "זמן סיום משוער",
+ "progress": "התקדמות",
+ "transcode": "קידוד",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "ריק",
"table": {
- "file": "",
- "size": "",
- "transcode": "",
+ "file": "קוֹבֶץ",
+ "size": "גודל",
+ "transcode": "קידוד",
"healthCheck": ""
}
}
@@ -1981,7 +1981,7 @@
},
"error": {
"noBoard": {
- "title": "",
+ "title": "ברוכים הבאים ל- Homarr",
"description": "",
"link": "",
"notice": ""
@@ -2028,7 +2028,7 @@
"home": "מסך הבית",
"boards": "לוחות",
"apps": "אפליקציות",
- "integrations": "",
+ "integrations": "אינטגרציות",
"searchEngies": "",
"medias": "",
"users": {
@@ -2067,7 +2067,7 @@
"board": "לוחות",
"user": "משתמשים",
"invite": "הזמנות",
- "integration": "",
+ "integration": "אינטגרציות",
"app": "אפליקציות",
"group": ""
},
@@ -2168,10 +2168,10 @@
"label": ""
},
"completed": {
- "title": ""
+ "title": "המשתמש נוצר"
},
"error": {
- "title": ""
+ "title": "יצירת המשתמש נכשלה"
}
},
"action": {
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "כללי",
- "owner": "",
+ "owner": "בעלים",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "לוחות",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "מראה",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2555,7 +2555,7 @@
"label": "לוחות"
},
"integrations": {
- "label": "",
+ "label": "אינטגרציות",
"edit": {
"label": "עריכה"
},
@@ -2662,7 +2662,7 @@
}
},
"integration": {
- "title": ""
+ "title": "אינטגרציות"
}
}
},
diff --git a/packages/translation/src/lang/hr.json b/packages/translation/src/lang/hr.json
index 4bc952a62..8f74dda7b 100644
--- a/packages/translation/src/lang/hr.json
+++ b/packages/translation/src/lang/hr.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "aplikacije",
+ "boards": "Daske",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Znak",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Postavke",
"subtitle": ""
},
"finish": {
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "aplikacije",
"item": {
"create": {
"label": "",
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Raspored",
"option": {
"row": {
- "label": ""
+ "label": "Horizontalno"
},
"column": {
- "label": ""
+ "label": "Okomito"
},
"grid": {
"label": ""
@@ -1213,7 +1213,7 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "Ugradite bilo koji sadržaj s interneta. Neke web stranice mogu ograničiti pristup.",
"option": {
"embedUrl": {
@@ -1432,7 +1432,7 @@
"option": {}
},
"video": {
- "name": "",
+ "name": "Video Stream",
"description": "Ugradi video stream ili video sa kamere i/ili web stranice",
"option": {
"feedUrl": {
@@ -1656,7 +1656,7 @@
},
"tab": {
"workers": "",
- "queue": "",
+ "queue": "Red čekanja",
"statistics": ""
},
"currentIndex": "",
@@ -1670,7 +1670,7 @@
},
"panel": {
"statistics": {
- "empty": "",
+ "empty": "Isprazni",
"transcodes": "",
"transcodesCount": "",
"healthChecksCount": "",
@@ -1682,20 +1682,20 @@
"videoResolutions": ""
},
"workers": {
- "empty": "",
+ "empty": "Isprazni",
"table": {
"file": "",
- "eta": "",
- "progress": "",
+ "eta": "ETA",
+ "progress": "Napredak",
"transcode": "",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Isprazni",
"table": {
"file": "",
- "size": "",
+ "size": "Veličina",
"transcode": "",
"healthCheck": ""
}
@@ -2042,7 +2042,7 @@
"tools": {
"label": "Alati",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
"api": "",
"tasks": ""
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Daske",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Izgled",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Alati",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
diff --git a/packages/translation/src/lang/hu.json b/packages/translation/src/lang/hu.json
index c02bbc614..9920a245a 100644
--- a/packages/translation/src/lang/hu.json
+++ b/packages/translation/src/lang/hu.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Alkalmazások",
+ "boards": "Táblák",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Token",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Beállítások",
"subtitle": ""
},
"finish": {
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Alkalmazások",
"item": {
"create": {
"label": "",
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Elrendezés",
"option": {
"row": {
- "label": ""
+ "label": "Vízszintes"
},
"column": {
- "label": ""
+ "label": "Függőleges"
},
"grid": {
"label": ""
@@ -1648,55 +1648,55 @@
"description": "",
"option": {
"defaultView": {
- "label": ""
+ "label": "Alapértelmezett nézet"
},
"queuePageSize": {
"label": ""
}
},
"tab": {
- "workers": "",
- "queue": "",
- "statistics": ""
+ "workers": "Munkások",
+ "queue": "Várólista",
+ "statistics": "Statisztikák"
},
"currentIndex": "",
"healthCheck": {
"title": "",
- "queued": "",
+ "queued": "Sorban áll",
"status": {
- "healthy": "",
- "unhealthy": ""
+ "healthy": "Egészséges",
+ "unhealthy": "Egészségtelen"
}
},
"panel": {
"statistics": {
- "empty": "",
- "transcodes": "",
+ "empty": "Üres",
+ "transcodes": "Átkódolás",
"transcodesCount": "",
"healthChecksCount": "",
"filesCount": "",
"savedSpace": "",
"healthChecks": "",
- "videoCodecs": "",
- "videoContainers": "",
- "videoResolutions": ""
+ "videoCodecs": "Kodekek",
+ "videoContainers": "Tartály",
+ "videoResolutions": "Felbontás"
},
"workers": {
- "empty": "",
+ "empty": "Üres",
"table": {
- "file": "",
- "eta": "",
- "progress": "",
- "transcode": "",
+ "file": "Fájl",
+ "eta": "Hátralévő idő",
+ "progress": "Folyamat",
+ "transcode": "Átkódolás",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Üres",
"table": {
- "file": "",
- "size": "",
- "transcode": "",
+ "file": "Fájl",
+ "size": "Méret",
+ "transcode": "Átkódolás",
"healthCheck": ""
}
}
@@ -2042,9 +2042,9 @@
"tools": {
"label": "Eszközök",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2208,7 +2208,7 @@
"label": "Lejárati idő"
},
"token": {
- "label": ""
+ "label": "Token"
}
}
}
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "Általános",
- "owner": "",
+ "owner": "Tulajdonos",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Táblák",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Megjelenés",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Eszközök",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
diff --git a/packages/translation/src/lang/it.json b/packages/translation/src/lang/it.json
index 1ea8d025c..d3c727a89 100644
--- a/packages/translation/src/lang/it.json
+++ b/packages/translation/src/lang/it.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Applicazioni",
+ "boards": "Boards",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Token",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Impostazioni",
"subtitle": ""
},
"finish": {
@@ -131,7 +131,7 @@
"label": "Nome utente"
},
"password": {
- "label": "",
+ "label": "Password",
"requirement": {
"length": "",
"lowercase": "Include lettera minuscola",
@@ -293,7 +293,7 @@
},
"permission": {
"admin": {
- "title": "",
+ "title": "Admin",
"item": {
"admin": {
"label": "",
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Applicazioni",
"item": {
"create": {
"label": "",
@@ -323,7 +323,7 @@
}
},
"board": {
- "title": "",
+ "title": "Boards",
"item": {
"create": {
"label": "",
@@ -716,7 +716,7 @@
"newLabel": ""
},
"password": {
- "label": "",
+ "label": "Password",
"newLabel": "Nuova password"
}
}
@@ -853,7 +853,7 @@
"updateAvailable": ""
}
},
- "dangerZone": "",
+ "dangerZone": "Danger zone",
"noResults": "Nessun risultato trovato",
"preview": {
"show": "",
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Layout",
"option": {
"row": {
- "label": ""
+ "label": "Orizzontale"
},
"column": {
- "label": ""
+ "label": "Verticale"
},
"grid": {
"label": ""
@@ -1050,7 +1050,7 @@
"description": "",
"option": {
"layout": {
- "label": "",
+ "label": "Layout",
"option": {
"row": {
"label": "Orizzontale"
@@ -1083,7 +1083,7 @@
"description": "Controlla PiHole o AdGuard dalla tua dashboard",
"option": {
"layout": {
- "label": "",
+ "label": "Layout",
"option": {
"row": {
"label": "Orizzontale"
@@ -1183,7 +1183,7 @@
"checkList": "Elenco di controllo",
"increaseIndent": "Aumenta indentatura",
"decreaseIndent": "Diminuisci indentatura",
- "link": "",
+ "link": "Link",
"unlink": "Elimina link",
"image": "Incorpora immagine",
"addTable": "Aggiungi tabella",
@@ -1213,7 +1213,7 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "Incorpora qualsiasi contenuto da Internet. Alcuni siti web possono limitare l'accesso.",
"option": {
"embedUrl": {
@@ -1511,7 +1511,7 @@
"detailsTitle": ""
},
"downSpeed": {
- "columnTitle": "",
+ "columnTitle": "Down",
"detailsTitle": "Velocità Di Download"
},
"index": {
@@ -1532,7 +1532,7 @@
"detailsTitle": ""
},
"ratio": {
- "columnTitle": "",
+ "columnTitle": "Ratio",
"detailsTitle": ""
},
"received": {
@@ -1560,7 +1560,7 @@
"detailsTitle": ""
},
"upSpeed": {
- "columnTitle": "",
+ "columnTitle": "Up",
"detailsTitle": ""
}
},
@@ -1648,55 +1648,55 @@
"description": "",
"option": {
"defaultView": {
- "label": ""
+ "label": "Vista predefinita"
},
"queuePageSize": {
"label": ""
}
},
"tab": {
- "workers": "",
- "queue": "",
- "statistics": ""
+ "workers": "Worker",
+ "queue": "Coda",
+ "statistics": "Statistiche"
},
"currentIndex": "",
"healthCheck": {
"title": "",
- "queued": "",
+ "queued": "In coda",
"status": {
- "healthy": "",
- "unhealthy": ""
+ "healthy": "Sano",
+ "unhealthy": "Non integro"
}
},
"panel": {
"statistics": {
- "empty": "",
- "transcodes": "",
+ "empty": "Vuoto",
+ "transcodes": "Transcodes",
"transcodesCount": "",
"healthChecksCount": "",
"filesCount": "",
"savedSpace": "",
"healthChecks": "",
- "videoCodecs": "",
- "videoContainers": "",
- "videoResolutions": ""
+ "videoCodecs": "Codecs",
+ "videoContainers": "Containers",
+ "videoResolutions": "Risoluzioni"
},
"workers": {
- "empty": "",
+ "empty": "Vuoto",
"table": {
- "file": "",
- "eta": "",
- "progress": "",
- "transcode": "",
+ "file": "File",
+ "eta": "ETA",
+ "progress": "Avanzamento",
+ "transcode": "Transcode",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Vuoto",
"table": {
- "file": "",
- "size": "",
- "transcode": "",
+ "file": "File",
+ "size": "Dimensione",
+ "transcode": "Transcode",
"healthCheck": ""
}
}
@@ -1907,7 +1907,7 @@
"unrecognizedLink": ""
},
"layout": {
- "title": ""
+ "title": "Layout"
},
"background": {
"title": "Sfondo"
@@ -1935,7 +1935,7 @@
}
},
"dangerZone": {
- "title": "",
+ "title": "Danger zone",
"action": {
"rename": {
"label": "",
@@ -2025,8 +2025,8 @@
},
"navbar": {
"items": {
- "home": "",
- "boards": "",
+ "home": "Home",
+ "boards": "Boards",
"apps": "Applicazioni",
"integrations": "",
"searchEngies": "",
@@ -2042,9 +2042,9 @@
"tools": {
"label": "Strumenti",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2064,7 +2064,7 @@
"page": {
"home": {
"statistic": {
- "board": "",
+ "board": "Boards",
"user": "Utenti",
"invite": "Inviti",
"integration": "",
@@ -2072,7 +2072,7 @@
"group": ""
},
"statisticLabel": {
- "boards": "",
+ "boards": "Boards",
"resources": "",
"authentication": "",
"authorization": ""
@@ -2093,7 +2093,7 @@
"setHomeBoard": {
"label": "",
"badge": {
- "label": "",
+ "label": "Home",
"tooltip": ""
}
},
@@ -2139,7 +2139,7 @@
"title": "Sicurezza"
},
"board": {
- "title": ""
+ "title": "Boards"
}
},
"list": {
@@ -2199,7 +2199,7 @@
},
"field": {
"id": {
- "label": ""
+ "label": "ID"
},
"creator": {
"label": "Creatore"
@@ -2208,7 +2208,7 @@
"label": "Data di scadenza"
},
"token": {
- "label": ""
+ "label": "Token"
}
}
}
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "Generale",
- "owner": "",
+ "owner": "Proprietario",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Boards",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Aspetto",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2390,7 +2390,7 @@
},
"table": {
"header": {
- "id": "",
+ "id": "ID",
"createdBy": ""
}
}
@@ -2419,7 +2419,7 @@
}
},
"docker": {
- "title": "",
+ "title": "Containers",
"table": {
"updated": "",
"search": "",
@@ -2552,7 +2552,7 @@
"manage": {
"label": "Gestisci",
"boards": {
- "label": ""
+ "label": "Boards"
},
"integrations": {
"label": "",
@@ -2591,7 +2591,7 @@
},
"general": "Generale",
"security": "Sicurezza",
- "board": "",
+ "board": "Boards",
"groups": {
"label": ""
},
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Strumenti",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
@@ -2643,7 +2643,7 @@
}
},
"board": {
- "title": "",
+ "title": "Boards",
"children": {
"action": {
"open": {
@@ -2749,7 +2749,7 @@
"description": ""
},
"torrent": {
- "name": "",
+ "name": "Torrents",
"description": ""
},
"youTube": {
diff --git a/packages/translation/src/lang/ja.json b/packages/translation/src/lang/ja.json
index 3d3777058..6d52f5b76 100644
--- a/packages/translation/src/lang/ja.json
+++ b/packages/translation/src/lang/ja.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "アプリ",
+ "boards": "ボード",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "トークン",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "設定",
"subtitle": ""
},
"finish": {
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "アプリ",
"item": {
"create": {
"label": "",
@@ -770,7 +770,7 @@
"error": "エラー",
"action": {
"add": "追加",
- "apply": "適用する",
+ "apply": "適用",
"backToOverview": "",
"create": "作成",
"edit": "編集",
@@ -785,7 +785,7 @@
"confirm": "確認",
"continue": "",
"previous": "前へ",
- "next": "次のページ",
+ "next": "次へ",
"checkoutDocs": "",
"checkLogs": "",
"tryAgain": "リトライ",
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "レイアウト",
"option": {
"row": {
- "label": ""
+ "label": "水平"
},
"column": {
- "label": ""
+ "label": "垂直"
},
"grid": {
"label": ""
@@ -1648,55 +1648,55 @@
"description": "",
"option": {
"defaultView": {
- "label": ""
+ "label": "デフォルト表示"
},
"queuePageSize": {
"label": ""
}
},
"tab": {
- "workers": "",
- "queue": "",
- "statistics": ""
+ "workers": "ワーカー",
+ "queue": "キュー",
+ "statistics": "統計"
},
"currentIndex": "",
"healthCheck": {
"title": "",
- "queued": "",
+ "queued": "処理待ち",
"status": {
- "healthy": "",
- "unhealthy": ""
+ "healthy": "正常",
+ "unhealthy": "異常"
}
},
"panel": {
"statistics": {
- "empty": "",
- "transcodes": "",
+ "empty": "空",
+ "transcodes": "トランスコード",
"transcodesCount": "",
"healthChecksCount": "",
"filesCount": "",
"savedSpace": "",
"healthChecks": "",
- "videoCodecs": "",
- "videoContainers": "",
- "videoResolutions": ""
+ "videoCodecs": "コーデック",
+ "videoContainers": "コンテナ",
+ "videoResolutions": "解像度"
},
"workers": {
- "empty": "",
+ "empty": "空",
"table": {
- "file": "",
- "eta": "",
- "progress": "",
- "transcode": "",
+ "file": "ファイル",
+ "eta": "ETA",
+ "progress": "進捗状況",
+ "transcode": "トランスコード",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "空",
"table": {
- "file": "",
- "size": "",
- "transcode": "",
+ "file": "ファイル",
+ "size": "サイズ",
+ "transcode": "トランスコード",
"healthCheck": ""
}
}
@@ -2042,9 +2042,9 @@
"tools": {
"label": "ツール",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2058,7 +2058,7 @@
"sourceCode": ""
}
},
- "about": ""
+ "about": "About"
}
},
"page": {
@@ -2199,7 +2199,7 @@
},
"field": {
"id": {
- "label": ""
+ "label": "ID"
},
"creator": {
"label": "クリエイター"
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "一般",
- "owner": "",
+ "owner": "所有者",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "ボード",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "外観",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2390,7 +2390,7 @@
},
"table": {
"header": {
- "id": "",
+ "id": "ID",
"createdBy": ""
}
}
@@ -2602,7 +2602,7 @@
"tools": {
"label": "ツール",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
@@ -2612,7 +2612,7 @@
"label": "設定"
},
"about": {
- "label": ""
+ "label": "About"
}
}
},
@@ -2837,7 +2837,7 @@
"label": ""
},
"about": {
- "label": ""
+ "label": "About"
},
"homeBoard": {
"label": ""
diff --git a/packages/translation/src/lang/ko.json b/packages/translation/src/lang/ko.json
index f3f7e531c..aafeac7bd 100644
--- a/packages/translation/src/lang/ko.json
+++ b/packages/translation/src/lang/ko.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "앱",
+ "boards": "보드",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "토큰",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "설정",
"subtitle": ""
},
"finish": {
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "앱",
"item": {
"create": {
"label": "",
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "레이아웃",
"option": {
"row": {
- "label": ""
+ "label": "수평"
},
"column": {
- "label": ""
+ "label": "세로"
},
"grid": {
"label": ""
@@ -1213,7 +1213,7 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "인터넷에서 콘텐츠를 퍼옵니다. 일부 웹사이트는 액세스를 제한할 수 있습니다.",
"option": {
"embedUrl": {
@@ -1656,7 +1656,7 @@
},
"tab": {
"workers": "",
- "queue": "",
+ "queue": "대기열",
"statistics": ""
},
"currentIndex": "",
@@ -1670,7 +1670,7 @@
},
"panel": {
"statistics": {
- "empty": "",
+ "empty": "비어 있음",
"transcodes": "",
"transcodesCount": "",
"healthChecksCount": "",
@@ -1682,20 +1682,20 @@
"videoResolutions": ""
},
"workers": {
- "empty": "",
+ "empty": "비어 있음",
"table": {
"file": "",
- "eta": "",
- "progress": "",
+ "eta": "남은 시간",
+ "progress": "진행률",
"transcode": "",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "비어 있음",
"table": {
"file": "",
- "size": "",
+ "size": "크기",
"transcode": "",
"healthCheck": ""
}
@@ -1783,9 +1783,9 @@
"label": "",
"description": "",
"option": {
- "sm": "",
- "md": "",
- "lg": ""
+ "sm": "Small",
+ "md": "Medium",
+ "lg": "Large"
}
},
"sidebarBehavior": {
@@ -2042,7 +2042,7 @@
"tools": {
"label": "도구",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
"api": "",
"tasks": ""
@@ -2199,7 +2199,7 @@
},
"field": {
"id": {
- "label": ""
+ "label": "ID"
},
"creator": {
"label": "크리에이터"
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "보드",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "모양",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2390,7 +2390,7 @@
},
"table": {
"header": {
- "id": "",
+ "id": "ID",
"createdBy": ""
}
}
@@ -2602,7 +2602,7 @@
"tools": {
"label": "도구",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
diff --git a/packages/translation/src/lang/lt.json b/packages/translation/src/lang/lt.json
index 1bf728aad..610fb1440 100644
--- a/packages/translation/src/lang/lt.json
+++ b/packages/translation/src/lang/lt.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Programėlės",
+ "boards": "Lentos",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Žetonas",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Nustatymai",
"subtitle": ""
},
"finish": {
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Programėlės",
"item": {
"create": {
"label": "",
@@ -1029,10 +1029,10 @@
"label": "",
"option": {
"row": {
- "label": ""
+ "label": "Horizontalus"
},
"column": {
- "label": ""
+ "label": "Vertikalus"
},
"grid": {
"label": ""
@@ -1213,7 +1213,7 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "Įterpkite bet kokį turinį iš interneto. Kai kuriose svetainėse prieiga gali būti ribojama.",
"option": {
"embedUrl": {
@@ -2042,9 +2042,9 @@
"tools": {
"label": "Įrankiai",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2199,7 +2199,7 @@
},
"field": {
"id": {
- "label": ""
+ "label": "ID"
},
"creator": {
"label": "Kūrėjas"
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "Bendras",
- "owner": "",
+ "owner": "Savininkas",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Lentos",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Išvaizda",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2390,7 +2390,7 @@
},
"table": {
"header": {
- "id": "",
+ "id": "ID",
"createdBy": ""
}
}
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Įrankiai",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
diff --git a/packages/translation/src/lang/lv.json b/packages/translation/src/lang/lv.json
index 10d29d551..c78ab5df2 100644
--- a/packages/translation/src/lang/lv.json
+++ b/packages/translation/src/lang/lv.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Lietotnes",
+ "boards": "Dēļi",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Atslēga",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Iestatījumi",
"subtitle": ""
},
"finish": {
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Lietotnes",
"item": {
"create": {
"label": "",
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Izkārtojums",
"option": {
"row": {
- "label": ""
+ "label": "Horizontāli"
},
"column": {
- "label": ""
+ "label": "Vertikāli"
},
"grid": {
"label": ""
@@ -1213,7 +1213,7 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "Iegult jebkuru saturu no interneta. Dažas vietnes var ierobežot piekļuvi.",
"option": {
"embedUrl": {
@@ -1528,7 +1528,7 @@
"columnTitle": ""
},
"progress": {
- "columnTitle": "",
+ "columnTitle": "Progress",
"detailsTitle": ""
},
"ratio": {
@@ -1656,7 +1656,7 @@
},
"tab": {
"workers": "",
- "queue": "",
+ "queue": "Rinda",
"statistics": ""
},
"currentIndex": "",
@@ -1670,7 +1670,7 @@
},
"panel": {
"statistics": {
- "empty": "",
+ "empty": "Tukšs",
"transcodes": "",
"transcodesCount": "",
"healthChecksCount": "",
@@ -1682,20 +1682,20 @@
"videoResolutions": ""
},
"workers": {
- "empty": "",
+ "empty": "Tukšs",
"table": {
"file": "",
- "eta": "",
- "progress": "",
+ "eta": "ETA",
+ "progress": "Progress",
"transcode": "",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Tukšs",
"table": {
"file": "",
- "size": "",
+ "size": "Lielums",
"transcode": "",
"healthCheck": ""
}
@@ -2042,9 +2042,9 @@
"tools": {
"label": "Rīki",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2199,7 +2199,7 @@
},
"field": {
"id": {
- "label": ""
+ "label": "ID"
},
"creator": {
"label": "Izveidotājs"
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "Vispārīgi",
- "owner": "",
+ "owner": "Īpašnieks",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Dēļi",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Izskats",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2390,7 +2390,7 @@
},
"table": {
"header": {
- "id": "",
+ "id": "ID",
"createdBy": ""
}
}
@@ -2445,7 +2445,7 @@
"label": "Attēls"
},
"ports": {
- "label": ""
+ "label": "Ports"
}
},
"action": {
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Rīki",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
diff --git a/packages/translation/src/lang/nl.json b/packages/translation/src/lang/nl.json
index 32fd8cd6c..4d850dd6c 100644
--- a/packages/translation/src/lang/nl.json
+++ b/packages/translation/src/lang/nl.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Apps",
+ "boards": "Borden",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Penning",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Instellingen",
"subtitle": ""
},
"finish": {
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Apps",
"item": {
"create": {
"label": "",
@@ -491,7 +491,7 @@
"app": {
"page": {
"list": {
- "title": "",
+ "title": "Apps",
"noResults": {
"title": "",
"action": ""
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Indeling",
"option": {
"row": {
- "label": ""
+ "label": "Horizontaal"
},
"column": {
- "label": ""
+ "label": "Verticaal"
},
"grid": {
"label": ""
@@ -1172,7 +1172,7 @@
"underline": "Onderstreept",
"colorText": "Kleur tekst",
"colorHighlight": "Gekleurde tekst markeren",
- "code": "",
+ "code": "Code",
"clear": "Opmaak wissen",
"heading": "Koptekst {level}",
"align": "Tekst uitlijnen: {position}",
@@ -1183,7 +1183,7 @@
"checkList": "Controlelijst",
"increaseIndent": "Inspringen vergroten",
"decreaseIndent": "Inspringen verminderen",
- "link": "",
+ "link": "Link",
"unlink": "Link verwijderen",
"image": "Afbeelding insluiten",
"addTable": "Tabel toevoegen",
@@ -1213,7 +1213,7 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "Insluiten van alle inhoud van het internet. Sommige websites kunnen de toegang beperken.",
"option": {
"embedUrl": {
@@ -1287,7 +1287,7 @@
"description": "",
"option": {
"releaseType": {
- "label": "",
+ "label": "Radarr release type",
"options": {
"inCinemas": "",
"digitalRelease": "",
@@ -1436,7 +1436,7 @@
"description": "Een videostream of video van een camera of een website insluiten",
"option": {
"feedUrl": {
- "label": ""
+ "label": "Feed URL"
},
"hasAutoPlay": {
"label": "Automatisch afspelen",
@@ -1511,7 +1511,7 @@
"detailsTitle": ""
},
"downSpeed": {
- "columnTitle": "",
+ "columnTitle": "Down",
"detailsTitle": "Downloadsnelheid"
},
"index": {
@@ -1560,7 +1560,7 @@
"detailsTitle": ""
},
"upSpeed": {
- "columnTitle": "",
+ "columnTitle": "Up",
"detailsTitle": ""
}
},
@@ -1648,55 +1648,55 @@
"description": "",
"option": {
"defaultView": {
- "label": ""
+ "label": "Standaardweergave"
},
"queuePageSize": {
"label": ""
}
},
"tab": {
- "workers": "",
- "queue": "",
- "statistics": ""
+ "workers": "Workers",
+ "queue": "Wachtrij",
+ "statistics": "Statistieken"
},
"currentIndex": "",
"healthCheck": {
"title": "",
- "queued": "",
+ "queued": "In wachtrij",
"status": {
- "healthy": "",
- "unhealthy": ""
+ "healthy": "Gezond",
+ "unhealthy": "Ongezond"
}
},
"panel": {
"statistics": {
- "empty": "",
- "transcodes": "",
+ "empty": "Leeg",
+ "transcodes": "Transcodes",
"transcodesCount": "",
"healthChecksCount": "",
"filesCount": "",
"savedSpace": "",
"healthChecks": "",
- "videoCodecs": "",
- "videoContainers": "",
- "videoResolutions": ""
+ "videoCodecs": "Codecs",
+ "videoContainers": "Containers",
+ "videoResolutions": "Resoluties"
},
"workers": {
- "empty": "",
+ "empty": "Leeg",
"table": {
- "file": "",
- "eta": "",
- "progress": "",
- "transcode": "",
+ "file": "Bestand",
+ "eta": "ETA",
+ "progress": "Voortgang",
+ "transcode": "Transcoderen",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Leeg",
"table": {
- "file": "",
- "size": "",
- "transcode": "",
+ "file": "Bestand",
+ "size": "Grootte",
+ "transcode": "Transcoderen",
"healthCheck": ""
}
}
@@ -1766,7 +1766,7 @@
"invalidError": ""
},
"apps": {
- "label": "",
+ "label": "Apps",
"avoidDuplicates": {
"label": "",
"description": ""
@@ -2025,9 +2025,9 @@
},
"navbar": {
"items": {
- "home": "",
+ "home": "Home",
"boards": "Borden",
- "apps": "",
+ "apps": "Apps",
"integrations": "",
"searchEngies": "",
"medias": "",
@@ -2042,19 +2042,19 @@
"tools": {
"label": "Gereedschappen",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
"settings": "Instellingen",
"help": {
- "label": "",
+ "label": "Help",
"items": {
"documentation": "Documentatie",
"submitIssue": "",
- "discord": "",
+ "discord": "Community Discord",
"sourceCode": ""
}
},
@@ -2068,7 +2068,7 @@
"user": "Gebruikers",
"invite": "Uitnodigingen",
"integration": "",
- "app": "",
+ "app": "Apps",
"group": ""
},
"statisticLabel": {
@@ -2093,7 +2093,7 @@
"setHomeBoard": {
"label": "",
"badge": {
- "label": "",
+ "label": "Home",
"tooltip": ""
}
},
@@ -2130,7 +2130,7 @@
"title": "Algemeen",
"item": {
"language": "",
- "board": "",
+ "board": "Home bord",
"firstDayOfWeek": "Eerste dag van de week",
"accessibility": "Toegankelijkheid"
}
@@ -2199,7 +2199,7 @@
},
"field": {
"id": {
- "label": ""
+ "label": "ID"
},
"creator": {
"label": "Maker"
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "Algemeen",
- "owner": "",
+ "owner": "Eigenaar",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Borden",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Opmaak",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2390,7 +2390,7 @@
},
"table": {
"header": {
- "id": "",
+ "id": "ID",
"createdBy": ""
}
}
@@ -2419,7 +2419,7 @@
}
},
"docker": {
- "title": "",
+ "title": "Containers",
"table": {
"updated": "",
"search": "",
@@ -2450,7 +2450,7 @@
},
"action": {
"start": {
- "label": "",
+ "label": "Start",
"notification": {
"success": {
"title": "",
@@ -2463,7 +2463,7 @@
}
},
"stop": {
- "label": "",
+ "label": "Stop",
"notification": {
"success": {
"title": "",
@@ -2576,7 +2576,7 @@
"label": ""
},
"apps": {
- "label": "",
+ "label": "Apps",
"new": {
"label": ""
},
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Gereedschappen",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
@@ -2627,7 +2627,7 @@
"help": "",
"group": {
"app": {
- "title": "",
+ "title": "Apps",
"children": {
"action": {
"open": {
@@ -2749,7 +2749,7 @@
"description": ""
},
"torrent": {
- "name": "",
+ "name": "Torrents",
"description": ""
},
"youTube": {
@@ -2766,7 +2766,7 @@
"title": ""
},
"help": {
- "title": "",
+ "title": "Help",
"option": {
"documentation": {
"label": "Documentatie"
@@ -2775,7 +2775,7 @@
"label": ""
},
"discord": {
- "label": ""
+ "label": "Community Discord"
}
}
}
@@ -2840,7 +2840,7 @@
"label": "Over"
},
"homeBoard": {
- "label": ""
+ "label": "Home bord"
},
"preferences": {
"label": "Jouw voorkeuren"
diff --git a/packages/translation/src/lang/no.json b/packages/translation/src/lang/no.json
index 3bd31e04a..411758aae 100644
--- a/packages/translation/src/lang/no.json
+++ b/packages/translation/src/lang/no.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Apper",
+ "boards": "Tavler",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Token",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Innstillinger",
"subtitle": ""
},
"finish": {
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Apper",
"item": {
"create": {
"label": "",
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Oppsett",
"option": {
"row": {
- "label": ""
+ "label": "Horisontal"
},
"column": {
- "label": ""
+ "label": "Vertikal"
},
"grid": {
"label": ""
@@ -1183,7 +1183,7 @@
"checkList": "Sjekkliste",
"increaseIndent": "Øk innrykk",
"decreaseIndent": "Reduser innrykk",
- "link": "",
+ "link": "Link",
"unlink": "Fjern lenke",
"image": "Bygg inn bilde",
"addTable": "Legg til tabell",
@@ -1213,7 +1213,7 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "Bygg inn innhold fra Internett. Noen nettsteder kan begrense adgang.",
"option": {
"embedUrl": {
@@ -1436,7 +1436,7 @@
"description": "Bygg inn en videostrøm eller video fra et kamera eller et nettsted",
"option": {
"feedUrl": {
- "label": ""
+ "label": "Feed URL"
},
"hasAutoPlay": {
"label": "Autospill",
@@ -1656,7 +1656,7 @@
},
"tab": {
"workers": "",
- "queue": "",
+ "queue": "Kø",
"statistics": ""
},
"currentIndex": "",
@@ -1670,7 +1670,7 @@
},
"panel": {
"statistics": {
- "empty": "",
+ "empty": "Tøm",
"transcodes": "",
"transcodesCount": "",
"healthChecksCount": "",
@@ -1682,20 +1682,20 @@
"videoResolutions": ""
},
"workers": {
- "empty": "",
+ "empty": "Tøm",
"table": {
"file": "",
- "eta": "",
- "progress": "",
+ "eta": "Gjenstående tid (estimat)",
+ "progress": "Fremgang",
"transcode": "",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Tøm",
"table": {
"file": "",
- "size": "",
+ "size": "Størrelse",
"transcode": "",
"healthCheck": ""
}
@@ -1784,7 +1784,7 @@
"description": "",
"option": {
"sm": "Liten",
- "md": "",
+ "md": "Medium",
"lg": "Stor"
}
},
@@ -2042,9 +2042,9 @@
"tools": {
"label": "Verktøy",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2199,7 +2199,7 @@
},
"field": {
"id": {
- "label": ""
+ "label": "ID"
},
"creator": {
"label": "Skaper"
@@ -2208,7 +2208,7 @@
"label": "Utløpsdato"
},
"token": {
- "label": ""
+ "label": "Token"
}
}
}
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "Generelt",
- "owner": "",
+ "owner": "Eier",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Tavler",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Utseende",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2390,7 +2390,7 @@
},
"table": {
"header": {
- "id": "",
+ "id": "ID",
"createdBy": ""
}
}
@@ -2442,7 +2442,7 @@
}
},
"containerImage": {
- "label": ""
+ "label": "Image"
},
"ports": {
"label": "Porter"
@@ -2450,7 +2450,7 @@
},
"action": {
"start": {
- "label": "",
+ "label": "Start",
"notification": {
"success": {
"title": "",
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Verktøy",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
diff --git a/packages/translation/src/lang/pl.json b/packages/translation/src/lang/pl.json
index 137fa7d1a..8daf73e82 100644
--- a/packages/translation/src/lang/pl.json
+++ b/packages/translation/src/lang/pl.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Aplikacje",
+ "boards": "Tablice",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Token",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Ustawienia",
"subtitle": ""
},
"finish": {
@@ -293,7 +293,7 @@
},
"permission": {
"admin": {
- "title": "",
+ "title": "Admin",
"item": {
"admin": {
"label": "",
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Aplikacje",
"item": {
"create": {
"label": "",
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Układ",
"option": {
"row": {
- "label": ""
+ "label": "Poziomy"
},
"column": {
- "label": ""
+ "label": "Pionowy"
},
"grid": {
"label": ""
@@ -1213,7 +1213,7 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "Osadzaj dowolne treści z internetu. Niektóre strony internetowe mogą ograniczać dostęp.",
"option": {
"embedUrl": {
@@ -1656,7 +1656,7 @@
},
"tab": {
"workers": "",
- "queue": "",
+ "queue": "Kolejka",
"statistics": ""
},
"currentIndex": "",
@@ -1670,7 +1670,7 @@
},
"panel": {
"statistics": {
- "empty": "",
+ "empty": "Puste",
"transcodes": "",
"transcodesCount": "",
"healthChecksCount": "",
@@ -1682,20 +1682,20 @@
"videoResolutions": ""
},
"workers": {
- "empty": "",
+ "empty": "Puste",
"table": {
"file": "",
- "eta": "",
- "progress": "",
+ "eta": "ETA",
+ "progress": "Postęp",
"transcode": "",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Puste",
"table": {
"file": "",
- "size": "",
+ "size": "Rozmiar",
"transcode": "",
"healthCheck": ""
}
@@ -2042,9 +2042,9 @@
"tools": {
"label": "Narzędzia",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2199,7 +2199,7 @@
},
"field": {
"id": {
- "label": ""
+ "label": "ID"
},
"creator": {
"label": "Twórca"
@@ -2208,7 +2208,7 @@
"label": "Wygasa"
},
"token": {
- "label": ""
+ "label": "Token"
}
}
}
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "Ogólne",
- "owner": "",
+ "owner": "Właściciel",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Tablice",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Wygląd",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2390,7 +2390,7 @@
},
"table": {
"header": {
- "id": "",
+ "id": "ID",
"createdBy": ""
}
}
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Narzędzia",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
diff --git a/packages/translation/src/lang/pt.json b/packages/translation/src/lang/pt.json
index 09398572c..54b3a9fd2 100644
--- a/packages/translation/src/lang/pt.json
+++ b/packages/translation/src/lang/pt.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Aplicativos",
+ "boards": "Placas",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Token",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Configurações",
"subtitle": ""
},
"finish": {
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Aplicativos",
"item": {
"create": {
"label": "",
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Layout",
"option": {
"row": {
- "label": ""
+ "label": "Horizontal"
},
"column": {
- "label": ""
+ "label": "Vertical"
},
"grid": {
"label": ""
@@ -1050,13 +1050,13 @@
"description": "",
"option": {
"layout": {
- "label": "",
+ "label": "Layout",
"option": {
"row": {
- "label": ""
+ "label": "Horizontal"
},
"column": {
- "label": ""
+ "label": "Vertical"
},
"grid": {
"label": ""
@@ -1083,13 +1083,13 @@
"description": "Controle o PiHole ou o AdGuard em seu painel de controle",
"option": {
"layout": {
- "label": "",
+ "label": "Layout",
"option": {
"row": {
- "label": ""
+ "label": "Horizontal"
},
"column": {
- "label": ""
+ "label": "Vertical"
},
"grid": {
"label": ""
@@ -1183,7 +1183,7 @@
"checkList": "Lista de verificação",
"increaseIndent": "Aumentar recuo",
"decreaseIndent": "Diminuir recuo",
- "link": "",
+ "link": "Link",
"unlink": "Remover link",
"image": "Incorporar imagem",
"addTable": "Adicionar tabela",
@@ -1213,7 +1213,7 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "Incorporar qualquer conteúdo da internet. Alguns sites podem restringir o acesso.",
"option": {
"embedUrl": {
@@ -1635,7 +1635,7 @@
"available": "",
"tv": "Solicitações de TV",
"movie": "Solicitações de filmes",
- "total": ""
+ "total": "Total"
},
"users": {
"main": "Principais usuários",
@@ -1656,8 +1656,8 @@
},
"tab": {
"workers": "",
- "queue": "",
- "statistics": ""
+ "queue": "Fila",
+ "statistics": "Estatísticas"
},
"currentIndex": "",
"healthCheck": {
@@ -1670,33 +1670,33 @@
},
"panel": {
"statistics": {
- "empty": "",
+ "empty": "Vazio",
"transcodes": "",
"transcodesCount": "",
"healthChecksCount": "",
"filesCount": "",
"savedSpace": "",
"healthChecks": "",
- "videoCodecs": "",
+ "videoCodecs": "Codecs",
"videoContainers": "",
"videoResolutions": ""
},
"workers": {
- "empty": "",
+ "empty": "Vazio",
"table": {
- "file": "",
- "eta": "",
- "progress": "",
- "transcode": "",
+ "file": "Ficheiro",
+ "eta": "TED",
+ "progress": "Progresso",
+ "transcode": "Transcodificar",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Vazio",
"table": {
- "file": "",
- "size": "",
- "transcode": "",
+ "file": "Ficheiro",
+ "size": "Tamanho",
+ "transcode": "Transcodificar",
"healthCheck": ""
}
}
@@ -1907,7 +1907,7 @@
"unrecognizedLink": ""
},
"layout": {
- "title": ""
+ "title": "Layout"
},
"background": {
"title": "Antecedentes"
@@ -2042,9 +2042,9 @@
"tools": {
"label": "Ferramentas",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2199,7 +2199,7 @@
},
"field": {
"id": {
- "label": ""
+ "label": "ID"
},
"creator": {
"label": "Criador"
@@ -2208,7 +2208,7 @@
"label": "Data de expiração"
},
"token": {
- "label": ""
+ "label": "Token"
}
}
}
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "Geral",
- "owner": "",
+ "owner": "Dono",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Placas",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Aparência",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2390,7 +2390,7 @@
},
"table": {
"header": {
- "id": "",
+ "id": "ID",
"createdBy": ""
}
}
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Ferramentas",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
diff --git a/packages/translation/src/lang/ro.json b/packages/translation/src/lang/ro.json
index 425861393..cee8e2520 100644
--- a/packages/translation/src/lang/ro.json
+++ b/packages/translation/src/lang/ro.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Aplicații",
+ "boards": "Planșe",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Token",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Setări",
"subtitle": ""
},
"finish": {
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Aplicații",
"item": {
"create": {
"label": "",
@@ -733,7 +733,7 @@
"field": {
"name": "Nume",
"size": "Mărime",
- "creator": ""
+ "creator": "Creator"
},
"action": {
"upload": {
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Aspect",
"option": {
"row": {
- "label": ""
+ "label": "Orizontal"
},
"column": {
- "label": ""
+ "label": "Vertical"
},
"grid": {
"label": ""
@@ -1056,7 +1056,7 @@
"label": "Orizontal"
},
"column": {
- "label": ""
+ "label": "Vertical"
},
"grid": {
"label": ""
@@ -1089,7 +1089,7 @@
"label": "Orizontal"
},
"column": {
- "label": ""
+ "label": "Vertical"
},
"grid": {
"label": ""
@@ -1183,7 +1183,7 @@
"checkList": "Lista de verificare cu bifă",
"increaseIndent": "Mărește spațierea",
"decreaseIndent": "Scade spațierea",
- "link": "",
+ "link": "Link",
"unlink": "Șterge link-ul",
"image": "Încorporează imagine",
"addTable": "Adaugă tabelă",
@@ -1213,7 +1213,7 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "Încorporați orice conținut de pe internet. Unele site-uri web pot restricționa accesul.",
"option": {
"embedUrl": {
@@ -1283,7 +1283,7 @@
}
},
"calendar": {
- "name": "",
+ "name": "Calendar",
"description": "",
"option": {
"releaseType": {
@@ -1635,7 +1635,7 @@
"available": "",
"tv": "Cereri seriale TV",
"movie": "Cereri filme",
- "total": ""
+ "total": "Total"
},
"users": {
"main": "Top utilizatori",
@@ -1648,55 +1648,55 @@
"description": "",
"option": {
"defaultView": {
- "label": ""
+ "label": "Afișare implicită"
},
"queuePageSize": {
"label": ""
}
},
"tab": {
- "workers": "",
- "queue": "",
- "statistics": ""
+ "workers": "Lucrători",
+ "queue": "Listă de așteptare",
+ "statistics": "Statistici"
},
"currentIndex": "",
"healthCheck": {
"title": "",
- "queued": "",
+ "queued": "Pus în așteptare",
"status": {
- "healthy": "",
- "unhealthy": ""
+ "healthy": "Sănătos",
+ "unhealthy": "Nesănătos"
}
},
"panel": {
"statistics": {
- "empty": "",
- "transcodes": "",
+ "empty": "Gol",
+ "transcodes": "Transcrieri",
"transcodesCount": "",
"healthChecksCount": "",
"filesCount": "",
"savedSpace": "",
"healthChecks": "",
- "videoCodecs": "",
- "videoContainers": "",
- "videoResolutions": ""
+ "videoCodecs": "Codec-uri",
+ "videoContainers": "Containere",
+ "videoResolutions": "Rezoluţie"
},
"workers": {
- "empty": "",
+ "empty": "Gol",
"table": {
- "file": "",
- "eta": "",
- "progress": "",
- "transcode": "",
+ "file": "Fișier",
+ "eta": "Timp rămas estimat",
+ "progress": "Progres",
+ "transcode": "Transcriere",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Gol",
"table": {
- "file": "",
- "size": "",
- "transcode": "",
+ "file": "Fișier",
+ "size": "Mărime",
+ "transcode": "Transcriere",
"healthCheck": ""
}
}
@@ -1892,7 +1892,7 @@
"label": "Nume"
},
"isPublic": {
- "label": "",
+ "label": "Public",
"description": ""
}
},
@@ -1903,7 +1903,7 @@
"title": "",
"section": {
"general": {
- "title": "",
+ "title": "General",
"unrecognizedLink": ""
},
"layout": {
@@ -2042,9 +2042,9 @@
"tools": {
"label": "Unelte",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2127,7 +2127,7 @@
"fieldsDisabledExternalProvider": "",
"setting": {
"general": {
- "title": "",
+ "title": "General",
"item": {
"language": "",
"board": "",
@@ -2199,16 +2199,16 @@
},
"field": {
"id": {
- "label": ""
+ "label": "ID"
},
"creator": {
- "label": ""
+ "label": "Creator"
},
"expirationDate": {
"label": "Data expirării"
},
"token": {
- "label": ""
+ "label": "Token"
}
}
}
@@ -2217,8 +2217,8 @@
"back": "",
"setting": {
"general": {
- "title": "",
- "owner": "",
+ "title": "General",
+ "owner": "Proprietar",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Planșe",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Aspect",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2390,7 +2390,7 @@
},
"table": {
"header": {
- "id": "",
+ "id": "ID",
"createdBy": ""
}
}
@@ -2589,7 +2589,7 @@
"create": {
"label": "Creează"
},
- "general": "",
+ "general": "General",
"security": "Securitate",
"board": "Planșe",
"groups": {
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Unelte",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
diff --git a/packages/translation/src/lang/ru.json b/packages/translation/src/lang/ru.json
index 256f2be8d..d9948c101 100644
--- a/packages/translation/src/lang/ru.json
+++ b/packages/translation/src/lang/ru.json
@@ -2,24 +2,24 @@
"init": {
"step": {
"start": {
- "title": "",
- "subtitle": "",
- "description": "",
+ "title": "Добро пожаловать в Homarr",
+ "subtitle": "Давайте начнем настройку вашего экземпляра Homarr.",
+ "description": "Для начала выберите, как вы хотите настроить ваш экземпляр Homarr.",
"action": {
- "scratch": "",
- "importOldmarr": ""
+ "scratch": "Начать с нуля",
+ "importOldmarr": "Импортировать из Homarr версии до 1.0"
}
},
"import": {
- "title": "",
- "subtitle": "",
+ "title": "Импорт данных",
+ "subtitle": "Вы можете импортировать данные из существующего экземпляра Homarr.",
"dropzone": {
- "title": "",
- "description": ""
+ "title": "Перетащите ZIP-файл сюда или нажмите для выбора",
+ "description": "Загруженный ZIP-файл будет обработан, и вы сможете выбрать, что хотите импортировать"
},
"fileInfo": {
"action": {
- "change": ""
+ "change": "Изменить файл"
}
},
"importSettings": {
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Приложения",
+ "boards": "Панели",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Токен",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Настройки",
"subtitle": ""
},
"finish": {
@@ -124,7 +124,7 @@
},
"field": {
"email": {
- "label": "",
+ "label": "Электронная почта",
"verified": ""
},
"username": {
@@ -134,14 +134,14 @@
"label": "Пароль",
"requirement": {
"length": "",
- "lowercase": "Включает строчную букву",
- "uppercase": "Включает заглавную букву",
- "number": "Включает цифру",
+ "lowercase": "Содержит строчную букву",
+ "uppercase": "Содержит заглавную букву",
+ "number": "Содержит цифру",
"special": ""
}
},
"passwordConfirm": {
- "label": "Подтвердите пароль"
+ "label": "Подтверждение пароля"
},
"previousPassword": {
"label": ""
@@ -158,7 +158,7 @@
},
"action": {
"login": {
- "label": "Вход в систему",
+ "label": "Вход",
"labelWith": "",
"notification": {
"success": {
@@ -176,10 +176,10 @@
}
},
"register": {
- "label": "Создать аккаунт",
+ "label": "Создать учётную запись",
"notification": {
"success": {
- "title": "Аккаунт создан",
+ "title": "Учётная запись создана",
"message": ""
},
"error": {
@@ -188,7 +188,7 @@
}
}
},
- "create": "Создать пользователя",
+ "create": "Создание пользователя",
"changePassword": {
"label": "",
"notification": {
@@ -288,7 +288,7 @@
"name": "",
"search": "",
"field": {
- "name": "Имя",
+ "name": "Название",
"members": ""
},
"permission": {
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Приложения",
"item": {
"create": {
"label": "",
@@ -540,7 +540,7 @@
},
"field": {
"name": {
- "label": "Имя"
+ "label": "Название"
},
"description": {
"label": ""
@@ -608,7 +608,7 @@
},
"field": {
"name": {
- "label": "Имя"
+ "label": "Название"
},
"url": {
"label": ""
@@ -629,7 +629,7 @@
"message": ""
},
"invalidUrl": {
- "title": "Неверный URL",
+ "title": "Недействительный URL",
"message": ""
},
"secretNotDefined": {
@@ -731,7 +731,7 @@
"plural": "",
"search": "",
"field": {
- "name": "Имя",
+ "name": "Название",
"size": "Размер",
"creator": "Создатель"
},
@@ -773,7 +773,7 @@
"apply": "Применить",
"backToOverview": "",
"create": "Создать",
- "edit": "Изменить",
+ "edit": "Редактировать",
"import": "",
"insert": "Вставить",
"remove": "Удалить",
@@ -784,11 +784,11 @@
"discard": "",
"confirm": "Подтвердить",
"continue": "",
- "previous": "Предыдущий",
+ "previous": "Назад",
"next": "Далее",
"checkoutDocs": "",
"checkLogs": "",
- "tryAgain": "Попробовать снова",
+ "tryAgain": "Повторить",
"loading": ""
},
"here": "",
@@ -847,13 +847,13 @@
"management": "",
"preferences": "Ваши настройки",
"logout": "",
- "login": "Вход в систему",
+ "login": "Вход",
"homeBoard": "",
"loggedOut": "",
"updateAvailable": ""
}
},
- "dangerZone": "Зона опасности",
+ "dangerZone": "Опасная зона",
"noResults": "Результаты не найдены",
"preview": {
"show": "",
@@ -861,7 +861,7 @@
},
"zod": {
"errors": {
- "default": "Данное поле недействительно",
+ "default": "Недопустимое значение поля",
"required": "Это поле обязательно",
"string": {
"startsWith": "Значение данного поля должно начинаться с {startsWith}",
@@ -903,7 +903,7 @@
"category": {
"field": {
"name": {
- "label": "Имя"
+ "label": "Название"
}
},
"action": {
@@ -999,7 +999,7 @@
"label": ""
},
"openInNewTab": {
- "label": "Открыть в новой вкладке"
+ "label": "Открывать в новой вкладке"
},
"showTitle": {
"label": ""
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Макет",
"option": {
"row": {
- "label": ""
+ "label": "Горизонтально"
},
"column": {
- "label": ""
+ "label": "Вертикально"
},
"grid": {
"label": ""
@@ -1053,10 +1053,10 @@
"label": "Макет",
"option": {
"row": {
- "label": "Горизонтальный"
+ "label": "Горизонтально"
},
"column": {
- "label": "Вертикальный"
+ "label": "Вертикально"
},
"grid": {
"label": ""
@@ -1072,24 +1072,24 @@
"integrationsDisconnected": ""
},
"data": {
- "adsBlockedToday": "Заблокировано сегодня",
- "adsBlockedTodayPercentage": "Заблокировано сегодня",
+ "adsBlockedToday": "заблокировано сегодня",
+ "adsBlockedTodayPercentage": "заблокировано сегодня",
"dnsQueriesToday": "запросов сегодня",
"domainsBeingBlocked": ""
}
},
"dnsHoleControls": {
"name": "",
- "description": "Управляйте PiHole или AdGuard прямо с вашей панели",
+ "description": "Управляйте PiHole или AdGuard с панели управления",
"option": {
"layout": {
"label": "Макет",
"option": {
"row": {
- "label": "Горизонтальный"
+ "label": "Горизонтально"
},
"column": {
- "label": "Вертикальный"
+ "label": "Вертикально"
},
"grid": {
"label": ""
@@ -1156,22 +1156,22 @@
"description": "",
"option": {
"showToolbar": {
- "label": "Показать панель инструментов для написания текста с использованием разметки Markdown"
+ "label": "Показывать панель инструментов для работы с Markdown"
},
"allowReadOnlyCheck": {
- "label": "Разрешить проверку в режиме \"только для чтения\""
+ "label": "Разрешить отметки в режиме только для чтения"
},
"content": {
"label": "Содержимое блокнота"
}
},
"controls": {
- "bold": "Жирный",
+ "bold": "Полужирный",
"italic": "Курсив",
- "strikethrough": "Зачеркнутый",
- "underline": "Подчеркнутый",
+ "strikethrough": "Зачёркнутый",
+ "underline": "Подчёркнутый",
"colorText": "Цвет текста",
- "colorHighlight": "Выделение текста цветом",
+ "colorHighlight": "Цвет выделения текста",
"code": "Код",
"clear": "Очистить форматирование",
"heading": "Заголовок {level}",
@@ -1180,21 +1180,21 @@
"horizontalLine": "Горизонтальная линия",
"bulletList": "Маркированный список",
"orderedList": "Нумерованный список",
- "checkList": "Чек-лист",
+ "checkList": "Список с галочками",
"increaseIndent": "Увеличить отступ",
"decreaseIndent": "Уменьшить отступ",
"link": "Ссылка",
- "unlink": "Удалить ссылку",
+ "unlink": "Убрать ссылку",
"image": "Вставить изображение",
"addTable": "Добавить таблицу",
"deleteTable": "Удалить таблицу",
"colorCell": "Цвет ячейки",
- "mergeCell": "Переключить объединение ячеек",
- "addColumnLeft": "Добавить столбец перед",
- "addColumnRight": "Добавить столбец после",
+ "mergeCell": "Объединить/разделить ячейки",
+ "addColumnLeft": "Добавить столбец слева",
+ "addColumnRight": "Добавить столбец справа",
"deleteColumn": "Удалить столбец",
- "addRowTop": "Добавить строку перед",
- "addRowBelow": "Добавить строку после",
+ "addRowTop": "Добавить строку сверху",
+ "addRowBelow": "Добавить строку снизу",
"deleteRow": "Удалить строку"
},
"align": {
@@ -1204,7 +1204,7 @@
},
"popover": {
"clearColor": "Очистить цвет",
- "source": "Источник",
+ "source": "Исходный код",
"widthPlaceholder": "Значение в % или пикселях",
"columns": "Столбцы",
"rows": "Строки",
@@ -1213,11 +1213,11 @@
}
},
"iframe": {
- "name": "",
- "description": "Встраиваемое содержимое из интернета. Некоторые веб-сайты могут ограничивать доступ.",
+ "name": "Встраиваемый фрейм",
+ "description": "Встраивает любой контент из интернета. Некоторые сайты могут ограничивать доступ.",
"option": {
"embedUrl": {
- "label": "URL-адрес на встраивание"
+ "label": "URL для встраивания"
},
"allowFullScreen": {
"label": "Разрешить полноэкранный режим"
@@ -1232,7 +1232,7 @@
"label": "Разрешить оплату"
},
"allowAutoPlay": {
- "label": "Разрешить авто воспроизведение"
+ "label": "Разрешить автовоспроизведение"
},
"allowMicrophone": {
"label": "Разрешить микрофон"
@@ -1246,7 +1246,7 @@
},
"error": {
"noUrl": "",
- "noBrowerSupport": "Ваш браузер не поддерживает iframes. Пожалуйста, обновите свой браузер."
+ "noBrowerSupport": "Ваш браузер не поддерживает встраиваемые фреймы. Пожалуйста, обновите браузер."
}
},
"smartHome-entityState": {
@@ -1287,7 +1287,7 @@
"description": "",
"option": {
"releaseType": {
- "label": "Тип релиза в Radarr",
+ "label": "Тип релиза Radarr",
"options": {
"inCinemas": "",
"digitalRelease": "",
@@ -1304,7 +1304,7 @@
},
"weather": {
"name": "Погода",
- "description": "Отображает текущую информацию о погоде для заданного местоположения.",
+ "description": "Отображает текущую информацию о погоде для указанного местоположения.",
"option": {
"isFormatFahrenheit": {
"label": ""
@@ -1329,14 +1329,14 @@
},
"kind": {
"clear": "Ясно",
- "mainlyClear": "Малооблачно",
+ "mainlyClear": "Преимущественно ясно",
"fog": "Туман",
"drizzle": "Морось",
- "freezingDrizzle": "Изморозь, возможен гололёд",
+ "freezingDrizzle": "Ледяная морось",
"rain": "Дождь",
- "freezingRain": "Моросящий дождь",
+ "freezingRain": "Ледяной дождь",
"snowFall": "Снегопад",
- "snowGrains": "Снежные зерна",
+ "snowGrains": "Снежная крупа",
"rainShowers": "Ливень",
"snowShowers": "Снегопад",
"thunderstorm": "Гроза",
@@ -1345,28 +1345,28 @@
}
},
"indexerManager": {
- "name": "Статус менеджера индексаторов",
+ "name": "Состояние менеджера индексации",
"description": "",
"option": {
"openIndexerSiteInNewTab": {
"label": ""
}
},
- "title": "Статус менеджера индексаторов",
- "testAll": "Тестировать все",
+ "title": "Менеджер индексации",
+ "testAll": "Проверить все",
"error": {
"internalServerError": ""
}
},
"healthMonitoring": {
"name": "Мониторинг состояния системы",
- "description": "Отображает информацию о состоянии и статусе вашей системы(систем).",
+ "description": "Отображает информацию о состоянии и работоспособности ваших систем.",
"option": {
"fahrenheit": {
- "label": "Температура процессора в градусах Фаренгейта"
+ "label": "Температура CPU в градусах Фаренгейта"
},
"cpu": {
- "label": "Показывать информацию о процессоре"
+ "label": "Показывать информацию о CPU"
},
"memory": {
"label": "Показать информацию о памяти"
@@ -1386,7 +1386,7 @@
"minute": "",
"minutes": "",
"used": "",
- "available": "Доступен",
+ "available": "Доступно",
"lastSeen": ""
},
"memory": {},
@@ -1432,11 +1432,11 @@
"option": {}
},
"video": {
- "name": "Трансляция видео",
- "description": "Встраивание видео или прямой трансляции видео с камеры или веб-сайта",
+ "name": "Видеопоток",
+ "description": "Встраивание видеопотока или видео с камеры или веб-сайта",
"option": {
"feedUrl": {
- "label": "URL-адрес потока"
+ "label": "URL потока"
},
"hasAutoPlay": {
"label": "Автовоспроизведение",
@@ -1512,7 +1512,7 @@
},
"downSpeed": {
"columnTitle": "Загрузка",
- "detailsTitle": "Скорость скачивания"
+ "detailsTitle": "Скорость загрузки"
},
"index": {
"columnTitle": "",
@@ -1565,7 +1565,7 @@
}
},
"states": {
- "downloading": "Скачивается",
+ "downloading": "Загрузка",
"queued": "Очередь",
"paused": "Приостановлено",
"completed": "Завершено",
@@ -1601,7 +1601,7 @@
},
"mediaRequests-requestList": {
"name": "",
- "description": "Просмотреть список всех медиа-запросов из вашего экземпляра Overseerr или Jellyseerr",
+ "description": "Просмотр списка всех запросов медиаконтента из вашего экземпляра Overseerr или Jellyseerr",
"option": {
"linksTargetNewTab": {
"label": "Открывать ссылки в новой вкладке"
@@ -1617,19 +1617,19 @@
"pending": "",
"processing": "",
"partiallyAvailable": "Частично",
- "available": "Доступен"
+ "available": "Доступно"
},
"toBeDetermined": ""
},
"mediaRequests-requestStats": {
"name": "",
- "description": "Статистика ваших медиазапросов",
+ "description": "Статистика по запросам медиаконтента",
"option": {},
"titles": {
"stats": {
- "main": "Статистика медиа",
+ "main": "Статистика медиаконтента",
"approved": "Уже одобрено",
- "pending": "Ожидающие утверждения",
+ "pending": "Ожидает одобрения",
"processing": "",
"declined": "",
"available": "",
@@ -1648,55 +1648,55 @@
"description": "",
"option": {
"defaultView": {
- "label": ""
+ "label": "Вид по умолчанию"
},
"queuePageSize": {
"label": ""
}
},
"tab": {
- "workers": "",
- "queue": "",
- "statistics": ""
+ "workers": "Обработчики",
+ "queue": "Очередь",
+ "statistics": "Статистика"
},
"currentIndex": "",
"healthCheck": {
"title": "",
- "queued": "",
+ "queued": "Очередь",
"status": {
- "healthy": "",
- "unhealthy": ""
+ "healthy": "Исправно",
+ "unhealthy": "Неисправен"
}
},
"panel": {
"statistics": {
- "empty": "",
- "transcodes": "",
+ "empty": "Пусто",
+ "transcodes": "Перекодирования",
"transcodesCount": "",
"healthChecksCount": "",
"filesCount": "",
"savedSpace": "",
"healthChecks": "",
- "videoCodecs": "",
- "videoContainers": "",
- "videoResolutions": ""
+ "videoCodecs": "Кодеки",
+ "videoContainers": "Контейнеры",
+ "videoResolutions": "Разрешения"
},
"workers": {
- "empty": "",
+ "empty": "Пусто",
"table": {
- "file": "",
- "eta": "",
- "progress": "",
- "transcode": "",
+ "file": "Файл",
+ "eta": "Осталось",
+ "progress": "Прогресс",
+ "transcode": "Перекодирование",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Пусто",
"table": {
- "file": "",
- "size": "",
- "transcode": "",
+ "file": "Файл",
+ "size": "Размер",
+ "transcode": "Перекодирование",
"healthCheck": ""
}
}
@@ -1856,7 +1856,7 @@
}
},
"backgroundImageSize": {
- "label": "Размер фонового изображения",
+ "label": "Повторение фонового изображения",
"option": {
"cover": {
"label": "",
@@ -1879,7 +1879,7 @@
},
"customCss": {
"label": "",
- "description": "Дополнительная настройка вашей панели с использованием CSS, рекомендуется только опытным пользователям",
+ "description": "Дополнительная настройка панели управления с помощью CSS (рекомендуется только опытным пользователям)",
"customClassesAlert": {
"title": "",
"description": ""
@@ -1889,7 +1889,7 @@
"label": ""
},
"name": {
- "label": "Имя"
+ "label": "Название"
},
"isPublic": {
"label": "Публичный",
@@ -1903,7 +1903,7 @@
"title": "",
"section": {
"general": {
- "title": "Общие",
+ "title": "Основное",
"unrecognizedLink": ""
},
"layout": {
@@ -1935,7 +1935,7 @@
}
},
"dangerZone": {
- "title": "Зона опасности",
+ "title": "Опасная зона",
"action": {
"rename": {
"label": "",
@@ -1971,7 +1971,7 @@
"description": "",
"button": "",
"confirm": {
- "title": "Удалить панель",
+ "title": "Удаление панели",
"description": ""
}
}
@@ -1981,7 +1981,7 @@
},
"error": {
"noBoard": {
- "title": "",
+ "title": "Добро пожаловать в Homarr",
"description": "",
"link": "",
"notice": ""
@@ -2042,15 +2042,15 @@
"tools": {
"label": "Инструменты",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
"settings": "Настройки",
"help": {
- "label": "Помощь",
+ "label": "Справка",
"items": {
"documentation": "Документация",
"submitIssue": "",
@@ -2100,7 +2100,7 @@
"delete": {
"label": "Удалить навсегда",
"confirm": {
- "title": "Удалить панель",
+ "title": "Удаление панели",
"description": ""
}
}
@@ -2113,7 +2113,7 @@
"createBoard": {
"field": {
"name": {
- "label": "Имя"
+ "label": "Название"
}
}
}
@@ -2127,12 +2127,12 @@
"fieldsDisabledExternalProvider": "",
"setting": {
"general": {
- "title": "Общие",
+ "title": "Основное",
"item": {
"language": "",
"board": "",
"firstDayOfWeek": "Первый день недели",
- "accessibility": "Доступность"
+ "accessibility": "Специальные возможности"
}
},
"security": {
@@ -2143,14 +2143,14 @@
}
},
"list": {
- "metaTitle": "Управлять пользователями",
+ "metaTitle": "Управление пользователями",
"title": "Пользователи"
},
"edit": {
"metaTitle": ""
},
"create": {
- "metaTitle": "Создать пользователя",
+ "metaTitle": "Создание пользователя",
"title": "",
"step": {
"personalInformation": {
@@ -2180,32 +2180,32 @@
}
},
"invite": {
- "title": "Управление приглашениями пользователей",
+ "title": "Управление приглашениями",
"action": {
"new": {
"title": "",
- "description": "По истечении этого срока приглашение перестает быть действительным, и получатель приглашения не сможет создать аккаунт."
+ "description": "После истечения срока действия приглашение станет недействительным, и получатель не сможет создать учётную запись."
},
"copy": {
"title": "",
"description": "",
- "link": "Ссылка на приглашение",
+ "link": "Ссылка приглашения",
"button": ""
},
"delete": {
"title": "Удалить приглашение",
- "description": "Вы уверены, что хотите удалить это приглашение? Пользователи, получившие эту ссылку, больше не смогут создать аккаунт по этой ссылке."
+ "description": "Вы уверены, что хотите удалить это приглашение? Пользователи с этой ссылкой больше не смогут создать учётную запись."
}
},
"field": {
"id": {
- "label": ""
+ "label": "ID"
},
"creator": {
"label": "Создатель"
},
"expirationDate": {
- "label": "Срок действия"
+ "label": "Дата истечения срока"
},
"token": {
"label": "Токен"
@@ -2217,8 +2217,8 @@
"back": "",
"setting": {
"general": {
- "title": "Общие",
- "owner": "",
+ "title": "Основное",
+ "owner": "Владелец",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Панели",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Внешний вид",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2390,7 +2390,7 @@
},
"table": {
"header": {
- "id": "",
+ "id": "ID",
"createdBy": ""
}
}
@@ -2427,7 +2427,7 @@
},
"field": {
"name": {
- "label": "Имя"
+ "label": "Название"
},
"state": {
"label": "Состояние",
@@ -2557,7 +2557,7 @@
"integrations": {
"label": "",
"edit": {
- "label": "Изменить"
+ "label": "Редактировать"
},
"new": {
"label": ""
@@ -2569,7 +2569,7 @@
"label": ""
},
"edit": {
- "label": "Изменить"
+ "label": "Редактировать"
}
},
"medias": {
@@ -2581,7 +2581,7 @@
"label": ""
},
"edit": {
- "label": "Изменить"
+ "label": "Редактировать"
}
},
"users": {
@@ -2589,7 +2589,7 @@
"create": {
"label": "Создать"
},
- "general": "Общие",
+ "general": "Основное",
"security": "Безопасность",
"board": "Панели",
"groups": {
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Инструменты",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
@@ -2766,7 +2766,7 @@
"title": ""
},
"help": {
- "title": "Помощь",
+ "title": "Справка",
"option": {
"documentation": {
"label": "Документация"
@@ -2813,7 +2813,7 @@
"label": ""
},
"manageUser": {
- "label": "Управлять пользователями"
+ "label": "Управление пользователями"
},
"manageInvite": {
"label": ""
@@ -2891,7 +2891,7 @@
"search": "",
"field": {
"name": {
- "label": "Имя"
+ "label": "Название"
},
"short": {
"label": ""
diff --git a/packages/translation/src/lang/sk.json b/packages/translation/src/lang/sk.json
index dac56eb5a..40e57ae81 100644
--- a/packages/translation/src/lang/sk.json
+++ b/packages/translation/src/lang/sk.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Aplikácie",
+ "boards": "Dosky",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Token",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Nastavenia",
"subtitle": ""
},
"finish": {
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Aplikácie",
"item": {
"create": {
"label": "",
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Rozloženie",
"option": {
"row": {
- "label": ""
+ "label": "Horizontálne"
},
"column": {
- "label": ""
+ "label": "Vertikálne"
},
"grid": {
"label": ""
@@ -1213,7 +1213,7 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "Vložte akýkoľvek obsah z internetu. Niektoré webové stránky môžu obmedziť prístup.",
"option": {
"embedUrl": {
@@ -1648,55 +1648,55 @@
"description": "",
"option": {
"defaultView": {
- "label": ""
+ "label": "Predvolené zobrazenie"
},
"queuePageSize": {
"label": ""
}
},
"tab": {
- "workers": "",
- "queue": "",
- "statistics": ""
+ "workers": "Pracovníci",
+ "queue": "Fronta",
+ "statistics": "Statistiky"
},
"currentIndex": "",
"healthCheck": {
"title": "",
- "queued": "",
+ "queued": "V poradí",
"status": {
- "healthy": "",
- "unhealthy": ""
+ "healthy": "Zdravý",
+ "unhealthy": "Nezdravý"
}
},
"panel": {
"statistics": {
- "empty": "",
- "transcodes": "",
+ "empty": "Prázdny",
+ "transcodes": "Transkodér",
"transcodesCount": "",
"healthChecksCount": "",
"filesCount": "",
"savedSpace": "",
"healthChecks": "",
- "videoCodecs": "",
- "videoContainers": "",
- "videoResolutions": ""
+ "videoCodecs": "Kodeky",
+ "videoContainers": "Kontajnery",
+ "videoResolutions": "Rozlíšenie"
},
"workers": {
- "empty": "",
+ "empty": "Prázdny",
"table": {
- "file": "",
- "eta": "",
- "progress": "",
- "transcode": "",
+ "file": "Súbor",
+ "eta": "Odhad",
+ "progress": "Stav",
+ "transcode": "Transkodér",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Prázdny",
"table": {
- "file": "",
- "size": "",
- "transcode": "",
+ "file": "Súbor",
+ "size": "Veľkosť",
+ "transcode": "Transkodér",
"healthCheck": ""
}
}
@@ -2042,9 +2042,9 @@
"tools": {
"label": "Nástroje",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2199,7 +2199,7 @@
},
"field": {
"id": {
- "label": ""
+ "label": "ID"
},
"creator": {
"label": "Autor"
@@ -2208,7 +2208,7 @@
"label": "Dátum vypršania"
},
"token": {
- "label": ""
+ "label": "Token"
}
}
}
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "Všeobecné",
- "owner": "",
+ "owner": "Vlastník",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Dosky",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Vzhľad",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2390,7 +2390,7 @@
},
"table": {
"header": {
- "id": "",
+ "id": "ID",
"createdBy": ""
}
}
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Nástroje",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
diff --git a/packages/translation/src/lang/sl.json b/packages/translation/src/lang/sl.json
index 7bdac931d..0eb9cbe13 100644
--- a/packages/translation/src/lang/sl.json
+++ b/packages/translation/src/lang/sl.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Aplikacije",
+ "boards": "Deske",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Žeton",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Nastavitve",
"subtitle": ""
},
"finish": {
@@ -293,7 +293,7 @@
},
"permission": {
"admin": {
- "title": "",
+ "title": "Admin",
"item": {
"admin": {
"label": "",
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Aplikacije",
"item": {
"create": {
"label": "",
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Postavitev",
"option": {
"row": {
- "label": ""
+ "label": "Vodoravno"
},
"column": {
- "label": ""
+ "label": "Navpično"
},
"grid": {
"label": ""
@@ -1199,7 +1199,7 @@
},
"align": {
"left": "Leva stran",
- "center": "",
+ "center": "Center",
"right": "Desno"
},
"popover": {
@@ -1213,7 +1213,7 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "Vstavite katero koli vsebino iz interneta. Nekatera spletna mesta lahko omejijo dostop.",
"option": {
"embedUrl": {
@@ -1656,7 +1656,7 @@
},
"tab": {
"workers": "",
- "queue": "",
+ "queue": "Čakalna vrsta",
"statistics": ""
},
"currentIndex": "",
@@ -1670,7 +1670,7 @@
},
"panel": {
"statistics": {
- "empty": "",
+ "empty": "Prazno",
"transcodes": "",
"transcodesCount": "",
"healthChecksCount": "",
@@ -1682,20 +1682,20 @@
"videoResolutions": ""
},
"workers": {
- "empty": "",
+ "empty": "Prazno",
"table": {
"file": "",
- "eta": "",
- "progress": "",
+ "eta": "ETA",
+ "progress": "Napredek",
"transcode": "",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Prazno",
"table": {
"file": "",
- "size": "",
+ "size": "Velikost",
"transcode": "",
"healthCheck": ""
}
@@ -2042,7 +2042,7 @@
"tools": {
"label": "Orodja",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
"api": "",
"tasks": ""
@@ -2199,7 +2199,7 @@
},
"field": {
"id": {
- "label": ""
+ "label": "ID"
},
"creator": {
"label": "Ustvarjalec"
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "Splošno",
- "owner": "",
+ "owner": "Lastnik",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Deske",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Videz",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2390,7 +2390,7 @@
},
"table": {
"header": {
- "id": "",
+ "id": "ID",
"createdBy": ""
}
}
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Orodja",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
diff --git a/packages/translation/src/lang/sv.json b/packages/translation/src/lang/sv.json
index 51e56fde7..26b80deb7 100644
--- a/packages/translation/src/lang/sv.json
+++ b/packages/translation/src/lang/sv.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Appar",
+ "boards": "Tavlor",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Token",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Inställningar",
"subtitle": ""
},
"finish": {
@@ -293,7 +293,7 @@
},
"permission": {
"admin": {
- "title": "",
+ "title": "Admin",
"item": {
"admin": {
"label": "",
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Appar",
"item": {
"create": {
"label": "",
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Layout",
"option": {
"row": {
- "label": ""
+ "label": "Horisontal"
},
"column": {
- "label": ""
+ "label": "Vertikal"
},
"grid": {
"label": ""
@@ -1050,7 +1050,7 @@
"description": "",
"option": {
"layout": {
- "label": "",
+ "label": "Layout",
"option": {
"row": {
"label": "Horisontal"
@@ -1083,7 +1083,7 @@
"description": "Styr PiHole eller AdGuard från din instrumentpanel",
"option": {
"layout": {
- "label": "",
+ "label": "Layout",
"option": {
"row": {
"label": "Horisontal"
@@ -1213,7 +1213,7 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "Bädda in valfritt innehåll från internet. Vissa webbplatser kan begränsa åtkomsten.",
"option": {
"embedUrl": {
@@ -1522,7 +1522,7 @@
"columnTitle": ""
},
"integration": {
- "columnTitle": ""
+ "columnTitle": "Integration"
},
"name": {
"columnTitle": ""
@@ -1648,55 +1648,55 @@
"description": "",
"option": {
"defaultView": {
- "label": ""
+ "label": "Standardvy"
},
"queuePageSize": {
"label": ""
}
},
"tab": {
- "workers": "",
- "queue": "",
- "statistics": ""
+ "workers": "Arbetare",
+ "queue": "Kö",
+ "statistics": "Statistik"
},
"currentIndex": "",
"healthCheck": {
"title": "",
- "queued": "",
+ "queued": "Köad",
"status": {
- "healthy": "",
- "unhealthy": ""
+ "healthy": "Hälsosam",
+ "unhealthy": "Ohälsosam"
}
},
"panel": {
"statistics": {
- "empty": "",
- "transcodes": "",
+ "empty": "Tom",
+ "transcodes": "Omkodning",
"transcodesCount": "",
"healthChecksCount": "",
"filesCount": "",
"savedSpace": "",
"healthChecks": "",
- "videoCodecs": "",
- "videoContainers": "",
- "videoResolutions": ""
+ "videoCodecs": "Codecs",
+ "videoContainers": "Containers",
+ "videoResolutions": "Upplösningar"
},
"workers": {
- "empty": "",
+ "empty": "Tom",
"table": {
- "file": "",
- "eta": "",
- "progress": "",
- "transcode": "",
+ "file": "Fil",
+ "eta": "Beräknad sluttid",
+ "progress": "Förlopp",
+ "transcode": "Omkoda",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Tom",
"table": {
- "file": "",
- "size": "",
- "transcode": "",
+ "file": "Fil",
+ "size": "Storlek",
+ "transcode": "Omkoda",
"healthCheck": ""
}
}
@@ -1907,7 +1907,7 @@
"unrecognizedLink": ""
},
"layout": {
- "title": ""
+ "title": "Layout"
},
"background": {
"title": "Bakgrund"
@@ -2042,9 +2042,9 @@
"tools": {
"label": "Verktyg",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2199,7 +2199,7 @@
},
"field": {
"id": {
- "label": ""
+ "label": "ID"
},
"creator": {
"label": "Skapare"
@@ -2208,7 +2208,7 @@
"label": "Utgångsdatum"
},
"token": {
- "label": ""
+ "label": "Token"
}
}
}
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "Allmänt",
- "owner": "",
+ "owner": "Ägare",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Tavlor",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Utseende",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2390,7 +2390,7 @@
},
"table": {
"header": {
- "id": "",
+ "id": "ID",
"createdBy": ""
}
}
@@ -2419,7 +2419,7 @@
}
},
"docker": {
- "title": "",
+ "title": "Containers",
"table": {
"updated": "",
"search": "",
@@ -2442,7 +2442,7 @@
}
},
"containerImage": {
- "label": ""
+ "label": "Image"
},
"ports": {
"label": "Portar"
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Verktyg",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
@@ -2749,7 +2749,7 @@
"description": ""
},
"torrent": {
- "name": "",
+ "name": "Torrents",
"description": ""
},
"youTube": {
diff --git a/packages/translation/src/lang/tr.json b/packages/translation/src/lang/tr.json
index 0e7097c93..9855dea0f 100644
--- a/packages/translation/src/lang/tr.json
+++ b/packages/translation/src/lang/tr.json
@@ -2,130 +2,130 @@
"init": {
"step": {
"start": {
- "title": "",
- "subtitle": "",
- "description": "",
+ "title": "Homarr'a Hoş Geldiniz",
+ "subtitle": "Homarr örneğinizi kurmaya başlayalım.",
+ "description": "Başlamak için lütfen Homarr örneğinizi nasıl kurmak istediğinizi seçin.",
"action": {
- "scratch": "",
- "importOldmarr": ""
+ "scratch": "Sıfırdan başlayın",
+ "importOldmarr": "Homarr 1.0'dan önceki yedeğinizi içe aktarın"
}
},
"import": {
- "title": "",
- "subtitle": "",
+ "title": "Verileri içe aktar",
+ "subtitle": "Mevcut bir Homarr örneğinden alınan verileri içe aktarabilirsiniz.",
"dropzone": {
- "title": "",
- "description": ""
+ "title": "Zip dosyasını buraya sürükleyin veya göz atmak için tıklayın",
+ "description": "Seçtiğiniz zip işlenecek ve içe aktarmak istediğiniz verileri seçebileceksiniz"
},
"fileInfo": {
"action": {
- "change": ""
+ "change": "Dosyayı değiştir"
}
},
"importSettings": {
- "title": "",
- "description": ""
+ "title": "İçe aktarma ayarları",
+ "description": "İçe aktarma işlevlerini yapılandırın"
},
"boardSelection": {
- "title": "",
- "description": "",
+ "title": "{count} pano bulundu",
+ "description": "İçe aktarılacak tüm panoların boyutlarını seçin",
"action": {
- "selectAll": "",
- "unselectAll": ""
+ "selectAll": "Tümünü seç",
+ "unselectAll": "Tüm seçimi kaldır"
}
},
"summary": {
- "title": "",
- "description": "",
+ "title": "İçe aktarma özeti",
+ "description": "Aşağıdaki özeti kontrol ederek içe aktarılacak işlevleri görebilirsiniz",
"action": {
- "import": ""
+ "import": "İçe aktarmayı onayla ve devam et"
},
"entities": {
- "apps": "",
- "boards": "",
- "integrations": "",
- "credentialUsers": ""
+ "apps": "Uygulamalar",
+ "boards": "Paneller",
+ "integrations": "Entegrasyonlar",
+ "credentialUsers": "Kullanıcı kimlik Bilgileri"
}
},
"tokenModal": {
- "title": "",
+ "title": "İçe aktarma token'ını girin",
"field": {
"token": {
- "label": "",
- "description": ""
+ "label": "Erişim Anahtarı",
+ "description": "Önceki homarr örneğinizden aldığınız içe aktarma Token'ını girin"
}
},
"notification": {
"error": {
- "title": "",
- "message": ""
+ "title": "Geçersiz token",
+ "message": "Girdiğiniz token geçersiz"
}
}
}
},
"user": {
- "title": "",
- "subtitle": "",
+ "title": "Yönetici",
+ "subtitle": "Yönetici kullanıcınız için kimlik bilgilerini girin.",
"notification": {
"success": {
- "title": "",
- "message": ""
+ "title": "Kullanıcı oluşturuldu",
+ "message": "Kullanıcı başarıyla oluşturuldu"
},
"error": {
- "title": ""
+ "title": "Kullanıcı oluşturma başarısız oldu"
}
}
},
"group": {
- "title": "",
- "subtitle": "",
+ "title": "Dış grup",
+ "subtitle": "Harici kullanıcılar için kullanılacak grubu belirtin.",
"form": {
"name": {
- "label": "",
- "description": ""
+ "label": "Grup adı",
+ "description": "Ad, harici sağlayıcının yönetici grubuyla eşleşmelidir"
}
}
},
"settings": {
- "title": "",
- "subtitle": ""
+ "title": "Ayarlar",
+ "subtitle": "Sunucu ayarlarınızı yapılandırın."
},
"finish": {
- "title": "",
- "subtitle": "",
- "description": "",
+ "title": "Kurulumu Bitir",
+ "subtitle": "Başlamaya hazırsınız!",
+ "description": "Kurulum sürecini başarıyla tamamladınız. Artık Homarr'ı kullanmaya başlayabilirsiniz. Sonraki eyleminizi seçin:",
"action": {
- "goToBoard": "",
- "createBoard": "",
- "inviteUser": "",
- "docs": ""
+ "goToBoard": "{name} panosuna git",
+ "createBoard": "İlk panonuzu oluşturun",
+ "inviteUser": "Yeni kullanıcı davet et",
+ "docs": "Dökümanları okuyun"
}
}
},
- "backToStart": ""
+ "backToStart": "Başlangıca geri dön"
},
"user": {
"title": "Kullanıcılar",
"name": "Kullanıcı",
"page": {
"login": {
- "title": "",
- "subtitle": ""
+ "title": "Hesabınıza giriş yapın",
+ "subtitle": "Tekrar hoş geldiniz! Lütfen kimlik bilgilerinizi girin"
},
"invite": {
- "title": "",
- "subtitle": "",
- "description": ""
+ "title": "Homarr'a Katıl",
+ "subtitle": "Homarr'a hoş geldiniz! Lütfen hesabınızı oluşturun",
+ "description": "{username} tarafından davet edildiniz"
},
"init": {
- "title": "",
- "subtitle": ""
+ "title": "Yeni Homarr kurulumu",
+ "subtitle": "Lütfen yönetici kullanıcısını oluşturun"
}
},
"field": {
"email": {
"label": "E-Posta",
- "verified": ""
+ "verified": "Doğrulandı"
},
"username": {
"label": "Kullanıcı adı"
@@ -133,46 +133,46 @@
"password": {
"label": "Şifre",
"requirement": {
- "length": "",
+ "length": "En az 8 karakter içermeli",
"lowercase": "Küçük harf içermeli",
"uppercase": "Büyük harf içermeli",
"number": "Rakam içermeli",
- "special": ""
+ "special": "Özel sembol içermeli"
}
},
"passwordConfirm": {
"label": "Şifreyi onayla"
},
"previousPassword": {
- "label": ""
+ "label": "Eski Şifre"
},
"homeBoard": {
- "label": ""
+ "label": "Ana sayfa panosu"
},
"pingIconsEnabled": {
- "label": ""
+ "label": "Pingler için simgeler kullanın"
}
},
"error": {
- "usernameTaken": ""
+ "usernameTaken": "Kullanıcı adı önceden alındı"
},
"action": {
"login": {
"label": "Giriş",
- "labelWith": "",
+ "labelWith": "{provider} ile giriş yapın",
"notification": {
"success": {
- "title": "",
- "message": ""
+ "title": "Giriş başarılı",
+ "message": "Şu anda giriş yaptınız"
},
"error": {
- "title": "",
- "message": ""
+ "title": "Giriş başarısız",
+ "message": "Girişiniz başarısız oldu"
}
},
"forgotPassword": {
- "label": "",
- "description": ""
+ "label": "Şifrenizi mi unuttunuz?",
+ "description": "Yöneticiniz parolanızı sıfırlamak için aşağıdaki komutu kullanabilir:"
}
},
"register": {
@@ -180,81 +180,81 @@
"notification": {
"success": {
"title": "Hesap oluşturuldu",
- "message": ""
+ "message": "Devam etmek için lütfen giriş yapın"
},
"error": {
- "title": "",
- "message": ""
+ "title": "Hesap oluşturma başarısız oldu",
+ "message": "Hesabınız oluşturulamadı"
}
}
},
"create": "Kullanıcı ekle",
"changePassword": {
- "label": "",
+ "label": "Parolayı değiştir",
"notification": {
"success": {
- "message": ""
+ "message": "Parola başarıyla değiştirildi"
},
"error": {
- "message": ""
+ "message": "Parola değiştirilemedi"
}
}
},
"changeHomeBoard": {
"notification": {
"success": {
- "message": ""
+ "message": "Ana sayfa panosu başarıyla değiştirildi"
},
"error": {
- "message": ""
+ "message": "Ana pano değiştirilemiyor"
}
}
},
"changeFirstDayOfWeek": {
"notification": {
"success": {
- "message": ""
+ "message": "Haftanın ilk günü başarıyla değiştirildi"
},
"error": {
- "message": ""
+ "message": "Haftanın ilk günü değiştirilemiyor"
}
}
},
"changePingIconsEnabled": {
"notification": {
"success": {
- "message": ""
+ "message": "Ping simgeleri başarıyla değiştirildi"
},
"error": {
- "message": ""
+ "message": "Ping simgeleri değiştirilemiyor"
}
}
},
"manageAvatar": {
"changeImage": {
- "label": "",
+ "label": "Görseli değiştir",
"notification": {
"success": {
- "message": ""
+ "message": "Görsel başarıyla değiştirildi"
},
"error": {
- "message": ""
+ "message": "Görsel değiştirilemiyor"
},
"toLarge": {
- "title": "",
- "message": ""
+ "title": "Görsel çok büyük",
+ "message": "Maksimum görsel boyutu {size}"
}
}
},
"removeImage": {
- "label": "",
- "confirm": "",
+ "label": "Görseli kaldır",
+ "confirm": "Görseli kaldırmak istediğinizden emin misiniz?",
"notification": {
"success": {
- "message": ""
+ "message": "Görsel başarıyla kaldırıldı"
},
"error": {
- "message": ""
+ "message": "Görsel kaldırılamıyor"
}
}
}
@@ -262,63 +262,63 @@
"editProfile": {
"notification": {
"success": {
- "message": ""
+ "message": "Profil başarıyla güncellendi"
},
"error": {
- "message": ""
+ "message": "Profil güncellenemiyor"
}
}
},
"delete": {
- "label": "",
- "description": "",
- "confirm": ""
+ "label": "Kullanıcıyı kalıcı olarak sil",
+ "description": "Bu kullanıcıyı tercihleriyle birlikte siler. Hiçbir pano silinmeyecektir. Kullanıcı bilgilendirilmez.",
+ "confirm": "{username} kullanıcısını tercihleriyle birlikte silmek istediğinizden emin misiniz?"
},
"select": {
- "label": "",
- "notFound": ""
+ "label": "Kullanıcıyı seç",
+ "notFound": "Kullanıcı bulunmadı"
},
"transfer": {
- "label": ""
+ "label": "Yeni sahibi seç"
}
}
},
"group": {
- "title": "",
- "name": "",
- "search": "",
+ "title": "Gruplar",
+ "name": "Grup",
+ "search": "Grup bul",
"field": {
"name": "İsim",
- "members": ""
+ "members": "Üyeler"
},
"permission": {
"admin": {
"title": "Yönetici",
"item": {
"admin": {
- "label": "",
- "description": ""
+ "label": "Yönetici",
+ "description": "Bu izne sahip üyeler tüm özelliklere ve ayarlara tam erişime sahiptir"
}
}
},
"app": {
- "title": "",
+ "title": "Uygulamalar",
"item": {
"create": {
- "label": "",
- "description": ""
+ "label": "Uygulamalar oluşturun",
+ "description": "Üyelerin uygulama oluşturmasına izin ver"
},
"use-all": {
- "label": "",
- "description": ""
+ "label": "Tüm uygulamaları kullan",
+ "description": "Üyelerin panolarına herhangi bir uygulama eklemelerine izin ver"
},
"modify-all": {
- "label": "",
- "description": ""
+ "label": "Tüm uygulamaları değiştir",
+ "description": "Üyelerin tüm uygulamaları değiştirmesine izin ver"
},
"full-all": {
- "label": "",
- "description": ""
+ "label": "Uygulamaya tam erişim",
+ "description": "Üyelerin herhangi bir uygulamayı yönetmesine, kullanmasına ve silmesine izin ver"
}
}
},
@@ -326,165 +326,165 @@
"title": "Paneller",
"item": {
"create": {
- "label": "",
- "description": ""
+ "label": "Pano oluştur",
+ "description": "Üyelerin pano oluşturmasına izin ver"
},
"view-all": {
- "label": "",
- "description": ""
+ "label": "Tüm panoları görüntüle",
+ "description": "Üyelerin tüm panoları görüntülemesine izin ver"
},
"modify-all": {
- "label": "",
- "description": ""
+ "label": "Tüm panoları değiştir",
+ "description": "Üyelerin tüm panoları değiştirmesine izin verin (Erişim kontrolü ve tehlikeli alan dahil değildir)"
},
"full-all": {
- "label": "",
- "description": ""
+ "label": "Tam pano erişimi",
+ "description": "Üyelerin tüm panoları görüntülemesine, değiştirmesine ve silmesine izin verin (Erişim kontrolü ve tehlikeli alan dahil)"
}
}
},
"integration": {
- "title": "",
+ "title": "Entegrasyonlar",
"item": {
"create": {
- "label": "",
- "description": ""
+ "label": "Entegrasyonlar oluştur",
+ "description": "Üyelerin entegrasyonlar oluşturmasına izin ver"
},
"use-all": {
- "label": "",
- "description": ""
+ "label": "Tüm entegrasyonları kullan",
+ "description": "Üyelerin panolarına herhangi bir entegrasyonu eklemelerine olanak tanır"
},
"interact-all": {
- "label": "",
- "description": ""
+ "label": "Herhangi bir entegrasyonla etkileşim kurun",
+ "description": "Üyelerin herhangi bir entegrasyonla etkileşime girmesine izin verin"
},
"full-all": {
- "label": "",
- "description": ""
+ "label": "Tam entegrasyon erişimi",
+ "description": "Üyelerin herhangi bir entegrasyonu yönetmesine, kullanmasına ve etkileşimde bulunmasına izin ver"
}
}
},
"media": {
- "title": "",
+ "title": "Medyalar",
"item": {
"upload": {
- "label": "",
- "description": ""
+ "label": "Medya yükle",
+ "description": "Üyelerin medya yüklemesine izin ver"
},
"view-all": {
- "label": "",
- "description": ""
+ "label": "Tüm medyayı görüntüle",
+ "description": "Üyelerin tüm medyayı görüntülemesine izin ver"
},
"full-all": {
- "label": "",
- "description": ""
+ "label": "Tam medya erişimi",
+ "description": "Üyelerin herhangi bir medyayı yönetmesine ve silmesine izin ver"
}
}
},
"other": {
- "title": "",
+ "title": "Diğer",
"item": {
"view-logs": {
- "label": "",
- "description": ""
+ "label": "Günlükleri görüntüle",
+ "description": "Üyelerin günlükleri görüntülemesine izin ver"
}
}
},
"search-engine": {
- "title": "",
+ "title": "Arama motorları",
"item": {
"create": {
- "label": "",
- "description": ""
+ "label": "Arama motorları oluşturun",
+ "description": "Üyelerin arama motorları oluşturmasına izin ver"
},
"modify-all": {
- "label": "",
- "description": ""
+ "label": "Tüm arama motorlarını değiştir",
+ "description": "Üyelerin tüm arama motorlarını değiştirmesine izin ver"
},
"full-all": {
- "label": "",
- "description": ""
+ "label": "Tam arama motoru erişimi",
+ "description": "Üyelerin herhangi bir arama motorunu yönetmesine ve silmesine izin ver"
}
}
}
},
"memberNotice": {
- "mixed": "",
- "external": ""
+ "mixed": "Bazı üyeler harici sağlayıcılardandır ve burada yönetilemezler",
+ "external": "Tüm üyeler harici sağlayıcılardandır ve burada yönetilemezler"
},
"reservedNotice": {
- "message": ""
+ "message": "Bu grup sistem kullanımı için ayrılmıştır ve bazı eylemleri kısıtlar. "
},
"action": {
"create": {
- "label": "",
+ "label": "Yeni grup",
"notification": {
"success": {
- "message": ""
+ "message": "Grup başarıyla oluşturuldu"
},
"error": {
- "message": ""
+ "message": "Grup oluşturulamadı"
}
}
},
"transfer": {
- "label": "",
- "description": "",
- "confirm": "",
+ "label": "Sahipliği aktar",
+ "description": "Bu grubun sahipliğini başka bir kullanıcıya aktarın.",
+ "confirm": "{name} grubunun mülkiyetini {username} grubuna devretmek istediğinizden emin misiniz?",
"notification": {
"success": {
- "message": ""
+ "message": "{group} grubu başarıyla {user} grubuna aktarıldı"
},
"error": {
- "message": ""
+ "message": "Sahiplik aktarımı yapılamıyor"
}
}
},
"addMember": {
- "label": ""
+ "label": "Üye ekle"
},
"removeMember": {
- "label": "",
- "confirm": ""
+ "label": "Üyeyi kaldır",
+ "confirm": "{user} adlı kişiyi bu gruptan kaldırmak istediğinizden emin misiniz?"
},
"delete": {
- "label": "",
- "description": "",
- "confirm": "",
+ "label": "Grubu sil",
+ "description": "Bir grubu sildiğinizde geri dönüş yoktur. Lütfen emin olun.",
+ "confirm": "{name} grubunu silmek istediğinizden emin misiniz?",
"notification": {
"success": {
- "message": ""
+ "message": "{name} grubu başarıyla silindi"
},
"error": {
- "message": ""
+ "message": "{name} grubu silinemiyor"
}
}
},
"changePermissions": {
"notification": {
"success": {
- "title": "",
- "message": ""
+ "title": "İzinler kaydedildi",
+ "message": "İzinler başarıyla kaydedildi"
},
"error": {
- "title": "",
- "message": ""
+ "title": "İzinler kaydedilmedi",
+ "message": "İzinler kaydedilmedi"
}
}
},
"update": {
"notification": {
"success": {
- "message": ""
+ "message": "{name} grubu başarıyla kaydedildi"
},
"error": {
- "message": ""
+ "message": "Grup kaydedilemiyor {name}"
}
}
},
"select": {
- "label": "",
- "notFound": ""
+ "label": "Grup Seç",
+ "notFound": "Grup bulunamadı"
}
}
},
@@ -493,47 +493,47 @@
"list": {
"title": "Uygulamalar",
"noResults": {
- "title": "",
- "action": ""
+ "title": "Henüz uygulama oluşturulmadı",
+ "action": "İlk uygulamanızı oluşturun"
}
},
"create": {
- "title": "",
+ "title": "Yeni uygulama",
"notification": {
"success": {
- "title": "",
- "message": ""
+ "title": "Oluşturma başarılı",
+ "message": "Uygulama başarıyla oluşturuldu"
},
"error": {
- "title": "",
- "message": ""
+ "title": "Oluşturma başarısız oldu",
+ "message": "Uygulama oluşturulamadı"
}
}
},
"edit": {
- "title": "",
+ "title": "Uygulamayı düzenle",
"notification": {
"success": {
- "title": "",
- "message": ""
+ "title": "Değişiklikler başarıyla uygulandı",
+ "message": "Uygulama başarıyla kaydedildi"
},
"error": {
- "title": "",
- "message": ""
+ "title": "Değişiklikler uygulanamıyor",
+ "message": "Uygulama kaydedilemedi"
}
}
},
"delete": {
- "title": "",
- "message": "",
+ "title": "Uygulamayı sil",
+ "message": "{name} uygulamasını silmek istediğinizden emin misiniz?",
"notification": {
"success": {
- "title": "",
- "message": ""
+ "title": "Silme başarılı",
+ "message": "Uygulama başarıyla silindi"
},
"error": {
- "title": "",
- "message": ""
+ "title": "Silme başarısız oldu",
+ "message": "Uygulama silinemiyor"
}
}
}
@@ -543,65 +543,65 @@
"label": "İsim"
},
"description": {
- "label": ""
+ "label": "Tanım"
},
"url": {
- "label": ""
+ "label": "Url"
}
},
"action": {
"select": {
- "label": "",
- "notFound": ""
+ "label": "Uygulama seç",
+ "notFound": "Uygulama bulunamadı"
}
}
},
"integration": {
"page": {
"list": {
- "title": "",
- "search": "",
+ "title": "Entegrasyonlar",
+ "search": "Entegrasyon ara",
"noResults": {
- "title": ""
+ "title": "Henüz entegrasyon yok"
}
},
"create": {
- "title": "",
+ "title": "Yeni {name} entegrasyonu",
"notification": {
"success": {
- "title": "",
- "message": ""
+ "title": "Oluşturma başarılı",
+ "message": "Entegrasyon başarıyla oluşturuldu"
},
"error": {
- "title": "",
- "message": ""
+ "title": "Oluşturma başarısız oldu",
+ "message": "Entegrasyon oluşturulamadı"
}
}
},
"edit": {
- "title": "",
+ "title": "{name} entegrasyonu düzenle",
"notification": {
"success": {
- "title": "",
- "message": ""
+ "title": "Değişiklikler başarıyla uygulandı",
+ "message": "Entegrasyon başarıyla kaydedildi"
},
"error": {
- "title": "",
- "message": ""
+ "title": "Değişiklikler uygulanamıyor",
+ "message": "Entegrasyon kaydedilemedi"
}
}
},
"delete": {
- "title": "",
- "message": "",
+ "title": "Entegrasyonu Sil",
+ "message": "{name} entegrasyonunu silmek istediğinizden emin misiniz?",
"notification": {
"success": {
- "title": "",
- "message": ""
+ "title": "Silme başarılı",
+ "message": "Entegrasyon başarıyla silindi"
},
"error": {
- "title": "",
- "message": ""
+ "title": "Silme başarısız oldu",
+ "message": "Entegrasyon silinemiyor"
}
}
}
@@ -611,66 +611,66 @@
"label": "İsim"
},
"url": {
- "label": ""
+ "label": "Url"
}
},
"action": {
- "create": ""
+ "create": "Yeni entegrasyon"
},
"testConnection": {
"action": {
- "create": "",
- "edit": ""
+ "create": "Bağlantıyı test et ve oluştur",
+ "edit": "Bağlantıyı test et ve kaydet"
},
- "alertNotice": "",
+ "alertNotice": "Bağlantı kurulumu başaralı olduğunda Kaydet düğmesi etkinleştirilir",
"notification": {
"success": {
- "title": "",
- "message": ""
+ "title": "Bağlantı başarılı",
+ "message": "Bağlantı başarıyla kuruldu"
},
"invalidUrl": {
"title": "Geçersiz URL",
- "message": ""
+ "message": "URL geçersiz"
},
"secretNotDefined": {
- "title": "",
- "message": ""
+ "title": "Eksik kimlik bilgileri",
+ "message": "Tüm kimlik bilgileri sağlanmadı"
},
"invalidCredentials": {
- "title": "",
- "message": ""
+ "title": "Geçersiz kimlik bilgileri",
+ "message": "Kimlik bilgileri geçersiz"
},
"commonError": {
- "title": "",
- "message": ""
+ "title": "Bağlantı başarısız oldu",
+ "message": "Bağlantı kurulamadı"
},
"badRequest": {
- "title": "",
- "message": ""
+ "title": "Geçersiz istek",
+ "message": "Talep hatalı biçimlendirilmiş"
},
"unauthorized": {
- "title": "",
- "message": ""
+ "title": "Yetkisiz",
+ "message": "Muhtemelen yanlış kimlik bilgileri"
},
"forbidden": {
- "title": "",
- "message": ""
+ "title": "Yasaklı",
+ "message": "Muhtemelen izinler eksik"
},
"notFound": {
- "title": "",
- "message": ""
+ "title": "Bulunamadı",
+ "message": "Muhtemelen yanlış Url veya yol"
},
"internalServerError": {
- "title": "",
- "message": ""
+ "title": "İç Sunucu Hatası",
+ "message": "Sunucu bir hatayla karşılaştı"
},
"serviceUnavailable": {
- "title": "",
- "message": ""
+ "title": "Hizmet kullanılamıyor",
+ "message": "Sunucu şu anda kullanılamıyor"
},
"connectionAborted": {
- "title": "",
- "message": ""
+ "title": "Bağlantı kesildi",
+ "message": "Bağlantı kesildi"
},
"domainNotFound": {
"title": "",
@@ -724,11 +724,11 @@
"permission": {
"use": "",
"interact": "",
- "full": ""
+ "full": "Tam entegrasyon erişimi"
}
},
"media": {
- "plural": "",
+ "plural": "Medyalar",
"search": "",
"field": {
"name": "İsim",
@@ -756,108 +756,108 @@
"message": ""
},
"error": {
- "message": ""
+ "message": "Medya silinemedi"
}
}
},
"copy": {
- "label": ""
+ "label": "URL'yi kopyala"
}
}
},
"common": {
- "beta": "",
+ "beta": "Beta",
"error": "Hata",
"action": {
"add": "Ekle",
"apply": "Uygula",
- "backToOverview": "",
+ "backToOverview": "Genel bakışa dön",
"create": "Oluştur",
"edit": "Düzenle",
- "import": "",
+ "import": "İçe aktar",
"insert": "Ekle",
"remove": "Kaldır",
"save": "Kaydet",
"saveChanges": "Değişiklikleri kaydet",
"cancel": "Vazgeç",
"delete": "Sil",
- "discard": "",
+ "discard": "Yoksay",
"confirm": "Onayla",
- "continue": "",
+ "continue": "Devam Et",
"previous": "Önceki",
"next": "İleri",
- "checkoutDocs": "",
- "checkLogs": "",
+ "checkoutDocs": "Dökümanlara göz atın",
+ "checkLogs": "Daha fazla ayrıntı için günlükleri kontrol edin",
"tryAgain": "Tekrar Deneyin",
- "loading": ""
+ "loading": "Yükleniyor"
},
- "here": "",
+ "here": "burada",
"iconPicker": {
- "label": "",
- "header": ""
+ "label": "Simge URL'si",
+ "header": "Simgeleri filtrelemek için isim veya nesne yazın... Homarr sizin için {countIcons} simge arasında arama yapacaktır."
},
"colorScheme": {
"options": {
- "light": "",
- "dark": ""
+ "light": "Aydınlık",
+ "dark": "Koyu"
}
},
"information": {
- "min": "",
- "max": "",
- "days": "",
+ "min": "Asgari",
+ "max": "Azami",
+ "days": "Gün",
"hours": "Saat",
"minutes": "Dakika"
},
"notification": {
"create": {
- "success": "",
- "error": ""
+ "success": "Oluşturma başarılı",
+ "error": "Oluşturma başarısız oldu"
},
"delete": {
- "success": "",
- "error": ""
+ "success": "Silme başarılı",
+ "error": "Silme başarısız oldu"
},
"update": {
- "success": "",
- "error": ""
+ "success": "Değişiklikler başarıyla uygulandı",
+ "error": "Değişiklikler uygulanamıyor"
},
"transfer": {
- "success": "",
- "error": ""
+ "success": "Transfer başarılı",
+ "error": "Transfer başarısız"
}
},
"multiSelect": {
- "placeholder": ""
+ "placeholder": "Bir veya daha fazla değer seçin"
},
"multiText": {
- "placeholder": "",
- "addLabel": ""
+ "placeholder": "Daha fazla değer ekleyin",
+ "addLabel": "{value} ekle"
},
"select": {
- "placeholder": "",
+ "placeholder": "Değer seç",
"badge": {
- "recommended": ""
+ "recommended": "Tavsiye edilen"
}
},
"userAvatar": {
"menu": {
- "switchToDarkMode": "",
- "switchToLightMode": "",
- "management": "",
+ "switchToDarkMode": "Koyu moda geç",
+ "switchToLightMode": "Aydınlık moda geç",
+ "management": "Yönetim",
"preferences": "Tercihleriniz",
- "logout": "",
+ "logout": "Oturumu kapat",
"login": "Giriş",
- "homeBoard": "",
- "loggedOut": "",
- "updateAvailable": ""
+ "homeBoard": "Ev panonuz",
+ "loggedOut": "Oturum kapatıldı",
+ "updateAvailable": "{countUpdates} güncelleme mevcut: {tag}"
}
},
"dangerZone": "Tehlikeli bölge",
"noResults": "Sonuç bulunamadı",
"preview": {
- "show": "",
- "hide": ""
+ "show": "Önizlemeyi göster",
+ "hide": "Önizlemeyi Gizle"
},
"zod": {
"errors": {
@@ -867,7 +867,7 @@
"startsWith": "Bu alan {startsWith} ile başlamalıdır",
"endsWith": "Bu alan {endsWith} ile bitmelidir",
"includes": "Bu alan {includes} adresini içermelidir",
- "invalidEmail": ""
+ "invalidEmail": "Bu alanda geçerli bir e-posta olmalıdır"
},
"tooSmall": {
"string": "Bu alan en az {minimum} karakter uzunluğunda olmalıdır",
@@ -878,13 +878,13 @@
"number": "Bu alan {maximum} adresinden kısa veya eşit olmalıdır"
},
"custom": {
- "passwordsDoNotMatch": "",
- "passwordRequirements": "",
- "boardAlreadyExists": "",
- "invalidFileType": "",
- "fileTooLarge": "",
- "invalidConfiguration": "",
- "groupNameTaken": ""
+ "passwordsDoNotMatch": "Parolalar uyuşmuyor",
+ "passwordRequirements": "Parola gereksinimleri karşılamıyor",
+ "boardAlreadyExists": "Bu isimde bir pano zaten mevcut",
+ "invalidFileType": "Geçersiz dosya türü, {expected} bekleniyor",
+ "fileTooLarge": "Dosya çok büyük, azami boyut {maxSize}",
+ "invalidConfiguration": "Geçersiz yapılandırma",
+ "groupNameTaken": "Grup adı zaten alınmış"
}
}
}
@@ -892,12 +892,12 @@
"section": {
"dynamic": {
"action": {
- "create": "",
- "remove": ""
+ "create": "Yeni dinamik bölüm",
+ "remove": "Dinamik bölümü kaldır"
},
"remove": {
- "title": "",
- "message": ""
+ "title": "Dinamik bölümü kaldır",
+ "message": "Bu dinamik bölümü kaldırmak istediğinizden emin misiniz? Öğeler üst bölümdeki aynı konuma taşınacaktır."
}
},
"category": {
@@ -907,29 +907,29 @@
}
},
"action": {
- "create": "",
- "edit": "",
- "remove": "",
+ "create": "Yeni kategori",
+ "edit": "Kategoriyi yeniden adlandır",
+ "remove": "Kategoriyi kaldır",
"moveUp": "Yukarı taşı",
"moveDown": "Aşağı taşı",
- "createAbove": "",
- "createBelow": ""
+ "createAbove": "Yukarı yeni kategori",
+ "createBelow": "Aşağı yeni kategori"
},
"create": {
- "title": "",
- "submit": ""
+ "title": "Yeni kategori",
+ "submit": "Kategori ekle"
},
"remove": {
- "title": "",
- "message": ""
+ "title": "Kategoriyi kaldır",
+ "message": "{name} kategorisini kaldırmak istediğinizden emin misiniz?"
},
"edit": {
- "title": "",
- "submit": ""
+ "title": "Kategoriyi yeniden adlandır",
+ "submit": "Kategoriyi yeniden adlandır"
},
"menu": {
"label": {
- "create": "",
+ "create": "Yeni kategori",
"changePosition": "Pozisyonu değiştir"
}
}
@@ -937,12 +937,12 @@
},
"item": {
"action": {
- "create": "",
- "import": "",
- "edit": "",
- "moveResize": "",
- "duplicate": "",
- "remove": ""
+ "create": "Yeni öğe",
+ "import": "Öğeleri İçe Aktar",
+ "edit": "Öğeyi Düzenle",
+ "moveResize": "Öğeyi taşı / yeniden boyutlandır",
+ "duplicate": "Öğeyi Çoğalt",
+ "remove": "Öğeyi kaldır"
},
"menu": {
"label": {
@@ -950,11 +950,11 @@
}
},
"create": {
- "title": "",
- "addToBoard": ""
+ "title": "Eklenecek öğeyi seçin",
+ "addToBoard": "Panele Ekle"
},
"moveResize": {
- "title": "",
+ "title": "Öğeyi taşı / yeniden boyutlandır",
"field": {
"width": {
"label": "Genişlik"
@@ -963,91 +963,91 @@
"label": "Yükseklik"
},
"xOffset": {
- "label": ""
+ "label": "X Ekseni"
},
"yOffset": {
- "label": ""
+ "label": "Y Ekseni"
}
}
},
"edit": {
- "title": "",
+ "title": "Öğeyi Düzenle",
"advancedOptions": {
- "label": "",
- "title": ""
+ "label": "Gelişmiş seçenekler",
+ "title": "Gelişmiş öğe seçenekleri"
},
"field": {
"integrations": {
- "label": ""
+ "label": "Entegrasyonlar"
},
"customCssClasses": {
- "label": ""
+ "label": "Özel css sınıfları"
}
}
},
"remove": {
- "title": "",
- "message": ""
+ "title": "Öğeyi kaldır",
+ "message": "Bu öğeyi kaldırmak istediğinizden emin misiniz?"
}
},
"widget": {
"app": {
- "name": "",
- "description": "",
+ "name": "Uygulama",
+ "description": "Panelin içine uygulama yerleştirir.",
"option": {
"appId": {
- "label": ""
+ "label": "Uygulama seç"
},
"openInNewTab": {
"label": "Yeni sekmede aç"
},
"showTitle": {
- "label": ""
+ "label": "Uygulama adını göster"
},
"showDescriptionTooltip": {
- "label": ""
+ "label": "Açıklama ipucunu göster"
},
"pingEnabled": {
- "label": ""
+ "label": "Basit ping'i etkinleştir"
}
},
"error": {
"notFound": {
- "label": "",
- "tooltip": ""
+ "label": "Uygulama yok",
+ "tooltip": "Geçerli bir uygulama seçmediniz"
}
}
},
"bookmarks": {
- "name": "",
- "description": "",
+ "name": "Yer imleri",
+ "description": "Birden fazla uygulama bağlantısını görüntüler",
"option": {
"title": {
- "label": ""
+ "label": "Başlık"
},
"layout": {
- "label": "",
+ "label": "Düzen",
"option": {
"row": {
- "label": ""
+ "label": "Yatay"
},
"column": {
- "label": ""
+ "label": "Dikey"
},
"grid": {
- "label": ""
+ "label": "Izgara"
}
}
},
"items": {
- "label": "",
- "add": ""
+ "label": "Yer imleri",
+ "add": "Yer imi ekle"
}
}
},
"dnsHoleSummary": {
- "name": "",
- "description": "",
+ "name": "DNS Çözümleyici Özeti",
+ "description": "DNS Çözümleyici özetini görüntüler",
"option": {
"layout": {
"label": "Düzen",
@@ -1059,27 +1059,27 @@
"label": "Dikey"
},
"grid": {
- "label": ""
+ "label": "Izgara"
}
}
},
"usePiHoleColors": {
- "label": ""
+ "label": "Pi-Hole renklerini kullan"
}
},
"error": {
- "internalServerError": "",
- "integrationsDisconnected": ""
+ "internalServerError": "DNS Çözümleyici Özeti alınamadı",
+ "integrationsDisconnected": "Veri yok, tüm entegrasyonların bağlantısı kesildi"
},
"data": {
"adsBlockedToday": "Bugün engellenenler",
"adsBlockedTodayPercentage": "Bugün engellenenler",
"dnsQueriesToday": "Bugünkü Sorgular",
- "domainsBeingBlocked": ""
+ "domainsBeingBlocked": "Engelleme listesindeki alan adları"
}
},
"dnsHoleControls": {
- "name": "",
+ "name": "DNS çözümleyici kontrolleri",
"description": "Kontrol panelinizden PiHole veya AdGuard'ı kontrol edin",
"option": {
"layout": {
@@ -1092,68 +1092,68 @@
"label": "Dikey"
},
"grid": {
- "label": ""
+ "label": "Izgara"
}
}
},
"showToggleAllButtons": {
- "label": ""
+ "label": "Tüm Geçiş Yap Düğmelerini Göster"
}
},
"error": {
- "internalServerError": ""
+ "internalServerError": "DNS Çözümleyici kontrol edilemedi"
},
"controls": {
- "enableAll": "",
- "disableAll": "",
- "setTimer": "",
+ "enableAll": "Tümünü Etkinleştir",
+ "disableAll": "Tümünü Devre Dışı Bırak",
+ "setTimer": "Zamanlayıcıyı Ayarla",
"set": "Ayarla",
"enabled": "Etkin",
"disabled": "Pasif",
- "processing": "",
- "disconnected": "",
+ "processing": "İşleniyor",
+ "disconnected": "Bağlantısı kesildi",
"hours": "Saat",
"minutes": "Dakika",
- "unlimited": ""
+ "unlimited": "Limitsiz olması için boş bırakın"
}
},
"clock": {
- "name": "",
+ "name": "Tarih ve saat",
"description": "Geçerli tarih ve saati görüntüler.",
"option": {
"customTitleToggle": {
- "label": "",
- "description": ""
+ "label": "Özel Başlık/Şehir gösterimi",
+ "description": "Saatin üstüne özel bir başlık veya şehir/ülke adını ekleyin."
},
"customTitle": {
- "label": ""
+ "label": "Başlık"
},
"is24HourFormat": {
- "label": "",
- "description": ""
+ "label": "24 saatlik format",
+ "description": "12 saatlik format yerine 24 saatlik formatı kullanın"
},
"showSeconds": {
- "label": ""
+ "label": "Saniyeleri görüntüle"
},
"useCustomTimezone": {
- "label": ""
+ "label": "Sabit bir zaman dilimi kullanın"
},
"timezone": {
"label": "Saat dilimi",
- "description": ""
+ "description": "IANA standardına uygun zaman dilimini seçin"
},
"showDate": {
- "label": ""
+ "label": "Tarihi göster"
},
"dateFormat": {
- "label": "",
- "description": ""
+ "label": "Tarih Biçimi",
+ "description": "Tarihin nasıl görüneceği"
}
}
},
"notebook": {
"name": "Not defteri",
- "description": "",
+ "description": "Markdown'ı destekleyen basit bir not defteri bileşeni",
"option": {
"showToolbar": {
"label": "Markdown'da yazarken size yardımcı olacak araç çubuğunu aktif edin"
@@ -1213,7 +1213,7 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "İnternetten herhangi bir içeriği yerleştirin. Bazı web siteleri erişimi kısıtlayabilir.",
"option": {
"embedUrl": {
@@ -1245,31 +1245,31 @@
}
},
"error": {
- "noUrl": "",
+ "noUrl": "IFrame URL'si sağlanmadı",
"noBrowerSupport": "Tarayıcınız iframe'leri desteklemiyor. Lütfen tarayıcınızı güncelleyin."
}
},
"smartHome-entityState": {
- "name": "",
- "description": "",
+ "name": "Varlık Durumu",
+ "description": "Bir varlığın durumunu görüntüleyin ve isteğe bağlı olarak değiştirin",
"option": {
"entityId": {
"label": "Varlık Kimliği"
},
"displayName": {
- "label": ""
+ "label": "Ekran adı"
},
"entityUnit": {
- "label": ""
+ "label": "Varlık Birimi"
},
"clickable": {
- "label": ""
+ "label": "Bir ögenin tıklanabilir olup olmadığı"
}
}
},
"smartHome-executeAutomation": {
- "name": "",
- "description": "",
+ "name": "Otomasyonu Yürüt",
+ "description": "Tek tıklamayla otomasyonu tetikleyin",
"option": {
"displayName": {
"label": "Ekran adı"
@@ -1279,26 +1279,26 @@
}
},
"spotlightAction": {
- "run": ""
+ "run": "Çalıştır {name}"
}
},
"calendar": {
"name": "Takvim",
- "description": "",
+ "description": "Entegrasyonlarınızdaki etkinlikleri belirli bir göreli zaman dilimi içinde bir takvim görünümünde görüntüleyin",
"option": {
"releaseType": {
"label": "Radarr yayın türü",
"options": {
- "inCinemas": "",
- "digitalRelease": "",
- "physicalRelease": ""
+ "inCinemas": "Sinemalarda",
+ "digitalRelease": "Dijital sürüm",
+ "physicalRelease": "Fiziksel Yayınlanan"
}
},
"filterPastMonths": {
- "label": ""
+ "label": "Başla"
},
"filterFutureMonths": {
- "label": ""
+ "label": "Bitir"
}
}
},
@@ -1307,24 +1307,24 @@
"description": "Belirlenen bir konumun güncel hava durumu bilgilerini görüntüler.",
"option": {
"isFormatFahrenheit": {
- "label": ""
+ "label": "Fahrenheit cinsinden sıcaklık"
},
"location": {
"label": "Hava durumu konumu"
},
"showCity": {
- "label": ""
+ "label": "Şehri göster"
},
"hasForecast": {
- "label": ""
+ "label": "Hava tahmini göster"
},
"forecastDayCount": {
- "label": "",
- "description": ""
+ "label": "Tahmin edilen gün sayısı",
+ "description": "Widget yeterince geniş olmadığında daha az gün gösterilir"
},
"dateFormat": {
- "label": "",
- "description": ""
+ "label": "Tarih Biçimi",
+ "description": "Tarihin nasıl görüneceği"
}
},
"kind": {
@@ -1346,16 +1346,16 @@
},
"indexerManager": {
"name": "Dizin oluşturucu yöneticisi statüsü",
- "description": "",
+ "description": "Dizinleyicilerinizin durumu",
"option": {
"openIndexerSiteInNewTab": {
- "label": ""
+ "label": "Dizinleyici sitesini yeni sekmede aç"
}
},
"title": "Dizin oluşturucu yöneticisi",
"testAll": "Tümünü test et",
"error": {
- "internalServerError": ""
+ "internalServerError": "Dizinleyicilerin durumu alınamadı"
}
},
"healthMonitoring": {
@@ -1376,38 +1376,38 @@
}
},
"popover": {
- "information": "",
- "processor": "",
- "memory": "",
- "memoryAvailable": "",
- "version": "",
- "uptime": "",
- "loadAverage": "",
- "minute": "",
- "minutes": "",
- "used": "",
+ "information": "Bilgi",
+ "processor": "İşlemci: {cpuModelName}",
+ "memory": "Bellek: {memory}GiB",
+ "memoryAvailable": "Mevcut: {memoryAvailable}GiB ({percent}%)",
+ "version": "Sürüm: {version}",
+ "uptime": "Çalışma Süresi: {days} Gün, {hours} Saat, {minutes} Dakika",
+ "loadAverage": "Ortalama yük:",
+ "minute": "1 dakika",
+ "minutes": "{count} dakika",
+ "used": "Kullanılan",
"available": "Mevcut",
- "lastSeen": ""
+ "lastSeen": "Son durum güncellemesi: {lastSeen}"
},
"memory": {},
"error": {
- "internalServerError": ""
+ "internalServerError": "Sağlık durumu alınamadı"
}
},
"common": {
"location": {
- "query": "",
- "latitude": "",
- "longitude": "",
- "disabledTooltip": "",
- "unknownLocation": "",
+ "query": "Şehir / Posta kodu",
+ "latitude": "Enlem",
+ "longitude": "Boylam",
+ "disabledTooltip": "Lütfen bir şehir veya posta kodu girin",
+ "unknownLocation": "Bilinmeyen konum",
"search": "Ara",
"table": {
"header": {
- "city": "",
- "country": "",
- "coordinates": "",
- "population": ""
+ "city": "Şehir",
+ "country": "Ülke",
+ "coordinates": "Koordinatlar",
+ "population": "Nüfus"
},
"action": {
"select": ""
@@ -1422,7 +1422,7 @@
"description": ""
},
"app": {
- "noData": "",
+ "noData": "Uygulama bulunamadı",
"description": ""
},
"error": {
@@ -1532,7 +1532,7 @@
"detailsTitle": ""
},
"ratio": {
- "columnTitle": "",
+ "columnTitle": "Ratio",
"detailsTitle": ""
},
"received": {
@@ -1570,37 +1570,37 @@
"paused": "Duraklatıldı",
"completed": "Tamamlanan",
"failed": "",
- "processing": "",
- "leeching": "",
- "stalled": "",
+ "processing": "İşleniyor",
+ "leeching": "Leechleme",
+ "stalled": "Durduruldu",
"unknown": "Bilinmeyen",
- "seeding": ""
+ "seeding": "Seed ediliyor"
},
"actions": {
"clients": {
- "modalTitle": "",
- "pause": "",
- "resume": ""
+ "modalTitle": "İndirme istemcileri listesi",
+ "pause": "Tüm istemcileri/öğeleri duraklat",
+ "resume": "Tüm istemcileri/öğeleri sürdür"
},
"client": {
- "pause": "",
- "resume": ""
+ "pause": "İstemciyi duraklat",
+ "resume": "İstemciyi sürdür"
},
"item": {
- "pause": "",
- "resume": "",
+ "pause": "Öğeyi Duraklat",
+ "resume": "Öğeyi Sürdür",
"delete": {
- "title": "",
- "modalTitle": "",
- "entry": "",
- "entryAndFiles": ""
+ "title": "Öğeyi Sil",
+ "modalTitle": "Bu işi silmek istediğinizden emin misiniz?",
+ "entry": "Girdiyi sil",
+ "entryAndFiles": "Girişi ve dosyayı sil"
}
}
},
- "globalRatio": ""
+ "globalRatio": "Genel Oran"
},
"mediaRequests-requestList": {
- "name": "",
+ "name": "Medya İstekleri Listesi",
"description": "Overseerr veya Jellyseerr uygulamanızdan gelen tüm medya taleplerinin bir listesini görün",
"option": {
"linksTargetNewTab": {
@@ -1615,7 +1615,7 @@
"availability": {
"unknown": "Bilinmeyen",
"pending": "",
- "processing": "",
+ "processing": "İşleniyor",
"partiallyAvailable": "Kısmi",
"available": "Mevcut"
},
@@ -1648,55 +1648,55 @@
"description": "",
"option": {
"defaultView": {
- "label": ""
+ "label": "Varsayılan görünüm"
},
"queuePageSize": {
"label": ""
}
},
"tab": {
- "workers": "",
- "queue": "",
- "statistics": ""
+ "workers": "İşçiler",
+ "queue": "Kuyruk",
+ "statistics": "İstatistik"
},
"currentIndex": "",
"healthCheck": {
"title": "",
- "queued": "",
+ "queued": "Sıraya alındı",
"status": {
- "healthy": "",
- "unhealthy": ""
+ "healthy": "Sağlıklı",
+ "unhealthy": "Sağlıksız"
}
},
"panel": {
"statistics": {
- "empty": "",
- "transcodes": "",
+ "empty": "Boş",
+ "transcodes": "Kod dönüştürmeler",
"transcodesCount": "",
"healthChecksCount": "",
"filesCount": "",
"savedSpace": "",
"healthChecks": "",
- "videoCodecs": "",
- "videoContainers": "",
- "videoResolutions": ""
+ "videoCodecs": "Kodek'ler",
+ "videoContainers": "Konteyner",
+ "videoResolutions": "Çözünürlükler"
},
"workers": {
- "empty": "",
+ "empty": "Boş",
"table": {
- "file": "",
- "eta": "",
- "progress": "",
- "transcode": "",
+ "file": "Dosya",
+ "eta": "ETA (Kalan Süre)",
+ "progress": "İlerleme",
+ "transcode": "Kod dönüştürme",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Boş",
"table": {
- "file": "",
- "size": "",
- "transcode": "",
+ "file": "Dosya",
+ "size": "Boyut",
+ "transcode": "Kod dönüştürme",
"healthCheck": ""
}
}
@@ -1735,11 +1735,11 @@
"edit": {
"notification": {
"success": {
- "title": "",
+ "title": "Değişiklikler başarıyla uygulandı",
"message": ""
},
"error": {
- "title": "",
+ "title": "Değişiklikler uygulanamıyor",
"message": ""
}
},
@@ -1981,15 +1981,15 @@
},
"error": {
"noBoard": {
- "title": "",
+ "title": "Homarr'a Hoş Geldiniz",
"description": "",
- "link": "",
+ "link": "İlk panonuzu oluşturun",
"notice": ""
},
"notFound": {
"title": "",
"description": "",
- "link": "",
+ "link": "Tüm panoları görüntüle",
"notice": ""
},
"homeBoard": {
@@ -2013,7 +2013,7 @@
}
},
"management": {
- "metaTitle": "",
+ "metaTitle": "Yönetim",
"title": {
"morning": "",
"afternoon": "",
@@ -2028,23 +2028,23 @@
"home": "Ana sayfa",
"boards": "Paneller",
"apps": "Uygulamalar",
- "integrations": "",
- "searchEngies": "",
- "medias": "",
+ "integrations": "Entegrasyonlar",
+ "searchEngies": "Arama motorları",
+ "medias": "Medyalar",
"users": {
"label": "Kullanıcılar",
"items": {
"manage": "Yönet",
"invites": "Davetler",
- "groups": ""
+ "groups": "Gruplar"
}
},
"tools": {
"label": "Araçlar",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2067,9 +2067,9 @@
"board": "Paneller",
"user": "Kullanıcılar",
"invite": "Davetler",
- "integration": "",
+ "integration": "Entegrasyonlar",
"app": "Uygulamalar",
- "group": ""
+ "group": "Gruplar"
},
"statisticLabel": {
"boards": "Paneller",
@@ -2130,7 +2130,7 @@
"title": "Genel",
"item": {
"language": "",
- "board": "",
+ "board": "Ana sayfa panosu",
"firstDayOfWeek": "Haftanın ilk günü",
"accessibility": "Erişilebilirlik"
}
@@ -2160,7 +2160,7 @@
"label": "Güvenlik"
},
"groups": {
- "label": "",
+ "label": "Gruplar",
"title": "",
"description": ""
},
@@ -2168,10 +2168,10 @@
"label": ""
},
"completed": {
- "title": ""
+ "title": "Kullanıcı oluşturuldu"
},
"error": {
- "title": ""
+ "title": "Kullanıcı oluşturma başarısız oldu"
}
},
"action": {
@@ -2218,12 +2218,12 @@
"setting": {
"general": {
"title": "Genel",
- "owner": "",
+ "owner": "Sahip",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
"members": {
- "title": "",
+ "title": "Üyeler",
"search": "",
"notFound": ""
},
@@ -2286,19 +2286,19 @@
}
},
"board": {
- "title": "",
+ "title": "Paneller",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Görünüş",
"defaultColorScheme": {
"label": "",
"options": {
- "light": "",
- "dark": ""
+ "light": "Aydınlık",
+ "dark": "Koyu"
}
}
},
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2529,7 +2529,7 @@
},
"tab": {
"user": "Kullanıcılar",
- "group": "",
+ "group": "Gruplar",
"inherited": ""
},
"field": {
@@ -2537,7 +2537,7 @@
"label": "Kullanıcı"
},
"group": {
- "label": ""
+ "label": "Grup"
},
"permission": {
"label": ""
@@ -2555,7 +2555,7 @@
"label": "Paneller"
},
"integrations": {
- "label": "",
+ "label": "Entegrasyonlar",
"edit": {
"label": "Düzenle"
},
@@ -2564,7 +2564,7 @@
}
},
"search-engines": {
- "label": "",
+ "label": "Arama motorları",
"new": {
"label": ""
},
@@ -2573,7 +2573,7 @@
}
},
"medias": {
- "label": ""
+ "label": "Medyalar"
},
"apps": {
"label": "Uygulamalar",
@@ -2593,7 +2593,7 @@
"security": "Güvenlik",
"board": "Paneller",
"groups": {
- "label": ""
+ "label": "Gruplar"
},
"invites": {
"label": "Davetler"
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Araçlar",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
@@ -2634,7 +2634,7 @@
"label": ""
},
"edit": {
- "label": ""
+ "label": "Uygulamayı düzenle"
}
},
"detail": {
@@ -2662,7 +2662,7 @@
}
},
"integration": {
- "title": ""
+ "title": "Entegrasyonlar"
}
}
},
@@ -2676,8 +2676,8 @@
"title": "",
"option": {
"colorScheme": {
- "light": "",
- "dark": ""
+ "light": "Aydınlık moda geç",
+ "dark": "Koyu moda geç"
},
"language": {
"label": "",
@@ -2721,7 +2721,7 @@
"help": "",
"group": {
"searchEngine": {
- "title": "",
+ "title": "Arama motorları",
"children": {
"action": {
"search": {
@@ -2828,7 +2828,7 @@
"label": ""
},
"manageLog": {
- "label": ""
+ "label": "Günlükleri görüntüle"
},
"manageTask": {
"label": ""
@@ -2840,7 +2840,7 @@
"label": "Hakkında"
},
"homeBoard": {
- "label": ""
+ "label": "Ana sayfa panosu"
},
"preferences": {
"label": "Tercihleriniz"
@@ -2866,7 +2866,7 @@
}
},
"group": {
- "title": "",
+ "title": "Gruplar",
"children": {
"action": {
"detail": {
@@ -2900,12 +2900,12 @@
"label": ""
},
"description": {
- "label": ""
+ "label": "Tanım"
}
},
"page": {
"list": {
- "title": "",
+ "title": "Arama motorları",
"noResults": {
"title": "",
"action": ""
@@ -2929,11 +2929,11 @@
"title": "",
"notification": {
"success": {
- "title": "",
+ "title": "Değişiklikler başarıyla uygulandı",
"message": ""
},
"error": {
- "title": "",
+ "title": "Değişiklikler uygulanamıyor",
"message": ""
}
},
diff --git a/packages/translation/src/lang/tw.json b/packages/translation/src/lang/tw.json
index 3335d6f5c..773fb5db9 100644
--- a/packages/translation/src/lang/tw.json
+++ b/packages/translation/src/lang/tw.json
@@ -1,128 +1,864 @@
{
+ "init": {
+ "step": {
+ "start": {
+ "title": "",
+ "subtitle": "",
+ "description": "",
+ "action": {
+ "scratch": "",
+ "importOldmarr": ""
+ }
+ },
+ "import": {
+ "title": "",
+ "subtitle": "",
+ "dropzone": {
+ "title": "",
+ "description": ""
+ },
+ "fileInfo": {
+ "action": {
+ "change": ""
+ }
+ },
+ "importSettings": {
+ "title": "",
+ "description": ""
+ },
+ "boardSelection": {
+ "title": "",
+ "description": "",
+ "action": {
+ "selectAll": "",
+ "unselectAll": ""
+ }
+ },
+ "summary": {
+ "title": "",
+ "description": "",
+ "action": {
+ "import": ""
+ },
+ "entities": {
+ "apps": "應用",
+ "boards": "面板",
+ "integrations": "",
+ "credentialUsers": ""
+ }
+ },
+ "tokenModal": {
+ "title": "",
+ "field": {
+ "token": {
+ "label": "Token",
+ "description": ""
+ }
+ },
+ "notification": {
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
+ }
+ },
+ "user": {
+ "title": "",
+ "subtitle": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": ""
+ }
+ }
+ },
+ "group": {
+ "title": "",
+ "subtitle": "",
+ "form": {
+ "name": {
+ "label": "",
+ "description": ""
+ }
+ }
+ },
+ "settings": {
+ "title": "設定",
+ "subtitle": ""
+ },
+ "finish": {
+ "title": "",
+ "subtitle": "",
+ "description": "",
+ "action": {
+ "goToBoard": "",
+ "createBoard": "",
+ "inviteUser": "",
+ "docs": ""
+ }
+ }
+ },
+ "backToStart": ""
+ },
"user": {
"title": "使用者",
"name": "使用者",
+ "page": {
+ "login": {
+ "title": "",
+ "subtitle": ""
+ },
+ "invite": {
+ "title": "",
+ "subtitle": "",
+ "description": ""
+ },
+ "init": {
+ "title": "",
+ "subtitle": ""
+ }
+ },
"field": {
"email": {
- "label": "E-mail"
+ "label": "E-mail",
+ "verified": ""
},
"username": {
- "label": "帳號"
+ "label": "使用者"
},
"password": {
"label": "密碼",
"requirement": {
+ "length": "",
"lowercase": "包含小寫字母",
"uppercase": "包含大寫字母",
- "number": "包含數字"
+ "number": "包含數字",
+ "special": ""
}
},
"passwordConfirm": {
"label": "確認密碼"
+ },
+ "previousPassword": {
+ "label": ""
+ },
+ "homeBoard": {
+ "label": ""
+ },
+ "pingIconsEnabled": {
+ "label": ""
}
},
+ "error": {
+ "usernameTaken": ""
+ },
"action": {
"login": {
- "label": "登入"
+ "label": "登入",
+ "labelWith": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ },
+ "forgotPassword": {
+ "label": "",
+ "description": ""
+ }
},
"register": {
"label": "創建帳號",
"notification": {
"success": {
- "title": "帳號已創建"
+ "title": "帳號已創建",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
}
}
},
- "create": "創建使用者"
+ "create": "創建使用者",
+ "changePassword": {
+ "label": "",
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "changeHomeBoard": {
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "changeFirstDayOfWeek": {
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "changePingIconsEnabled": {
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "manageAvatar": {
+ "changeImage": {
+ "label": "",
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ },
+ "toLarge": {
+ "title": "",
+ "message": ""
+ }
+ }
+ },
+ "removeImage": {
+ "label": "",
+ "confirm": "",
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ }
+ },
+ "editProfile": {
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "delete": {
+ "label": "",
+ "description": "",
+ "confirm": ""
+ },
+ "select": {
+ "label": "",
+ "notFound": ""
+ },
+ "transfer": {
+ "label": ""
+ }
}
},
"group": {
+ "title": "",
+ "name": "",
+ "search": "",
"field": {
- "name": "名稱"
+ "name": "名稱",
+ "members": ""
},
"permission": {
"admin": {
- "title": "管理員"
+ "title": "管理員",
+ "item": {
+ "admin": {
+ "label": "",
+ "description": ""
+ }
+ }
+ },
+ "app": {
+ "title": "應用",
+ "item": {
+ "create": {
+ "label": "",
+ "description": ""
+ },
+ "use-all": {
+ "label": "",
+ "description": ""
+ },
+ "modify-all": {
+ "label": "",
+ "description": ""
+ },
+ "full-all": {
+ "label": "",
+ "description": ""
+ }
+ }
},
"board": {
- "title": "面板"
+ "title": "面板",
+ "item": {
+ "create": {
+ "label": "",
+ "description": ""
+ },
+ "view-all": {
+ "label": "",
+ "description": ""
+ },
+ "modify-all": {
+ "label": "",
+ "description": ""
+ },
+ "full-all": {
+ "label": "",
+ "description": ""
+ }
+ }
+ },
+ "integration": {
+ "title": "",
+ "item": {
+ "create": {
+ "label": "",
+ "description": ""
+ },
+ "use-all": {
+ "label": "",
+ "description": ""
+ },
+ "interact-all": {
+ "label": "",
+ "description": ""
+ },
+ "full-all": {
+ "label": "",
+ "description": ""
+ }
+ }
+ },
+ "media": {
+ "title": "",
+ "item": {
+ "upload": {
+ "label": "",
+ "description": ""
+ },
+ "view-all": {
+ "label": "",
+ "description": ""
+ },
+ "full-all": {
+ "label": "",
+ "description": ""
+ }
+ }
+ },
+ "other": {
+ "title": "",
+ "item": {
+ "view-logs": {
+ "label": "",
+ "description": ""
+ }
+ }
+ },
+ "search-engine": {
+ "title": "",
+ "item": {
+ "create": {
+ "label": "",
+ "description": ""
+ },
+ "modify-all": {
+ "label": "",
+ "description": ""
+ },
+ "full-all": {
+ "label": "",
+ "description": ""
+ }
+ }
+ }
+ },
+ "memberNotice": {
+ "mixed": "",
+ "external": ""
+ },
+ "reservedNotice": {
+ "message": ""
+ },
+ "action": {
+ "create": {
+ "label": "",
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "transfer": {
+ "label": "",
+ "description": "",
+ "confirm": "",
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "addMember": {
+ "label": ""
+ },
+ "removeMember": {
+ "label": "",
+ "confirm": ""
+ },
+ "delete": {
+ "label": "",
+ "description": "",
+ "confirm": "",
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "changePermissions": {
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
+ },
+ "update": {
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "select": {
+ "label": "",
+ "notFound": ""
}
}
},
"app": {
"page": {
"list": {
- "title": "應用"
+ "title": "應用",
+ "noResults": {
+ "title": "",
+ "action": ""
+ }
+ },
+ "create": {
+ "title": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
+ },
+ "edit": {
+ "title": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
+ },
+ "delete": {
+ "title": "",
+ "message": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
}
},
"field": {
"name": {
"label": "名稱"
+ },
+ "description": {
+ "label": ""
+ },
+ "url": {
+ "label": ""
+ }
+ },
+ "action": {
+ "select": {
+ "label": "",
+ "notFound": ""
}
}
},
"integration": {
+ "page": {
+ "list": {
+ "title": "",
+ "search": "",
+ "noResults": {
+ "title": ""
+ }
+ },
+ "create": {
+ "title": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
+ },
+ "edit": {
+ "title": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
+ },
+ "delete": {
+ "title": "",
+ "message": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
+ }
+ },
"field": {
"name": {
"label": "名稱"
+ },
+ "url": {
+ "label": ""
}
},
+ "action": {
+ "create": ""
+ },
"testConnection": {
+ "action": {
+ "create": "",
+ "edit": ""
+ },
+ "alertNotice": "",
"notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
"invalidUrl": {
- "title": "無效連結"
+ "title": "無效連結",
+ "message": ""
+ },
+ "secretNotDefined": {
+ "title": "",
+ "message": ""
+ },
+ "invalidCredentials": {
+ "title": "",
+ "message": ""
+ },
+ "commonError": {
+ "title": "",
+ "message": ""
+ },
+ "badRequest": {
+ "title": "",
+ "message": ""
+ },
+ "unauthorized": {
+ "title": "",
+ "message": ""
+ },
+ "forbidden": {
+ "title": "",
+ "message": ""
+ },
+ "notFound": {
+ "title": "",
+ "message": ""
+ },
+ "internalServerError": {
+ "title": "",
+ "message": ""
+ },
+ "serviceUnavailable": {
+ "title": "",
+ "message": ""
+ },
+ "connectionAborted": {
+ "title": "",
+ "message": ""
+ },
+ "domainNotFound": {
+ "title": "",
+ "message": ""
+ },
+ "connectionRefused": {
+ "title": "",
+ "message": ""
+ },
+ "invalidJson": {
+ "title": "",
+ "message": ""
+ },
+ "wrongPath": {
+ "title": "",
+ "message": ""
}
}
},
"secrets": {
+ "title": "",
+ "lastUpdated": "",
+ "notSet": {
+ "label": "",
+ "tooltip": ""
+ },
+ "secureNotice": "",
+ "reset": {
+ "title": "",
+ "message": ""
+ },
+ "noSecretsRequired": {
+ "segmentTitle": "",
+ "text": ""
+ },
"kind": {
"username": {
- "label": "帳號"
+ "label": "使用者",
+ "newLabel": ""
+ },
+ "apiKey": {
+ "label": "",
+ "newLabel": ""
},
"password": {
"label": "密碼",
"newLabel": "新密碼"
}
}
+ },
+ "permission": {
+ "use": "",
+ "interact": "",
+ "full": ""
}
},
"media": {
+ "plural": "",
+ "search": "",
"field": {
"name": "名稱",
"size": "大小",
"creator": "創建者"
+ },
+ "action": {
+ "upload": {
+ "label": "",
+ "file": "",
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "delete": {
+ "label": "",
+ "description": "",
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ }
+ },
+ "copy": {
+ "label": ""
+ }
}
},
"common": {
+ "beta": "",
"error": "錯誤",
"action": {
"add": "新增",
"apply": "應用",
+ "backToOverview": "",
"create": "創建",
"edit": "編輯",
+ "import": "",
"insert": "插入",
"remove": "刪除",
"save": "儲存",
"saveChanges": "儲存設定",
"cancel": "取消",
"delete": "刪除",
+ "discard": "",
"confirm": "確認",
+ "continue": "",
"previous": "上一步",
"next": "下一步",
- "tryAgain": "請再試一次"
+ "checkoutDocs": "",
+ "checkLogs": "",
+ "tryAgain": "請再試一次",
+ "loading": ""
+ },
+ "here": "",
+ "iconPicker": {
+ "label": "",
+ "header": ""
+ },
+ "colorScheme": {
+ "options": {
+ "light": "",
+ "dark": ""
+ }
},
"information": {
+ "min": "",
+ "max": "",
+ "days": "",
"hours": "時",
"minutes": "分"
},
+ "notification": {
+ "create": {
+ "success": "",
+ "error": ""
+ },
+ "delete": {
+ "success": "",
+ "error": ""
+ },
+ "update": {
+ "success": "",
+ "error": ""
+ },
+ "transfer": {
+ "success": "",
+ "error": ""
+ }
+ },
+ "multiSelect": {
+ "placeholder": ""
+ },
+ "multiText": {
+ "placeholder": "",
+ "addLabel": ""
+ },
+ "select": {
+ "placeholder": "",
+ "badge": {
+ "recommended": ""
+ }
+ },
"userAvatar": {
"menu": {
+ "switchToDarkMode": "",
+ "switchToLightMode": "",
+ "management": "",
"preferences": "您的偏好設定",
- "login": "登入"
+ "logout": "",
+ "login": "登入",
+ "homeBoard": "",
+ "loggedOut": "",
+ "updateAvailable": ""
}
},
"dangerZone": "危險",
"noResults": "未找到結果",
+ "preview": {
+ "show": "",
+ "hide": ""
+ },
"zod": {
"errors": {
"default": "該字段無效",
@@ -130,7 +866,8 @@
"string": {
"startsWith": "該字段必須以 {startsWith} 開頭",
"endsWith": "該字段必須以 {endsWith} 結尾",
- "includes": "該字段必須以 {includes}"
+ "includes": "該字段必須以 {includes}",
+ "invalidEmail": ""
},
"tooSmall": {
"string": "該字段長度必須至少為 {minimum} 個字符",
@@ -139,11 +876,30 @@
"tooBig": {
"string": "該字段長度不得超過 {maximum} 個字符",
"number": "該字段必須小於或等於 {maximum}"
+ },
+ "custom": {
+ "passwordsDoNotMatch": "",
+ "passwordRequirements": "",
+ "boardAlreadyExists": "",
+ "invalidFileType": "",
+ "fileTooLarge": "",
+ "invalidConfiguration": "",
+ "groupNameTaken": ""
}
}
}
},
"section": {
+ "dynamic": {
+ "action": {
+ "create": "",
+ "remove": ""
+ },
+ "remove": {
+ "title": "",
+ "message": ""
+ }
+ },
"category": {
"field": {
"name": {
@@ -151,42 +907,147 @@
}
},
"action": {
+ "create": "",
+ "edit": "",
+ "remove": "",
"moveUp": "上移",
- "moveDown": "下移"
+ "moveDown": "下移",
+ "createAbove": "",
+ "createBelow": ""
+ },
+ "create": {
+ "title": "",
+ "submit": ""
+ },
+ "remove": {
+ "title": "",
+ "message": ""
+ },
+ "edit": {
+ "title": "",
+ "submit": ""
},
"menu": {
"label": {
+ "create": "",
"changePosition": "換位"
}
}
}
},
"item": {
+ "action": {
+ "create": "",
+ "import": "",
+ "edit": "",
+ "moveResize": "",
+ "duplicate": "",
+ "remove": ""
+ },
"menu": {
"label": {
"settings": "設定"
}
},
+ "create": {
+ "title": "",
+ "addToBoard": ""
+ },
"moveResize": {
+ "title": "",
"field": {
"width": {
"label": "寬度"
},
"height": {
"label": "高度"
+ },
+ "xOffset": {
+ "label": ""
+ },
+ "yOffset": {
+ "label": ""
}
}
+ },
+ "edit": {
+ "title": "",
+ "advancedOptions": {
+ "label": "",
+ "title": ""
+ },
+ "field": {
+ "integrations": {
+ "label": ""
+ },
+ "customCssClasses": {
+ "label": ""
+ }
+ }
+ },
+ "remove": {
+ "title": "",
+ "message": ""
}
},
"widget": {
"app": {
+ "name": "",
+ "description": "",
"option": {
+ "appId": {
+ "label": ""
+ },
"openInNewTab": {
"label": "在新分頁中開啟"
+ },
+ "showTitle": {
+ "label": ""
+ },
+ "showDescriptionTooltip": {
+ "label": ""
+ },
+ "pingEnabled": {
+ "label": ""
+ }
+ },
+ "error": {
+ "notFound": {
+ "label": "",
+ "tooltip": ""
+ }
+ }
+ },
+ "bookmarks": {
+ "name": "",
+ "description": "",
+ "option": {
+ "title": {
+ "label": ""
+ },
+ "layout": {
+ "label": "顯示布局",
+ "option": {
+ "row": {
+ "label": "橫向"
+ },
+ "column": {
+ "label": "垂直"
+ },
+ "grid": {
+ "label": ""
+ }
+ }
+ },
+ "items": {
+ "label": "",
+ "add": ""
}
}
},
"dnsHoleSummary": {
+ "name": "",
+ "description": "",
"option": {
"layout": {
"label": "顯示布局",
@@ -196,17 +1057,29 @@
},
"column": {
"label": "垂直"
+ },
+ "grid": {
+ "label": ""
}
}
+ },
+ "usePiHoleColors": {
+ "label": ""
}
},
+ "error": {
+ "internalServerError": "",
+ "integrationsDisconnected": ""
+ },
"data": {
"adsBlockedToday": "今日封鎖",
"adsBlockedTodayPercentage": "今日封鎖",
- "dnsQueriesToday": "今日查詢"
+ "dnsQueriesToday": "今日查詢",
+ "domainsBeingBlocked": ""
}
},
"dnsHoleControls": {
+ "name": "",
"description": "從您的面板控制 PiHole 或 AdGuard",
"option": {
"layout": {
@@ -217,28 +1090,70 @@
},
"column": {
"label": "垂直"
+ },
+ "grid": {
+ "label": ""
}
}
+ },
+ "showToggleAllButtons": {
+ "label": ""
}
},
+ "error": {
+ "internalServerError": ""
+ },
"controls": {
+ "enableAll": "",
+ "disableAll": "",
+ "setTimer": "",
"set": "設定",
"enabled": "已啟用",
"disabled": "已禁用",
+ "processing": "",
+ "disconnected": "",
"hours": "時",
- "minutes": "分"
+ "minutes": "分",
+ "unlimited": ""
}
},
"clock": {
+ "name": "",
"description": "顯示目前的日期與時間",
"option": {
+ "customTitleToggle": {
+ "label": "",
+ "description": ""
+ },
+ "customTitle": {
+ "label": ""
+ },
+ "is24HourFormat": {
+ "label": "",
+ "description": ""
+ },
+ "showSeconds": {
+ "label": ""
+ },
+ "useCustomTimezone": {
+ "label": ""
+ },
"timezone": {
- "label": "時區"
+ "label": "時區",
+ "description": ""
+ },
+ "showDate": {
+ "label": ""
+ },
+ "dateFormat": {
+ "label": "",
+ "description": ""
}
}
},
"notebook": {
"name": "筆記本",
+ "description": "",
"option": {
"showToolbar": {
"label": "顯示幫助您紀錄 Markdown 的工具欄"
@@ -330,17 +1245,31 @@
}
},
"error": {
+ "noUrl": "",
"noBrowerSupport": "您的瀏覽器不支援iFrame,請更新您的瀏覽器"
}
},
"smartHome-entityState": {
+ "name": "",
+ "description": "",
"option": {
"entityId": {
"label": "實體 ID"
+ },
+ "displayName": {
+ "label": ""
+ },
+ "entityUnit": {
+ "label": ""
+ },
+ "clickable": {
+ "label": ""
}
}
},
"smartHome-executeAutomation": {
+ "name": "",
+ "description": "",
"option": {
"displayName": {
"label": "顯示名稱"
@@ -348,13 +1277,28 @@
"automationId": {
"label": "自動化ID"
}
+ },
+ "spotlightAction": {
+ "run": ""
}
},
"calendar": {
"name": "日曆",
+ "description": "",
"option": {
"releaseType": {
- "label": "Radarr 發布類型"
+ "label": "Radarr 發布類型",
+ "options": {
+ "inCinemas": "",
+ "digitalRelease": "",
+ "physicalRelease": ""
+ }
+ },
+ "filterPastMonths": {
+ "label": ""
+ },
+ "filterFutureMonths": {
+ "label": ""
}
}
},
@@ -362,8 +1306,25 @@
"name": "天氣",
"description": "顯示指定位置的目前天氣狀況",
"option": {
+ "isFormatFahrenheit": {
+ "label": ""
+ },
"location": {
"label": "天氣位置"
+ },
+ "showCity": {
+ "label": ""
+ },
+ "hasForecast": {
+ "label": ""
+ },
+ "forecastDayCount": {
+ "label": "",
+ "description": ""
+ },
+ "dateFormat": {
+ "label": "",
+ "description": ""
}
},
"kind": {
@@ -385,8 +1346,17 @@
},
"indexerManager": {
"name": "索引管理器狀態",
+ "description": "",
+ "option": {
+ "openIndexerSiteInNewTab": {
+ "label": ""
+ }
+ },
"title": "索引管理器",
- "testAll": "測試全部"
+ "testAll": "測試全部",
+ "error": {
+ "internalServerError": ""
+ }
},
"healthMonitoring": {
"name": "系統健康監控",
@@ -406,20 +1376,60 @@
}
},
"popover": {
- "available": "可用"
+ "information": "",
+ "processor": "",
+ "memory": "",
+ "memoryAvailable": "",
+ "version": "",
+ "uptime": "",
+ "loadAverage": "",
+ "minute": "",
+ "minutes": "",
+ "used": "",
+ "available": "可用",
+ "lastSeen": ""
+ },
+ "memory": {},
+ "error": {
+ "internalServerError": ""
}
},
"common": {
"location": {
+ "query": "",
+ "latitude": "",
+ "longitude": "",
+ "disabledTooltip": "",
+ "unknownLocation": "",
"search": "搜尋",
"table": {
- "header": {},
- "action": {},
+ "header": {
+ "city": "",
+ "country": "",
+ "coordinates": "",
+ "population": ""
+ },
+ "action": {
+ "select": ""
+ },
"population": {
"fallback": "未知"
}
}
- }
+ },
+ "integration": {
+ "noData": "",
+ "description": ""
+ },
+ "app": {
+ "noData": "",
+ "description": ""
+ },
+ "error": {
+ "noIntegration": "",
+ "noData": ""
+ },
+ "option": {}
},
"video": {
"name": "影片串流",
@@ -429,33 +1439,129 @@
"label": "訂閱網址"
},
"hasAutoPlay": {
- "label": "自動播放"
+ "label": "自動播放",
+ "description": ""
+ },
+ "isMuted": {
+ "label": ""
+ },
+ "hasControls": {
+ "label": ""
}
+ },
+ "error": {
+ "noUrl": "",
+ "forYoutubeUseIframe": ""
}
},
+ "mediaServer": {
+ "name": "",
+ "description": "",
+ "option": {}
+ },
"downloads": {
+ "name": "",
+ "description": "",
+ "option": {
+ "columns": {
+ "label": ""
+ },
+ "enableRowSorting": {
+ "label": ""
+ },
+ "defaultSort": {
+ "label": ""
+ },
+ "descendingDefaultSort": {
+ "label": ""
+ },
+ "showCompletedUsenet": {
+ "label": ""
+ },
+ "showCompletedTorrent": {
+ "label": ""
+ },
+ "activeTorrentThreshold": {
+ "label": ""
+ },
+ "categoryFilter": {
+ "label": ""
+ },
+ "filterIsWhitelist": {
+ "label": ""
+ },
+ "applyFilterToRatio": {
+ "label": ""
+ }
+ },
+ "errors": {
+ "noColumns": "",
+ "noCommunications": ""
+ },
"items": {
+ "actions": {
+ "columnTitle": ""
+ },
"added": {
+ "columnTitle": "",
"detailsTitle": "日期已添加"
},
+ "category": {
+ "columnTitle": "",
+ "detailsTitle": ""
+ },
"downSpeed": {
"columnTitle": "下載",
"detailsTitle": "下載速度"
},
+ "index": {
+ "columnTitle": "",
+ "detailsTitle": ""
+ },
+ "id": {
+ "columnTitle": ""
+ },
"integration": {
"columnTitle": "集成"
},
+ "name": {
+ "columnTitle": ""
+ },
"progress": {
- "columnTitle": "進度"
+ "columnTitle": "進度",
+ "detailsTitle": ""
},
"ratio": {
- "columnTitle": "分享率"
+ "columnTitle": "分享率",
+ "detailsTitle": ""
+ },
+ "received": {
+ "columnTitle": "",
+ "detailsTitle": ""
+ },
+ "sent": {
+ "columnTitle": "",
+ "detailsTitle": ""
+ },
+ "size": {
+ "columnTitle": "",
+ "detailsTitle": ""
},
"state": {
- "columnTitle": "狀態"
+ "columnTitle": "狀態",
+ "detailsTitle": ""
+ },
+ "time": {
+ "columnTitle": "",
+ "detailsTitle": ""
+ },
+ "type": {
+ "columnTitle": "",
+ "detailsTitle": ""
},
"upSpeed": {
- "columnTitle": "上傳"
+ "columnTitle": "上傳",
+ "detailsTitle": ""
}
},
"states": {
@@ -463,62 +1569,304 @@
"queued": "隊列",
"paused": "已暫停",
"completed": "已完成",
- "unknown": "未知"
- }
+ "failed": "",
+ "processing": "",
+ "leeching": "",
+ "stalled": "",
+ "unknown": "未知",
+ "seeding": ""
+ },
+ "actions": {
+ "clients": {
+ "modalTitle": "",
+ "pause": "",
+ "resume": ""
+ },
+ "client": {
+ "pause": "",
+ "resume": ""
+ },
+ "item": {
+ "pause": "",
+ "resume": "",
+ "delete": {
+ "title": "",
+ "modalTitle": "",
+ "entry": "",
+ "entryAndFiles": ""
+ }
+ }
+ },
+ "globalRatio": ""
},
"mediaRequests-requestList": {
+ "name": "",
"description": "查看 Overseerr 或 Jellyseer 實例中的所有媒體請求列表",
"option": {
"linksTargetNewTab": {
"label": "在新分頁中開啟連結"
}
},
+ "pending": {
+ "approve": "",
+ "approving": "",
+ "decline": ""
+ },
"availability": {
"unknown": "未知",
+ "pending": "",
+ "processing": "",
"partiallyAvailable": "部分",
"available": "可用"
- }
+ },
+ "toBeDetermined": ""
},
"mediaRequests-requestStats": {
+ "name": "",
"description": "您的媒體請求統計",
+ "option": {},
"titles": {
"stats": {
"main": "媒體狀態",
"approved": "已准許",
"pending": "待准許",
+ "processing": "",
+ "declined": "",
+ "available": "",
"tv": "電視劇請求",
"movie": "電影請求",
"total": "總計"
},
"users": {
- "main": "使用者排行"
+ "main": "使用者排行",
+ "requests": ""
+ }
+ }
+ },
+ "mediaTranscoding": {
+ "name": "",
+ "description": "",
+ "option": {
+ "defaultView": {
+ "label": "預設視圖"
+ },
+ "queuePageSize": {
+ "label": ""
+ }
+ },
+ "tab": {
+ "workers": "工作種",
+ "queue": "隊列",
+ "statistics": "統計"
+ },
+ "currentIndex": "",
+ "healthCheck": {
+ "title": "",
+ "queued": "隊列",
+ "status": {
+ "healthy": "健康",
+ "unhealthy": "不良"
+ }
+ },
+ "panel": {
+ "statistics": {
+ "empty": "空",
+ "transcodes": "轉碼",
+ "transcodesCount": "",
+ "healthChecksCount": "",
+ "filesCount": "",
+ "savedSpace": "",
+ "healthChecks": "",
+ "videoCodecs": "編碼",
+ "videoContainers": "容器",
+ "videoResolutions": "解析度"
+ },
+ "workers": {
+ "empty": "空",
+ "table": {
+ "file": "檔案",
+ "eta": "剩餘時間",
+ "progress": "進度",
+ "transcode": "轉碼",
+ "healthCheck": ""
+ }
+ },
+ "queue": {
+ "empty": "空",
+ "table": {
+ "file": "檔案",
+ "size": "大小",
+ "transcode": "轉碼",
+ "healthCheck": ""
+ }
+ }
+ }
+ },
+ "rssFeed": {
+ "name": "",
+ "description": "",
+ "option": {
+ "feedUrls": {
+ "label": ""
+ },
+ "enableRtl": {
+ "label": ""
+ },
+ "textLinesClamp": {
+ "label": ""
+ },
+ "maximumAmountPosts": {
+ "label": ""
}
}
}
},
+ "widgetPreview": {
+ "toggle": {
+ "enabled": "",
+ "disabled": ""
+ },
+ "dimensions": {
+ "title": ""
+ }
+ },
"board": {
"action": {
+ "edit": {
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ },
+ "confirmLeave": {
+ "title": "",
+ "message": ""
+ }
+ },
"oldImport": {
+ "label": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ },
"form": {
+ "file": {
+ "label": "",
+ "invalidError": ""
+ },
"apps": {
- "label": "應用"
+ "label": "應用",
+ "avoidDuplicates": {
+ "label": "",
+ "description": ""
+ },
+ "onlyImportApps": {
+ "label": "",
+ "description": ""
+ }
+ },
+ "name": {
+ "label": ""
},
"screenSize": {
+ "label": "",
+ "description": "",
"option": {
"sm": "小",
"md": "中等",
"lg": "大號"
}
+ },
+ "sidebarBehavior": {
+ "label": "",
+ "description": "",
+ "option": {
+ "lastSection": {
+ "label": "",
+ "description": ""
+ },
+ "removeItems": {
+ "label": "",
+ "description": ""
+ }
+ }
}
}
}
},
"field": {
+ "pageTitle": {
+ "label": ""
+ },
+ "metaTitle": {
+ "label": ""
+ },
+ "logoImageUrl": {
+ "label": ""
+ },
+ "faviconImageUrl": {
+ "label": ""
+ },
+ "backgroundImageUrl": {
+ "label": ""
+ },
"backgroundImageAttachment": {
- "label": "背景圖片附件"
+ "label": "背景圖片附件",
+ "option": {
+ "fixed": {
+ "label": "",
+ "description": ""
+ },
+ "scroll": {
+ "label": "",
+ "description": ""
+ }
+ }
+ },
+ "backgroundImageRepeat": {
+ "label": "",
+ "option": {
+ "repeat": {
+ "label": "",
+ "description": ""
+ },
+ "no-repeat": {
+ "label": "",
+ "description": ""
+ },
+ "repeat-x": {
+ "label": "",
+ "description": ""
+ },
+ "repeat-y": {
+ "label": "",
+ "description": ""
+ }
+ }
},
"backgroundImageSize": {
- "label": "背景圖像大小"
+ "label": "背景圖像大小",
+ "option": {
+ "cover": {
+ "label": "",
+ "description": ""
+ },
+ "contain": {
+ "label": "",
+ "description": ""
+ }
+ }
},
"primaryColor": {
"label": "主體顏色"
@@ -526,20 +1874,37 @@
"secondaryColor": {
"label": "輔助顏色"
},
+ "opacity": {
+ "label": ""
+ },
"customCss": {
- "description": "此外,只推薦有經驗的使用者使用 CSS 自定義面板"
+ "label": "",
+ "description": "此外,只推薦有經驗的使用者使用 CSS 自定義面板",
+ "customClassesAlert": {
+ "title": "",
+ "description": ""
+ }
+ },
+ "columnCount": {
+ "label": ""
},
"name": {
"label": "名稱"
},
"isPublic": {
- "label": "公開"
+ "label": "公開",
+ "description": ""
}
},
+ "content": {
+ "metaTitle": ""
+ },
"setting": {
+ "title": "",
"section": {
"general": {
- "title": "一般"
+ "title": "一般",
+ "unrecognizedLink": ""
},
"layout": {
"title": "顯示布局"
@@ -547,11 +1912,24 @@
"background": {
"title": "背景"
},
+ "color": {
+ "title": ""
+ },
+ "customCss": {
+ "title": ""
+ },
"access": {
+ "title": "",
"permission": {
"item": {
"view": {
"label": "查看面板"
+ },
+ "modify": {
+ "label": ""
+ },
+ "full": {
+ "label": ""
}
}
}
@@ -559,34 +1937,115 @@
"dangerZone": {
"title": "危險",
"action": {
- "delete": {
+ "rename": {
+ "label": "",
+ "description": "",
+ "button": "",
+ "modal": {
+ "title": ""
+ }
+ },
+ "visibility": {
+ "label": "",
+ "description": {
+ "public": "",
+ "private": ""
+ },
+ "button": {
+ "public": "",
+ "private": ""
+ },
"confirm": {
- "title": "刪除面板"
+ "public": {
+ "title": "",
+ "description": ""
+ },
+ "private": {
+ "title": "",
+ "description": ""
+ }
+ }
+ },
+ "delete": {
+ "label": "",
+ "description": "",
+ "button": "",
+ "confirm": {
+ "title": "刪除面板",
+ "description": ""
}
}
}
}
}
+ },
+ "error": {
+ "noBoard": {
+ "title": "",
+ "description": "",
+ "link": "",
+ "notice": ""
+ },
+ "notFound": {
+ "title": "",
+ "description": "",
+ "link": "",
+ "notice": ""
+ },
+ "homeBoard": {
+ "title": "",
+ "admin": {
+ "description": "",
+ "link": "",
+ "notice": ""
+ },
+ "user": {
+ "description": "",
+ "link": "",
+ "notice": ""
+ },
+ "anonymous": {
+ "description": "",
+ "link": "",
+ "notice": ""
+ }
+ }
}
},
"management": {
+ "metaTitle": "",
+ "title": {
+ "morning": "",
+ "afternoon": "",
+ "evening": ""
+ },
+ "notFound": {
+ "title": "",
+ "text": ""
+ },
"navbar": {
"items": {
"home": "首頁",
"boards": "面板",
"apps": "應用",
+ "integrations": "",
+ "searchEngies": "",
+ "medias": "",
"users": {
"label": "使用者",
"items": {
"manage": "管理",
- "invites": "邀請"
+ "invites": "邀請",
+ "groups": ""
}
},
"tools": {
"label": "工具",
"items": {
"docker": "Docker",
- "api": "API"
+ "logs": "",
+ "api": "API",
+ "tasks": ""
}
},
"settings": "設定",
@@ -594,7 +2053,9 @@
"label": "幫助",
"items": {
"documentation": "文件",
- "discord": "Discord 社群"
+ "submitIssue": "",
+ "discord": "Discord 社群",
+ "sourceCode": ""
}
},
"about": "關於"
@@ -606,30 +2067,48 @@
"board": "面板",
"user": "使用者",
"invite": "邀請",
- "app": "應用"
+ "integration": "",
+ "app": "應用",
+ "group": ""
},
"statisticLabel": {
- "boards": "面板"
+ "boards": "面板",
+ "resources": "",
+ "authentication": "",
+ "authorization": ""
}
},
"board": {
"title": "您的面板",
"action": {
+ "new": {
+ "label": ""
+ },
+ "open": {
+ "label": ""
+ },
"settings": {
"label": "設定"
},
"setHomeBoard": {
+ "label": "",
"badge": {
- "label": "首頁"
+ "label": "首頁",
+ "tooltip": ""
}
},
"delete": {
"label": "永久刪除",
"confirm": {
- "title": "刪除面板"
+ "title": "刪除面板",
+ "description": ""
}
}
},
+ "visibility": {
+ "public": "",
+ "private": ""
+ },
"modal": {
"createBoard": {
"field": {
@@ -640,11 +2119,18 @@
}
}
},
+ "media": {
+ "includeFromAllUsers": ""
+ },
"user": {
+ "back": "",
+ "fieldsDisabledExternalProvider": "",
"setting": {
"general": {
"title": "一般",
"item": {
+ "language": "",
+ "board": "",
"firstDayOfWeek": "一週的第一天",
"accessibility": "無障礙服務"
}
@@ -660,22 +2146,51 @@
"metaTitle": "管理使用者",
"title": "使用者"
},
+ "edit": {
+ "metaTitle": ""
+ },
"create": {
"metaTitle": "創建使用者",
+ "title": "",
"step": {
+ "personalInformation": {
+ "label": ""
+ },
"security": {
"label": "安全"
+ },
+ "groups": {
+ "label": "",
+ "title": "",
+ "description": ""
+ },
+ "review": {
+ "label": ""
+ },
+ "completed": {
+ "title": ""
+ },
+ "error": {
+ "title": ""
}
+ },
+ "action": {
+ "createAnother": "",
+ "back": ""
}
},
"invite": {
"title": "管理使用者邀請",
"action": {
"new": {
+ "title": "",
"description": "過期後,邀請會失效,被邀請者將無法創建帳號"
},
"copy": {
- "link": "邀請連結"
+ "title": "",
+ "description": "",
+ "link": "邀請連結",
+ "button": ""
},
"delete": {
"title": "刪除邀請",
@@ -699,50 +2214,217 @@
}
},
"group": {
+ "back": "",
"setting": {
"general": {
- "title": "一般"
+ "title": "一般",
+ "owner": "所有者",
+ "ownerOfGroup": "",
+ "ownerOfGroupDeleted": ""
+ },
+ "members": {
+ "title": "",
+ "search": "",
+ "notFound": ""
+ },
+ "permissions": {
+ "title": "",
+ "form": {
+ "unsavedChanges": ""
+ }
}
}
},
"settings": {
- "title": "設定"
+ "title": "設定",
+ "notification": {
+ "success": {
+ "message": ""
+ },
+ "error": {
+ "message": ""
+ }
+ },
+ "section": {
+ "analytics": {
+ "title": "",
+ "general": {
+ "title": "",
+ "text": ""
+ },
+ "widgetData": {
+ "title": "",
+ "text": ""
+ },
+ "integrationData": {
+ "title": "",
+ "text": ""
+ },
+ "usersData": {
+ "title": "",
+ "text": ""
+ }
+ },
+ "crawlingAndIndexing": {
+ "title": "",
+ "warning": "",
+ "noIndex": {
+ "title": "",
+ "text": ""
+ },
+ "noFollow": {
+ "title": "",
+ "text": ""
+ },
+ "noTranslate": {
+ "title": "",
+ "text": ""
+ },
+ "noSiteLinksSearchBox": {
+ "title": "",
+ "text": ""
+ }
+ },
+ "board": {
+ "title": "面板",
+ "homeBoard": {
+ "label": "",
+ "description": ""
+ }
+ },
+ "appearance": {
+ "title": "外觀",
+ "defaultColorScheme": {
+ "label": "",
+ "options": {
+ "light": "",
+ "dark": ""
+ }
+ }
+ },
+ "culture": {
+ "title": "",
+ "defaultLocale": {
+ "label": ""
+ }
+ }
+ }
},
"tool": {
"tasks": {
+ "title": "",
"status": {
+ "idle": "",
"running": "運行中",
"error": "錯誤"
},
"job": {
+ "iconsUpdater": {
+ "label": ""
+ },
+ "analytics": {
+ "label": ""
+ },
+ "smartHomeEntityState": {
+ "label": ""
+ },
+ "ping": {
+ "label": ""
+ },
"mediaServer": {
"label": "媒體服務"
},
- "mediaRequests": {
- "label": "媒體請求"
+ "mediaOrganizer": {
+ "label": ""
+ },
+ "downloads": {
+ "label": ""
+ },
+ "mediaRequestStats": {
+ "label": ""
+ },
+ "mediaRequestList": {
+ "label": ""
+ },
+ "rssFeeds": {
+ "label": ""
+ },
+ "indexerManager": {
+ "label": ""
+ },
+ "healthMonitoring": {
+ "label": ""
+ },
+ "dnsHole": {
+ "label": ""
+ },
+ "sessionCleanup": {
+ "label": ""
+ },
+ "updateChecker": {
+ "label": ""
+ },
+ "mediaTranscoding": {
+ "label": ""
}
}
},
"api": {
"title": "API",
+ "modal": {
+ "createApiToken": {
+ "title": "",
+ "description": "",
+ "button": ""
+ }
+ },
"tab": {
"documentation": {
"label": "文件"
},
"apiKey": {
+ "label": "",
+ "title": "",
+ "button": {
+ "createApiToken": ""
+ },
"table": {
"header": {
- "id": "ID"
+ "id": "ID",
+ "createdBy": ""
}
}
}
}
}
+ },
+ "about": {
+ "version": "",
+ "text": "",
+ "accordion": {
+ "contributors": {
+ "title": "",
+ "subtitle": ""
+ },
+ "translators": {
+ "title": "",
+ "subtitle": ""
+ },
+ "libraries": {
+ "title": "",
+ "subtitle": ""
+ }
+ }
}
}
},
"docker": {
"title": "容器",
+ "table": {
+ "updated": "",
+ "search": "",
+ "selected": ""
+ },
"field": {
"name": {
"label": "名稱"
@@ -754,7 +2436,9 @@
"running": "運行中",
"paused": "已暫停",
"restarting": "正在重啟...",
- "removing": "正在刪除..."
+ "exited": "",
+ "removing": "正在刪除...",
+ "dead": ""
}
},
"containerImage": {
@@ -766,27 +2450,102 @@
},
"action": {
"start": {
- "label": "開始"
+ "label": "開始",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
},
"stop": {
- "label": "停止"
+ "label": "停止",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
},
"restart": {
- "label": "重啟"
+ "label": "重啟",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
},
"remove": {
- "label": "刪除"
+ "label": "刪除",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
+ },
+ "refresh": {
+ "label": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
}
+ },
+ "error": {
+ "internalServerError": ""
}
},
"permission": {
+ "title": "",
+ "userSelect": {
+ "title": ""
+ },
+ "groupSelect": {
+ "title": ""
+ },
"tab": {
- "user": "使用者"
+ "user": "使用者",
+ "group": "",
+ "inherited": ""
},
"field": {
"user": {
"label": "使用者"
+ },
+ "group": {
+ "label": ""
+ },
+ "permission": {
+ "label": ""
}
+ },
+ "action": {
+ "saveUser": "",
+ "saveGroup": ""
}
},
"navigationStructure": {
@@ -796,17 +2555,31 @@
"label": "面板"
},
"integrations": {
+ "label": "",
"edit": {
"label": "編輯"
+ },
+ "new": {
+ "label": ""
}
},
"search-engines": {
+ "label": "",
+ "new": {
+ "label": ""
+ },
"edit": {
"label": "編輯"
}
},
+ "medias": {
+ "label": ""
+ },
"apps": {
"label": "應用",
+ "new": {
+ "label": ""
+ },
"edit": {
"label": "編輯"
}
@@ -819,6 +2592,9 @@
"general": "一般",
"security": "安全",
"board": "面板",
+ "groups": {
+ "label": ""
+ },
"invites": {
"label": "邀請"
}
@@ -827,6 +2603,9 @@
"label": "工具",
"docker": {
"label": "Docker"
+ },
+ "logs": {
+ "label": ""
}
},
"settings": {
@@ -838,23 +2617,144 @@
}
},
"search": {
+ "placeholder": "",
+ "nothingFound": "",
+ "error": {
+ "fetch": ""
+ },
"mode": {
"appIntegrationBoard": {
+ "help": "",
"group": {
"app": {
- "title": "應用"
+ "title": "應用",
+ "children": {
+ "action": {
+ "open": {
+ "label": ""
+ },
+ "edit": {
+ "label": ""
+ }
+ },
+ "detail": {
+ "title": ""
+ }
+ }
},
"board": {
- "title": "面板"
+ "title": "面板",
+ "children": {
+ "action": {
+ "open": {
+ "label": ""
+ },
+ "homeBoard": {
+ "label": ""
+ },
+ "settings": {
+ "label": ""
+ }
+ },
+ "detail": {
+ "title": ""
+ }
+ }
+ },
+ "integration": {
+ "title": ""
+ }
+ }
+ },
+ "command": {
+ "help": "",
+ "group": {
+ "localCommand": {
+ "title": ""
+ },
+ "globalCommand": {
+ "title": "",
+ "option": {
+ "colorScheme": {
+ "light": "",
+ "dark": ""
+ },
+ "language": {
+ "label": "",
+ "children": {
+ "detail": {
+ "title": ""
+ }
+ }
+ },
+ "newBoard": {
+ "label": ""
+ },
+ "importBoard": {
+ "label": ""
+ },
+ "newApp": {
+ "label": ""
+ },
+ "newIntegration": {
+ "label": "",
+ "children": {
+ "detail": {
+ "title": ""
+ }
+ }
+ },
+ "newUser": {
+ "label": ""
+ },
+ "newInvite": {
+ "label": ""
+ },
+ "newGroup": {
+ "label": ""
+ }
+ }
}
}
},
"external": {
+ "help": "",
"group": {
"searchEngine": {
+ "title": "",
+ "children": {
+ "action": {
+ "search": {
+ "label": ""
+ }
+ },
+ "detail": {
+ "title": ""
+ },
+ "searchResults": {
+ "title": ""
+ }
+ },
"option": {
+ "google": {
+ "name": "",
+ "description": ""
+ },
+ "bing": {
+ "name": "",
+ "description": ""
+ },
+ "duckduckgo": {
+ "name": "",
+ "description": ""
+ },
"torrent": {
- "name": "Torrents"
+ "name": "Torrents",
+ "description": ""
+ },
+ "youTube": {
+ "name": "",
+ "description": ""
}
}
}
@@ -862,12 +2762,18 @@
},
"help": {
"group": {
+ "mode": {
+ "title": ""
+ },
"help": {
"title": "幫助",
"option": {
"documentation": {
"label": "文件"
},
+ "submitIssue": {
+ "label": ""
+ },
"discord": {
"label": "Discord 社群"
}
@@ -875,16 +2781,67 @@
}
}
},
+ "home": {
+ "group": {
+ "local": {
+ "title": ""
+ }
+ }
+ },
"page": {
+ "help": "",
"group": {
"page": {
+ "title": "",
"option": {
+ "manageHome": {
+ "label": ""
+ },
+ "manageBoard": {
+ "label": ""
+ },
+ "manageApp": {
+ "label": ""
+ },
+ "manageIntegration": {
+ "label": ""
+ },
+ "manageSearchEngine": {
+ "label": ""
+ },
+ "manageMedia": {
+ "label": ""
+ },
"manageUser": {
"label": "管理使用者"
},
+ "manageInvite": {
+ "label": ""
+ },
+ "manageGroup": {
+ "label": ""
+ },
+ "manageDocker": {
+ "label": ""
+ },
+ "manageApi": {
+ "label": ""
+ },
+ "manageLog": {
+ "label": ""
+ },
+ "manageTask": {
+ "label": ""
+ },
+ "manageSettings": {
+ "label": ""
+ },
"about": {
"label": "關於"
},
+ "homeBoard": {
+ "label": ""
+ },
"preferences": {
"label": "您的偏好設定"
}
@@ -893,17 +2850,112 @@
}
},
"userGroup": {
+ "help": "",
"group": {
"user": {
- "title": "使用者"
+ "title": "使用者",
+ "children": {
+ "action": {
+ "detail": {
+ "label": ""
+ }
+ },
+ "detail": {
+ "title": ""
+ }
+ }
+ },
+ "group": {
+ "title": "",
+ "children": {
+ "action": {
+ "detail": {
+ "label": ""
+ },
+ "manageMember": {
+ "label": ""
+ },
+ "managePermission": {
+ "label": ""
+ }
+ },
+ "detail": {
+ "title": ""
+ }
+ }
}
}
}
},
"engine": {
+ "search": "",
"field": {
"name": {
"label": "名稱"
+ },
+ "short": {
+ "label": ""
+ },
+ "urlTemplate": {
+ "label": ""
+ },
+ "description": {
+ "label": ""
+ }
+ },
+ "page": {
+ "list": {
+ "title": "",
+ "noResults": {
+ "title": "",
+ "action": ""
+ },
+ "interactive": ""
+ },
+ "create": {
+ "title": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
+ },
+ "edit": {
+ "title": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ },
+ "configControl": "",
+ "searchEngineType": {
+ "generic": "",
+ "fromIntegration": ""
+ }
+ },
+ "delete": {
+ "title": "",
+ "message": "",
+ "notification": {
+ "success": {
+ "title": "",
+ "message": ""
+ },
+ "error": {
+ "title": "",
+ "message": ""
+ }
+ }
}
}
}
diff --git a/packages/translation/src/lang/uk.json b/packages/translation/src/lang/uk.json
index d2aad4e9a..4537e6ad9 100644
--- a/packages/translation/src/lang/uk.json
+++ b/packages/translation/src/lang/uk.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Додатки",
+ "boards": "Дошки",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Токен.",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Налаштування",
"subtitle": ""
},
"finish": {
@@ -293,7 +293,7 @@
},
"permission": {
"admin": {
- "title": "",
+ "title": "Адміністратор",
"item": {
"admin": {
"label": "",
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Додатки",
"item": {
"create": {
"label": "",
@@ -717,7 +717,7 @@
},
"password": {
"label": "Пароль",
- "newLabel": ""
+ "newLabel": "Новий пароль"
}
}
},
@@ -770,12 +770,12 @@
"error": "Помилка",
"action": {
"add": "Додати",
- "apply": "",
+ "apply": "Застосувати",
"backToOverview": "",
"create": "Створити",
"edit": "Редагувати",
"import": "",
- "insert": "",
+ "insert": "Вставити",
"remove": "Видалити",
"save": "Зберегти",
"saveChanges": "Зберегти зміни",
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Макет",
"option": {
"row": {
- "label": ""
+ "label": "Горизонтальний"
},
"column": {
- "label": ""
+ "label": "Вертикальний"
},
"grid": {
"label": ""
@@ -1139,7 +1139,7 @@
"label": ""
},
"timezone": {
- "label": "",
+ "label": "Часовий пояс",
"description": ""
},
"showDate": {
@@ -1199,7 +1199,7 @@
},
"align": {
"left": "Ліворуч.",
- "center": "",
+ "center": "Центр",
"right": "Так."
},
"popover": {
@@ -1254,7 +1254,7 @@
"description": "",
"option": {
"entityId": {
- "label": ""
+ "label": "Ідентифікатор об'єкта"
},
"displayName": {
"label": ""
@@ -1272,10 +1272,10 @@
"description": "",
"option": {
"displayName": {
- "label": ""
+ "label": "Відображати ім'я"
},
"automationId": {
- "label": ""
+ "label": "Ідентифікатор автоматизації"
}
},
"spotlightAction": {
@@ -1345,15 +1345,15 @@
}
},
"indexerManager": {
- "name": "",
+ "name": "Статус менеджера індексування",
"description": "",
"option": {
"openIndexerSiteInNewTab": {
"label": ""
}
},
- "title": "",
- "testAll": "",
+ "title": "Менеджер індексації",
+ "testAll": "Перевірте все",
"error": {
"internalServerError": ""
}
@@ -1504,7 +1504,7 @@
},
"added": {
"columnTitle": "",
- "detailsTitle": ""
+ "detailsTitle": "Дата додавання"
},
"category": {
"columnTitle": "",
@@ -1532,7 +1532,7 @@
"detailsTitle": ""
},
"ratio": {
- "columnTitle": "",
+ "columnTitle": "Співвідношення",
"detailsTitle": ""
},
"received": {
@@ -1565,8 +1565,8 @@
}
},
"states": {
- "downloading": "",
- "queued": "",
+ "downloading": "Завантаження",
+ "queued": "У черзі",
"paused": "Призупинено",
"completed": "Завершено",
"failed": "",
@@ -1648,55 +1648,55 @@
"description": "",
"option": {
"defaultView": {
- "label": ""
+ "label": "Вигляд за замовчуванням"
},
"queuePageSize": {
"label": ""
}
},
"tab": {
- "workers": "",
- "queue": "",
- "statistics": ""
+ "workers": "Робітники",
+ "queue": "Черга",
+ "statistics": "Статистика"
},
"currentIndex": "",
"healthCheck": {
"title": "",
- "queued": "",
+ "queued": "У черзі",
"status": {
- "healthy": "",
- "unhealthy": ""
+ "healthy": "Здоровий",
+ "unhealthy": "Нездоровий"
}
},
"panel": {
"statistics": {
- "empty": "",
- "transcodes": "",
+ "empty": "Пусто",
+ "transcodes": "Перекодує",
"transcodesCount": "",
"healthChecksCount": "",
"filesCount": "",
"savedSpace": "",
"healthChecks": "",
- "videoCodecs": "",
- "videoContainers": "",
- "videoResolutions": ""
+ "videoCodecs": "Кодеки",
+ "videoContainers": "Контейнери",
+ "videoResolutions": "Роздільна здатність"
},
"workers": {
- "empty": "",
+ "empty": "Пусто",
"table": {
- "file": "",
- "eta": "",
- "progress": "",
- "transcode": "",
+ "file": "Файл",
+ "eta": "Залишилося",
+ "progress": "Прогрес",
+ "transcode": "Перекодувати",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Пусто",
"table": {
- "file": "",
- "size": "",
- "transcode": "",
+ "file": "Файл",
+ "size": "Розмір",
+ "transcode": "Перекодувати",
"healthCheck": ""
}
}
@@ -1822,7 +1822,7 @@
"label": ""
},
"backgroundImageAttachment": {
- "label": "",
+ "label": "Прикріплене фонове зображення",
"option": {
"fixed": {
"label": "",
@@ -1856,7 +1856,7 @@
}
},
"backgroundImageSize": {
- "label": "",
+ "label": "Розмір фонового зображення",
"option": {
"cover": {
"label": "",
@@ -2042,9 +2042,9 @@
"tools": {
"label": "Інструменти",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2136,7 +2136,7 @@
}
},
"security": {
- "title": ""
+ "title": "Безпека"
},
"board": {
"title": "Дошки"
@@ -2157,7 +2157,7 @@
"label": ""
},
"security": {
- "label": ""
+ "label": "Безпека"
},
"groups": {
"label": "",
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "Загальне",
- "owner": "",
+ "owner": "Власник",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Дошки",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Вигляд",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2419,7 +2419,7 @@
}
},
"docker": {
- "title": "",
+ "title": "Контейнери",
"table": {
"updated": "",
"search": "",
@@ -2590,7 +2590,7 @@
"label": "Створити"
},
"general": "Загальне",
- "security": "",
+ "security": "Безпека",
"board": "Дошки",
"groups": {
"label": ""
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Інструменти",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
diff --git a/packages/translation/src/lang/vi.json b/packages/translation/src/lang/vi.json
index 6319c4801..615fa847b 100644
--- a/packages/translation/src/lang/vi.json
+++ b/packages/translation/src/lang/vi.json
@@ -41,8 +41,8 @@
"import": ""
},
"entities": {
- "apps": "",
- "boards": "",
+ "apps": "Ứng dụng",
+ "boards": "Bảng",
"integrations": "",
"credentialUsers": ""
}
@@ -51,7 +51,7 @@
"title": "",
"field": {
"token": {
- "label": "",
+ "label": "Mã thông báo",
"description": ""
}
},
@@ -87,7 +87,7 @@
}
},
"settings": {
- "title": "",
+ "title": "Cài đặt",
"subtitle": ""
},
"finish": {
@@ -302,7 +302,7 @@
}
},
"app": {
- "title": "",
+ "title": "Ứng dụng",
"item": {
"create": {
"label": "",
@@ -1026,13 +1026,13 @@
"label": ""
},
"layout": {
- "label": "",
+ "label": "Bố cục",
"option": {
"row": {
- "label": ""
+ "label": "Nằm ngang"
},
"column": {
- "label": ""
+ "label": "Thẳng đứng"
},
"grid": {
"label": ""
@@ -1213,7 +1213,7 @@
}
},
"iframe": {
- "name": "",
+ "name": "iFrame",
"description": "Nhúng bất kỳ nội dung nào từ internet. Một số trang web có thể hạn chế quyền truy cập.",
"option": {
"embedUrl": {
@@ -1656,7 +1656,7 @@
},
"tab": {
"workers": "",
- "queue": "",
+ "queue": "Chờ",
"statistics": ""
},
"currentIndex": "",
@@ -1670,7 +1670,7 @@
},
"panel": {
"statistics": {
- "empty": "",
+ "empty": "Trống",
"transcodes": "",
"transcodesCount": "",
"healthChecksCount": "",
@@ -1682,20 +1682,20 @@
"videoResolutions": ""
},
"workers": {
- "empty": "",
+ "empty": "Trống",
"table": {
"file": "",
- "eta": "",
- "progress": "",
+ "eta": "Thời gian dự kiến",
+ "progress": "Tiến độ",
"transcode": "",
"healthCheck": ""
}
},
"queue": {
- "empty": "",
+ "empty": "Trống",
"table": {
"file": "",
- "size": "",
+ "size": "Kích cỡ",
"transcode": "",
"healthCheck": ""
}
@@ -2042,9 +2042,9 @@
"tools": {
"label": "Công cụ",
"items": {
- "docker": "",
+ "docker": "Docker",
"logs": "",
- "api": "",
+ "api": "API",
"tasks": ""
}
},
@@ -2218,7 +2218,7 @@
"setting": {
"general": {
"title": "Chung",
- "owner": "",
+ "owner": "Chủ",
"ownerOfGroup": "",
"ownerOfGroupDeleted": ""
},
@@ -2286,14 +2286,14 @@
}
},
"board": {
- "title": "",
+ "title": "Bảng",
"homeBoard": {
"label": "",
"description": ""
}
},
"appearance": {
- "title": "",
+ "title": "Hiển thị",
"defaultColorScheme": {
"label": "",
"options": {
@@ -2370,7 +2370,7 @@
}
},
"api": {
- "title": "",
+ "title": "API",
"modal": {
"createApiToken": {
"title": "",
@@ -2602,7 +2602,7 @@
"tools": {
"label": "Công cụ",
"docker": {
- "label": ""
+ "label": "Docker"
},
"logs": {
"label": ""
diff --git a/packages/ui/package.json b/packages/ui/package.json
index 53e934cc4..1f664388a 100644
--- a/packages/ui/package.json
+++ b/packages/ui/package.json
@@ -34,7 +34,7 @@
"@mantine/hooks": "^7.15.1",
"@tabler/icons-react": "^3.26.0",
"mantine-react-table": "2.0.0-beta.7",
- "next": "^14.2.20",
+ "next": "^14.2.21",
"react": "^19.0.0"
},
"devDependencies": {
diff --git a/packages/validation/package.json b/packages/validation/package.json
index d3d3c325c..61c15f817 100644
--- a/packages/validation/package.json
+++ b/packages/validation/package.json
@@ -26,7 +26,7 @@
"@homarr/definitions": "workspace:^0.1.0",
"@homarr/translation": "workspace:^0.1.0",
"zod": "^3.24.1",
- "zod-form-data": "^2.0.2"
+ "zod-form-data": "^2.0.4"
},
"devDependencies": {
"@homarr/eslint-config": "workspace:^0.2.0",
diff --git a/packages/widgets/package.json b/packages/widgets/package.json
index 4a03abfb1..ff03eeaac 100644
--- a/packages/widgets/package.json
+++ b/packages/widgets/package.json
@@ -44,25 +44,25 @@
"@mantine/core": "^7.15.1",
"@mantine/hooks": "^7.15.1",
"@tabler/icons-react": "^3.26.0",
- "@tiptap/extension-color": "2.10.3",
- "@tiptap/extension-highlight": "2.10.3",
- "@tiptap/extension-image": "2.10.3",
- "@tiptap/extension-link": "^2.10.3",
- "@tiptap/extension-table": "2.10.3",
- "@tiptap/extension-table-cell": "2.10.3",
- "@tiptap/extension-table-header": "2.10.3",
- "@tiptap/extension-table-row": "2.10.3",
- "@tiptap/extension-task-item": "2.10.3",
- "@tiptap/extension-task-list": "2.10.3",
- "@tiptap/extension-text-align": "2.10.3",
- "@tiptap/extension-text-style": "2.10.3",
- "@tiptap/extension-underline": "2.10.3",
- "@tiptap/react": "^2.10.3",
- "@tiptap/starter-kit": "^2.10.3",
+ "@tiptap/extension-color": "2.10.4",
+ "@tiptap/extension-highlight": "2.10.4",
+ "@tiptap/extension-image": "2.10.4",
+ "@tiptap/extension-link": "^2.10.4",
+ "@tiptap/extension-table": "2.10.4",
+ "@tiptap/extension-table-cell": "2.10.4",
+ "@tiptap/extension-table-header": "2.10.4",
+ "@tiptap/extension-table-row": "2.10.4",
+ "@tiptap/extension-task-item": "2.10.4",
+ "@tiptap/extension-task-list": "2.10.4",
+ "@tiptap/extension-text-align": "2.10.4",
+ "@tiptap/extension-text-style": "2.10.4",
+ "@tiptap/extension-underline": "2.10.4",
+ "@tiptap/react": "^2.10.4",
+ "@tiptap/starter-kit": "^2.10.4",
"clsx": "^2.1.1",
"dayjs": "^1.11.13",
"mantine-react-table": "2.0.0-beta.7",
- "next": "^14.2.20",
+ "next": "^14.2.21",
"react": "^19.0.0",
"video.js": "^8.21.0"
},
diff --git a/packages/widgets/src/downloads/component.tsx b/packages/widgets/src/downloads/component.tsx
index ec80cf141..39da51449 100644
--- a/packages/widgets/src/downloads/component.tsx
+++ b/packages/widgets/src/downloads/component.tsx
@@ -10,10 +10,12 @@ import {
AvatarGroup,
Button,
Center,
+ Chip,
Divider,
Group,
Modal,
Paper,
+ Popover,
Progress,
Space,
Stack,
@@ -26,6 +28,7 @@ import type { IconProps } from "@tabler/icons-react";
import {
IconAlertTriangle,
IconCirclesRelation,
+ IconFilter,
IconInfinity,
IconInfoCircle,
IconPlayerPause,
@@ -46,6 +49,11 @@ import { useScopedI18n } from "@homarr/translation/client";
import type { WidgetComponentProps } from "../definition";
+interface QuickFilter {
+ integrationKinds: string[];
+ statuses: ExtendedDownloadClientItem["state"][];
+}
+
//Ratio table for relative width between columns
const columnsRatios: Record = {
actions: 2,
@@ -108,6 +116,18 @@ export default function DownloadClientsWidget({
const [clickedIndex, setClickedIndex] = useState(0);
const [opened, { open, close }] = useDisclosure(false);
+ //User quick settings for filters
+ const [quickFilters, setQuickFilters] = useState({ integrationKinds: [], statuses: [] });
+ const availableStatuses = useMemo(() => {
+ //Redefine list of available statuses from current items
+ const statuses = Array.from(new Set(currentItems.flatMap(({ data }) => data.items.map(({ state }) => state))));
+ //Reset user filters accordingly to remove unavailable statuses
+ setQuickFilters(({ integrationKinds: names, statuses: prevStatuses }) => {
+ return { integrationKinds: names, statuses: prevStatuses.filter((status) => statuses.includes(status)) };
+ });
+ return statuses;
+ }, [currentItems]);
+
//Get API mutation functions
const { mutate: mutateResumeItem } = clientApi.widget.downloads.resumeItem.useMutation();
const { mutate: mutatePauseItem } = clientApi.widget.downloads.pauseItem.useMutation();
@@ -164,6 +184,13 @@ export default function DownloadClientsWidget({
progress !== 1)) ||
(type === "usenet" && ((progress === 1 && options.showCompletedUsenet) || progress !== 1)),
)
+ //Filter following user quick setting
+ .filter(
+ ({ state }) =>
+ (quickFilters.integrationKinds.length === 0 ||
+ quickFilters.integrationKinds.includes(pair.integration.name)) &&
+ (quickFilters.statuses.length === 0 || quickFilters.statuses.includes(state)),
+ )
//Add extrapolated data and actions if user is allowed interaction
.map((item): ExtendedDownloadClientItem => {
const received = Math.floor(item.size * item.progress);
@@ -199,6 +226,7 @@ export default function DownloadClientsWidget({
options.filterIsWhitelist,
options.showCompletedTorrent,
options.showCompletedUsenet,
+ quickFilters,
],
);
@@ -660,7 +688,13 @@ export default function DownloadClientsWidget({
{(globalTraffic.up / globalTraffic.down).toFixed(2)}
)}
-
+
@@ -748,10 +782,13 @@ const NormalizedLine = ({
interface ClientsControlProps {
clients: ExtendedClientStatus[];
+ filters: QuickFilter;
+ setFilters: (filters: QuickFilter) => void;
+ availableStatuses: QuickFilter["statuses"];
style?: MantineStyleProp;
}
-const ClientsControl = ({ clients, style }: ClientsControlProps) => {
+const ClientsControl = ({ clients, filters, setFilters, availableStatuses, style }: ClientsControlProps) => {
const integrationsStatuses = clients.reduce(
(acc, { status, integration: { id }, interact }) =>
status && interact ? (acc[status.paused ? "paused" : "active"].push(id), acc) : acc,
@@ -762,13 +799,61 @@ const ClientsControl = ({ clients, style }: ClientsControlProps) => {
clients.reduce((count, { status }) => count + (status?.rates.down ?? 0), 0),
"/s",
);
+ const chipStyle = {
+ "--chip-fz": "var(--button-fz)",
+ "--chip-size": "calc(var(--ratio-width) * 0.9)",
+ "--chip-icon-size": "calc(var(--chip-fz)*2/3)",
+ "--chip-padding": "var(--chip-fz)",
+ "--chip-checked-padding": "var(--chip-icon-size)",
+ "--chip-spacing": "var(--space-size)",
+ };
const { mutate: mutateResumeQueue } = clientApi.widget.downloads.resume.useMutation();
const { mutate: mutatePauseQueue } = clientApi.widget.downloads.pause.useMutation();
const [opened, { open, close }] = useDisclosure(false);
const t = useScopedI18n("widget.downloads");
return (
-
+
+
+
+
+
+
+
+
+ {t("items.integration.columnTitle")}
+ setFilters({ ...filters, integrationKinds: names })}
+ >
+ {clients.map(({ integration }) => (
+
+ {integration.name}
+
+ ))}
+
+ {t("items.state.columnTitle")}
+ setFilters({ ...filters, statuses: statuses as typeof filters.statuses })}
+ >
+ {availableStatuses.map((status) => (
+
+ {t(`states.${status}`)}
+
+ ))}
+
+
+
+
+
{clients.map((client) => (
))}
@@ -787,7 +872,7 @@ const ClientsControl = ({ clients, style }: ClientsControlProps) => {
)}